Record the verified platform sender and match the deployment source.
All checks were successful
CI Smoke / host-smoke (push) Successful in 0s
CI Smoke / container-smoke (push) Successful in 1s

The attended release returned sender_deployed_verified for
platform@coulomb.social. Inspection shows one ready replica and a completed
journal. The ledger rows were kept and no mail was sent.

Assistant: grok
Assistant-Session: 01a198fa-fd27-7e41-a0a2-57355c3e4efd
This commit is contained in:
tegwick 2026-11-01 23:53:18 +01:00
parent 8b8d7f94b7
commit bcaa0973c9
5 changed files with 42 additions and 20 deletions

View file

@ -17,7 +17,7 @@
| workplan | EMAIL-WP-0007 | finished | — | workplans/EMAIL-WP-0007-ledger-backup-recovery.md |
| workplan | EMAIL-WP-0008 | finished | — | workplans/EMAIL-WP-0008-scoped-transactional-callers.md |
| workplan | EMAIL-WP-0009 | finished | — | workplans/EMAIL-WP-0009-wave2-resource-right-sizing.md |
| workplan | EMAIL-WP-0010 | active | — | workplans/EMAIL-WP-0010-platform-sender-transition.md |
| workplan | EMAIL-WP-0010 | finished | — | workplans/EMAIL-WP-0010-platform-sender-transition.md |
| task | EMAIL-WP-0001-T01 | done | — | workplans/EMAIL-WP-0001-repo-onboarding.md |
| task | EMAIL-WP-0001-T02 | done | — | workplans/EMAIL-WP-0001-repo-onboarding.md |
| task | EMAIL-WP-0001-T03 | done | — | workplans/EMAIL-WP-0001-repo-onboarding.md |
@ -65,6 +65,6 @@
| task | EMAIL-WP-0008-T04 | done | — | workplans/EMAIL-WP-0008-scoped-transactional-callers.md |
| task | EMAIL-WP-0009-T01 | done | — | workplans/EMAIL-WP-0009-wave2-resource-right-sizing.md |
| task | EMAIL-WP-0010-T01 | done | — | workplans/EMAIL-WP-0010-platform-sender-transition.md |
| task | EMAIL-WP-0010-T02 | wait | — | workplans/EMAIL-WP-0010-platform-sender-transition.md |
| task | EMAIL-WP-0010-T03 | wait | — | workplans/EMAIL-WP-0010-platform-sender-transition.md |
| task | EMAIL-WP-0010-T04 | todo | — | workplans/EMAIL-WP-0010-platform-sender-transition.md |
| task | EMAIL-WP-0010-T02 | done | — | workplans/EMAIL-WP-0010-platform-sender-transition.md |
| task | EMAIL-WP-0010-T03 | done | — | workplans/EMAIL-WP-0010-platform-sender-transition.md |
| task | EMAIL-WP-0010-T04 | done | — | workplans/EMAIL-WP-0010-platform-sender-transition.md |

View file

@ -13,9 +13,11 @@ be used. Read the-custodian/docs/agent-environment-orientation.md first.
Platform owns OpenBao custody, Kubernetes-auth ClusterSecretStore
openbao-email-connect and its scoped ESO ServiceAccount (RPF-WP-0045).
ExternalSecret email-connect/email-connect-runtime delivers the existing
EMAIL_CONNECT_INGEST_TOKEN, EMAIL_CONNECT_SMTP_USERNAME and
EMAIL_CONNECT_SMTP_PASSWORD fields. Never read or print Secret objects/annotations.
The receiver sender is platform@coulomb.social. Its SMTP username is that
same address and its SMTP password comes from Secret
email-connect-platform-smtp, projected from the admitted platform reader.
Callers come from the mounted callers file. Never read or print Secret
objects or annotations.
Route needs through warden route find/show email-connect-transactional.
The static ESO token bootstrap and duplicate store template are retired.

View file

@ -17,7 +17,6 @@ data:
# Matches the live user-engine Ingress host on railiance01 (nip.io until a
# coulomb.social alias is cut over). Update when the public hostname changes.
EMAIL_CONNECT_PORTAL_URL: "https://users.coulomb.social"
# Envelope From — interim identity matches the live forgejo IONOS SMTP lane
# (forgejo@coulomb.social) used to seed CCR-2026-0010. Switch to a dedicated
# noreply@ mailbox when that credential is minted separately.
EMAIL_CONNECT_SENDER: "forgejo@coulomb.social"
# Envelope From. The SMTP username and password are explicit Deployment
# environment entries from the admitted platform projection, not this map.
EMAIL_CONNECT_SENDER: "platform@coulomb.social"

