feat: dogfood Understand Anything on this repo (#508)#1
Closed
ethpran wants to merge 1 commit into
Closed
Conversation
Run the plugin on itself and commit the result so the repo carries a live,
maintained knowledge graph of its own architecture — useful for onboarding,
PR-review context, and as a real-world example of the tool.
What's committed (.understand-anything/):
- knowledge-graph.json — structural graph: 674 nodes, 960 edges,
8 architectural layers, 12-step guided tour (includes this PR's own
scripts/check-graph.mjs)
- domain-graph.json — business-flow view: 7 domains, 12 flows, 45 steps,
version-matched to the knowledge graph via project.gitCommitHash
- meta.json, fingerprints.json — analysis baseline + structural fingerprints
(400 files) for incremental updates
- config.json — { "autoUpdate": true }
- .understandignore — analysis scope (built-in defaults only)
Following the README "Share the Graph with Your Team" guidance, .gitignore is
scoped to drop only the pipeline's local scratch (intermediate/, tmp/,
.trash-*/, diff-overlay.json) and track the rest.
Keeping it fresh:
- Auto-update enabled via config.json. The plugin's bundled hooks fire the
incremental auto-update flow on commit (and a staleness check at session
start), spending zero LLM tokens on cosmetic changes. NOTE: the hook
refreshes only knowledge-graph.json.
- The domain graph is derived from the knowledge graph and has no incremental
path, so it is NOT auto-refreshed. Every commit that meaningfully changes
structure should run /understand (or let the hook run) AND /understand-domain,
then commit the refreshed domain-graph.json. Documented in CLAUDE.md and
CONTRIBUTING.md.
CI guard (scripts/check-graph.mjs, wired into ci.yml) — deterministic, zero
LLM tokens:
- schema-validates both committed graphs (blocking),
- rebuilds structural fingerprints for the current source tree and warns on
drift from fingerprints.json (advisory),
- warns when domain-graph.json's project.gitCommitHash no longer matches
meta.json — i.e. the domain view is behind the knowledge graph (advisory).
Pass --strict to make the advisory checks blocking. It reuses core's
validateGraph, buildFingerprintStore/analyzeChanges, and createIgnoreFilter,
mirroring the auto-update hook's deterministic Phase 1. Graph regeneration is
an LLM task and deliberately stays off the PR path (local post-commit hook or
manual /understand + /understand-domain).
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
dee750f to
fe0fe2b
Compare
Owner
Author
|
Superseded by the upstream PR against the main repo: Egonex-AI#510. Closing this fork-internal PR. |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
What & why
Closes Egonex-AI#508 — "eat your own dog food." Runs the plugin on this repo and commits the result, so the repo carries a live, maintained knowledge graph of its own architecture. Useful for onboarding, PR-review context, and as a real-world example of the tool.
Committed artifacts (
.understand-anything/)knowledge-graph.json— structural graph: 674 nodes, 960 edges, 8 architectural layers, 12-step guided tour (includes this PR's ownscripts/check-graph.mjs)domain-graph.json— business-flow view: 7 domains, 12 flows, 45 steps, version-matched to the knowledge graph viaproject.gitCommitHashmeta.json,fingerprints.json— analysis baseline + structural fingerprints (400 files) for incremental updatesconfig.json—{ "autoUpdate": true }.understandignore— analysis scopePer the README's Share the Graph with Your Team guidance,
.gitignoreis scoped to drop only the pipeline's local scratch (intermediate/,tmp/,.trash-*/,diff-overlay.json) and track the rest.Keeping it fresh
config.json). The plugin's bundled hooks fire the incremental auto-update on commit (+ a staleness check at session start), spending zero LLM tokens on cosmetic changes. The hook refreshes onlyknowledge-graph.json./understand(or let the hook run) and/understand-domain, then commit the refresheddomain-graph.json. Documented in CLAUDE.md and CONTRIBUTING.md.CI guard —
scripts/check-graph.mjs(wired intoci.yml)Deterministic, zero LLM tokens:
fingerprints.json(advisory),domain-graph.json'sproject.gitCommitHashno longer matchesmeta.json— i.e. the domain view is behind the knowledge graph (advisory).--strictmakes the advisory checks blocking. Reuses core'svalidateGraph,buildFingerprintStore/analyzeChanges, andcreateIgnoreFilter, mirroring the auto-update hook's deterministic Phase 1. Graph regeneration is an LLM task and deliberately stays off the PR path.This PR practices what it documents: after adding
check-graph.mjs, the graph and domain view were regenerated to include it, so the guard runs clean (✓ schema · ✓ in sync · ✓ domain in sync).🤖 Generated with Claude Code