Fix ticker-scoped filings views showing mixed-ticker results #4

Closed
opened 2026-03-14 22:16:25 +00:00 by Francy51 · 2 comments
Owner

Summary

The Filings page can claim a ticker-scoped result set while rendering rows from other tickers.

Evidence

  • Manual pass on 2026-03-14 against /filings?ticker=NVDA
  • The page header said 100 records loaded for NVDA, but the visible ledger included both NVDA and MSFT rows.

Expected

  • A ticker-scoped filings view should either show only that ticker or explicitly explain that results are mixed.

Acceptance Criteria

  • Header copy, counts, and visible rows reflect the same scope.
  • Ticker-filtered views do not silently include unrelated tickers.
  • If mixed data is intentional, the UI says so clearly and updates the summary text.
  • A test asserts row-level scope integrity for ticker-filtered filings pages.
## Summary The Filings page can claim a ticker-scoped result set while rendering rows from other tickers. ## Evidence - Manual pass on 2026-03-14 against `/filings?ticker=NVDA` - The page header said `100 records loaded for NVDA`, but the visible ledger included both `NVDA` and `MSFT` rows. ## Expected - A ticker-scoped filings view should either show only that ticker or explicitly explain that results are mixed. ## Acceptance Criteria - Header copy, counts, and visible rows reflect the same scope. - Ticker-filtered views do not silently include unrelated tickers. - If mixed data is intentional, the UI says so clearly and updates the summary text. - A test asserts row-level scope integrity for ticker-filtered filings pages.
Francy51 added the P0 label 2026-03-14 22:16:25 +00:00
Author
Owner

Implemented the filings scope fix in commit 61b072d.

Changes:

  • made the /filings URL ticker param the single source of truth for the active ledger scope
  • bound visible filings rows directly to the React Query key for that scope instead of imperative local setFilings state
  • updated Apply/Clear to rewrite the route so URL, subtitle, and rendered rows stay aligned
  • added API regression coverage for /api/filings?ticker=NVDA
  • added a Playwright regression spec covering direct scoped entry, apply/clear, and stale-response overwrite protection

Verification:

  • bun x tsc --noEmit
  • RUN_TASK_WORKFLOW_E2E=1 bun test lib/server/api/task-workflow-hybrid.e2e.test.ts --test-name-pattern "scopes the filings endpoint by ticker while leaving the global endpoint mixed"
  • bunx playwright test e2e/filings.spec.ts
Implemented the filings scope fix in commit `61b072d`. Changes: - made the `/filings` URL ticker param the single source of truth for the active ledger scope - bound visible filings rows directly to the React Query key for that scope instead of imperative local `setFilings` state - updated Apply/Clear to rewrite the route so URL, subtitle, and rendered rows stay aligned - added API regression coverage for `/api/filings?ticker=NVDA` - added a Playwright regression spec covering direct scoped entry, apply/clear, and stale-response overwrite protection Verification: - `bun x tsc --noEmit` - `RUN_TASK_WORKFLOW_E2E=1 bun test lib/server/api/task-workflow-hybrid.e2e.test.ts --test-name-pattern "scopes the filings endpoint by ticker while leaving the global endpoint mixed"` - `bunx playwright test e2e/filings.spec.ts`
Author
Owner

Fixed in 61b072d - ticker scope consistency verified with API and Playwright tests.

Fixed in 61b072d - ticker scope consistency verified with API and Playwright tests.
Sign in to join this conversation.
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: Francy51/Neon-Desk#4