Rust checks / check (ubuntu-latest) (push) Canceled after 0s
Rust checks / check (windows-latest) (push) Canceled after 0s
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.
79 lines
4.7 KiB
Markdown
79 lines
4.7 KiB
Markdown
# Contextual path native finding
|
|
|
|
Confirmed from accepted source and production code, independently of the screenshot.
|
|
The accepted `oa-link-accepted/project.arcadia` SHA256 is
|
|
`40351AF825518FE44FCD67E33D5289C2FD3C1AFBF29A2A7D27BA11896918CD5F`.
|
|
Its link `d5eb66cc-231e-477a-97ea-521c065e1415` has owner `oa_caller`, source
|
|
`[]/oa_x`, target `[oa_r1]/oa_b`, and guard `Check accepted`. The source identity
|
|
and `endpoint_rect` matching are correct.
|
|
|
|
## Defect
|
|
|
|
With the fixture's ordinary preview, all caller contributions occupy x=24..294.
|
|
X occupies y=24..128. First assessment begins at y=164; its visible B mini-card is
|
|
`(161,282,113,32)`. The old route correctly ended at `(161,298)`, but used
|
|
`end.x-16=145` as its long vertical return gutter. That lies inside First, Second,
|
|
and Nested assessment cards. The route unnecessarily went below every card first.
|
|
|
|
Additionally, contextual arrows were painted before opaque outer reference
|
|
backgrounds. That covered the terminal arrow even though its semantic anchor was
|
|
correct. Selection prioritized the enclosing reference over the visible terminal
|
|
stub. This is a routing/paint/hit-testing defect, not an endpoint or model defect.
|
|
|
|
## Bounded correction (desktop only)
|
|
|
|
- Route via outer-card column gutters. Visible left/right mini-columns connect
|
|
through their outward-facing host padding; hidden addresses use the host border.
|
|
- The native X→First.B case now follows `(294,76) → (312,76) → (312,298) → (274,298)`:
|
|
a short clear right gutter terminating on B's right border. Other-side routes
|
|
retain a bounded below-card detour. Parallel exact links keep distinct paths and
|
|
labels. Caller layout, source identities, and bounded preview enumeration stay
|
|
unchanged.
|
|
- Explicit paint passes keep legacy direct edges below node backgrounds while
|
|
painting contextual paths after outer backgrounds and before mini-card content.
|
|
Thus the arrowhead stays visible in the selected mini-card's clear outer padding.
|
|
- Exact mini-card selection remains first, followed by selected direct-link
|
|
endpoint handles, then contextual stubs, then enclosing references. Independent
|
|
review caught an initial mixed-edge priority regression: when both edge kinds
|
|
shared X's source anchor, the contextual hit stole the direct reconnect press.
|
|
The corrected ordering preserves that selected handle's drag behavior.
|
|
|
|
Owned files: `behavior/topology.rs`, `behavior/topology/direct.rs`, and new
|
|
`behavior/topology/contextual_routing.rs`. Targeted rustfmt completed; no Cargo run
|
|
was made while the Linux worker held the heavy execution lease. This desktop delta
|
|
does not change the frozen Linux core/server snapshot's tested sources.
|
|
|
|
Three prepared tests reconstruct the tracked native baseline in both layers, assert
|
|
the exact corrected route, reject intersections with unrelated outer/mini cards,
|
|
check the paint-pass ordering actually consumed by drawing, and exercise real
|
|
mouse publication at 45% and 100% (stub→link, mini→qualified endpoint). Further
|
|
cases cover nested visible/hidden targets, parallel links, and unchanged legacy
|
|
procedure routes/extents. Selected direct reconnection sharing a contextual source
|
|
anchor is also exercised through real mouse input at both scales. That regression checks the
|
|
press publishes no replacement selection and the drag emits the exact direct-link
|
|
source reconnect event.
|
|
|
|
After Linux shutdown, Windows one-job execution passed without further changes:
|
|
|
|
- `cargo test --locked -p oa-desktop --bin arcadia-studio contextual_route_ -- --test-threads=1`:
|
|
3/3 passed, exit 0; command 182.18 s including compilation, tests 0.12 s.
|
|
Log `.local/source7-routing-focused-tests.log`.
|
|
- Full `oa-desktop --bin arcadia-studio` tests: 564/564 passed, exit 0;
|
|
command 280.16 s, tests 277.65 s. Log `.local/source7-desktop-post-routing-tests.log`.
|
|
|
|
This compiled the desktop **test binary** and ran existing process interaction,
|
|
source/history and all other desktop regressions. A fresh standalone GUI build,
|
|
strict checks and native routing/terminal-paint verification remain separate gates.
|
|
|
|
## Native recheck
|
|
|
|
Open the unchanged accepted `oa-link-accepted` source in the rebuilt desktop.
|
|
Select First assessment gate at 100%, then Fit. Confirm the path stays to the right
|
|
of the reference cards and terminates visibly at First.B's right border; it must
|
|
not pass through Second/Nested or dive below them for this one link. Click the
|
|
terminal stub to select the link, then B's mini-card to select `[oa_r1]/oa_b`.
|
|
Verify the full From/To labels, unchanged accepted model/source bytes, and existing
|
|
Open definition/Back controls. Check one expanded nested target and its collapsed
|
|
host fallback. Fit may change slightly because the unnecessary detour no longer
|
|
extends canvas height; the underlying column layout is deliberately unchanged.
|