docs(spec): session routing smoke results (drill 2026-09-26)
Some checks failed
CI / Lint (push) Has been cancelled
CI / Typecheck (push) Has been cancelled
CI / Broker tests (Postgres) (push) Has been cancelled
CI / Docker build (linux/amd64) (push) Has been cancelled

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
Alejandro Gutiérrez
2026-09-26 21:17:10 +01:00
parent 30ca36c922
commit b6eced514a

View File

@@ -77,11 +77,14 @@ Result: replies fan out to sibling sessions → noise. Fix all three; each alone
- bug9 `send` to a control-plane row says so (not "ephemeral"); `peer list --all` tags control-plane. - bug9 `send` to a control-plane row says so (not "ephemeral"); `peer list --all` tags control-plane.
## Smoke tests ## Smoke tests
| case | expected | Local E2E drill: `.artifacts/test-runs/2026-09-26-session-routing-drill.md`.
|---|---|
| push with sealed DM + wrong key | no inbox row, no channel event, `inbound_decrypt_failed` logged, acked | | case | expected | result |
| broadcast base64 of invalid UTF-8 | dropped, not rendered | |---|---|---|
| resumed session (`claude --resume`) | same session pubkey, sends signed by session key | | push with sealed DM + wrong key | no inbox row, no channel event, `inbound_decrypt_failed` logged, acked | ✅ unit (inbound-undecryptable) |
| DM to a member pubkey (policy reject) | broker error `member_target_requires_fanout` | | broadcast base64 of invalid UTF-8 | dropped, not rendered | ✅ unit |
| reply via channel `from_pubkey` | lands in exactly one session | | resumed session (lost registration) | same session pubkey, sends signed by session key | ✅ drill #3, #8 |
| `message status <8 chars printed by send>` | resolves | | DM to a member pubkey with >1 session | refused with candidates (CLI/daemon); broker warn/reject | ✅ drill #1, #6, #7 |
| reply via channel `from_pubkey` | lands in exactly one session | ✅ drill #2 (routing); ⬜ MCP meta in a real Claude session |
| `message status <8 chars printed by send>` | resolves | ✅ drill #4 |
| broadcast seen once by every session | whichever copy lands first | ✅ unit (inbound-multicast) |