Documentation
¶
Overview ¶
Command appximo-worker is the outbox consumer (ADR-016 §Class 2): a SEPARATE process that drains public.outbox and runs each event through a Processor. It connects to the SAME Postgres as the engine (DATABASE_URL) with DEDICATED connections (never the engine's pool), LISTENs on outbox.NotifyChannel as a wake-up hint, and polls the table — the durable source of truth — as a fallback.
Scope: by default the Processor is the echo consumer, which logs the event and marks it sent — the minimal end-to-end proof that the async Class 2 loop lives.
SERVICE-JWT-V1: setting APPXIMO_WORKER_WRITEBACK=on swaps in the write-back demo consumer, which mints a SHORT-LIVED, SCOPED service JWT and PATCHes the created row's status back through the engine API — proving authenticated write-back (event → mint JWT → engine API → RBAC accepts the scoped role). It is a demo, not real business logic; real consumers (XLSX, email) are later bricks (ADR-016).