1.2 KiB
1.2 KiB
Phase 03 — Frontend API Boundary (Canon Contract)
This document codifies the FE/BE boundary invariants for Phase 03.
- BE is the source of truth. The
frontend-apicrate defines canonical models that all Frontends must produce. - No string protocols across layers. Strings are only for display/debug. No hidden prefixes like
svc:or@dep:. - No FE implementation imports from other FE implementations.
- No BE imports PBS modules (hard boundary). The Backend consumes only canonical data structures from
frontend-api. - Overload resolution is signature-based. Arity alone is not sufficient; use canonical signatures/keys.
Implementation notes (PBS):
- The PBS adapter must not synthesize ownership or module info from string prefixes. All owner/module data should come from canonical types.
- Export/import surfaces are expressed exclusively via
frontend-apitypes (e.g.,ItemName,ProjectAlias,ModulePath,ImportRef,ExportItem).
Enforcement:
- A test in
prometeu-build-pipelinescanssrc/backend/**to ensure no references tofrontends::pbsare introduced. - Code review should reject any PRs that reintroduce prefix-based heuristics or FE-to-FE coupling.