dorfteich/deploy
Claude Fable 5 db4c5ce9ca
All checks were successful
CI / Lint, typecheck, test (pull_request) Successful in 4m53s
CI / Build container images (pull_request) Successful in 3m55s
CI / Auth e2e pack (pull_request) Successful in 7m53s
CI / Import/export fidelity gate (pull_request) Successful in 55s
CD / Build and push images (push) Successful in 19s
CD / Deploy to Test (push) Successful in 12s
CD / Smoke tests against Test (push) Successful in 1m17s
CD / Promote to Int (push) Successful in 11s
CI / Lint, typecheck, test (push) Successful in 4m53s
CI / Build container images (push) Has been skipped
CI / Auth e2e pack (push) Successful in 7m37s
CI / Import/export fidelity gate (push) Successful in 52s
#190: configurable session lifetime with a server-side idle timeout
SESSION_ABSOLUTE_HOURS (default 168 h) caps a session's total lifetime
from login: expiresAt is set once at creation and never extended — the
old sliding 30-day renewal is gone. SESSION_IDLE_HOURS (default 72 h)
ends sessions unused for that long, enforced server-side against
lastSeenAt with a write throttle scaled to the idle bound so short idle
windows still renew. Expired rows are removed on validation and the
session list applies both bounds, so idle-dead sessions never show as
active. The cookie maxAge follows the configured absolute bound.

Documented in .env.example (with the VS-NfD reference values for the
upcoming hardening guide #227), compose passes the variables through,
security.md and ADR 0007 record the amendment.

Refs #190

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_0168Ph5uBmHm8X28CSVpbpnJ
2026-07-30 11:11:15 +02:00
..
backup Automate the monthly restore drill with a scratch-stack workflow (#87) 2026-07-11 20:58:06 +02:00
compose #190: configurable session lifetime with a server-side idle timeout 2026-07-30 11:11:15 +02:00
fonts Add PDF export via Gotenberg (#67) 2026-07-10 12:11:12 +02:00
legal Legal texts for dorfteich.online; legal template covers the newer processing 2026-07-12 19:00:05 +02:00
backup-basel.md Backup mirror to BASEL: rsync of the sets after every successful run (#84) 2026-07-12 12:20:32 +02:00
go-live.md Deploy Prod with its own SSH key 2026-07-14 14:07:11 +02:00
monitoring.md Nextcloud backup target: admin-configured, manual + scheduled uploads, in-app restore (#103) 2026-07-12 10:39:18 +02:00
release-qa.sh #189: make the CSRF origin check fail closed 2026-07-30 09:34:44 +02:00
self-hosting-verify.sh Write the self-hosting guide and add the optional caddy TLS profile (#88) 2026-07-11 21:21:10 +02:00
stages.md Re-align the stage tables after the path change 2026-07-14 12:53:11 +02:00