Per-module diagrams missing cross-module dependency arrows #12

Closed
opened 2026-06-17 06:43:36 +00:00 by GKaszewski · 0 comments
Owner

Problem

Per-module diagram files (e.g. aiss_worker.mmd) show zero relationships even when the module imports from sibling modules. Cross-module relationships are captured correctly in overview.mmd but dropped when rendering isolated per-module files.

Example: aiss_worker imports WidgetType and WidgetStatus from commons, and WidgetJobData --> WidgetType appears in overview — but aiss_worker.mmd shows no edges at all.

What to build

In per-module rendered files, emit module-level dependency arrows to any sibling module that this module's types depend on. Show them as module-to-module edges (e.g. aiss_worker --> commons) rather than individual type edges, to keep the diagram readable.

Acceptance criteria

  • Per-module files show outgoing module-level arrows for each sibling module depended on
  • Arrow label shows the count of cross-module type relationships (e.g. aiss_worker --"3 deps"--> commons)
  • Intra-module type relationships still shown in full detail
  • Works for both Mermaid and ASCII renderers
  • Tests verify cross-module edges appear in per-module output

Blocked by

None - can start immediately

## Problem Per-module diagram files (e.g. `aiss_worker.mmd`) show zero relationships even when the module imports from sibling modules. Cross-module relationships are captured correctly in `overview.mmd` but dropped when rendering isolated per-module files. Example: `aiss_worker` imports `WidgetType` and `WidgetStatus` from `commons`, and `WidgetJobData --> WidgetType` appears in overview — but `aiss_worker.mmd` shows no edges at all. ## What to build In per-module rendered files, emit module-level dependency arrows to any sibling module that this module's types depend on. Show them as module-to-module edges (e.g. `aiss_worker --> commons`) rather than individual type edges, to keep the diagram readable. ## Acceptance criteria - [ ] Per-module files show outgoing module-level arrows for each sibling module depended on - [ ] Arrow label shows the count of cross-module type relationships (e.g. `aiss_worker --"3 deps"--> commons`) - [ ] Intra-module type relationships still shown in full detail - [ ] Works for both Mermaid and ASCII renderers - [ ] Tests verify cross-module edges appear in per-module output ## Blocked by None - can start immediately
GKaszewski added the P1 label 2026-06-17 06:46:13 +00:00
Sign in to join this conversation.
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: GKaszewski/archlens#12