mirror of
https://github.com/openai/codex.git
synced 2026-11-08 20:40:33 +00:00
Motivation: - Keep `codex app-server` protocol artifacts (TypeScript + JSON Schema) checked in for consumers (e.g. IDE integrations) and make changes reviewable. - Prevent drift between generated output (`codex app-server generate-ts` / `codex app-server generate-json-schema`) and what is vendored in the repo. What changed: - Vendor generated artifacts under `codex-rs/app-server-protocol/schema/typescript/` and `codex-rs/app-server-protocol/schema/json/`. - Add `just write-app-server-schema` to fully regenerate fixtures (including deleting stale files). - Add a fixture sync test for `codex-app-server-protocol` to assert the vendored trees match freshly generated output. - Canonicalize JSON schema output (sorted object keys) for deterministic diffs. - Wire Bazel test data so remote tests can read the vendored fixtures. Refs: openai/codex#8956 (config.schema.json vendoring + sync test pattern)
129 lines
3.1 KiB
JSON
129 lines
3.1 KiB
JSON
{
|
|
"$schema": "http://json-schema.org/draft-07/schema#",
|
|
"definitions": {
|
|
"ReviewDelivery": {
|
|
"enum": [
|
|
"inline",
|
|
"detached"
|
|
],
|
|
"type": "string"
|
|
},
|
|
"ReviewTarget": {
|
|
"oneOf": [
|
|
{
|
|
"description": "Review the working tree: staged, unstaged, and untracked files.",
|
|
"properties": {
|
|
"type": {
|
|
"enum": [
|
|
"uncommittedChanges"
|
|
],
|
|
"title": "UncommittedChangesReviewTargetType",
|
|
"type": "string"
|
|
}
|
|
},
|
|
"required": [
|
|
"type"
|
|
],
|
|
"title": "UncommittedChangesReviewTarget",
|
|
"type": "object"
|
|
},
|
|
{
|
|
"description": "Review changes between the current branch and the given base branch.",
|
|
"properties": {
|
|
"branch": {
|
|
"type": "string"
|
|
},
|
|
"type": {
|
|
"enum": [
|
|
"baseBranch"
|
|
],
|
|
"title": "BaseBranchReviewTargetType",
|
|
"type": "string"
|
|
}
|
|
},
|
|
"required": [
|
|
"branch",
|
|
"type"
|
|
],
|
|
"title": "BaseBranchReviewTarget",
|
|
"type": "object"
|
|
},
|
|
{
|
|
"description": "Review the changes introduced by a specific commit.",
|
|
"properties": {
|
|
"sha": {
|
|
"type": "string"
|
|
},
|
|
"title": {
|
|
"description": "Optional human-readable label (e.g., commit subject) for UIs.",
|
|
"type": [
|
|
"string",
|
|
"null"
|
|
]
|
|
},
|
|
"type": {
|
|
"enum": [
|
|
"commit"
|
|
],
|
|
"title": "CommitReviewTargetType",
|
|
"type": "string"
|
|
}
|
|
},
|
|
"required": [
|
|
"sha",
|
|
"type"
|
|
],
|
|
"title": "CommitReviewTarget",
|
|
"type": "object"
|
|
},
|
|
{
|
|
"description": "Arbitrary instructions, equivalent to the old free-form prompt.",
|
|
"properties": {
|
|
"instructions": {
|
|
"type": "string"
|
|
},
|
|
"type": {
|
|
"enum": [
|
|
"custom"
|
|
],
|
|
"title": "CustomReviewTargetType",
|
|
"type": "string"
|
|
}
|
|
},
|
|
"required": [
|
|
"instructions",
|
|
"type"
|
|
],
|
|
"title": "CustomReviewTarget",
|
|
"type": "object"
|
|
}
|
|
]
|
|
}
|
|
},
|
|
"properties": {
|
|
"delivery": {
|
|
"anyOf": [
|
|
{
|
|
"$ref": "#/definitions/ReviewDelivery"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null,
|
|
"description": "Where to run the review: inline (default) on the current thread or detached on a new thread (returned in `reviewThreadId`)."
|
|
},
|
|
"target": {
|
|
"$ref": "#/definitions/ReviewTarget"
|
|
},
|
|
"threadId": {
|
|
"type": "string"
|
|
}
|
|
},
|
|
"required": [
|
|
"target",
|
|
"threadId"
|
|
],
|
|
"title": "ReviewStartParams",
|
|
"type": "object"
|
|
} |