Files
ARCADIA-Studio/harness/review-v2-ui-runtime.md

7.5 KiB
Raw Permalink Blame History

Independent V2 UI/runtime review

Reviewer: v2_ui_runtime_review. Completed 2026-09-05 03:30 +03:00. This is a diagnostic review of a fixed integration snapshot, not final V2 acceptance. Root continued editing after the build; subsequent fixes need a fresh runtime pass.

Evidence and scope

  • Read current goal, PLAN, STATE and Computer Use skill/guidance/API/confirmations. No source files edited.
  • Ran cargo build -p oa-desktop --locked with CARGO_TARGET_DIR=D:/CodexBuilds/Capella2-01a06e2e and TEMP/TMP on D. Build passed.
  • Copied binary to D:/CodexBuilds/Capella2-v2-01a06e2e/ui-review/arcadia-studio.exe; SHA256 E54E2A6673E5D814F04D1B06BFCAA1C0F00C3DC7CA6F259AEB4472FB70244ED2.
  • Launched copied native Windows executable and operated it through @oai/sky using screenshot observations after each input. Target window was 1839418, title Coastal rescue — operational need to system behavior — Arcadia Studio. Original Capella was left untouched.
  • Captured and personally inspected default 1440×900 client, minimum 1100×700 client and maximized 2560-wide layout. Screenshots are in the Computer Use transcript; no duplicate screenshot payloads were saved. Native menu Size → Right → Down → click lower-right target produced exact minimum size; maximize/restore worked.
  • ui-review/stderr.log remained empty through shutdown. No crash was observed. All test edits were in the unsaved demo; close guard appeared and Discard closed only the review copy. CUA ownership is released to root.

Material findings

P1: modal allows background navigation

Reproduction at 1100×700: Traceability → select the SA Rescue coordination system endpoint → Create/update counterpart → System → Operational modal. Click dimmed Architecture sidebar at approximately (70,206). Underlying page switches from Traceability to Architecture and sidebar highlight changes while transition modal remains open. Confirmed visually, not inferred from code. Pointer input must be captured by the overlay and background state-changing messages gated. Root was notified immediately and reports a source fix; this snapshot did not include that fix.

P1: behavior workspace omits primary behavioral relationships

At both compact and wide sizes, SA Reporting operation modes shows three flat rows with identical circular glyphs: Degraded reporting, Initial Start reporting and Normal reporting. The overview does not depict transitions, their source/target, guards, initial destination, actions or availability. Repeated distress reports is two identical Validated distress report rows without visible lifelines, message sender/receiver or fragments. These are record browsers rather than usable scenario/state views. Root acknowledged and is implementing behavioral visuals. Those changes require separate review.

P2: automatic layer switching leaves incompatible create kind

Reproduction: apply System → Operational counterpart update on Rescue coordination system. Application selects the OA entity and OA layer, but CREATE ELEMENT still displays Function from SA. Undo also retains this inconsistency. Explicitly clicking a layer tab later resets the selection. Normalize creation kind whenever navigation/transition changes the current layer. Root reports a source fix; not reverified in this snapshot.

P2: architecture edge/label overlap reduces readability

Default 1440×900 → SA allocation → select nested Classify incident and alert operator. Straight edge portions traverse System/Actor header text; selected-edge captions including System capability support, chain and functional-exchange labels overlap around the central chain/actor region. The dense overlap persists at minimum size after Fit. Different relations should have distinguishable routes/label positions; parent/performer headers should remain legible. No routing fix was observed in this snapshot.

P2: property forms expose raw storage labels

Selecting Backup electrical energy exposes consecutive Shared / ExchangeItem / Kind headings. Selecting the created Functional exchange exposes FunctionalExchange twice, before Items and Source. These duplicate raw type names add clutter and do not help engineers make a choice. Use user-facing semantic field groups. Selected catalog/sidebar rows use dark blue-gray backgrounds with gray secondary labels; contrast is visibly poor compared with unselected labels.

P3: narrow diagram selector clips title

At 1100×700, current diagram selector becomes roughly 108px wide and wraps SA system boundary and functions across more text than its fixed height shows. Remaining toolbar controls fit. A compact ellipsis/tooltip or second toolbar row would communicate the chosen view more clearly.

Workflows actually observed passing

  • Rich 39-object/23-link demo launches with zero checks. OA participants show activity allocated within entity/actor; SA shows function inside system and external actor. Layer navigation and model selection work.
  • Fit adapts graph to reduced center width; app navigation, property inspector, data list, source editor and counterpart/relationship modals remain reachable at 1100×700. Wide layout does not clip inspector or task navigation.
  • Source action from Classify incident and alert operator opens its declaration. Source action from late-ID Backup electrical energy scrolls substantially down to the correct declaration. Syntax colors visibly distinguish keywords/references/strings. The target declaration can land at the bottom of the editor rather than top, but it is visible.
  • Created SA Function at root; renamed it to Review "quoted" function; Apply saved the literal quote-bearing name while stable alias stayed new_function.
  • Created Functional exchange through explicit modal, source new function, chosen compatible target Classify incident and alert operator, name Review outcome. Apply committed it, selected the relation and showed the new canvas edge; link count increased 23→24. Missing target/name correctly left Apply disabled before completion.
  • Reverse counterpart preview displayed OA Rescue coordination → Rescue coordination system descriptive change. Apply committed it atomically and selected OA entity. Ctrl+Z restored the name and showed Model change undone. No counterpart duplication was observed for this update.
  • Artifact action created an editable reference owned by the selected Review outcome exchange. Inspector exposed owner, relation, URI, optional revision and fragment. Arbitrary URI editing/save/reopen was not completed in this bounded pass.
  • Inserted ? at source beginning. Live lint displayed 1:1 Invalid token '?'. Apply rejected the draft, retained visible ?, and displayed Source contains errors. Your draft is preserved. Revert restored accepted source and removed lint. Model counts remained unchanged.
  • Close with unsaved edits displayed Keep your changes? with Cancel, Discard changes and Save & continue. Discard closed the temporary review application; fresh window inventory confirmed it absent.

Required follow-up / not claimed

Reverify fixed overlay capture and layer-kind normalization; inspect new state/scenario views and routing at all sizes. This pass did not complete forward transition creation, conflict choices, manual trace editing, graphical decomposition editing, node/placement UUID drag remapping, exact CR/LF/tab round trip, save/reopen, artifact URI/revision edits, or native Linux runtime. Existing reducer tests are not substitutes for those real-app workflows. Initial post-input screenshots occasionally preceded the next rendered frame; fresh observations were used before declaring behavior broken.