From 805e2b33fc751cb15c93dafd30393e79d11d87d4 Mon Sep 17 00:00:00 2001 From: anti Date: Wed, 17 Jun 2026 16:50:43 -0400 Subject: [PATCH] docs(1.1): mark C5 batch group shipped, live-swap verification pending --- development/RELEASE-1.1.md | 12 ++++++++---- 1 file changed, 8 insertions(+), 4 deletions(-) diff --git a/development/RELEASE-1.1.md b/development/RELEASE-1.1.md index 03df7f17..6b0ee3d2 100644 --- a/development/RELEASE-1.1.md +++ b/development/RELEASE-1.1.md @@ -53,10 +53,14 @@ the ORM into every worker. No production code imports `generate` from the packag (`webhook`, `canary`, `listener`, `forwarder`, `mutate`, `enrich`) into reusable `async def run(bus, cfg)` in their packages, so they're hostable by a supervisor. CLI commands become thin `asyncio.run(run(...))` wrappers. No behaviour change. -- [ ] **C5 — `decnet supervise`.** TaskGroup supervisor hosting the idle herd in one - process; reuses existing bus + `system.{worker}.control` shutdown. One systemd unit - replacing ~8. `# ponytail: shared event loop — split a worker back out if it needs - its own restart policy / MemoryMax`. +- [x] **C5 — `decnet supervise` primitive + batch group.** `decnet/supervisor.py` + (per-worker restart loops, NOT TaskGroup) + `decnet supervise batch` hosting + reconcile/enrich/orchestrate/mutate with one shared repo + `deploy/ + decnet-supervise-batch.service.j2` (Conflicts= the units it replaces). Unit-tested. + **Live verification PENDING** — must be a controlled unit *swap* (stop the 4 units, + start supervise-batch), never a parallel run: `mutate`/`orchestrate` are stateful and + double-running mutates deckies / doubles synthetic traffic. Measure RSS before/after. + Remaining groups (cpu, scapy) and webhook-timeout prerequisite not yet built. - [ ] **C6 — merge scapy workers.** Optional. `collect`/`probe`/`sniffer` share the 76 MB scapy import once instead of 3×.