docs: Phase 3 plan (auth + per-site hosting) - #22
Open
euoia wants to merge 2 commits into
Open
Conversation
Phase 3 of the 3-sites rollout. Records that the auth substrate is already ~90% built (argon2 creds, login/session, requireAuth on all /api, prod SQLite session store, rate limiting, hash-password CLI), so the remaining work is mostly hosting/ops: per-site NixOS instances (systemd admin + astro dev preview), Caddy auto-TLS at admin.<domain>, write deploy keys, and small commit/auth hardening. Decisions confirmed: NixOS host (systemd), live astro dev preview, Caddy. Codenamed — concrete bindings live in the private ops repo.
Reflect the confirmed approach: nginx + security.acme (HTTP-01) instead of Caddy, sops-nix for secrets, nixos-infect for provisioning, and the host flake living in the private ops repo. Records the NixOS module as built and flags browser-reachable preview routing as the one open integration item. Kept generic (no business/client specifics) per the public-repo convention.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Adds the Phase 3 implementation plan for the 3-sites rollout (hosted editor + auth).
Key finding from auditing the code: the auth substrate is already ~90% built — argon2id credentials (timing-safe),
/api/login|logout|session,requireAuthon every/api/*route, prod SQLite session store, rate limiting, weak-config warnings, and ahash-passwordCLI. So Phase 3 is mostly hosting/ops, not auth code:astro devpreview;admin.<domain>;--no-verify/hooks-off, session regeneration on login, a stricter login limiter).Decisions confirmed: dedicated NixOS host (systemd, not Docker), live
astro devpreview, Caddy. Codenamed per the public-repo convention — concrete client/host bindings are in the private ops repo.