Developer Manual

Provider adapters

Implement the host-owned mutation boundary without claiming effect truth.

The provider adapter is a host-owned implementation of the mutation boundary. It attempts an action against an external system; it does not establish effect truth.

Contract shape

The current contract describes a bounded mutation seam such as mutateConditional(request) and a result category such as ACKNOWLEDGED, REJECTED, PRECONDITION_FAILED, or UNCERTAIN. Use the exact exported declarations for the package version you consume. Provider-specific statuses, credentials, HTTP clients, idempotency settings, and correlation references remain behind the host boundary.

The adapter must:

  • receive a Core-bound operation/effect/execution/attempt identity;
  • use credentials only inside the host-controlled provider call;
  • preserve bounded provider outcome and stable references;
  • distinguish a request acknowledgment from authoritative effect truth;
  • apply timeouts and bounded error translation;
  • avoid a second mutation after an unresolved result.

Independent verification

The verifier must be registered separately from the provider adapter. It reads the authoritative system using the exact effect identity and applicable finality policy. A provider callback, local mutation flag, cache, or acknowledgment cannot substitute for that read.

What is not currently available

Generic HTTP, MCP, OpenAI/tool, Telnyx Core, Twilio Core, and public web-chat adapters are not current consumable package exports. Retell is a bounded Private Preview Actions adapter, not a hosted Retell service.