|
| 1 | +CUDA Python CI Pipeline SVG Regeneration Instructions |
| 2 | +==================================================== |
| 3 | + |
| 4 | +This file contains the prompt and requirements for regenerating ci-pipeline.svg with the same styling and content. |
| 5 | + |
| 6 | +## Styling Requirements |
| 7 | +- Hand-drawn Excalidraw-style design with rough, sketchy borders |
| 8 | +- Comic Sans MS font family for all text |
| 9 | +- Imperfect lines and curves that mimic hand-drawn aesthetics |
| 10 | +- Canvas size: 900x800 pixels |
| 11 | +- Color scheme: |
| 12 | + - Trigger Events: #e8f4fd background, #2196F3 border, #1976D2 text |
| 13 | + - Build Stage: #f3e5f5 background, #9C27B0 border, #7B1FA2 text |
| 14 | + - Artifact Storage: #fff3e0 background, #FF9800 border, #F57C00 text |
| 15 | + - Test Stage: #e8f5e8 background, #4CAF50 border, #388E3C text |
| 16 | + - Release Pipeline: #ffebee background, #f44336 border, #D32F2F text |
| 17 | + |
| 18 | +## Content Structure |
| 19 | +1. **Title**: "CUDA Python CI Pipeline Flow" |
| 20 | + |
| 21 | +2. **Trigger Events** (top blue box): |
| 22 | + - Push to main branch |
| 23 | + - Pull request |
| 24 | + - Push to pull-request/* branches |
| 25 | + - Manual workflow dispatch |
| 26 | + |
| 27 | +3. **Build Stage** (purple box): |
| 28 | + - Three platform boxes: linux-64 (Self-hosted), linux-aarch64 (Self-hosted), win-64 (GitHub-hosted) |
| 29 | + - Details: Python versions 3.9-3.13, CUDA 13.0.0 (build-time) |
| 30 | + - Components: cuda-core, cuda-bindings, cuda-pathfinder, cuda-python |
| 31 | + |
| 32 | +4. **Artifact Storage** (orange box): |
| 33 | + - GitHub Artifacts box: Wheel files (.whl), Test artifacts, Documentation (30-day retention) |
| 34 | + - GitHub Cache box: Mini CTK cache |
| 35 | + |
| 36 | +5. **Test Stage** (green box): |
| 37 | + - Three platform boxes: linux-64 (Self-hosted), linux-aarch64 (Self-hosted), win-64 (GitHub-hosted) |
| 38 | + - Details: Download wheels from artifacts, Test against multiple CUDA runtime versions, Run Python unit tests, Cython tests, examples |
| 39 | + - Artifact Flows (in red text): |
| 40 | + • cuda-pathfinder: main → backport |
| 41 | + • cuda-bindings: backport → main |
| 42 | + |
| 43 | +6. **Release Pipeline** (red box): |
| 44 | + - Three sequential boxes: Validation → Publishing → Documentation |
| 45 | + - Validation: Artifact integrity, Git tag verification |
| 46 | + - Publishing: PyPI/TestPyPI, Component or all releases |
| 47 | + - Documentation: GitHub Pages, Release notes |
| 48 | + - Details: Manual workflow dispatch with run ID, Supports individual component or full releases |
| 49 | + |
| 50 | +## Arrow Requirements |
| 51 | +- Main flow arrows: Trigger → Build → Artifact → Test → Release |
| 52 | +- Additional artifact flow arrows (dashed, orange #FF9800): |
| 53 | + - From GitHub Cache (mini CTK) back to Build Stage with "mini CTK reuse" label |
| 54 | + - From GitHub Artifacts (wheels) to Release Pipeline with "wheel fetch" label |
| 55 | +- Arrow marker definition with hand-drawn style |
| 56 | +- Use stroke-dasharray="5,3" for artifact flow arrows |
| 57 | + |
| 58 | +## Key Features |
| 59 | +- All boxes use rough, hand-drawn paths (not perfect rectangles) |
| 60 | +- Text should be properly sized and positioned within boxes |
| 61 | +- Platform boxes within each stage should be clearly separated |
| 62 | +- Maintain consistent spacing and alignment |
| 63 | +- Use appropriate font sizes: 16pt title, 14pt stage headers, 12pt platform names, 11pt details, 9-10pt smaller text |
| 64 | + |
| 65 | +## Text Positioning |
| 66 | +- Use text-anchor="middle" for centered headers |
| 67 | +- Use text-anchor="start" for left-aligned bullet points |
| 68 | +- Ensure all text fits within their enclosing boxes |
| 69 | +- Use transforms for angled text labels on artifact flow arrows |
0 commit comments