189 lines
12 KiB
Markdown
189 lines
12 KiB
Markdown
# First release — current engineering state
|
|
|
|
## Objective and current phase
|
|
|
|
The first-release goal remains active and incomplete. Deliver Rust/Iced Operational
|
|
Analysis and System Analysis/System Architecture for system engineers, equivalent
|
|
graphical/textual/REST semantics, hierarchical diagrams and typed ports, modular
|
|
source projects, artifact traceability, editable behavior, useful offline help,
|
|
and Windows/Linux release evidence. Later Arcadia layers remain future releases.
|
|
Authoritative objective: attachment
|
|
`07aee762-7d27-4cbe-81c3-2e82c7170711/goal-objective.md`, reread 2026-09-06.
|
|
PLAN.md, TASK_LEDGER.md and release-semantics-audit.md retain full release scope.
|
|
|
|
The latest user-directed drawing/port/menu/source-tree milestone is accepted at
|
|
`fef2e0d` plus tooltip-layer follow-up `ad7feb5`. It does not complete the release.
|
|
Root now integrates direct state-machine editing in an isolated worktree. There
|
|
is meaningful implementation, independent review and real runtime progress; no
|
|
external blocker or disk blocker exists.
|
|
|
|
## Accepted foundations and evidence
|
|
|
|
- Typed OA/SA model, schema 3 ports, validated atomic commands and ordinary history
|
|
are shared across three Rust crates. Typed contracts and migration are documented
|
|
in release-port-contract.md, release-port-core.md and release-port-migration.md.
|
|
Desktop typed authoring checkpoint `fa096ce` passed native creation, generation,
|
|
undo/redo and persistence. Original Capella was operated in a disposable workspace;
|
|
exact observed semantics/workflows: release-capella-workflow-benchmark.md.
|
|
- Explorer/port discovery `d364d3c`: visible Add port, grouped roots, focused children,
|
|
breadcrumbs, contextual search/paging and full-depth outline. Windows port/Standard
|
|
exchange, 251-root paging, 12-level navigation and 1100x700 trials passed; rebuilt
|
|
Linux save/reopen/font correction passed. See release-explorer-usability.md.
|
|
- Editable routes `23535b4`, viewport fix `366ce44`, automatic labels `65fa9ab`:
|
|
authored bends/labels, nested group movement, folding/restoration, undo/redo,
|
|
save/reopen, SVG and minimum-size gestures passed native and independent review.
|
|
See release-routing-verification.md and release-routing-linux.md. Dense optimized
|
|
full solve measured119ms; arbitrary dense crossings remain possible.
|
|
- Nested source and coupled hosted source/model checkpoint `4e8575b`: source3
|
|
element nesting/includes, token/provenance-aware structural writes, exact model
|
|
source history, retained drafts and safe Save All/recovery. Full422 Windows and
|
|
425 Linux tests, strict checks and builds passed at that checkpoint. Actual REST
|
|
import/comment-only revision/cross-file reparent/stale ETag/restart passed.
|
|
Windows/Linux source and nested graphical edits, save/reopen and recovery were
|
|
exercised. See release-source-integration.md. Experiments remain evidence only;
|
|
do not adopt their independent parser/writer.
|
|
|
|
## Drawing acceptance — current main checkout
|
|
|
|
`93fd32c` fixes candidate scaling without weakening validation; `35133de` supplies
|
|
persisted four-side normalized port anchors. `fef2e0d` adds direct palette drawing,
|
|
shared automatic labels, contextual menus and the source folder tree. OA Interaction,
|
|
SA Functional Exchange and Boundary Exchange accept click-click or drag. Function
|
|
cards create/reuse typed ports atomically. Compatible targets highlight; Standard
|
|
and Flow contracts remain distinct. Pan retains source; Escape cancels.
|
|
|
|
Independent review reproduced batched-pointer click corruption and overview port
|
|
mispicking. Ordered CursorMoved coordinates, explicit context epochs and nearest
|
|
port glyph picking fix these, with production regressions. Native review then
|
|
reproduced port-tooltip overprint: separate Frames still share an Iced GPU layer.
|
|
The fix uses a passive second stacked Canvas (a real renderer layer). It preserves
|
|
interactive child state/input and resets held-button suppression on context change,
|
|
matching releases, Escape and focus loss. CursorLeft alone does not end suppression.
|
|
|
|
Evidence is in release-port-drawing.md and release-context-menus.md. Exact native
|
|
review report: `D:/CodexBuilds/Capella2-release1-01a06e2e/drawing-independent-native-review.md`.
|
|
Windows independent trials passed Standard rejection/completion, automatic function
|
|
ports, undo/redo, save/reopen and1100x700. Overprint was reproduced on9A7FF074 and
|
|
closed on3F534C67 at1440x900 and1100x700. Root tested final1EEBDC3C: first port drag,
|
|
menu outside dismissal, first repeated drag, direct FE, readable identity and Save.
|
|
Saved trial: `ui-port-tooltip-final/project.arcadia`,41objects/26links/0checks.
|
|
|
|
Root operated actual Linux7AC5EEE: first FE drag, Right-to-Bottom port drag, Reset/
|
|
Undo, repeated Bottom-to-Left drag, source-offscreen arrow pan and completion,
|
|
Save All/reopen, persisted geometry and source-tree expansion/open. Saved trial:
|
|
`ui-port-tooltip-linux/project.arcadia`,41objects/27links/0checks. Runtime log empty;
|
|
Linux window closed normally, exec13766 exit0. Linux was inspected at1440x900;
|
|
minimum-size acceptance is Windows, not a claim of Linux minimum-size testing.
|
|
|
|
Verification scopes: full485 Windows /488 Linux workspace tests preceded the last
|
|
pointer/tooltip refinements. Latest main Windows193 desktop tests, strict desktop
|
|
all-target Clippy and debug build passed. Latest Linux189 desktop tests, strict
|
|
desktop Clippy and release build passed; four new tooltip lifecycle tests then
|
|
passed separately. A142-test Linux result from a shared-worktree Cargo cache was
|
|
identified and EXCLUDED; scoped package cleaning and explicit main recompilation
|
|
established the valid189-test result. Use a distinct CARGO_TARGET_DIR per worktree.
|
|
|
|
## Active isolated state integration
|
|
|
|
Worktree: `D:/CodexBuilds/Capella2-state-integration`, branch`codex/state-integration`.
|
|
Target: `D:/CodexBuilds/Capella2-state-integration-target`. Main core is not yet changed.
|
|
|
|
- `e7a8163` integrates reviewed core state-context commit a63654f, preserving latest
|
|
anchors and routing labels. State views skip semantic port layout after boundary
|
|
snapping; both routing and label passes reserve actual internal-row headers.
|
|
- `2459581` retains behavior drafts until Document commit succeeds.
|
|
- `53cd096` adds typed state-context forms, placement membership choices and normative
|
|
source/JSON/REST/OpenAPI contracts. Strict HTML generation passed. Two actual HTTP
|
|
tests passed, including malformed/invalid rejection, revision/source atomicity and
|
|
restart. Destination pickers permit intermediate invalid drafts so coordinated
|
|
element/diagram retargeting is reachable; Apply remains strict.
|
|
- `e5660b8` integrates App dirty/Close/Save/navigation/mutation guards. Exact prepared
|
|
commands acknowledge drafts only after accepted source/model writes. Review found
|
|
passive viewport events applying properties, queued source controls creating
|
|
competing drafts and stale delete confirmations; all three fixes have App tests.
|
|
Six App lifecycle tests passed, including typed source-writeback rejection/retry
|
|
and one Undo. Clean detached buffers after Undo are intentional; reachable bundle
|
|
and accepted Document are restored exactly.
|
|
- Integrated baseline:514 Windows workspace tests (277core,199desktop,38server),
|
|
strict workspace all-target Clippy passed. This baseline precedes direct gestures;
|
|
there is no native state-gesture acceptance yet.
|
|
|
|
Direct-state UI integration is now implemented (uncommitted): persisted canvas,
|
|
creation within explicit regions, movement, direct transitions and endpoint
|
|
reconnection, pan/zoom/Fit, typed detail forms, and contextual fold/unfold/hide.
|
|
The old computed static state scene is removed. Source/model commands remain atomic.
|
|
Independent review found removed typed-form access, unreachable folded contents,
|
|
selection relayout altering drag deltas, fallback owner resetting the first drag,
|
|
and same-size viewport events refitting the camera. Fixes preserve typed creation,
|
|
use state-specific menus, window-space ordered gesture deltas, retained owner and
|
|
actual-size resize checks. App tests also exposed Architecture placement leaking
|
|
into Behavior selection; the two view selections are now separate.
|
|
|
|
First direct-state Windows verification:231 desktop tests and strict desktop
|
|
all-target Clippy passed, logs `D:/CodexBuilds/Capella2-state-direct-{tests,clippy}.log`.
|
|
Native trial2A4B5C11 created a new SA StateMachine and dedicated view; it reproduced
|
|
missing box fills/borders while text remained. Iced WGPU appends parent meshes after
|
|
clipped children: the opaque parent background covered every node. The fix moves
|
|
the content background into the clip and restricts the outer fill to the guidance
|
|
strip. Native re-verification remains required. Saved reproduction is
|
|
`ui-state-direct-01/project.arcadia`,42objects/25links/2 expected incomplete-machine
|
|
checks. Trial window1442250 received normal close after verified Save; re-inventory.
|
|
|
|
Latest verification:551 Windows workspace tests (277core,236desktop,38server)
|
|
and strict workspace all-target Clippy passed. A single let-and-return lint in the
|
|
new label hit helper was fixed without changing behavior. Subsequent compact-toolbar
|
|
changes passed desktop Clippy and build. Exact logs use `state-direct-workspace-*`
|
|
and `state-compact-*` under D:/CodexBuilds.
|
|
|
|
Native82AE5A2C closed the missing-shapes bug; root directly created Region, Initial,
|
|
State, first-drag Initial→State transition, selected without motion, moved/undid the
|
|
state, created Internal Monitor communications with generated After30s Event,
|
|
Undo/Redo of both, and Fold/Unfold via right-click. Saved trial46objects/27links/1
|
|
remaining model check uses ui-state-direct-01/project.arcadia; its original empty
|
|
machine fixture is preserved in baseline-before-editing. Minimum1100x700 exposed
|
|
excessive toolbar height; latest build removes selected-action row and shortens
|
|
state heading. Native recheck is pending, along with reconnection, nested composite,
|
|
Linux state runtime and independent final runtime review.
|
|
|
|
Additional review/native fixes: Fold retains semantic selection; placement property
|
|
Apply retains Behavior view without overwriting Architecture view. Initial names
|
|
choose among12 deterministic route-aware positions, and label hit testing uses the
|
|
same cached rectangle. This closes the observed rightward-line/name collision in
|
|
code; native verification of this last refinement remains pending.
|
|
|
|
Root owns integration/native input; all workers have returned files. Every worktree
|
|
uses its own Cargo target. Main remains ad7feb5; state work is isolated and not yet
|
|
accepted into main. No release-completion claim.
|
|
|
|
## Exact next actions
|
|
|
|
1. Rebuild and verify the state rendering fix on the saved native reproduction;
|
|
complete real state creation, connections, folding, form edit, Save/reopen and
|
|
minimum-size trials. Commit only after reviewed behavior is demonstrated.
|
|
2. Finish state-edit acceptance with explicit retained
|
|
behavior view, creation in a region, movement, transition drawing/reconnection,
|
|
guarded forms, discoverable missing placements, pan/zoom and contextual actions.
|
|
Build/run/test native at default/minimum sizes; review/reproduce/fix findings.
|
|
3. Continue direct scenario/process gestures, R3 semantic drift/reconciliation,
|
|
R6 data contracts, persistent coverage/filters, Home/recent/recovery, hosted ETag
|
|
workflows, offline guidance and normative contracts. All remain release work.
|
|
4. Fresh final requirements/domain/correctness/native UX/architecture reviews;
|
|
Windows/Linux/MSRV checks, actual runtime, docs and packages/checksums before
|
|
completing the broad goal. V2 or a subsystem checkpoint is insufficient.
|
|
|
|
## Native safety and environment
|
|
|
|
Root owns native input. Final Windows1EEBDC3C window2100032/exec55548 is saved on
|
|
its isolated41/26 trial. Earlier windows524634 and328292 are saved on the Standard
|
|
and auto-port review fixtures. Re-inventory and inspect current dirty state before
|
|
operating any window. Protected user7210312 and earlier6228978 were absent; root did
|
|
not close them and makes no recovery claim. If either returns, do not save/reset/close.
|
|
|
|
Main Windows target `D:/CodexBuilds/Capella2-01a06e2e`; Rust1.98.1. Use `cargo test
|
|
--locked --workspace`, `cargo clippy --locked --workspace --all-targets -- -D warnings`
|
|
and `cargo build --locked -p oa-desktop -p oa-server`. WSL Ubuntu24.04 uses the
|
|
existing target/linux-cargo.toml vendor config and its own linux-target; launch
|
|
with WGPU_BACKEND=vulkan and the Mesa lvp ICD. Release evidence lives under
|
|
`D:/CodexBuilds/Capella2-release1-01a06e2e`. No remote push or usage reset is authorized.
|
|
Do not retry the previously rejected broad recursive target deletion.
|