Map: 500-call window silently truncates incident paths, call spine and the 7d scrubber; #inc= deep links only resolve active incidents #239

Closed
opened 2026-10-05 02:08:36 -04:00 by logan · 1 comment
Owner

Problem

  • LiveView.tsx:93 useCalls(500) loads the 500 newest org calls; paths, spine, ticker and scrubber are all built from it (groupCallsByIncident, LiveView.tsx:135). On a busy system that is a few hours, so a long incident's early path stops silently drop off, and an old pursuit degrades to a pin when fewer than 2 geocoded calls remain (MapView.tsx:1031).
  • The spine is further capped at 30 rows (WallPanels.tsx:276) with no 'N more' indicator.
  • The TimeScrubber '7d' preset draws a 7-day axis filled only for the loaded window, which reads as a quiet week.
  • LiveView.tsx:161 resolves #inc= only against activeIncidents, so a link to a pursuit that cleared five minutes ago opens to nothing.

Who asked

TOC, RCC, GSOC, HOBBY (4 of 8).

Proposal

  • The selected incident fetches its own calls by incident_id (bounded, paged) instead of relying on the global window.
  • Show 'showing latest N of M' when a spine or path is truncated.
  • Scrubber presets either fetch their range or visibly mark the unloaded part of the axis.
  • #inc= falls back to fetching the incident by id and shows it with a 'Resolved HH:MM' banner.

Data source and terms

Internal.

Effort

S/M

Acceptance criteria

  • An incident with 60 calls older than the 500-call window shows its full path and spine.
  • A deep link to a resolved incident opens it.
  • The 7d preset never implies zero activity for time it did not load.

Reviewed against Server origin/main c4e1f9a (2026-10-05), from code only. Source: map persona panel 2026-10-05 (tracking issue lists all items).
Persona key: TOC = county PD real-time crime center supervisor; NOC = Con Ed electric ops NOC; RCC = MTA rail/bus control desk; GSOC = corporate security operations analyst; OEM = county emergency management duty officer; NEWS = TV newsroom assignment editor; FD = volunteer fire chief / county fire dispatcher; HOBBY = scanner power user / local journalist.

## Problem - `LiveView.tsx:93` `useCalls(500)` loads the 500 newest org calls; paths, spine, ticker and scrubber are all built from it (`groupCallsByIncident`, `LiveView.tsx:135`). On a busy system that is a few hours, so a long incident's early path stops silently drop off, and an old pursuit degrades to a pin when fewer than 2 geocoded calls remain (`MapView.tsx:1031`). - The spine is further capped at 30 rows (`WallPanels.tsx:276`) with no 'N more' indicator. - The TimeScrubber '7d' preset draws a 7-day axis filled only for the loaded window, which reads as a quiet week. - `LiveView.tsx:161` resolves `#inc=` only against `activeIncidents`, so a link to a pursuit that cleared five minutes ago opens to nothing. ## Who asked TOC, RCC, GSOC, HOBBY (4 of 8). ## Proposal - The selected incident fetches its own calls by `incident_id` (bounded, paged) instead of relying on the global window. - Show 'showing latest N of M' when a spine or path is truncated. - Scrubber presets either fetch their range or visibly mark the unloaded part of the axis. - `#inc=` falls back to fetching the incident by id and shows it with a 'Resolved HH:MM' banner. ## Data source and terms Internal. ## Effort S/M ## Acceptance criteria - An incident with 60 calls older than the 500-call window shows its full path and spine. - A deep link to a resolved incident opens it. - The 7d preset never implies zero activity for time it did not load. --- Reviewed against Server origin/main c4e1f9a (2026-10-05), from code only. Source: map persona panel 2026-10-05 (tracking issue lists all items). Persona key: TOC = county PD real-time crime center supervisor; NOC = Con Ed electric ops NOC; RCC = MTA rail/bus control desk; GSOC = corporate security operations analyst; OEM = county emergency management duty officer; NEWS = TV newsroom assignment editor; FD = volunteer fire chief / county fire dispatcher; HOBBY = scanner power user / local journalist.
logan added the
type
bug
area/maparea/frontend
priority
p1
kind
behavior-bug
labels 2026-10-05 02:08:36 -04:00
Author
Owner

PR #253 ships the spine part of this issue: "Showing latest 30 of M", a show-all-loaded toggle, and a count of calls outside the loaded window (WallPanels IncidentPanel). Still open: the per-incident call fetch, the 7d scrubber, and the #inc= fallback for resolved incidents.

PR #253 ships the spine part of this issue: "Showing latest 30 of M", a show-all-loaded toggle, and a count of calls outside the loaded window (WallPanels IncidentPanel). Still open: the per-incident call fetch, the 7d scrubber, and the `#inc=` fallback for resolved incidents.
logan closed this issue 2026-10-05 03:33:28 -04:00
Sign in to join this conversation.
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: logan/server-26#239