Skip to content

feat(daemon): content-protocol RPC router and read methods - #7847

Open
tlgimenes wants to merge 1 commit into
split/15-daemon-secretsfrom
split/16a-daemon-rpc-reads
Open

tlgimenes wants to merge 1 commit into
split/15-daemon-secretsfrom
split/16a-daemon-rpc-reads

Conversation

@tlgimenes

@tlgimenes tlgimenes commented Oct 8, 2026 •

Copy link
Copy Markdown
Contributor

Part of the v8 Studio stack, split from #7728, #7770 and #7766 (closed). Base: #7796. The top of the stack, #7843, has the same code as those three PRs combined.

The content-protocol JSON-RPC router and its read side: envelope and batch handling, request body limits, and the three read methods describe, schema.get and blocks.list with their parameter validation. Also adds secrets_test.go (the previous PR's secret guard plus describe's servablePublicKey). blocks.apply and the write paths come in the next PR.

What to look at

Envelope/batch handling and body limits in rpc.go/handler.go; ifNoneMatch short-circuits in schema.get/blocks.list; describe never broadcasts anything but a single PUBLIC KEY PEM block. An unknown method (including blocks.apply here) answers method-not-found.

Verified: go vet ./... && go test -race ./... in packages/sandbox/daemon-go pass on this branch.

Stack (Go daemon track 5/9, plan step 16a): previous #7815 · next #7817

🤖 Generated with Claude Code

https://claude.ai/code/session_01WNwbSEePYNcY5YCgqZURig


Summary by cubic

Adds the content-protocol JSON-RPC router and its read side to the Go daemon: envelope and batch handling, request body limits, and the three read methods describe, schema.get, and blocks.list with parameter validation. blocks.apply and the write paths land in the next PR.

  • ifNoneMatch short-circuits schema.get and blocks.list with a not-modified response.
  • describe never broadcasts anything but a single PUBLIC KEY PEM block.
  • Unknown methods, including blocks.apply here, answer method-not-found.
  • Adds secrets_test.go covering the secret guard and describe's servablePublicKey.

Written for commit 807184c. Summary will update on new commits.

View guided diff Turn on auto-fix

… schema.get, blocks.list)

The content-protocol JSON-RPC handler skeleton: envelope and batch handling, request body limits, and the three read methods with their parameter validation. Also adds secrets_test.go (the secret guard from the previous PR plus describe's servablePublicKey). blocks.apply and the write paths follow in the next PR.

Co-Authored-By: Claude Opus 5.5 <[email protected]>
Claude-Session: https://claude.ai/code/session_01WNwbSEePYNcY5YCgqZURig

This branch has not been deployed

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

Labels

claude PR authored by a coding agent

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant