The dashboard follows a committed company switch too

The OTHER half of board row bug-on-dashboard-and-conversations-…-does-not-refetch-the-page-body. The 40-of-40 measurement that opened the row was taken 5.5 hours BEFORE #9087 landed; this capture is what decides whether that fix closed the dashboard half. It did.

17 Sept 2026 · branch refetch-on-switch-p1 · captured against propflow-stage · at b309ed6187

Data note. Every name and balance below comes from propflow-stage, which is anonymized by construction (ADR-0097/0110 — phones in the impossible +1000 NPA, emails @example.test). The identical capture against prod would carry real tenants' names and balances and is not safe to attach anywhere, which is why the generator refuses to run against one.

1 · 1 · JPCO, hard load — the figures the row names

JPCO on a plain hard load: occupancy 88.4% on 205 of 232 occupied, revenue $341,012, 22 open work orders, $20,724 past due at 13.7% of tenants past due.

Asserted in the captured DOMoccupied. Broad on purpose — this run is to LEARN the exact figures for both companies.

1 · JPCO, hard load — the figures the row names

2 · 2 · Fairhaven, hard load — every one of those figures differs

The other company, same route, same viewer. Every figure the board row names differs: occupancy 0 of 14 occupied, revenue No rent recorded in view yet, renewals No decisions yet this cycle, 0 open work orders, $0 past due at 0% of tenants past due. That is the differ-proof, executed rather than asserted.

⚠️ And the trap the row warned about is visible here: LEADS BY SOURCE reads 54 in last 30 days for JPCO and 53 for Fairhaven — near-identical. Nothing here asserts on that card.

Asserted in the captured DOMoccupied. Same.

2 · Fairhaven, hard load — every one of those figures differs

3 · 3 · SOFT SWITCH Fairhaven -> JPCO, no page load — the body follows

Starts on Fairhaven, ticks JPCO on and Fairhaven off, closes to commit — no document is loaded. Every figure turns over to JPCO’s, and Fairhaven’s contrasting values are gone from the frame: 0 of 14 occupied, No decisions yet this cycle and 0% of tenants past due are all absent.

Asserted in the captured DOMoccupied. The screenshot is the measurement — the figures are read off it.

3 · SOFT SWITCH Fairhaven -> JPCO, no page load — the body follows

What this decides, and whose fix it is

The dashboard half of the row is met. After a committed switch with no page load, the four figures the row names — occupancy, revenue, maintenance backlog and past-due balances — all read the newly selected company’s, and the previous company’s contrasting values are absent from the same frame.

This is NOT the conversations PR’s work, and saying so matters. #9291 changed ConversationsLog.tsx only. The dashboard already carried the tab’s selection on its requests through useTabScope, and #9087 made SelectionProvider re-derive the committed selection from the address on every change — which is what makes the polling deps rotate on a commit. The row’s 40-of-40 measurement was taken at 01:50 local on 2026-09-17; #9087 merged at 07:31 the same morning. The measurement predated the fix, and this capture is what turns that from a hypothesis read off the source into an observation.

Captured as smoke@propflowai.co, an active platform_admin. A single-company viewer was NOT captured, and deliberately: this defect requires holding grants on two or more companies, so a viewer with one has nothing to switch between and the soft-switch case is vacuous for them.

Data source propflow-stage, anonymized by construction (ADR-0097/0110).

PropFlow Docs