carlos / platform Public

reconcile-mains

Reconciles the two mains, which forked at 6a59497 because merges were landing on the GitHub mirror as well as here.

amadan carried ~20 commits (restart selectors, status --instances, the replication flag, adopt ownership, the build probe, region host shape, config isolation, activator wake timing, arch-page-fits). GitHub carried the path-routed cache-purge fix and #387. Everything reconciles mechanically except /fleet/architecture, where both sides had rebuilt the same page.

The architecture page

They were not two versions of one change — they were two different solutions to the same bug (discussion #9), and #387 predates the fixes:

  • #387 keeps the alarm marks on the title's line and truncates the title horizontally to make room. Ported onto its structure, arch-page-fits' own regression test showed both flagship box names truncating — exactly the failure #9 caught in a browser, each name cut one character before the characters that tell the four boxes apart.
  • #387 has no equivalent of the firing-alarm summary, so a page that knew something was on fire showed nothing above the fold.
  • #387 routes a layer-skipping edge through the midpoint, which sits inside the skipped column, so the line runs under a node and the picture reads as a hop that does not exist.

This keeps #387's two-estate split — the structural improvement — and ports all three arch-page-fits fixes onto it:

  • alarmRoom deleted, alarmRow (node bottom, below both baselines) added, and the title gets the node's full width back
  • ArchView.Firing + firingAlarms, populated after layout across BOTH estates in draw order, with the header banner, the refresh control back at the top, and the sideways-scroll note
  • layer-skipping edges routed around the columns they skip, via a lane below every node

Two test seams that needed care

archlegibility_test had the geometry inlined and three-segment-only on #387's side. It now uses arch-page-fits' edgeSegments helper, which mirrors both routings — a test modelling a path the renderer does not emit would pass while the picture lied.

TestEveryEdgeReachesThePage counted class="archedge" with the closing quote, so it saw none of the skip-routed edges. It now matches the attribute's opening, which is what its own stated intent asks for — as written it would also have passed while a page genuinely lost a skipping edge, once the numbers lined up.

Also in here

The path-routed cache-purge fix: resolvePurgeHost accepts a cross-app Carlos-Purge-Host when a prefix on the named host selects the serving route, so an app served through a path route can purge entries cached under the hostname the browser asked for. Account is still required.

go build, go vet, gofmt -l clean; full suite green.

Commits 0
Discussions 0 0 open
Tasks 0/0 done

Discussions

  • No discussions on this branch yet.

Tasks

  • No tasks yet.

Activity

  • No activity yet.