feat(#77): group mermaid nodes by file into subgraph blocks#82
Conversation
MermaidCompiler.compile() now detects when nodes span multiple files and wraps each group in a subgraph block labelled by filename. Single-file graphs render flat as before (backward compatible). Also extracted _normalize_id to module level — it was a pure function with no dependency on self, and the move removes SLF001 in tests. Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
|
Warning You have reached your daily quota limit. Please wait up to 24 hours and I will start processing your requests again! |
guardian is defined under [dependency-groups], not [project.optional-dependencies]. uv sync --extra guardian fails; uv sync --group guardian is correct. Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
…groups" This reverts commit 9a0c236.
…lexity SonarQube reported compile() at complexity 19 (limit 15). Extracted _render_node_line, _render_subgraphs, _render_edges — compile() is now a thin dispatcher under the threshold. Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
gemini-2.0-flash is under heavy load and dropping connections. gemini-2.5-flash is the current stable default. Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This reverts commit bc6ae27.
|
|
/guardian review |
Pull Request Review: Mermaid Compiler Refactor & Subgraph SupportStatus: 🛡️ Guardian's SummaryThe refactor of the The implementation correctly respects the project Ontology, specifically regarding the handling of 🔍 Detailed Findings1. Correctness: Potential Missing Import
2. Type Safety & Determinism
3. Architectural Alignment
4. Testing Mandate
🛠️ Final Recommendations
Once the import is verified, this PR is ready for merge. |



Summary
MermaidCompiler.compile()now groups nodes byfile_pathintosubgraphblocks when the graph spans multiple files_normalize_idto module level (was a pure function with noselfdependency)Before / After
Before (flat, 8 nodes from 4 files — hard to read):
After (grouped by file):
Test plan
/guardian review👀Closes #77