Files
ARCADIA-Studio/harness/release-source7-linux-gate-20260907.md
Codex e2ecfea69b
Rust checks / check (ubuntu-latest) (push) Canceled after 0s
Rust checks / check (windows-latest) (push) Canceled after 0s
Checkpoint source 7 workflows and in-progress diagram authoring redesign
Preserve current core, source, REST, desktop, recovery, documentation and validation work, including AGENTS.md and the development summary. This is a work-in-progress checkpoint: the new compact palette has outstanding compilation errors and native acceptance; earlier passing gates retain their documented scope.
2026-09-10 10:06:55 -07:00

10 KiB

Frozen source7 native Linux gate — 2026-09-07

Status: Native core PASS (436 passed, 0 failed, 2 ignored); native server gate FAILED one reproducible deadline assertion (52 passed, 1 failed). VM cleanly powered off. These are scoped results for the frozen snapshot, not overall release acceptance. Root owns VM lifecycle; no simultaneous Windows Cargo compilation is allowed during this gate.

Exact inputs and environment

Root booted the retained headless Ubuntu 24.04.4 guest at 2026-09-07 07:02:43 UTC, with a hard live deadline of 08:32:43 UTC and 180 seconds reserved for shutdown. SSH became healthy around 07:06:41 UTC. Guest kernel: 6.8.0-139-generic, x86-64. Native Rust/Cargo are explicit 1.90.0; Rust commit 1159e78c4747b02ef996e55082b704c09b970588.

Fresh guest snapshot: /home/arcadia/qa-source/source7-20260907T070243259972Z. It contains 455 frozen working-source files plus QA-SNAPSHOT.json; the recorded Git parent is 4b6b5fc1977523e8cf52fdd5503a0a71c87a3f63. Source7 changes are captured working bytes, not represented as already committed in that parent.

Input SHA256
source7-20260907T070243259972Z.tar.gz 7104946c89b2be7a1a030fdff47cb4405bacf05357d68cf35d181e860f55c279
Corresponding external .tar.manifest.json b6fd1cc065a3370c3736f3d6f34545dd3f2b0f600168fada2b931ecb64a0c870
source7-gate.sh 2489e1053b5523515b77c5a5d191175c21eb6d85e2ae8b080b977bec3bbd8b96

All three hashes matched on both host and guest. Before extraction, the setup script checked archive member count and exact inventory, prohibited nonregular/absolute/parent-traversal entries, checked every file hash and internal/external manifest equality, and required a previously absent destination. Driver syntax checking passed. Driver additionally verifies exact inventory/content before and after each test command and compares its captured manifest.

Cache: preserved /home/arcadia/qa-target; Cargo jobs=1, incremental=0. Guest has 1,961MiB RAM and no swap; the host monitor remains active. No cross-built test executable is substituted for these native Cargo tests.

Ordered gates

  1. Native server: cargo +1.90.0 test --locked -p oa-server -- --test-threads=1, command timeout 50 minutes plus bounded termination grace. Started around 07:08 UTC. Final result: compilation passed; unit tests 2/2 and HTTP 50/51, detailed below.
  2. Native core: cargo +1.90.0 test --locked -p oa-core --tests -- --test-threads=1, only if at least 15 minutes remain after shutdown reserve. Executed after the isolated server rerun; final result below.

Driver artifacts are retained below /home/arcadia/qa-artifacts/source7-gates/; each run records its exact driver, manifest, command, status JSON, full output and source pre/post verification. Host streaming log: .local/linux-qa/runtime/source7-server-gate.log. Final passing counts below come from the collected status and complete per-target test summaries.

Separate cross-built executable runtime check

Before native tests, the hash-checked Windows/Rust1.90 cross-built probe actually executed in this guest and passed the ring SHA256, thread and UTF-8 filesystem checks. Exact ELF SHA256 1d7029f9b6ebea28b35765760c56631ebd4829e3c33dbdcc225d992f558ea023; runtime JSON was independently parsed and matched. See release-linux-cross-build-probe-20260906.md and .local/linux-qa/runtime/source7-probe-and-unpack.log. This closes only that bounded executable runtime check; no Iced Linux GUI binary has been built or launched.

Native server result and bounded classification

The full server gate ended at 07:30:19 UTC, command exit 101, driver wall time 1,290 seconds. Compilation succeeded in 17m10s; server unit tests 2/2 PASS and HTTP tests 50/51 PASS (238.94 seconds). The failed Cargo target prevents treating later targets/doc tests as executed.

Sole failure: accepted_slow_source_does_not_lock_catalog_and_loses_to_a_newer_http_revision, crates/oa-server/tests/http.rs:638: actual 504, expected 412. The test had passed its unfinished-after-100ms assertion, two-second catalog-read bound, two-second concurrent PATCH bound and winner status. The final loser JSON/revision/disk assertions occur after the failed status assertion and therefore were not reached.

The source is a 1,000-deep admitted activity hierarchy. crates/oa-server/src/lib.rs:111 independently enforces a hard 30-second request deadline and emits 504 outcome_unknown. The test permits a 45-second completion watchdog but requires preparation to finish within the actual service deadline to observe 412. The unfinished client assertion does not establish that the server has already completed its initial revision check. This is a resource-dependent fixture/deadline mismatch, not evidence that the catalog or commit mutex was held throughout preparation, nor evidence that the final persisted-state assertions passed.

