Problem Overview Specification Examples Connect
v0.1 Draft

Open Execution Protocol

A coordination layer for AI-driven operations in grocery and QSR. Defining how agents and systems communicate to execute in the physical world.

Contents

The Problem

AI agents are moving from recommendation engines to coordination systems. They'll soon orchestrate orders, negotiate fulfillment, handle substitutions, and recover from failures across systems that were never designed to work together.

We have standards for product data, transactions, and inventory. But those standards were built for batch updates and human-mediated workflows. They assumed a person would bridge gaps between systems.

AI agents don't work that way. They need to understand real-time operational state, express intent with constraints, negotiate with systems that might say no, and learn from outcomes.

Current standards describe things. Agentic commerce needs standards that describe movement.

No common event language

Systems can't communicate what's happening in real-time operations.

No shared state model

Agents can't reason about where things are in their lifecycle.

No intent negotiation

Agents query and command. They can't negotiate with systems.

No outcome feedback

Without standardized results, agents can't learn or improve.

Framework Overview

The Open Execution Protocol defines a coordination layer that sits above existing operational systems. It provides the common language those systems use to communicate with external participants: AI agents, delivery networks, marketing platforms, and third-party applications.

Design Principles

Five Core Components

01

Canonical Execution Events

A shared vocabulary of operational occurrences. Not "data changed" but "order at risk" or "customer arrived." Verbs, not nouns.

02

Execution State Model

A shared understanding of where things are in their operational lifecycle. Enables agents to reason about status and coordinate handoffs.

03

Intent & Action Contracts

Agents express what they want to accomplish. Systems respond with commitments, modifications, or counter-proposals. Negotiation, not just transactions.

04

Semantic Product Models

Product intelligence beyond SKU numbers. Substitution logic, dietary attributes, freshness windows, and promotional constraints.

05

Feedback & Outcome Signals

Standardized results that enable learning. Success, partial success, or failure, with reason codes and performance data.

Specification

1. Canonical Execution Events

Execution events describe operational occurrences that matter for real-time coordination.

Event Structure

Event Schema
{
  "event_id": "evt_7f3d8a2b",
  "oep_version": "0.1.0",
  "event_type": "ORDER_AT_RISK",
  "timestamp": "2026-02-23T14:32:17.234Z",
  "valid_until": "2026-02-23T14:37:17.234Z",
  "confidence": 0.87,
  "source": {
    "system": "inventory_360",
    "location_id": "store_4521",
    "actor_type": "system"
  },
  "correlation_id": "int_order_risk_001",
  "context": {
    "order_id": "ord_9x8y7z",
    "risk_type": "item_availability",
    "affected_items": ["sku_12345"]
  }
}

Order Lifecycle Events

Event TypeDescriptionSource
ORDER_CREATEDNew order enteredCommerce/POS
ORDER_CONFIRMEDOrder accepted and queuedOMS
ORDER_AT_RISKFulfillment timeline threatenedInventory
ORDER_READYOrder prepared for handoffFulfillment
ORDER_COMPLETEDSuccessfully deliveredFulfillment
ORDER_CANCELLEDOrder terminated before completionCommerce/OMS

Customer & Fulfillment Events

Event TypeDescriptionSource
CUSTOMER_ARRIVEDCustomer at pickup locationGeofence/App
VEHICLE_DETECTEDVehicle in pickup zoneCamera/Sensor
HANDOFF_INITIATEDStaff beginning deliveryMobile
HANDOFF_COMPLETEDOrder transferredMobile
CUSTOMER_DEPARTEDCustomer left pickup locationGeofence/App

Inventory & Operations Events

Event TypeDescriptionSource
ITEM_UNAVAILABLEProduct out of stockInventory
SUBSTITUTION_REQUIREDOriginal needs replacementFulfillment
SUBSTITUTION_PROPOSEDAlternative suggestedAI/System
MARKDOWN_TRIGGEREDPrice reduction activatedWaste/Pricing
ITEM_LOW_STOCKProduct below thresholdInventory
SUBSTITUTION_ACCEPTEDCustomer approved substituteApp/Agent
SUBSTITUTION_REJECTEDCustomer declined substituteApp/Agent
PRODUCTION_COMPLETEItem finished preparationKitchen/Bakery

Staff & Resource Events

Event TypeDescriptionSource
STAFF_ASSIGNEDAssociate allocated to taskLabor
STAFF_UNASSIGNEDAssociate removed from taskLabor
STAFF_ESCALATIONTask requires supervisorLabor
RESOURCE_UNAVAILABLEEquipment or resource offlineOperations

Custom events use vendor-namespaced format: {vendor}.{EVENT_TYPE}

2. Execution State Model

A shared understanding of where things are in their operational lifecycle.

Core States

PLANNED QUEUED IN_PROGRESS COMPLETED
StateDefinitionTransitions
PLANNEDIntent captured, not actionable→ QUEUED, ABANDONED
QUEUEDWaiting for resources→ IN_PROGRESS, BLOCKED, ABANDONED
IN_PROGRESSActively being worked→ BLOCKED, DEGRADED, COMPLETED, ABANDONED
BLOCKEDCannot proceed→ IN_PROGRESS, ESCALATED, ABANDONED
DEGRADEDReduced capability→ IN_PROGRESS, BLOCKED, COMPLETED, ABANDONED
ESCALATEDRequires higher authority→ IN_PROGRESS, COMPLETED, ABANDONED
COMPLETEDSuccessfully finishedTerminal
ABANDONEDTerminatedTerminal

State Object

