6.1 KiB
Scenario selection — final captured-evidence audit
2026-09-24. Bounded read-only audit of harness/scenario-selection-evidence-20260924/checks and the separate invalid-attempt archive in C:/ar-scenario-9e8r6t. This report is the only written artifact. No Cargo, native/GUI action, Git mutation, network transfer or archived-source execution. Native verification was still underway when requested; this is an evidence-package review, not final application acceptance.
Result
No material integrity, source-identity or failure-preservation finding. The portable checks package contains exactly 12 completed unchanged-input runs, three recorded failures, 12 source proofs and four distinct source capsule pairs. Each capture has 809 inputs. selection-scenario-3 is correctly excluded because its inputs changed and is preserved separately without a source-proof claim.
The current top-level harness/scenario-selection-20260924.md still says the final executable build and final-source regression repeat are pending. Those gates are now closed and proven, so their pending clauses should be updated before delivery; native verification must retain its actual pending status. The historical source-review sections explicitly describe evidence available at their review time and need not be rewritten as though they had already inspected later runs.
Independent checks
- Compared packaged
prepare.py,verify.pyand README bytes with the preparatorily reviewed selection tools: exact equality. Their adaptation remains the intended manifest-kind/title/example changes only. - Executed the packaged verifier with bundled Python
-B: PASS, 12 runs / 3 failures / 12 proofs / 99 logical files / 83 stored members / 4 source capsule pairs. This did not execute Cargo or archived helpers. - Compared every packaged logical raw file, including optional proof receipts, byte-for-byte with its retained
.local/scenario-group-gatesoriginal: exact equality. Archive size is 12,926,901 bytes, SHA-25605d040e856d0b37adf44f6a9e3d2789d4d76c026e61e85fdfcab0e7bebca4dd4. - Independently read each of the four named Git trees with lazy fetch disabled. Required complete equality of the filtered path inventory, then compared each of 809 source ZIP entries directly with its named Git blob and input size/hash. All four commits passed:
879eb1d5c8792a720433022e49f415d2c58ff72c,a0a70340a625c16b1249d0beb71dca4fdd206636,ca1f18e6b0d53814f0ff16261f810aef49281c26, anded55b1781d86ec49af5d2588cbd06f7b878d9009. This independently repeats source comparison rather than trusting only the archived proof/comparator label. All runs sharing each source have the same captured input-map bytes. - Read the actual result/stream records for all runs. Captured HEAD and proof source happen to match in all 12 accepted-package runs; neither was substituted for the other.
Final source and historical results
All five final gates bind to ed55b1781d86ec49af5d2588cbd06f7b878d9009:
| Run | Observed result |
|---|---|
selection-lint-2 |
Strict desktop all-targets Clippy, exit 0 |
selection-format-3 |
Cargo fmt check, exit 0 |
selection-build-1 |
Desktop executable build, exit 0 |
selection-scenario-5 |
268 passed, 0 failed, 1 ignored |
selection-menu-2 |
14 passed, 0 failed, 0 ignored |
The ignored Scenario case is saved_spacing_capture_prepare_20_lanes_1000_messages_3_views, explicitly diagnostic timing with no latency-acceptance threshold. The record does not imply that this ignored timing case ran. Scenario and menu filters may overlap and their counts must not be added into a unique-test total.
The other seven runs remain historical evidence: selection-scenario-1 has 263 passing / 1 failing / 1 ignored; selection-scenario-2 has 266 passing / 2 failing / 1 ignored; selection-lint-1 fails on the redundant expect after is_some. The earlier format checks and ca1 Scenario/menu runs pass under their own source pins. None of these failures is relabelled as passing merely because archive/source verification succeeds.
The build is a Windows GNU LLVM debug desktop build (cargo build -p oa-desktop --bin arcadia-studio --message-format=json), not a release package. Its recorded executable is 119,545,344 bytes, SHA-256 7e0b6e714c89e34baef38bdaf12ecd35456cd39d62cb6b1dcf06e3487b7824bc. Independently reading the current local executable reproduced that pin. This establishes local build-artifact identity only; it does not prove launch, GUI behavior, external availability or a separate-machine package run.
Invalid attempt and clock boundaries
Verified invalid-attempt-3/raw.zip against its exact eight-member manifest: seven unchanged original raw files plus the original gate helper. Every member equals its retained original and declared hash. The archive is 3,192,626 bytes, SHA-256 9afef85b7e395d811bf99cd3a49909da881403cac3bcfcaea9fdc701f4ee5180. The closed result remains exit 1 / inputsUnchanged: false / no executable records; there is no source proof. The manifest explicitly attributes deliberate process-tree termination to the parent and does not recast it as a failing test. This archive is outside the 12 unchanged-input runs.
Run 4 retains the discontinuous UTC interval verbatim (07:46:08 to 21:22:59) and separately records 515.9615506 monotonic seconds. The top-level record correctly uses the latter duration and warns against inferring runtime/inactivity from UTC. This audit verifies those retained values, not the separately reported observations on other machines.
Scope of delivery
The top-level record correctly labels this as branch-specific issue #29 work outside the frozen #37 prerelease. It explicitly leaves Scenario group movement, semantic destination preview and aggregate removal incomplete. Archive verification, mounted test streams, successful local build and source review do not replace native verification or authorize claiming full group-operation/release acceptance. Publication and downloaded-artifact availability were not audited here. Final native findings and their exact executable/source identity remain a separate delivery step.