refactor the crate names, 1.0-alpha#9
Merged
nikomatsakis merged 5 commits intoagentclientprotocol:mainfrom Nov 4, 2025
Merged
Conversation
BREAKING CHANGE: Module reorganization changes import paths
Replace `acp` module with new structure:
- `sacp::schema` - Flat module with all ACP protocol types
- All concrete message types (InitializeRequest, PromptRequest, etc.)
- All supporting types (ContentBlock, AgentCapabilities, etc.)
- Internally organized but publicly flat
- `sacp::` root - Six primary message enums + common infrastructure
- AgentRequest, AgentNotification, AgentResponse
- ClientRequest, ClientNotification, ClientResponse
- Error, ErrorCode (for convenience)
Migration:
- Old: `use sacp::{InitializeRequest, ...}`
- New: `use sacp::schema::{InitializeRequest, ...}`
- Six message enums still at root: `use sacp::ClientRequest`
Benefits:
- Clearer separation between protocol types and SDK infrastructure
- Flat schema namespace - no need to know message direction
- Simpler mental model: six enums for routing, schema for types
- Removed blanket re-export of agent_client_protocol_schema
Updated:
- All dependent crates (sacp-tokio, sacp-proxy, elizacp, sacp-conductor)
- All examples and tests
- All doctests with proper import separation
- Fixed broken intra-doc links
Co-authored-by: Claude <claude@anthropic.com>
Move handler types (NullHandler, RequestHandler, NotificationHandler, MessageHandler, ChainHandler) from the root sacp namespace to a new `sacp::handler` module. This change reduces API surface area as most users won't need to explicitly name these types. Changes: - Created src/sacp/src/handler.rs module with re-exports from jsonrpc::handlers - Made jsonrpc::handlers module pub(crate) instead of public - Updated lib.rs to explicitly list infrastructure type exports - Updated imports in sacp-proxy, sacp-tokio, sacp-conductor, and sacp-doc-test
Add minimal release-plz.toml configuration with: - release_always=false for safer release workflow - dependencies_update=true to keep Cargo.lock current - pr_labels for easy identification of release PRs - Disable publishing for sacp-doc-test package
Fix failing doctest by using correct fully-qualified path `sacp::schema::SessionNotification` instead of the non-existent `sacp::SessionNotification`.
Update all workspace packages from mixed 0.1.x versions to unified 1.0.0-alpha version. This establishes a consistent pre-release version across the entire workspace as we prepare for the 1.0 release.
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.
This reworks our release series as 1.0.0-alpha. We refactor the names exported by each crate to be better organized.