Skip to content

fix(nodes): clearly mark the selected node in path chains - #1968

Merged
efiten merged 3 commits into
Kpa-clawbot:masterfrom
n30nex:codex/node-path-highlight
Sep 6, 2026
Merged

fix(nodes): clearly mark the selected node in path chains#1968
efiten merged 3 commits into
Kpa-clawbot:masterfrom
n30nex:codex/node-path-highlight

Conversation

@n30nex

@n30nex n30nex commented Sep 5, 2026

Copy link
Copy Markdown
Contributor

Red commit: 0988bc0 (local browser: 3 passed, 8 behavior assertion failures before the fix).

The selected node now has a compact outline in long “Paths Through This Node” chains, in the side panel and full detail page. Matching uses complete public keys without case sensitivity; same-prefix siblings and unresolved hops stay unmarked. Existing links, escaped names, warnings and ambiguity underlines are preserved.

Fixes #1153. Its prerequisite #1144 is already merged.

  • E2E assertion added: test-issue-1146-path-link-contrast-e2e.js:220. The existing CI-selected harness passes 11 checks across 18-hop paths, both themes, desktop/mobile, and the renderer fallback. Review follow-up bd8118f verifies the marked ambiguous hop's dashed underline.
  • Browser verified: http://127.0.0.1:55635; desktop/mobile path screenshots were inspected. The broader smoke runner exited successfully with fixture-dependent skips.
  • Required frontend checks pass: 99 filter, 18 aging, 666 helpers. CSS variables, seven CSS self-tests, 31 XSS sink checks, 17 XSS gate self-tests and XSS diff preflight pass.
  • Three independent reviews found no blocking issues. Traversal remains linear with no new requests, settings, dependencies or cache invalidation; styling uses the existing customizer token.

Preflight overrides

@efiten

efiten commented Sep 6, 2026

Copy link
Copy Markdown
Collaborator

Merging. CI had never run on this (stuck in action_required, now approved) and came back green.

The actual bug is the case comparison, and it is worth naming plainly: h.pubkey === n.public_key fails whenever the two sides differ in case, and both are hex strings arriving from different paths. So the "you are here" marker in a path chain silently did not appear for some nodes and did for others, which reads as a rendering quirk rather than a comparison bug. .toLowerCase() on both sides, hoisted out of the loop, fixes it.

Moving the inline font-weight/color onto a .hop-current class is the other half and it is not cosmetic: a contrast rule cannot be reviewed, themed or overridden while it lives in a style attribute.

Checked the combination rather than this PR alone: merged together with #1969 and #1970 onto current master it applies cleanly, the three touch disjoint hunks, eslint is clean and the frontend helper suite is 666 passed 0 failed. Three green PRs on one file are each green against a master that does not contain the other two, so that seemed worth confirming before merging any of them.

@efiten
efiten merged commit a938176 into Kpa-clawbot:master Sep 6, 2026
7 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

ui(node-detail): "this node" highlight in path chain is too subtle (and unreachable when names mis-resolve)

2 participants