Skip to content

(CODUX-81) Fix sprint navigation buttons - #2673

Merged
numnx merged 1 commit into
feature/CODUX-184-fixes-sprint-page-jora-cli-thinkingfrom
task/feature-codux-184-fixes-sprint-page-jora-cli-thi-t01-codex-mrapn2bj
Jul 7, 2026
Merged

(CODUX-81) Fix sprint navigation buttons#2673
numnx merged 1 commit into
feature/CODUX-184-fixes-sprint-page-jora-cli-thinkingfrom
task/feature-codux-184-fixes-sprint-page-jora-cli-thi-t01-codex-mrapn2bj

Conversation

@numnx

@numnx numnx commented Jul 7, 2026

Copy link
Copy Markdown
Collaborator

🧩 Task: Fix sprint navigation buttons

Automated task PR opened by Code UX for T01.

📋 Summary

Sprint: Sprint 184 · Fixes Sprint Page, Jora, Cli Thinking · Task: T01

Fix sprint-page task/live navigation across project and sprint scope, expose provider-specific CLI thinking selections, and make Jira in-work imports honor the configured transition setting.

🤖 Model & Provider

Provider Codex CLI
Model gpt-5.5

⏱️ Timing

Started 2026-07-07 13:54:19 UTC
Finished 2026-07-07 14:07:02 UTC
Duration 12m 43s

📊 Token Usage

Metric Value
Input tokens 544,700
Cached input tokens 4,924,928
Output tokens 25,687
Total tokens 5,495,315
Invocations 1
Tool calls 90
Active time 11m 57s

Included usage estimate (subscription/local login): $5.96

✅ QA Review

⏳ QA review runs after this PR is opened. Check the task card in the dashboard for the outcome once it lands.

📝 Full Task Prompt
## Objective
Update sprint-page navigation so each sprint row exposes separate Tasks and Live actions, and both actions reliably switch the dashboard to the sprint's project and sprint before rendering the destination page.

## Scope
- Edit `dashboard/src/v2/components/sprints/SprintLedgerRow.tsx`
- Edit `dashboard/src/v2/components/sprints/SprintCell.tsx`
- Edit `dashboard/src/v2/components/sprints/SprintLedger.tsx` only if the row needs selected-project context threaded explicitly
- Edit `dashboard/src/v2/TasksPage.tsx`
- Edit `dashboard/src/v2/LiveSessionPage.tsx`
- Verify existing project selection APIs in `dashboard/src/v2/context/project-data.tsx` and `dashboard/src/v2/lib/project-api.ts`
- Add or update dashboard component tests in `tests/dashboard/v2/sprint-ledger.test.tsx`, `tests/dashboard/v2/sprint-cell.test.tsx`, and task-page tests where route scope is covered
- Add a Playwright regression spec under `tests/e2e/`, for example `tests/e2e/sprint-navigation.spec.ts`
- Update `docs/dashboard/dashboard-guide.md`

## Implementation Requirements
1. Replace the sprint ledger row's single `Open` link with a `Tasks` link and an adjacent `Live` link; both links must include `sprintId` and enough project context, preferably `projectId`, so destination pages do not apply the sprint to the previously selected project.
2. Apply the same project-aware task/live link contract to showcase sprint cards in `SprintCell.tsx`, preserving existing visual density and accessible labels.
3. In `TasksPage.tsx`, read `projectId` and `sprintId` route search params, call `selectProject(projectId)` when the route project differs from the current project, and defer `selectSprint(sprintId)` plus task loading until the selected project matches the route project.
4. In `LiveSessionPage.tsx`, support the same `projectId` and `sprintId` route params by switching project scope first, then selecting the route sprint through `useSprints` so Live filters to the requested sprint instead of the previous top-nav sprint.
5. Add deterministic E2E setup that creates or reuses two projects, creates one sprint and one task in each via `/api/projects/:projectId/sprints` and `/api/projects/:projectId/tasks`, starts from one selected project, then verifies clicking the sprint-page `Tasks` and `Live` buttons for the other project lands on the correct page, project, and sprint.
6. Update focused component tests to assert the visible button labels are `Tasks` and `Live`, the old `Open` label is gone for the row CTA, and generated hrefs include the expected route params.

## Constraints
- Do not change the custom sprint title for SPR-184 or add branch/PR/release workflow code.
- Do not persist a route sprint against the wrong project while project switching is still in flight.
- Preserve legacy `/tasks?sprint=<id>` and `/tasks?sprintId=<id>` behavior for same-project deep links.
- Keep top-nav sprint selection and page task filtering aligned after destination pages apply route scope.
- Do not introduce new routing libraries or external dashboard dependencies.

## Verification
- Run `pnpm exec vitest run tests/dashboard/v2/sprint-ledger.test.tsx tests/dashboard/v2/sprint-cell.test.tsx dashboard/src/v2/pages/__tests__/TasksPage.cards.test.tsx` or the closest updated focused dashboard tests.
- Run `pnpm run build` before Playwright so `dist/index.js` is current.
- Run `pnpm exec playwright test tests/e2e/sprint-navigation.spec.ts --project=chromium`.
- Success means the ledger shows `Tasks` and `Live`, both links navigate to the requested project/sprint even when another project was selected, and the new Playwright spec passes.
🌿 Branch Info

Base: feature/CODUX-184-fixes-sprint-page-jora-cli-thinking
Head: task/feature-codux-184-fixes-sprint-page-jora-cli-thi-t01-codex-mrapn2bj


🤖 Generated by Code UX

@numnx
numnx merged commit 8887033 into feature/CODUX-184-fixes-sprint-page-jora-cli-thinking Jul 7, 2026
6 checks passed
@numnx
numnx deleted the task/feature-codux-184-fixes-sprint-page-jora-cli-thi-t01-codex-mrapn2bj branch July 7, 2026 14:09
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant