39 lines
5.0 KiB
Markdown
39 lines
5.0 KiB
Markdown
# Baseline-1 independent evidence review
|
||
|
||
Verdict: three valid source-preservation witnesses, seven passing controls, and one separate relation-fixture setup failure. This is a read-only review of captured source and existing test execution records; no test, build, CLI, GUI, Git or Gitea operation was performed by the reviewer.
|
||
|
||
The receipt records `cargo test --locked --offline -p oa-core --test default_omission_preservation --message-format=json -- --include-ignored --nocapture`, Windows `stable-x86_64-pc-windows-gnullvm`, incremental compilation disabled, HEAD `74cc0e09119f9fa9e1287988bdd98c4cbf9db79e`, 605 unchanged captured inputs, 09:43:48–09:45:58 UTC, exit101. Raw output reports 11 tests: 7 passed, 4 failed, 0 ignored. The three ignored desired-behavior tests actually ran because `--include-ignored` was supplied. The captured uncommitted test bytes, not the mutable current test file, govern this review.
|
||
|
||
## Three discriminating failures
|
||
|
||
All line references below identify `crates/oa-core/tests/default_omission_preservation.rs` **inside baseline-1/inputs.zip** (17,916 bytes, SHA-256 `7d2dbe0203387eff1e8285e5a601c68996611c99f55f5e7ea24033a577d368c6`). Each witness panics at line313, the final whole-SourceBundle equality assertion. Sequential execution therefore passed original fixture compilation, handwritten whole-model admission and stable original bundle (268–279), independently authored expected-source/model/stability checks (296–306), updater success (308), and intended whole-model equality (309–312). The failures are source fidelity defects, not a failure to apply the requested model edit.
|
||
|
||
| Witness | Requested edit | Extra token loss shown by raw left/right bundle values |
|
||
| --- | --- | --- |
|
||
| `explicit_exchange_operation_none_survives_exchange_binding_edit` (337–349) | `exchange none;` → `exchange @flow;` | `operation`, `none`, `;` from authored `operation none ;` |
|
||
| `explicit_node_empty_port_anchors_survive_position_edit` (382–395) | x12.5 → x25.0 | `port_anchors`, `[]`, `;` from authored `port_anchors [] ;` |
|
||
| `explicit_trace_semantic_none_survives_snapshot_prose_edit` (416–433) | OA snapshot description changes | `semantic`, `none`, `;` from authored `semantic none ;` |
|
||
|
||
A read-only comparison of the JSON-compatible quoted strings in each logged SourceBundle confirms these are the only differences from the exact expected bundle; whitespace and authored comments remain. This does not establish every omitted-default case or the internal cause independently of production inspection.
|
||
|
||
## Controls and setup failure
|
||
|
||
All six original no-op/header controls pass: Exchange no-op/name rename, Node no-op/header alias rename, Trace no-op/name rename. `constructor_change_removes_inapplicable_default_and_keeps_shared_default` also passes (437–490), including exact source/model checks for Action→State, removal of inapplicable `action none` and retention of shared `lifeline none`.
|
||
|
||
`relation_kind_change_updates_explicit_value_when_context_default_changes` fails at line270 inside `checked_fixture`, called at518. The original boundary exchange incorrectly connects ordinary OA entities (fixture73–83) rather than compatible participant-owned ports. Raw errors are `invalid_endpoints` and two `boundary_port` errors. Neither the expected relation mutation (519 onward) nor `update_bundle` executes. This failure is not preservation evidence and supplies no accepted coverage for the intended relation-context control; repair and rerun are required separately.
|
||
|
||
## Integrity and scope
|
||
|
||
Recomputed all four receipt-referenced file identities below, checked started.json fields against the final receipt, and verified exact 605 ZIP-member membership, case uniqueness, safe relative names, uncompressed content hashes/lengths and CRCs against inputs.json. All passed. The one executable compiler-artifact JSON in stdout exactly matches the receipt, is the expected test target with `fresh:false`, and stderr records compilation followed by that test executable. Its historical readback is 14,587,904 bytes / `c49b2f6c56b34dc565d4811512321b73d3af32712b672e381e554ff418497d52`. The shared executable was **not reopened or rehashed**; that hash remains the runner's captured readback, not a new independent binary check.
|
||
|
||
| Raw record | Bytes | SHA-256 |
|
||
| --- | ---: | --- |
|
||
| result.json | 3208 | `03b731a36ec7daf42eb3c58ef79a68070c0303c415bb93a07804dd9d7dabc259` |
|
||
| started.json | 1419 | `8e6f87d4366a48dc51fee9b38565ce06381ec801fe594abba3317b1f8e30998d` |
|
||
| inputs.json | 101247 | `38a764b97acb899c7c0a62e4d271622f03f334289d7ecc19feaf4223a0657deb` |
|
||
| inputs.zip | 2450808 | `e2557ba791aff9de216d21f3e3a907c95ed69d530dc5c6df4e1df0e4e1afe2db` |
|
||
| stdout.log | 37656 | `6c8ea9d8979be13fba9713731aadc44254ae141af6a4245bdb92e24fd1df81d4` |
|
||
| stderr.log | 6955 | `66de5bc78a9fd3a95d3d2df70a033572e0011a0802a38c812598231dc9dbb5e2` |
|
||
|
||
These records establish the bounded baseline test outcomes. They are not evidence of a corrected implementation, current mutable test bytes, native behavior, packaging or publication.
|