chore: gitignore the knowledge-graph build artifact
`.fusion-knowledge/` is `fn knowledge-graph build` output (FN-8920 memory epic):
~85MB of generated JSON, rewritten on every build. edges.json alone is 43MB,
past GitHub's 50MB warning threshold.
It is deterministic and fully regenerable from source — the manifest's SHA-256
fingerprints drive incremental rebuilds — so tracking it preserves nothing a
rebuild cannot reproduce, while adding irreversible, compounding history bloat to
every clone and CI checkout.
docs/knowledge-graph.md previously left this to the operator ("it is not
ignored"); that guidance is updated here so the doc and .gitignore agree. An
operator who explicitly wants a snapshot in history can still force one with
`git add -f .fusion-knowledge/graph`.
Nothing under the path was ever tracked, so no index purge is needed.
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
This commit is contained in:
13
.gitignore
vendored
13
.gitignore
vendored
@@ -116,3 +116,16 @@ packages/desktop/deploy/
|
||||
# vi.mock interception for imports nested inside the bundle; see the script
|
||||
# comment (scripts/build-engine-core-gate-bundle.mjs) for the full repro.
|
||||
packages/core/.gate-bundle/
|
||||
|
||||
# FNXC:KnowledgeGraph 2026-08-10-18:32:
|
||||
# `fn knowledge-graph build` output (FN-8920 memory epic). Deterministic and fully
|
||||
# regenerable from source, with SHA-256 fingerprints in the manifest driving
|
||||
# incremental rebuilds — so committing it preserves nothing that a rebuild cannot
|
||||
# reproduce. It is ~85MB (edges.json alone is 43MB, past GitHub's 50MB warning
|
||||
# threshold) and rewritten on every build, so tracking it would add irreversible,
|
||||
# compounding history bloat to every clone and CI checkout.
|
||||
# Operator decision, 2026-08-10: ignore it. docs/knowledge-graph.md previously said
|
||||
# "it is not ignored" and left committing to the operator; that guidance is updated
|
||||
# alongside this entry. An operator who does want a snapshot committed can still
|
||||
# force it with `git add -f .fusion-knowledge/graph`.
|
||||
.fusion-knowledge/
|
||||
|
||||
@@ -8,7 +8,9 @@
|
||||
|
||||
The default `knowledgeGraphDir` is `.fusion-knowledge/graph`, deliberately outside ignored `.fusion/`. It contains `nodes.json`, `edges.json`, and `manifest.json`; all use sorted, LF JSON. Nodes and edges are written before the manifest so a torn write safely triggers a full rebuild. The manifest records SHA-256 fingerprints and import references, enabling changed files only to be re-extracted and deleted file ownership to be pruned.
|
||||
|
||||
The artifact is intentionally not committed by this change. Operators may review and commit it with `git add .fusion-knowledge/graph`; it is not ignored.
|
||||
The artifact is not committed. As of 2026-08-10 `.fusion-knowledge/` is gitignored: the graph is deterministic and fully regenerable from source (the manifest's SHA-256 fingerprints drive incremental rebuilds), so tracking it preserves nothing a rebuild cannot reproduce, while costing ~85MB of irreversible, compounding history bloat on every clone and CI checkout — `edges.json` alone is 43MB, past GitHub's 50MB warning threshold. Regenerate it with `fn knowledge-graph build` rather than pulling it.
|
||||
|
||||
An operator who explicitly wants a snapshot in history can still force one with `git add -f .fusion-knowledge/graph`; prefer a rebuild.
|
||||
|
||||
## Model
|
||||
|
||||
|
||||
Reference in New Issue
Block a user