View file

@ -52,12 +52,17 @@ spec:
envFrom:
- configMapRef:
name: email-connect-config
- secretRef:
name: email-connect-runtime
optional: false
env:
- name: EMAIL_CONNECT_CALLERS_FILE
value: /etc/email-connect-callers/callers.json
- name: EMAIL_CONNECT_SMTP_USERNAME
value: platform@coulomb.social
- name: EMAIL_CONNECT_SMTP_PASSWORD
valueFrom:
secretKeyRef:
name: email-connect-platform-smtp
key: password
optional: false
resources:
requests:
cpu: 5m

View file

@ -4,7 +4,7 @@ type: workplan
title: "Supervised platform sender transition with ledger continuity"
domain: infotech
repo: email-connect
status: active
status: finished
owner: codex
topic_slug: email-connect
created: "2026-10-31"
@ -51,8 +51,7 @@ archive-fingerprint compatibility and private-output refusal. Owner suite:
```task
id: EMAIL-WP-0010-T02
status: wait
blocking_reason: "Executor and assembly tests complete; sealing the live proposal requires verified RPF-WP-0068-T04 and its successful foundation receipt."
status: done
priority: high
depends_on: [EMAIL-WP-0010-T01, RPF-WP-0068-T04]
state_hub_task_id: "acb6f995-9177-5a3c-909a-feb152d6bfed"
@ -123,12 +122,16 @@ finish T02. Review: `docs/sender-attended-entry-2026-10-31.md`. No live grant,
sender change, production capture or mail send occurred; existing backup and
foundation source packets remain unchanged. T03/T04 retain live execution/return.
Done 2026-11-01 after RPF-WP-0068-T04. The sealed proposal is
`sha256:ecbfd2cd1cdcc991408d9923e9e4b1cda9af442a246ac7efcc87b228eb62582a`.
Five native server dry-runs passed. The change is forgejo@coulomb.social to
platform@coulomb.social. The ledger is retained and no mail is sent.
## T03 — Execute the admitted sender switch
```task
id: EMAIL-WP-0010-T03
status: wait
blocking_reason: "Requires the complete sender executor and verified RPF-WP-0068-T04 credential-owner return."
status: done
priority: high
depends_on: [EMAIL-WP-0010-T02, RPF-WP-0068-T04]
state_hub_task_id: "e0cbed16-f08f-50f7-8e15-633b3af29e88"
@ -141,11 +144,19 @@ the dry-run candidate as approval for an unprepared configuration change. Inspec
any existing attempt before replay; uncertain outcomes require the reviewed
recovery procedure. Preserve application/caller state and retained evidence.
Done 2026-11-01. The founder confirmed `DEPLOY` for digest
`sha256:ecbfd2cd1cdcc991408d9923e9e4b1cda9af442a246ac7efcc87b228eb62582a`.
The node returned `sender_deployed_verified` for `platform@coulomb.social`.
No mail was sent and the ledger was not restored. All six tables kept their
rows: 1 caller bucket, 2 deliveries, 1 suppression, 127 verifications and
127 verification attempts. No new rows and no permitted updates. The raw
snapshot bytes differ, which this check allows when the rows do not.
## T04 — Verify the native sender return and reconcile sources
```task
id: EMAIL-WP-0010-T04
status: todo
status: done
priority: high
depends_on: [EMAIL-WP-0010-T03]
state_hub_task_id: "19485ff3-132c-567c-8c28-8c039e63c2b4"
@ -159,6 +170,11 @@ authentication, selected inbox/return handling, suppression authority and
retention/productive verdicts remain live consumer requirements; this configuration
return does not establish them. No unsolicited mail is part of these checks.
Done 2026-11-01. `--inspect` reports phase `completed`, sender
`platform@coulomb.social`, one replica, and no running attempt. The deployment
source now matches that runtime. Delivered-message authentication, inbox and
return handling, suppression, and retention remain CSOC-WP-0015-T02.
## Completion
Finish after all four tasks have their stated native evidence. Hand any newly