Archive closed Scenario renderer gate and strict failure
This commit is contained in:
@@ -0,0 +1 @@
|
|||||||
|
* -text -whitespace
|
||||||
@@ -0,0 +1,40 @@
|
|||||||
|
# Closed Scenario renderer Windows gate at 37be410
|
||||||
|
|
||||||
|
This archive records the completed attempt2 at source [37be41092beb1c940f345072df1e017ce45fe2fc](http://217.177.34.108:3000/sorokin.oleg.edu/ARCADIA-Studio/commit/37be41092beb1c940f345072df1e017ce45fe2fc). The gate is closed with a strict-lint failure. It is not a successful release or GUI acceptance gate.
|
||||||
|
|
||||||
|
## Results
|
||||||
|
|
||||||
|
| Stage | Actual outcome | Evidence |
|
||||||
|
| --- | --- | --- |
|
||||||
|
| Desktop list | Exit 0; exactly 1,010 unique tests listed | [receipt](original/list-receipt.json), [raw log](original/list.log) |
|
||||||
|
| Focused desktop | Exit 0; 87 passed, 0 failed, 0 ignored; 923 filtered | [receipt](original/focused-receipt.json), [raw log](original/focused.log) |
|
||||||
|
| Full desktop | Exit 0; 1,007 passed, 0 failed, 3 ignored, 0 filtered; test-reported duration 1220.70 seconds | [receipt](original/all-receipt.json), [raw log](original/all.log) |
|
||||||
|
| Full server, all targets | Exit 0; 57 passed, 0 failed, 0 ignored across result groups 4/0/51/2 | [receipt](original/server-receipt.json), [raw log](original/server.log) |
|
||||||
|
| Strict Clippy, desktop and server all targets | Exit 101; five collapsible_if errors in scenario_layout.rs | [receipt](original/clippy-receipt.json), [raw log](original/clippy.log) |
|
||||||
|
| GUI build | Not run: the required prior strict stage failed | No build receipt or executable acceptance is claimed |
|
||||||
|
|
||||||
|
The 87 focused tests are the exact union of 12 existing dispatch/SVG/source-rename regressions, 53 typed activation/lifecycle/direct/atomic tests and 22 resolver tests. The full desktop executed multiset matches the list, including all 87 passing once. The three ignored tests are recorded by exact name in the full receipt; they are two source-rename timing probes and the 100-module source-symbol scale probe. Server execution includes exactly one passing scenario_layout::saved_scenario_positions_roundtrip_through_http_without_partial_or_noop_writes, exercising actual HTTP transactions/source/restart behavior.
|
||||||
|
|
||||||
|
Clippy reports collapsible_if at crates/oa-desktop/src/behavior/scenario_layout.rs lines 307, 316, 454, 676 and 709 in the tested pin, then fails oa-desktop compilation. This is an actual closed failure, not a waived warning or an unexecuted stage. Any correction requires its own pinned validation; these results do not establish strict success for a later commit.
|
||||||
|
|
||||||
|
## Identity and archival verification
|
||||||
|
|
||||||
|
All 37 original gate files are retained byte-for-byte under [original/](original/), including the original preparation README, scripts, raw logs, receipts, package-clearance evidence and every capture. [manifest.json](manifest.json) gives each original byte count, SHA-256 and Git blob SHA-1. The archive uses local -text attributes to preserve original CRLF/LF bytes in Git. At archive creation every copied file matched its source bytes, every receipt's script/input/log/capture/prior-stage hash binding was independently checked, and all eleven captures contained exactly the same 591 version-controlled input records and external-input observations.
|
||||||
|
|
||||||
|
The 591-file scope is the explicit source/configuration selection documented in original/enumeration.json and original/expected-inputs.json; it is not a claim to hash every possible toolchain or registry input. External env.ps1 and Cargo config presence/absence remain separately bound. Every executed stage ran locked/offline in the frozen Scenario renderer worktree with the shared root target, following explicit oa-desktop package clearance while retaining dependencies. Exact commands, paths, tool versions, timestamps and statuses are in the unchanged original receipts.
|
||||||
|
|
||||||
|
Key SHA-256 bindings:
|
||||||
|
|
||||||
|
| Evidence | SHA-256 |
|
||||||
|
| --- | --- |
|
||||||
|
| Initial 591-file capture | ac2cfde68c6a8046fdfd5502aa35b4470dba9a9758621a115bac14c5845708e3 |
|
||||||
|
| run.ps1 | 177f9366c09110feaa1d8c59401fb184776b39820018baa16d0b2561f0cc7748 |
|
||||||
|
| Full desktop raw log | 908e77a02f3cad6435ed3db550ca2d1a56b4ba8f5026633560b9d5fea0a15654 |
|
||||||
|
| Server raw log | 7c7d847ac942b23a33081fdc3eb9ec53a2c054cd422810e30528b5930c574d71 |
|
||||||
|
| Strict raw log | 160946a38372567a313d7e1739c4869b4c080f797d71f23fbcdda105ce53453d |
|
||||||
|
|
||||||
|
[post-execution-test-binary.json](post-execution-test-binary.json) records the still-present 149,178,368-byte desktop test executable named by all.log, observed after full execution and the closed strict stage. Its SHA-256 is 395d60301964b1f5eba0e3c7e9df939a51d78b063a4d7f6ab84988a49702fb8a. This is explicitly a post-execution hash; no pre-execution hash existed, so it does not retroactively prove executable bytes at execution time. The executable itself is not copied into this source archive.
|
||||||
|
|
||||||
|
## Scope and next evidence
|
||||||
|
|
||||||
|
The earlier 68a81c3 focused failure is separately preserved in [its archive](../scenario-renderer-gates-68a81c3-20260913/README.md); the corrected real-frame-padding evaluator now passes as part of all 87 focused checks here. This foundation gate does not execute the later saved-view workspace/display integration at [46e106c04e82e3d5b0acac43c99c7ee3e5a9c1b5](http://217.177.34.108:3000/sorokin.oleg.edu/ARCADIA-Studio/commit/46e106c04e82e3d5b0acac43c99c7ee3e5a9c1b5), whose published 25 files were source-integrity verified only. The subsequent combined UI gate must cover its new controller/camera/usage tests, the strict correction, full desktop/server checks, strict lint and a GUI build. Native interaction and minimum-window acceptance remain separate requirements; no native acceptance or free graphical spacing gesture is claimed here.
|
||||||
@@ -0,0 +1,233 @@
|
|||||||
|
{
|
||||||
|
"sourceCommit": "37be41092beb1c940f345072df1e017ce45fe2fc",
|
||||||
|
"archiveBase": "10c870b464bd08d8ae85cfb202ca6882da6872e0",
|
||||||
|
"originalDirectory": "C:/Users/User/Documents/Git/ARCADIA-Studio/.local/scenario-renderer-gates-attempt2-20260913/",
|
||||||
|
"archivedAtUtc": "2026-09-13T06:10:15.889Z",
|
||||||
|
"files": [
|
||||||
|
{
|
||||||
|
"path": "original/README.md",
|
||||||
|
"bytes": 4565,
|
||||||
|
"sha256": "52856cd3e4b2914b36cd4b4fc38337a7c19ecac7c2cd4980ba84e867b3438cb0",
|
||||||
|
"gitBlob": "4ad1c3343a047751716f9d6ff099dcd60c3f592f"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"path": "original/all-receipt.json",
|
||||||
|
"bytes": 172319,
|
||||||
|
"sha256": "c8409f015d28191cb3479f3d01a5883362b9b2d5e2ef6691bbe560faf1ddccfd",
|
||||||
|
"gitBlob": "34f7335b87030cb5a6c4e6deec7f15f55a156b84"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"path": "original/all.log",
|
||||||
|
"bytes": 116975,
|
||||||
|
"sha256": "908e77a02f3cad6435ed3db550ca2d1a56b4ba8f5026633560b9d5fea0a15654",
|
||||||
|
"gitBlob": "f366f5b1db7f2ceec6d77fda1aac31ce39e9dc83"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"path": "original/capture.ps1",
|
||||||
|
"bytes": 4076,
|
||||||
|
"sha256": "351820236408a6aea6336771372dd438cc0b3807547697c8d0d9f442b91b9008",
|
||||||
|
"gitBlob": "3f4e5b494fe80bb6931375408195ec9e33b419d8"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"path": "original/clippy-receipt.json",
|
||||||
|
"bytes": 2559,
|
||||||
|
"sha256": "02648d362a240241ebe02a064f34d85666b46e10f69181da51c904e9f1da6a4c",
|
||||||
|
"gitBlob": "4e2e170b8adf1595812490ae2dd80825e2673e05"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"path": "original/clippy.log",
|
||||||
|
"bytes": 5407,
|
||||||
|
"sha256": "160946a38372567a313d7e1739c4869b4c080f797d71f23fbcdda105ce53453d",
|
||||||
|
"gitBlob": "ac444b03f476487f78afc835fe5ef6c9394c43d0"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"path": "original/enumerate-inputs.ps1",
|
||||||
|
"bytes": 1684,
|
||||||
|
"sha256": "165de82ca211dfae4b461393689411753e591aef966fe3cbfa6fdbea97624037",
|
||||||
|
"gitBlob": "e9c354456b114c848de76c08a33352fe397ba19b"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"path": "original/enumeration.json",
|
||||||
|
"bytes": 72223,
|
||||||
|
"sha256": "0095fff574a18f9c9c4a86299177d50a2d5dd4f7a42d7d6072fd684d28081561",
|
||||||
|
"gitBlob": "7f9f413ba1db2a5004346fbe6983e37ac4f89cb5"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"path": "original/expected-inputs.json",
|
||||||
|
"bytes": 110821,
|
||||||
|
"sha256": "f7805a5b2db2d6cc67526136aca03d2f5cd044f3fe91ea593a18d3bc23381af4",
|
||||||
|
"gitBlob": "779a12450aeac4f77e63c21345e4464bc3539a8d"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"path": "original/expected-tests.json",
|
||||||
|
"bytes": 22157,
|
||||||
|
"sha256": "4e69f32fec2e7f5445b09bb7d5345bc89f1f19e14fa151807f656f6ab91c15b5",
|
||||||
|
"gitBlob": "9a1b9daec02afd3d1df9b133035c913936e8d850"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"path": "original/external-inputs.json",
|
||||||
|
"bytes": 1442,
|
||||||
|
"sha256": "2e635ae8b856d4d31d34da1b0ef03dd17f34633dd78a974e5beae9e8f929a0ee",
|
||||||
|
"gitBlob": "eb735d39ba5c2988a86c5558b738ea3030ec08bf"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"path": "original/focused-receipt.json",
|
||||||
|
"bytes": 48109,
|
||||||
|
"sha256": "785872cda1efca5500d9076c1e985202f54293c5f172297d0a329b6ab74ea9e5",
|
||||||
|
"gitBlob": "672d0325935c323b0e42bf6ae6c425a95d61074c"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"path": "original/focused.log",
|
||||||
|
"bytes": 11256,
|
||||||
|
"sha256": "5205acb5f1ae8f3cc1db632e2bd12a1db60b071a87da4673c4c1c3c5724ecf32",
|
||||||
|
"gitBlob": "dda5ccc1b36b525dae5d961968c1e9fca396f329"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"path": "original/inputs-complete-all-after.json",
|
||||||
|
"bytes": 115215,
|
||||||
|
"sha256": "5e56bb7ed5c0b8345fcc40b5fec3a33efd2ec7cce7eb6ea96102124765b35e42",
|
||||||
|
"gitBlob": "b564234ef5a29f597d918ef7569b17da86254b39"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"path": "original/inputs-complete-all-before.json",
|
||||||
|
"bytes": 115215,
|
||||||
|
"sha256": "6330d668ae4cff679522e3bc9e64474d6effc96381a7b42d3ee7071bd150ef42",
|
||||||
|
"gitBlob": "e409d39784237963c819be270623511f593b31e1"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"path": "original/inputs-complete-before.json",
|
||||||
|
"bytes": 115215,
|
||||||
|
"sha256": "ac2cfde68c6a8046fdfd5502aa35b4470dba9a9758621a115bac14c5845708e3",
|
||||||
|
"gitBlob": "928944e3f6068973cd409fe24a6c82b7c0aa77eb"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"path": "original/inputs-complete-clippy-after.json",
|
||||||
|
"bytes": 115215,
|
||||||
|
"sha256": "e696861bd053d5e68f2b1129a5d3421eb57a03e9f22bdee1db9b966c8b1208b7",
|
||||||
|
"gitBlob": "10804a278796f50dfa280932804e13545b0cc000"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"path": "original/inputs-complete-clippy-before.json",
|
||||||
|
"bytes": 115215,
|
||||||
|
"sha256": "125696638c78ef84b6a9b6ede031667ad250dcff9606418bd4e325d916cf2aad",
|
||||||
|
"gitBlob": "79b2b51dc4b8a73e4e2b6a9f3154b1684b2fa675"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"path": "original/inputs-complete-focused-after.json",
|
||||||
|
"bytes": 115215,
|
||||||
|
"sha256": "fe8d6de73352b724878d33ba32e5f77f16a36627573556dd04b8c4003f47b1c4",
|
||||||
|
"gitBlob": "72711cb5c52866104a3fa9a3a56ec5cd52f8bb16"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"path": "original/inputs-complete-focused-before.json",
|
||||||
|
"bytes": 115215,
|
||||||
|
"sha256": "4c9d469be43cb187c024788343a03febd9c79d52485389afaacf582ee4a255c0",
|
||||||
|
"gitBlob": "0f118ef236bbe89e4547023f8aa35339f41f5a5d"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"path": "original/inputs-complete-list-after.json",
|
||||||
|
"bytes": 115215,
|
||||||
|
"sha256": "ed569d1d7b32a2705b3d6723b46884ed430cb7ae4d66ff70f73e2cd9f636726a",
|
||||||
|
"gitBlob": "a383af4f9c598aa81d15667f63605912e190776d"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"path": "original/inputs-complete-list-before.json",
|
||||||
|
"bytes": 115215,
|
||||||
|
"sha256": "c906ce9b8613ab7c06d088201046c682b44ec56c6c814d3ddcd1c9effe40c8ea",
|
||||||
|
"gitBlob": "d541747d468f59acc5028b3f8f95b4277d555616"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"path": "original/inputs-complete-server-after.json",
|
||||||
|
"bytes": 115215,
|
||||||
|
"sha256": "1a4e0208a185b3d625a344896a33ccdc5dc9b66fef63d6f1e33095d74f965e36",
|
||||||
|
"gitBlob": "f470fc0fd8b339fca454ddbe38a95639c7fc1a1c"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"path": "original/inputs-complete-server-before.json",
|
||||||
|
"bytes": 115215,
|
||||||
|
"sha256": "9ef653b2d16f0976348bd5c45a927e95a03ec1a7b1e9fa20a68d8999ffc5dbc9",
|
||||||
|
"gitBlob": "7e33f2c2c645e32d22dbc972a1b39a4eaf2ce271"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"path": "original/list-receipt.json",
|
||||||
|
"bytes": 124050,
|
||||||
|
"sha256": "83d603ac41113ed4f105b06956537db72aee6c0986d4355c2698f61acbbd51e9",
|
||||||
|
"gitBlob": "f17003e83b5bab2e87505e0682d2031a50584d35"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"path": "original/list.log",
|
||||||
|
"bytes": 110616,
|
||||||
|
"sha256": "2c7495d255021e7df8ddcb5aaff095754a25a386f6c1ee1e3d18478829e38456",
|
||||||
|
"gitBlob": "662ecd357781ba7b92b5c44f763345fba57145a0"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"path": "original/package-clearance.json",
|
||||||
|
"bytes": 451,
|
||||||
|
"sha256": "cb9fca9a94e47a638f8dc98dbaa2e0bf37dcef4e3f81d382da270d758d6deb99",
|
||||||
|
"gitBlob": "b4f2af860d02d2846f407d93a695676e7f62c882"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"path": "original/package-clearance.log",
|
||||||
|
"bytes": 39,
|
||||||
|
"sha256": "147044953cf523fee146dd6d89e18b2c178ed39e985326a9c6e259000b8df567",
|
||||||
|
"gitBlob": "a03387d63d9c61b335ea940df42d785e539fb030"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"path": "original/parser-verification.json",
|
||||||
|
"bytes": 600,
|
||||||
|
"sha256": "23add7ef3de163ede44965bfb86461c4adae4dac2bc4165c69e05c12e189a099",
|
||||||
|
"gitBlob": "9c7084e9858fdf2b1f1d86b9b2ef95feeab6565c"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"path": "original/preparation.json",
|
||||||
|
"bytes": 957,
|
||||||
|
"sha256": "ff8c154dccd9e82e36e982d40b98862dedd66e01b00e4c64b7d40d75d4c8a5f4",
|
||||||
|
"gitBlob": "ce1dd39f522e1d7be803e8cce30e8e968d501077"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"path": "original/prepared-scripts.json",
|
||||||
|
"bytes": 2059,
|
||||||
|
"sha256": "9443eb36b6d446e96429d6ffa55858db9a93c6997db25d8993e19eb95f3ff676",
|
||||||
|
"gitBlob": "8b2d7f9012d752147ec7f95cfe9e1811c67ef760"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"path": "original/run.ps1",
|
||||||
|
"bytes": 10964,
|
||||||
|
"sha256": "177f9366c09110feaa1d8c59401fb184776b39820018baa16d0b2561f0cc7748",
|
||||||
|
"gitBlob": "9bda88a0a5035d32f473641dd57f4d551f6ddec7"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"path": "original/server-receipt.json",
|
||||||
|
"bytes": 11008,
|
||||||
|
"sha256": "5c0cd2af2b1f3c12528ad961e5b08c60f8865751cca95c1267e1211faf7e0900",
|
||||||
|
"gitBlob": "bdeb0b7154f009569cf0c5aae5e2922bf130ab33"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"path": "original/server.log",
|
||||||
|
"bytes": 6772,
|
||||||
|
"sha256": "7c7d847ac942b23a33081fdc3eb9ec53a2c054cd422810e30528b5930c574d71",
|
||||||
|
"gitBlob": "370fdadec86eae3db4990dd56d0ccb40028748af"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"path": "original/toolchain-versions.json",
|
||||||
|
"bytes": 2268,
|
||||||
|
"sha256": "99e96ab20fab3bc223b27ff35fc8b2833979bc285ebe5c7f98dcd22453641227",
|
||||||
|
"gitBlob": "3227cd130ac83bbb75491d72cb981a635efe7f41"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"path": "original/validate-scripts.ps1",
|
||||||
|
"bytes": 402,
|
||||||
|
"sha256": "80850861d612f3341c599fdbd7db2cf7a1c812661249980a734ef27760bcc718",
|
||||||
|
"gitBlob": "a44671de2ffdf2a4ac024584ea450fc1d874f2ac"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"path": "original/verify-parser.ps1",
|
||||||
|
"bytes": 2575,
|
||||||
|
"sha256": "75bc32118143580a7ca9fc5d37e8e45045aac6bfb1ee54bf5eff7c83ab679d80",
|
||||||
|
"gitBlob": "82937483f1b3c53a79690fcfa43dfee6486d631a"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"byteExact": true,
|
||||||
|
"receiptBindingsVerified": true,
|
||||||
|
"allElevenCapturesMatch591": true
|
||||||
|
}
|
||||||
@@ -0,0 +1,23 @@
|
|||||||
|
# Combined Scenario renderer Windows gates — attempt2
|
||||||
|
|
||||||
|
Prepared only at 37be41092beb1c940f345072df1e017ce45fe2fc, worktree .local/scenario-renderer-bridge-ytr83r-20260913. No Cargo, toolchain version query, cleanup or application execution was performed during preparation. Parent owns all sequential stage dispatch.
|
||||||
|
|
||||||
|
Run with PowerShell7: pwsh -NoProfile -File .local/scenario-renderer-gates-attempt2-20260913/run.ps1 -Stage list, followed individually by focused, all, server, clippy, build. There is no redundant check stage. Each later stage requires the exact successful previous receipt, unchanged recipe/source/config bindings and preserved prior raw log.
|
||||||
|
|
||||||
|
Before first dispatch, parent supplies current-pin package-clearance.json with base, cargoExitCode0, target equal absolute root/target, dependenciesRetained true; existing successful zero-removal cleaning is allowed. Preparation never clears outputs.
|
||||||
|
|
||||||
|
Source scope was freshly enumerated from Git and independently from rg, with exact membership equality and a clean frozen worktree:591 files. This uses the prior crates/docs/examples/build/harness-fixtures/textual-authoring-fixture scope plus rust-toolchain.toml, Cargo.toml and Cargo.lock. enumeration.json records the exact scope; expected-inputs.json pins every raw byte count/SHA256. The one initial inputs-complete-before.json capture has already completed and independently matched all591 hashes. Do not run before again or replace evidence. Every stage captures and verifies591 inputs before and after; a changed scope is failure, not an automatic new count.
|
||||||
|
|
||||||
|
External input provenance is explicitly separate from version-controlled source. external-inputs.json binds .local/toolchain/env.ps1 and the presence/absence of config/config.toml at root, root/.local, the worktree and configured CARGO_HOME. All eight Cargo config candidates were absent at preparation; newly appearing files fail capture. First list stage records cargo/rustc/clippy/clang version output, paths, statuses and selected environment once, without rebuilding merely for versions. That receipt and the external env script hash remain bound in every stage receipt. No registry-wide hashing is claimed.
|
||||||
|
|
||||||
|
Focused membership is exactly87 unique tests: previous12 Scenario dispatch/SVG/rename regressions,53 typed activation/lifecycle/direct/atomic tests and22 resolver tests. expected-tests.json records groups, exact fully qualified names and current source module hash checks. The actual desktop list must contain each87 once; focused executes each once with no ignores; full desktop must match the complete listed multiset, pass all87 and retain ignored tests/result totals.
|
||||||
|
|
||||||
|
Server stage runs cargo test -p oa-server --all-targets --locked --offline -- --test-threads=1. No server full-test total is assumed: receipts preserve every parsed test/result summary and verify totals agree. scenario_layout::saved_scenario_positions_roundtrip_through_http_without_partial_or_noop_writes must pass exactly once; failure, absence, duplication or ignored status rejects the gate. Source namespace verified in tests/http.rs23–24 and tests/http/scenario_layout.rs176–177.
|
||||||
|
|
||||||
|
Clippy includes both oa-desktop and oa-server, all targets, locked/offline, -D warnings. Final GUI build records root/target/debug/arcadia-studio.exe path, bytes, SHA256 and timestamp. All runs use the pinned worktree and shared root target sequentially. Every receipt includes command arguments, source pin, timing, raw-log hash, capture hashes, recipe/config bindings, membership decision and postflight status.
|
||||||
|
|
||||||
|
Scripts were parsed with the PowerShell parser, without executing run.ps1. verify-parser.ps1 exercises the actual runner parser block on synthetic87-test, multi-binary server, duplicate-required, wrong-total and missing-required logs; parser-verification.json is script verification only, not product test evidence.
|
||||||
|
|
||||||
|
Do not edit source or gate recipes after dispatch. Failed/retried stages need a new gate directory, preserving this evidence.
|
||||||
|
|
||||||
|
Attempt2 preserves the previous gate directory unchanged. Parent reported the68a81c3 attempt closed after list1010 and focused86 passed/1 failed, with591 inputs unchanged. This new source differs only in scenario_layout.rs and its tests.rs. Parent clearance is limited to oa-desktop package outputs; unchanged core/server package artifacts and third-party dependencies are retained. The runner requires the new current-pin successful clearance receipt, not the previous receipt. No product gate result is copied forward as an attempt2 result.
|
||||||
+4194
File diff suppressed because it is too large
Load Diff
@@ -0,0 +1,47 @@
|
|||||||
|
#Requires -Version 7.0
|
||||||
|
param([Parameter(Mandatory=$true)][ValidatePattern('^(before|after|(list|focused|all|server|clippy|build)-(before|after))$')][string]$Stage)
|
||||||
|
Set-StrictMode -Version Latest
|
||||||
|
$ErrorActionPreference='Stop'
|
||||||
|
$taskWorkspace='C:\Users\User\Documents\Git\ARCADIA-Studio\.local\scenario-renderer-bridge-ytr83r-20260913'
|
||||||
|
$taskPin='37be41092beb1c940f345072df1e017ce45fe2fc'
|
||||||
|
function Hash-Input([string]$Path){(Get-FileHash -LiteralPath $Path -Algorithm SHA256).Hash.ToLowerInvariant()}
|
||||||
|
$taskOutput=Join-Path $PSScriptRoot ('inputs-complete-'+$Stage+'.json')
|
||||||
|
if(Test-Path -LiteralPath $taskOutput){throw 'Preserve existing input evidence; use a new directory for retries.'}
|
||||||
|
$pinRecord=Get-Content -Raw -LiteralPath (Join-Path $PSScriptRoot 'expected-inputs.json')|ConvertFrom-Json
|
||||||
|
$enumeration=Get-Content -Raw -LiteralPath (Join-Path $PSScriptRoot 'enumeration.json')|ConvertFrom-Json
|
||||||
|
$external=Get-Content -Raw -LiteralPath (Join-Path $PSScriptRoot 'external-inputs.json')|ConvertFrom-Json
|
||||||
|
if($pinRecord.base -cne $taskPin -or $enumeration.base -cne $taskPin -or $external.base -cne $taskPin){throw 'Wrong input pin.'}
|
||||||
|
Push-Location -LiteralPath $taskWorkspace
|
||||||
|
try {
|
||||||
|
$taskBase=git rev-parse HEAD
|
||||||
|
if($LASTEXITCODE -ne 0 -or $taskBase -cne $taskPin){throw 'Wrong source commit.'}
|
||||||
|
$status=@(git status --porcelain)
|
||||||
|
if($LASTEXITCODE -ne 0 -or $status.Count){throw 'Frozen worktree changed.'}
|
||||||
|
$taskRoots=@($enumeration.rootInputs);$taskScopes=@($enumeration.scopes)
|
||||||
|
$tracked=@(git ls-files -- @taskRoots @taskScopes)
|
||||||
|
if($LASTEXITCODE -ne 0){throw 'Git enumeration failed.'}
|
||||||
|
$tracked=@($tracked | ForEach-Object {$_.Replace('\','/')} | Sort-Object -Unique)
|
||||||
|
$present=@(rg --files @taskScopes)
|
||||||
|
if($LASTEXITCODE -ne 0){throw 'Actual input enumeration failed.'}
|
||||||
|
$taskPaths=@(($present+$taskRoots) | ForEach-Object {$_.Replace('\','/')} | Sort-Object -Unique)
|
||||||
|
if(@(Compare-Object $tracked $taskPaths).Count -or @(Compare-Object @($enumeration.gitPaths) $tracked).Count){throw 'Frozen input membership changed.'}
|
||||||
|
$taskEntries=@($taskPaths | ForEach-Object {$item=Get-Item -LiteralPath $_;[ordered]@{path=$_;bytes=$item.Length;sha256=(Hash-Input $_)}})
|
||||||
|
$externalNow=@(foreach($f in $external.files){
|
||||||
|
$present=Test-Path -LiteralPath $f.path
|
||||||
|
if($present -ne $f.present){throw ('External config presence changed: '+$f.path)}
|
||||||
|
if($present){$item=Get-Item -LiteralPath $f.path;$hash=Hash-Input $f.path;if($item.Length -ne $f.bytes -or $hash -cne $f.sha256){throw ('External input changed: '+$f.path)};[ordered]@{path=$f.path;present=$true;bytes=$item.Length;sha256=$hash}}
|
||||||
|
else{[ordered]@{path=$f.path;present=$false}}
|
||||||
|
})
|
||||||
|
$taskRecord=[ordered]@{capturedUtc=[DateTime]::UtcNow.ToString('o');workspace=$taskWorkspace;base=$taskBase;count=$taskEntries.Count;files=$taskEntries;externalInputs=$externalNow;expectedInputsSha256=(Hash-Input (Join-Path $PSScriptRoot 'expected-inputs.json'));enumerationSha256=(Hash-Input (Join-Path $PSScriptRoot 'enumeration.json'))}
|
||||||
|
$taskRecord|ConvertTo-Json -Depth 8|Set-Content -LiteralPath $taskOutput -Encoding utf8
|
||||||
|
if($taskEntries.Count -ne $pinRecord.count){throw 'Pinned dynamic count changed.'}
|
||||||
|
$expected=@{}
|
||||||
|
foreach($f in $pinRecord.files){if($expected.ContainsKey($f.path)){throw 'Duplicate pinned input.'};$expected[$f.path]=$f}
|
||||||
|
foreach($f in $taskEntries){if(-not $expected.ContainsKey($f.path)){throw 'Unexpected input.'};$old=$expected[$f.path];if($f.bytes -ne $old.bytes -or $f.sha256 -cne $old.sha256){throw ('Input changed: '+$f.path)};$expected.Remove($f.path)}
|
||||||
|
if($expected.Count){throw 'Missing input.'}
|
||||||
|
if($Stage -ne 'before'){
|
||||||
|
$baseline=Get-Content -Raw -LiteralPath (Join-Path $PSScriptRoot 'inputs-complete-before.json')|ConvertFrom-Json
|
||||||
|
if($baseline.base -cne $taskPin -or $baseline.count -ne $pinRecord.count -or $baseline.expectedInputsSha256 -cne $taskRecord.expectedInputsSha256 -or $baseline.enumerationSha256 -cne $taskRecord.enumerationSha256){throw 'Baseline binding changed.'}
|
||||||
|
}
|
||||||
|
Write-Output ('Captured and verified '+$taskEntries.Count+' inputs: '+$Stage)
|
||||||
|
} finally {Pop-Location}
|
||||||
+54
@@ -0,0 +1,54 @@
|
|||||||
|
{
|
||||||
|
"stage": "clippy",
|
||||||
|
"command": "cargo clippy -p oa-desktop -p oa-server --all-targets --locked --offline -- -D warnings",
|
||||||
|
"arguments": [
|
||||||
|
"clippy",
|
||||||
|
"-p",
|
||||||
|
"oa-desktop",
|
||||||
|
"-p",
|
||||||
|
"oa-server",
|
||||||
|
"--all-targets",
|
||||||
|
"--locked",
|
||||||
|
"--offline",
|
||||||
|
"--",
|
||||||
|
"-D",
|
||||||
|
"warnings"
|
||||||
|
],
|
||||||
|
"base": "37be41092beb1c940f345072df1e017ce45fe2fc",
|
||||||
|
"workspace": "C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\scenario-renderer-bridge-ytr83r-20260913",
|
||||||
|
"target": "C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\target",
|
||||||
|
"startUtc": "2026-09-13T06:00:15.6745225Z",
|
||||||
|
"endUtc": "2026-09-13T06:06:23.1513355Z",
|
||||||
|
"cargoExitCode": 101,
|
||||||
|
"selectionValid": true,
|
||||||
|
"inputsUnchanged": true,
|
||||||
|
"postflightFailure": null,
|
||||||
|
"boundScriptAndInputHashes": {
|
||||||
|
"expected-tests.json": "4e69f32fec2e7f5445b09bb7d5345bc89f1f19e14fa151807f656f6ab91c15b5",
|
||||||
|
"package-clearance.json": "cb9fca9a94e47a638f8dc98dbaa2e0bf37dcef4e3f81d382da270d758d6deb99",
|
||||||
|
"capture.ps1": "351820236408a6aea6336771372dd438cc0b3807547697c8d0d9f442b91b9008",
|
||||||
|
"external-inputs.json": "2e635ae8b856d4d31d34da1b0ef03dd17f34633dd78a974e5beae9e8f929a0ee",
|
||||||
|
"enumeration.json": "0095fff574a18f9c9c4a86299177d50a2d5dd4f7a42d7d6072fd684d28081561",
|
||||||
|
"inputs-complete-before.json": "ac2cfde68c6a8046fdfd5502aa35b4470dba9a9758621a115bac14c5845708e3",
|
||||||
|
"run.ps1": "177f9366c09110feaa1d8c59401fb184776b39820018baa16d0b2561f0cc7748",
|
||||||
|
"expected-inputs.json": "f7805a5b2db2d6cc67526136aca03d2f5cd044f3fe91ea593a18d3bc23381af4"
|
||||||
|
},
|
||||||
|
"priorStage": {
|
||||||
|
"stage": "server",
|
||||||
|
"receiptSha256": "5c0cd2af2b1f3c12528ad961e5b08c60f8865751cca95c1267e1211faf7e0900",
|
||||||
|
"rawLogSha256": "7c7d847ac942b23a33081fdc3eb9ec53a2c054cd422810e30528b5930c574d71"
|
||||||
|
},
|
||||||
|
"externalEnvironmentPath": "C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\env.ps1",
|
||||||
|
"externalEnvironmentSha256": "be2226f08764bb6961b4be8513ce55bab076890cddd2fef0f54a4031f94a82d4",
|
||||||
|
"toolchainVersionsSha256": "99e96ab20fab3bc223b27ff35fc8b2833979bc285ebe5c7f98dcd22453641227",
|
||||||
|
"rawLogSha256": "160946a38372567a313d7e1739c4869b4c080f797d71f23fbcdda105ce53453d",
|
||||||
|
"beforeCaptureSha256": "125696638c78ef84b6a9b6ede031667ad250dcff9606418bd4e325d916cf2aad",
|
||||||
|
"afterCaptureSha256": "e696861bd053d5e68f2b1129a5d3421eb57a03e9f22bdee1db9b966c8b1208b7",
|
||||||
|
"listedTests": [],
|
||||||
|
"executedTests": [],
|
||||||
|
"testResultSummaries": [],
|
||||||
|
"matchedRegressionTests": [],
|
||||||
|
"ignoredTests": [],
|
||||||
|
"serverRequiredMatches": [],
|
||||||
|
"binary": null
|
||||||
|
}
|
||||||
+26
@@ -0,0 +1,26 @@
|
|||||||
|
#Requires -Version 7.0
|
||||||
|
$ErrorActionPreference='Stop'
|
||||||
|
Set-StrictMode -Version Latest
|
||||||
|
$workspace='C:\Users\User\Documents\Git\ARCADIA-Studio\.local\scenario-renderer-bridge-ytr83r-20260913'
|
||||||
|
$pin='37be41092beb1c940f345072df1e017ce45fe2fc'
|
||||||
|
Push-Location -LiteralPath $workspace
|
||||||
|
try {
|
||||||
|
$head=git rev-parse HEAD
|
||||||
|
if($LASTEXITCODE -ne 0 -or $head -cne $pin){throw 'Wrong frozen pin'}
|
||||||
|
$status=@(git status --porcelain)
|
||||||
|
if($LASTEXITCODE -ne 0 -or $status.Count){throw 'Frozen worktree is not clean'}
|
||||||
|
$scopes=@('crates','docs','examples','build','harness/fixtures','harness/experiments/textual-authoring-20260911')
|
||||||
|
$roots=@('Cargo.toml','Cargo.lock','rust-toolchain.toml')
|
||||||
|
$tracked=@(git ls-files -- @roots @scopes)
|
||||||
|
if($LASTEXITCODE -ne 0){throw 'Git enumeration failed'}
|
||||||
|
$tracked=@($tracked | ForEach-Object { $_.Replace('\','/') } | Sort-Object -Unique)
|
||||||
|
$present=@(rg --files @scopes)
|
||||||
|
if($LASTEXITCODE -ne 0){throw 'Independent rg enumeration failed'}
|
||||||
|
$present=@(($present+$roots) | ForEach-Object { $_.Replace('\','/') } | Sort-Object -Unique)
|
||||||
|
if(@(Compare-Object $tracked $present).Count){throw 'Git and actual file memberships differ'}
|
||||||
|
$gitTree=git rev-parse 'HEAD^{tree}'
|
||||||
|
if($LASTEXITCODE -ne 0){throw 'Tree identity unavailable'}
|
||||||
|
$record=[ordered]@{base=$head;tree=$gitTree;workspace=$workspace;capturedUtc=[DateTime]::UtcNow.ToString('o');scopes=$scopes;rootInputs=$roots;gitCount=$tracked.Count;rgCount=$present.Count;gitPaths=$tracked;rgPaths=$present}
|
||||||
|
$record|ConvertTo-Json -Depth 6|Set-Content -LiteralPath (Join-Path $PSScriptRoot 'enumeration.json') -Encoding utf8
|
||||||
|
Write-Output ('Verified Git/rg membership '+$tracked.Count+' at '+$head)
|
||||||
|
} finally {Pop-Location}
|
||||||
+1207
File diff suppressed because it is too large
Load Diff
+2963
File diff suppressed because it is too large
Load Diff
+211
@@ -0,0 +1,211 @@
|
|||||||
|
{
|
||||||
|
"source_commit": "37be41092beb1c940f345072df1e017ce45fe2fc",
|
||||||
|
"expected_count": 87,
|
||||||
|
"groups": {
|
||||||
|
"previous12": [
|
||||||
|
"app::saved_scenario_dispatch_tests::forged_saved_usage_is_refused_without_selection_or_camera_changes",
|
||||||
|
"app::saved_scenario_dispatch_tests::missing_export_target_does_not_apply_pending_properties_or_open_dialog",
|
||||||
|
"app::saved_scenario_dispatch_tests::rejected_export_schedules_no_write_and_preserves_draft_history_and_busy_state",
|
||||||
|
"app::saved_scenario_dispatch_tests::saved_scenario_cannot_use_architecture_controls_or_change_projection_by_toolbar",
|
||||||
|
"app::saved_scenario_dispatch_tests::saved_scenario_does_not_start_the_existing_architecture_palette",
|
||||||
|
"app::saved_scenario_dispatch_tests::semantic_scenario_preview_remains_available_and_saved_views_are_not_default_architecture",
|
||||||
|
"app::saved_scenario_dispatch_tests::unsupported_saved_picker_and_reveal_do_not_apply_pending_properties",
|
||||||
|
"app::source_rename::tests::navigation_union_tests::rename_then_exact_caret_diagram_navigation_preserves_complete_model_undo_redo_history",
|
||||||
|
"diagram::tests::svg_accepts_populated_and_empty_architecture_views",
|
||||||
|
"diagram::tests::svg_rejects_missing_diagram_without_mutation",
|
||||||
|
"diagram::tests::svg_rejects_saved_scenario_with_absent_or_authored_layout_without_mutation",
|
||||||
|
"workflow::saved_scenario_destination_tests::empty_transition_results_do_not_make_a_scenario_an_architecture_destination"
|
||||||
|
],
|
||||||
|
"typed_lifecycle_atomic53": [
|
||||||
|
"behavior::scenario_activation::tests::activation_shoulders_under_label_backplates_select_their_call",
|
||||||
|
"behavior::scenario_activation::tests::long_message_backplates_do_not_erase_selected_activation_border_pixels",
|
||||||
|
"behavior::scenario_activation::tests::nested_calls_expose_both_bars_and_end_at_their_exact_replies_in_both_directions",
|
||||||
|
"behavior::scenario_activation::tests::call_uuid_order_does_not_choose_activation_columns_or_message_anchors",
|
||||||
|
"behavior::scenario_activation::tests::sequential_calls_reuse_column_and_crossed_replies_keep_their_correlations",
|
||||||
|
"behavior::scenario_activation::tests::self_call_receives_at_lower_loop_end_and_self_reply_returns_to_the_parent",
|
||||||
|
"behavior::scenario_activation::tests::an_inactive_self_call_has_no_fabricated_parent_and_three_nested_calls_expose_three_columns",
|
||||||
|
"behavior::scenario_activation::tests::reentrant_call_uses_the_other_receiver_without_inventing_a_caller_execution",
|
||||||
|
"behavior::scenario_activation::tests::actual_canvas_pointer_selects_each_exposed_shoulder_under_zoom_and_pan",
|
||||||
|
"behavior::scenario_activation::tests::missing_reply_is_a_short_explicit_open_span_and_an_uncorrelated_reply_closes_nothing",
|
||||||
|
"behavior::scenario_activation::tests::alternative_and_parallel_operand_local_calls_do_not_nest_from_screen_order",
|
||||||
|
"behavior::scenario_activation::tests::inherited_execution_anchors_a_self_call_inside_an_operand_before_returning_after_the_fragment",
|
||||||
|
"behavior::scenario_activation::tests::a_fragment_cannot_make_crossed_calls_an_unambiguous_caller_execution",
|
||||||
|
"behavior::scenario_activation::tests::nested_correlations_returning_in_alternative_operands_remain_nested_before_the_fragment",
|
||||||
|
"behavior::scenario_lifecycle::render::tests::real_scene_long_header_title_and_detail_keep_names_and_have_bounded_clips",
|
||||||
|
"behavior::scenario_lifecycle::render::tests::box_text_clip_intersects_parent_viewport_and_rejects_empty_interiors",
|
||||||
|
"behavior::scenario_lifecycle::render::tests::real_scene_wide_latin_header_exceeds_old_character_budget",
|
||||||
|
"behavior::scenario_lifecycle::render::tests::birth_label_clip_keeps_padded_world_bounds_at_each_scene_scale",
|
||||||
|
"behavior::scenario_lifecycle::render::tests::birth_label_clip_preserves_parent_viewport_bounds",
|
||||||
|
"behavior::scenario_lifecycle::render::tests::real_scene_empty_and_create_only_use_visible_root_extents_not_insertion_bounds",
|
||||||
|
"behavior::scenario_lifecycle::render::tests::real_scene_birth_death_markers_align_endpoints_and_win_selection_without_mutating_source",
|
||||||
|
"behavior::scenario_lifecycle::render::tests::real_scene_branch_delete_clips_only_its_activation_and_keeps_unanswered_call_visible",
|
||||||
|
"behavior::scenario_lifecycle::render::tests::real_scene_unassigned_lanes_and_explicit_incomplete_receiver_keep_real_marker_identity",
|
||||||
|
"behavior::scenario_lifecycle::render::tests::real_scene_minimum_zoom_marker_halos_do_not_steal_adjacent_capsule_or_header_hits",
|
||||||
|
"behavior::scenario_lifecycle::render::tests::real_scene_minimum_zoom_near_ordinary_message_wins_over_lifecycle_halos",
|
||||||
|
"behavior::scenario_lifecycle::render::tests::real_scene_self_lifecycle_elbows_end_on_recorded_marker_rows",
|
||||||
|
"behavior::scenario_lifecycle::render::tests::real_scene_self_delete_caption_clears_the_preceding_action_box",
|
||||||
|
"behavior::scenario_lifecycle::render::tests::real_scene_conditional_repeated_and_parallel_scopes_do_not_claim_definite_continuation",
|
||||||
|
"behavior::scenario_lifecycle::render::tests::real_scene_lifecycle_edit_undo_redo_restores_exact_source_and_changed_geometry",
|
||||||
|
"behavior::scenario_lifecycle::render::tests::panned_header_and_create_clips_use_screen_translation_and_actual_viewport",
|
||||||
|
"behavior::scenario_lifecycle::render::tests::real_scene_panned_zoomed_program_keeps_header_birth_and_death_hit_identity",
|
||||||
|
"behavior::scenario_lifecycle::tests::root_lifetime_has_exact_birth_death_boundaries_without_source_mutation",
|
||||||
|
"behavior::scenario_lifecycle::tests::alternative_death_does_not_kill_its_displayed_sibling",
|
||||||
|
"behavior::scenario_lifecycle::tests::conditional_birth_does_not_infer_absence_in_siblings_or_ancestors",
|
||||||
|
"behavior::scenario_lifecycle::tests::loop_lifetime_is_local_and_warning_bearing_loops_remain_drawable",
|
||||||
|
"behavior::scenario_lifecycle::tests::optional_cleanup_inside_loop_does_not_claim_balanced_or_definite_exit",
|
||||||
|
"behavior::scenario_lifecycle::tests::lifecycle_free_fragments_do_not_poison_other_lanes",
|
||||||
|
"behavior::scenario_lifecycle::tests::explicit_receiver_is_authoritative_even_with_missing_exchange",
|
||||||
|
"behavior::scenario_lifecycle::tests::missing_geometry_is_reported_without_nonfinite_or_guessed_markers",
|
||||||
|
"behavior::scenario_lifecycle::tests::scenario_use_is_opaque_and_never_imports_callee_lifecycle_events",
|
||||||
|
"behavior::scenario_lifecycle::tests::projection_retains_exact_authored_source_and_does_not_enter_history",
|
||||||
|
"behavior::scenario_lifecycle::render::tests::union_tests::admitted_delayed_create_nested_calls_replies_delete_share_one_geometry_pipeline",
|
||||||
|
"behavior::scenario_lifecycle::render::tests::union_tests::admitted_death_and_incomplete_later_reply_do_not_fabricate_an_answered_execution",
|
||||||
|
"behavior::scenario_lifecycle::render::tests::union_tests::admitted_self_lifecycle_and_self_call_keep_distinct_send_receive_rows",
|
||||||
|
"behavior::scenario_lifecycle::render::tests::union_tests::admitted_unresolved_operand_keeps_unanswered_cue_without_any_visible_segment",
|
||||||
|
"behavior::scenario_lifecycle::render::tests::union_tests::admitted_calls_without_sender_polylines_still_have_logical_correlation_metadata",
|
||||||
|
"behavior::scenario_lifecycle::render::tests::union_tests::invalid_prebirth_call_and_postdeath_reply_remain_rejected_with_defensive_scene_clipping",
|
||||||
|
"behavior::scenario_lifecycle::render::tests::union_tests::conditional_death_then_recreate_never_revives_call_but_keeps_open_sibling",
|
||||||
|
"behavior::scenario_lifecycle::render::tests::union_tests::clipped_operand_preserves_original_nested_or_crossed_correlation_distinction",
|
||||||
|
"behavior::scenario_lifecycle::render::tests::union_tests::test_only_upstream_row_offsets_update_lifetime_segments_and_endpoints_without_authoring",
|
||||||
|
"behavior::direct_canvas_tests::direct_alt_execution_stops_each_operand_at_its_reply_and_marks_open_operand",
|
||||||
|
"behavior::direct_canvas_tests::direct_execution_span_ends_at_its_correlated_reply_and_marks_an_open_call",
|
||||||
|
"behavior::scenario::tests::graphical_call_reply_is_atomic_correlated_and_source_equivalent"
|
||||||
|
],
|
||||||
|
"resolver22": [
|
||||||
|
"behavior::scenario_layout::tests::absent_empty_and_explicit_baseline_saved_values_preserve_complete_scene_and_source",
|
||||||
|
"behavior::scenario_layout::tests::independent_saved_appearances_of_reused_exchange_have_exact_anchors_and_no_ambient_state",
|
||||||
|
"behavior::scenario_layout::tests::authored_lanes_precede_headers_arrows_lifetimes_and_complete_bounds",
|
||||||
|
"behavior::scenario_layout::tests::same_x_distinct_lifelines_are_not_self_messages_in_either_bridge",
|
||||||
|
"behavior::scenario_layout::tests::self_call_receive_and_reply_send_drive_the_full_typed_execution",
|
||||||
|
"behavior::scenario_layout::tests::moved_death_clips_actual_bar_and_preserves_unanswered_cue",
|
||||||
|
"behavior::scenario_layout::tests::explicit_root_scope_failures_do_not_clamp_calls_or_lifecycle_but_async_can_be_negative",
|
||||||
|
"behavior::scenario_layout::tests::reply_crossing_is_a_specific_typed_failure",
|
||||||
|
"behavior::scenario_layout::tests::complete_scope_plan_rejects_escape_preserves_overlap_and_keeps_headers_and_followers",
|
||||||
|
"behavior::scenario_layout::tests::unfinished_coordinate_is_latent_and_zero_or_signed_zero_never_rewrites_source",
|
||||||
|
"behavior::scenario_layout::tests::self_lifecycle_saved_send_is_converted_once_to_the_actual_receive_marker",
|
||||||
|
"behavior::scenario_layout::tests::timer_uses_implicit_effective_receiver_and_true_self_offset",
|
||||||
|
"behavior::scenario_layout::tests::latent_message_becomes_exact_only_when_its_own_endpoint_is_completed",
|
||||||
|
"behavior::scenario_layout::tests::wide_gap_bounds_include_all_actual_shapes_and_typed_extensions",
|
||||||
|
"behavior::scenario_layout::tests::earlier_receiver_death_and_prebirth_call_are_named_typed_failures_not_disappearing_bars",
|
||||||
|
"behavior::scenario_layout::tests::unsupported_expansion_duplicate_keys_and_foreign_identity_fail_without_mutating_input",
|
||||||
|
"behavior::scenario_layout::tests::saved_direct_nested_message_uses_operand_scopes_without_reparenting_or_moving_followers",
|
||||||
|
"behavior::scenario_layout::tests::exact_authored_lane_bits_survive_headers_and_tiny_distinct_lanes_are_not_coincident",
|
||||||
|
"behavior::scenario_layout::tests::newly_skipped_sibling_scope_is_rejected_using_real_projector_diagnostics",
|
||||||
|
"behavior::scenario_layout::tests::post_fragment_death_cannot_disappear_and_feasible_operand_spacing_retains_its_marker",
|
||||||
|
"behavior::scenario_layout::tests::authored_send_bits_survive_baseline_delta_and_self_lifecycle_row_conversion",
|
||||||
|
"behavior::scenario_layout::tests::decimal_call_anchor_is_admitted_and_exact_in_plan_line_and_typed_activation"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"tests": [
|
||||||
|
"app::saved_scenario_dispatch_tests::forged_saved_usage_is_refused_without_selection_or_camera_changes",
|
||||||
|
"app::saved_scenario_dispatch_tests::missing_export_target_does_not_apply_pending_properties_or_open_dialog",
|
||||||
|
"app::saved_scenario_dispatch_tests::rejected_export_schedules_no_write_and_preserves_draft_history_and_busy_state",
|
||||||
|
"app::saved_scenario_dispatch_tests::saved_scenario_cannot_use_architecture_controls_or_change_projection_by_toolbar",
|
||||||
|
"app::saved_scenario_dispatch_tests::saved_scenario_does_not_start_the_existing_architecture_palette",
|
||||||
|
"app::saved_scenario_dispatch_tests::semantic_scenario_preview_remains_available_and_saved_views_are_not_default_architecture",
|
||||||
|
"app::saved_scenario_dispatch_tests::unsupported_saved_picker_and_reveal_do_not_apply_pending_properties",
|
||||||
|
"app::source_rename::tests::navigation_union_tests::rename_then_exact_caret_diagram_navigation_preserves_complete_model_undo_redo_history",
|
||||||
|
"behavior::direct_canvas_tests::direct_alt_execution_stops_each_operand_at_its_reply_and_marks_open_operand",
|
||||||
|
"behavior::direct_canvas_tests::direct_execution_span_ends_at_its_correlated_reply_and_marks_an_open_call",
|
||||||
|
"behavior::scenario::tests::graphical_call_reply_is_atomic_correlated_and_source_equivalent",
|
||||||
|
"behavior::scenario_activation::tests::a_fragment_cannot_make_crossed_calls_an_unambiguous_caller_execution",
|
||||||
|
"behavior::scenario_activation::tests::activation_shoulders_under_label_backplates_select_their_call",
|
||||||
|
"behavior::scenario_activation::tests::actual_canvas_pointer_selects_each_exposed_shoulder_under_zoom_and_pan",
|
||||||
|
"behavior::scenario_activation::tests::alternative_and_parallel_operand_local_calls_do_not_nest_from_screen_order",
|
||||||
|
"behavior::scenario_activation::tests::an_inactive_self_call_has_no_fabricated_parent_and_three_nested_calls_expose_three_columns",
|
||||||
|
"behavior::scenario_activation::tests::call_uuid_order_does_not_choose_activation_columns_or_message_anchors",
|
||||||
|
"behavior::scenario_activation::tests::inherited_execution_anchors_a_self_call_inside_an_operand_before_returning_after_the_fragment",
|
||||||
|
"behavior::scenario_activation::tests::long_message_backplates_do_not_erase_selected_activation_border_pixels",
|
||||||
|
"behavior::scenario_activation::tests::missing_reply_is_a_short_explicit_open_span_and_an_uncorrelated_reply_closes_nothing",
|
||||||
|
"behavior::scenario_activation::tests::nested_calls_expose_both_bars_and_end_at_their_exact_replies_in_both_directions",
|
||||||
|
"behavior::scenario_activation::tests::nested_correlations_returning_in_alternative_operands_remain_nested_before_the_fragment",
|
||||||
|
"behavior::scenario_activation::tests::reentrant_call_uses_the_other_receiver_without_inventing_a_caller_execution",
|
||||||
|
"behavior::scenario_activation::tests::self_call_receives_at_lower_loop_end_and_self_reply_returns_to_the_parent",
|
||||||
|
"behavior::scenario_activation::tests::sequential_calls_reuse_column_and_crossed_replies_keep_their_correlations",
|
||||||
|
"behavior::scenario_layout::tests::absent_empty_and_explicit_baseline_saved_values_preserve_complete_scene_and_source",
|
||||||
|
"behavior::scenario_layout::tests::authored_lanes_precede_headers_arrows_lifetimes_and_complete_bounds",
|
||||||
|
"behavior::scenario_layout::tests::authored_send_bits_survive_baseline_delta_and_self_lifecycle_row_conversion",
|
||||||
|
"behavior::scenario_layout::tests::complete_scope_plan_rejects_escape_preserves_overlap_and_keeps_headers_and_followers",
|
||||||
|
"behavior::scenario_layout::tests::decimal_call_anchor_is_admitted_and_exact_in_plan_line_and_typed_activation",
|
||||||
|
"behavior::scenario_layout::tests::earlier_receiver_death_and_prebirth_call_are_named_typed_failures_not_disappearing_bars",
|
||||||
|
"behavior::scenario_layout::tests::exact_authored_lane_bits_survive_headers_and_tiny_distinct_lanes_are_not_coincident",
|
||||||
|
"behavior::scenario_layout::tests::explicit_root_scope_failures_do_not_clamp_calls_or_lifecycle_but_async_can_be_negative",
|
||||||
|
"behavior::scenario_layout::tests::independent_saved_appearances_of_reused_exchange_have_exact_anchors_and_no_ambient_state",
|
||||||
|
"behavior::scenario_layout::tests::latent_message_becomes_exact_only_when_its_own_endpoint_is_completed",
|
||||||
|
"behavior::scenario_layout::tests::moved_death_clips_actual_bar_and_preserves_unanswered_cue",
|
||||||
|
"behavior::scenario_layout::tests::newly_skipped_sibling_scope_is_rejected_using_real_projector_diagnostics",
|
||||||
|
"behavior::scenario_layout::tests::post_fragment_death_cannot_disappear_and_feasible_operand_spacing_retains_its_marker",
|
||||||
|
"behavior::scenario_layout::tests::reply_crossing_is_a_specific_typed_failure",
|
||||||
|
"behavior::scenario_layout::tests::same_x_distinct_lifelines_are_not_self_messages_in_either_bridge",
|
||||||
|
"behavior::scenario_layout::tests::saved_direct_nested_message_uses_operand_scopes_without_reparenting_or_moving_followers",
|
||||||
|
"behavior::scenario_layout::tests::self_call_receive_and_reply_send_drive_the_full_typed_execution",
|
||||||
|
"behavior::scenario_layout::tests::self_lifecycle_saved_send_is_converted_once_to_the_actual_receive_marker",
|
||||||
|
"behavior::scenario_layout::tests::timer_uses_implicit_effective_receiver_and_true_self_offset",
|
||||||
|
"behavior::scenario_layout::tests::unfinished_coordinate_is_latent_and_zero_or_signed_zero_never_rewrites_source",
|
||||||
|
"behavior::scenario_layout::tests::unsupported_expansion_duplicate_keys_and_foreign_identity_fail_without_mutating_input",
|
||||||
|
"behavior::scenario_layout::tests::wide_gap_bounds_include_all_actual_shapes_and_typed_extensions",
|
||||||
|
"behavior::scenario_lifecycle::render::tests::birth_label_clip_keeps_padded_world_bounds_at_each_scene_scale",
|
||||||
|
"behavior::scenario_lifecycle::render::tests::birth_label_clip_preserves_parent_viewport_bounds",
|
||||||
|
"behavior::scenario_lifecycle::render::tests::box_text_clip_intersects_parent_viewport_and_rejects_empty_interiors",
|
||||||
|
"behavior::scenario_lifecycle::render::tests::panned_header_and_create_clips_use_screen_translation_and_actual_viewport",
|
||||||
|
"behavior::scenario_lifecycle::render::tests::real_scene_birth_death_markers_align_endpoints_and_win_selection_without_mutating_source",
|
||||||
|
"behavior::scenario_lifecycle::render::tests::real_scene_branch_delete_clips_only_its_activation_and_keeps_unanswered_call_visible",
|
||||||
|
"behavior::scenario_lifecycle::render::tests::real_scene_conditional_repeated_and_parallel_scopes_do_not_claim_definite_continuation",
|
||||||
|
"behavior::scenario_lifecycle::render::tests::real_scene_empty_and_create_only_use_visible_root_extents_not_insertion_bounds",
|
||||||
|
"behavior::scenario_lifecycle::render::tests::real_scene_lifecycle_edit_undo_redo_restores_exact_source_and_changed_geometry",
|
||||||
|
"behavior::scenario_lifecycle::render::tests::real_scene_long_header_title_and_detail_keep_names_and_have_bounded_clips",
|
||||||
|
"behavior::scenario_lifecycle::render::tests::real_scene_minimum_zoom_marker_halos_do_not_steal_adjacent_capsule_or_header_hits",
|
||||||
|
"behavior::scenario_lifecycle::render::tests::real_scene_minimum_zoom_near_ordinary_message_wins_over_lifecycle_halos",
|
||||||
|
"behavior::scenario_lifecycle::render::tests::real_scene_panned_zoomed_program_keeps_header_birth_and_death_hit_identity",
|
||||||
|
"behavior::scenario_lifecycle::render::tests::real_scene_self_delete_caption_clears_the_preceding_action_box",
|
||||||
|
"behavior::scenario_lifecycle::render::tests::real_scene_self_lifecycle_elbows_end_on_recorded_marker_rows",
|
||||||
|
"behavior::scenario_lifecycle::render::tests::real_scene_unassigned_lanes_and_explicit_incomplete_receiver_keep_real_marker_identity",
|
||||||
|
"behavior::scenario_lifecycle::render::tests::real_scene_wide_latin_header_exceeds_old_character_budget",
|
||||||
|
"behavior::scenario_lifecycle::render::tests::union_tests::admitted_calls_without_sender_polylines_still_have_logical_correlation_metadata",
|
||||||
|
"behavior::scenario_lifecycle::render::tests::union_tests::admitted_death_and_incomplete_later_reply_do_not_fabricate_an_answered_execution",
|
||||||
|
"behavior::scenario_lifecycle::render::tests::union_tests::admitted_delayed_create_nested_calls_replies_delete_share_one_geometry_pipeline",
|
||||||
|
"behavior::scenario_lifecycle::render::tests::union_tests::admitted_self_lifecycle_and_self_call_keep_distinct_send_receive_rows",
|
||||||
|
"behavior::scenario_lifecycle::render::tests::union_tests::admitted_unresolved_operand_keeps_unanswered_cue_without_any_visible_segment",
|
||||||
|
"behavior::scenario_lifecycle::render::tests::union_tests::clipped_operand_preserves_original_nested_or_crossed_correlation_distinction",
|
||||||
|
"behavior::scenario_lifecycle::render::tests::union_tests::conditional_death_then_recreate_never_revives_call_but_keeps_open_sibling",
|
||||||
|
"behavior::scenario_lifecycle::render::tests::union_tests::invalid_prebirth_call_and_postdeath_reply_remain_rejected_with_defensive_scene_clipping",
|
||||||
|
"behavior::scenario_lifecycle::render::tests::union_tests::test_only_upstream_row_offsets_update_lifetime_segments_and_endpoints_without_authoring",
|
||||||
|
"behavior::scenario_lifecycle::tests::alternative_death_does_not_kill_its_displayed_sibling",
|
||||||
|
"behavior::scenario_lifecycle::tests::conditional_birth_does_not_infer_absence_in_siblings_or_ancestors",
|
||||||
|
"behavior::scenario_lifecycle::tests::explicit_receiver_is_authoritative_even_with_missing_exchange",
|
||||||
|
"behavior::scenario_lifecycle::tests::lifecycle_free_fragments_do_not_poison_other_lanes",
|
||||||
|
"behavior::scenario_lifecycle::tests::loop_lifetime_is_local_and_warning_bearing_loops_remain_drawable",
|
||||||
|
"behavior::scenario_lifecycle::tests::missing_geometry_is_reported_without_nonfinite_or_guessed_markers",
|
||||||
|
"behavior::scenario_lifecycle::tests::optional_cleanup_inside_loop_does_not_claim_balanced_or_definite_exit",
|
||||||
|
"behavior::scenario_lifecycle::tests::projection_retains_exact_authored_source_and_does_not_enter_history",
|
||||||
|
"behavior::scenario_lifecycle::tests::root_lifetime_has_exact_birth_death_boundaries_without_source_mutation",
|
||||||
|
"behavior::scenario_lifecycle::tests::scenario_use_is_opaque_and_never_imports_callee_lifecycle_events",
|
||||||
|
"diagram::tests::svg_accepts_populated_and_empty_architecture_views",
|
||||||
|
"diagram::tests::svg_rejects_missing_diagram_without_mutation",
|
||||||
|
"diagram::tests::svg_rejects_saved_scenario_with_absent_or_authored_layout_without_mutation",
|
||||||
|
"workflow::saved_scenario_destination_tests::empty_transition_results_do_not_make_a_scenario_an_architecture_destination"
|
||||||
|
],
|
||||||
|
"source_membership_checks": [
|
||||||
|
{
|
||||||
|
"path": "crates/oa-desktop/src/behavior/scenario_activation/tests.rs",
|
||||||
|
"count": 14,
|
||||||
|
"sha256": "8b855dc067f1b15aed79c7eddf52c89001a8b961d9de4887f235c03b46264a1b"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"path": "crates/oa-desktop/src/behavior/scenario_lifecycle/render_tests.rs",
|
||||||
|
"count": 17,
|
||||||
|
"sha256": "09f0e6b894213f508a029226d547c54e1225003ae6bf7d8ffc65b7e4ac35e9ab"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"path": "crates/oa-desktop/src/behavior/scenario_lifecycle/tests.rs",
|
||||||
|
"count": 10,
|
||||||
|
"sha256": "01b576993b329810cd78a859b45ac52c66f5a14549065661dd1308196e0b724d"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"path": "crates/oa-desktop/src/behavior/scenario_lifecycle/union_tests.rs",
|
||||||
|
"count": 9,
|
||||||
|
"sha256": "da12a6752257ec25d3e3e49d90b69c629ec2cf30f034ec393774e01daee42b59"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"server_required_test": "scenario_layout::saved_scenario_positions_roundtrip_through_http_without_partial_or_noop_writes"
|
||||||
|
}
|
||||||
+44
@@ -0,0 +1,44 @@
|
|||||||
|
{
|
||||||
|
"base": "37be41092beb1c940f345072df1e017ce45fe2fc",
|
||||||
|
"status": "External environment/config provenance; these paths are not claimed version-controlled",
|
||||||
|
"files": [
|
||||||
|
{
|
||||||
|
"path": "C:/Users/User/Documents/Git/ARCADIA-Studio/.local/toolchain/env.ps1",
|
||||||
|
"present": true,
|
||||||
|
"bytes": 572,
|
||||||
|
"sha256": "be2226f08764bb6961b4be8513ce55bab076890cddd2fef0f54a4031f94a82d4"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"path": "C:/Users/User/Documents/Git/ARCADIA-Studio/.cargo/config",
|
||||||
|
"present": false
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"path": "C:/Users/User/Documents/Git/ARCADIA-Studio/.local/.cargo/config",
|
||||||
|
"present": false
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"path": "C:/Users/User/Documents/Git/ARCADIA-Studio/.local/scenario-renderer-bridge-ytr83r-20260913/.cargo/config",
|
||||||
|
"present": false
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"path": "C:/Users/User/Documents/Git/ARCADIA-Studio/.local/toolchain/cargo/config",
|
||||||
|
"present": false
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"path": "C:/Users/User/Documents/Git/ARCADIA-Studio/.cargo/config.toml",
|
||||||
|
"present": false
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"path": "C:/Users/User/Documents/Git/ARCADIA-Studio/.local/.cargo/config.toml",
|
||||||
|
"present": false
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"path": "C:/Users/User/Documents/Git/ARCADIA-Studio/.local/scenario-renderer-bridge-ytr83r-20260913/.cargo/config.toml",
|
||||||
|
"present": false
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"path": "C:/Users/User/Documents/Git/ARCADIA-Studio/.local/toolchain/cargo/config.toml",
|
||||||
|
"present": false
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
+586
File diff suppressed because one or more lines are too long
+3005
File diff suppressed because it is too large
Load Diff
+3005
File diff suppressed because it is too large
Load Diff
+3005
File diff suppressed because it is too large
Load Diff
+3005
File diff suppressed because it is too large
Load Diff
+3005
File diff suppressed because it is too large
Load Diff
+3005
File diff suppressed because it is too large
Load Diff
+3005
File diff suppressed because it is too large
Load Diff
+3005
File diff suppressed because it is too large
Load Diff
+3005
File diff suppressed because it is too large
Load Diff
+3005
File diff suppressed because it is too large
Load Diff
+3005
File diff suppressed because it is too large
Load Diff
+1146
File diff suppressed because it is too large
Load Diff
+11
@@ -0,0 +1,11 @@
|
|||||||
|
{
|
||||||
|
"startedUtc": "2026-09-13T05:08:57.8644238Z",
|
||||||
|
"completedUtc": "2026-09-13T05:09:02.2079527Z",
|
||||||
|
"command": "cargo clean -p oa-desktop --target-dir <verified root target>",
|
||||||
|
"target": "C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\target",
|
||||||
|
"base": "37be41092beb1c940f345072df1e017ce45fe2fc",
|
||||||
|
"desktopPackageArtifactsCleared": true,
|
||||||
|
"coreAndServerOutputsRetained": true,
|
||||||
|
"dependenciesRetained": true,
|
||||||
|
"cargoExitCode": 0
|
||||||
|
}
|
||||||
+30
@@ -0,0 +1,30 @@
|
|||||||
|
{
|
||||||
|
"status": "Synthetic log parser only; no Cargo or product tests",
|
||||||
|
"cases": [
|
||||||
|
{
|
||||||
|
"case": "focused87",
|
||||||
|
"expected": true,
|
||||||
|
"actual": true
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"case": "server-two-binaries",
|
||||||
|
"expected": true,
|
||||||
|
"actual": true
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"case": "server-duplicate-required",
|
||||||
|
"expected": false,
|
||||||
|
"actual": false
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"case": "server-wrong-summary",
|
||||||
|
"expected": false,
|
||||||
|
"actual": false
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"case": "server-missing-required",
|
||||||
|
"expected": false,
|
||||||
|
"actual": false
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
+28
@@ -0,0 +1,28 @@
|
|||||||
|
{
|
||||||
|
"base": "37be41092beb1c940f345072df1e017ce45fe2fc",
|
||||||
|
"previous_base": "68a81c3f50d846e34cae96090979543878514c1e",
|
||||||
|
"previous_gate": "C:/Users/User/Documents/Git/ARCADIA-Studio/.local/scenario-renderer-gates-20260913/",
|
||||||
|
"status": "Prepared; no Cargo, toolchain command, cleanup or GUI run by preparer",
|
||||||
|
"source_count": 591,
|
||||||
|
"focused_count": 87,
|
||||||
|
"groups": [
|
||||||
|
12,
|
||||||
|
53,
|
||||||
|
22
|
||||||
|
],
|
||||||
|
"source_delta": [
|
||||||
|
"crates/oa-desktop/src/behavior/scenario_layout.rs",
|
||||||
|
"crates/oa-desktop/src/behavior/scenario_layout/tests.rs"
|
||||||
|
],
|
||||||
|
"capture_before_verified_against_independent_node_hashes": true,
|
||||||
|
"stages": [
|
||||||
|
"list",
|
||||||
|
"focused",
|
||||||
|
"all",
|
||||||
|
"server",
|
||||||
|
"clippy",
|
||||||
|
"build"
|
||||||
|
],
|
||||||
|
"clearance": "Parent clears only oa-desktop package outputs at current pin; core/server unchanged; dependencies retained",
|
||||||
|
"expected_server_test": "scenario_layout::saved_scenario_positions_roundtrip_through_http_without_partial_or_noop_writes"
|
||||||
|
}
|
||||||
+70
@@ -0,0 +1,70 @@
|
|||||||
|
{
|
||||||
|
"base": "37be41092beb1c940f345072df1e017ce45fe2fc",
|
||||||
|
"files": [
|
||||||
|
{
|
||||||
|
"path": "run.ps1",
|
||||||
|
"bytes": 10964,
|
||||||
|
"sha256": "177f9366c09110feaa1d8c59401fb184776b39820018baa16d0b2561f0cc7748"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"path": "capture.ps1",
|
||||||
|
"bytes": 4076,
|
||||||
|
"sha256": "351820236408a6aea6336771372dd438cc0b3807547697c8d0d9f442b91b9008"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"path": "expected-tests.json",
|
||||||
|
"bytes": 22157,
|
||||||
|
"sha256": "4e69f32fec2e7f5445b09bb7d5345bc89f1f19e14fa151807f656f6ab91c15b5"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"path": "expected-inputs.json",
|
||||||
|
"bytes": 110821,
|
||||||
|
"sha256": "f7805a5b2db2d6cc67526136aca03d2f5cd044f3fe91ea593a18d3bc23381af4"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"path": "enumeration.json",
|
||||||
|
"bytes": 72223,
|
||||||
|
"sha256": "0095fff574a18f9c9c4a86299177d50a2d5dd4f7a42d7d6072fd684d28081561"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"path": "external-inputs.json",
|
||||||
|
"bytes": 1442,
|
||||||
|
"sha256": "2e635ae8b856d4d31d34da1b0ef03dd17f34633dd78a974e5beae9e8f929a0ee"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"path": "inputs-complete-before.json",
|
||||||
|
"bytes": 115215,
|
||||||
|
"sha256": "ac2cfde68c6a8046fdfd5502aa35b4470dba9a9758621a115bac14c5845708e3"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"path": "enumerate-inputs.ps1",
|
||||||
|
"bytes": 1684,
|
||||||
|
"sha256": "165de82ca211dfae4b461393689411753e591aef966fe3cbfa6fdbea97624037"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"path": "validate-scripts.ps1",
|
||||||
|
"bytes": 402,
|
||||||
|
"sha256": "80850861d612f3341c599fdbd7db2cf7a1c812661249980a734ef27760bcc718"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"path": "verify-parser.ps1",
|
||||||
|
"bytes": 2575,
|
||||||
|
"sha256": "75bc32118143580a7ca9fc5d37e8e45045aac6bfb1ee54bf5eff7c83ab679d80"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"path": "parser-verification.json",
|
||||||
|
"bytes": 600,
|
||||||
|
"sha256": "23add7ef3de163ede44965bfb86461c4adae4dac2bc4165c69e05c12e189a099"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"path": "README.md",
|
||||||
|
"bytes": 4565,
|
||||||
|
"sha256": "52856cd3e4b2914b36cd4b4fc38337a7c19ecac7c2cd4980ba84e867b3438cb0"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"path": "preparation.json",
|
||||||
|
"bytes": 957,
|
||||||
|
"sha256": "ff8c154dccd9e82e36e982d40b98862dedd66e01b00e4c64b7d40d75d4c8a5f4"
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
@@ -0,0 +1,112 @@
|
|||||||
|
#Requires -Version 7.0
|
||||||
|
param([Parameter(Mandatory=$true)][ValidateSet('list','focused','all','server','clippy','build')][string]$Stage)
|
||||||
|
Set-StrictMode -Version Latest
|
||||||
|
$ErrorActionPreference='Stop'
|
||||||
|
$PSNativeCommandUseErrorActionPreference=$false
|
||||||
|
$taskWorkspace='C:\Users\User\Documents\Git\ARCADIA-Studio\.local\scenario-renderer-bridge-ytr83r-20260913'
|
||||||
|
$taskTarget='C:\Users\User\Documents\Git\ARCADIA-Studio\target'
|
||||||
|
$taskPin='37be41092beb1c940f345072df1e017ce45fe2fc'
|
||||||
|
$toolchainEnv='C:\Users\User\Documents\Git\ARCADIA-Studio\.local\toolchain\env.ps1'
|
||||||
|
function Hash-Input([string]$Path){(Get-FileHash -LiteralPath $Path -Algorithm SHA256).Hash.ToLowerInvariant()}
|
||||||
|
function Same-Names($Left,$Right){$a=@($Left|Sort-Object);$b=@($Right|Sort-Object);return $a.Count -eq $b.Count -and @(Compare-Object $a $b).Count -eq 0}
|
||||||
|
$taskLog=Join-Path $PSScriptRoot ($Stage+'.log')
|
||||||
|
$taskReceipt=Join-Path $PSScriptRoot ($Stage+'-receipt.json')
|
||||||
|
if((Test-Path -LiteralPath $taskLog)-or(Test-Path -LiteralPath $taskReceipt)){throw 'Do not replace evidence; prepare a new gate directory for retries.'}
|
||||||
|
$clearancePath=Join-Path $PSScriptRoot 'package-clearance.json'
|
||||||
|
$clearance=Get-Content -Raw -LiteralPath $clearancePath|ConvertFrom-Json
|
||||||
|
if($clearance.base -cne $taskPin -or $clearance.cargoExitCode -ne 0 -or [IO.Path]::GetFullPath($clearance.target) -ine $taskTarget -or -not $clearance.dependenciesRetained){throw 'Parent-owned successful current-pin package clearance is required.'}
|
||||||
|
$selection=Get-Content -Raw -LiteralPath (Join-Path $PSScriptRoot 'expected-tests.json')|ConvertFrom-Json
|
||||||
|
$expected=@($selection.tests|Sort-Object -Unique)
|
||||||
|
if($selection.source_commit -cne $taskPin -or $selection.expected_count -ne 87 -or $expected.Count -ne 87){throw 'Wrong exact focused membership.'}
|
||||||
|
$commonFiles=@('run.ps1','capture.ps1','expected-tests.json','expected-inputs.json','enumeration.json','external-inputs.json','inputs-complete-before.json','package-clearance.json')
|
||||||
|
$boundScripts=@{}
|
||||||
|
foreach($file in $commonFiles){$boundScripts[$file]=Hash-Input (Join-Path $PSScriptRoot $file)}
|
||||||
|
$previous=@{focused='list';all='focused';server='all';clippy='server';build='clippy'}
|
||||||
|
$priorBinding=$null
|
||||||
|
if($previous.ContainsKey($Stage)){
|
||||||
|
$priorName=$previous[$Stage]
|
||||||
|
$priorPath=Join-Path $PSScriptRoot ($priorName+'-receipt.json')
|
||||||
|
$prior=Get-Content -Raw -LiteralPath $priorPath|ConvertFrom-Json
|
||||||
|
if($prior.stage -cne $priorName -or $prior.base -cne $taskPin -or $prior.workspace -ine $taskWorkspace -or $prior.target -ine $taskTarget -or $prior.cargoExitCode -ne 0 -or -not $prior.selectionValid -or -not $prior.inputsUnchanged){throw 'Exact prior sequential stage did not pass.'}
|
||||||
|
foreach($file in $commonFiles){if($prior.boundScriptAndInputHashes.$file -cne $boundScripts[$file]){throw ('Prior recipe/input binding changed: '+$file)}}
|
||||||
|
if((Hash-Input (Join-Path $PSScriptRoot ($priorName+'.log'))) -cne $prior.rawLogSha256){throw 'Prior raw output changed.'}
|
||||||
|
$priorBinding=[ordered]@{stage=$priorName;receiptSha256=(Hash-Input $priorPath);rawLogSha256=$prior.rawLogSha256}
|
||||||
|
}
|
||||||
|
Push-Location -LiteralPath $taskWorkspace
|
||||||
|
try {
|
||||||
|
& (Join-Path $PSScriptRoot 'capture.ps1') -Stage ($Stage+'-before')
|
||||||
|
. $toolchainEnv
|
||||||
|
$env:CARGO_TARGET_DIR=$taskTarget
|
||||||
|
$env:CARGO_TERM_COLOR='never'
|
||||||
|
$PSNativeCommandUseErrorActionPreference=$false
|
||||||
|
$versionPath=Join-Path $PSScriptRoot 'toolchain-versions.json'
|
||||||
|
if($Stage -eq 'list'){
|
||||||
|
if(Test-Path -LiteralPath $versionPath){throw 'Preserve prior toolchain version evidence.'}
|
||||||
|
$cargoVersion=@(& cargo --version --verbose 2>&1);$cargoVersionExit=$LASTEXITCODE
|
||||||
|
$rustcVersion=@(& rustc --version --verbose 2>&1);$rustcVersionExit=$LASTEXITCODE
|
||||||
|
$clippyVersion=@(& cargo clippy --version 2>&1);$clippyVersionExit=$LASTEXITCODE
|
||||||
|
$clangVersion=@(& clang --version 2>&1);$clangVersionExit=$LASTEXITCODE
|
||||||
|
[ordered]@{base=$taskPin;capturedUtc=[DateTime]::UtcNow.ToString('o');externalEnvironmentPath=$toolchainEnv;externalEnvironmentSha256=(Hash-Input $toolchainEnv);cargo=@($cargoVersion|ForEach-Object {$_.ToString()});cargoExitCode=$cargoVersionExit;rustc=@($rustcVersion|ForEach-Object {$_.ToString()});rustcExitCode=$rustcVersionExit;clippy=@($clippyVersion|ForEach-Object {$_.ToString()});clippyExitCode=$clippyVersionExit;clang=@($clangVersion|ForEach-Object {$_.ToString()});clangExitCode=$clangVersionExit;cargoPath=(Get-Command cargo).Source;rustcPath=(Get-Command rustc).Source;clangPath=(Get-Command clang).Source;cargoHome=$env:CARGO_HOME;rustupHome=$env:RUSTUP_HOME;rustupToolchain=$env:RUSTUP_TOOLCHAIN;buildJobs=$env:CARGO_BUILD_JOBS;incremental=$env:CARGO_INCREMENTAL}|ConvertTo-Json -Depth 8|Set-Content -LiteralPath $versionPath -Encoding utf8
|
||||||
|
if($cargoVersionExit -ne 0 -or $rustcVersionExit -ne 0 -or $clippyVersionExit -ne 0 -or $clangVersionExit -ne 0){throw 'Toolchain version query failed.'}
|
||||||
|
}
|
||||||
|
$versionsHash=Hash-Input $versionPath
|
||||||
|
if($priorBinding -and $prior.toolchainVersionsSha256 -cne $versionsHash){throw 'Toolchain version receipt changed.'}
|
||||||
|
$taskArgs=switch($Stage){
|
||||||
|
'list' {@('test','-p','oa-desktop','--all-targets','--locked','--offline','--','--list')}
|
||||||
|
'focused' {@('test','-p','oa-desktop','--bin','arcadia-studio','--locked','--offline','--','--exact')+$expected+@('--test-threads=1')}
|
||||||
|
'all' {@('test','-p','oa-desktop','--all-targets','--locked','--offline','--','--test-threads=1')}
|
||||||
|
'server' {@('test','-p','oa-server','--all-targets','--locked','--offline','--','--test-threads=1')}
|
||||||
|
'clippy' {@('clippy','-p','oa-desktop','-p','oa-server','--all-targets','--locked','--offline','--','-D','warnings')}
|
||||||
|
'build' {@('build','-p','oa-desktop','--bin','arcadia-studio','--locked','--offline')}
|
||||||
|
}
|
||||||
|
$taskStart=[DateTime]::UtcNow.ToString('o')
|
||||||
|
& cargo @taskArgs 2>&1|Tee-Object -FilePath $taskLog
|
||||||
|
$taskExit=$LASTEXITCODE
|
||||||
|
$taskEnd=[DateTime]::UtcNow.ToString('o')
|
||||||
|
$taskText=Get-Content -Raw -LiteralPath $taskLog
|
||||||
|
$taskValid=$true;$taskFailure=$null
|
||||||
|
$listed=@();$executed=@();$matched=@();$ignored=@();$summaries=@();$serverRequiredMatches=@()
|
||||||
|
if($Stage -eq 'list'){
|
||||||
|
$listed=@([regex]::Matches($taskText,'(?m)^([^\r\n]+): test\r?$')|ForEach-Object {$_.Groups[1].Value})
|
||||||
|
$matched=@($listed|Where-Object {$_ -cin $expected}|Sort-Object)
|
||||||
|
$taskValid=$listed.Count -ge 87 -and @($listed|Sort-Object -Unique).Count -eq $listed.Count -and (Same-Names $expected $matched)
|
||||||
|
}
|
||||||
|
if($Stage -in @('focused','all','server')){
|
||||||
|
$executed=@([regex]::Matches($taskText,'(?m)^test ([^\r\n]+?) \.\.\. (ok|FAILED|ignored)[^\r\n]*\r?$')|ForEach-Object {[ordered]@{name=$_.Groups[1].Value;result=$_.Groups[2].Value}})
|
||||||
|
$summaries=@([regex]::Matches($taskText,'test result: (ok|FAILED)\. (\d+) passed; (\d+) failed; (\d+) ignored; (\d+) measured; (\d+) filtered out;')|ForEach-Object {[ordered]@{status=$_.Groups[1].Value;passed=[int]$_.Groups[2].Value;failed=[int]$_.Groups[3].Value;ignored=[int]$_.Groups[4].Value;measured=[int]$_.Groups[5].Value;filtered=[int]$_.Groups[6].Value}})
|
||||||
|
$ignored=@($executed|Where-Object {$_.result -eq 'ignored'}|ForEach-Object {$_.name})
|
||||||
|
$passedCount=@($executed|Where-Object {$_.result -eq 'ok'}).Count
|
||||||
|
$failedCount=@($executed|Where-Object {$_.result -eq 'FAILED'}).Count
|
||||||
|
$taskValid=$summaries.Count -gt 0 -and $failedCount -eq 0 -and @($summaries|Where-Object {$_.status -ne 'ok' -or $_.failed -ne 0 -or $_.measured -ne 0}).Count -eq 0 -and ($summaries|ForEach-Object {$_. passed}|Measure-Object -Sum).Sum -eq $passedCount -and ($summaries|ForEach-Object {$_. ignored}|Measure-Object -Sum).Sum -eq $ignored.Count
|
||||||
|
if($Stage -in @('focused','all')){
|
||||||
|
$matched=@($executed|Where-Object {$_.name -cin $expected -and $_.result -eq 'ok'}|ForEach-Object {$_.name}|Sort-Object)
|
||||||
|
$taskValid=$taskValid -and (Same-Names $expected $matched)
|
||||||
|
}
|
||||||
|
if($Stage -eq 'focused'){$taskValid=$taskValid -and $executed.Count -eq 87 -and $passedCount -eq 87 -and $ignored.Count -eq 0}
|
||||||
|
if($Stage -eq 'all'){
|
||||||
|
$listPath=Join-Path $PSScriptRoot 'list-receipt.json'
|
||||||
|
$listHash=Hash-Input $listPath
|
||||||
|
$listReceipt=Get-Content -Raw -LiteralPath $listPath|ConvertFrom-Json
|
||||||
|
if($prior.priorStage.stage -cne 'list' -or $prior.priorStage.receiptSha256 -cne $listHash){throw 'Desktop listing changed after focused execution.'}
|
||||||
|
$boundScripts['list-receipt.json']=$listHash
|
||||||
|
$taskValid=$taskValid -and (Same-Names @($listReceipt.listedTests) @($executed|ForEach-Object {$_.name})) -and ($summaries|ForEach-Object {$_. filtered}|Measure-Object -Sum).Sum -eq 0
|
||||||
|
}
|
||||||
|
if($Stage -eq 'server'){
|
||||||
|
$serverRequiredMatches=@($executed|Where-Object {$_.name -ceq $selection.server_required_test})
|
||||||
|
$taskValid=$taskValid -and $executed.Count -gt 0 -and $serverRequiredMatches.Count -eq 1 -and $serverRequiredMatches[0].result -eq 'ok' -and ($summaries|ForEach-Object {$_. filtered}|Measure-Object -Sum).Sum -eq 0
|
||||||
|
}
|
||||||
|
}
|
||||||
|
$inputsUnchanged=$false
|
||||||
|
try {
|
||||||
|
& (Join-Path $PSScriptRoot 'capture.ps1') -Stage ($Stage+'-after')
|
||||||
|
foreach($file in $boundScripts.Keys){if((Hash-Input (Join-Path $PSScriptRoot $file)) -cne $boundScripts[$file]){throw ('Gate recipe/input changed: '+$file)}}
|
||||||
|
if((Hash-Input $versionPath) -cne $versionsHash){throw 'Toolchain version receipt changed.'}
|
||||||
|
if($priorBinding -and (Hash-Input (Join-Path $PSScriptRoot ($priorBinding.stage+'-receipt.json'))) -cne $priorBinding.receiptSha256){throw 'Prior receipt changed during gate.'}
|
||||||
|
$inputsUnchanged=$true
|
||||||
|
}catch{$taskFailure=$_.Exception.Message}
|
||||||
|
$binary=$null
|
||||||
|
if($Stage -eq 'build' -and $taskExit -eq 0){$path=Join-Path $taskTarget 'debug/arcadia-studio.exe';$item=Get-Item -LiteralPath $path;$binary=[ordered]@{path=$item.FullName;bytes=$item.Length;sha256=(Hash-Input $path);mtimeUtc=$item.LastWriteTimeUtc.ToString('o')}}
|
||||||
|
[ordered]@{stage=$Stage;command=('cargo '+($taskArgs -join ' '));arguments=$taskArgs;base=$taskPin;workspace=$taskWorkspace;target=$taskTarget;startUtc=$taskStart;endUtc=$taskEnd;cargoExitCode=$taskExit;selectionValid=$taskValid;inputsUnchanged=$inputsUnchanged;postflightFailure=$taskFailure;boundScriptAndInputHashes=$boundScripts;priorStage=$priorBinding;externalEnvironmentPath=$toolchainEnv;externalEnvironmentSha256=(Hash-Input $toolchainEnv);toolchainVersionsSha256=$versionsHash;rawLogSha256=(Hash-Input $taskLog);beforeCaptureSha256=(Hash-Input (Join-Path $PSScriptRoot ('inputs-complete-'+$Stage+'-before.json')));afterCaptureSha256=if(Test-Path -LiteralPath (Join-Path $PSScriptRoot ('inputs-complete-'+$Stage+'-after.json'))){Hash-Input (Join-Path $PSScriptRoot ('inputs-complete-'+$Stage+'-after.json'))}else{$null};listedTests=$listed;executedTests=$executed;testResultSummaries=$summaries;matchedRegressionTests=$matched;ignoredTests=$ignored;serverRequiredMatches=$serverRequiredMatches;binary=$binary}|ConvertTo-Json -Depth 14|Set-Content -LiteralPath $taskReceipt -Encoding utf8
|
||||||
|
if($taskExit -ne 0){exit $taskExit}
|
||||||
|
if(-not $taskValid -or -not $inputsUnchanged){throw 'Gate membership or input binding failed; inspect receipt and raw output.'}
|
||||||
|
} finally {Pop-Location}
|
||||||
+318
@@ -0,0 +1,318 @@
|
|||||||
|
{
|
||||||
|
"stage": "server",
|
||||||
|
"command": "cargo test -p oa-server --all-targets --locked --offline -- --test-threads=1",
|
||||||
|
"arguments": [
|
||||||
|
"test",
|
||||||
|
"-p",
|
||||||
|
"oa-server",
|
||||||
|
"--all-targets",
|
||||||
|
"--locked",
|
||||||
|
"--offline",
|
||||||
|
"--",
|
||||||
|
"--test-threads=1"
|
||||||
|
],
|
||||||
|
"base": "37be41092beb1c940f345072df1e017ce45fe2fc",
|
||||||
|
"workspace": "C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\scenario-renderer-bridge-ytr83r-20260913",
|
||||||
|
"target": "C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\target",
|
||||||
|
"startUtc": "2026-09-13T05:51:48.4110628Z",
|
||||||
|
"endUtc": "2026-09-13T05:59:30.7749324Z",
|
||||||
|
"cargoExitCode": 0,
|
||||||
|
"selectionValid": true,
|
||||||
|
"inputsUnchanged": true,
|
||||||
|
"postflightFailure": null,
|
||||||
|
"boundScriptAndInputHashes": {
|
||||||
|
"expected-inputs.json": "f7805a5b2db2d6cc67526136aca03d2f5cd044f3fe91ea593a18d3bc23381af4",
|
||||||
|
"inputs-complete-before.json": "ac2cfde68c6a8046fdfd5502aa35b4470dba9a9758621a115bac14c5845708e3",
|
||||||
|
"run.ps1": "177f9366c09110feaa1d8c59401fb184776b39820018baa16d0b2561f0cc7748",
|
||||||
|
"expected-tests.json": "4e69f32fec2e7f5445b09bb7d5345bc89f1f19e14fa151807f656f6ab91c15b5",
|
||||||
|
"package-clearance.json": "cb9fca9a94e47a638f8dc98dbaa2e0bf37dcef4e3f81d382da270d758d6deb99",
|
||||||
|
"external-inputs.json": "2e635ae8b856d4d31d34da1b0ef03dd17f34633dd78a974e5beae9e8f929a0ee",
|
||||||
|
"enumeration.json": "0095fff574a18f9c9c4a86299177d50a2d5dd4f7a42d7d6072fd684d28081561",
|
||||||
|
"capture.ps1": "351820236408a6aea6336771372dd438cc0b3807547697c8d0d9f442b91b9008"
|
||||||
|
},
|
||||||
|
"priorStage": {
|
||||||
|
"stage": "all",
|
||||||
|
"receiptSha256": "c8409f015d28191cb3479f3d01a5883362b9b2d5e2ef6691bbe560faf1ddccfd",
|
||||||
|
"rawLogSha256": "908e77a02f3cad6435ed3db550ca2d1a56b4ba8f5026633560b9d5fea0a15654"
|
||||||
|
},
|
||||||
|
"externalEnvironmentPath": "C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\env.ps1",
|
||||||
|
"externalEnvironmentSha256": "be2226f08764bb6961b4be8513ce55bab076890cddd2fef0f54a4031f94a82d4",
|
||||||
|
"toolchainVersionsSha256": "99e96ab20fab3bc223b27ff35fc8b2833979bc285ebe5c7f98dcd22453641227",
|
||||||
|
"rawLogSha256": "7c7d847ac942b23a33081fdc3eb9ec53a2c054cd422810e30528b5930c574d71",
|
||||||
|
"beforeCaptureSha256": "9ef653b2d16f0976348bd5c45a927e95a03ec1a7b1e9fa20a68d8999ffc5dbc9",
|
||||||
|
"afterCaptureSha256": "1a4e0208a185b3d625a344896a33ccdc5dc9b66fef63d6f1e33095d74f965e36",
|
||||||
|
"listedTests": [],
|
||||||
|
"executedTests": [
|
||||||
|
{
|
||||||
|
"name": "preparation_http_tests::prepared_source_http_rechecks_revision_without_holding_catalog",
|
||||||
|
"result": "ok"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "store::preparation_gate::preparation_gate_drop_cancels_without_installing_candidate",
|
||||||
|
"result": "ok"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "store::tests::prepared_candidates_recheck_revision_at_commit_and_failed_loser_is_not_installed",
|
||||||
|
"result": "ok"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "store::tests::source_bytes_are_charged_on_legacy_open_update_and_delete",
|
||||||
|
"result": "ok"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "auth_origins_media_and_body_limits_are_enforced_over_http",
|
||||||
|
"result": "ok"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "batches_dry_run_noop_and_source_share_the_core",
|
||||||
|
"result": "ok"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "chunked_upload_limits_and_loopback_host_check_use_the_real_transport",
|
||||||
|
"result": "ok"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "communication_limits::ordinary_transition_endpoint_decision_limit_rejects_201_without_mutation",
|
||||||
|
"result": "ok"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "communication_limits::ordinary_transition_operation_omission_limit_rejects_201_without_mutation",
|
||||||
|
"result": "ok"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "communication_limits::semantic_transition_endpoint_decision_limit_rejects_201_without_mutation",
|
||||||
|
"result": "ok"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "communication_limits::semantic_transition_operation_omission_limit_rejects_201_without_mutation",
|
||||||
|
"result": "ok"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "conditional_writes_are_atomic_and_survive_restart",
|
||||||
|
"result": "ok"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "current_migration_reports_and_invalid_typed_transaction_preserve_http_state",
|
||||||
|
"result": "ok"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "data_contracts::authored_schema3_bundle_upgrade_reports_data_defaults_and_preserves_files",
|
||||||
|
"result": "ok"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "data_contracts::existing_schema3_coupled_envelope_upgrades_in_memory_until_explicit_save",
|
||||||
|
"result": "ok"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "data_contracts::published_data_contract_queries_atomic_edits_identity_and_restart",
|
||||||
|
"result": "ok"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "data_contracts::qualified_call_reply_values_reject_invalid_edits_and_survive_identity_source_and_restart",
|
||||||
|
"result": "ok"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "edge_route_transactions_source_and_json_share_defaults_etags_and_atomic_rejection",
|
||||||
|
"result": "ok"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "failed_atomic_replacement_preserves_the_accepted_model",
|
||||||
|
"result": "ok"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "fixed_store_capacity_is_enforced_on_http_and_restart",
|
||||||
|
"result": "ok"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "graph_filters_pagination_and_bounded_neighborhoods",
|
||||||
|
"result": "ok"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "invalid_candidates_and_bad_headers_leave_snapshot_unchanged",
|
||||||
|
"result": "ok"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "legacy_json_import_and_model_reidentification_keep_the_service_address",
|
||||||
|
"result": "ok"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "legacy_v2_scenarios_and_typed_message_edits_use_the_same_http_model",
|
||||||
|
"result": "ok"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "mission_and_contextual_chain_records_round_trip_and_edit_through_http",
|
||||||
|
"result": "ok"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "non_loopback_requires_a_token",
|
||||||
|
"result": "ok"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "oversized_source_and_json_are_rejected_without_stalling_the_catalog",
|
||||||
|
"result": "ok"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "port_anchors::port_anchor_http_commands_and_source_edits_preserve_per_view_state_after_restart",
|
||||||
|
"result": "ok"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "port_anchors::port_anchor_http_rejects_invalid_records_and_stale_owners_atomically",
|
||||||
|
"result": "ok"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "port_anchors::port_anchor_served_openapi_matches_serialized_records_and_commands",
|
||||||
|
"result": "ok"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "reopening_v2_envelope_reports_migration_without_saving_or_advancing_revision",
|
||||||
|
"result": "ok"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "route_openapi_describes_the_serde_command_shapes_and_nested_defaults",
|
||||||
|
"result": "ok"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "scenario_layout::saved_scenario_positions_roundtrip_through_http_without_partial_or_noop_writes",
|
||||||
|
"result": "ok"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "semantic_transitions::semantic_candidate_constructor_reverse_direction_and_explicit_trace_selection",
|
||||||
|
"result": "ok"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "semantic_transitions::semantic_cleanup_impacts_require_exact_acceptance_before_atomic_apply",
|
||||||
|
"result": "ok"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "semantic_transitions::semantic_new_mapping_keeps_preview_generated_identifiers",
|
||||||
|
"result": "ok"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "semantic_transitions::semantic_partial_review_query_source_and_restart_share_one_revision",
|
||||||
|
"result": "ok"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "semantic_transitions::semantic_resets_and_invalid_candidates_preserve_deliberate_review_boundaries",
|
||||||
|
"result": "ok"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "semantic_transitions::semantic_strict_rejection_stale_plans_and_source_only_changes_never_write",
|
||||||
|
"result": "ok"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "source6_views::source6_http_explicit_communication_ports_preview_apply_and_restart_preserve_decisions",
|
||||||
|
"result": "ok"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "source6_views::source6_http_views_categories_and_means_preserve_source_and_reject_invalid_batch_after_restart",
|
||||||
|
"result": "ok"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "source7_contracts::source7_http_instance_and_operation_edits_preserve_identity_source_and_restart",
|
||||||
|
"result": "ok"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "source_projects::source_projects_command_dry_runs_and_identity_swaps_preserve_lexical_ownership",
|
||||||
|
"result": "ok"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "source_projects::source_projects_concurrent_comment_and_semantic_writes_share_one_revision",
|
||||||
|
"result": "ok"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "source_projects::source_projects_equal_models_still_apply_changed_identity_provenance",
|
||||||
|
"result": "ok"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "source_projects::source_projects_failed_atomic_comment_write_preserves_both_representations",
|
||||||
|
"result": "ok"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "source_projects::source_projects_invalid_dependencies_and_duplicate_paths_never_change_the_head",
|
||||||
|
"result": "ok"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "source_projects::source_projects_model_interchange_and_transitions_keep_authored_modules",
|
||||||
|
"result": "ok"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "source_projects::source_projects_openapi_describes_the_coupled_envelope_and_source_diagnostics",
|
||||||
|
"result": "ok"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "source_projects::source_projects_preserve_exact_files_comments_and_comment_only_revisions",
|
||||||
|
"result": "ok"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "source_projects::source_projects_stabilize_once_and_enforce_size_after_insertions",
|
||||||
|
"result": "ok"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "source_projects::source_projects_upgrade_old_envelopes_without_writes_and_reject_inconsistent_pairs",
|
||||||
|
"result": "ok"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "storage_rejects_second_owners_corruption_and_identity_mismatch",
|
||||||
|
"result": "ok"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "transition_preview_apply_and_artifact_links_preserve_revision_boundaries",
|
||||||
|
"result": "ok"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "typed_state_events_batch_reidentification_and_deletion_use_real_http",
|
||||||
|
"result": "ok"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "served_state_projection_schema_preserves_closed_string_and_payload_variants",
|
||||||
|
"result": "ok"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "state_view_source_json_transactions_and_restart_share_the_published_contract",
|
||||||
|
"result": "ok"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"testResultSummaries": [
|
||||||
|
{
|
||||||
|
"status": "ok",
|
||||||
|
"passed": 4,
|
||||||
|
"failed": 0,
|
||||||
|
"ignored": 0,
|
||||||
|
"measured": 0,
|
||||||
|
"filtered": 0
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"status": "ok",
|
||||||
|
"passed": 0,
|
||||||
|
"failed": 0,
|
||||||
|
"ignored": 0,
|
||||||
|
"measured": 0,
|
||||||
|
"filtered": 0
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"status": "ok",
|
||||||
|
"passed": 51,
|
||||||
|
"failed": 0,
|
||||||
|
"ignored": 0,
|
||||||
|
"measured": 0,
|
||||||
|
"filtered": 0
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"status": "ok",
|
||||||
|
"passed": 2,
|
||||||
|
"failed": 0,
|
||||||
|
"ignored": 0,
|
||||||
|
"measured": 0,
|
||||||
|
"filtered": 0
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"matchedRegressionTests": [],
|
||||||
|
"ignoredTests": [],
|
||||||
|
"serverRequiredMatches": [
|
||||||
|
{
|
||||||
|
"name": "scenario_layout::saved_scenario_positions_roundtrip_through_http_without_partial_or_noop_writes",
|
||||||
|
"result": "ok"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"binary": null
|
||||||
|
}
|
||||||
+47
@@ -0,0 +1,47 @@
|
|||||||
|
{
|
||||||
|
"base": "37be41092beb1c940f345072df1e017ce45fe2fc",
|
||||||
|
"capturedUtc": "2026-09-13T05:11:53.7538518Z",
|
||||||
|
"externalEnvironmentPath": "C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\env.ps1",
|
||||||
|
"externalEnvironmentSha256": "be2226f08764bb6961b4be8513ce55bab076890cddd2fef0f54a4031f94a82d4",
|
||||||
|
"cargo": [
|
||||||
|
"cargo 1.98.1 (797e8a9bc 2026-08-05)",
|
||||||
|
"release: 1.98.1",
|
||||||
|
"commit-hash: 797e8a9bca276c1c9f9f738d2a20f484fa4eea9d",
|
||||||
|
"commit-date: 2026-08-05",
|
||||||
|
"host: x86_64-pc-windows-gnullvm",
|
||||||
|
"libgit2: 1.9.4 (sys:0.21.0 vendored)",
|
||||||
|
"libcurl: 8.21.0-DEV (sys:0.4.90+curl-8.21.0 vendored ssl:Schannel)",
|
||||||
|
"os: Windows 10.0.26200 (Windows 11 Professional) [64-bit]"
|
||||||
|
],
|
||||||
|
"cargoExitCode": 0,
|
||||||
|
"rustc": [
|
||||||
|
"rustc 1.98.1 (48a229cea 2026-09-01)",
|
||||||
|
"binary: rustc",
|
||||||
|
"commit-hash: 48a229ceaefd4985c50990b14116b6d856af0985",
|
||||||
|
"commit-date: 2026-09-01",
|
||||||
|
"host: x86_64-pc-windows-gnullvm",
|
||||||
|
"release: 1.98.1",
|
||||||
|
"LLVM version: 22.1.8"
|
||||||
|
],
|
||||||
|
"rustcExitCode": 0,
|
||||||
|
"clippy": [
|
||||||
|
"clippy 0.1.98 (48a229ceae 2026-09-01)"
|
||||||
|
],
|
||||||
|
"clippyExitCode": 0,
|
||||||
|
"clang": [
|
||||||
|
"clang version 23.1.1 (https://github.com/llvm/llvm-project.git 6dfe1677ab8dffbc6ec13d53a1e0215d75147689)",
|
||||||
|
"Target: x86_64-w64-windows-gnu",
|
||||||
|
"Thread model: posix",
|
||||||
|
"InstalledDir: C:/Users/User/Documents/Git/ARCADIA-Studio/.local/toolchain/llvm-mingw-20260908-ucrt-x86_64/bin",
|
||||||
|
"Configuration file: C:/Users/User/Documents/Git/ARCADIA-Studio/.local/toolchain/llvm-mingw-20260908-ucrt-x86_64/bin/x86_64-w64-windows-gnu.cfg"
|
||||||
|
],
|
||||||
|
"clangExitCode": 0,
|
||||||
|
"cargoPath": "C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\bin\\cargo.exe",
|
||||||
|
"rustcPath": "C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo\\bin\\rustc.exe",
|
||||||
|
"clangPath": "C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\llvm-mingw-20260908-ucrt-x86_64\\bin\\clang.exe",
|
||||||
|
"cargoHome": "C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\cargo",
|
||||||
|
"rustupHome": "C:\\Users\\User\\Documents\\Git\\ARCADIA-Studio\\.local\\toolchain\\rustup",
|
||||||
|
"rustupToolchain": "stable-x86_64-pc-windows-gnullvm",
|
||||||
|
"buildJobs": "1",
|
||||||
|
"incremental": "0"
|
||||||
|
}
|
||||||
+8
@@ -0,0 +1,8 @@
|
|||||||
|
#Requires -Version 7.0
|
||||||
|
$ErrorActionPreference='Stop'
|
||||||
|
foreach($file in @('enumerate-inputs.ps1','capture.ps1','run.ps1')){
|
||||||
|
$tokens=$null;$errors=$null
|
||||||
|
$null=[System.Management.Automation.Language.Parser]::ParseFile((Join-Path $PSScriptRoot $file),[ref]$tokens,[ref]$errors)
|
||||||
|
if($errors.Count){$errors|ForEach-Object {Write-Output $_};throw ('Parse failure: '+$file)}
|
||||||
|
Write-Output ('Parsed '+$file)
|
||||||
|
}
|
||||||
+22
@@ -0,0 +1,22 @@
|
|||||||
|
#Requires -Version 7.0
|
||||||
|
Set-StrictMode -Version Latest
|
||||||
|
$ErrorActionPreference='Stop'
|
||||||
|
$script=Get-Content -Raw -LiteralPath (Join-Path $PSScriptRoot 'run.ps1')
|
||||||
|
$begin=$script.IndexOf(' $taskValid=$true;$taskFailure=$null')
|
||||||
|
$end=$script.IndexOf(' $inputsUnchanged=$false',$begin)
|
||||||
|
if($begin -lt 0 -or $end -lt 0){throw 'Runner parser block not found'}
|
||||||
|
$block=[scriptblock]::Create($script.Substring($begin,$end-$begin))
|
||||||
|
$selection=Get-Content -Raw -LiteralPath (Join-Path $PSScriptRoot 'expected-tests.json')|ConvertFrom-Json
|
||||||
|
$expected=@($selection.tests|Sort-Object -Unique)
|
||||||
|
function Same-Names($Left,$Right){$a=@($Left|Sort-Object);$b=@($Right|Sort-Object);return $a.Count -eq $b.Count -and @(Compare-Object $a $b).Count -eq 0}
|
||||||
|
$required=$selection.server_required_test
|
||||||
|
$cases=@(
|
||||||
|
[pscustomobject]@{name='focused87';stage='focused';valid=$true;text=((@($expected|ForEach-Object {'test '+$_+' ... ok'})+@('test result: ok. 87 passed; 0 failed; 0 ignored; 0 measured; 500 filtered out;')) -join [Environment]::NewLine)},
|
||||||
|
[pscustomobject]@{name='server-two-binaries';stage='server';valid=$true;text=('test '+$required+' ... ok'+[Environment]::NewLine+'test result: ok. 1 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out;'+[Environment]::NewLine+'test another::http ... ok'+[Environment]::NewLine+'test result: ok. 1 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out;')},
|
||||||
|
[pscustomobject]@{name='server-duplicate-required';stage='server';valid=$false;text=('test '+$required+' ... ok'+[Environment]::NewLine+'test '+$required+' ... ok'+[Environment]::NewLine+'test result: ok. 2 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out;')},
|
||||||
|
[pscustomobject]@{name='server-wrong-summary';stage='server';valid=$false;text=('test '+$required+' ... ok'+[Environment]::NewLine+'test result: ok. 2 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out;')},
|
||||||
|
[pscustomobject]@{name='server-missing-required';stage='server';valid=$false;text=('test unrelated ... ok'+[Environment]::NewLine+'test result: ok. 1 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out;')}
|
||||||
|
)
|
||||||
|
$results=@(foreach($case in $cases){$Stage=$case.stage;$taskText=$case.text;. $block;if($taskValid -ne $case.valid){throw ('Unexpected parser decision: '+$case.name)};[ordered]@{case=$case.name;expected=$case.valid;actual=$taskValid}})
|
||||||
|
[ordered]@{status='Synthetic log parser only; no Cargo or product tests';cases=$results}|ConvertTo-Json -Depth 6|Set-Content -LiteralPath (Join-Path $PSScriptRoot 'parser-verification.json') -Encoding utf8
|
||||||
|
Write-Output ('Verified '+$results.Count+' parser cases')
|
||||||
+11
@@ -0,0 +1,11 @@
|
|||||||
|
{
|
||||||
|
"path": "C:/Users/User/Documents/Git/ARCADIA-Studio/target/debug/deps/arcadia_studio-27db9628b266bf39.exe",
|
||||||
|
"bytes": 149178368,
|
||||||
|
"sha256": "395d60301964b1f5eba0e3c7e9df939a51d78b063a4d7f6ab84988a49702fb8a",
|
||||||
|
"lastWriteUtc": "2026-09-13T05:22:25.396Z",
|
||||||
|
"capturedAtUtc": "2026-09-13T06:09:30.467Z",
|
||||||
|
"captureKind": "post-execution",
|
||||||
|
"sourceCommit": "37be41092beb1c940f345072df1e017ce45fe2fc",
|
||||||
|
"binding": "all.log records this exact executable path; hash captured after successful full execution and closed Clippy, before any later cleanup/build reported by parent",
|
||||||
|
"limitations": "No pre-execution hash was recorded in the gate. This post-execution observation does not retroactively prove executable bytes at execution time."
|
||||||
|
}
|
||||||
@@ -42,7 +42,7 @@ No schema extension is required by this resolver proposal. No gesture/navigation
|
|||||||
|
|
||||||
## Source implementation checkpoint
|
## Source implementation checkpoint
|
||||||
|
|
||||||
The subsequent [closed 68a81c3 Windows gate](experiments/scenario-renderer-gates-68a81c3-20260913/README.md) compiled and listed 1,010 tests, then failed focused execution (86 passed, one failed). All 591 inputs remained unchanged; full desktop/server/Clippy/GUI build stages were not run. The archive retains the actual failure and distinguishes the source-derived frame-padding correction 37be410 from execution evidence: that correction is unexecuted at this checkpoint. The paragraphs below describe the earlier source-only checkpoint.
|
The [closed 68a81c3 Windows gate](experiments/scenario-renderer-gates-68a81c3-20260913/README.md) preserves its focused failure (86 passed, one failed). The corrected [37be410 foundation gate](experiments/scenario-renderer-gates-37be410-20260913/README.md) then listed 1,010 tests, passed all 87 focused tests, completed full desktop at 1,007 passed/0 failed/3 ignored and server at 57 passed including the actual Scenario HTTP test, with all 591 captured inputs unchanged. Strict Clippy failed on five collapsible_if findings in scenario_layout.rs; this gate is closed failed and no GUI build ran. The later published workspace integration 46e106c has exact 25-file remote/local source verification only, with no UI compile or runtime acceptance at this checkpoint. A subsequent combined gate must validate the strict correction and UI integration; these foundation results do not transfer strict or GUI acceptance to that source. The paragraphs below retain the earlier source-only checkpoint.
|
||||||
|
|
||||||
Candidate [68a81c3](http://217.177.34.108:3000/sorokin.oleg.edu/ARCADIA-Studio/commit/68a81c3f50d846e34cae96090979543878514c1e) contains the pure resolver and actual Scene adapter with 22 prepared tests. It retains the resolved Scene with explicit representation/owner identity, exact render-lane centers, origin-bearing bounds and latent message addresses. It does not wire saved views into workspace, camera, usage or gestures. The source is published and all 13 changed contribution files match remote blobs and sizes; no combined compile or execution is claimed at this checkpoint.
|
Candidate [68a81c3](http://217.177.34.108:3000/sorokin.oleg.edu/ARCADIA-Studio/commit/68a81c3f50d846e34cae96090979543878514c1e) contains the pure resolver and actual Scene adapter with 22 prepared tests. It retains the resolved Scene with explicit representation/owner identity, exact render-lane centers, origin-bearing bounds and latent message addresses. It does not wire saved views into workspace, camera, usage or gestures. The source is published and all 13 changed contribution files match remote blobs and sizes; no combined compile or execution is claimed at this checkpoint.
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user