Define the versioned AgentRuntime adapter contract
- Dominant language
- Python
- Stars
- 0
- Forks
- 0
- PR merge metrics
- No merged PRs in 30d
Description
## Parent and milestone
- Parent issue: #23
- Milestone: not scheduled; implementation starts after #15 and the #42 product
gate.
## Problem
Durex runtime contracts currently model one task runner and supervisor but do
not bind ACP or native runtime sessions to provider-neutral Durex identity,
capabilities, follow-up input, health, usage observations, execution
environments, or structured extensions.
## Outcome
Publish an ADR and typed internal `AgentRuntimeAdapter` contract around ACP and
approved native extensions without creating a competing public wire protocol
or importing vendor SDK types into the core.
## Scope
- Define `AgentRuntimeAdapter`, `AgentSessionHandle`, `RuntimeCapabilities`,
`AgentEvent`, `UsageObservation`, and structured error categories.
- Map ACP sessions, prompts, updates, tools, permission requests, content, and
cancellation to Durex run, lease, interaction, and checkpoint identity.
- Define mandatory versus optional capabilities and explicit unsupported
responses.
- Preserve opaque provider extensions in bounded envelopes.
- Define `acp_standard`, `acp_plus_native`, and `pty_degraded` maturity.
- Define compatibility and a conformance suite across ACP and justified native
extensions.
## Non-goals
- Implementing a concrete runtime adapter.
- Forking ACP or adding Durex queue, workspace, plugin, secret, budget, policy,
or node lifecycle to ACP.
- Normalizing model prices or subscription terms.
- Owning execution environments tracked by #44 or pipeline behavior tracked by
#24.
## Acceptance criteria
- [ ] The internal contract covers start, resume, follow-up, cancel, health,
event streaming, interactions, and usage observation.
- [ ] ACP is the default wire path and every native extension has evidence from
#25.
- [ ] Provider and ACP ids never replace Durex task, run, lease, workspace, or
session ids.
- [ ] Capability downgrade and incompatibility behavior is explicit.
- [ ] PTY degradation cannot authenticate high-risk interactions.
- [ ] Targeted and conformance tests pass.
- [ ] Architecture, adapter, and operator documentation is updated.
## Validation
- Review against the capability audit in #25 and execution boundary in #44.
- Run contract serialization and fake ACP/native-adapter lifecycle tests.
## Dependencies
- #25 and #44; #15 gates runtime implementation.
Contributor guide
No contributing guide indexed for this repository
Research direction
Start by reviewing the capability audit in #25 and execution boundary in #44, then define the ADR and typed internal contract named in the issue. Validate with contract serialization and fake ACP/native-adapter lifecycle tests. Done means the listed lifecycle, capability, identity, degradation, and compatibility behaviors are explicit and targeted and conformance tests pass.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- python
- Domain
- backend-api-design, distributed-systems
- Issue type
- Feature
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Quiet
- Clarity
- Mostly clear
- Newbie friendliness
- 32/100