The AgentDraft glossary.
Short, evergreen definitions of the vocabulary of multi-agent scheduling — the failure mode, the coordination primitives, and the resolution semantics behind a deterministic conflict engine.
Updated
Coordination layer
A coordination layer is a shared service that independent AI agents call before writing to a contended resource, so exactly one write wins each conflict and the outcome is deterministic rather than a race.
AgentDraft is a coordination layer for calendars. Instead of each agent writing directly to Google Calendar or Outlook — where two simultaneous writes both succeed and the human is double-booked — every agent commits through AgentDraft first, and the conflict engine resolves the race to a single, predictable winner.
Scheduling source of truth
The scheduling source of truth is the single system every AI scheduling agent on a calendar queries and commits through, so one authoritative record of who booked what exists even when many agents operate independently.
Without a source of truth, each agent's local view of the calendar can disagree with every other agent's. AgentDraft is that shared record: availability is read from it, bookings are committed to it, and its audit log is the canonical history.
Multi-agent calendar collision
A multi-agent calendar collision is the failure mode that occurs when two or more independent AI scheduling agents commit bookings to the same calendar slot without coordinating, leaving the human with overlapping events.
The underlying calendar API accepts both writes because it has no notion of the other agent that was about to write. See the full definition, the four canonical collision patterns, and why existing tools don't address it in the dedicated entry.
Agent priority ranking
Agent priority ranking is a per-user ordering of that user's scheduling agents; when two agents race for the same slot, the higher-priority agent wins deterministically.
The calendar owner ranks their agents in the AgentDraft dashboard — a lower rank number means higher priority, and priority 1 is highest. A higher-priority agent can also evict a lower-priority booking, but only inside the bump window.
Bump window
The bump window is a short, configurable interval after a booking is committed — 30 seconds by default — during which a higher-priority agent may still evict it.
Once the bump window passes, the booking is frozen: no agent, regardless of priority, can displace it. The window bounds how long a freshly committed slot stays contestable.
Time-bucketed conditional write
A time-bucketed conditional write is the storage-level primitive AgentDraft uses to make a booking commit race-free: the booking is written as one row per fixed time bucket inside a single database transaction, each row guarded by a condition.
AgentDraft slices time into 5-minute buckets. A booking writes one conditional row per bucket it touches, all inside one DynamoDB TransactWriteItems. The transaction commits only if every bucket is free or held by a lower-priority agent — so check-and-commit is one indivisible operation, not two racing network calls.
Hold
A hold is a tentative, automatically expiring reservation of a calendar slot, used by an agent to claim a slot while it confirms with a human — without committing.
Holds expire on their own after a short TTL (30 seconds by default) and are displaced by any same-or-higher-priority commit. Promoting a hold into a final booking is a separate commit step.
Append-only audit log
An append-only audit log is an immutable record of every state-changing scheduling action — holds, commits, evictions, cancellations, rule changes — that can be added to but never edited or deleted.
AgentDraft writes the audit log to a separate store whose application credentials can only append. Both the winning and the losing agent in a collision can read the same row, so every booking decision is tamper-evident and explainable after the fact.
Outranked (HTTP 409)
Outranked is the result an agent receives when its booking attempt loses to a higher-priority agent: AgentDraft returns HTTP 409 with the winner's identity and priority.
Because the losing agent learns who won and at what priority — not just that it failed — it can propose an alternative slot or escalate, instead of blindly retrying the same contended time.
Conflict engine
The conflict engine is the deterministic component that resolves competing booking attempts at the storage layer, so every race between agents produces exactly one winner under a fixed set of priority rules rather than a nondeterministic outcome.
The rules live in the conditional write itself, not in application code: an attempt succeeds only if the slot is free, or held by a lower priority, or committed by a lower priority still inside the bump window. That is what makes the engine race-free under concurrent load.
Commit (booking mode)
A commit is the booking mode that durably reserves a calendar slot for an agent; unlike a hold, a commit does not expire and can only be displaced by a higher-priority agent inside the bump window.
Agents that need certainty commit directly; agents coordinating with a human often place a hold first and commit once the human confirms. After the bump window passes, the commit becomes a frozen booking.
Frozen booking
A frozen booking is a committed booking that is older than the bump window and can therefore no longer be evicted by any agent, regardless of priority.
Freezing is the guarantee that a confirmed slot stays confirmed: once a booking is frozen, even a priority-1 agent receives 409 rather than being allowed to bump it. It is the upper bound on how long a slot can churn.
Eviction (bump)
An eviction, or bump, is a higher-priority agent displacing a lower-priority agent's hold or in-window commit for the same slot — enforced atomically by the conflict engine's conditional write rather than by application code.
Eviction is bounded by the bump window: past it, the target is frozen and cannot be bumped. The evicted agent is told it was outranked and by whom, so it can react.
Booking buffer
A booking buffer is padding minutes reserved immediately before or after a booking so back-to-back meetings keep breathing room.
Buffers are not cosmetic — they occupy real time buckets in the conditional write, so they participate in conflict detection exactly like the meeting itself and count toward the per-request bucket limit.
Idempotency key
An idempotency key is an optional client-supplied token attached to a booking request so that a retried or duplicated call returns the original result instead of creating a second booking.
Agents retry — on a dropped connection, a timeout, or an ambiguous response. The key makes those retries safe: the same key replays the first outcome, so a flaky network can never turn one intended booking into two.
Agent key
An agent key is a bearer credential, prefixed avs_live_, that identifies a single scheduling agent to AgentDraft; it is hashed at rest and scoped so each agent can only perform the actions it was granted.
One key per agent is what makes the audit log and priority ranking meaningful: every action traces back to a named agent, and ranking operates on those identities.
API scope
An API scope is a named permission such as bookings:write that an agent key must carry for a given action; AgentDraft checks the required scope on every request so a key only ever holds least-privilege access.
A read-only agent can be issued a key that can query availability but never commit, so granting an agent access never means granting it everything.
Availability
Availability is the computed set of free, bookable slots derived from the scheduling source of truth, which an agent reads before committing so it proposes only times that are actually open.
Because availability is read from the same record every agent commits to, two agents asking "when is this person free?" get a consistent answer — the precondition for them not colliding.
Watch channel
A watch channel is a subscription to a calendar provider's change-push feed that lets AgentDraft learn about external edits and reconcile them into its record.
A human editing the calendar directly, or another app writing to it, would otherwise drift from the source of truth. Watch channels close that gap, and a periodic renewal keeps them alive before the provider expires them.
Check-then-book race
The check-then-book race is the race condition that occurs when an agent checks availability and then books in two separate calls: another agent can book the same slot between the check and the write, both checks pass, and the human is double-booked.
Most calendar APIs — and most agent frameworks' example code — prescribe exactly this pattern, because the API offers nothing better. The fix is to make the check and the write one atomic operation: a slot-level compare-and-swap, which is what AgentDraft's time-bucketed conditional write implements.
Double-booking
A double-booking is the failure state in which two events occupy the same slot on one calendar because independent writers — humans or AI agents — committed without coordinating through a shared arbiter.
Between humans, double-bookings are rare because a human glances at the calendar first. Between AI agents they are structural: agents act concurrently, at machine speed, through APIs that accept both writes. The multi-agent variant is a multi-agent calendar collision, and it is the failure mode AgentDraft exists to remove.
Hold TTL
The hold TTL is the time-to-live on a hold — 30 seconds by default — after which the tentative reservation expires on its own and the slot returns to open availability without any agent having to release it.
The TTL is what keeps holds safe: an agent that crashes, times out, or simply never comes back cannot leave a slot locked forever. An agent that needs longer confirmation windows re-holds or commits before expiry.
Idempotent booking
An idempotent booking is a booking request that can be retried safely because it carries an idempotency key: any repeat of the same request returns the original result instead of creating a second, overlapping booking.
Agents retry by design — on timeouts, dropped connections, and ambiguous responses. Without idempotency, every retry is a chance to turn one intended meeting into two. Making calendar writes idempotent is the scheduling equivalent of Stripe's idempotent charge creation, and the AgentDraft SDKs make the key a first-class request option.
Agent mailbox
An agent mailbox is a dedicated email inbox provisioned for a single AI agent, with its own address, so the agent can send and receive mail under an identity that is separate from any human's inbox and fully auditable.
Sharing a human's Gmail via OAuth gives an agent too much access and no identity of its own. A per-agent mailbox scopes what the agent can read, attributes every message it sends, and feeds received mail to the agent via an inbound email webhook or the API.
DKIM for agents
DKIM for agents is DKIM signing applied to mail an AI agent sends, so receiving servers can cryptographically verify the message really came from the agent's domain — the deliverability floor for any agent that emails humans.
Mail from an unsigned domain lands in spam, and an agent that lands in spam is an agent that silently stops working. AgentDraft signs outbound mail from every agent mailbox, so builders don't have to run their own signing infrastructure to give an agent a trustworthy sending identity.
A2A scheduling
A2A scheduling is Agent-to-Agent scheduling: two AI agents negotiating a meeting time machine-to-machine over the A2A protocol — discovery card, availability, propose, accept, counter-propose — instead of relaying through humans.
The negotiation still needs an arbiter when both sides finally write: A2A settles which time, the conflict engine settles whose write lands. AgentDraft publishes an A2A discovery card and task surface — read the A2A reference.
Collision benchmark
A collision benchmark is a reproducible test harness that races multiple AI agents at one calendar under concurrent load and counts double-bookings, lost updates, and latency, so coordination claims can be verified instead of asserted.
Any API can claim to be "conflict-free"; a benchmark makes the claim falsifiable. AgentDraft publishes an open-source harness and its round-by-round results — see the multi-agent collision benchmark — and invites re-runs against any stack.
Slot-level compare-and-swap
A slot-level compare-and-swap is an atomic write against a single calendar slot that succeeds only if the slot's current state matches an expected condition, making the availability check and the booking write one indivisible operation.
It is the calendar analogue of the CPU's compare-and-swap instruction. No mainstream calendar API exposes one — which is why the check-then-book race exists. AgentDraft implements it with a time-bucketed conditional write, one guarded row per slot bucket inside a single transaction.
Inbound email webhook
An inbound email webhook is a signed HTTP callback fired the moment an agent mailbox receives a message, so the agent can react to incoming mail in real time without polling an inbox.
Polling wastes tokens and adds latency; a webhook inverts the flow. AgentDraft signs each delivery with HMAC-SHA256 so the receiving agent can verify the payload really came from its mailbox — see the webhooks reference.
- The protocol spec — the wire surface that puts these terms into practice.
- Multi-agent calendar collision — the failure mode, in depth.
- Field notes — longer technical writeups.
Frequently asked
How is this glossary maintained?
Each term has a single canonical definition kept in the DefinedTermSet JSON-LD that ships on this page and in the AgentDraft codebase (src/lib/page-meta.ts). Updating a definition is a single-file change; the JSON-LD and the visible content stay in sync.
Why a glossary?
Multi-agent scheduling is a young category. The terms "coordination layer", "bump window", "multi-agent collision", and "outranked" aren't standardized yet. This page is our attempt to define them once so AI agents, builders, and answer engines reading our docs land on the same vocabulary.