Skip to content

fix(manager): restore report filters#751

Open
lumberman wants to merge 3 commits intomainfrom
fix/manager-report-filter-restore
Open

fix(manager): restore report filters#751
lumberman wants to merge 3 commits intomainfrom
fix/manager-report-filter-restore

Conversation

@lumberman
Copy link
Copy Markdown
Collaborator

Summary

  • Preserve the Manager Report language query when moving between Report, Jobs, and Agents dashboard tabs.
  • Canonicalize legacy languageIds handoffs to languageId while dropping unrelated dashboard query keys.
  • Preserve the selected Report language on Coverage-originated Jobs feedback links and document the reusable pattern.

Work Loop

  • ce:plan done
  • ce:work done
  • ce:review done
  • ce:compound done

Testing

  • Red first: pnpm --filter @forge/manager test -- src/features/nav/dashboard-nav-model.test.ts failed before the helper existed.
  • pnpm --filter @forge/manager test -- src/features/nav/dashboard-nav-model.test.ts src/features/coverage/enrich-action-controls.test.ts
  • pnpm --filter @forge/manager test
  • pnpm --filter @forge/manager lint
  • pnpm --filter @forge/manager typecheck
  • CI=1 pnpm --filter @forge/manager build
  • pnpm format:check
  • git diff --check
  • User-like browser smoke against this branch on http://localhost:3012 with temporary mock Strapi on localhost:1337:
    • /dashboard/coverage?languageId=529 -> Jobs -> /dashboard/jobs?languageId=529 -> Report -> /dashboard/coverage?languageId=529
    • Report -> Agents -> /dashboard/agents?languageId=529 -> Report -> /dashboard/coverage?languageId=529
    • legacy /dashboard/coverage?languageIds=529,21028 carries canonical languageId=529%2C21028
    • clearing English rewrites to /dashboard/coverage, then Jobs -> Report stays query-free
    • agent-browser errors returned no page errors; console output was limited to Next/React dev HMR messages

Post-Deploy Monitoring & Validation

  • What to monitor/search
    • Logs: search Manager web logs for GET /dashboard/coverage, GET /dashboard/jobs, GET /dashboard/agents, and unexpected /login redirects during dashboard tab navigation.
    • Metrics/Dashboards: standard Manager app request/error dashboard for 4xx/5xx changes on dashboard routes.
  • Validation checks
    • Open /dashboard/coverage?languageId=529, click Jobs, click Report, and confirm the browser URL remains /dashboard/coverage?languageId=529.
    • Open /dashboard/coverage?languageIds=529,21028, click Jobs, and confirm the browser URL uses languageId=529%2C21028.
    • Remove the selected language and confirm Jobs -> Report returns to /dashboard/coverage with no language query.
  • Expected healthy behavior
    • Dashboard tab links carry only canonical Report language query state.
    • Direct /dashboard/coverage remains the default language-first Report state.
  • Failure signals / rollback trigger
    • Operators report losing Report language context after Jobs/Agents navigation.
    • Dashboard tab navigation starts carrying unrelated Jobs/Agents query keys into Report.
    • Unexpected redirect loops or elevated 4xx/5xx on /dashboard/* routes after deploy.
  • Validation window & owner
    • Window: first production verification pass after deploy, then normal Manager monitoring for 24 hours.
    • Owner: Manager dashboard deploy owner.

Notes

  • Plan: docs/plans/2026-04-13-fix-manager-report-filter-restoration-plan.md
  • Compound doc: docs/solutions/ui-bugs/manager-report-filter-dashboard-tab-handoff-20260413.md
  • Local smoke screenshots captured under output/playwright/report-filter-smoke/ during validation.

@railway-app
Copy link
Copy Markdown

railway-app Bot commented Apr 13, 2026

🚅 Deployed to the forge-pr-751 environment in forge

Service Status Web Updated (UTC)
@forge/manager ✅ Success (View Logs) Apr 13, 2026 at 4:43 pm
@forge/cms ✅ Success (View Logs) Apr 13, 2026 at 4:42 pm
1 service not affected by this PR
  • @forge/web

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

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant