What's new
- Added an authenticated inbox route that queues
connector.draft_runjobs for the configured gb-agent connector. - The trigger builds redacted connector context from the selected conversation and inbound message, then leaves the worker/runtime to call gb-agent and persist the draft result.
- Duplicate requests use deterministic queue dedupe metadata so operators cannot accidentally enqueue repeated runs for the same inbound message.
Security and operations
- Workspace scope comes from authenticated operator access, never from request payloads.
- The route reads connector endpoint configuration from workspace settings and never reads or returns the connector bearer token.
- Unsafe configured endpoints are rejected before conversation loading or queueing, including credential-bearing URLs, localhost/private hosts, broad special/reserved IPv4/IPv6 ranges, and private DNS results.
- Queued payloads omit raw provider payloads, media URLs, provider tokens, raw phone numbers, tags/labels, and journey details.
- The trigger queues only
connector.draft_run; it does not send WhatsApp messages or mutate opt-outs, tags, labels, journeys, or conversation status.