Files
world/e2e/screens/country-view-mobile-open.png
hanzo-dev 3b1689b574 feat(world): fullscreen country application view with docked analyst sidebar
Clicking a country now opens a proper fullscreen application view instead of a
centered card overlay: intel content (instability index, brief, signals,
timeline, prediction markets, infrastructure) breathes across the canvas on the
left, with a docked AI analyst chat as a right sidebar.

- CountryBriefPage: fullscreen flex layout (header + cb-view = cb-main | resize
  handle | cb-analyst-sidebar). Docks the ONE AnalystChat component by
  composition — model picker + command registry intact — seeded with the country
  as the active region so the first question is grounded. Resizable divider,
  collapsible sidebar with a reopen pill; on mobile the sidebar is a bottom sheet
  (no horizontal scroll), intel leads by default.
- App: browser Back closes the view (opened via pushState), Forward re-opens it;
  ?country= deep link restores it. Escape/✕ still restore the dashboard. Passes
  the analyst host into the page. Replaced a fragile typeof-this type query with
  a stable class index access.
- main.css: append-only fullscreen layout + analyst sidebar styling (monochrome,
  Geist, sentence case), mobile bottom-sheet, print-flow restore.
- e2e/country-view.spec.ts: desktop fullscreen + docked chat + URL + Escape,
  collapse/reopen, mobile 390px bottom sheet, ?country=FR deep link. 4 passing.
2026-07-09 22:29:28 -07:00

33 KiB
390x844px