docs: record the owner's decisions on routes, compatibility and inbound roles
panel-redesign.md gains four sections. Routes: paths follow the new names and structure (/overview, /outbound/..., /inbound/..., /server/..., /account), with one <page>/fragment name, the application form as a single POST and TestRoutesFollowNavigation. No compatibility: the redesign is 2.0.0, old paths are removed without redirects, the migration chain is replaced by one baseline and 2.0 starts from an empty data directory (the only live installation is the owner's); schema-squash ships as a step of this plan without its upgrade gate. Who sees what: a domain administrator manages assigned inbound domains, granted separately from outbound (user_inbound_domains, per-domain authorization under /inbound/). Room for roadmap items: where antispam lists, quarantine and preflight land, and that a feature's screens are drawn mockup-first in this system. Mockups: the Reload configuration box the first pass missed (now on Server > Health), the flash component and the sp-help link that replaces the help drawer, and the user form with two assignment lists. The antispam plan no longer points its mockup at the superseded panel-ui folder. Checklist 3/21. Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
This commit is contained in:
+14
-3
@@ -36,7 +36,7 @@ in `git log` and [CHANGELOG.md](../CHANGELOG.md).
|
||||
| template-data-typing | Typed structs for template data instead of `map[string]any` | candidate | — | — |
|
||||
| structured-logging | `log/slog` with levels and fields | candidate | — | — |
|
||||
| review-2026-08-followups | Remaining findings of the 2026-08-19 code review | candidate | — | — |
|
||||
| panel-redesign | Panel redesign (accepted mockups, design contract) | candidate | 0/15 | [plans/panel-redesign.md](plans/panel-redesign.md) |
|
||||
| panel-redesign | Panel redesign (accepted mockups, design contract) | candidate | 3/21 | [plans/panel-redesign.md](plans/panel-redesign.md) |
|
||||
| schema-squash | Squash SQLite migrations into a 2.x baseline | **2.x** | — | — |
|
||||
|
||||
**Recommended order** (not binding): the next feature is
|
||||
@@ -307,7 +307,11 @@ postmark / numbered heads / perforated edge, icons). Contract and checklist:
|
||||
|
||||
**Boundary:** templates, one `panel.css`, shared partials, vendored Bulma and
|
||||
icons. Navigation regroups by mail direction (Overview · Outbound · Inbound ·
|
||||
Server). Four things the mockups show need their own decision and are not
|
||||
Server) and paths are renamed to match. **No compatibility is kept** (owner,
|
||||
2026-09-21): no redirects, the migration chain is replaced by one baseline
|
||||
and 2.0 starts from an empty data directory — the only live installation is
|
||||
the owner's. Inbound domains become delegable to a
|
||||
domain administrator, separately from outbound. Four things the mockups show need their own decision and are not
|
||||
smuggled in with the restyle: queue as a table (`postqueue -j`), inbound
|
||||
queue, inbound log (rides on inbound-antispam-panel), Server › Health. No CSP
|
||||
change, no JavaScript widgets, no second framework.
|
||||
@@ -322,7 +326,7 @@ of their own — answered by guard tests that land before the templates, a
|
||||
`design-first` CI step and evidence-based acceptance (plan § Enforcement).
|
||||
Competes with feature work; Bulma is ~680 kB minified, embedded once.
|
||||
|
||||
**Version:** `1.x` MINOR when agreed; `candidate` until then.
|
||||
**Version:** `2.0.0` MAJOR; `candidate` until agreed.
|
||||
|
||||
---
|
||||
|
||||
@@ -348,6 +352,13 @@ replace the squash upgrade gate.
|
||||
it); the gate in [schema-migrations.md](schema-migrations.md) is tested; the
|
||||
operator guide says a 2.x image will not open an unfinished 1.x database.
|
||||
|
||||
**Trigger decided 2026-09-21:** [panel-redesign](#panel-redesign) is the 2.0
|
||||
cut, and the owner dropped the upgrade gate with it — the chain is deleted to
|
||||
zero and 2.0 starts from an empty data directory. The
|
||||
**Boundary** and **Done when** above are superseded on that point by
|
||||
[plans/panel-redesign.md](plans/panel-redesign.md) § No compatibility; this
|
||||
item ships as a step of that plan, not on its own.
|
||||
|
||||
**Dependencies / risks:** a decided 2.x cut (another breaking change, or an
|
||||
explicit major). Squashing the current short chain is not a reason to cut 2.x on
|
||||
its own. A missed gate leaves a mid-chain 1.x database silently stuck.
|
||||
|
||||
Reference in New Issue
Block a user