Files
ARCADIA-Studio/harness/experiments/scenario-details-source-oracle-8bf7607-20260913/README.md
T

43 lines
5.9 KiB
Markdown

# Details saved-source comparator: closed build and self-check
The strict standalone comparator build exited 0, and its self-check exited 0 with all 13 reported checks passing. Both real source fixtures were admitted; all six approved typed checkpoints were accepted. These results validate the comparator and its falsifiers. No native saved output, desktop source-writing action, runtime state, or Undo history was evaluated in this run.
The linked core source is [8bf7607a3f3b53db0c36364f54f57674c64ea2f1](http://217.177.34.108:3000/sorokin.oleg.edu/ARCADIA-Studio/src/commit/8bf7607a3f3b53db0c36364f54f57674c64ea2f1). The exact comparator [source](original/main.rs), [builder](original/build.ps1), [checker](original/check.ps1), fixtures, and expectations are preserved here. The comparator is external test tooling, not a product change.
## What it checks
The `name` mode allows only the independently predetermined Name change on one element, compared with an independently captured baseline Project. The planned incident target is `70200000-0000-4000-8000-000000000020`, changing `Initial incident report` to `Initial incident report [Details trial]`. The `typed` mode compares the complete actual saved Project against exact approved JSON checkpoint bytes. Expectations are never derived from the actual saved output.
Both source inputs pass through actual `source_files::load_project`, `compile_bundle`, unchanged input/compiled SourceBundle comparison, exactly one reachable file, and core admission. Canonicalization sorts object keys only; arrays and serialized scalar values remain exact, including signed zero. No aliases, sequence order, other saved views, or unrelated fields are excluded.
The six expected JSON files and service fixture match the independently published [core checkpoint evidence at 698126e](../scenario-service-details-core-20260913/README.md), bound by [expected-catalog.json](original/expected-catalog.json). This run reused those expectations; it did not manufacture them from future native output.
## Actual results and bindings
| Observation | Closed result |
| --- | --- |
| `rustc --edition=2024 -D warnings` | Exit 0; empty compile log; 1,595 before/after input records identical |
| Comparator self-check | Exit 0; 13 named checks passed; 636 before/after input records identical; empty stderr |
| Real fixtures | Incident and service source admitted without migration, identity insertion, or passive SourceBundle change |
| Typed expectations | Baseline plus checkpoints 1, 3a, 3b, 3c, 3d accepted |
| Falsifiers | Wrong occurrence, extra alias, semantic array order, extra layout, signed-zero change, invalid Name target/no-op, wrong checkpoint/Project identity, and unknown expected field exercised |
The authoritative raw [build receipt](original/build-01/build-receipt.json), [self-check receipt](original/self-check-01/receipt.json), [self-check assertions report](original/self-check-01/project-comparison/self-check.json), logs, captured fixtures and decoded baseline Projects are unchanged. [Verified results](verified-results.json) summarize archival checks.
The builder used the successful exact 8bf desktop **LIST** as its dependency reference: [receipt](reference-list/list-receipt.json), SHA-256 `e2d9258afab904c7d0d9f3efbb3c3cc02511a33296c1698b3114b3d6b7a125a1`. That list identifies 1,089 desktop tests and 295 focused names with 611 unchanged source inputs. It is not a claim that the later focused/full desktop gates passed. The exact frozen [native verifier helper](reference-verifier/verify.ps1) is included because the core-only builder imports its read-only source and membership checks; it does not invoke five-gate native staging admission.
| Omitted binary | Bytes | SHA-256 |
| --- | ---: | --- |
| `details-source-oracle.exe` | 19,775,488 | `deba40e3d224b1326f3f38d5eb7f692ac9bb453876c6f63e1fe2d540cae79183` |
| Adjacent `libunwind.dll` | 190,464 | `aa282fa47bb2c4e210cea5e470cdbdca58568f0be0bc73e404d86ab9cd95ef6a` |
Build receipt SHA-256: `9755e8a94e4075caaaef276e08e92cb1773423785a8c9b3046b39011b1e068ef`. Self-check receipt SHA-256: `2fe1db299c2a2ed7b4edc3fe8655ced603a5da7c9165df81cf71360eca1dc8cc`. The checker bound the actual adjacent runtime DLL and child environment before and after execution.
## Preservation and reproduction
[Archive manifest](archive-manifest.json) binds 44 copied original files totaling 2,217,831 bytes. Archival verification checked every copied byte, receipt/log/artifact bindings, exact build/run manifest equality, 627 current build-source records, all 636 current run-input records, the executable and DLL. It did not redundantly rehash the entire transitive dependency cache; the closed build's before/after dependency proof is preserved. No compiler, oracle, or desktop was invoked during archival. Raw-evidence Git attributes prevent line-ending normalization.
The preserved [original recipe](original/README.md) gives explicit build and `self-check`, `name`, and `typed` commands. Its preparation-only wording predates these closed results. For a new run, restore `original/` as a fresh local comparator recipe directory alongside a checkout of exact 8bf and a reviewed matching desktop LIST/dependency build. Supply the archived verifier explicitly through `-NativeVerifier` or restore its documented sibling path. The scripts intentionally validate workspace layout, compiler/fingerprint edges, exact rlibs, lockfile, source inputs and runtime; archived absolute paths describe this Windows host and are not assumed to exist on a peer machine. Use fresh output directories and newly reviewed executable/receipt hashes. The archive is a source-and-receipt reproduction record, not a bundled compiler/cache or runnable binary package.
Native staging still requires its complete desktop/focused/full/strict/build gates. Actual Name and typed saved-output comparisons, Properties interaction, Revert/Apply, source-writing behavior and history remain separate acceptance work. The old spacing oracle remains responsible for lane/message/repair comparisons.