Jadpo is experimental and not ready for production. These docs follow the compiler's main branch as of 30 Oct 2026. What's built · Install 0.1.0
jadpo
Reference: Jobs and events

Jobs and events · rule

subscriber.item_invalid

Subscriber holds an item it doesn't take, gives one twice or leaves out on: or run:.

Area 12, Jobs and events; not declinable; the next step is usually the agent's.

A subscriber holds on:, run: and retry: only:

example
type Note = Text {    max_length: 200}entity Reminder {    id: Uuid    note: Note    sent: Bool    policy: {        create: [Access.authenticated]        read: [Access.system]        update: [Access.system]    }}type ReminderDue = Event {    reminder_id: Reminder.id}action send_reminder(reminder_id: Reminder.id) fails ReminderNotFound -> Unit {    attempt Reminder.update(reminder_id) {        set: {            sent: true        }    }}subscriber send_due {    on: ReminderDue    run: send_reminder(event.reminder_id)    timeout: 5m}
text
error: `timeout` isn't something a subscriber holds --> main.jadpo:32:5   |32 |     timeout: 5m   |     ^^^^^^^ not a subscriber item  reason: A subscriber names the event it listens for with `on:` and the action it runs with `run:`, and may change how it is retried with `retry: { attempts: within: }`; nothing else.  next: Write `on: <Event>` and `run: <action>(event)`, once each (agent)  rule: subscriber.item_invalid  help: https://jadpo.dev/docs/errors/subscriber.item_invalidcheck failed: 1 error, 1 file

Markdown for agents: /docs/errors/subscriber.item_invalid.md.Built from Jadpo main at a707efb.