Files
ARCADIA-Studio/harness/experiments/scenario-comparators-gui-b10b28c-20260913/spacing

Spacing saved-source oracle: runtime-bound recipe prepared from 8bf

Prepared only. No compiler, oracle or native workflow has run from this directory. oracle/main.rs and incident-workspace.arcadia are byte-identical copies of the original spacing oracle and fixture. Their nesting preserves the Rust include_str!("../incident-workspace.arcadia") unchanged. The original preparation directory and its scripts remain untouched.

This retains the same complete parsed Project comparison: same, repair-c, lane, message, and self-check. Repair C predicts only the existing message override's send_y change from 300 to 424. Lane/message modes permit only one independently specified existing override coordinate; all other IDs, Steps, aliases and views remain exact. The comparator has no renderer, runtime/editor/history inspection, or native acceptance claim.

Bounded correction

The new builder requires an explicit reviewed 40-hex SourcePin, completed five-stage Gate, matching core/serde rlibs, native import directory, frozen NativeVerifier, RuntimeDll, and fresh Output. The native verifier must match the separately supplied reviewed NativeVerifierSha256. The preparation reference was 91b29e336b861d0c59c1c310556d737330871bc54aaed6d5e509bd33dce07945; a revised verifier needs a new frozen recipe path and explicit review. Its existing list/focused/full/combined-desktop-server-strict/GUI-build admission is retained, including the bounded focused-batch contract. A partial current gate cannot admit this build.

The accepted GUI binary must still identify one production Cargo fingerprint and its desktop -> core -> serde dependency edges. Compiler/linker paths, versions, dependency/native search inputs and actual gate files are captured before and after compilation. Gate .md files are now included alongside .json, .ps1 and .log, preserving receipt-bound recovery instructions. This is the existing local standalone-rustc approach; no Cargo resolution, package cleaning or new cache is introduced.

The required source DLL is exactly 190,464 bytes with SHA-256 aa282fa47bb2c4e210cea5e470cdbdca58568f0be0bc73e404d86ab9cd95ef6a. It is captured before/after compilation and copied beside a successfully linked EXE. The new scenario_spacing_oracle_build_v2 receipt records both source and copied runtime paths, sizes and hashes. A missing or mismatched copy cannot produce an accepted build.

The checker requires the reviewed build-receipt hash, its successful v2 status matching the separately required checker SourcePin, matching supplied EXE/path/size/hash, unchanged build proof files, compiled local source records, and the actual adjacent libunwind.dll record. It checks the DLL and all recorded run inputs before and after each invocation, preserves source snapshots, request, logs and receipt, and refuses a failed/legacy/unbound receipt. The source DLL is historical build provenance; the adjacent copy is the runtime checked at execution. No arbitrary DLL is copied by the checker.

Preparation checks

From this directory, these commands parse scripts and exercise pure metadata guards only:

./oracle/build.ps1 -ValidateOnly
./oracle/check.ps1 -ValidateOnly

The builder uses one canonical five-path source array for capture and receipt creation, and refuses missing or duplicate records before any compiler invocation. The build guards test little-endian unsigned Cargo fingerprint decoding, missing/ambiguous/wrong dependency edges, and the actual fixture-membership failure shape: omitted, unnormalized oracle/../incident-workspace.arcadia, or duplicated fixture records. Checker guards exercise accepted synthetic receipts for two explicitly supplied source pins and rejection of failed compile, changed inputs, postflight failure, wrong source/schema, EXE path/size/hash mismatch, missing/nonadjacent/wrong runtime and current-runtime path/size/hash mutations. These do not admit a gate, inspect a real loaded module, or execute an oracle. Rust self-checks remain unrun.

Later build and checks

The 8bf strict stage failed, so no 8bf GUI build is admitted. This directory name records preparation ancestry only. Parent must supply the revised reviewed source/verifier and authorize the compiler slot after all five matching revised gates close successfully. Example from this directory; all dependency variables must name the actual matching gated files, not guessed hashes:

$root = 'C:/Users/User/Documents/Git/ARCADIA-Studio'
$gate = $ReviewedRevisedGate
$verifier = $ReviewedRevisedVerifier
$verifierSha = $ReviewedRevisedVerifierSha256
$pin = $ReviewedRevisedSourcePin
$dll = "$root/.local/toolchain/llvm-mingw-20260908-ucrt-x86_64/bin/libunwind.dll"
./oracle/build.ps1 -SourcePin $pin `
  -Gate $gate -NativeVerifier $verifier -NativeVerifierSha256 $verifierSha -RuntimeDll $dll `
  -CoreRlib $VerifiedCoreRlib -SerdeJsonRlib $VerifiedSerdeJsonRlib `
  -WindowsImportLibDirectory $VerifiedWindowsImportLibDirectory -Output $FreshBuildDirectory

After reviewing that build's actual EXE and receipt hashes:

$bound = @{ SourcePin=$pin; OracleExe=$VerifiedExe; OracleSha256=$VerifiedExeHash; BuildReceipt=$VerifiedBuildReceipt; BuildReceiptSha256=$VerifiedBuildReceiptHash }
./oracle/check.ps1 @bound -Mode self-check -Baseline ./incident-workspace.arcadia -Output $FreshSelfCheck
./oracle/check.ps1 @bound -Mode same -Baseline $ImmutableBaseline -Actual $SavedCheckpoint -Output $FreshSameCheck
./oracle/check.ps1 @bound -Mode repair-c -Baseline $OriginalBaseline -Actual $SavedRepairCheckpoint -Output $FreshRepairCheck
./oracle/check.ps1 @bound -Mode message -Baseline $BeforeMessage -Actual $AfterMessage `
  -View '70200000-0000-4000-8000-000000000040' -Target '70200000-0000-4000-8000-000000000021' `
  -Coordinate $IndependentlyExpectedSendY -Output $FreshMessageCheck
./oracle/check.ps1 @bound -Mode lane -Baseline $BeforeLane -Actual $AfterLane `
  -View '70200000-0000-4000-8000-000000000040' -Target '70200000-0000-4000-8000-000000000012' `
  -Coordinate $IndependentlyExpectedLaneX -Output $FreshLaneCheck

Coordinates must be predetermined from captured logical pointer positions, frozen display scale and the starting coordinate. Do not infer them from the saved output; exact 272 requires independently verified 20-world-unit displacement from 252. Use same for zero motion, cancellation, Undo, or reopen against the appropriate immutable checkpoint. Native Save/history/camera observations remain separate evidence.

This is a host-specific guarded recipe, not a binary package. Portable handoffs must include the exact scripts/fixture and referenced frozen verifier; peers resolve their own matching toolchain and gate evidence. Existing output directories are never overwritten.