Skip to content

coop: support canonical blueprint wire fields#1786

Open
tomelm wants to merge 1 commit into
stripe:coopfrom
tomelm:tomer/coop-blueprint-wire-schema
Open

coop: support canonical blueprint wire fields#1786
tomelm wants to merge 1 commit into
stripe:coopfrom
tomelm:tomer/coop-blueprint-wire-schema

Conversation

@tomelm

@tomelm tomelm commented Jul 13, 2026

Copy link
Copy Markdown
Contributor

Summary

  • add validated parsing for canonical blueprint fields: requestOptions, structured events, expectedNumberOfEvents, and link
  • normalize one-request upstream apiRequests nodes into the existing CLI apiRequest runtime model, including request-key reference rewrites
  • keep schema-v2 session events as strings for older CLI readers while preserving structured metadata in additive event_definitions
  • validate required structure, supported node types, duplicate keys, and references across the complete blueprint

Compatibility

  • no nodes to steps rename and no agent response schema change
  • embedded blueprint JSON is unchanged and still round-trips byte-for-byte
  • multi-request apiRequests nodes are rejected explicitly because the current runtime models one request per node
  • older schema-v2 clients can read new sessions; if an older client rewrites one, event names survive but additive payload metadata may be dropped

Test plan

  • go test -count=1 ./pkg/coop/... ./pkg/cmd/coop/...
  • env -u CODEX_CI -u CODEX_THREAD_ID -u CODEX_SANDBOX -u CODEX_SANDBOX_NETWORK_DISABLED go test ./... -count=1

@tomelm tomelm requested a review from a team as a code owner July 13, 2026 21:08
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