Files
ARCADIA-Studio/harness/experiments/analysis-checked-save-windows-20260913/run/README.md
T

43 lines
5.8 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# Actual public checked-save regression — analysis847b1caa
**FAIL at the intended public source decode assertion.** The prediction in `harness/release-analysis-next-acceptance-20260913.md` is now executed evidence. Compilation succeeded; this is not a compiler, filter or loader failure. Compiler/test lease closed and was explicitly released to the parent after the direct executable listing. No additional gate, source correction, package or native workflow was run.
## Exact execution
Source `847b1caa7e75bb82f6ce5193c45bcfc45973ad1a`, clean worktree `.local/analysis-core-worktree-20260911`. The preflight compared512 tracked source/config/build/crates/assets/docs/examples/fixture input bytes directly against raw committed blobs via batched `git cat-file`. All512 hashes, HEAD and worktree status remained unchanged after the command.
Command, working directory and environment are preserved in `preflight.json`, `inputs.json` and `result.json`:
```text
cargo test --locked -p oa-core --test review_regressions checked_save_returns_exact_bytes_and_accepts_unchanged_external_content -- --exact --test-threads=1 --nocapture
```
Absolute root `.local/toolchain/env.ps1` initialized the existing Windows GNU/LLVM environment. New `CARGO_TARGET_DIR` was `C:/Users/User/Documents/Git/ARCADIA-Studio/.local/analysis-checked-save-target-20260913`, created fresh, never root/target. `CARGO_BUILD_JOBS=1`. Rust1.98.1 commit48a229ceaefd4985c50990b14116b6d856af0985, Cargo1.98.1, host x86_64-pc-windows-gnullvm; LLVM-MinGW clang23.1.1 commit6dfe1677ab8dffbc6ec13d53a1e0215d75147689. Version-query outputs, executable hashes and selected environment are recorded. These are default **unoptimized test/development-profile** results; workspace dev debug-info setting is0, not an optimized profile.
Command start2026-09-13T02:04:30.026751Z. Cargo elapsed934.75s; its build line reports15m33s. Cargo exit101. The result receipt closed at02:20:08.790964Z after input/artifact/listing checks. Test output: **0 passed;1 failed;0 ignored;14 filtered out**,0.08s. The freshly compiled integration executable's exact-name `--exact --list` exited0 and returned exactly this one test (1 test,0 benchmarks). No second execution of the regression occurred.
Actual panic at `crates/oa-core/tests/review_regressions.rs:464:50`:
```text
called Result::unwrap() on an Err value:
Text("1:9: Unsupported schema version: expected arcadia 3, 4, 5, 6 or 7.")
```
`cargo.log` contains the verbatim original (including Rust's punctuation), SHA256 `4c74e8d7221cf927410afa8e1eeb05a86d43b833a9a83d670e3f4263a6e06d84`,2182bytes. The runner's supplemental `log_test_failed` field is false because it searches for the single contiguous string `test_name ... FAILED`; `--nocapture` inserted panic text between that prefix and FAILED. This auxiliary string-match is not the evaluator: cargo exit101, the named failures section, result counts, panic location and exact executable listing establish the actual failure. Original receipt is retained unchanged rather than rewriting its imperfect diagnostic flag.
## Bounded source cause and consequence
The existing test starts with Project::empty(), loops `.arcadia` before `.oa.json`, successfully saves, changes description to include Unicode and a newline, checks disk/returned-byte equality and then calls the public decoder. Reaching line464 proves the earlier two saves and their equality assertions succeeded. The first iteration's decode failed; repeat save and the later JSON iteration did **not** execute. Do not infer JSON corruption or success from this run.
Candidate `model.rs:9` sets SCHEMA_VERSION8. `language.rs:577` formats that value into the source header. `language.rs:1408` only admits3–7. `persistence.rs:952–958` validates the model then takes `.arcadia` directly through `language::format`; the destination is replaced at line979 without a public source round-trip check. This is an actual successful-save/unreadable-source defect in the isolated staging candidate, consistent with its documented unfinished source8 integration. It is not a failure of the private JSON depth128 experiment; DEPTH_128_VALIDATED remains false and unchanged.
Do not repair only the version whitelist: the declaration writer and explicit rejection of analysis records also need a reviewed source8 closure. No such changes were authorized or made here. Root owns #7, a separately reviewed correction and any later checked-save/migration/API tests. The complete analysis feature and production promotion remain unaccepted.
## Preserved evidence and limits
Compiled executable remains at `../analysis-checked-save-target-20260913/debug/deps/review_regressions-bb6c689147f65d6b.exe`,30,458,368bytes, SHA256 `c6b9a47856ace723de47ee714122d598994eeef21223c1f80558ae76eb4b9cec`. Its bytes were unchanged after listing. The fresh target and failed executable were preserved; no cleanup/replacement was attempted. The unmodified test owns a tempfile directory whose drop normally removes it on panic; no persisted model-file snapshot was captured, and this report does not claim one. Source and log evidence identify the reached assertion without inventing a saved-file artifact.
The selected PATH runtime candidate was hashed as `aa282fa47bb2c4e210cea5e470cdbdca58568f0be0bc73e404d86ab9cd95ef6a`, unchanged afterward. This is candidate-path identity, **not an observed loaded-module record**. The executed test/listing worked, but no graphics/native acceptance, runtime-module observation, peak-memory measurement, optimized build, broader regression or Linux run was performed.
Runner source is `.local/run-analysis-checked-save-20260913.py`; its exact hash is in preflight.json. Raw input manifest, toolchain queries, command, process exit, complete compile/panic output, test-list output and executable identities are retained here. Root owns durable archival and coordination; no Gitea, source edit or commit was performed by this worker.