Metadata-Version: 2.4
Name: agent-workflow-contracts
Version: 1.0.0
Summary: Shared frozen wire contracts for agent workflows
License-Expression: MIT
Requires-Python: >=3.10
Description-Content-Type: text/markdown
Requires-Dist: pydantic
Requires-Dist: hank-model-authority<2,>=1.6.1

# agent_workflow_contracts

Dependency-neutral frozen pydantic wire models shared by the gateway, the
product agent runtimes, and any external consumer. No gateway imports —
that is the point of the split.

`AgentOperationSnapshot.execution_class` records the operation's work-kind.
Optional `role` and `effort` declarations participate in its semantic identity;
they do not resolve a model here. Both fields are omitted when `None`, preserving
historical snapshot dumps and sealed admitted-task digests.

`awaiting_approval` is an attempt settlement awaiting a human decision, not
success or failure. It retains the exact admitted task identity, provenance,
and observed usage, with a reason but no analytical outcome or result values.
Executable approval binding and continuation belong to the gateway approval
owner, not these wire contracts.

| File | What it is |
|---|---|
| `models.py` | Frozen `WireModel` contracts including `CapabilityBind`, `AdmittedTask`, `TaskResult`, `DeliveryEnvelopeV1`/`V2`, `WorkflowView`, `PublishedOutput`, and `ContentHandle` |
| `ticker_contract.py`, `research_file_contract.py` | the two typed identifier contracts |
| `context_refs.py` | exact door-readback ref minter and declared-context renderer shared by pipeline stages and named children |
| `schema.py` | `public_json_schemas()` / `public_schema_bundle()` / `export_public_json_schemas()` |
| `generated/` | **build output** — JSON Schemas, `agent-workflow-contracts.d.ts`, the schema bundle, and delivery-envelope goldens. Regenerate from the checkout with `.venv/bin/python3 scripts/generate_agent_workflow_contracts.py`; do not hand-edit. |

Consumers and lifecycle: `../../agent-gateway/docs/api-reference.md` (section "Workflow Delivery Contracts")
The embedding application owns the workflow executor that admits and persists
these contracts.
