Avoid repeated WAL reconstruction in trusted host contexts - #729
flyingrobots wants to merge 5 commits into
Conversation
RED on purpose: healthy context operations perform 48 recovery scans over 376 frames instead of advancing derived state. The durable-marker failure reconciliation witness passes.
Bind derived contexts to the acknowledged commit prefix. Invalidate on append error and reconcile before identity checks and further context writes. Preserve durable-but-reported-failed requests and refuse changed retries.
|
Important Review skippedAuto reviews are disabled on base/target branches other than the default branch. Please check the settings in the CodeRabbit UI or the ⚙️ Run configurationConfiguration used: Repository: flyingrobots/echo/.coderabbit.yaml Review profile: ASSERTIVE Plan: Advanced Run ID: You can disable this status message by setting the Use the checkbox below for a quick retry:
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
Codex Review SummaryThis comment shows the latest Codex review activity on this pull request.
ℹ️ About Codex in GitHubYour team has set up Codex to review pull requests in this repo. Reviews are triggered when you
Codex reacts with 👀 while any review is running, comments if it has suggestions, and reacts with 👍 once all reviews finish with no findings. |
|
@coderabbitai review |
|
Healthy operation-context reads and writes rebuilt retained WAL history on each call. This change derives the context index and writer cursor from a validated committed prefix, advances the index from acknowledged records, and borrows it for healthy reads.
An append error invalidates the fast path, including an error reported after the commit marker became durable. Context writes reconcile before checking identity or appending; exact retries resolve their original bytes and changed semantic input is refused. The WAL format, durability, verification, and artifact publication format are unchanged.
Depends on #728; this PR targets
feature/retained-operation-strands.Validation
d18ab778.Both measured binaries inherit
devwithopt-level=3, retaining debug assertions. Measurements are pinned toea1f03e1;d18ab778only simplifies the equivalent prefix predicate for Clippy. OS caches are uncontrolled. Counters include required opening/recovery and count decoded frames, not physical I/O. A first baseline attempt is retained but excluded because Docker was stopped and compilation overlapped. This is one retained synthetic procedure, not an agent-effectiveness result.The Telepathy record is
docs/sandbox/wal-prefix-repair/report.html, committed with its evidence and interactive charts in933e170; replay tooling is4eebd86. Canonical hosting documentation and the Unreleased changelog are updated. README/GUIDE ownership boundaries are unchanged.Parent review fixes are incorporated by normal merges, including ABA-aware change evidence, immutable head/occupancy binding, budget rejection, and writer-lease/tail hardening. The 45-case host suite and 126 WAL hardening tests pass after integration (one WAL child-process helper is ignored). The timing table above remains historical evidence pinned to ea1f03e; these later review changes have not been reprofiled.
Remaining gates: replacement CI and upstream review. Ready for review does not indicate merge readiness.