Skip to content

feat: add OpenResponses 2026-04-24 API support - #246

Closed
matdev83 wants to merge 25 commits into
mainfrom
feat/openresponses-api-support-v2
Closed

feat: add OpenResponses 2026-04-24 API support#246
matdev83 wants to merge 25 commits into
mainfrom
feat/openresponses-api-support-v2

Conversation

@matdev83

@matdev83 matdev83 commented Aug 2, 2026

Copy link
Copy Markdown
Owner

What changed

  • add the OpenResponses 2026-04-24 JSON, SSE, compaction, continuation, and WebSocket frontend
  • add the generic OpenResponses-compatible backend and ordered-item backend plugin ABI
  • add independent reference client/backend emulators, pinned official compliance tooling, and executable 5 x 9 compatibility evidence
  • preserve ACP's executable connector architecture and exercise ACP matrix cells through the backend-plugin host

Security follow-up

  • construct test provider JSON/SSE payloads through \�ncoding/json\ instead of string interpolation, including hostile-string regression coverage
  • guard continuation item-count allocation arithmetic against integer overflow and return bounded errors

QA follow-up

  • include every intended feature path in .release-files\
  • submit the feature as one commit over current \main\ so the per-commit repository-hygiene gate validates the same complete manifest

Verification

  • \pwsh -NoProfile -File scripts/test-openresponses-compliance.ps1\ (official 17/17 and all suites passed)
  • \make quality-checks\
  • \make parity-checks\
  • \make test\
  • release manifest covers all 5,087 files in the commit

Platform note

Race verification remains unavailable on Windows because the local cgo/ThreadSanitizer toolchain cannot run it; stress, fuzz, leak, architecture, compliance, and full test gates pass.

@coderabbitai

coderabbitai Bot commented Aug 2, 2026

Copy link
Copy Markdown
Contributor

Important

Review skipped

Too many files!

This PR contains 489 files, which is 389 over the limit of 100.

To get a review, reduce the PR to 100 files or fewer by splitting it into smaller PRs or changing its base branch.

Upgrade to a paid plan to raise the limit.

Usage-priced reviews support at most 300 files.

⚙️ Run configuration

Configuration used: Path: .coderabbit.yaml

Review profile: ASSERTIVE

Plan: Pro Plus

Run ID: 3b4e4048-abc0-40ec-9064-da5fced4c14d

📥 Commits

Reviewing files that changed from the base of the PR and between 40474cb and 77aa9c9.

