email-connect/docs/caller-deployment-2026-10-08.md
tegwick 48823c8182
All checks were successful
CI Smoke / host-smoke (push) Successful in 0s
CI Smoke / container-smoke (push) Successful in 1s
Route remaining product acceptance to WP-0015
Assistant: codex
Assistant-Model: gpt-6.1-sol
Assistant-Session: 01a119cf-56d0-7fa3-840b-eb8732e1db0b
2026-10-08 15:13:25 +02:00

66 lines
4.2 KiB
Markdown

# Email receiver deployment — 2026-10-08
Released under the user's explicit “If not please do so” instruction and
State Hub decision 0ef49fde-5e92-4656-ac1e-8f945b4bba08. Source c9756b0 (runtime code f703bf6),
image forgejo.coulomb.social/coulomb/email-connect@sha256:eb3e7b68d21209e9eb71b928a5b0bc987e8e3164f21dca4ff712f946d0c103f2. Deployment revision7, one Ready replica.
Started 2026-10-08T12:05:17Z; elapsed 62.79s.
The live Deployment spec changed only its immutable image. Existing caller token,
sender, config, PVC, ServiceAccount and networking are retained. Scoped policy
is not selected: per-caller admission is a separate operation in EMAIL-WP-0008-T03
and CSOC-WP-0015-T01. Permanent invitation rejection now remains terminal in the
existing startup mode; new caller controls are available for admitted policy.
No new caller, credential, sender, mailbox access, offsite upload or timer is
activated. No mail was sent for release verification.
Preflight: pinned cluster UID a553c742-0115-43d4-99a4-a5ca56fe0786,
old image1e613d43 and one Ready replica, Bound existing PVC, expected database
path and no selected caller policy. Node Ready/no pressure, CPU requests3455m
of4000m, memory9440Mi, disk120Gi free. Server dry-run proves image-only spec.
Seven offline failure scenarios prove pre-patch old-receiver resumption and
post-patch stopped-receiver fencing. Guard tests full template and replica count
before quiescing; historical helper cannot repeat this completed rollout.
Pause writer, take SQLite backup through read-only data-PVC helper without runtime
credentials, rehearse new-schema migration in its private copy, remove helper,
patch old-image test→new image, resume and verify. Every row and old column in
all five pre-release tables remains unchanged; caller namespace defaults empty,
caller budget table empty, two accepted invitation reservations remain duplicate
receipts. Isolated local packaged UID10001/read-only-root/network-none migration
of the actual copied backup passes the same proof. Synthetic packaged tests prove
scoped restart/idempotency, scope denial and redacted reference behavior.
Postflight: healthz/readyz200, unauthorized401, admitted bearer/disallowed
template400, invalid verification400, SQLite integrityok, six-table caller schema,
zero budget records and no selected scoped policy. One Ready replica, only image
spec change and no capture helper left. Public receipt:
caller-deployment-2026-10-08.json. Guarded capture and rehearsal helper source pins
are repinned together to the new digest; focused backup/release gates pass.
Private pre-release SQLite:49152bytes,
SHA256 1c943f28517cb75f324f1b11ed2e24f9aaa9779992a8534ef85906c1ff09dcae.
Node root0700 /tmp/email-connect-precallers-20261008/database.sqlite3 and
workstation0700 /tmp/csoc-mail-private-j4qnemvw/database.sqlite3 hold matching mode0600 copies.
These are temporary custody, not governed offsite recovery. Their retention/
expiry stays live in CSOC-WP-0015-T03 and EMAIL-WP-0007-T03/T04.
Rollback: stop the receiver first and preserve current ledger plus private backup.
Prefer rolling forward. Old code ignores caller ownership/budgets and terminal
failure policy, and old inserts can fail against added columns. Never use
unrestricted rollout undo or overwrite the current ledger with a pre-release
snapshot after traffic: reconcile later provider acceptance and challenge use
before any release of restored traffic. Scope/mode change needs separate return.
Remaining product work is CSOC-WP-0015 (runtime policy, sender/reply/bounce,
independent ledger custody and isolated owner-browser/flow acceptance), with
EMAIL-WP-0008-T03 and EMAIL-WP-0007-T03/T04 as canonical owner tasks.
## Original product-workplan closure — 2026-10-08
The user explicitly closed CSOC-WP-0008 and CSOC-WP-0010 after registering
residual workplans. They are finished historical records, no longer acceptance
trackers. Product communication execution and acceptance now belong to
CSOC-WP-0015; EMAIL-WP-0008-T03, EMAIL-WP-0007 and RPF-WP-0053 retain their
canonical runtime/custody tasks. Existing personal recovery acceptance and the
receiver revision7 deployment remain evidenced. No pending owner requirement
is waived or marked satisfied by the original workplans' administrative closure.