Skip to content

ci: run ACP TCK agent-side suites against pinned revisions - #182

Draft
PsiACE wants to merge 1 commit into
mainfrom
acp-tck-evaluation
Draft

PsiACE wants to merge 1 commit into
mainfrom
acp-tck-evaluation

Conversation

@PsiACE

@PsiACE PsiACE commented Nov 4, 2026

Copy link
Copy Markdown
Member

Summary

Adds the Agent-side ACP TCK test infrastructure so protocol conformance is verified against pinned external TCK revisions, not just the SDK's own unit tests.

  • scripts/run_tck.py — pins TCK revisions, runs both suites, and validates report provenance (protocol version, schema revision, agent command) before judging results.
  • tests/tck/agent_v1.py / agent_v2.py — deterministic stdio probe agents using this checkout's public SDK entry points (acp.run_agent, acp.experimental.v2.run_agent); they supply application state only, never hand-rolled JSON-RPC framing.
  • .github/workflows/tck.yml — CI job checking out both pinned TCK commits and uploading build/tck/* artifacts even when a gate fails.
  • docs/tck.md (plus README/mkdocs links) — local run instructions and lane status.

v1 gate

TCK commit b7f40fb3 (schema beac4ba9): verdict conformant, 31/31 MANDATORY PASS. Single ADVISORY failure ACP-SESSION-004 is the MCP-connection check that the probe intentionally leaves to application code, not an SDK transport issue.

v2 alpha.5 observation

TCK commit fa00ccdc (schema 9af0e9f7, 2.0.0-alpha.5): verdict not conformant, with known failures:

  • MANDATORY: ACP-INIT-003, ACP-INIT-201, ACP-INIT-202 (version negotiation), ACP-JSONRPC-001 (batch responses)
  • ADVISORY: ACP-BATCH-203/204/205, ACP-JSONRPC-005 (batch per-entry handling)

v2 runs in CI and reports but is not promoted to a gate until version-negotiation and batch behaviors are fixed in the SDK.

Validation

  • make check — clean (ruff, prek, ty, deptry, lockfile)
  • make test — 491 passed, 1 skipped
  • scripts/run_tck.py --tck-v1-dir <b7f40fb3> --tck-v2-dir <fa00ccdc> — exit 0; v1 conformant, v2 known failures above

Add the initial Agent-side TCK integration infrastructure: probe agents
for protocol v1 and experimental v2, a runner that pins TCK revisions
and verifies report provenance, a CI job that uploads reports even when
the v2 gate is not yet green, and docs describing local usage.

The v1 lane is a CI gate (conformant, 31/31 mandatory PASS). The v2
alpha.5 lane reports known failures in version negotiation and batch
responses; it is not promoted to a gate until those SDK behaviors are
fixed.

This branch has not been deployed

No deployments
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant