Files
flynn/docs/plans/2026-02-16-announce-delivery-mode-checklist.md
2026-02-15 19:23:15 -08:00

1.2 KiB

Announce Delivery Mode Checklist

Date: 2026-02-16 Status: completed

Scope

  • Add a first-class automation delivery mode for cron/webhook runs.
  • Support isolated per-run sessions while preserving outbound reply routing.

Completed

  • Added automation.delivery_mode config enum in src/config/schema.ts:
    • shared_session (default)
    • isolated_job
  • Implemented reply routing override in src/channels/registry.ts via metadata.replyPeerId.
  • Updated CronScheduler and WebhookHandler to:
    • emit unique sender IDs per run when delivery_mode=isolated_job
    • include metadata.replyPeerId to keep output routing stable
    • include delivery metadata (deliveryMode, runId) for traceability
  • Wired delivery mode through channel registration in src/daemon/channels.ts.
  • Updated docs:
    • README.md automation sections
    • config/default.yaml commented template
  • Added tests:
    • src/channels/registry.test.ts
    • src/automation/cron.test.ts
    • src/automation/webhooks.test.ts
    • src/config/schema.test.ts

Verification

  • pnpm test:run src/channels/registry.test.ts
  • pnpm test:run src/automation/cron.test.ts src/automation/webhooks.test.ts
  • pnpm test:run src/config/schema.test.ts
  • pnpm typecheck