Skip to content

fix(commands): leave self_is_sibling self-loops out of command output - #794

Merged
michaelpporter merged 1 commit into
mainfrom
fix/self-loop-commands
Oct 12, 2026
Merged

michaelpporter merged 1 commit into
mainfrom
fix/self-loop-commands

Conversation

@michaelpporter

Copy link
Copy Markdown
Owner

Refs #785

self_is_sibling adds a note->itself edge for the views. The commands treated it as a real edge:

  • Create list index listed the note as its own child, and repeated its siblings under it.
  • Export to canvas drew a note->itself edge.
  • Edge audit (checked per the issue) reported self-loops on unresolved notes as dangling edges, and counted them in mergeable-field comparisons.

All three now skip self-loops, plus the subtree the traversal followed back through them, as freeze_edges already does. Thread is unaffected (it only looks up the edge it just created).

Tests: one new test per command, all on the real WASM graph. Live: on the dev vault's 11-canvas-export/Hub.md, the list index is exactly - Sibling / - Twin.

The self_is_sibling setting adds a note→itself edge so a note shows in its
own sibling list in the views. The commands treated it as a real edge:

- Create list index listed the note as its own child and repeated its
  siblings under it (the traversal followed the loop back in).
- Export to canvas drew a note→itself edge.
- Edge audit reported self-loops on unresolved notes as dangling edges and
  counted them in mergeable-field comparisons.

Skip self-loops (and, for traversals, the subtree under them), as
freeze_edges already does.

Refs #785
@michaelpporter
michaelpporter merged commit 51672cd into main Oct 12, 2026
1 check passed
@michaelpporter
michaelpporter deleted the fix/self-loop-commands branch October 12, 2026 01:02
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.

1 participant