31 lines
1.5 KiB
Markdown
31 lines
1.5 KiB
Markdown
# v2.2 implementation plan: what the hyperborea deploy exposed
|
|
|
|
> **For the implementing model:** do not work from this file. The owner gives you one task file at
|
|
> a time. This file is the index for the owner and the reviewer.
|
|
|
|
**Goal:** two small gaps found on 2026-09-25 when crossbar went live on hyperborea.
|
|
|
|
- **01-route-templates** — `PLAN.md`'s one-route-per-OpenCode-instance launcher produces route
|
|
names the config has never seen, and unknown routes are 404. A route named `opencode-*` now
|
|
serves every `opencode-<something>`; leases and accounting stay per concrete route. Given:
|
|
`config/config_v22_test.go`, `proxy/template_test.go`, `admin/admin_template_test.go`.
|
|
- **02-broadcasts** — titan roams between two Wi-Fi networks and hyperborea is on both segments,
|
|
so a wake target needs more than one broadcast address. Given: `wake/broadcasts_test.go`
|
|
(+ `TestWakeBroadcasts` in the config test above).
|
|
|
|
**Order matters:** the config given test covers both tasks, so `internal/config` is red on one
|
|
method between task 01's commit and task 02's. Task 01's text says so; the gate runs after 02.
|
|
|
|
**How this plan was made:** acceptance tests first, no reference implementation; the given tests
|
|
compiled against a panic-only skeleton of the new names and failed on the v2.1 tree for the
|
|
intended reasons.
|
|
|
|
## Global constraints
|
|
|
|
- Everything in `AGENTS.md`. Branch `v2.2` from `master`. One task, one fresh OpenCode session,
|
|
one commit. Given files are copied and never edited; earlier plans' given files stay protected.
|
|
|
|
## Changes during the run
|
|
|
|
(none yet)
|