83 lines
5.0 KiB
Markdown
83 lines
5.0 KiB
Markdown
# Private carried parser phase accounting
|
|
|
|
Source **fa7a980418ef99d772e67c66c28dfa7b5181f875** is pushed and ref-verified
|
|
on `codex/analysis-carried-phase-956atf-20260925`. It implements the limited
|
|
[carried-phase contract](../../analysis-carried-phase-contract-20260925.md).
|
|
The private path binds the actual source bundle, allocation owner and exact
|
|
inherited policy, checks combined logical storage at specified parser phases,
|
|
then seeds the existing resolver ledger once. Original parser entry points keep
|
|
their prior checkpoints. New constructors remain fixture-only: this is not an
|
|
emitter, accepted edited output, public source8 or a published preview change.
|
|
|
|
Windows gnullvm, rustc/Cargo 1.98.1: **12 new tests pass**, strict core all-target
|
|
Clippy passes, and the actual listing contains **258 names**. The full library
|
|
remains **FAILED: 242 passed / 16 failed**. All 246 prior outcomes and all 16
|
|
failure bodies match the previous checkpoint after normalizing only numeric
|
|
thread identifiers. Formatting remains **FAILED**, with the byte-identical
|
|
eight inherited diff blocks in five files. Linux/WSL checks were not run.
|
|
|
|
The [independent runtime review](RUNTIME-REVIEW.md) verifies all 553 declared
|
|
inputs against immutable Git and raw working bytes, exact launchers, logs and
|
|
the 42,223,104-byte test artifact, SHA256
|
|
`c990e77015f2e4535003875abe7d49199cead803ee60677d86cdf056da7d8298`.
|
|
[Source review](SOURCE-REVIEW.md), [test review](TEST-REVIEW.md) and the
|
|
[independent oracle](CARRIED-PHASE-ORACLE.md) cover exact policy and fresh Usage,
|
|
complete OA/SA parity, owned bundle lifetime, once-only retained storage,
|
|
multi-file limits, original diagnostic locations and postparse text accounting.
|
|
|
|
The 78-byte empty source fixture owns 102 source/key/entry bytes and one file
|
|
map entry. Its carried syntax cap is 13 entries; complete resolution needs
|
|
17 entries / 112 bytes and retains (13 entries, 0 occurrences, 110 text bytes).
|
|
The three-file Unicode/CRLF fixture owns (3, 0, 180), needs complete caps
|
|
29 / 214, and retains (25, 0, 212). Each cap-minus-one control reaches its
|
|
specified real phase. Borrowed carried-zero mode intentionally refuses a
|
|
combined syntax total earlier than the unchanged legacy mode. Nonzero carried
|
|
occurrences and impossible overflow values are explicitly fault injection,
|
|
not claims of real bundle-owned occurrence storage.
|
|
|
|
The [stack investigation](STACK-DIAGNOSIS.md) preserves an initial full-run
|
|
abort at `d11b99bb` after 124 completed passes. Its focused 12 cases had passed;
|
|
the existing 128 KiB ordinary-index control then overflowed during parsing.
|
|
LLDB reproduced the exact artifact's active numeric parsing path. The repair
|
|
transfers policy into the existing Budget/syntax fields and retains a smaller
|
|
backing guard, reducing duplicate inline state without adding heap storage.
|
|
The final full run completes and all nine prior stack-named controls pass.
|
|
Their source, stack allowances and expected behavior were not weakened.
|
|
Selected prologues shrink by 1,568 bytes in aggregate; this is not a complete
|
|
stack measurement or a universal guarantee. The separate older rename-test
|
|
full-pipeline 128 KiB setup observation remains unresolved.
|
|
|
|
[evidence.zip](evidence.zip) contains **53 members, 458,509 bytes**, SHA256
|
|
`2eca143b706458c1c0217af715fa6f17c01a0b9f85a5313d6a231dabe1aba7c9`.
|
|
[manifest.json](manifest.json) pins each member. The archive preserves initial
|
|
and final gates, exact launchers, debugger/prologue evidence, baseline records,
|
|
source patches, contract snapshots and reviews. Eight readable review/checker
|
|
files are exact archive mirrors. Historical test executables are identified by
|
|
receipts; the initial one was retained locally but is not included in this ZIP.
|
|
The toolchain version text is an unchanged earlier capture, not a new probe.
|
|
|
|
Reproduce the final gates from the identified source with the project Windows
|
|
toolchain, one compiler job, `CARGO_INCREMENTAL=0`, and no lifecycle or
|
|
RUST_MIN_STACK override:
|
|
|
|
```text
|
|
cargo test --locked --offline -p oa-core --lib -- --list
|
|
cargo test --locked --offline -p oa-core --lib language::analysis_source::mixed::carried::tests:: -- --test-threads=1
|
|
cargo test --locked --offline -p oa-core --lib -- --test-threads=1
|
|
cargo clippy --locked --offline -p oa-core --all-targets -- -D warnings
|
|
cargo fmt --all -- --check
|
|
```
|
|
|
|
Replay helpers retain the producing machine's layout and must be read before
|
|
reuse. The [readback checker](inspect_runtime.py) verifies recorded evidence
|
|
without launching Cargo or the test executable. Receipts bind declared inputs
|
|
and recorded environment fields, not exhaustive environment state or
|
|
authenticated build provenance. A debugger exit zero after killing its stopped
|
|
child is not a passing ordinary test.
|
|
|
|
This prerequisite counts the established logical auxiliary domain at named
|
|
phase boundaries. It neither establishes nor waives stronger parser
|
|
before-growth obligations. Output construction, the real consumed-owner
|
|
transition, actual-output equality, editing/history/persistence and application
|
|
integration remain required work under issue #7.
|