Skip to content

skill: use graph loader compatibility helper - #4

Merged
andrebrait merged 1 commit into
issue/3254-refresh-graphify-fork-0.9.57from
fix/graphify-skill-instructions
Sep 10, 2026
Merged

andrebrait merged 1 commit into
issue/3254-refresh-graphify-fork-0.9.57from
fix/graphify-skill-instructions

Conversation

@andrebrait

Copy link
Copy Markdown
Member

Summary

  • replace direct networkx.node_link_graph(..., edges='links') calls in generated skills with Graphify's shared compatibility loader
  • keep both clustered links and raw edges graph shapes working across supported NetworkX releases
  • add a generator regression guard and sanction the audited monolith delta

Verification

  • uv run pytest tests/test_skillgen.py -q — 66 passed
  • uv run python -m tools.skillgen --check — 134 artifacts match
  • uv run python -m tools.skillgen --monolith-roundtrip — passed
  • frozen regression test 81b691a7181b4699c75cf8117d95b72e47b08cb9 ran red before the fragment edits and green unchanged afterward
  • NetworkX 3.6.1 probe confirmed its default edge key is edges; load_node_link_graph loaded both links and edges fixtures

@andrebrait

Copy link
Copy Markdown
Member Author

@coderabbitai review

Copilot AI left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🟢 Approval recommended

The changes consistently route graph.json deserialization through the existing compatibility helper and include a test guard to prevent regressions, with no functional issues found in the updated snippets.

Pull request overview

This PR updates the skill generator and the committed/generated skill artifacts to load graphify-out/graph.json via Graphify’s shared load_node_link_graph compatibility helper, so graphs written with either links or edges deserialize cleanly across supported NetworkX versions.

Changes:

  • Replaced direct json_graph.node_link_graph(..., edges='links') usage in skill snippets with graphify.paths.load_node_link_graph(...).
  • Added a sanctioned monolith-diff predicate for the graph-loader swap to keep the monolith roundtrip guard stable.
  • Added a regression assertion in tests/test_skillgen.py to prevent reintroducing direct json_graph.node_link_graph(...) calls in rendered artifacts.
