feat: improve SVG diagram embedding and add release automation#1
feat: improve SVG diagram embedding and add release automation#1
Conversation
- Add descriptive alt text to SVG image references (e.g. ![User diagram])
- Add diagramEmbed option ('file' | 'inline') for embedding SVG directly in markdown
- Wrap all diagram outputs in responsive container div for horizontal scrolling
- Enhance SKILL.md with ERD, relationships table, policy matrix, field summaries
- Fix mixin-inherited fields not appearing in SKILL.md via getAllFields
- Route SKILL.md through SVG rendering pipeline
- Set up Release Please for automated versioning and changelog generation
- Document conventional commit format in CONTRIBUTING.md
|
Caution Review failedThe pull request is closed. ℹ️ Recent review info⚙️ Run configurationConfiguration used: defaults Review profile: CHILL Plan: Pro Run ID: 📒 Files selected for processing (1)
📝 WalkthroughWalkthroughThis pull request introduces release automation infrastructure via GitHub Actions and release-please configuration, adds a new Changes
Sequence Diagram(s)sequenceDiagram
participant Gen as Generator
participant DP as Diagram Processor
participant FS as File System
participant Out as Markdown Output
rect rgba(100, 150, 200, 0.5)
Note over Gen,Out: File-based Embedding (Default)
Gen->>DP: processDiagrams(..., embed='file')
DP->>FS: Queue SVG file for writing
DP->>Out: Insert markdown image reference<br/>
DP-->>Out: Wrap in responsive container
end
rect rgba(150, 200, 100, 0.5)
Note over Gen,Out: Inline Embedding
Gen->>DP: processDiagrams(..., embed='inline')
DP->>Out: Inline SVG content directly<br/>into markdown
DP-->>Out: Wrap in responsive container
DP-->>Out: Add collapsible Mermaid source<br/>(if format='both')
end
sequenceDiagram
participant Gen as Generator
participant SP as Skill Page Renderer
participant Out as Markdown Output
rect rgba(200, 150, 100, 0.5)
Note over Gen,Out: Enhanced Skill Page Rendering
Gen->>SP: renderSkillPage(SkillPageProps + relations)
SP->>Out: Render Relationships Table<br/>(From, Field, To, Cardinality)
SP->>Out: Render Access Policy Matrix<br/>(Model x Operation x Rule)
SP->>SP: topologicalSort(models by FK)
SP->>Out: Render Creation Order<br/>based on FK dependencies
SP->>Out: Render Include Patterns<br/>& Field Summaries
SP->>Out: Consolidated Validation Section<br/>(inherited from constraints)
end
Estimated Code Review Effort🎯 4 (Complex) | ⏱️ ~55 minutes Poem
🚥 Pre-merge checks | ✅ 3✅ Passed checks (3 passed)
✏️ Tip: You can configure your own custom pre-merge checks in the settings. ✨ Finishing Touches
🧪 Generate unit tests (beta)
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
Suppress jsonc/sort-keys for package.json to prevent the lint rule from re-alphabetizing the exports map and breaking TypeScript resolution.
Summary
![User diagram]) instead of generic![diagram]for better accessibility and hover tooltipsdiagramEmbedplugin option ('file'|'inline'). When set to'inline', SVG XML is embedded directly in the markdown, making pages fully self-contained with no companion files<div style="max-width:100%;overflow-x:auto">so large diagrams scroll horizontally instead of overflowinggetAllFields. Routed SKILL.md through the SVG rendering pipelineTest plan
pnpm test)pnpm run typecheck)pnpm run lint)diagram-svg.test.ts)Summary by CodeRabbit
New Features
diagramEmbedconfiguration option to control SVG diagram display ("file" for external references or "inline" for embedded content)Documentation