Repository navigation
Conversation
|
📁 PR Artifacts Notice This PR contains a |
Python API breakage checks — ✅ PASSEDResult: ✅ PASSED |
Endpoint auditContract: pinned release artifact
Actionable client-only calls (0)none Actionable server-only operations (18)
Documented non-divergences (13)Client calls intentionally absent from the filtered contract (11)
Reason: Operational Agent Server endpoints intentionally excluded from the filtered public release artifact.
Reason: Client-ahead API stacked on the pending Agent Server meta-profiles implementation.
Reason: Client-ahead API stacked on the pending Agent Server pre-flight LLM validation endpoint. Server operations covered by an exposed browser URL (2)
Reason: RemoteWorkspace.startWorkspaceSession exposes these authenticated URLs for browser iframe and file requests; they are not HttpClient method calls. |
REST API breakage checks (OpenAPI) — ✅ PASSEDResult: ✅ PASSED |
AGENT:
Implemented through the multi-agent pipeline (Claude Sonnet 5.5 medium design/review/triage, OpenAI GPT-6 Luna max implementation, OpenAI GPT-6.1 Sol high audit). Validation on this host:
sdk_validatewithCLAUDE_CODE_OAUTH_TOKENandCLAUDE_AUTH_CODEunset (2547 passed);make validatewith both variables exported in the parent shell (rc 0, 16m52s,git status --porcelainempty,TestACPEnvConflictSuppressionpassed); the samemake validatefrom a fresh local clone with no.venv(rc 0, 17m25s, porcelain empty).Why
The ai-dev runtime VERIFY step trusts only the baseline SHA's
.aidw/validation.json. Without it, VERIFY runsgo test/go vet. The workflow environment exportsCLAUDE_CODE_OAUTH_TOKENandCLAUDE_AUTH_CODE, which failTestACPEnvConflictSuppressionunless they are unset. The merge coordinator's default required check name is the Actions job namevalidate, which this repo did not have.Summary
.aidw/validation.jsondeclares schemaaidw.repository-validation.v1with the only commandmake validate(executablemakeonly; no-C/--directory).make validateunsetsCLAUDE_CODE_OAUTH_TOKENandCLAUDE_AUTH_CODEfirst, thenuv sync --dev --frozen, thetests.ymlunit suites (sdk, agent_server, workspace, cross, tools), pyright, pre-commit,git diff --check, andgit diff --exit-code..github/workflows/validate.ymladds a pull_request job whose name is exactlyvalidateand runsmake validate. Existing jobs, includingsdk-tests, are unchanged.uv.lock, ACP version pins, and agent-server startup are unchanged.Issue Number
Closes #72
How to Test
With both OAuth variables exported in the parent shell:
make validatethengit status --porcelainOn this host that was rc 0 in 16m52s with an empty porcelain. A fresh clone of this branch with no
.venvfinished in 17m25s (limit 31 min), also with an empty porcelain.TestACPEnvConflictSuppressionpassed while the parent environment still had both variables set.Type
Notes
tests/examplesandtests/integrationstay out ofmake validate(they need a live LLM; they are not in thetests.ymlunit jobs).tests/crossdeselectstest_openai_chat_completions_gateway_over_real_serverbecause it needs DNS that the implementation sandbox did not have; AGENTS.md records that exclusion. The orchestrator host does have DNS.