feat(acp): negotiate persistent system prompts - #1
Closed
reinhold-ph wants to merge 4 commits into
Closed
Conversation
Signed-off-by: Reinhold <310554180+reinhold-ph@users.noreply.github.com>
Signed-off-by: Reinhold <310554180+reinhold-ph@users.noreply.github.com>
Signed-off-by: Reinhold <310554180+reinhold-ph@users.noreply.github.com>
Signed-off-by: Reinhold <310554180+reinhold-ph@users.noreply.github.com>
reinhold-ph
force-pushed
the
fix/acp-persistent-system-prompt
branch
from
August 9, 2026 09:57
282988e to
1db51a1
Compare
cmyk
marked this pull request as ready for review
August 9, 2026 10:47
|
Internal validation complete; upstream submission continues at block#5386. |
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.
Why
Buzz currently infers persistent system-prompt support from ACP protocol version or adapter name. Codex ACP reports protocol v1, so Buzz falls back to prepending Base/System/team/core/canvas material to ordinary user messages on every turn.
This adds explicit capability negotiation for the extension implemented by the companion Codex ACP change.
Companion validation PR: Peakhunter/codex-acp#1
Protocol
_meta.capabilities.persistentSystemPrompt: trueininitialize.true; absent, false, and malformed values remain unsupported.session/new, Buzz sends the combined static prompt as string-valued_meta.systemPrompt.Compatibility
_meta.systemPrompt: { "append": ... }transport.systemPromptfield.Validation
RED SHA:
81895074d9fa0e580ddc7f41e037eb65f361a664GREEN SHA:
282988ea71869e82f05131d88307c4fce3750e49Local GREEN:
cargo test -p buzz-acp: 695 unit tests + 9 lifecycle integration tests passedsession/newandsession/promptJSON-RPC envelopes, exact prompt-block count/order, and capable/legacy contentcargo clippy -p buzz-acp --all-targets -- -D warningscargo fmt --all -- --checkgit diff --checkFork CI at exact SHA
282988ea71869e82f05131d88307c4fce3750e49:desktop/tests/e2e/onboarding.spec.ts:3172fails its welcome-banner assertion and retry. The same upstream-base failure reproduced across four runs; this branch changes onlycrates/buzz-acp/src/acp.rsandpool.rs.Base
validation/upstream-main-20260808is exact upstreamblock/buzz@f029deafae6ad3b63e13c29104f3be76122cb1df.