milestone 17: real deadlines, validator holes, upstream editor, trusted proxies, contract samples, badvers
CI / test (push) Successful in 1m22s
CI / test-aarch64 (push) Successful in 4m55s
CI / frontend (push) Successful in 39s
CI / cross (push) Successful in 7m57s
CI / docker (push) Failing after 1h10m42s

This commit is contained in:
2026-08-07 17:55:59 +02:00
parent 9b12dbaaa0
commit c50c6d285a
57 changed files with 2926 additions and 126 deletions
+8
View File
@@ -54,6 +54,14 @@ anything else against /home/mokhtar/app/zig tag 0.16.0.
re-materializes). Client prefixes: `GET/PUT /api/client-prefixes` as a whole-list
resource (tiny table, atomic replace). No POST for clients — creation is by DNS activity
or import (PLAN:540 gives clients no POST deliberately).
> **Placement deviation (milestone 17 ruling 3).** "The Settings page must
> edit them" above names the wrong page. Milestone 9 dropped the obligation
> entirely; milestone 17 restored it as a dedicated **Upstreams** page with
> its own nav entry (`web/src/features/upstreams/`, route `/upstreams`),
> matching the house resource-page pattern that every other collection
> follows. The Settings page keeps the scalar settings keys only. The API
> contract in this ruling is unchanged.
10. **Repo layer**: every list row the API serves carries its row id; each mutated resource
gains `getX(db, id)`, `updateX(db, id, item)`, `deleteX(db, id)` (strict: 0 rows touched
→ error.NotFound), written in the house repo idiom with prepared statements. Existing