Epic progress view

Open an epic issue's Children section and choose Open progress view. The route is /o/:orgSlug/p/:projectSlug/epics/:number. Canonical issue screens remain the editing authority.

The tracker resolves the current organization, project and issue through existing APIs. Only real epics are supported. It shows direct readable children, grouped by returned blocked flags and stored status, with assignees and ordinary issue links. Only done contributes to completion; duplicate and wont_fix are closed, not done. Empty progress is 0/0 and 0%.

The first request loads up to100 children. Load more children explicitly continues the server cursor. Counts describe loaded visible children whenever a cursor remains. Local text filtering and sorting never change the denominator. Each refresh rereads the requested pages in sequence and publishes one snapshot. At five pages/500 rows the view stops loading, preserves its incomplete label and offers the recently-updated project list and canonical epic children. The existing project list has no parent filter consumer; this change does not invent one.

Refresh runs every10seconds while visible, on window focus and manually. Transient failures keep the last successful snapshot and timestamp; access refusals hide it. Query identities contain actor, organization, project and epic; there is no prior-query placeholder. Dependencies load only for one expanded child, verify related issues through the existing issue access gate, and distinguish empty, denied and unknown/network states.

This view does not implement live-status writes, private last-comment summaries, hidden-scope totals, nested rollups, a fullscreen auto-paginated wallboard, or ETag/since APIs. It introduces no backend route, schema, provider request or mutation surface.

Query behavior was checked against the TanStack Query reference and focus documentation, alongside the installed Next16.3.8 page convention guide.

We use essential cookies to keep you signed in. See our Privacy Policy for details.