Add "branding/progress-templates"
191
branding%2Fprogress-templates.-.md
Normal file
191
branding%2Fprogress-templates.-.md
Normal file
@@ -0,0 +1,191 @@
|
|||||||
|
# Progress Block Templates
|
||||||
|
|
||||||
|
Templates for sprint progress visualization during execution.
|
||||||
|
|
||||||
|
**Version:** 1.0.0
|
||||||
|
**Created:** 2026-01-28
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## Sprint Progress Block
|
||||||
|
|
||||||
|
Display during sprint-start and sprint-status commands:
|
||||||
|
|
||||||
|
```
|
||||||
|
┌─ Sprint Progress ────────────────────────────────────────────────┐
|
||||||
|
│ Sprint [N]: [Title] │
|
||||||
|
│ ████████████░░░░░░░░░░░░░░░░░░ [XX]% complete │
|
||||||
|
│ │
|
||||||
|
│ ✅ Done: [n] ⏳ Active: [n] ⬚ Pending: [n] │
|
||||||
|
│ │
|
||||||
|
│ Current: │
|
||||||
|
│ #[num] ⏳ [Issue title truncated to fit...] │
|
||||||
|
│ #[num] ⏳ [Issue title truncated to fit...] │
|
||||||
|
└──────────────────────────────────────────────────────────────────┘
|
||||||
|
```
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## Progress Bar Calculation
|
||||||
|
|
||||||
|
**Width:** 30 characters
|
||||||
|
|
||||||
|
```python
|
||||||
|
def render_progress_bar(completed: int, total: int) -> str:
|
||||||
|
if total == 0:
|
||||||
|
percentage = 0
|
||||||
|
else:
|
||||||
|
percentage = (completed / total) * 100
|
||||||
|
|
||||||
|
filled = round(percentage * 30 / 100)
|
||||||
|
empty = 30 - filled
|
||||||
|
|
||||||
|
bar = '█' * filled + '░' * empty
|
||||||
|
return f"{bar} {percentage:.0f}% complete"
|
||||||
|
```
|
||||||
|
|
||||||
|
**Examples:**
|
||||||
|
|
||||||
|
| Completed | Total | Percentage | Bar |
|
||||||
|
|-----------|-------|------------|-----|
|
||||||
|
| 0 | 10 | 0% | `░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░ 0%` |
|
||||||
|
| 3 | 10 | 30% | `█████████░░░░░░░░░░░░░░░░░░░░░ 30%` |
|
||||||
|
| 5 | 10 | 50% | `███████████████░░░░░░░░░░░░░░░ 50%` |
|
||||||
|
| 8 | 10 | 80% | `████████████████████████░░░░░░ 80%` |
|
||||||
|
| 10 | 10 | 100% | `██████████████████████████████ 100%` |
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## Full Progress Block Example
|
||||||
|
|
||||||
|
```
|
||||||
|
┌─ Sprint Progress ────────────────────────────────────────────────┐
|
||||||
|
│ Sprint 6: Visual Branding Overhaul │
|
||||||
|
│ ████████████░░░░░░░░░░░░░░░░░░ 40% complete │
|
||||||
|
│ │
|
||||||
|
│ ✅ Done: 4 ⏳ Active: 2 ⬚ Pending: 4 │
|
||||||
|
│ │
|
||||||
|
│ Current: │
|
||||||
|
│ #271 ⏳ Implement header component │
|
||||||
|
│ #272 ⏳ Update agent instructions │
|
||||||
|
└──────────────────────────────────────────────────────────────────┘
|
||||||
|
```
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## When to Display Progress Block
|
||||||
|
|
||||||
|
| Event | Display Progress Block |
|
||||||
|
|-------|------------------------|
|
||||||
|
| `/sprint-start` begins | Yes - initial state |
|
||||||
|
| Issue completed | Yes - updated counts |
|
||||||
|
| `/sprint-status` called | Yes - current state |
|
||||||
|
| Before execution prompt | Yes - show what's active |
|
||||||
|
| Batch complete | Yes - show batch transition |
|
||||||
|
| `/sprint-close` | Yes - final summary |
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## Batch Progress Display
|
||||||
|
|
||||||
|
During parallel execution, show batch progress:
|
||||||
|
|
||||||
|
```
|
||||||
|
┌─ Sprint Progress ────────────────────────────────────────────────┐
|
||||||
|
│ Sprint 6: Visual Branding Overhaul │
|
||||||
|
│ ████████████████████░░░░░░░░░░ 67% complete │
|
||||||
|
│ │
|
||||||
|
│ ✅ Done: 4 ⏳ Active: 2 ⬚ Pending: 0 │
|
||||||
|
│ │
|
||||||
|
│ Batch 2 of 3: │
|
||||||
|
│ #273 ⏳ Update projman commands (75%) │
|
||||||
|
│ #274 ⏳ Add progress block to orchestrator (50%) │
|
||||||
|
│ │
|
||||||
|
│ ✅ Batch 1 complete | ⬚ Batch 3 waiting │
|
||||||
|
└──────────────────────────────────────────────────────────────────┘
|
||||||
|
```
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## Compact Progress (For Inline Updates)
|
||||||
|
|
||||||
|
When space is limited or for inline status:
|
||||||
|
|
||||||
|
```
|
||||||
|
Sprint 6: ████████████░░░░░░░░░░░░░░░░░░ 40% (4/10) | ⏳ #271, #272
|
||||||
|
```
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## Issue Status Line Format
|
||||||
|
|
||||||
|
For current/active issues in progress block:
|
||||||
|
|
||||||
|
```
|
||||||
|
#[issue_number] [status_icon] [title (max 50 chars)]
|
||||||
|
```
|
||||||
|
|
||||||
|
**Status icons:**
|
||||||
|
- `⏳` - In progress
|
||||||
|
- `🚫` - Blocked
|
||||||
|
- `⬚` - Pending (waiting in queue)
|
||||||
|
|
||||||
|
**Title truncation:** Truncate at 50 characters with `...` if longer.
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## Integration with Orchestrator Agent
|
||||||
|
|
||||||
|
Add this section to `plugins/projman/agents/orchestrator.md`:
|
||||||
|
|
||||||
|
```markdown
|
||||||
|
### Sprint Progress Block
|
||||||
|
|
||||||
|
**Display progress block after header during sprint execution.**
|
||||||
|
|
||||||
|
**When to Display:**
|
||||||
|
- At start of sprint-start command
|
||||||
|
- After each issue completion
|
||||||
|
- Before generating next execution prompt
|
||||||
|
- When user requests status
|
||||||
|
- In final sprint summary
|
||||||
|
|
||||||
|
**Data Sources:**
|
||||||
|
- `list_issues(milestone=current)` - Get all sprint issues
|
||||||
|
- `get_milestone(milestone_id)` - Get sprint metadata
|
||||||
|
- Issue labels for status (Status/In-Progress, etc.)
|
||||||
|
|
||||||
|
**Calculation:**
|
||||||
|
- Total: Count all issues in milestone
|
||||||
|
- Done: Count closed issues
|
||||||
|
- Active: Count issues with Status/In-Progress label
|
||||||
|
- Pending: Total - Done - Active
|
||||||
|
|
||||||
|
See: [[branding/progress-templates]] for format specification.
|
||||||
|
```
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## Integration with sprint-status Command
|
||||||
|
|
||||||
|
Add this section to `plugins/projman/commands/sprint-status.md`:
|
||||||
|
|
||||||
|
```markdown
|
||||||
|
## Visual Output
|
||||||
|
|
||||||
|
Display header followed by progress block:
|
||||||
|
|
||||||
|
[Header from branding/header-templates]
|
||||||
|
|
||||||
|
[Progress block from branding/progress-templates]
|
||||||
|
|
||||||
|
Then show detailed breakdown (existing format).
|
||||||
|
```
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## Related Pages
|
||||||
|
|
||||||
|
- [[branding/visual-spec]] - Central visual specification
|
||||||
|
- [[branding/plugin-registry]] - Plugin icons and display names
|
||||||
|
- [[branding/header-templates]] - Copy-paste header templates
|
||||||
Reference in New Issue
Block a user