Add function-scoped Logic visualization
This commit is contained in:
parent
9fcafc290c
commit
9b4258c852
22 changed files with 1420 additions and 62 deletions
|
|
@ -18,8 +18,8 @@ commit when Git is available; it cannot change repository state.
|
|||
- Edge schema: `schemas/edge.schema.json`, version 1.
|
||||
- Result envelope: `schemas/result.schema.json`, version 1.
|
||||
- Changeset schema: `schemas/changeset.schema.json`, version 1.
|
||||
- Index schema: version 1, disposable and reproducible.
|
||||
- Core, CLI, and MCP server: version 1.1.0.dev0.
|
||||
- Index schema: version 2, disposable and reproducible.
|
||||
- Core, CLI, and MCP server: version 1.2.0.dev0.
|
||||
- Incremental extraction cache: version 1, disposable and reproducible.
|
||||
|
||||
Schema files describe the generic interchange contract. Runtime validation remains responsible for
|
||||
|
|
@ -104,13 +104,13 @@ random token is part of every accepted URL path. Only `GET` and `HEAD` are suppo
|
|||
no-store caching, a restrictive content-security policy, frame denial, MIME sniffing protection,
|
||||
and no-referrer policy. The built-in template uses only same-origin JSON endpoints for graph
|
||||
overview, bounded search, exact descriptor-category filtering, exact node content, bounded
|
||||
incoming-and-outgoing neighborhoods, semantic Flow ancestry, convergence Web context, and one
|
||||
node's bounded project-confined source file.
|
||||
incoming-and-outgoing neighborhoods, semantic Flow ancestry, convergence Web context, lazy
|
||||
function-scoped Logic, and one node's bounded project-confined source file.
|
||||
Descriptor filtering accepts only
|
||||
family, authority, status, or tag plus one exact value. There is no write endpoint, arbitrary query
|
||||
endpoint, static filesystem handler, external asset, or project-selection control.
|
||||
|
||||
The `graph-browser@15` template provides mouse-wheel zoom centered on the pointer, left-button drag
|
||||
The `graph-browser@16` template provides mouse-wheel zoom centered on the pointer, left-button drag
|
||||
pan, explicit zoom-in and zoom-out buttons, a reset-view button, and a live zoom percentage. A
|
||||
four-pixel drag threshold defers pointer capture and preserves node activation for ordinary clicks.
|
||||
Loading another root node fits the viewport to the returned neighborhood, including a useful
|
||||
|
|
@ -141,7 +141,7 @@ supported line, TOML, heading, or text anchors. Both side panels support pointer
|
|||
resizing. The unblurred full inspector supports native resizing, constrained title-bar dragging,
|
||||
and a fixed header/footer surrounding a scrollable body.
|
||||
|
||||
The header exposes a Nodes/Flow/Web segmented selector. Nodes displays the complete bounded
|
||||
The header exposes a Nodes/Flow/Web/Logic segmented selector. Nodes displays the complete bounded
|
||||
neighborhood. Flow displays semantic ancestry ending at the current root. Structural and execution
|
||||
edges retain their declared source-to-target direction. Reads, imports, dependencies, inheritance,
|
||||
and `tested_by` reverse because their declared target feeds or qualifies the source. Documentation
|
||||
|
|
@ -151,10 +151,17 @@ direct root-owned members and execution dependencies into adjacent contributor b
|
|||
does not fan back out through unrelated siblings. These are presentation transforms over the
|
||||
validated snapshot; they do not add or change project relationships.
|
||||
|
||||
All three views color edges by relationship semantics and retain direction with visible SVG endpoint
|
||||
Logic is available only when the focused node owns a stored `LogicProjection`. The browser
|
||||
retrieves that projection through a bounded, exact-owner endpoint. Entry, condition, action,
|
||||
control, merge, return, raise, and exit nodes remain outside primary graph search and traversal.
|
||||
Logic edges retain their declared `TRUE`, `FALSE`, `NEXT`, `CASE`, `LOOP`, `EXCEPTION`, `RETURN`,
|
||||
`RAISE`, `BREAK`, and `CONTINUE` labels. Hiding a logic node creates a visible omitted-path bridge
|
||||
between retained predecessors and successors instead of pruning valid downstream control flow.
|
||||
|
||||
Nodes, Flow, and Web color edges by relationship semantics and retain direction with visible SVG endpoint
|
||||
symbols. Line patterns provide a non-color cue. A static canvas key shows the exact symbol, color,
|
||||
label, and visible count for each displayed relation, including a deterministic fallback for
|
||||
project-defined relations. Nodes, Flow, and Web use the same map.
|
||||
project-defined relations. Logic uses a separate fixed control-flow map.
|
||||
|
||||
The browser derives node presentation roles only from the returned bounded graph. The current root
|
||||
is the focus. In Nodes, nodes reachable through outgoing edges are shown as outgoing paths; the
|
||||
|
|
@ -221,4 +228,5 @@ must also implement `load_projection()` so a clean rebuild and equivalence check
|
|||
|
||||
Logic projections are not primary graph nodes. They remain source-scoped, function-owned,
|
||||
independently cached control-flow data so ordinary search, Nodes, Flow, and Web do not become
|
||||
statement graphs.
|
||||
statement graphs. Index schema 2 stores them in dedicated owner, node, and edge tables. Reads are
|
||||
bounded to one exact function or method owner.
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue