Activity — reference action ledger
Every adapter intent is persisted before execution and only becomes VERIFIED after an independent state read. Tool success is never trusted alone; idempotency keys make redelivery and crash-resume duplicate-free. The 409 record below is the injected failure the deterministic reference workflow recovered from.
| Action | System | Verdict · rule | Attempts | Status | Idempotency key |
|---|---|---|---|---|---|
| Book "TechCorp technical interview" at 2026-08-20T10:00:00-05:00 | recruiter (controlled) | ALLOW interview-slots-recruiter-approved-only | 1 | REPLAN_REQUIRED 409 SLOT_NO_LONGER_AVAILABLE: 2026-08-20T10:00:00-05:00 | wf-evt-gmail-econ-move-1:book_interview_slot:technical-interview-1:duration_min=60,end_iso=2026-08-20T11:00:00-05:00,slot_id=slot-thu-1000,start_iso=2026-08-20T10:00:00-05:00,start_min=3480 |
| Update calendar for "TechCorp technical interview" to 2026-08-20T10:00:00-05:00 | calendar adapter | ALLOW sync-calendar-with-approved-booking | 0 | STALE | wf-evt-gmail-econ-move-1:move_calendar_event:technical-interview-1:duration_min=60,end_iso=2026-08-20T11:00:00-05:00,slot_id=slot-thu-1000,start_iso=2026-08-20T10:00:00-05:00,start_min=3480 |
| Delegate "Sponsor deck visual QA" to Maya Okafor | organization (controlled) | ALLOW_AND_NOTIFY delegate-explicitly-delegatable | 1 | VERIFIED | wf-evt-gmail-econ-move-1:delegate_task:sponsor-visual-qa:new_owner=maya-okafor |
| Notify Maya Okafor about the delegation | message outbox | ALLOW_AND_NOTIFY routine-operational-updates | 1 | VERIFIED | wf-evt-gmail-econ-move-1:send_notification:maya-okafor:body=Hi Maya — a schedule conflict landed on my exam block, so per our backup plan I'm handing you "Sponsor deck visual QA". It needs to happen between Wed 14:00 and Wed 16:00. Thank you!,body_contains=Sponsor deck visual QA,thread_id=thread-org-sponsor-visual-qa,to=maya.okafor@university.demo |
| Move "Workout" to 2026-08-19T16:45:00-05:00 | calendar adapter | ALLOW move-flexible-or-optional-blocks | 1 | VERIFIED | wf-evt-gmail-econ-move-1:move_calendar_event:tuesday-workout:duration_min=60,end_iso=2026-08-19T17:45:00-05:00,start_iso=2026-08-19T16:45:00-05:00,start_min=2445 |
| Move "Side-project build block" to 2026-08-20T12:00:00-05:00 | calendar adapter | ALLOW move-flexible-or-optional-blocks | 0 | STALE | wf-evt-gmail-econ-move-1:move_calendar_event:side-project-block:duration_min=240,end_iso=2026-08-20T16:00:00-05:00,start_iso=2026-08-20T12:00:00-05:00,start_min=3600 |
| Remove invalidated block "Study: ECON 402" (2026-08-19T20:30:00-05:00) | calendar adapter | ALLOW restructure-study-blocks | 1 | VERIFIED | wf-evt-gmail-econ-move-1:delete_calendar_event:wed-evening-prep:reason=reservation invalidated by mutation |
| Remove invalidated block "Study: ECON 402" (2026-08-20T19:00:00-05:00) | calendar adapter | ALLOW restructure-study-blocks | 1 | VERIFIED | wf-evt-gmail-econ-move-1:delete_calendar_event:thu-evening-prep-1:reason=reservation invalidated by mutation |
| Remove invalidated block "Study: ECON 402" (2026-08-20T21:15:00-05:00) | calendar adapter | ALLOW restructure-study-blocks | 1 | VERIFIED | wf-evt-gmail-econ-move-1:delete_calendar_event:thu-evening-prep-2:reason=reservation invalidated by mutation |
| Remove invalidated block "Study: ECON 402" (2026-08-21T08:30:00-05:00) | calendar adapter | ALLOW restructure-study-blocks | 1 | VERIFIED | wf-evt-gmail-econ-move-1:delete_calendar_event:fri-morning-prep-1:reason=reservation invalidated by mutation |
| Remove invalidated block "Study: ECON 402" (2026-08-21T10:00:00-05:00) | calendar adapter | ALLOW restructure-study-blocks | 1 | VERIFIED | wf-evt-gmail-econ-move-1:delete_calendar_event:fri-morning-prep-2:reason=reservation invalidated by mutation |
| Reserve 204 min for "ECON 402 exam preparation" at 2026-08-18T19:30:00-05:00 | calendar adapter | ALLOW restructure-study-blocks | 1 | VERIFIED | wf-evt-gmail-econ-move-1:create_calendar_event:study-econ402-midterm-2-prep-1:duration_min=210,end_iso=2026-08-18T23:00:00-05:00,reserves_effort_for=econ402-midterm-2-prep,start_iso=2026-08-18T19:30:00-05:00,start_min=1170,title=Study: ECON 402 exam preparation |
| Reserve 156 min for "ECON 402 exam preparation" at 2026-08-19T09:00:00-05:00 | calendar adapter | ALLOW restructure-study-blocks | 1 | VERIFIED | wf-evt-gmail-econ-move-1:create_calendar_event:study-econ402-midterm-2-prep-2:duration_min=162,end_iso=2026-08-19T11:42:00-05:00,reserves_effort_for=econ402-midterm-2-prep,start_iso=2026-08-19T09:00:00-05:00,start_min=1980,title=Study: ECON 402 exam preparation |
| Book "TechCorp technical interview" at 2026-08-20T13:00:00-05:00 | recruiter (controlled) | ALLOW interview-slots-recruiter-approved-only | 1 | VERIFIED | wf-evt-gmail-econ-move-1:book_interview_slot:technical-interview-1:duration_min=60,end_iso=2026-08-20T14:00:00-05:00,slot_id=slot-thu-1300,start_iso=2026-08-20T13:00:00-05:00,start_min=3660 |
| Update calendar for "TechCorp technical interview" to 2026-08-20T13:00:00-05:00 | calendar adapter | ALLOW sync-calendar-with-approved-booking | 1 | VERIFIED | wf-evt-gmail-econ-move-1:move_calendar_event:technical-interview-1:duration_min=60,end_iso=2026-08-20T14:00:00-05:00,slot_id=slot-thu-1300,start_iso=2026-08-20T13:00:00-05:00,start_min=3660 |
| Move "Side-project build block" to 2026-08-20T14:00:00-05:00 | calendar adapter | ALLOW move-flexible-or-optional-blocks | 1 | VERIFIED | wf-evt-gmail-econ-move-1:move_calendar_event:side-project-block:duration_min=240,end_iso=2026-08-20T18:00:00-05:00,start_iso=2026-08-20T14:00:00-05:00,start_min=3720 |
This table is the deterministic baseline ledger. Production uses the same lifecycle in Firestore; its Calendar target is real and its recruiter, organization, and message-outbox targets are controlled integrations.