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

20 KiB
Raw Blame History

Source 7 native acceptance — 2026-09-07

Scope and current result

Windows Reset and ReadStatus operation editing, Save, Undo, Redo, and saved reopening PASS. Historical source5/source6 recovery passed complete model/source comparisons. OA caller-specific precedence persistence passed; its rendering correction, further contextual-link cases, Linux GUI, and broader release workflows remain pending. This is a bounded acceptance record, not release completion.

The root operated the actual Iced application with Computer Use at its default 1440 × 900 content size. Process 11060 runs .local/native-qa/bin-source7-acceptance/arcadia-studio.exe with isolated .local/native-qa/source7-appdata. GUI SHA256 6BAB6CDE7D31326F3C3CF7342D9B25FB6ADA032864BBE8104625E5EC9736283B; companion server 9C3C6924515D22E18E41A3824AE9F752787C5ED6BD4084336DA28C5D7910F24B; runtime DLL F45604A12E8BCD839FD86F667C1BE1CC7C4F9DA2B3C69FF381AC708F0E1AE7D4. These binaries follow the fresh source7 Windows gates recorded in STATE.md.

Evaluator and fixture

harness/source7-native-contract.rs and harness/fixtures/source7-native define the independent complete-model/all-source oracle. The fixture contains 43 elements, nine relations, two source files, both OA/SA reusable process callers, and two distinct operations on a common channel. The included rationale retains Unicode and CRLF. Baseline has 20 advisory checks.

The checker executable is .local/native-qa/source7-native-contract.exe, SHA256 4AC615A099F23A78F111BAD3966A3CCB808FCA1C5FC46FBAC9A947508A568600. It requires the staged runtime DLL on PATH. Check its actual exit code: a missing DLL can fail before producing a log. One initial Redo invocation lacked that PATH and did not execute; the corrected invocation exited zero and printed the exact-model/all-two-source PASS.

Reset and correlated Reply

Opened the isolated source7-cases/operation-reset/project.arcadia. Selected System Analysis, “Reset then read status,” Behavior & scenarios, and the existing Call Reset directly on the canvas. Properties offered the explicit-operation checkbox and two clearly distinguished allocations: ReadStatus / @operation_probe_31 and Reset / @operation_probe_30. Selected Reset, applied, and saved successfully on the first submission.

The independently selected correlated Reply retained alias reset_reply, reply-to Call @operation_probe_43, reversed participants 41/42 and channel 34. Its read-only derived label displayed “Reply operation from Call: Valve commands / Reset · InterfaceItemAllocation 30 (@operation_probe_30).” No independent Reply operation picker was offered.

Ctrl+Z removed the Call operation and its derived Reply label; Save restored the exact baseline complete model and both original source files. Ctrl+Y restored Reset; Save restored the exact accepted model and both accepted source files. Recent models → Open reloaded the saved project (Architecture/OA default); selecting the SA scenario and its Reply again displayed allocation 30 and the same correlated Call. All changes were saved; object/link/check counts remained 43/9/20.

Evidence logs under .local/native-qa: source7-operation-reset-save-oracle.log, source7-operation-reset-undo-oracle.log, and source7-operation-reset-redo-oracle.log. Accepted full bundle preserved in source7-cases/operation-reset-accepted:

  • project.arcadia: 9FE6E1AB073F057CEAE2EB29380B9C46E93DC0385CC8728FBF0C862B6A29BA18
  • rationale.arcadia: E6A600E13036D4AD594A65380ED1B3D82D1772D583041BB0A624C9588A73047A

The first screenshot after an asynchronous action can precede repaint; follow-up observations confirmed dirty/saved states. Scrolling over the Description textarea is consumed there; scrolling at the Properties scrollbar moved the surrounding form. Neither observation established a persistence defect.

ReadStatus and correlated Reply

The separate fresh source7-cases/operation-status baseline passed the corresponding native sequence. Selected the existing Call named “Call Reset,” enabled explicit invocation, and chose ReadStatus / allocation31. The full wrapped selection and detail label displayed @operation_probe_31. Keeping the authored name unchanged deliberately checks that names do not determine operation identity. Apply and Save succeeded on the first submission; the complete-model/all-two-source oracle passed.

Selecting reset_reply displayed “Reply operation from Call: Valve commands / ReadStatus · InterfaceItemAllocation 31 (@operation_probe_31)” while retaining correlated Call43 and reverse participants. Undo removed that derived label; Save passed exact baseline. Redo restored allocation31 and Save matched the accepted model and both source files exactly. Recent models → Open followed by SA/scenario/Reply selection again displayed allocation31. No source changes accompanied navigation.