State Schema
{
  "entity_type": "order",
  "entity_id": "ord_9x8y7z",
  "current_state": "IN_PROGRESS",
  "state_entered_at": "2026-02-23T14:28:00Z",
  "confidence": 0.92,
  "sub_states": {
    "picking": "COMPLETED",
    "packing": "IN_PROGRESS",
    "staging": "PLANNED"
  },
  "constraints": {
    "deadline": "2026-02-23T15:00:00Z"
  }
}

3. Intent & Action Contracts

Agents express what they want to accomplish. Systems respond with what they can actually do.

Intent Request

Intent Request
{
  "intent_id": "int_abc123",
  "intent_type": "FULFILL_ORDER",
  "requestor": {
    "agent_id": "agent_shopping_assistant",
    "agent_type": "customer_ai",
    "authorization_level": "standard"
  },
  "target": {
    "order_id": "ord_9x8y7z",
    "location_id": "store_4521"
  },
  "constraints": {
    "deadline": "2026-02-23T15:00:00Z",
    "acceptable_handoff_modes": ["curbside", "locker"],  // curbside | in_store | locker | drive_through | delivery | shipping
    "substitution_policy": "similar_approved",
    "max_substitutions": 2
  },
  "fallbacks": [
    {
      "trigger": "deadline_at_risk",
      "action": "NOTIFY_CUSTOMER"
    }
  ]
}

System Response

System Response
{
  "intent_id": "int_abc123",
  "response_type": "ACCEPTED_WITH_MODIFICATIONS",
  "commitment": {
    "estimated_completion": "2026-02-23T14:52:00Z",
    "confidence": 0.88,
    "handoff_mode": "curbside"
  },
  "modifications": [{
    "type": "substitution",
    "original_item": "sku_12345",
    "substituted_item": "sku_12346",
    "reason": "out_of_stock"
  }]
}

Response Types

ResponseMeaningAgent Action
ACCEPTEDFulfill as requestedProceed
ACCEPTED_WITH_MODIFICATIONSFulfill with changesReview, confirm
DECLINEDCannot fulfillTry alternative
COUNTER_PROPOSALDifferent approachEvaluate
PENDINGNeed more timeWait

Intent Errors

Distinct from DECLINED (a business-level rejection), intent errors represent protocol-level failures:

Intent Error
{
  "intent_id": "int_abc123",
  "error_type": "validation",
  "error_code": "INVALID_FIELD",
  "message": "constraints.deadline is not a valid ISO8601 datetime"
}
Error TypeDescription
validationMalformed or invalid request fields
authorizationInsufficient permissions
protocolProtocol version mismatch or unsupported operation
internalUnexpected system failure

4. Semantic Product Models

Product intelligence beyond SKUs: substitution logic, dietary attributes, freshness windows.

Product Schema
{
  "sku": "sku_12345",
  "name": "Organic Whole Milk, 1 Gallon",
  "dietary_attributes": {
    "contains": ["dairy", "lactose"],
    "free_from": ["gluten", "nuts"],
    "suitable_for": ["vegetarian"],
    "not_suitable_for": ["vegan", "lactose_intolerant"]
  },
  "freshness": {
    "shelf_life_days": 14,
    "quality_decay_model": "linear",
    "markdown_trigger_days_remaining": 3
  },
  "substitution_rules": {
    "equivalent_products": ["sku_12346"],
    "acceptable_alternatives": [
      {
        "sku": "sku_12350",
        "similarity_score": 0.85,
        "requires_approval": false
      }
    ]
  }
}

5. Feedback & Outcome Signals

Standardized results that enable learning.

Outcome Schema
{
  "outcome_id": "out_f8e2a1",
  "intent_id": "int_abc123",
  "outcome_type": "PARTIAL_SUCCESS",
  "results": {
    "items_fulfilled": 8,
    "items_substituted": 1,
    "items_unavailable": 1
  },
  "performance": {
    "estimated_completion": "2026-02-23T14:52:00Z",
    "actual_completion": "2026-02-23T14:58:32Z",
    "variance_seconds": 392,
    "variance_reason": "customer_late_arrival"
  },
  "learning_tags": ["substitution_required", "curbside_successful"]
}
OutcomeDefinition
SUCCESSCompleted as committed, matched the intent response commitment exactly
PARTIAL_SUCCESSDeviated from the commitment
FAILEDCould not complete
TIMED_OUTIntent expired before fulfillment
CANCELLEDTerminated by requestor
OVERRIDDEN_BY_HUMANHuman took control

Use Cases

AI Agent Order Fulfillment

  1. Agent sends FULFILL_ORDER intent with constraints
  2. System returns ACCEPTED_WITH_MODIFICATIONS
  3. Agent confirms, receives commitment
  4. System emits state updates during fulfillment
  5. ORDER_READY triggers customer notification
  6. CUSTOMER_ARRIVED initiates handoff
  7. Outcome signal captures performance metrics

Third-Party Delivery Integration

  1. Delivery platform subscribes to order events
  2. Receives state updates: QUEUED → IN_PROGRESS
  3. Picking completion triggers driver dispatch
  4. ORDER_READY finalizes driver assignment
  5. Coordinated handoff minimizes wait time

Implementation

Transport Options

Delivery Semantics

Callback Security

Incremental Adoption

LevelComponentsCapability
1 - ObservableEventsSee what's happening
2 - QueryableEvents + StateCheck current status
3 - Negotiable+ IntentRequest and negotiate
4 - IntelligentFull OEPCoordination with learning

Let's Build This Together

This is early-stage thinking. If you're building in grocery tech, restaurant systems, or retail AI, your input shapes what this becomes.