Repository Impact: Bento readiness gate for ANU-14
Summary
ANU-17 is a narrow cross-repository readiness correction with one implementation
owner. Product Main defines and reviews the gate; anuva-bento changes the
contract, editor bridge/session, catalog packaging, tests, and local technical
documentation. CMS remains a consumer and does not implement a workaround.
No ownership boundary changes, so no product ADR is required.
Ownership matrix
| Repository | Owned scope | Explicit non-goals | Inputs/dependencies | Outputs/contracts | Verification |
|---|---|---|---|---|---|
anuva-main-video-creator |
ANU-17 plan, Bento handoff, progress, preview, planning/completion review | Bento or CMS implementation; new general CLI authority | ANU-17 intake; ANU-14 gate; ANU-8 ownership and compatibility policy | Approved gate, one repository child, final acceptance record | Manifest validation/dry run; strict docs build; index validation; child/PR/completion evidence |
anuva-bento |
Editor protocol/types/schema; validated save dispatch; stable focus/session state; deterministic template catalog; editor/contract artifacts; tests and docs | CMS persistence, scene mapping, host UI, AI, Web preview; presentation-envelope change | Completed ANU-11/12 baseline; ANU-14 readiness requirements | Reviewed 1.1.0 editor protocol/artifact/contract package, catalog descriptor and hashes, CompletionReport |
Contract/schema tests; editor/store tests; deterministic packaging; manifest/hash inspection; browser and network checks |
anuvax-cms |
Later consume the reviewed artifact under ANU-14 | Patching Bento behavior, scraping iframe state, synthesizing keys, copying catalogs | Completed ANU-13; reviewed ANU-17 artifact | Provenance record and host behavior are ANU-14 work, not an ANU-17 deliverable | No CMS code change in ANU-17; ANU-14 resumes only after artifact acceptance |
anuva-python-server |
No change | Package or protocol implementation | None | None | Not affected |
anuva-unity-video-creator |
No change | Editor host behavior | None | None | Not affected |
Contract changes
request-save
The editor request union gains:
The host supplies requestId. The bridge invokes the same validated
session-save operation as the editor Save control and emits save-request
containing the same requestId, current accepted baseRevision, trigger, and
validated complete envelope. The editor does not persist or mint an accepted
revision.
focus
The editor request union gains:
surface and slideId are authoritative Bento inputs. Bento validates
ownership, changes the active surface if needed, navigates through the supported
store operation, and exposes the real active slide. sceneId is opaque
correlation data owned by CMS and does not enter the presentation envelope.
Catalog and manifest
One generated JSON catalog contains the exact Signal and Paper family objects used by the runtime. The editor manifest exposes a descriptor equivalent to:
Exact field naming may be refined in the implementation plan, but the manifest must remain explicit, deterministic, checksummed, host-loadable, and derived from one source of truth.
Versions and capabilities
- Editor protocol:
1.1.0 - Editor artifact:
1.1.0 - Server-safe contract package:
1.1.0 - Presentation contract, player protocol, renderer, and template-family object version: unchanged unless their shapes or behavior change
- Required advertised capabilities:
editor.host-request-save,editor.focus.stable-slide, andtemplates.catalog.packaged, or equally explicit reviewed identifiers
Sequencing and blockers
flowchart LR
Plan["ANU-17 planning PR merged"]
Child["Bento implementation child Ready"]
Deliver["Bento 1.1.0 PR and CompletionReport"]
Review["ANU-17 Product Main completion review"]
Resume["ANU-14 may resume CMS implementation"]
Plan --> Child --> Deliver --> Review --> Resume
- ANU-11, ANU-12, and ANU-13 are Done and provide the accepted baseline.
- ANU-14 remains In Progress but its approved plan stops before CMS code changes while the Bento artifact gate is open.
- The proposed Bento child has no unfinished implementation-child dependency and can become Ready after the ANU-17 planning PR merges.
- No decision phase is required unless implementation proposes an envelope, renderer/player, ownership, or incompatible scope change.
Repository Linear issue draft
Add Bento host-save, stable focus, and packaged template catalog
- Client key:
bento-editor-readiness - Repository:
anuva-bento - Priority: High
- Dependencies: None inside ANU-17
Scope
Extend the closed editor protocol, TypeScript contract, runtime validation, and
JSON Schema with host-requested save and stable focus commands. Route requested
saves through the existing validated save path. Track real per-surface active
slides and navigate through the supported Bento store API without dirtying or
mutating the document. Generate and package a deterministic Signal/Paper catalog
from the runtime family definitions and expose its identity and SHA-256 in the
editor manifest. Advance the editor protocol, editor artifact, and contract
package to 1.1.0, advertise explicit capabilities, and preserve renderer/player
compatibility, hard-offline behavior, security, and notices.
Acceptance
- Contract types, runtime validator, and JSON Schema agree on both commands and reject malformed or unknown data.
- Manual/autosave request correlation, base revision, trigger, validation failure, and duplicate request IDs have deterministic focused coverage.
- Focus works for all surfaces and non-first slides; missing/cross-surface targets fail structurally; repeated focus preserves content, dirty/revision state, and undo/redo history.
- The session reports and preserves the real active slide per surface.
- Signal/Paper catalog rebuilds are byte-deterministic and exactly equal the runtime source objects.
- The manifest verifies catalog path, format, family IDs, and SHA-256.
1.1.0artifacts advertise the three required capabilities, retain exact renderer compatibility, license/notices, and hard-offline behavior.- A real host/editor browser scenario and clean package rebuild pass.
Docs
Create the issue-local index.md, ImplementationPlan.md,
ImplementationLog.md, and CompletionReport.md. Update normative editor-host
protocol, template/catalog authoring, packaging/manifest, compatibility and
capabilities, errors, security, and verification pages. Return exact Bento
preview URLs after every logical docs update.
Verification
Run the repository's contract, adapter, editor, build, package, convergence, and
strict documentation checks, including npm run test:anuva,
npm run test:editor, npm run build:anuva, npm run package:editor, contract
build/package inspection, deterministic clean rebuild comparison, schema/runtime
parity tests, focused Store navigation tests, direct browser host/editor smoke,
network denial, manifest/hash/license/notices inspection, recursive docs-index
validation, and strict MkDocs build.
Product Main sync
The CompletionReport must identify the reviewed commit and PR, exact protocol, editor, contract, renderer, and family versions, capability identifiers, artifact and catalog paths/hashes, acceptance evidence, limitations, recovery state, preview URLs, and the precise handoff that allows ANU-14 to resume.
Cross-repository integration verification
Product Main completion review will:
- Verify the Bento child is Done and its PR merged.
- Inspect the committed contract/schema and CompletionReport evidence.
- Verify the editor and contract artifacts are
1.1.0, hashes are recorded, and required capabilities are explicit. - Confirm the catalog is host-loadable, deterministic, checksummed, and limited to the approved Signal/Paper families.
- Confirm browser evidence covers request-save, focus, and catalog loading without public network access.
- Confirm ANU-14's gate can be satisfied without CMS workarounds.
Product Main sync and completion
- Keep ANU-17 In Progress through planning and child delivery.
- Record the created child ID and link after the planning PR merges.
- Do not mark ANU-17 Done merely because artifacts exist locally; require the merged Bento PR and CompletionReport.
- Use a fresh Product Main completion branch and guarded completion PR.
- Only after the completion PR merges may the guarded Linear change-complete operation move ANU-17 to Done.
- ANU-14 remains independently governed by its approved CMS plan and PR workflow.