Evidence: source7-operation-status-{save,undo,redo}-oracle.log; accepted bundle source7-cases/operation-status-accepted. Entry SHA256 1E2F1B6B4882645A52E8200DD494B615990E0444C289A4A7A47812934477C97F; rationale unchanged. After these checks process11060 closed cleanly through the window shortcut before isolated historical recovery testing.

OA caller-specific precedence

Opened the fresh source7-cases/oa-link baseline, selected OA caller, opened Behavior, and enabled Focus canvas. Directly clicking the first reference's B preview produced the complete selection breadcrumb @oa_caller → @oa_r1 → @oa_b. Qualified link / assembly opened an unfinished form with that exact selection seeded. Authored “First assessment gate,” guard “Check accepted,” selected caller-local @oa_x as source, then Choose target → Enter reference on First assessment → B. The form retained its name, guard and source while browsing and displayed both complete endpoint paths before Apply.

Apply and Save succeeded. The independent oa-link oracle passed for the complete model and both source files. Undo + Save passed exact baseline; Redo + Save passed oa-link and byte equality with the accepted bundle, including reuse of the same newly allocated relation identity. Logs: source7-oa-link-{save,undo,redo}-oracle.log. Accepted copy: source7-cases/oa-link-accepted; entry SHA256 40351AF825518FE44FCD67E33D5289C2FD3C1AFBF29A2A7D27BA11896918CD5F; rationale hash remains the value above.

Recent models → Open reloaded 43 elements / 10 relations. Model checks explicitly identified Caller / First assessment / B as having multiple precedence paths in that caller context. The check selected the correct caller; Behavior then displayed the saved link. Clicking its path selected “First assessment gate,” alias contextual_link, the correct owner and guard, and the exact source/target paths. The target selection handle was on the first B preview.

Rendering defect found; acceptance remains open: Fit overview and scrolling the full canvas exposed a long return segment crossing unrelated reference cards. Independent code review confirmed correct endpoint resolution but incorrect routing clearance: a gutter derived from the mini-node lies inside the enclosing reference boxes, and opaque cards cover the terminal arrow because it is painted earlier. A focused desktop-only routing/paint correction is in progress. Source/model persistence checks above remain valid; visual acceptance requires rebuilding and native rechecking the correction.

Source 6 recovery with an unfinished port

PASS: used the constructed QA envelope backed by genuine frozen historical serializer output, as described in source7-recovery-candidates-20260906/README.md. This is not a claim that an old desktop binary captured this envelope. Source7 process11240 ran with fresh isolated source7-recovery-old6-appdata; only the indicated old6 checkpoint was seeded. Home displayed a recovery card. Recover reported source6→7 and opened “Create function input port” on Confirm safe pressure, with the Unicode draft and a rebuilt empty-contract proposal. The underlying model showed94 objects/62 links/one advisory.

An independent agent compared the new automatic checkpoint 75513109-5678-416b-a2e4-e1e8bc9455a8.json with all prepared expected values: complete accepted30-file bundle, entire workspace DTO, and entire Ports workflow DTO were equal. The name retained exactly two leading and two trailing spaces; fingerprint 625b15f915f83481 and reserved ID 57060906-0000-4000-8000-000000000106 matched. The reserved ID was absent from accepted source. The original seed remained byte-identical. The new checkpoint was preserved separately as source7-recovery-old6-restored-checkpoint.json before further actions.

Cancelled the pending port, then Save as into fresh source7-recovery-old6-saved/project.arcadia. All30 source files exactly matched the expected restored bundle. Textual model visibly retained the historical header comments with version7, all includes, and the unused Unicode path draft. Save as → Model JSON exported project.json; the independent full-model comparison then passed without ID or metadata normalization. The existing source files remained saved. Process11240 closed cleanly afterward.

Evidence: source7-recovery-old6-{save,full}-oracle.log, process metadata and empty stderr log under .local/native-qa. The full oracle explicitly reports exact file set, all30 byte strings, and full model JSON equality.

Source 5 recovery with invalid dirty text

