docs: decision 93 correction, Authentik not Pocket ID; row 74 brief follows (#1568)
Co-Authored-By: Claude Opus 5.5 <[email protected]>
This commit is contained in:
@@ -1991,3 +1991,11 @@ which stay with him. Each item names who decided it and what happened.
|
|||||||
- The tradeoff: a transient unit doesn't survive a reboot and isn't
|
- The tradeoff: a transient unit doesn't survive a reboot and isn't
|
||||||
reviewed as a file. It runs one reviewed command line, which the
|
reviewed as a file. It runs one reviewed command line, which the
|
||||||
install record states, until the follow-up row ships the unit.
|
install record states, until the follow-up row ships the unit.
|
||||||
|
- Correction (2026-10-11, Mos, sage-0052): the identity provider is
|
||||||
|
Authentik at auth.diversecanvas.com, not Pocket ID. There is no
|
||||||
|
Pocket ID in the homelab; the Q91 relay named it in error, and 92
|
||||||
|
and 93 above repeat it. ops-01 builds Authentik forward auth for
|
||||||
|
mosaic-preview.woltje.com, limited to Jason's group; the header is
|
||||||
|
likely X-authentik-uid. The Console check stays generic (one header
|
||||||
|
name, one user id, from flags). Jason's Q93, on the Authentik token,
|
||||||
|
gates ops-01's application, not the Console's landing or install.
|
||||||
|
|||||||
@@ -2,8 +2,10 @@
|
|||||||
|
|
||||||
Status: written by Sage, lead. It follows `docs/plans/BRIEF-TEMPLATE.md`.
|
Status: written by Sage, lead. It follows `docs/plans/BRIEF-TEMPLATE.md`.
|
||||||
One row. Amended the same evening for Jason's Q91 answer "A" (lead
|
One row. Amended the same evening for Jason's Q91 answer "A" (lead
|
||||||
decision 93): a read-only preview at its own hostname, behind Pocket ID
|
decision 93): a read-only preview at its own hostname, behind forward
|
||||||
forward auth limited to Jason's group, the old build left up. Target:
|
auth limited to Jason's group, the old build left up. The identity
|
||||||
|
provider is Authentik at auth.diversecanvas.com, not Pocket ID as first
|
||||||
|
relayed; the Console names no provider. Target:
|
||||||
Jason signs in on 2026-10-12, by 2026-10-13T05:00Z at the latest. The
|
Jason signs in on 2026-10-12, by 2026-10-13T05:00Z at the latest. The
|
||||||
service script is cut from this row for that date; it is a follow-up.
|
service script is cut from this row for that date; it is a follow-up.
|
||||||
|
|
||||||
@@ -28,9 +30,9 @@ design:
|
|||||||
- Nothing runs the Console as a service. It is a foreground `serve`.
|
- Nothing runs the Console as a service. It is a foreground `serve`.
|
||||||
|
|
||||||
Mos approved these cuts for the preview (2026-10-11): sign-in at the edge
|
Mos approved these cuts for the preview (2026-10-11): sign-in at the edge
|
||||||
through Pocket ID forward auth, not login code in the Console; a preview
|
through forward auth, not login code in the Console; a preview
|
||||||
hostname, so the old build at mosaic.woltje.com stays; read-only; not
|
hostname, so the old build at mosaic.woltje.com stays; read-only; not
|
||||||
held for S7 (row 42) or Gate E (row 5). ops-01 owns the Pocket ID client
|
held for S7 (row 42) or Gate E (row 5). ops-01 owns the Authentik application
|
||||||
(limited to Jason's group), the DNS name, TLS, the proxy and the route
|
(limited to Jason's group), the DNS name, TLS, the proxy and the route
|
||||||
from the edge to this host. The route opens once rev-sol-01 passes
|
from the edge to this host. The route opens once rev-sol-01 passes
|
||||||
ops-01's proposal (Q91 A).
|
ops-01's proposal (Q91 A).
|
||||||
@@ -52,7 +54,8 @@ A preview mode, off by default. Without its flags the Console behaves
|
|||||||
exactly as today, and the existing tests show it.
|
exactly as today, and the existing tests show it.
|
||||||
|
|
||||||
- `serve --public-host NAME --auth-header HEADER --allow-user ID`, all
|
- `serve --public-host NAME --auth-header HEADER --allow-user ID`, all
|
||||||
three or none. NAME is a hostname, no port or scheme. The bind stays
|
three or none. The check is generic: one header name and one user id,
|
||||||
|
both from the flags, nothing provider-specific in code or tests. NAME is a hostname, no port or scheme. The bind stays
|
||||||
loopback; nothing here listens beyond it.
|
loopback; nothing here listens beyond it.
|
||||||
- In preview mode a request's Host must be NAME, or loopback on the
|
- In preview mode a request's Host must be NAME, or loopback on the
|
||||||
Console's port as today. An Origin, when sent, must be `https://NAME`
|
Console's port as today. An Origin, when sent, must be `https://NAME`
|
||||||
@@ -72,7 +75,7 @@ exactly as today, and the existing tests show it.
|
|||||||
- The README replaces "Do not expose either unauthenticated server
|
- The README replaces "Do not expose either unauthenticated server
|
||||||
through a public proxy" with what the preview mode requires of the
|
through a public proxy" with what the preview mode requires of the
|
||||||
proxy: it strips HEADER from every client request and sets it only
|
proxy: it strips HEADER from every client request and sets it only
|
||||||
after Pocket ID signs the user in, it preserves Host, it terminates TLS,
|
after the identity provider signs the user in, it preserves Host, it terminates TLS,
|
||||||
and it is the only thing that reaches the port from off the host. It
|
and it is the only thing that reaches the port from off the host. It
|
||||||
says plainly that any local process can still connect and send HEADER,
|
says plainly that any local process can still connect and send HEADER,
|
||||||
the same exposure the README already describes for the port.
|
the same exposure the README already describes for the port.
|
||||||
@@ -82,7 +85,7 @@ exactly as today, and the existing tests show it.
|
|||||||
|
|
||||||
### Out of scope
|
### Out of scope
|
||||||
|
|
||||||
- OIDC or login code in the Console; Pocket ID config; DNS, TLS, the
|
- OIDC or login code in the Console; Authentik config; DNS, TLS, the
|
||||||
proxy and the route from the edge (ops-01).
|
proxy and the route from the edge (ops-01).
|
||||||
- Resolving decisions or replying from the browser. REQ-DEC-3 keeps
|
- Resolving decisions or replying from the browser. REQ-DEC-3 keeps
|
||||||
resolution in the CLI; changing that is a ruling and its own row.
|
resolution in the CLI; changing that is a ruling and its own row.
|
||||||
@@ -94,7 +97,7 @@ exactly as today, and the existing tests show it.
|
|||||||
as a transient user unit (`systemd-run --user`, loopback port 7332;
|
as a transient user unit (`systemd-run --user`, loopback port 7332;
|
||||||
7330 holds the operator's own Console). The edge reaches it once
|
7330 holds the operator's own Console). The edge reaches it once
|
||||||
rev-sol-01 passes ops-01's route.
|
rev-sol-01 passes ops-01's route.
|
||||||
- The group check. Pocket ID and the proxy limit sign-in to Jason's
|
- The group check. Authentik and the proxy limit sign-in to Jason's
|
||||||
group; the Console checks the header against the one user id.
|
group; the Console checks the header against the one user id.
|
||||||
|
|
||||||
### Gate
|
### Gate
|
||||||
|
|||||||
Reference in New Issue
Block a user