Files
ARCADIA-Studio/harness/release-save-diagnostics-validation-20261001.md
T

146 lines
8.8 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# Save diagnostics Windows development preview
This scoped preview delivers [issue 46](http://217.177.34.108:3000/sorokin.oleg.edu/ARCADIA-Studio/issues/46)
on the released 715 foundation plus compact controls/contextual Help. Protected
Save As destination conflicts now explain that existing files are protected and
offer fresh-directory Save As or current-entry Save All recovery. Observed
external edits retain their external-change diagnosis. File protection, source
format, model/history semantics and APIs are unchanged.
[Contribution decisions, regressions and native review](save-as-diagnostics-20261001.md)
are authoritative for the bounded implementation.
## Inputs and artifact
Version `0.2.0-preview.save-diagnostics.20261001`, target
`x86_64-pc-windows-gnullvm`, dev/unoptimized with debug assertions. Desktop source
`0e83157e09d52e6152df91208e41693b62da2d46`; packaged documentation
`ef28f1784efe6717b0ca72c0eb3c97bc30ebfe47`. This source integrates the compact
Help contribution; it excludes the separately owned follow-up union.
The exact server artifact is reused from715; core/server/Cargo/vendor inputs
are unchanged. Neither binary was rebuilt during packaging.
| Artifact | SHA256 |
| --- | --- |
| Studio | `e9cce9355525ecdc59bfae12608b1e0272167acef5a86b25368ef547e08886ff` |
| Server | `6cebacc117e46fdab023c6402a5cebd6929fb55993ae8ff6b89cd1c6c1170237` |
| Selected libunwind | `f45604a12e8bcd839fd86f667c1be1cc7c4f9da2b3c69ff381ac708f0e1ae7d4` |
| ZIP | `8b4e353e075f22350a07794ee47a02cf85725501223299cf367134aa1f5b63b7` |
ZIP: 34,191,561 bytes, 565 files. The [evidence packet](experiments/save-diagnostics-package-20261001/README.md) preserves exact provenance,
scripts/receipts, native captures, full source/model and HTTP records; its index
allows byte verification. [Confirmed publication](experiments/save-diagnostics-package-20261001/publication.md)
delivers release 9 from evidence checkpoint `e144e32e9984477a258759a9dcc75f6e499fc224`,
with all three assets downloaded and matched. The tag's original validation
checkpoint predates publication; these later receipts do not rewrite its history.
The [fresh independent final review](experiments/save-diagnostics-package-20261001/raw/independent-review.md)
finds no material blocker in this exact bounded artifact. Parent collection and
offline and Git index verification pass for 164 indexed evidence files and
637 source inputs. Publication/download verification is a separate completed gate
in the linked receipts.
The [independent packet closure review](experiments/save-diagnostics-package-20261001/packet-review.md)
also verifies every copied artifact against its original and passes the collected
verifier with staged-index/current-source checks.
The server's original published build receipts were recovered read-only from
immutable evidence commit `206f3b969482241e01e2dfc6be955caf31747b89`. The 462-member
archive passed safe-name/size/CRC/SHA checks before selecting 18 exact build/gate
records. Original compiler Rust 1.98.1 and LLVM-MinGW 20260908/runtime identity
remain in those receipts. The current Studio/package uses LLVM-MinGW 20260826
and the selected DLL above; fresh server tests exercise this exact pairing with
system-only PATH. The server is not represented as rebuilt with the current
Studio toolchain. The recovered records and immediate donor manifest support
explicit per-binary reuse.
## Verification and limits
The unchanged desktop source's 29 targeted save checks, formatting, strict
all-target Clippy, GUI build and fresh source/native independent review pass.
Earlier compact Help/full-suite evidence remains separately scoped; no new
full-suite final-commit claim is made. Packaging and extraction verify exact
stage/archive/extracted content for all 565 files, 564 checksum entries, 559 package
inputs, 268 dependency packages, 489 notices and 18 documentation links.
The broader source snapshot contains 637 Git-identified files; it is distinct
from the 559 selected package inputs and six generated bundle files.
Independent artifact precheck examines PE ordinary/delay imports, notices,
metadata equality, source hashes and archive safety. A first reviewer checker
incorrectly assumed every input has a local_path; that failure remains recorded,
and the corrected local-only input check passes.
Fresh actual extracted server testing passes 23 assertions from 11 HTTP exchanges:
readiness, exact packaged OpenAPI, complete Unicode/CRLF source import/read/edit,
revision/ETag, stale If-Match 412 with preserved model/source, acknowledged store
identity and exact persistence after owned forced restart. This is not graceful
shutdown, power-loss or remote deployment acceptance. The prior #39 Unicode
harness failure belongs to its original record. This fresh run copies the
corrected `server-smoke-unicode02/run.py` byte-for-byte (SHA256
`20344608a0623584a0e0ac66dc7f435a0de053d39b4254e92f1c1148aed8e8b9`),
rather than the failed `server-smoke/run.py`. Its captured fixture independently
confirms the U+2014 comment and CRLF text.
Two actual extracted Windows 11 desktop processes with system-only child PATH
open the offline guide/full example, Apply the declared Activity-name edit,
refuse protected same-folder/new-entry Save As, display complete pointer recovery
guidance, recover using Save All and fresh-folder Save As, refuse a controlled
genuine external edit, recover after its exact restoration, and reopen the saved
source in a fresh process before a no-op Save All. Both exit 0 with empty logs;
all 565 packaged files remain exact. The initial premature loading capture is
retained and is not treated as loaded-model proof.
Eight phase oracles compare complete 37-file sets/bytes, including separately
copied seven companions. A further fresh-reopen oracle checks all 37 saved bytes.
The application writes 30 source files; it does not clone arbitrary external
artifacts. A separate actual packaged-server oracle checks complete pristine and
both saved Projects and exact source envelopes: only Activity
`61f7bbfb-74a4-5540-9182-2583dfb27a49` Name changes from `Assess pressure alarm`
to `Assess pressure alarm Package46`. A read-only validation probe confirms both
are valid; the extra warning is expected trace_drift/OaChanged while the prior
work-context warning remains. No trace reconciliation is inferred.
The GUI trial uses 1442×932 on one existing Windows machine/account. Earlier
contribution minimum-window, editor-history and #39 F1/caret results retain their
own scope; those checks were not all repeated on this extracted package. Keyboard
tooltip access, broader accessibility/DPI, second clean machine/profile, Linux,
full-suite and all OA/SA workflows are not claimed. Linux/WSL remains user-deferred.
Dense diagrams, Scenario group adapters, quantities/calculations/constraints,
maintained libraries and complete first-release acceptance remain unfinished.
Existing releases 7/8 and their tags remain frozen. No new local/server source
semantics, experimental E/F labels or unverified peer changes are introduced.
## Run and reproduce
Verify the adjacent ZIP SHA256, extract the complete folder and launch
`arcadia-studio.exe`, keeping `libunwind.dll` beside both executables. Read
`START-HERE.txt`; Home and Help/F1 expose the example and offline guidance.
Copy the complete example before editing. Save All updates its loaded entry;
Save As preserves include paths and needs a fresh source destination. Copy
needed companion/external artifacts separately.
Optional local backend from a writable working directory:
```powershell
.\arcadia-server.exe --bind 127.0.0.1:8787 --data-dir C:/ArcadiaModels/server
```
Packaged `docs/server.md` and `docs/api.rst` define REST, authentication and
deployment. No remote deployment was performed. Source build/check commands,
with the recorded Rust 1.98.1/gnullvm environment and jobs 1/incremental disabled:
```powershell
cargo fmt --all -- --check
cargo test --locked -p oa-desktop -- save_as_tests source_project_tests repair_save_state_tests --test-threads=1
cargo clippy --locked -p oa-desktop --all-targets -- -D warnings
cargo build --locked -p oa-desktop --bin arcadia-studio
cargo build --locked -p oa-server --bin arcadia-server
```
The 29 recorded checks use that exact three-filter command in the contribution's
`commands.json`; this is not a full-suite invocation.
Use [Windows packaging](../docs/windows-packaging.md) and
`scripts/package-windows.ps1` with explicit target/version, verified binary
directory, recorded BuildEvidence, matching LLVM-MinGW root and fresh OutputRoot.
The script packages/verifies; it does not compile or establish native acceptance.
The packet's offline verifier checks captured bytes and Git input identities;
runtime helpers retain the original Windows paths in their raw record and
require explicit adaptation to a fresh reconstruction directory. Do not rerun
mutation helpers against a user's project or replace published artifacts.