Skip to content

feat(cli): expose ACP session configuration - #4051

Draft
Sun-GLiang wants to merge 11 commits into
apache:mainfrom
Sun-GLiang:feat/acp-session-configuration
Draft

feat(cli): expose ACP session configuration#4051
Sun-GLiang wants to merge 11 commits into
apache:mainfrom
Sun-GLiang:feat/acp-session-configuration

Conversation

@Sun-GLiang

Copy link
Copy Markdown
Contributor

Summary

  • Return exactly four ordered ACP select configOptions from the Runtime Host's committed Session projection for every successful session/new: permission mode, thinking level, collaboration mode, and orchestration mode.
  • Implement ACP v1 session/set_config_option through the official SDK route for Sessions owned by the current ACP connection, with validation before Host I/O and stable ACP error envelopes.
  • Apply each live change through a full SessionConfiguration CAS update that preserves model selection and unrelated fields, re-reading after revision conflicts for at most three attempts.
  • Cover the complete option vocabulary, concurrent different-field convergence, catalog/update shutdown races, stdio serialization, and a real child-process create → configure flow.
  • Keep session/set_mode unsupported and unadvertised. ACP session/new has no configuration/mode input, so this PR does not represent create-time SessionStartMode or pretend it is mutable.

Refs #3132
Depends on #3744

Review dependency

Verification

  • TMPDIR=/private/tmp npm --workspace maka-agent test — 537 passed, 0 failed.
  • npm run typecheck
  • npm run lint
  • npm run format:check
  • git diff 4ed9973d68715d9441f6ab843824fb4897a42a3e..HEAD --check
  • Independent code review found no remaining Critical or Important issues after the error-envelope and concurrency/lifecycle test hardening.

AI use

Select exactly one:

  • No generative tool made a substantive contribution
  • Generative tooling made a substantive contribution

Tool(s) and scope: Codex assisted with design, implementation, tests, verification, checklist alignment, and review. Every PR3 commit includes a Generated-by: Codex trailer.

Checklist

  • Tests cover the change and fail without it
  • Lint, format, typecheck and the affected suites pass locally

Does this PR entail a change in behavior?

  • Yes — described under Summary above
  • No

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

Labels

effort/XL Over 1000 readable lines

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant