Repository navigation
runtime: one replay-refusal helper, and the taped-fs rule reads k_tape_kinds (#1943) - #1960
Merged
Merged
Conversation
…e_kinds (#1943) See the PR for the evidence (each surviving implementation was compared with both copies on every input either copy handled). Based on a Codex Cloud draft. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01KC99CmwatKssQYggkBCgwF
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. |
…1943) The full lane failed in shape-contract (and so strict_differential's preflight): builtin_db_execute, builtin_db_query_json, builtin_db_query_value and builtin_exec_capture are exempt rows that pin their bodies' and helpers' SHA-256. Reviewed: in each, exactly one line changed, the replay refusal (db_replay_blocks("x") or replay_blocks("x") became replay_blocks("x", boundary)). Every helper in the pinned closures (db_build_query, db_exec_from_arg, ...) is byte-identical, so each row's arity reason still holds verbatim. Repinned with the tool's own hash functions: 8 hash lines. The gate reads 0 errors. Plant: one added line in builtin_db_execute is red, naming it. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01KC99CmwatKssQYggkBCgwF
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Closes #1943.
Evidence (the Codex Cloud draft's report, reviewed):
Replay-refusal deduplication
replay_blocks(fn, boundary)is now the single implementation. Its callers passthese inputs:
subprocess/concurrency:recv,try_recv,recv_timeout,exec_capture,proc_read_buf;database:db_connect,db_query_value,db_execute,db_query_json;store:store_open,store_close,store_put,store_get,store_delete,store_query,store_count,store_update,store_collections,store_drop.A comparison script constructed the old per-helper message and the new shared
message for all 19 inputs and asserted byte equality. It reported
old/new replay messages: byte-identical for all 19 inputs; there was nodisagreement.
git grep -n 'not replayable under EIGS_REPLAY' -- srcnow findsonly the shared format string (plus unrelated inline special-case sites), not
per-boundary helper copies.
Filesystem tape-kind deduplication
The nine literal
file_io_errorinputs arels,mkdir,read_bytes,read_bytes_buf,read_text,remove_file,rename,write_bytes, andwrite_text. A comparison script evaluated the removed predicate for everyinput and compared it with membership in
k_tape_kinds; all nine decisionswere true and identical, with no disagreement.
file_io_error_messagenowuses
trace_core_kind_declared, whose answer comes directly from that table.tools/tape_kinds_check.shnow also treats literalfile_io_errorcalls astape producers. The unchanged tree was green:
Planting
file_io_error("unlisted_plant", ...)produced the required red:After restoring the source the same check returned to
PASSwith 52 taped and52 declared names. No
tools/selftests.txtrow pins this gate's count.Checks
make -j2: passed.bash tests/test_replay.sh: 39 passed, 0 failed.(cd src && EIGS=../build/release/eigenscript bash ../tests/test_replay_boundary_exit.sh): 15 passed, 0 failed.bash tools/tape_kinds_check.sh: passed.bash tools/workflow_yaml_check.sh: passed after installing PyYAML.bash tools/ci_tier_check.sh: passed after installing PyYAML.bash tools/precheck.sh: 14 gates passed, one portability audit skipped;four orchestration failures were environmental on the first run: PyYAML was
initially absent (subsequently installed and both affected workflow gates
passed independently), and this checkout has no
originremote/ref, so thechanged-file selftest and changelog merge-base checks cannot resolve
origin/main.🤖 Generated with Claude Code
https://claude.ai/code/session_01KC99CmwatKssQYggkBCgwF