You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Problem — The extension-host service is missing one route the shipped app
overlay already posts: the solver-mode toggle. The fork mainline carries the
route; until the service carries it too, the fork server cannot be retired
(the overlay UI still fetches amicode routes from the server origin) and the
toggle breaks under any harness that isn't the fork.
Approach — Port the route from the fork mainline into the extension-host
service, matching the service's existing route-family conventions, with the
contract fixture recorded from the fork binary and replayed against the
service.
Scope — in: the route + fixture + wiring · out: the origin flip itself
(the overlay's base-URL migration is the cutover slice), the app shelf.
Assumptions — The fork mainline (the remote branch origin/local/amicode)
carries the reference implementation; the service's golden-fixture pattern is
the verification vehicle.
Acceptance Criteria
POST of the solver-mode route on the extension-host service accepts and persists the toggle, round-tripping through the service exactly as the fork binary does (golden fixture recorded from the fork, replayed against the service).
The overlay UI's toggle works against the service (the fetch path the overlay uses is the route served).
The route appears in the service's route inventory with its contract test.
Testing Decisions
Reuse the service's existing contract-test pattern (golden fixtures + replay);
no new suites.
Key Decisions
The fork's route semantics are the contract: same request/response shape, same persistence behavior.
If the fork's implementation relies on server-side state the service can't hold, the service stores it product-side (its own state store) and the divergence is documented in the PR.
Constraints & Invariants
Worktree off fresh origin/main; the shared checkout's branch is never moved.
No harness-specific vocabulary in the route surface.
Prior Art
The extension-host service's route families and their golden fixtures.
The fork mainline's implementation: read via the remote branch (the local checkout's product line is stale).
Source
Part of the re-base leg — campaign ledger sessions/session-20260827-harness-agnostic.md, loop 28b.
Important
Problem — The extension-host service is missing one route the shipped app
overlay already posts: the solver-mode toggle. The fork mainline carries the
route; until the service carries it too, the fork server cannot be retired
(the overlay UI still fetches amicode routes from the server origin) and the
toggle breaks under any harness that isn't the fork.
Approach — Port the route from the fork mainline into the extension-host
service, matching the service's existing route-family conventions, with the
contract fixture recorded from the fork binary and replayed against the
service.
Scope — in: the route + fixture + wiring · out: the origin flip itself
(the overlay's base-URL migration is the cutover slice), the app shelf.
Assumptions — The fork mainline (the remote branch origin/local/amicode)
carries the reference implementation; the service's golden-fixture pattern is
the verification vehicle.
Acceptance Criteria
Testing Decisions
Reuse the service's existing contract-test pattern (golden fixtures + replay);
no new suites.
Key Decisions
Constraints & Invariants
Prior Art
Source
Part of the re-base leg — campaign ledger
sessions/session-20260827-harness-agnostic.md, loop 28b.