One explicitly authorized isolated rerun used the identical frozen sources and assertions, the already compiled HTTP target, exact test filter, one test thread and a ten-minute outer limit. It reproduced 504 versus 412, in 49.38 seconds test time (cached Cargo preparation 14.01 seconds), without other test/compile contention. Therefore this is not classified as a random full-suite flake. No fixture, production timeout or assertion was modified and no further retry was made. A future precise synchronization test seam could test the intended post-initial-check race without depending on costly graph validation outrunning one bound but finishing before another; that requires a separately reviewed change.

Both full and isolated runs passed all 455 source-content/inventory prechecks and postchecks. Their guest artifact directories were copied intact to the host under .local/linux-qa/runtime/source7-gate-artifacts/:

  • server-test-20260907T070848Z-G0glzP: full run, status FAILED/101, 1,290 seconds.
  • server-test-20260907T073317Z-3MLzDC: isolated run, status FAILED/101, 96 seconds driver wall time.

The focused driver differs only in the exact printed Cargo command and retains the same source validation/status machinery. Its SHA256 is 701e7e242109290f2952cc6929a903fc8c25d4086e44434c4c1193ad71e4b55f. Streaming evidence: source7-server-gate.log, source7-server-focused-gate.log; final guest status JSON and driver copies are preserved in the artifact directories.

Native core final result

PASS: 436 passed, 0 failed, 2 ignored across 40 test targets. Explicit native cargo +1.90.0 test --locked -p oa-core --tests -- --test-threads=1 exited 0. Compilation took 23m03s. Driver status records 1,992 seconds wall time, start 07:36:23Z, completion output 08:09:37 UTC. Exact 455-file source precheck and postcheck both passed. The copied guest status is PASSED, command status 0, exit status 0.

The source7 contract target passed all 16/16 tests (6.63 seconds), including contextual repetition/nesting and analysis budgets, source/identity/history/migration, exact inherited allocation identity, reverse unoriented Call/Reply binding, transmission mismatch/Unspecified diagnostics, and independent repair of Call and separate Reply channels after allocation deletion. The shipped teaching generator/source equality tests also passed in the actual Linux filesystem context.

The unit target passed 42 tests and ignored one. Linux-specific syscall-publication coverage executed successfully:

Linux publication case This snapshot's result
Concurrent stages have exactly one winner PASS
Competing destination and caller-owned stage are preserved PASS
Raw path bytes are preserved and NUL rejected PASS
Publication refusal never starts model writes PASS
Injected unsupported renameat2 error fails closed IGNORED; requires separate strace injection and OA_TEST_RENAMEAT2_ERRNO

The other explicit ignore is inheritance_chain_validation_scaling_probe, an opt-in scaling experiment requiring --ignored --nocapture. Neither ignored case was rerun in this gate. Prior Linux injection evidence, if cited elsewhere, belongs to its earlier snapshot and must not be relabeled as this source7 run.

Copied evidence hashes and shutdown

All three guest artifact directories were copied intact before shutdown. Each includes exact driver.sh, snapshot-manifest.json, output.log, and status.json. The 12-file host size/hash inventory is .local/linux-qa/runtime/source7-artifact-hashes.json; core count extraction is source7-core-counts.json.

Copied artifact SHA256
Core output c744bcba79ae5af163577cb6367ae39b192754b5864724fbefca05d09fd31480
Core final status af1143378ba1aebae943d9de728935d1ab655e25d36f187a90beb2aee493a810
Full server output 8ce24e5e9a84cc119e7499f41fce3c9a9a914c138237fd82d901977408aad8d0
Isolated server output 5f858c816963ae3ca013f66fa3e1945377f95c2a6844d881e56d6eba13721161
Internal snapshot manifest, identical in all three runs 57061c50d48444ef7b82fc063e874209ef7d86424638c2b37104ab7e483c4950

The internal manifest's bytes differ from the separately exported manifest's line endings; JSON equality and the complete file digest mapping were explicitly checked before extraction. Each driver's own internal manifest was also compared byte-for-byte before/after its run.

Root delegated clean shutdown after evidence collection, with no additional gate. sync; sudo -n poweroff was accepted at 08:12:55 UTC. Serial output reached reboot: Power down; by 08:13:56 UTC, QEMU PID 6280, launcher PID 5000 and seed PID 816 were all absent. Host free RAM was 4,157 MiB at that confirmation. The heavy build lease was released immediately. The VM disk, toolchain and approximately 1.5 GiB guest Cargo target cache remain preserved. Durable records: source7-clean-poweroff.log, source7-final-serial.log, and source7-post-poweroff.json.

An optional executed-binary hashing command was interrupted by the clean shutdown after partial output; source7-test-binary-hashes.log is explicitly not a complete binary inventory. This does not affect the copied, complete test logs/statuses/manifests or their host hashes. No source or assertion edits, VM reboot, or extra Linux test gate were made in this run. A new server test design and fresh Linux snapshot require separate validation; Linux Iced GUI compilation/execution remains outside this gate.