Skip to content

ci(acp): add a command-neutral acceptance probe - #3970

Draft
dspury wants to merge 1 commit into
block:mainfrom
Lunar-Park:pr/agent-harness-acceptance-contract
Draft

ci(acp): add a command-neutral acceptance probe#3970
dspury wants to merge 1 commit into
block:mainfrom
Lunar-Park:pr/agent-harness-acceptance-contract

Conversation

@dspury

@dspury dspury commented Jul 31, 2026

Copy link
Copy Markdown

Summary

Adds a command-neutral acceptance probe for ACP executables. Callers provide the executable and repeatable arguments explicitly; Buzz verifies that the command completes ACP initialize and session/new through buzz-acp models within a bounded timeout.

The contract depends only on the public ACP process boundary. It does not assume a particular runtime, host, relay, private key, deployment topology, or lifecycle manager.

What changed

  • Adds scripts/agent-harness-acceptance.sh with required --agent-command, repeatable --agent-arg, and configurable --timeout options.
  • Extends buzz-acp models with additive --agent-arg and --timeout options while preserving the existing positional argument behavior.
  • Preserves argument boundaries exactly, including spaces and commas.
  • Adds scripts/test-agent-harness-acceptance.sh, backed by a synthetic ACP command and fake buzz-acp, so CI validates success and failure behavior without installing any external runtime.
  • Wires the synthetic contract test into the existing GitHub Actions quick script checks.
  • Documents the public invocation in crates/buzz-acp/README.md.

The earlier unrelated ARCHITECTURE.md protocol-limit correction and named runtime presets are intentionally not part of this revision.

Why

An external ACP implementation should be testable against Buzz without adding runtime-specific discovery, installation, credentials, machine assumptions, or deployment policy to this repository. This probe gives adapter authors a stable executable contract while keeping those concerns with the caller.

Validation

  • bash -n scripts/agent-harness-acceptance.sh scripts/test-agent-harness-acceptance.sh
  • scripts/test-agent-harness-acceptance.sh
  • cargo test -p buzz-acp
  • cargo clippy -p buzz-acp --all-targets -- -D warnings
  • Real synthetic ACP handshake through the built buzz-acp, including arguments containing spaces and commas
  • just ci

The full just ci gate passed on 2026-08-13, including the current Rust, desktop/Tauri, web, and mobile checks, tests, and builds.

Rebuilt as one signed commit on upstream/main at a96af8952.

@dspury
dspury marked this pull request as ready for review July 31, 2026 18:15
@dspury
dspury requested a review from a team as a code owner July 31, 2026 18:15
@dspury
dspury force-pushed the pr/agent-harness-acceptance-contract branch from 55b9401 to a13b00b Compare August 13, 2026 05:19
Validate any caller-supplied ACP executable through initialize and session/new. Preserve repeated argument boundaries, make the handshake timeout configurable, and exercise the contract with a synthetic CI fixture.

Signed-off-by: dspury <demitriusspury@gmail.com>
@dspury
dspury force-pushed the pr/agent-harness-acceptance-contract branch from a13b00b to 276881c Compare August 13, 2026 07:30
@dspury
dspury marked this pull request as draft August 13, 2026 07:30
@dspury dspury changed the title ci: add external-agent harness acceptance contract ci(acp): add a command-neutral acceptance probe Aug 13, 2026
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