⛔ Files ignored due to path filters (113)
  • api/backendplugin/v1/backend.pb.go is excluded by !**/*.pb.go, !**/*.pb.go
  • tools/openresponses-compliance/package-lock.json is excluded by !**/package-lock.json
  • tools/openresponses-compliance/src/generated/kubb/zod/allowedToolChoiceSchema.ts is excluded by !**/generated/**
  • tools/openresponses-compliance/src/generated/kubb/zod/allowedToolsParamSchema.ts is excluded by !**/generated/**
  • tools/openresponses-compliance/src/generated/kubb/zod/annotationSchema.ts is excluded by !**/generated/**
  • tools/openresponses-compliance/src/generated/kubb/zod/assistantMessageItemParamSchema.ts is excluded by !**/generated/**
  • tools/openresponses-compliance/src/generated/kubb/zod/compactResourceSchema.ts is excluded by !**/generated/**
  • tools/openresponses-compliance/src/generated/kubb/zod/compactResponseMethodPublicBodySchema.ts is excluded by !**/generated/**
  • tools/openresponses-compliance/src/generated/kubb/zod/compactResponseSchema.ts is excluded by !**/generated/**
  • tools/openresponses-compliance/src/generated/kubb/zod/compactionBodySchema.ts is excluded by !**/generated/**
  • tools/openresponses-compliance/src/generated/kubb/zod/compactionSummaryItemParamSchema.ts is excluded by !**/generated/**
  • tools/openresponses-compliance/src/generated/kubb/zod/createResponseBodySchema.ts is excluded by !**/generated/**
  • tools/openresponses-compliance/src/generated/kubb/zod/createResponseSchema.ts is excluded by !**/generated/**
  • tools/openresponses-compliance/src/generated/kubb/zod/detailEnumSchema.ts is excluded by !**/generated/**
  • tools/openresponses-compliance/src/generated/kubb/zod/developerMessageItemParamSchema.ts is excluded by !**/generated/**
  • tools/openresponses-compliance/src/generated/kubb/zod/emptyModelParamSchema.ts is excluded by !**/generated/**
  • tools/openresponses-compliance/src/generated/kubb/zod/errorPayloadSchema.ts is excluded by !**/generated/**
  • tools/openresponses-compliance/src/generated/kubb/zod/errorSchema.ts is excluded by !**/generated/**
  • tools/openresponses-compliance/src/generated/kubb/zod/errorStreamingEventSchema.ts is excluded by !**/generated/**
  • tools/openresponses-compliance/src/generated/kubb/zod/functionCallItemParamSchema.ts is excluded by !**/generated/**
  • tools/openresponses-compliance/src/generated/kubb/zod/functionCallItemStatusSchema.ts is excluded by !**/generated/**
  • tools/openresponses-compliance/src/generated/kubb/zod/functionCallOutputItemParamSchema.ts is excluded by !**/generated/**
  • tools/openresponses-compliance/src/generated/kubb/zod/functionCallOutputSchema.ts is excluded by !**/generated/**
  • tools/openresponses-compliance/src/generated/kubb/zod/functionCallOutputStatusEnumSchema.ts is excluded by !**/generated/**
  • tools/openresponses-compliance/src/generated/kubb/zod/functionCallSchema.ts is excluded by !**/generated/**
  • tools/openresponses-compliance/src/generated/kubb/zod/functionCallStatusSchema.ts is excluded by !**/generated/**
  • tools/openresponses-compliance/src/generated/kubb/zod/functionToolChoiceSchema.ts is excluded by !**/generated/**
  • tools/openresponses-compliance/src/generated/kubb/zod/functionToolParamSchema.ts is excluded by !**/generated/**
  • tools/openresponses-compliance/src/generated/kubb/zod/functionToolSchema.ts is excluded by !**/generated/**
  • tools/openresponses-compliance/src/generated/kubb/zod/imageDetailSchema.ts is excluded by !**/generated/**
  • tools/openresponses-compliance/src/generated/kubb/zod/includeEnumSchema.ts is excluded by !**/generated/**
  • tools/openresponses-compliance/src/generated/kubb/zod/incompleteDetailsSchema.ts is excluded by !**/generated/**
  • tools/openresponses-compliance/src/generated/kubb/zod/index.ts is excluded by !**/generated/**
  • tools/openresponses-compliance/src/generated/kubb/zod/inputFileContentParamSchema.ts is excluded by !**/generated/**
  • tools/openresponses-compliance/src/generated/kubb/zod/inputFileContentSchema.ts is excluded by !**/generated/**
  • tools/openresponses-compliance/src/generated/kubb/zod/inputImageContentParamAutoParamSchema.ts is excluded by !**/generated/**
  • tools/openresponses-compliance/src/generated/kubb/zod/inputImageContentSchema.ts is excluded by !**/generated/**
  • tools/openresponses-compliance/src/generated/kubb/zod/inputTextContentParamSchema.ts is excluded by !**/generated/**
  • tools/openresponses-compliance/src/generated/kubb/zod/inputTextContentSchema.ts is excluded by !**/generated/**
  • tools/openresponses-compliance/src/generated/kubb/zod/inputTokensDetailsSchema.ts is excluded by !**/generated/**
  • tools/openresponses-compliance/src/generated/kubb/zod/inputVideoContentSchema.ts is excluded by !**/generated/**
  • tools/openresponses-compliance/src/generated/kubb/zod/itemFieldSchema.ts is excluded by !**/generated/**
  • tools/openresponses-compliance/src/generated/kubb/zod/itemParamSchema.ts is excluded by !**/generated/**
  • tools/openresponses-compliance/src/generated/kubb/zod/itemReferenceParamSchema.ts is excluded by !**/generated/**
  • tools/openresponses-compliance/src/generated/kubb/zod/jsonObjectResponseFormatSchema.ts is excluded by !**/generated/**
  • tools/openresponses-compliance/src/generated/kubb/zod/jsonSchemaResponseFormatParamSchema.ts is excluded by !**/generated/**
  • tools/openresponses-compliance/src/generated/kubb/zod/jsonSchemaResponseFormatSchema.ts is excluded by !**/generated/**
  • tools/openresponses-compliance/src/generated/kubb/zod/logProbSchema.ts is excluded by !**/generated/**
  • tools/openresponses-compliance/src/generated/kubb/zod/messageRoleSchema.ts is excluded by !**/generated/**
  • tools/openresponses-compliance/src/generated/kubb/zod/messageSchema.ts is excluded by !**/generated/**
  • tools/openresponses-compliance/src/generated/kubb/zod/messageStatusSchema.ts is excluded by !**/generated/**
  • tools/openresponses-compliance/src/generated/kubb/zod/metadataParamSchema.ts is excluded by !**/generated/**
  • tools/openresponses-compliance/src/generated/kubb/zod/outputTextContentParamSchema.ts is excluded by !**/generated/**
  • tools/openresponses-compliance/src/generated/kubb/zod/outputTextContentSchema.ts is excluded by !**/generated/**
  • tools/openresponses-compliance/src/generated/kubb/zod/outputTokensDetailsSchema.ts is excluded by !**/generated/**
  • tools/openresponses-compliance/src/generated/kubb/zod/reasoningBodySchema.ts is excluded by !**/generated/**
  • tools/openresponses-compliance/src/generated/kubb/zod/reasoningEffortEnumSchema.ts is excluded by !**/generated/**
  • tools/openresponses-compliance/src/generated/kubb/zod/reasoningItemParamSchema.ts is excluded by !**/generated/**
  • tools/openresponses-compliance/src/generated/kubb/zod/reasoningParamSchema.ts is excluded by !**/generated/**
  • tools/openresponses-compliance/src/generated/kubb/zod/reasoningSchema.ts is excluded by !**/generated/**
  • tools/openresponses-compliance/src/generated/kubb/zod/reasoningSummaryContentParamSchema.ts is excluded by !**/generated/**
  • tools/openresponses-compliance/src/generated/kubb/zod/reasoningSummaryEnumSchema.ts is excluded by !**/generated/**
  • tools/openresponses-compliance/src/generated/kubb/zod/reasoningTextContentSchema.ts is excluded by !**/generated/**
  • tools/openresponses-compliance/src/generated/kubb/zod/refusalContentParamSchema.ts is excluded by !**/generated/**
  • tools/openresponses-compliance/src/generated/kubb/zod/refusalContentSchema.ts is excluded by !**/generated/**
  • tools/openresponses-compliance/src/generated/kubb/zod/responseCompletedStreamingEventSchema.ts is excluded by !**/generated/**
  • tools/openresponses-compliance/src/generated/kubb/zod/responseContentPartAddedStreamingEventSchema.ts is excluded by !**/generated/**
  • tools/openresponses-compliance/src/generated/kubb/zod/responseContentPartDoneStreamingEventSchema.ts is excluded by !**/generated/**
  • tools/openresponses-compliance/src/generated/kubb/zod/responseCreatedStreamingEventSchema.ts is excluded by !**/generated/**
  • tools/openresponses-compliance/src/generated/kubb/zod/responseFailedStreamingEventSchema.ts is excluded by !**/generated/**
  • tools/openresponses-compliance/src/generated/kubb/zod/responseFunctionCallArgumentsDeltaStreamingEventSchema.ts is excluded by !**/generated/**
  • tools/openresponses-compliance/src/generated/kubb/zod/responseFunctionCallArgumentsDoneStreamingEventSchema.ts is excluded by !**/generated/**
  • tools/openresponses-compliance/src/generated/kubb/zod/responseInProgressStreamingEventSchema.ts is excluded by !**/generated/**
  • tools/openresponses-compliance/src/generated/kubb/zod/responseIncompleteStreamingEventSchema.ts is excluded by !**/generated/**
  • tools/openresponses-compliance/src/generated/kubb/zod/responseOutputItemAddedStreamingEventSchema.ts is excluded by !**/generated/**
  • tools/openresponses-compliance/src/generated/kubb/zod/responseOutputItemDoneStreamingEventSchema.ts is excluded by !**/generated/**
  • tools/openresponses-compliance/src/generated/kubb/zod/responseOutputTextAnnotationAddedStreamingEventSchema.ts is excluded by !**/generated/**
  • tools/openresponses-compliance/src/generated/kubb/zod/responseOutputTextDeltaStreamingEventSchema.ts is excluded by !**/generated/**
  • tools/openresponses-compliance/src/generated/kubb/zod/responseOutputTextDoneStreamingEventSchema.ts is excluded by !**/generated/**
  • tools/openresponses-compliance/src/generated/kubb/zod/responseQueuedStreamingEventSchema.ts is excluded by !**/generated/**
  • tools/openresponses-compliance/src/generated/kubb/zod/responseReasoningDeltaStreamingEventSchema.ts is excluded by !**/generated/**
  • tools/openresponses-compliance/src/generated/kubb/zod/responseReasoningDoneStreamingEventSchema.ts is excluded by !**/generated/**
  • tools/openresponses-compliance/src/generated/kubb/zod/responseReasoningSummaryDeltaStreamingEventSchema.ts is excluded by !**/generated/**
  • tools/openresponses-compliance/src/generated/kubb/zod/responseReasoningSummaryDoneStreamingEventSchema.ts is excluded by !**/generated/**
  • tools/openresponses-compliance/src/generated/kubb/zod/responseReasoningSummaryPartAddedStreamingEventSchema.ts is excluded by !**/generated/**
  • tools/openresponses-compliance/src/generated/kubb/zod/responseReasoningSummaryPartDoneStreamingEventSchema.ts is excluded by !**/generated/**
  • tools/openresponses-compliance/src/generated/kubb/zod/responseRefusalDeltaStreamingEventSchema.ts is excluded by !**/generated/**
  • tools/openresponses-compliance/src/generated/kubb/zod/responseRefusalDoneStreamingEventSchema.ts is excluded by !**/generated/**
  • tools/openresponses-compliance/src/generated/kubb/zod/responseResourceSchema.ts is excluded by !**/generated/**
  • tools/openresponses-compliance/src/generated/kubb/zod/responsesToolParamSchema.ts is excluded by !**/generated/**
  • tools/openresponses-compliance/src/generated/kubb/zod/serviceTierEnumSchema.ts is excluded by !**/generated/**
  • tools/openresponses-compliance/src/generated/kubb/zod/specificFunctionParamSchema.ts is excluded by !**/generated/**
  • tools/openresponses-compliance/src/generated/kubb/zod/specificToolChoiceParamSchema.ts is excluded by !**/generated/**
  • tools/openresponses-compliance/src/generated/kubb/zod/streamOptionsParamSchema.ts is excluded by !**/generated/**
  • tools/openresponses-compliance/src/generated/kubb/zod/summaryTextContentSchema.ts is excluded by !**/generated/**
  • tools/openresponses-compliance/src/generated/kubb/zod/systemMessageItemParamSchema.ts is excluded by !**/generated/**
  • tools/openresponses-compliance/src/generated/kubb/zod/textContentSchema.ts is excluded by !**/generated/**
  • tools/openresponses-compliance/src/generated/kubb/zod/textFieldSchema.ts is excluded by !**/generated/**
  • tools/openresponses-compliance/src/generated/kubb/zod/textFormatParamSchema.ts is excluded by !**/generated/**
  • tools/openresponses-compliance/src/generated/kubb/zod/textParamSchema.ts is excluded by !**/generated/**
  • tools/openresponses-compliance/src/generated/kubb/zod/textResponseFormatSchema.ts is excluded by !**/generated/**
  • tools/openresponses-compliance/src/generated/kubb/zod/toolChoiceParamSchema.ts is excluded by !**/generated/**
  • tools/openresponses-compliance/src/generated/kubb/zod/toolChoiceValueEnumSchema.ts is excluded by !**/generated/**
  • tools/openresponses-compliance/src/generated/kubb/zod/toolSchema.ts is excluded by !**/generated/**
  • tools/openresponses-compliance/src/generated/kubb/zod/topLogProbSchema.ts is excluded by !**/generated/**
  • tools/openresponses-compliance/src/generated/kubb/zod/truncationEnumSchema.ts is excluded by !**/generated/**
  • tools/openresponses-compliance/src/generated/kubb/zod/urlCitationBodySchema.ts is excluded by !**/generated/**
  • tools/openresponses-compliance/src/generated/kubb/zod/urlCitationParamSchema.ts is excluded by !**/generated/**
  • tools/openresponses-compliance/src/generated/kubb/zod/usageSchema.ts is excluded by !**/generated/**
  • tools/openresponses-compliance/src/generated/kubb/zod/userMessageItemParamSchema.ts is excluded by !**/generated/**
  • tools/openresponses-compliance/src/generated/kubb/zod/verbosityEnumSchema.ts is excluded by !**/generated/**
  • tools/openresponses-compliance/src/generated/kubb/zod/webSocketErrorEventSchema.ts is excluded by !**/generated/**
  • tools/openresponses-compliance/src/generated/kubb/zod/webSocketResponseCreateEventSchema.ts is excluded by !**/generated/**
📒 Files selected for processing (489)
  • .github/workflows/openresponses-coverage.yml
  • .github/workflows/openresponses-official-compliance.yml
  • .github/workflows/race-fuzz-nightly.yml
  • .github/workflows/release.yml
  • .kiro/specs/archive/openresponses-api-support/design.md
  • .kiro/specs/archive/openresponses-api-support/gap-analysis.md
  • .kiro/specs/archive/openresponses-api-support/requirements.md
  • .kiro/specs/archive/openresponses-api-support/research.md
  • .kiro/specs/archive/openresponses-api-support/spec.json
  • .kiro/specs/archive/openresponses-api-support/tasks.md
  • .kiro/specs/archive/windows-task-reliability/design.md
  • .release-files
  • Makefile
  • api/backendplugin/v1/backend.proto
  • connector-support/acp/config.go
  • connector-support/acp/ndjson_stream.go
  • connector-support/acp/ndjson_stream_test.go
  • connector-support/acp/recoverable.go
  • connector-support/acp/recoverable_test.go
  • connector-support/acp/transport.go
  • connector-support/openaicompat/client_test.go
  • connector-support/openaicompat/request.go
  • connectors/openrouter/service_test.go
  • connectors/vllm/parity_suite_test.go
  • docs/conformance-golden-coverage.md
  • docs/conformance-matrix-evidence.md
  • docs/connector-capability-disposition.md
  • docs/openresponses-compatible-backend.md
  • docs/testing-coverage-priorities.md
  • internal/archtest/attempt_transform_open_order_test.go
  • internal/archtest/budgets.go
  • internal/archtest/emulator_boundary_test.go
  • internal/archtest/frontend_backend_zone_imports_test.go
  • internal/archtest/import_rules.go
  • internal/archtest/openresponses_dependency_policy_test.go
  • internal/archtest/openresponses_js_tool_boundary_test.go
  • internal/archtest/openresponses_official_manifest_test.go
  • internal/archtest/openresponses_provider_boundary_test.go
  • internal/archtest/openresponses_refbackend_boundary_test.go
  • internal/archtest/openresponses_refclient_boundary_test.go
  • internal/core/capabilities/admit.go
  • internal/core/capabilities/admit_test.go
  • internal/core/continuation/doc.go
  • internal/core/continuation/id.go
  • internal/core/continuation/materialize.go
  • internal/core/continuation/materialize_phase42_test.go
  • internal/core/continuation/memory_store.go
  • internal/core/continuation/round5_regression_test.go
  • internal/core/continuation/security_test.go
  • internal/core/continuation/store_close_test.go
  • internal/core/continuation/stream_recorder.go
  • internal/core/continuation/stream_recorder_overflow_internal_test.go
  • internal/core/continuation/stream_recorder_phase42_test.go
  • internal/core/diag/compatible_backends.go
  • internal/core/diag/inventory.go
  • internal/core/diag/inventory_extensions.go
  • internal/core/execbackend/backend.go
  • internal/core/interleavedthinking/shape_test.go
  • internal/core/modelregistry/inventory_provenance_test.go
  • internal/core/routing/candidate_admission.go
  • internal/core/routing/candidate_admission_phase42_test.go
  • internal/core/routing/candidate_admission_test.go
  • internal/core/runtime/executor_admission.go
  • internal/core/runtime/executor_admission_projection_test.go
  • internal/core/runtime/executor_attempt_transform.go
  • internal/core/runtime/executor_open_attempt.go
  • internal/core/runtime/executor_open_loop.go
  • internal/core/runtime/executor_recv_loop.go
  • internal/core/runtime/executor_retry_stream.go
  • internal/core/runtime/executor_route_plan.go
  • internal/core/runtime/executor_transport_span_test.go
  • internal/core/runtime/interleaved_open.go
  • internal/core/runtime/post_hook_rederive_test.go
  • internal/core/runtime/reasoning_preservation_composition_red_test.go
  • internal/core/runtime/secure_session_record_build.go
  • internal/infra/backendplugins/adapter/adapter_test.go
  • internal/infra/backendplugins/adapter/backend.go
  • internal/infra/backendplugins/adapter/bufconn_test.go
  • internal/infra/backendplugins/adapter/convert.go
  • internal/infra/backendplugins/adapter/create_compact_equivalence_test.go
  • internal/infra/backendplugins/adapter/dial.go
  • internal/infra/backendplugins/adapter/grpc_session.go
  • internal/infra/backendplugins/adapter/invocation.go
  • internal/infra/backendplugins/adapter/invocation_parts_test.go
  • internal/infra/backendplugins/adapter/invocation_tool_choice_test.go
  • internal/infra/backendplugins/adapter/reasoning_event_test.go
  • internal/infra/backendplugins/adapter/session.go
  • internal/infra/backendplugins/adapter/stream.go
  • internal/infra/backendplugins/adapter/stream_bounds_test.go
  • internal/infra/continuation/file_lock.go
  • internal/infra/continuation/file_lock_unix.go
  • internal/infra/continuation/file_lock_windows.go
  • internal/infra/continuation/file_store.go
  • internal/infra/continuation/file_store_lifecycle_test.go
  • internal/infra/continuation/file_store_test.go
  • internal/infra/continuation/replace_unix.go
  • internal/infra/continuation/replace_windows.go
  • internal/infra/runtimebundle/candidate_http.go
  • internal/infra/runtimebundle/compatible_diagnostics_test.go
  • internal/infra/runtimebundle/compile_generation.go
  • internal/infra/runtimebundle/discovered_factories.go
  • internal/infra/runtimebundle/discovered_factories_test.go
  • internal/infra/runtimebundle/inventory_live.go
  • internal/infra/runtimebundle/routes_read.go
  • internal/infra/runtimebundle/validate_structural.go
  • internal/infra/runtimebundle/ws_generation_reload_test.go
  • internal/infra/tokenizers/tiktoken/counter.go
  • internal/infra/tokenizers/tiktoken/counter_differential_test.go
  • internal/integration/openresponses/cell_select_test.go
  • internal/integration/openresponses/compact_full_path_test.go
  • internal/integration/openresponses/compliance_official_test.go
  • internal/integration/openresponses/doc.go
  • internal/integration/openresponses/existing_family_client_test.go
  • internal/integration/openresponses/failure_injection_test.go
  • internal/integration/openresponses/harness_smoke_test.go
  • internal/integration/openresponses/leak_test.go
  • internal/integration/openresponses/security_test.go
  • internal/plugins/backends/openresponsescompat/backend.go
  • internal/plugins/backends/openresponsescompat/backend_test.go
  • internal/plugins/backends/openresponsescompat/compact.go
  • internal/plugins/backends/openresponsescompat/compact_mapping_test.go
  • internal/plugins/backends/openresponsescompat/config.go
  • internal/plugins/backends/openresponsescompat/config_test.go
  • internal/plugins/backends/openresponsescompat/content_extension_admission_test.go
  • internal/plugins/backends/openresponsescompat/content_representability_test.go
  • internal/plugins/backends/openresponsescompat/doc.go
  • internal/plugins/backends/openresponsescompat/errors.go
  • internal/plugins/backends/openresponsescompat/errors_test.go
  • internal/plugins/backends/openresponsescompat/factory.go
  • internal/plugins/backends/openresponsescompat/http.go
  • internal/plugins/backends/openresponsescompat/http_test.go
  • internal/plugins/backends/openresponsescompat/integration_test.go
  • internal/plugins/backends/openresponsescompat/item_reference_dialect_test.go
  • internal/plugins/backends/openresponsescompat/legacy.go
  • internal/plugins/backends/openresponsescompat/legacy_projection_test.go
  • internal/plugins/backends/openresponsescompat/lifecycle_contract_test.go
  • internal/plugins/backends/openresponsescompat/mapping_test.go
  • internal/plugins/backends/openresponsescompat/observer_test.go
  • internal/plugins/backends/openresponsescompat/options.go
  • internal/plugins/backends/openresponsescompat/options_test.go
  • internal/plugins/backends/openresponsescompat/provider_boundary_test.go
  • internal/plugins/backends/openresponsescompat/request.go
  • internal/plugins/backends/openresponsescompat/response.go
  • internal/plugins/backends/openresponsescompat/response_test.go
  • internal/plugins/backends/openresponsescompat/sse_parser.go
  • internal/plugins/backends/openresponsescompat/sse_parser_test.go
  • internal/plugins/backends/openresponsescompat/sse_stream.go
  • internal/plugins/backends/openresponsescompat/sse_stream_test.go
  • internal/plugins/backends/openresponsescompat/stream_mapper.go
  • internal/plugins/backends/openresponsescompat/stream_mapper_test.go
  • internal/plugins/backends/openresponsescompat/streaming.go
  • internal/plugins/backends/openresponsescompat/streaming_backend_test.go
  • internal/plugins/backends/openresponsescompat/tool_choice_test.go
  • internal/plugins/frontends/gemini/decode.go
  • internal/plugins/frontends/gemini/decode_test.go
  • internal/plugins/frontends/openresponses/allowed_tools.go
  • internal/plugins/frontends/openresponses/allowed_tools_e2e_test.go
  • internal/plugins/frontends/openresponses/allowed_tools_test.go
  • internal/plugins/frontends/openresponses/compact.go
  • internal/plugins/frontends/openresponses/compact_decode.go
  • internal/plugins/frontends/openresponses/compact_test.go
  • internal/plugins/frontends/openresponses/config.go
  • internal/plugins/frontends/openresponses/config_test.go
  • internal/plugins/frontends/openresponses/continuation.go
  • internal/plugins/frontends/openresponses/continuation_lifecycle_test.go
  • internal/plugins/frontends/openresponses/continuation_policy_test.go
  • internal/plugins/frontends/openresponses/continuation_security_test.go
  • internal/plugins/frontends/openresponses/continuation_storage.go
  • internal/plugins/frontends/openresponses/continuation_test.go
  • internal/plugins/frontends/openresponses/decode.go
  • internal/plugins/frontends/openresponses/decode_round8_regression_test.go
  • internal/plugins/frontends/openresponses/decode_test.go
  • internal/plugins/frontends/openresponses/diagnostics.go
  • internal/plugins/frontends/openresponses/handler.go
  • internal/plugins/frontends/openresponses/integration_test.go
  • internal/plugins/frontends/openresponses/mount.go
  • internal/plugins/frontends/openresponses/mount_continuation_lifecycle_test.go
  • internal/plugins/frontends/openresponses/nonstreaming.go
  • internal/plugins/frontends/openresponses/nonstreaming_test.go
  • internal/plugins/frontends/openresponses/observed_stream.go
  • internal/plugins/frontends/openresponses/protocol_limits.go
  • internal/plugins/frontends/openresponses/round4_regression_test.go
  • internal/plugins/frontends/openresponses/route_test.go
  • internal/plugins/frontends/openresponses/streaming.go
  • internal/plugins/frontends/openresponses/streaming_seam_test.go
  • internal/plugins/frontends/openresponses/streaming_test.go
  • internal/plugins/frontends/openresponses/text_format_integration_test.go
  • internal/plugins/frontends/openresponses/unsupported_controls_test.go
  • internal/plugins/frontends/openresponses/websocket_continuation.go
  • internal/plugins/frontends/openresponses/websocket_continuation_store_test.go
  • internal/plugins/frontends/openresponses/websocket_continuation_test.go
  • internal/plugins/frontends/openresponses/websocket_fuzz_test.go
  • internal/plugins/frontends/openresponses/websocket_generation_test.go
  • internal/plugins/frontends/openresponses/websocket_phase6_review_internal_test.go
  • internal/plugins/frontends/openresponses/websocket_phase6_review_test.go
  • internal/plugins/frontends/openresponses/websocket_queue.go
  • internal/plugins/frontends/openresponses/websocket_robustness_internal_test.go
  • internal/plugins/frontends/openresponses/websocket_round5_test.go
  • internal/plugins/frontends/openresponses/websocket_stress_test.go
  • internal/plugins/frontends/openresponses/websocket_turn.go
  • internal/plugins/frontends/openresponses/websocket_turn_test.go
  • internal/plugins/frontends/openresponses/websocket_upgrade.go
  • internal/plugins/frontends/openresponses/websocket_upgrade_test.go
  • internal/plugins/frontends/openresponses/ws_goroutine_leak_test.go
  • internal/plugins/protocols/openresponses/compact_resource_test.go
  • internal/plugins/protocols/openresponses/compaction_item_preservation_test.go
  • internal/plugins/protocols/openresponses/content_extension_requirement_test.go
  • internal/plugins/protocols/openresponses/content_part_mapping_test.go
  • internal/plugins/protocols/openresponses/coverage_registry_test.go
  • internal/plugins/protocols/openresponses/decode.go
  • internal/plugins/protocols/openresponses/encode.go
  • internal/plugins/protocols/openresponses/errors.go
  • internal/plugins/protocols/openresponses/errors_mapping_test.go
  • internal/plugins/protocols/openresponses/fuzz_test.go
  • internal/plugins/protocols/openresponses/limits.go
  • internal/plugins/protocols/openresponses/limits_test.go
  • internal/plugins/protocols/openresponses/more_coverage_test.go
  • internal/plugins/protocols/openresponses/phase7_quality_gate_test.go
  • internal/plugins/protocols/openresponses/presence.go
  • internal/plugins/protocols/openresponses/profile.go
  • internal/plugins/protocols/openresponses/profile_test.go
  • internal/plugins/protocols/openresponses/request_codec_test.go
  • internal/plugins/protocols/openresponses/resource_builder.go
  • internal/plugins/protocols/openresponses/response_resource_test.go
  • internal/plugins/protocols/openresponses/round4_limits_test.go
  • internal/plugins/protocols/openresponses/round6_regression_test.go
  • internal/plugins/protocols/openresponses/sse.go
  • internal/plugins/protocols/openresponses/sse_test.go
  • internal/plugins/protocols/openresponses/state_machine.go
  • internal/plugins/protocols/openresponses/state_machine_test.go
  • internal/plugins/protocols/openresponses/testdata/LICENSE
  • internal/plugins/protocols/openresponses/testdata/README.md
  • internal/plugins/protocols/openresponses/testdata/compliance/compliance-tests.ts
  • internal/plugins/protocols/openresponses/testdata/official_2026-04-24_manifest.json
  • internal/plugins/protocols/openresponses/testdata/official_examples/ResponseParam.json
  • internal/plugins/protocols/openresponses/testdata/official_examples/ResponseResource.json
  • internal/plugins/protocols/openresponses/testdata/schema/openapi.json
  • internal/plugins/protocols/openresponses/testdata/specifications/2026-04-24.mdx
  • internal/plugins/protocols/openresponses/unsupported_controls_test.go
  • internal/plugins/protocols/openresponses/wire_types.go
  • internal/qa/windows_task_reliability_contract_test.go
  • internal/refbackend/openresponses/auth_error_test.go
  • internal/refbackend/openresponses/capture.go
  • internal/refbackend/openresponses/capture_test.go
  • internal/refbackend/openresponses/clock.go
  • internal/refbackend/openresponses/coverage_gate_test.go
  • internal/refbackend/openresponses/coverage_test.go
  • internal/refbackend/openresponses/delay_cancel_test.go
  • internal/refbackend/openresponses/direct_wire_test.go
  • internal/refbackend/openresponses/doc.go
  • internal/refbackend/openresponses/errors.go
  • internal/refbackend/openresponses/file_data_test.go
  • internal/refbackend/openresponses/fuzz_test.go
  • internal/refbackend/openresponses/helpers_test.go
  • internal/refbackend/openresponses/main_test.go
  • internal/refbackend/openresponses/malformed_test.go
  • internal/refbackend/openresponses/request.go
  • internal/refbackend/openresponses/request_test.go
  • internal/refbackend/openresponses/response.go
  • internal/refbackend/openresponses/response_test.go
  • internal/refbackend/openresponses/script.go
  • internal/refbackend/openresponses/script_test.go
  • internal/refbackend/openresponses/server.go
  • internal/refbackend/openresponses/server_test.go
  • internal/refbackend/openresponses/sse.go
  • internal/refbackend/openresponses/sse_test.go
  • internal/refbackend/openresponses/wire.go
  • internal/refbackend/openresponses/ws.go
  • internal/refbackend/openresponses/ws_test.go
  • internal/refclient/openresponses/client.go
  • internal/refclient/openresponses/client_test.go
  • internal/refclient/openresponses/clock.go
  • internal/refclient/openresponses/coverage2_test.go
  • internal/refclient/openresponses/coverage_test.go
  • internal/refclient/openresponses/doc.go
  • internal/refclient/openresponses/event.go
  • internal/refclient/openresponses/file_data_test.go
  • internal/refclient/openresponses/fixtures_test.go
  • internal/refclient/openresponses/fuzz_test.go
  • internal/refclient/openresponses/item.go
  • internal/refclient/openresponses/item_test.go
  • internal/refclient/openresponses/parse.go
  • internal/refclient/openresponses/request.go
  • internal/refclient/openresponses/request_test.go
  • internal/refclient/openresponses/response.go
  • internal/refclient/openresponses/response_test.go
  • internal/refclient/openresponses/scenarios_test.go
  • internal/refclient/openresponses/sse.go
  • internal/refclient/openresponses/sse_test.go
  • internal/refclient/openresponses/testdata/README.md
  • internal/refclient/openresponses/testdata/manifest.json
  • internal/refclient/openresponses/testdata/official_examples/ResponseParam.json
  • internal/refclient/openresponses/testdata/official_examples/ResponseResource.json
  • internal/refclient/openresponses/testdata/scenarios/compact_resource.json
  • internal/refclient/openresponses/testdata/scenarios/request_multimodal.json
  • internal/refclient/openresponses/testdata/scenarios/response_error.json
  • internal/refclient/openresponses/testdata/scenarios/response_extensions.json
  • internal/refclient/openresponses/testdata/scenarios/response_phase.json
  • internal/refclient/openresponses/testdata/scenarios/response_reasoning.json
  • internal/refclient/openresponses/testdata/scenarios/response_text.json
  • internal/refclient/openresponses/testdata/scenarios/response_tools.json
  • internal/refclient/openresponses/testdata/scenarios/stream_text.sse
  • internal/refclient/openresponses/ws.go
  • internal/refclient/openresponses/ws_test.go
  • internal/standardplugins/backend_prefix_inventory_test.go
  • internal/standardplugins/backends_openresponses.go
  • internal/standardplugins/backends_openresponses_test.go
  • internal/standardplugins/compatible_diagnostics.go
  • internal/standardplugins/compatible_diagnostics_test.go
  • internal/standardplugins/compatible_ownership.go
  • internal/standardplugins/custom_backends.go
  • internal/standardplugins/enforces_max_output_inventory_test.go
  • internal/standardplugins/essential_bundle.go
  • internal/standardplugins/frontend_continuation.go
  • internal/standardplugins/frontend_route_claims.go
  • internal/standardplugins/frontend_route_claims_test.go
  • internal/standardplugins/openresponses_frontend_diagnostics.go
  • internal/standardplugins/openresponses_frontend_diagnostics_test.go
  • internal/standardplugins/spec_bundle_standard_inventory_test.go
  • internal/standardplugins/standard_table.go
  • internal/stdhttp/contract/http_input.go
  • internal/stdhttp/contract/route_claim.go
  • internal/stdhttp/contract/route_claim_test.go
  • internal/stdhttp/contract/route_diagnostics.go
  • internal/stdhttp/contract/route_registry.go
  • internal/stdhttp/frontend_isolation_integration_test.go
  • internal/stdhttp/mount.go
  • internal/testkit/backendplugin/fake.go
  • internal/testkit/backendplugin/fake_ordered_items_test.go
  • internal/testkit/conformance/acp_connector.go
  • internal/testkit/conformance/backend_credentials_test.go
  • internal/testkit/conformance/baseline_lock_test.go
  • internal/testkit/conformance/client.go
  • internal/testkit/conformance/conformance_multimodal_test.go
  • internal/testkit/conformance/conformance_text_test.go
  • internal/testkit/conformance/conformance_tools_test.go
  • internal/testkit/conformance/connector_columns_matrix_test.go
  • internal/testkit/conformance/connector_host.go
  • internal/testkit/conformance/connector_host_test.go
  • internal/testkit/conformance/connector_wire.go
  • internal/testkit/conformance/deployment.go
  • internal/testkit/conformance/deployment_test.go
  • internal/testkit/conformance/doc.go
  • internal/testkit/conformance/dual_plane_economic_conformance_test.go
  • internal/testkit/conformance/error_upstream.go
  • internal/testkit/conformance/frontend_server.go
  • internal/testkit/conformance/harness.go
  • internal/testkit/conformance/matrix.go
  • internal/testkit/conformance/matrix_45_evidence_test.go
  • internal/testkit/conformance/matrix_contract.go
  • internal/testkit/conformance/matrix_contract_test.go
  • internal/testkit/conformance/matrix_evidence_45.go
  • internal/testkit/conformance/matrix_evidence_test.go
  • internal/testkit/conformance/matrix_general_conformance_test.go
  • internal/testkit/conformance/matrix_general_scenarios.go
  • internal/testkit/conformance/matrix_test.go
  • internal/testkit/conformance/openresponses_backend_column.go
  • internal/testkit/conformance/openresponses_backend_column_conformance_test.go
  • internal/testkit/conformance/openresponses_backend_column_evidence_test.go
  • internal/testkit/conformance/openresponses_backend_column_scenarios.go
  • internal/testkit/conformance/openresponses_backend_column_scenarios_test.go
  • internal/testkit/conformance/openresponses_backend_legacy_column_test.go
  • internal/testkit/conformance/openresponses_frontend_row.go
  • internal/testkit/conformance/openresponses_frontend_row_conformance_test.go
  • internal/testkit/conformance/openresponses_frontend_row_evidence_test.go
  • internal/testkit/conformance/openresponses_frontend_row_scenarios.go
  • internal/testkit/conformance/openresponses_frontend_row_scenarios_test.go
  • internal/testkit/conformance/openresponses_provider_mode.go
  • internal/testkit/conformance/openresponses_row_column_scenario_table_test.go
  • internal/testkit/conformance/openresponses_wire_safe_encoding_test.go
  • internal/testkit/conformance/origin.go
  • internal/testkit/conformance/parity_acp_test.go
  • internal/testkit/conformance/parity_evidence.go
  • internal/testkit/conformance/refparity.go
  • internal/testkit/conformance/sanity_emulator_wiring_test.go
  • internal/testkit/conformance/stage_checklist_14_evidence_test.go
  • internal/testkit/conformance/tools_refbackend.go
  • internal/testkit/conformance/tools_repair_refbackend.go
  • internal/testkit/conformance/wire_clients.go
  • internal/testkit/openresponses/contracts.go
  • internal/testkit/openresponses/contracts_test.go
  • internal/testkit/openresponses/fixtures.go
  • internal/testkit/openresponses/fixtures_test.go
  • internal/testkit/openresponses/scenarios.go
  • internal/testkit/openresponses/scenarios_test.go
  • pkg/lipapi/admission.go
  • pkg/lipapi/admission_content_extension_test.go
  • pkg/lipapi/call.go
  • pkg/lipapi/call_clone.go
  • pkg/lipapi/call_clone_test.go
  • pkg/lipapi/call_validate_test.go
  • pkg/lipapi/capabilities.go
  • pkg/lipapi/content_extension_requirement_test.go
  • pkg/lipapi/content_extension_test.go
  • pkg/lipapi/events.go
  • pkg/lipapi/extensions_internal.go
  • pkg/lipapi/extensions_internal_test.go
  • pkg/lipapi/invocation.go
  • pkg/lipapi/item_event_test.go
  • pkg/lipapi/items.go
  • pkg/lipapi/items_test.go
  • pkg/lipapi/limits.go
  • pkg/lipapi/parts.go
  • pkg/lipapi/projection.go
  • pkg/lipapi/projection_admission_test.go
  • pkg/lipapi/projection_test.go
  • pkg/lipapi/reasoning.go
  • pkg/lipapi/reasoning_contract_test.go
  • pkg/lipapi/requirements.go
  • pkg/lipapi/requirements_admission_test.go
  • pkg/lipapi/session_errors_test.go
  • pkg/lipapi/token_accounting.go
  • pkg/lipapi/tool_choice_reconcile.go
  • pkg/lipapi/tool_choice_reconcile_test.go
  • pkg/lipapi/walkers.go
  • pkg/lipsdk/backendplugin/abi_exact_openresponses.go
  • pkg/lipsdk/backendplugin/abi_exact_openresponses_test.go
  • pkg/lipsdk/backendplugin/abi_ordered_items.go
  • pkg/lipsdk/backendplugin/abi_ordered_items_test.go
  • pkg/lipsdk/backendplugin/bounds.go
  • pkg/lipsdk/backendplugin/call_bridge.go
  • pkg/lipsdk/backendplugin/call_bridge_items.go
  • pkg/lipsdk/backendplugin/content_extension_metadata_test.go
  • pkg/lipsdk/backendplugin/convert.go
  • pkg/lipsdk/backendplugin/convert_characterization_test.go
  • pkg/lipsdk/backendplugin/enum_convert.go
  • pkg/lipsdk/backendplugin/enums.go
  • pkg/lipsdk/backendplugin/errors.go
  • pkg/lipsdk/backendplugin/exact_openresponses_bounds_test.go
  • pkg/lipsdk/backendplugin/exact_openresponses_roundtrip_test.go
  • pkg/lipsdk/backendplugin/exact_reasoning_validate.go
  • pkg/lipsdk/backendplugin/forward_execute.go
  • pkg/lipsdk/backendplugin/frames.go
  • pkg/lipsdk/backendplugin/invocation.go
  • pkg/lipsdk/backendplugin/invocation_items_validate.go
  • pkg/lipsdk/backendplugin/invocation_items_validate_test.go
  • pkg/lipsdk/backendplugin/invocation_meta.go
  • pkg/lipsdk/backendplugin/invocation_validate_parity_test.go
  • pkg/lipsdk/backendplugin/items_convert.go
  • pkg/lipsdk/backendplugin/items_dto.go
  • pkg/lipsdk/backendplugin/items_wire.go
  • pkg/lipsdk/backendplugin/items_wire_extension_test.go
  • pkg/lipsdk/backendplugin/items_wire_test.go
  • pkg/lipsdk/backendplugin/rawjson.go
  • pkg/lipsdk/backendplugin/rawjson_depth_test.go
  • pkg/lipsdk/backendplugin/repair_test.go
  • pkg/lipsdk/backendplugin/requirements_bridge.go
  • pkg/lipsdk/backendplugin/requirements_bridge_test.go
  • pkg/lipsdk/backendplugin/server.go
  • pkg/lipsdk/backendplugin/server_test.go
  • pkg/lipsdk/backendplugin/tool_choice_bridge.go
  • pkg/lipsdk/backendplugin/tool_choice_bridge_test.go
  • pkg/lipsdk/backendplugin/types.go
  • pkg/lipsdk/continuation/contract_test.go
  • pkg/lipsdk/continuation/doc.go
  • pkg/lipsdk/continuation/errors.go
  • pkg/lipsdk/continuation/materialize.go
  • pkg/lipsdk/continuation/materialize_overflow_test.go
  • pkg/lipsdk/continuation/memory_store.go
  • pkg/lipsdk/continuation/overflow_internal_test.go
  • pkg/lipsdk/continuation/policy.go
  • pkg/lipsdk/continuation/record.go
  • pkg/lipsdk/continuation/recorder.go
  • pkg/lipsdk/continuation/response_id.go
  • pkg/lipsdk/continuation/response_id_generation.go
  • pkg/lipsdk/continuation/scope.go
  • pkg/lipsdk/continuation/security_slice_a_test.go
  • pkg/lipsdk/continuation/store.go
  • pkg/lipsdk/continuation/stream_recorder.go
  • pkg/lipsdk/continuation/stream_recorder_overflow_internal_test.go
  • pkg/lipsdk/factory.go
  • scripts/check-adhoc-goroutines.ps1
  • scripts/check-adhoc-goroutines.sh
  • scripts/test-openresponses-compliance.ps1
  • scripts/test-openresponses-compliance.sh
  • tools/backendplugin/crossplatform_qa/compile_pool.go
  • tools/backendplugin/crossplatform_qa/compile_pool_test.go
  • tools/backendplugin/crossplatform_qa/main.go
  • tools/coverage-gate/main.go
  • tools/coverage-gate/main_test.go
  • tools/openresponses-compliance/.gitignore
  • tools/openresponses-compliance/LICENSE
  • tools/openresponses-compliance/MANIFEST.json
  • tools/openresponses-compliance/README.md
  • tools/openresponses-compliance/bin/compliance-test.ts
  • tools/openresponses-compliance/package.json
  • tools/openresponses-compliance/scripts/run.mjs
  • tools/openresponses-compliance/src/lib/compliance-tests.ts
  • tools/openresponses-compliance/src/lib/sse-parser.ts

You can disable this status message by setting the reviews.review_status to false in the CodeRabbit configuration file.


Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands.

@matdev83

matdev83 commented Aug 3, 2026

Copy link
Copy Markdown
Owner Author

Addressed the five merge-blocking findings cross-checked from #245:

  1. OpenRouter/NVIDIA matrix columns now build and launch the real executable connectors through the backend-plugin host. New evidence checks connector-specific attribution/auth headers, inventory IDs, configure failures, and upstream error mapping.
  2. The pinned input_file and input_video variants now map losslessly to canonical file/video parts; provider-prefixed content parts use bounded opaque structured carriage instead of text coercion. Non-profile ile_id/�ideo_data fields are explicitly rejected rather than dropped.
  3. Create/compact instructions now forward as leading canonical system items; compact prompt_cache_key is preserved. Other pinned standard controls are typed and explicitly rejected before network when unsupported; out-of-schema compact controls are rejected.
  4. Generic OpenResponses capability declarations are now honest: documents are representable end-to-end, annotations/assistant-media declarations fail at config, and defaults no longer claim annotations.
  5. Continuation count and recorder-byte arithmetic use checked overflow handling with boundary regressions.

Verification: official OpenResponses compliance, make quality-checks, make parity-checks, and make test all pass locally. Commit: 9922b72.

Comment thread internal/testkit/conformance/connector_wire.go Fixed
Mateusz added 23 commits August 3, 2026 02:52
Derive an exact ExtensionRequirement for every canonical content-part
extension (message and structured tool-result parts): ExtensionContentPart
carries namespace/implementor, namespace derives deterministically from the
prefixed wire type, and admission/routing/failover plus openresponsescompat
self-admission require an exact declared extension with zero-network mismatch.
OpenResponses decode/encode preserves the wire object losslessly and merges
explicit divergent namespace/implementor metadata.

Declare the exact item_reference item dialect in the generic OpenResponses
backend defaults so the item_references capability is truthful, and flip the
viable native OpenResponses matrix evidence/scenarios positive (row and column
cells); general cells stay rejected before network.
@matdev83

matdev83 commented Aug 3, 2026

Copy link
Copy Markdown
Owner Author

Superseded by #250, which contains the same final implementation as one release-manifest-valid commit over main. This avoids historical per-commit repo-hygiene failures while retaining all review remediations.

@matdev83 matdev83 closed this Aug 3, 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.

2 participants