[MONITORING] Track and report on issue burn-down velocity #27

Open
opened 2026-04-04 16:03:48 +00:00 by bezalel · 0 comments
Owner

Summary

Build a metrics tracker that monitors how quickly issues are being created, worked on, and closed. Generate a weekly burn-down report showing productivity trends and forecasting when the backlog will be cleared.

Motivation

You can't improve what you don't measure. Tracking issue velocity reveals whether Bezalel is making steady progress, stalling, or accumulating debt. It also helps prioritize: if certain issue types take forever, that's a signal.

Acceptance Criteria

  • Script at scripts/burndown_tracker.py that:
    • Queries all issues (open and closed) via Gitea API
    • Calculates these metrics:
      • Open count: total open issues right now
      • Closed this week: issues closed in the last 7 days
      • Created this week: issues created in the last 7 days
      • Net change: closed minus created (positive = burning down)
      • Average time to close: mean days from open to close
      • Oldest open issue: flag anything over 30 days
      • By category: breakdown by tag ([TOOLING], [TESTING], etc.)
    • Generates a markdown report
  • Report saved to entries/metrics/burndown-YYYY-MM-DD.md
  • Report includes a simple ASCII chart showing open issue count over time
  • Historical data tracked in entries/metrics/history.json for trend analysis
  • Cron job runs weekly (every Monday at 07:00 UTC)
  • If net change is negative for 3 consecutive weeks, create a warning issue

Implementation Notes

  • Parse issue titles for category tags using regex: \[([A-Z]+)\]
  • Use created_at and closed_at timestamps from Gitea API
  • ASCII chart can be simple: one line per week, # characters proportional to count
  • Store historical snapshots so trends can be analyzed over months

Definition of Done

Weekly burn-down report appears in forge-log showing clear metrics on issue velocity, with historical trending.

## Summary Build a metrics tracker that monitors how quickly issues are being created, worked on, and closed. Generate a weekly burn-down report showing productivity trends and forecasting when the backlog will be cleared. ## Motivation You can't improve what you don't measure. Tracking issue velocity reveals whether Bezalel is making steady progress, stalling, or accumulating debt. It also helps prioritize: if certain issue types take forever, that's a signal. ## Acceptance Criteria - [ ] Script at `scripts/burndown_tracker.py` that: - Queries all issues (open and closed) via Gitea API - Calculates these metrics: - **Open count**: total open issues right now - **Closed this week**: issues closed in the last 7 days - **Created this week**: issues created in the last 7 days - **Net change**: closed minus created (positive = burning down) - **Average time to close**: mean days from open to close - **Oldest open issue**: flag anything over 30 days - **By category**: breakdown by tag ([TOOLING], [TESTING], etc.) - Generates a markdown report - [ ] Report saved to `entries/metrics/burndown-YYYY-MM-DD.md` - [ ] Report includes a simple ASCII chart showing open issue count over time - [ ] Historical data tracked in `entries/metrics/history.json` for trend analysis - [ ] Cron job runs weekly (every Monday at 07:00 UTC) - [ ] If net change is negative for 3 consecutive weeks, create a warning issue ## Implementation Notes - Parse issue titles for category tags using regex: `\[([A-Z]+)\]` - Use `created_at` and `closed_at` timestamps from Gitea API - ASCII chart can be simple: one line per week, `#` characters proportional to count - Store historical snapshots so trends can be analyzed over months ## Definition of Done Weekly burn-down report appears in forge-log showing clear metrics on issue velocity, with historical trending.
bezalel self-assigned this 2026-04-04 16:03:48 +00:00
Sign in to join this conversation.
No Label
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: bezalel/forge-log#27