Live MX redeployed (mas-live:v0.2-a95f848) and kept by founder decision; records updated

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>

Assistant: claude-code
Assistant-Model: opus
Assistant-Process: 5787@bnt-lap001
Assistant-Session: 5db26b82-138b-40cc-9856-4d5eb0f752fd
This commit is contained in:
tegwick 2026-10-19 11:15:12 +02:00
parent a95f848781
commit 2bc41a3318
4 changed files with 28 additions and 9 deletions

View file

@ -84,17 +84,19 @@ delivery stays external.
- Finished: MAS-WP-0001 to 0006, 0008 and 0010. Postfix profile, v0.1.1
errata, v0.2 draft, address composer, v0.2 conformance cases, and the
mode contract with its reference implementation.
- Open: MAS-WP-0007 (retire the live MX; backlog, unblocked) and
MAS-WP-0009 (declare v0.2 final; waits for a second implementation or
deployment).
- Open: MAS-WP-0007 (retire the live MX; backlog, kept by decision),
MAS-WP-0009 (declare v0.2 final; waits for a second implementation),
and MAS-WP-0011 to 0013 (proposed).
- v0.2 stays a draft (founder, 2026-10-19).
- P2 is decided: `!MODE` requests a handoff (founder, 2026-10-19; SCP-8,
v0.2 §7.1). The mode contract v0.1 draft and the reference
implementation are done (MAS-WP-0010); `mas test` runs the contract
corpus.
- The live `mas-mx` pod runs an image built before the profile refactor
and before `mas_modes`. The current Dockerfile builds and imports
cleanly but has not been deployed.
- The live MX runs image `mas-live:v0.2-a95f848` (redeployed 2026-10-19)
and is kept up by founder decision (MAS-WP-0007 stays in backlog).
Open follow-ups: MAS-WP-0011 (contract transport security), 0012 (one
outbound path and cap), 0013 (harness-independent flows), 0009
(second implementation, now covering both drafts).
- Tests: `.venv/bin/pytest` runs 242 tests, offline apart from loopback
fixtures and the Docker probe. `mas test` runs four corpora: parser
62, statute 16, v0.2 statute-aware 29, mode contract 172.

View file

@ -126,4 +126,6 @@ Recorded on 2026-10-19, after this assessment:
2. One outbound path and one cap (risk C): **MAS-WP-0012**.
3. Flows independent of the harness (risk A): **MAS-WP-0013**. MAS-WP-0009
is widened so the second-language consumer covers both drafts.
4. Live MX retire-or-redeploy (risk E): founder decision on MAS-WP-0007.
4. Live MX (risk E): the founder decided to **redeploy, then keep**. It was
redeployed the same day with `mas-live:v0.2-a95f848` and verified (see
MAS-WP-0007).

View file

@ -82,7 +82,8 @@ demand.
address arrives unchanged up to RFC 5321 quoting: Postfix adds quotes
around non-dot-atoms (`.bernd` becomes `".bernd"`), and those are still
invalid MAS. All relay negatives get 554.
- Not redeployed: the running `mas-mx` pod still uses the image built
- Redeployed 2026-10-19 with image `mas-live:v0.2-a95f848` (see
MAS-WP-0007). Before that, the running `mas-mx` pod used the image built
before this change. The new entrypoint sets the same Postfix settings
through the profile and takes effect on the next image build. MAS-WP-0007
(retirement) no longer waits on this workplan.

View file

@ -8,7 +8,7 @@ status: backlog
owner: claude
topic_slug: coulomb-social
created: "2026-10-18"
updated: "2026-10-18"
updated: "2026-10-19"
origin: residual
origin_ref: MAS-WP-0003
state_hub_workstream_id: "03751989-8ed1-5a3f-bcc3-71aef8b375a6"
@ -21,6 +21,20 @@ follow-up validation (founder, 2026-10-18), capped at 300 sent replies.
Retire it once MAS-WP-0004 and MAS-WP-0005 no longer need it. Cluster-scoped
and external pieces do not disappear when the namespace is deleted.
**Founder decision (2026-10-19): redeploy, then keep.** The MX stays up for
a second deployment (MAS-WP-0009) or for live validation of the mode
contract. Retirement stays in backlog.
- 2026-10-19: redeployed `mas-mx` and `mas-statute` with image
`mas-live:v0.2-a95f848`, side-loaded into k3s containerd. The previous
image was `v0.2-a45f1a1`. The evidence (`events.jsonl`, 36 events, and
`tickets.sqlite3`) was backed up before the rollout and is intact on the
PVC. Checked: `mas discover` valid; the profile's relay control; TEM
relay with null-sender discard; OpenDKIM/OpenDMARC running; the ticket
service runs with `--max-sent 300 --require-dmarc-pass`; empty queue;
relaying to the public IP refused with 554 (`x@other`, `x!y@other`,
`a@mas...@other`).
## Retire the environment
```task