fix: resolve ACP v1 conformance failures found by acp-tck - #536
Merged
EugeneTheDev merged 2 commits intoSep 23, 2026
Merged
EugeneTheDev merged 2 commits into
EugeneTheDev merged 2 commits into
Conversation
Runs the acp-tck ACP v1 conformance suite against the adapter and fixes every MANDATORY and CAPABILITY failure it reports; the verdict goes from NOT CONFORMANT to CONFORMANT. - session/resume, session/load and session/delete failed with "no rollout found for thread id" on a session that was created but never prompted, because Codex materializes a thread's rollout lazily on its first user message. Resume/load now fall back to thread/read, which answers for a live unmaterialized thread; delete treats "no persisted thread under this id" as success, which also makes deleting an unknown or unparseable session id a silent no-op as the spec asks. - session/load could be followed by a session_info_update from a title generation still running from an earlier turn. Load now waits for that generation to settle before answering. - A session/cancel that lands before Codex registers the turn as interruptible was dropped, and the turn answered end_turn instead of cancelled. turn/interrupt is now retried with a short backoff while the prompt is still in flight. The one remaining failure, ADVISORY ACP-SCHEMA-002, is left as-is and explained in docs/acp-v1-conformance.md along with how to run the suite. Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
EugeneTheDev
marked this pull request as ready for review
September 22, 2026 21:20
EugeneTheDev
force-pushed
the
air/fix/acp-v1-conformance
branch
from
September 22, 2026 23:05
bc28457 to
226ff0e
Compare
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Runs the acp-tck ACP v1 conformance suite against the adapter and fixes every MANDATORY and CAPABILITY failure it reports; the verdict goes from NOT CONFORMANT to CONFORMANT.
Left as-is, ADVISORY-only: the remaining
ACP-SCHEMA-002finding flagsPromptResponse.usageandNewSessionResponse.modelsas non-_metaroot fields.usageis an SDK-defined field, andmodelsis an intentional backwards-compat shim for pre-configOptionsclients whose removal would need a deliberate major-version deprecation rather than a conformance patch. Since the requirement is ADVISORY, this doesn't affect the CONFORMANT verdict.