Skip to content

pm Milestone type should support parent linking and progress tracking #155

Closed

Description

@unbraind

Issue

Milestones are a valuable PM type that was completely unused in our project until this audit. After creating them, we found that:

  1. No progress tracking: Milestones don't show progress (e.g., how many child epics/tasks are complete vs open).
  2. Calendar warning on create: Creating a Milestone without a deadline/reminder/event shows a warning 'Milestone has no deadline/reminder/event — it will not appear on the calendar.' This is correct but the warning could be more helpful by suggesting the exact command to add a deadline.
  3. Child item count: It would be useful if pm get <milestone_id> showed a count of child items and their status breakdown (e.g., '3 open, 1 in_progress, 12 closed').

Suggested Improvements

  1. Progress indicator: When viewing a Milestone, show child item status summary (X/Y items closed, A open, B in_progress).
  2. Helpful create warning: In the calendar warning, suggest: Add a deadline: pm update <id> --deadline 2026-07-01
  3. Milestone roll-up: Support pm aggregate --parent <milestone_id> to see status breakdown by child type.
  4. Milestone close semantics: When all child items are closed, suggest closing the milestone.

Context

We created 4 milestones (M1-M4) for our game project phases and wanted to see progress towards each milestone.

Activity

  1. unbraind commented on Jun 10, 2026

    @unbraind
    OwnerAuthor

    Partial on @unbrained/pm-cli 2026.6.9:

    • Milestone roll-up (chore(deps): bump undici from 7.22.0 to 7.24.1 #3): pm aggregate --parent <milestone_id> --group-by status (or --group-by type,status for a combined breakdown) gives the child status summary today. Supported group-by fields: parent, type, priority, status, assignee, tags, sprint, release.
    • Milestones support --parent linking like any other item.

    Remaining: child status summary surfaced directly in pm get <milestone_id> (#1), a more actionable calendar warning — it still emits the bare calendar_item_without_schedule:<id>:no_deadline_or_reminder_or_event with no suggested command (#2), and close-suggestion semantics when all children are closed (#4). Leaving open.

  2. unbraind commented on Jun 14, 2026

    @unbraind
    OwnerAuthor

    Verified already shipped and now documented/closed via #234: pm get returns child rollup (count/active/by_status) for Milestone/Epic, calendar warning suggests pm update --deadline, and pm aggregate --parent works.

  3. unbraind commented on Jul 11, 2026

    @unbraind
    OwnerAuthor

    pm tracker item:

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions