Skip to content

Make the entry metadata core-private and delete the cursor-mismatch guards #821

Description

@tobyhede

Parent

#799. Design record: .scratch/render-execution-unit/spec.md.

What to build

Close the seam. With both callers on it, the entry metadata type stops being a parameter of anything and becomes private to core — a local value handed straight to the observation deriver. One producer, so nothing can disagree with it.

The observation deriver's two cursor-mismatch throws are deleted with it. They exist to catch a caller passing a cursor that disagrees with the snapshot; there is no caller-supplied cursor any more, so the bug class is gone rather than guarded.

Acceptance criteria

  • The entry metadata type is not exported from core's barrel and is not a parameter of any exported function.
  • Exactly one function constructs it.
  • The cursor-mismatch throws are removed, and a test records that cursor agreement is now structural.
  • Any test that hand-built an entry now goes through the real seam rather than a test-only escape hatch.
  • pnpm run verify green.

Blocked by

Metadata

Metadata

Assignees

No one assigned

    Labels

    P2: mediumFeature / architectural cleanupenhancementNew feature or request

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions