Skip to content

feat: add schema sync tooling and regenerate ACP models - #9

Open
syan2018 wants to merge 4 commits into
nuskey8:mainfrom
syan2018:main
Open

syan2018 wants to merge 4 commits into
nuskey8:mainfrom
syan2018:main

Conversation

@syan2018

Copy link
Copy Markdown

Summary

This PR introduces a schema-driven sync workflow for ACP C# models and applies a full regeneration from upstream schema sources.

What changed

  • Added SchemaSyncTool to sync:
    • method constants from meta.json / meta.unstable.json
    • C# schema models from schema.json / schema.unstable.json
  • Added supporting docs and script:
    • tools/SchemaSyncTool/README.md
    • docs/schema-sync-plan.md
    • scripts/sync-schema.ps1
  • Regenerated protocol schema model files under src/AgentClientProtocol/Schema (including unstable models).
  • Removed handwritten RequestId implementation and aligned JSON-RPC runtime usage to generated schema type.
  • Updated sample code in sandbox/ConsoleApp1/Program.cs for current payload handling.

Design principles

  • Generation is schema-first and deterministic.
  • No handwritten per-type exceptions in schema model layer.
  • Integer format mappings are respected during generation (int32, int64, uint16, uint32, uint64).
  • RequestId now follows schema-driven generation path.

Validation

  • dotnet build src/AgentClientProtocol/AgentClientProtocol.csproj
  • dotnet run --project tools/SchemaSyncTool -- check

Both passed successfully.

syan2018 and others added 4 commits February 12, 2026 18:44
Introduce SchemaSyncTool, sync script, and documentation to keep ACP constants and schema types aligned with upstream schema sources.

Co-authored-by: Cursor <cursoragent@cursor.com>
Rebuild constants and schema model types from stable and unstable upstream definitions, including union/object translations and updated unstable type placement.

Co-authored-by: Cursor <cursoragent@cursor.com>
Replace handwritten RequestId usage with the generated schema variant, update endpoint validity checks, and adjust the sandbox sample to the current tool-call payload shape.

Co-authored-by: Cursor <cursoragent@cursor.com>
BrettKulp added a commit to BrettKulp/acp-csharp that referenced this pull request Aug 22, 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