You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
Repository navigation
[Bug]: Skill suggests --force on a refused shrink but never passes force=True to to_json() #4777
I have checked the Troubleshooting section in the README
What happened?
When to_json() refuses to shrink graph.json (#479 shrink guard), the generated skill prints:
If this shrink is intentional (you deleted files), re-run a full build with --force.
Neither export in the skill passes force=True, although to_json(..., *, force=False) supports it:
Step 4: wrote = to_json(G, communities, 'graphify-out/graph.json')
Step 5 (re-export with community labels): wrote = to_json(G, communities, 'graphify-out/graph.json', community_labels=labels)
Source fragment on v8: tools/skillgen/fragments/core/core.md (lines 434 and 521 at 92741d1).
Following the advice therefore hits the same refusal, and the skill has no working recovery path for an intentional shrink (other than deleting graphify-out/graph.json by hand).
Expected: keep the shrink guard by default, and pass force=True to both exports only when the user explicitly invoked the skill with --force.
[graphify] WARNING: Refusing to overwrite — saved semantic node(s) are missing from the new graph: n10, n11, ..., n49.
first write: True
skill Step 4 write: False
with force=True: True
Graphify version
0.9.95
Operating System
macOS
Python Version
3.13
Installation Method
uv tool install (recommended)
Additional Environment Details
Python 3.14.10 from the uv tool environment. No provider environment variables set. Reproduced in a fresh empty directory.
Additional context
Related but different: #2833 (update --force reporting), #2976 (graphify label path), #2436 (cluster-only success message when to_json refuses).
Activity
github-actions commentedon Oct 26, 2026
Thanks for opening this issue, @ErwanBt. A maintainer will take a look soon.
If you would like to discuss it in real time, come say hi on our Discord server. For longer-form questions and ideas there is also GitHub Discussions.
To help us triage, please make sure the report includes what you expected, what actually happened, and the steps (and a small sample) to reproduce it.