Files
ARCADIA-Studio/harness/release-timed-bundle-oracle-20260906.md

3.9 KiB

Timed transition: actual saved bundle oracle

The actual two-file native save independently parsed, validated and reopened with exactly the intended graph changes. The entry file alone was not treated as the accepted model: the oracle read both state-recovered-renamed.arcadia and its sa/model.arcadia include from .local/native-qa.

The staged production service was launched on an isolated loopback port with fresh synthetic storage and a system-only PATH. Its SHA256 was BB775876741FE4A7B07CDE08940AEC8E23F545FDAFEC024FC4DC3BA6DD1AB9FC. Both pristine and saved bundles passed /api/v1/projects/import-source-project; the returned native Projects were compared structurally, with object-key ordering normalized and sequence ordering retained.

Exact accepted delta

The expected entire Project was constructed from the pristine parsed Project by only these changes, then compared for full equality to the saved parsed Project:

  1. Add SA Event 49044cb7-5f91-408a-86fc-1cc012eb2972, alias after_30_s, name After 30 s, empty description, no parent, typed Time { kind: After, expression: "30 s" }.
  2. Rename existing StateTransition f0060906-0000-4000-8000-000000000033 from Refresh status to Unfinished timed refresh.
  3. Append the new Event ID after the original Sample tick Event f0060906-0000-4000-8000-000000000013 in that transition's typed trigger list.

Full Project equality passed. The original trigger Event remains Time/After 1 s. The transition retains alias refresh_status, Internal kind, Ready→Ready endpoints, empty free-text trigger, guard pressure_valid, typed effect f0060906-0000-4000-8000-000000000011 (Monitor pressure) and free-text effect Update status display. All other elements, relations, IDs, source-independent model metadata, state actions, containment, diagram placements, sizes, collapse states, routes, traces and artifact links remain equal.

Counts are pristine 14→saved 15 elements, 10 relations, 1 diagram and 8 placements. The saved graph has no structural errors. Its three existing work_without_behavior_context warnings address the three work functions; typed state actions do not constitute process/scenario evidence under the coverage policy.

GET source-project also matched the exact two submitted file contents and entry name. After force-stopping and restarting only the oracle server, model, two-file source bundle and ETag still matched. Before/after hashes of all original input files were identical; the oracle did not rewrite native artifacts.

Inputs and reproducibility

Source file SHA256
.local/native-fixtures/state-actions.arcadia 9CDE82608110E56AA9E14C9E33EB38976F53AED74AB013145D411D5743A0EC26
.local/native-qa/state-recovered-renamed.arcadia AD8FD359CE7B0BE4F3AE0F55424EEB4EE032DEFB359F2F5AD89C00A79B62DADF
.local/native-qa/sa/model.arcadia 8FB649F8ABB93CF4C321F2D847A1A9F1A1551E0F713E938C46EF11E24DC58801

Tracked runner: harness/fixtures/run-timed-bundle-oracle.ps1. From the repository root, using PowerShell7 and the actual saved artifacts:

$env:PATH = "$env:SystemRoot\System32;$env:SystemRoot;$env:SystemRoot\System32\Wbem"
& harness/fixtures/run-timed-bundle-oracle.ps1 -ServerExe .local/native-qa/bin-20260906-corrected/arcadia-server.exe -PristineFile .local/native-fixtures/state-actions.arcadia -SavedEntry .local/native-qa/state-recovered-renamed.arcadia

Evidence: .local/timed-bundle-oracle-20260906-162848/ contains exact bundle request payloads, parsed models, accepted/reopened bundles, response status/ETags, validation, input hashes and result.json with the before/after transition. The response pairs are sufficient to repeat the graph comparison even if the native files later move. All owned oracle processes were stopped. This is independent parser/persistence proof of the native save, not an additional native interaction or Linux claim.