File summaries
File Description
tools/skillgen/gen.py Sanctions the json_graph.node_link_graphload_node_link_graph monolith delta via a dedicated predicate.
tools/skillgen/fragments/references/shared/update.md Updates the references “update” fragment to use the shared loader in the inline Python snippet.
tools/skillgen/fragments/references/query/default.md Updates the references “query” fragment to use the shared loader in the inline Python snippets.
tools/skillgen/fragments/core/devin.md Updates the devin core fragment to use the shared loader in all inline graph-load snippets.
tools/skillgen/fragments/core/aider.md Updates the aider core fragment to use the shared loader in all inline graph-load snippets.
tools/skillgen/expected/graphify__skills__windows__references__update.md Regenerates expected artifact to use load_node_link_graph in the update reference snippet.
tools/skillgen/expected/graphify__skills__windows__references__query.md Regenerates expected artifact to use load_node_link_graph in query reference snippets.
tools/skillgen/expected/graphify__skills__vscode__references__update.md Regenerates expected artifact to use load_node_link_graph in the update reference snippet.
tools/skillgen/expected/graphify__skills__vscode__references__query.md Regenerates expected artifact to use load_node_link_graph in query reference snippets.
tools/skillgen/expected/graphify__skills__trae__references__update.md Regenerates expected artifact to use load_node_link_graph in the update reference snippet.
tools/skillgen/expected/graphify__skills__trae__references__query.md Regenerates expected artifact to use load_node_link_graph in query reference snippets.
tools/skillgen/expected/graphify__skills__pi__references__update.md Regenerates expected artifact to use load_node_link_graph in the update reference snippet.
tools/skillgen/expected/graphify__skills__pi__references__query.md Regenerates expected artifact to use load_node_link_graph in query reference snippets.
tools/skillgen/expected/graphify__skills__opencode__references__update.md Regenerates expected artifact to use load_node_link_graph in the update reference snippet.
tools/skillgen/expected/graphify__skills__opencode__references__query.md Regenerates expected artifact to use load_node_link_graph in query reference snippets.
tools/skillgen/expected/graphify__skills__kiro__references__update.md Regenerates expected artifact to use load_node_link_graph in the update reference snippet.
tools/skillgen/expected/graphify__skills__kiro__references__query.md Regenerates expected artifact to use load_node_link_graph in query reference snippets.
tools/skillgen/expected/graphify__skills__kilo__references__update.md Regenerates expected artifact to use load_node_link_graph in the update reference snippet.
tools/skillgen/expected/graphify__skills__kilo__references__query.md Regenerates expected artifact to use load_node_link_graph in query reference snippets.
tools/skillgen/expected/graphify__skills__droid__references__update.md Regenerates expected artifact to use load_node_link_graph in the update reference snippet.
tools/skillgen/expected/graphify__skills__droid__references__query.md Regenerates expected artifact to use load_node_link_graph in query reference snippets.
tools/skillgen/expected/graphify__skills__copilot__references__update.md Regenerates expected artifact to use load_node_link_graph in the update reference snippet.
tools/skillgen/expected/graphify__skills__copilot__references__query.md Regenerates expected artifact to use load_node_link_graph in query reference snippets.
tools/skillgen/expected/graphify__skills__codex__references__update.md Regenerates expected artifact to use load_node_link_graph in the update reference snippet.
tools/skillgen/expected/graphify__skills__codex__references__query.md Regenerates expected artifact to use load_node_link_graph in query reference snippets.
tools/skillgen/expected/graphify__skills__claw__references__update.md Regenerates expected artifact to use load_node_link_graph in the update reference snippet.
tools/skillgen/expected/graphify__skills__claw__references__query.md Regenerates expected artifact to use load_node_link_graph in query reference snippets.
tools/skillgen/expected/graphify__skills__claude__references__update.md Regenerates expected artifact to use load_node_link_graph in the update reference snippet.
tools/skillgen/expected/graphify__skills__claude__references__query.md Regenerates expected artifact to use load_node_link_graph in query reference snippets.
tools/skillgen/expected/graphify__skills__amp__references__update.md Regenerates expected artifact to use load_node_link_graph in the update reference snippet.
tools/skillgen/expected/graphify__skills__amp__references__query.md Regenerates expected artifact to use load_node_link_graph in query reference snippets.
tools/skillgen/expected/graphify__skills__agents__references__update.md Regenerates expected artifact to use load_node_link_graph in the update reference snippet.
tools/skillgen/expected/graphify__skills__agents__references__query.md Regenerates expected artifact to use load_node_link_graph in query reference snippets.
tools/skillgen/expected/graphify__skill-devin.md Regenerates the expected devin monolith to use load_node_link_graph throughout.
tools/skillgen/expected/graphify__skill-aider.md Regenerates the expected aider monolith to use load_node_link_graph throughout.
tests/test_skillgen.py Adds a regression guard ensuring rendered artifacts don’t contain direct json_graph.node_link_graph(...) calls.
graphify/skills/windows/references/update.md Updates committed Windows “update” reference skill to use load_node_link_graph.
graphify/skills/windows/references/query.md Updates committed Windows “query” reference skill to use load_node_link_graph.
graphify/skills/vscode/references/update.md Updates committed VS Code “update” reference skill to use load_node_link_graph.
graphify/skills/vscode/references/query.md Updates committed VS Code “query” reference skill to use load_node_link_graph.
graphify/skills/trae/references/update.md Updates committed Trae “update” reference skill to use load_node_link_graph.
graphify/skills/trae/references/query.md Updates committed Trae “query” reference skill to use load_node_link_graph.
graphify/skills/pi/references/update.md Updates committed Pi “update” reference skill to use load_node_link_graph.
graphify/skills/pi/references/query.md Updates committed Pi “query” reference skill to use load_node_link_graph.
graphify/skills/opencode/references/update.md Updates committed OpenCode “update” reference skill to use load_node_link_graph.
graphify/skills/opencode/references/query.md Updates committed OpenCode “query” reference skill to use load_node_link_graph.
graphify/skills/kiro/references/update.md Updates committed Kiro “update” reference skill to use load_node_link_graph.
graphify/skills/kiro/references/query.md Updates committed Kiro “query” reference skill to use load_node_link_graph.
graphify/skills/kilo/references/update.md Updates committed Kilo “update” reference skill to use load_node_link_graph.
graphify/skills/kilo/references/query.md Updates committed Kilo “query” reference skill to use load_node_link_graph.
graphify/skills/droid/references/update.md Updates committed Droid “update” reference skill to use load_node_link_graph.
graphify/skills/droid/references/query.md Updates committed Droid “query” reference skill to use load_node_link_graph.
graphify/skills/copilot/references/update.md Updates committed Copilot “update” reference skill to use load_node_link_graph.
graphify/skills/copilot/references/query.md Updates committed Copilot “query” reference skill to use load_node_link_graph.
graphify/skills/codex/references/update.md Updates committed Codex “update” reference skill to use load_node_link_graph.
graphify/skills/codex/references/query.md Updates committed Codex “query” reference skill to use load_node_link_graph.
graphify/skills/claw/references/update.md Updates committed Claw “update” reference skill to use load_node_link_graph.
graphify/skills/claw/references/query.md Updates committed Claw “query” reference skill to use load_node_link_graph.
graphify/skills/claude/references/update.md Updates committed Claude “update” reference skill to use load_node_link_graph.
graphify/skills/claude/references/query.md Updates committed Claude “query” reference skill to use load_node_link_graph.
graphify/skills/amp/references/update.md Updates committed Amp “update” reference skill to use load_node_link_graph.
graphify/skills/amp/references/query.md Updates committed Amp “query” reference skill to use load_node_link_graph.
graphify/skills/agents/references/update.md Updates committed Agents “update” reference skill to use load_node_link_graph.
graphify/skills/agents/references/query.md Updates committed Agents “query” reference skill to use load_node_link_graph.
graphify/skill-devin.md Updates committed devin monolith to use load_node_link_graph throughout.
graphify/skill-aider.md Updates committed aider monolith to use load_node_link_graph throughout.
Review details
  • Files reviewed: 66/66 changed files
  • Comments generated: 0
  • Review effort level: Lite

💡 Add a code-review agent skill or configure MCP servers for context-aware, tailored reviews. Learn more in the docs.

@andrebrait

Copy link
Copy Markdown
Member Author

@coderabbitai review

@andrebrait

Copy link
Copy Markdown
Member Author

CodeRabbit did not respond to the initial review request or the one permitted retry. Proceeding with the independent condensed review and Copilot approval.

@andrebrait
andrebrait merged commit 73ac619 into issue/3254-refresh-graphify-fork-0.9.57 Sep 10, 2026
1 check passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants