2.4 KiB
2.4 KiB
id, name, status, depends_on, scope, risk, impact, level, tags
| id | name | status | depends_on | scope | risk | impact | level | tags | ||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|
| core-pin-offset-initial-value | Verify and pin EventReceiver::offset()'s pre-yield value (review 004 item 12) | pending | narrow | low | project | implementation |
|
Description
The named gap from docs/reviews/004-pre-release-general-review.md
§"Findings recorded, not fixed" item 12: EventReceiver::offset()
pins the post-yield value only; the pre-yield return (the seeded
checkpoint vs 0) is unpinned in core-contract.md's receiver text.
Two steps, in order:
- Verify the three engines' pre-yield values empirically — the
review explicitly did not verify them this session. Probe per
engine: a fresh consumer's
offset()before any yield, and a consumer with a saved checkpoint'soffset()before any yield. The contract suite is the natural home (a three-way equivalence leg, stamped perversion_stamp.rsconvention); per-engine tests are the acceptable alternative if the suite's harness shape fights the probe — implementer's choice, recorded. - Pin the semantics in the contract text — core-contract.md's
EventReceiver::offset()paragraph gains the pre-yield return (dated annotation). Doc-only.
If the engines diverge: do NOT paper over with a doc pin — record the divergence precisely (which engine, which arm) and raise with the user; a contract-observable divergence is a fix-the-code-or-amend conversation, not a doc edit.
Acceptance Criteria
- The three engines' pre-yield
offset()values verified equal by live runs (the probe/leg recorded; green on all three columns — pg against the harness server) - core-contract.md's
EventReceiver::offset()text pins the pre-yield return with a dated annotation - If divergent instead: the divergence recorded and raised with the user (this AC replaces the doc pin, not supplements it)
- Doc gate green; any new suite leg green on all three columns
References
- docs/reviews/004-pre-release-general-review.md §"Findings recorded, not fixed" item 12 (the named gap)
- docs/architecture/core-contract.md (the receiver text, the verification backlog)
- alkstore-contract-suite (the three-column harness; the version-stamp convention)
Notes
To be filled by implementation agent
Summary
To be filled on completion