PASS: process5244 used fresh isolated source7-recovery-old5-appdata and only the constructed historical5 seed. Recover opened Textual model with90 objects/59 links/one check. The accepted source was migrated to7 while the unapplied entry retained its original commented version5 header, final invalid unfinished { 雨 line, and Unicode include-path draft. Lint identified the retained invalid token at37:14.

Before editing, an independent agent preserved automatic checkpoint 0a617cf3-edb8-42f0-a1e3-ffc59ca181dc.json as source7-recovery-old5-restored-checkpoint.json, SHA256 59A530DC8FA187F1A68DFF99463A310D89B383D5EA23A580E18AD6A5C9E4A620. Its complete accepted30-file bundle and entire workspace DTO exactly matched the prepared expected values, without ignoring or normalizing any fields. Both original and appdata seed copies remained unchanged. See independent checkpoint oracle.

Root focused the native editor, used Ctrl+End then Home, and inserted exactly // before the invalid final line. Apply succeeded as one model change, preserving header comments and migrating the version token to7. Save as into fresh source7-recovery-old5-saved/project.arcadia succeeded on its first submission; the oracle matched the exact file set and every byte of all30 repaired source files. Save as → Model JSON then exported project.json; the complete expected model matched without identity/metadata normalization, while all source bytes remained equal. The native view reported all changes saved and one unchanged advisory. Stderr remained empty.

Evidence: .local/native-qa/source7-recovery-old5-{save,full}-oracle.log, restored checkpoint and process metadata. These historical envelopes use frozen serializer output with deliberately constructed drafts; they are not presented as captures from an old desktop executable.

Traceability filters on recovered teaching content

On the same saved process5244 model, Traceability showed66 records:65 layer traces and one development artifact. Development artifacts immediately isolated “Repair conversation acceptance notes,” URI evidence/repair-check.md, owner Repair request and measured reply, revision lesson-1. Search repair-check retained it; appending -missing produced zero matches and an actionable clear-search message. Clear search restored the artifact. Selecting it displayed the exact alias repair_test_evidence, owner @sa_conversation, Verifies relation, URI and revision in Properties. Switching to Layer traces showed65 matching traces and zero artifacts while preserving that selected artifact's Properties. The model remained saved throughout. One first full-URI typing attempt left the observed field empty; the required refocus and observed retry with the shorter URI substring worked. This bounded navigation evidence does not claim a full artifact lifecycle rerun.

Current source7 nested draft crash recovery and continuation

Raw recovery and persistence PASS; corrected rendering still pending. After closing saved process5244, root started process8224 on the same6BAB executable with isolated source7-pending-contextual-appdata. Opened clean source7-cases/sa-nested, selected SA caller, and used Qualified link / assembly. Set direct X as source; browsed Nested assessment then Inner assessment and selected B as target. Entered exact raw name Pending nested gate 雨 and guard Check accepted && 雨 , then switched to Exchange assembly without selecting evidence. Apply remained disabled with “Choose the exact exchange used for assembly.”

The before-stop checkpoint passed the independent expected-intent/both-source check. Root verified process identity, force-stopped only8224, and restarted10420 in the same profile. Home Recover reopened the same invalid draft, complete nested paths and raw name; Apply remained disabled. Full before/after comparison passed for all fields except explicitly validated fresh checkpoint ID, capture timestamp and unsaved origin. Switching back to Precedence revealed the exact retained guard and enabled Apply. Independent checkpoint report records complete field comparison and hashes.

After preserving recovery evidence, root explicitly changed only name/guard to the oracle's “First assessment gate” / “Check accepted.” Apply then Save as into fresh source7-pending-contextual-saved passed sa-nested complete-model/all-two-source comparison. Undo + Save passed exact baseline; Redo + Save passed sa-nested and byte equality with the accepted copy, including relation identity. All three saves succeeded first submission. Home Recent Open reloaded the saved copy; SA caller → Behavior → click actual link displayed the same alias contextual_link, owner, guard and complete X→[Nested,Inner]/B paths. The UI accurately stated that hidden contributions attach visually to their folded reference. Rendering still uses the old routing binary and is not newly accepted.

Logs: source7-pending-contextual-{save,undo,redo}-oracle.log. Accepted copy: source7-pending-contextual-accepted; entry SHA256 CD6B0DB9E3B64F24BB8BA932C9A94A3ADF9DEA2DB74B13B1C8C9E5FAEECA74CB, rationale unchanged. Original source7-cases/sa-nested stays at clean baseline for subsequent corrected-render testing.

Corrected routing binary, 2026-09-07

Process8568 uses isolated source7-post-routing-appdata and a distinct clean-PATH stage bin-source7-post-routing. GUI SHA256 BCC1FC6DB68123C9D3A43CE53AA8EF59E33C54080632C104C99ED13270D5333F; server EFEEB89C0D2E0F93DF4472CB3E9F48B2B722A37AE1043C90A5A56F2E845FE665; DLL F45604A12E8BCD839FD86F667C1BE1CC7C4F9DA2B3C69FF381AC708F0E1AE7D4. Before staging, corrected routing3/3 and full desktop564/564 passed, private server focused tests and full server56/56 passed, workspace format and strict Clippy passed, and both standalone binaries built successfully. Full exact logs/status are .local/source7-post-routing-gates-status.json; binary hashes have their own JSON under .local/native-qa.

OA First.B routing/selection PASS. Opened unchanged source7-cases/oa-link-accepted/project.arcadia. One root path transcription initially omitted source7-cases; the native Open dialog correctly refused the absent path, then the verified path opened. At100%, X connects down a short gutter immediately right of First assessment, with its terminal arrow visibly pointing left into B's right border. It no longer crosses Second/Nested or loops below them. Clicking the terminal stub selected the contextual link with exact caller/X and first-reference/B paths, name, alias and guard. Fit displayed48%; clicking B selected the qualified first-reference contribution, not another repeated use. Open contribution definition selected B in its A→B→C source; Back to caller restored the correct qualified path (zoom returned100%). Mini-card selection at100% also retained that path. Full independent model/all-two-source oracle passed after navigation; model stayed saved.

SA nested routing/selection PASS. Opened unchanged source7-pending-contextual-accepted/project.arcadia, selected SA caller and Behavior. With nested content folded, the arrow visibly terminates at the Nested assessment host's left border. Clicking its stub selects the link and shows exact target [sa_r3,sa_inner]/sa_b. Selecting the host and Expand exposes its one direct Inner reference; selecting that mini-card and Expand nested reference exposes Inner plus A/B/C. The route now terminates visibly at B's left border, staying outside unrelated cards and around the bottom for the opposite-side endpoint. Selecting B shows the complete caller→Nested→Inner→B identity. Independent full model/all-two-source oracle passed afterward, with unchanged accepted relation identity and saved state. These are native rendering/navigation checks; the earlier exact Save/Undo/Redo cases retain their separate binary scope.

Separate layout issue remains open. At1444×932, qualified-selection controls can put the canvas top at y566, while Fit uses a fixed450px height and the nested outer scroller clips part of its allocated box. Fit therefore does not guarantee that the complete overview is visible. Independent review confirmed the code cause and a bounded remaining-height layout correction is underway. See Fit audit. Scrolling reached and allowed inspection of all terminals above, but does not close the Fit usability issue.

Packaged Fit preview — bounded observation, 2026-09-07

The packaged development GUI has SHA256 DC50C887BFE9C73565E3C5DC2AE451BEBC48EC25DF7A1F7C5D97E9C853F2C93A, confirmed by read-only hashing after handoff. It launched as9148 from dist/ArcadiaStudio-preview-source7-20260907-x86_64-pc-windows-gnullvm, with only package/runtime and Windows system dependencies available through the launch setup. source7-user-preview-smoke-appdata was supplied separately; Home still showed previous recent paths, so complete profile isolation is not claimed.

On unchanged source7-cases/oa-link-accepted/project.arcadia, the compact owner/Focus and Tools/Selection details/Fit rows left the graph starting at y223 at1444×932. At100% the corrected short X→First.B route was visible. Fit selected68% and all four cards X/First/Second/Nested were entirely visible, the last bottom at837 within the canvas ending882. Narrowing the window produced1102×932 with the complete overview still visible. Attempts to reduce height did not change it; this does not establish1100×700 acceptance.

The user stopped Computer Use with Escape before further controls, clean close or final screenshot. Native control remains stopped. Later read-only inspection found9148 and8044 live; neither was closed. Preview stderr was empty. The independent oracle was executed after handoff and returned PASS oa-link: exact model and all2source files; the model/source remained unchanged. This result proves saved-file equality, not unobserved in-memory state in either live window.

Latest automated Fit6, existing pending-scroll and branch-Fit tests, full desktop570/570, workspace bins, formatting and strict workspace/all-target Clippy all pass. Their exact status is .local/source7-latest-preview-status.json and .local/source7-latest-full-desktop-status.json; full suite198.82s test/200.63s command. Minimum-height/Focus/pending-form native checks, remaining contextual purpose workflows and full release acceptance remain open.