1
0
Fork 0
Code Issues Pull requests Projects Releases 2 Packages Wiki Activity Actions Pages

Add project-bound graph visualization

This commit is contained in:
Andraxion 2026-07-24 16:01:03 -04:00
parent 6b5c3a939a
commit 195a57210a
13 changed files with 1298 additions and 22 deletions

View file

@ -1,5 +1,45 @@
# Completed slices
## DFG-10 project-bound graph visualization
### Changed
- Added the fixed `docforge_visualize` MCP read tool to generic, read-only adapter, and
proposal-enabled adapter servers.
- Added the built-in `graph-browser@1` HTML/CSS/JavaScript template with project overview, family
filtering, lexical search, exact node content, and bounded neighborhood traversal.
- Bound the ephemeral HTTP listener to `127.0.0.1` on an operating-system-selected port.
- Added an unguessable per-process URL token and rejected every non-token path.
- Exposed only fixed `GET` and `HEAD` endpoints. Rejected POST, PUT, PATCH, and DELETE.
- Validated the complete project and index once per MCP invocation, then served fast queries from
the exact validated SQLite snapshot.
- Rejected index replacement or alteration after launch and required reinvocation to refresh.
- Accepted no project root, database path, SQL, template path, bind address, command, or renderer.
- Released the capability as DocForge 0.7.0 without changing canonical-write policy.
### Verification
- Protocol tests exercised the new tool through the official in-memory MCP transport.
- HTTP tests proved token confinement, loopback binding, security headers, read-only methods,
deterministic results, exact node retrieval, and snapshot invalidation.
- Cross-project tests ran two simultaneous visualization servers and proved separate project data,
ports, tokens, and indexes.
- The complete warning-strict DocForge suite passed.
- Ani-web proof loaded 3,289 nodes and 6,292 edges. After one full validation, the graph overview
returned in approximately 0.30 seconds and a node neighborhood in approximately 0.03 seconds.
### Limits
- The browser is a validated index snapshot, not a live canonical-file watcher.
- It is reachable only from the machine running the MCP process.
- It does not persist, publish, or externally host a visualization.
- It does not infer relationships beyond the configured project's graph.
### Next gate
No further gate is planned. Measure actual graph-browser use before adding layout modes, exports,
remote access, or project-declared visualization templates.
## DFG-9 controlled application decision
### Decision