Skip to main content
Glama

start_qa_orchestration

Create a QA session; optionally bind it to one immutable review input.

Instructions

Create a QA session; optionally bind it to one immutable review input.

Every call creates a separate session. Use prepare_qa_orchestration for a stateless profile checklist. task_type narrows the bundle shortlist; the host still selects the review route. For an auditable code review, pass review_context with the exact source and evidence packet identifiers. The server stores the identifiers and submitted report fields, not the raw diff or full Evidence Packet.

  • Sessions expire after the configured TTL (1800 seconds by default).

  • Capacity is 100 sessions by default and can be configured.

  • Expired sessions are purged and retained terminal sessions may be evicted. If capacity can only be freed by removing an active session, the call returns a session limit error.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
task_typeYesBroad request category: ordinary_review for implementation review, widget_review for widget changes, epic_analysis for broad exploration, requirements_analysis for requirement review, qa_planning for coverage planning, autotest_implementation for automation work, or other. This affects recommended_bundles only; the host chooses the route from changed files and evidence; it is not a risk level.
review_contextNoOptional immutable repository, base/head, changed-file, diff, and Evidence Packet identity. When supplied, every completed profile must include a structured report whose evidence references belong to this packet; completed outcomes require a final report. The response may include file-type-based recommended_profiles as non-binding hints. Optional evidence_registry metadata binds each ref to a source kind, revision, coordinates and content hash. The host verifies actual content locally.

Output Schema

TableJSON Schema
NameRequiredDescriptionDefault
run_idYes
statusYes
revisionNoWorkflow revision for conditional writes.
read_onlyNo
task_typeYes
expires_atYes
next_actionYes
current_stepYes
model_policyNo
risk_signalsNo
review_contextNo
allowed_bundlesNo
current_profileNo
deep_assessmentNo
profile_reportsNo
review_profilesNo
selected_bundleNo
allowed_profilesNo
deep_reason_codeNo
selected_profileNo
completed_profilesNo
final_review_reportNo
host_owns_decisionsNo
recommended_bundlesNo
transition_receiptsNoBounded request hashes for safe replay; no raw transition payloads are stored.
recommended_profilesNoFile-type-based profile hints only; the host selects the route.

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed8 schema fields changedv0.2.11
    • changedInput schema / properties / review_context / anyOf
      Previous value: -[
      -  {
      -    "additionalProperties": false,
      -    "description": "Immutable identifiers for the exact source and evidence packet reviewed.",
      -    "properties": {
      -      "base_sha": {
      -        "pattern": "(?i)^(?:[a-f0-9]{40}|[a-f0-9]{64})$",
      -        "type": "string"
      -      },
      -      "changed_files": {
      -        "items": {
      -          "maxLength": 1024,
      -          "minLength": 1,
      -          "type": "string"
      -        },
      -        "maxItems": 500,
      -        "minItems": 1,
      -        "type": "array"
      -      },
      -      "diff_sha256": {
      -        "pattern": "(?i)^[a-f0-9]{64}$",
      -        "type": "string"
      -      },
      -      "evidence_packet_sha256": {
      -        "pattern": "(?i)^[a-f0-9]{64}$",
      -        "type": "string"
      -      },
      -      "evidence_refs": {
      -        "items": {
      -          "maxLength": 128,
      -          "minLength": 1,
      -          "pattern": "^[A-Za-z0-9][A-Za-z0-9._:/-]*$",
      -          "type": "string"
      -        },
      -        "maxItems": 1000,
      -        "minItems": 1,
      -        "type": "array"
      -      },
      -      "evidence_registry": {
      -        "default": [],
      -        "description": "Optional complete ref-to-source registry with revision, coordinates and hashes.",
      -        "items": {
      -          "additionalProperties": false,
      -          "description": "Metadata for one evidence item; raw content remains with the host.",
      -          "properties": {
      -            "end_line": {
      -              "anyOf": [
      -                {
      -                  "minimum": 1,
      -                  "type": "integer"
      -                },
      -                {
      -                  "type": "null"
      -                }
      -              ],
      -              "default": null
      -            },
      -            "evidence_ref": {
      -              "maxLength": 128,
      -              "minLength": 1,
      -              "pattern": "^[A-Za-z0-9][A-Za-z0-9._:/-]*$",
      -              "type": "string"
      -            },
      -            "kind": {
      -              "enum": [
      -                "source",
      -                "diff",
      -                "requirement",
      -                "runtime",
      -                "other"
      -              ],
      -              "type": "string"
      -            },
      -            "locator": {
      -              "anyOf": [
      -                {
      -                  "maxLength": 1024,
      -                  "minLength": 1,
      -                  "type": "string"
      -                },
      -                {
      -                  "type": "null"
      -                }
      -              ],
      -              "default": null
      -            },
      -            "path": {
      -              "anyOf": [
      -                {
      -                  "maxLength": 1024,
      -                  "minLength": 1,
      -                  "type": "string"
      -                },
      -                {
      -                  "type": "null"
      -                }
      -              ],
      -              "default": null
      -            },
      -            "revision": {
      -              "anyOf": [
      -                {
      -                  "pattern": "(?i)^(?:[a-f0-9]{40}|[a-f0-9]{64})$",
      -                  "type": "string"
      -                },
      -                {
      -                  "type": "null"
      -                }
      -              ],
      -              "default": null
      -            },
      -            "sha256": {
      -              "pattern": "(?i)^[a-f0-9]{64}$",
      -              "type": "string"
      -            },
      -            "start_line": {
      -              "anyOf": [
      -                {
      -                  "minimum": 1,
      -                  "type": "integer"
      -                },
      -                {
      -                  "type": "null"
      -                }
      -              ],
      -              "default": null
      -            }
      -          },
      -          "required": [
      -            "evidence_ref",
      -            "kind",
      -            "sha256"
      -          ],
      -          "type": "object"
      -        },
      -        "maxItems": 1000,
      -        "type": "array"
      -      },
      -      "head_sha": {
      -        "pattern": "(?i)^(?:[a-f0-9]{40}|[a-f0-9]{64})$",
      -        "type": "string"
      -      },
      -      "repository": {
      -        "maxLength": 512,
      -        "minLength": 1,
      -        "type": "string"
      -      }
      -    },
      -    "required": [
      -      "repository",
      -      "base_sha",
      -      "head_sha",
      -      "diff_sha256",
      -      "evidence_packet_sha256",
      -      "changed_files",
      -      "evidence_refs"
      -    ],
      -    "type": "object"
      -  },
      -  {
      -    "type": "null"
      -  }
      -]New value: +[
      +  {
      +    "additionalProperties": false,
      +    "description": "Immutable identifiers for the exact source and evidence packet reviewed.",
      +    "properties": {
      +      "base_sha": {
      +        "pattern": "(?i)^(?:[a-f0-9]{40}|[a-f0-9]{64})$",
      +        "type": "string"
      +      },
      +      "changed_files": {
      +        "items": {
      +          "maxLength": 1024,
      +          "minLength": 1,
      +          "type": "string"
      +        },
      +        "maxItems": 500,
      +        "minItems": 1,
      +        "type": "array"
      +      },
      +      "diff_sha256": {
      +        "pattern": "(?i)^[a-f0-9]{64}$",
      +        "type": "string"
      +      },
      +      "evidence_packet_sha256": {
      +        "pattern": "(?i)^[a-f0-9]{64}$",
      +        "type": "string"
      +      },
      +      "evidence_refs": {
      +        "items": {
      +          "maxLength": 128,
      +          "minLength": 1,
      +          "pattern": "^[A-Za-z0-9][A-Za-z0-9._:/-]*$",
      +          "type": "string"
      +        },
      +        "maxItems": 1000,
      +        "minItems": 1,
      +        "type": "array"
      +      },
      +      "evidence_registry": {
      +        "default": [],
      +        "description": "Optional complete ref-to-source registry with revision, coordinates and hashes.",
      +        "items": {
      +          "additionalProperties": false,
      +          "description": "Metadata for one evidence item; raw content remains with the host.",
      +          "properties": {
      +            "end_line": {
      +              "anyOf": [
      +                {
      +                  "minimum": 1,
      +                  "type": "integer"
      +                },
      +                {
      +                  "type": "null"
      +                }
      +              ],
      +              "default": null
      +            },
      +            "evidence_ref": {
      +              "maxLength": 128,
      +              "minLength": 1,
      +              "pattern": "^[A-Za-z0-9][A-Za-z0-9._:/-]*$",
      +              "type": "string"
      +            },
      +            "kind": {
      +              "enum": [
      +                "source",
      +                "diff",
      +                "requirement",
      +                "runtime",
      +                "other"
      +              ],
      +              "type": "string"
      +            },
      +            "locator": {
      +              "anyOf": [
      +                {
      +                  "maxLength": 1024,
      +                  "minLength": 1,
      +                  "type": "string"
      +                },
      +                {
      +                  "type": "null"
      +                }
      +              ],
      +              "default": null
      +            },
      +            "path": {
      +              "anyOf": [
      +                {
      +                  "maxLength": 1024,
      +                  "minLength": 1,
      +                  "type": "string"
      +                },
      +                {
      +                  "type": "null"
      +                }
      +              ],
      +              "default": null
      +            },
      +            "revision": {
      +              "anyOf": [
      +                {
      +                  "pattern": "(?i)^(?:[a-f0-9]{40}|[a-f0-9]{64})$",
      +                  "type": "string"
      +                },
      +                {
      +                  "type": "null"
      +                }
      +              ],
      +              "default": null
      +            },
      +            "sha256": {
      +              "pattern": "(?i)^[a-f0-9]{64}$",
      +              "type": "string"
      +            },
      +            "start_line": {
      +              "anyOf": [
      +                {
      +                  "minimum": 1,
      +                  "type": "integer"
      +                },
      +                {
      +                  "type": "null"
      +                }
      +              ],
      +              "default": null
      +            }
      +          },
      +          "required": [
      +            "evidence_ref",
      +            "kind",
      +            "sha256"
      +          ],
      +          "type": "object"
      +        },
      +        "maxItems": 1000,
      +        "type": "array"
      +      },
      +      "head_sha": {
      +        "pattern": "(?i)^(?:[a-f0-9]{40}|[a-f0-9]{64})$",
      +        "type": "string"
      +      },
      +      "repository": {
      +        "maxLength": 512,
      +        "minLength": 1,
      +        "type": "string"
      +      },
      +      "review_rules": {
      +        "anyOf": [
      +          {
      +            "additionalProperties": false,
      +            "properties": {
      +              "rules": {
      +                "default": [],
      +                "items": {
      +                  "additionalProperties": false,
      +                  "properties": {
      +                    "condition": {
      +                      "maxLength": 2000,
      +                      "minLength": 1,
      +                      "type": "string"
      +                    },
      +                    "kind": {
      +                      "enum": [
      +                        "raise",
      +                        "guard"
      +                      ],
      +                      "type": "string"
      +                    },
      +                    "paths": {
      +                      "items": {
      +                        "type": "string"
      +                      },
      +                      "maxItems": 32,
      +                      "minItems": 1,
      +                      "type": "array"
      +                    },
      +                    "rationale": {
      +                      "maxLength": 2000,
      +                      "minLength": 1,
      +                      "type": "string"
      +                    },
      +                    "rule_id": {
      +                      "pattern": "^[A-Za-z0-9][A-Za-z0-9._-]{0,127}$",
      +                      "type": "string"
      +                    },
      +                    "text": {
      +                      "maxLength": 2000,
      +                      "minLength": 1,
      +                      "type": "string"
      +                    }
      +                  },
      +                  "required": [
      +                    "rule_id",
      +                    "kind",
      +                    "paths",
      +                    "condition",
      +                    "text",
      +                    "rationale"
      +                  ],
      +                  "type": "object"
      +                },
      +                "maxItems": 100,
      +                "type": "array"
      +              },
      +              "schema_version": {
      +                "const": 1,
      +                "default": 1,
      +                "type": "integer"
      +              }
      +            },
      +            "type": "object"
      +          },
      +          {
      +            "type": "null"
      +          }
      +        ],
      +        "default": null
      +      }
      +    },
      +    "required": [
      +      "repository",
      +      "base_sha",
      +      "head_sha",
      +      "diff_sha256",
      +      "evidence_packet_sha256",
      +      "changed_files",
      +      "evidence_refs"
      +    ],
      +    "type": "object"
      +  },
      +  {
      +    "type": "null"
      +  }
      +]
    • changedOutput schema / properties / final_review_report / anyOf
      Previous value: -[
      -  {
      -    "additionalProperties": false,
      -    "description": "Structured synthesis stored with a review-bound orchestration session.",
      -    "properties": {
      -      "candidate_decisions": {
      -        "default": [],
      -        "description": "One host decision per submitted candidate; absent on legacy saved reports.",
      -        "items": {
      -          "additionalProperties": false,
      -          "description": "The host's disposition of one profile-local candidate.",
      -          "properties": {
      -            "evidence_refs": {
      -              "items": {
      -                "maxLength": 128,
      -                "minLength": 1,
      -                "pattern": "^[A-Za-z0-9][A-Za-z0-9._:/-]*$",
      -                "type": "string"
      -              },
      -              "maxItems": 32,
      -              "minItems": 1,
      -              "type": "array"
      -            },
      -            "final_finding_id": {
      -              "anyOf": [
      -                {
      -                  "pattern": "^F-[0-9]{2,}$",
      -                  "type": "string"
      -                },
      -                {
      -                  "type": "null"
      -                }
      -              ],
      -              "default": null
      -            },
      -            "rationale": {
      -              "maxLength": 2000,
      -              "minLength": 1,
      -              "type": "string"
      -            },
      -            "source": {
      -              "additionalProperties": false,
      -              "description": "A profile-local candidate that contributed to one synthesized finding.",
      -              "properties": {
      -                "candidate_id": {
      -                  "pattern": "^F-[0-9]{2,}$",
      -                  "type": "string"
      -                },
      -                "profile": {
      -                  "enum": [
      -                    "pr_test_analyzer",
      -                    "code_reviewer",
      -                    "security_reviewer",
      -                    "silent_failure_hunter",
      -                    "code_explorer",
      -                    "typescript_reviewer",
      -                    "react_reviewer",
      -                    "ruby_reviewer",
      -                    "python_reviewer",
      -                    "mobile_reviewer"
      -                  ],
      -                  "type": "string"
      -                }
      -              },
      -              "required": [
      -                "profile",
      -                "candidate_id"
      -              ],
      -              "type": "object"
      -            },
      -            "verdict": {
      -              "enum": [
      -                "confirmed",
      -                "rejected",
      -                "duplicate",
      -                "unverified"
      -              ],
      -              "type": "string"
      -            }
      -          },
      -          "required": [
      -            "source",
      -            "verdict",
      -            "rationale",
      -            "evidence_refs"
      -          ],
      -          "type": "object"
      -        },
      -        "maxItems": 1000,
      -        "type": "array"
      -      },
      -      "coverage_gaps": {
      -        "default": [],
      -        "items": {
      -          "additionalProperties": false,
      -          "properties": {
      -            "evidence_refs": {
      -              "default": [],
      -              "items": {
      -                "maxLength": 128,
      -                "minLength": 1,
      -                "pattern": "^[A-Za-z0-9][A-Za-z0-9._:/-]*$",
      -                "type": "string"
      -              },
      -              "maxItems": 32,
      -              "type": "array"
      -            },
      -            "text": {
      -              "maxLength": 2000,
      -              "minLength": 1,
      -              "type": "string"
      -            }
      -          },
      -          "required": [
      -            "text"
      -          ],
      -          "type": "object"
      -        },
      -        "maxItems": 100,
      -        "type": "array"
      -      },
      -      "finding_candidates": {
      -        "default": [],
      -        "items": {
      -          "additionalProperties": false,
      -          "properties": {
      -            "affected_area": {
      -              "anyOf": [
      -                {
      -                  "maxLength": 256,
      -                  "type": "string"
      -                },
      -                {
      -                  "type": "null"
      -                }
      -              ],
      -              "default": null,
      -              "description": "Affected user flow or system area, when supported by the evidence."
      -            },
      -            "candidate_id": {
      -              "pattern": "^F-[0-9]{2,}$",
      -              "type": "string"
      -            },
      -            "confidence": {
      -              "enum": [
      -                "high",
      -                "medium",
      -                "low"
      -              ],
      -              "type": "string"
      -            },
      -            "description": {
      -              "maxLength": 5000,
      -              "minLength": 1,
      -              "type": "string"
      -            },
      -            "evidence_refs": {
      -              "items": {
      -                "maxLength": 128,
      -                "minLength": 1,
      -                "pattern": "^[A-Za-z0-9][A-Za-z0-9._:/-]*$",
      -                "type": "string"
      -              },
      -              "maxItems": 32,
      -              "minItems": 1,
      -              "type": "array"
      -            },
      -            "impact": {
      -              "anyOf": [
      -                {
      -                  "maxLength": 2000,
      -                  "type": "string"
      -                },
      -                {
      -                  "type": "null"
      -                }
      -              ],
      -              "default": null,
      -              "description": "Concrete effect on users or contracts; severity remains host-owned."
      -            },
      -            "severity": {
      -              "anyOf": [
      -                {
      -                  "enum": [
      -                    "high",
      -                    "medium",
      -                    "low"
      -                  ],
      -                  "type": "string"
      -                },
      -                {
      -                  "type": "null"
      -                }
      -              ],
      -              "default": null,
      -              "description": "Impact severity selected by the host for a confirmed finding."
      -            },
      -            "source_candidates": {
      -              "default": [],
      -              "description": "Required for new final reports; empty only on reports persisted before source linkage.",
      -              "items": {
      -                "additionalProperties": false,
      -                "description": "A profile-local candidate that contributed to one synthesized finding.",
      -                "properties": {
      -                  "candidate_id": {
      -                    "pattern": "^F-[0-9]{2,}$",
      -                    "type": "string"
      -                  },
      -                  "profile": {
      -                    "enum": [
      -                      "pr_test_analyzer",
      -                      "code_reviewer",
      -                      "security_reviewer",
      -                      "silent_failure_hunter",
      -                      "code_explorer",
      -                      "typescript_reviewer",
      -                      "react_reviewer",
      -                      "ruby_reviewer",
      -                      "python_reviewer",
      -                      "mobile_reviewer"
      -                    ],
      -                    "type": "string"
      -                  }
      -                },
      -                "required": [
      -                  "profile",
      -                  "candidate_id"
      -                ],
      -                "type": "object"
      -              },
      -              "type": "array"
      -            },
      -            "source_locations": {
      -              "default": [],
      -              "description": "Precise source locations supporting this candidate when available.",
      -              "items": {
      -                "additionalProperties": false,
      -                "description": "A stable source locator for a finding candidate.",
      -                "properties": {
      -                  "end_line": {
      -                    "anyOf": [
      -                      {
      -                        "minimum": 1,
      -                        "type": "integer"
      -                      },
      -                      {
      -                        "type": "null"
      -                      }
      -                    ],
      -                    "default": null
      -                  },
      -                  "path": {
      -                    "maxLength": 1024,
      -                    "minLength": 1,
      -                    "type": "string"
      -                  },
      -                  "start_line": {
      -                    "minimum": 1,
      -                    "type": "integer"
      -                  }
      -                },
      -                "required": [
      -                  "path",
      -                  "start_line"
      -                ],
      -                "type": "object"
      -              },
      -              "maxItems": 20,
      -              "type": "array"
      -            },
      -            "source_profiles": {
      -              "items": {
      -                "enum": [
      -                  "pr_test_analyzer",
      -                  "code_reviewer",
      -                  "security_reviewer",
      -                  "silent_failure_hunter",
      -                  "code_explorer",
      -                  "typescript_reviewer",
      -                  "react_reviewer",
      -                  "ruby_reviewer",
      -                  "python_reviewer",
      -                  "mobile_reviewer"
      -                ],
      -                "type": "string"
      -              },
      -              "minItems": 1,
      -              "type": "array"
      -            },
      -            "title": {
      -              "maxLength": 256,
      -              "minLength": 1,
      -              "type": "string"
      -            },
      -            "verification_gap": {
      -              "maxLength": 2000,
      -              "minLength": 1,
      -              "type": "string"
      -            }
      -          },
      -          "required": [
      -            "candidate_id",
      -            "title",
      -            "description",
      -            "confidence",
      -            "verification_gap",
      -            "evidence_refs",
      -            "source_profiles"
      -          ],
      -          "type": "object"
      -        },
      -        "maxItems": 100,
      -        "type": "array"
      -      },
      -      "profiles_reviewed": {
      -        "items": {
      -          "enum": [
      -            "pr_test_analyzer",
      -            "code_reviewer",
      -            "security_reviewer",
      -            "silent_failure_hunter",
      -            "code_explorer",
      -            "typescript_reviewer",
      -            "react_reviewer",
      -            "ruby_reviewer",
      -            "python_reviewer",
      -            "mobile_reviewer"
      -          ],
      -          "type": "string"
      -        },
      -        "minItems": 1,
      -        "type": "array"
      -      },
      -      "summary": {
      -        "maxLength": 5000,
      -        "minLength": 1,
      -        "type": "string"
      -      },
      -      "unverified": {
      -        "default": [],
      -        "items": {
      -          "additionalProperties": false,
      -          "properties": {
      -            "evidence_refs": {
      -              "default": [],
      -              "items": {
      -                "maxLength": 128,
      -                "minLength": 1,
      -                "pattern": "^[A-Za-z0-9][A-Za-z0-9._:/-]*$",
      -                "type": "string"
      -              },
      -              "maxItems": 32,
      -              "type": "array"
      -            },
      -            "text": {
      -              "maxLength": 2000,
      -              "minLength": 1,
      -              "type": "string"
      -            }
      -          },
      -          "required": [
      -            "text"
      -          ],
      -          "type": "object"
      -        },
      -        "maxItems": 100,
      -        "type": "array"
      -      }
      -    },
      -    "required": [
      -      "summary",
      -      "profiles_reviewed"
      -    ],
      -    "type": "object"
      -  },
      -  {
      -    "type": "null"
      -  }
      -]New value: +[
      +  {
      +    "additionalProperties": false,
      +    "description": "Structured synthesis stored with a review-bound orchestration session.",
      +    "properties": {
      +      "candidate_decisions": {
      +        "default": [],
      +        "description": "One host decision per submitted candidate; absent on legacy saved reports.",
      +        "items": {
      +          "additionalProperties": false,
      +          "description": "The host's disposition of one profile-local candidate.",
      +          "properties": {
      +            "evidence_refs": {
      +              "items": {
      +                "maxLength": 128,
      +                "minLength": 1,
      +                "pattern": "^[A-Za-z0-9][A-Za-z0-9._:/-]*$",
      +                "type": "string"
      +              },
      +              "maxItems": 32,
      +              "minItems": 1,
      +              "type": "array"
      +            },
      +            "final_finding_id": {
      +              "anyOf": [
      +                {
      +                  "pattern": "^F-[0-9]{2,}$",
      +                  "type": "string"
      +                },
      +                {
      +                  "type": "null"
      +                }
      +              ],
      +              "default": null
      +            },
      +            "rationale": {
      +              "maxLength": 2000,
      +              "minLength": 1,
      +              "type": "string"
      +            },
      +            "refutation": {
      +              "anyOf": [
      +                {
      +                  "additionalProperties": false,
      +                  "description": "Host's evidence-backed assessment, not a vote or proof of another agent's execution.",
      +                  "properties": {
      +                    "candidate_sha256": {
      +                      "pattern": "(?i)^[a-f0-9]{64}$",
      +                      "type": "string"
      +                    },
      +                    "context_sha256": {
      +                      "pattern": "(?i)^[a-f0-9]{64}$",
      +                      "type": "string"
      +                    },
      +                    "evidence_refs": {
      +                      "items": {
      +                        "maxLength": 128,
      +                        "minLength": 1,
      +                        "pattern": "^[A-Za-z0-9][A-Za-z0-9._:/-]*$",
      +                        "type": "string"
      +                      },
      +                      "maxItems": 32,
      +                      "minItems": 1,
      +                      "type": "array"
      +                    },
      +                    "rationale": {
      +                      "maxLength": 2000,
      +                      "minLength": 1,
      +                      "type": "string"
      +                    },
      +                    "status": {
      +                      "enum": [
      +                        "refuted",
      +                        "not_refuted",
      +                        "unverified"
      +                      ],
      +                      "type": "string"
      +                    }
      +                  },
      +                  "required": [
      +                    "context_sha256",
      +                    "candidate_sha256",
      +                    "status",
      +                    "rationale",
      +                    "evidence_refs"
      +                  ],
      +                  "type": "object"
      +                },
      +                {
      +                  "type": "null"
      +                }
      +              ],
      +              "default": null
      +            },
      +            "source": {
      +              "additionalProperties": false,
      +              "description": "A profile-local candidate that contributed to one synthesized finding.",
      +              "properties": {
      +                "candidate_id": {
      +                  "pattern": "^F-[0-9]{2,}$",
      +                  "type": "string"
      +                },
      +                "profile": {
      +                  "enum": [
      +                    "pr_test_analyzer",
      +                    "code_reviewer",
      +                    "security_reviewer",
      +                    "silent_failure_hunter",
      +                    "code_explorer",
      +                    "typescript_reviewer",
      +                    "react_reviewer",
      +                    "ruby_reviewer",
      +                    "python_reviewer",
      +                    "mobile_reviewer"
      +                  ],
      +                  "type": "string"
      +                }
      +              },
      +              "required": [
      +                "profile",
      +                "candidate_id"
      +              ],
      +              "type": "object"
      +            },
      +            "verdict": {
      +              "enum": [
      +                "confirmed",
      +                "rejected",
      +                "duplicate",
      +                "unverified"
      +              ],
      +              "type": "string"
      +            }
      +          },
      +          "required": [
      +            "source",
      +            "verdict",
      +            "rationale",
      +            "evidence_refs"
      +          ],
      +          "type": "object"
      +        },
      +        "maxItems": 1000,
      +        "type": "array"
      +      },
      +      "coverage_gaps": {
      +        "default": [],
      +        "items": {
      +          "additionalProperties": false,
      +          "properties": {
      +            "evidence_refs": {
      +              "default": [],
      +              "items": {
      +                "maxLength": 128,
      +                "minLength": 1,
      +                "pattern": "^[A-Za-z0-9][A-Za-z0-9._:/-]*$",
      +                "type": "string"
      +              },
      +              "maxItems": 32,
      +              "type": "array"
      +            },
      +            "text": {
      +              "maxLength": 2000,
      +              "minLength": 1,
      +              "type": "string"
      +            }
      +          },
      +          "required": [
      +            "text"
      +          ],
      +          "type": "object"
      +        },
      +        "maxItems": 100,
      +        "type": "array"
      +      },
      +      "finding_candidates": {
      +        "default": [],
      +        "items": {
      +          "additionalProperties": false,
      +          "properties": {
      +            "affected_area": {
      +              "anyOf": [
      +                {
      +                  "maxLength": 256,
      +                  "type": "string"
      +                },
      +                {
      +                  "type": "null"
      +                }
      +              ],
      +              "default": null,
      +              "description": "Affected user flow or system area, when supported by the evidence."
      +            },
      +            "candidate_id": {
      +              "pattern": "^F-[0-9]{2,}$",
      +              "type": "string"
      +            },
      +            "confidence": {
      +              "enum": [
      +                "high",
      +                "medium",
      +                "low"
      +              ],
      +              "type": "string"
      +            },
      +            "description": {
      +              "maxLength": 5000,
      +              "minLength": 1,
      +              "type": "string"
      +            },
      +            "evidence_refs": {
      +              "items": {
      +                "maxLength": 128,
      +                "minLength": 1,
      +                "pattern": "^[A-Za-z0-9][A-Za-z0-9._:/-]*$",
      +                "type": "string"
      +              },
      +              "maxItems": 32,
      +              "minItems": 1,
      +              "type": "array"
      +            },
      +            "failure_condition": {
      +              "anyOf": [
      +                {
      +                  "maxLength": 2000,
      +                  "minLength": 1,
      +                  "type": "string"
      +                },
      +                {
      +                  "type": "null"
      +                }
      +              ],
      +              "default": null,
      +              "description": "Specific preconditions that make the alleged failure occur."
      +            },
      +            "flip_condition": {
      +              "anyOf": [
      +                {
      +                  "maxLength": 2000,
      +                  "minLength": 1,
      +                  "type": "string"
      +                },
      +                {
      +                  "type": "null"
      +                }
      +              ],
      +              "default": null,
      +              "description": "Concrete source/contract evidence that would refute this candidate."
      +            },
      +            "impact": {
      +              "anyOf": [
      +                {
      +                  "maxLength": 2000,
      +                  "type": "string"
      +                },
      +                {
      +                  "type": "null"
      +                }
      +              ],
      +              "default": null,
      +              "description": "Concrete effect on users or contracts; severity remains host-owned."
      +            },
      +            "severity": {
      +              "anyOf": [
      +                {
      +                  "enum": [
      +                    "high",
      +                    "medium",
      +                    "low"
      +                  ],
      +                  "type": "string"
      +                },
      +                {
      +                  "type": "null"
      +                }
      +              ],
      +              "default": null,
      +              "description": "Impact severity selected by the host for a confirmed finding."
      +            },
      +            "source_candidates": {
      +              "default": [],
      +              "description": "Required for new final reports; empty only on reports persisted before source linkage.",
      +              "items": {
      +                "additionalProperties": false,
      +                "description": "A profile-local candidate that contributed to one synthesized finding.",
      +                "properties": {
      +                  "candidate_id": {
      +                    "pattern": "^F-[0-9]{2,}$",
      +                    "type": "string"
      +                  },
      +                  "profile": {
      +                    "enum": [
      +                      "pr_test_analyzer",
      +                      "code_reviewer",
      +                      "security_reviewer",
      +                      "silent_failure_hunter",
      +                      "code_explorer",
      +                      "typescript_reviewer",
      +                      "react_reviewer",
      +                      "ruby_reviewer",
      +                      "python_reviewer",
      +                      "mobile_reviewer"
      +                    ],
      +                    "type": "string"
      +                  }
      +                },
      +                "required": [
      +                  "profile",
      +                  "candidate_id"
      +                ],
      +                "type": "object"
      +              },
      +              "type": "array"
      +            },
      +            "source_locations": {
      +              "default": [],
      +              "description": "Precise source locations supporting this candidate when available.",
      +              "items": {
      +                "additionalProperties": false,
      +                "description": "A stable source locator for a finding candidate.",
      +                "properties": {
      +                  "end_line": {
      +                    "anyOf": [
      +                      {
      +                        "minimum": 1,
      +                        "type": "integer"
      +                      },
      +                      {
      +                        "type": "null"
      +                      }
      +                    ],
      +                    "default": null
      +                  },
      +                  "path": {
      +                    "maxLength": 1024,
      +                    "minLength": 1,
      +                    "type": "string"
      +                  },
      +                  "start_line": {
      +                    "minimum": 1,
      +                    "type": "integer"
      +                  }
      +                },
      +                "required": [
      +                  "path",
      +                  "start_line"
      +                ],
      +                "type": "object"
      +              },
      +              "maxItems": 20,
      +              "type": "array"
      +            },
      +            "source_profiles": {
      +              "items": {
      +                "enum": [
      +                  "pr_test_analyzer",
      +                  "code_reviewer",
      +                  "security_reviewer",
      +                  "silent_failure_hunter",
      +                  "code_explorer",
      +                  "typescript_reviewer",
      +                  "react_reviewer",
      +                  "ruby_reviewer",
      +                  "python_reviewer",
      +                  "mobile_reviewer"
      +                ],
      +                "type": "string"
      +              },
      +              "minItems": 1,
      +              "type": "array"
      +            },
      +            "title": {
      +              "maxLength": 256,
      +              "minLength": 1,
      +              "type": "string"
      +            },
      +            "verification_gap": {
      +              "maxLength": 2000,
      +              "minLength": 1,
      +              "type": "string"
      +            }
      +          },
      +          "required": [
      +            "candidate_id",
      +            "title",
      +            "description",
      +            "confidence",
      +            "verification_gap",
      +            "evidence_refs",
      +            "source_profiles"
      +          ],
      +          "type": "object"
      +        },
      +        "maxItems": 100,
      +        "type": "array"
      +      },
      +      "profiles_reviewed": {
      +        "items": {
      +          "enum": [
      +            "pr_test_analyzer",
      +            "code_reviewer",
      +            "security_reviewer",
      +            "silent_failure_hunter",
      +            "code_explorer",
      +            "typescript_reviewer",
      +            "react_reviewer",
      +            "ruby_reviewer",
      +            "python_reviewer",
      +            "mobile_reviewer"
      +          ],
      +          "type": "string"
      +        },
      +        "minItems": 1,
      +        "type": "array"
      +      },
      +      "review_rules_sha256": {
      +        "anyOf": [
      +          {
      +            "pattern": "(?i)^[a-f0-9]{64}$",
      +            "type": "string"
      +          },
      +          {
      +            "type": "null"
      +          }
      +        ],
      +        "default": null
      +      },
      +      "summary": {
      +        "maxLength": 5000,
      +        "minLength": 1,
      +        "type": "string"
      +      },
      +      "unverified": {
      +        "default": [],
      +        "items": {
      +          "additionalProperties": false,
      +          "properties": {
      +            "evidence_refs": {
      +              "default": [],
      +              "items": {
      +                "maxLength": 128,
      +                "minLength": 1,
      +                "pattern": "^[A-Za-z0-9][A-Za-z0-9._:/-]*$",
      +                "type": "string"
      +              },
      +              "maxItems": 32,
      +              "type": "array"
      +            },
      +            "text": {
      +              "maxLength": 2000,
      +              "minLength": 1,
      +              "type": "string"
      +            }
      +          },
      +          "required": [
      +            "text"
      +          ],
      +          "type": "object"
      +        },
      +        "maxItems": 100,
      +        "type": "array"
      +      }
      +    },
      +    "required": [
      +      "summary",
      +      "profiles_reviewed"
      +    ],
      +    "type": "object"
      +  },
      +  {
      +    "type": "null"
      +  }
      +]
    • addedOutput schema / properties / profile_reports / items / properties / context_selection
      Added value: +{
      +  "anyOf": [
      +    {
      +      "additionalProperties": false,
      +      "description": "Host assertion of the exact subset actually sent to a profile.",
      +      "properties": {
      +        "budget_omitted_refs": {
      +          "default": [],
      +          "items": {
      +            "maxLength": 128,
      +            "minLength": 1,
      +            "pattern": "^[A-Za-z0-9][A-Za-z0-9._:/-]*$",
      +            "type": "string"
      +          },
      +          "maxItems": 1000,
      +          "type": "array"
      +        },
      +        "included_refs": {
      +          "items": {
      +            "maxLength": 128,
      +            "minLength": 1,
      +            "pattern": "^[A-Za-z0-9][A-Za-z0-9._:/-]*$",
      +            "type": "string"
      +          },
      +          "maxItems": 1000,
      +          "type": "array"
      +        },
      +        "max_bytes": {
      +          "maximum": 2000000,
      +          "minimum": 1,
      +          "type": "integer"
      +        },
      +        "omitted_refs": {
      +          "default": [],
      +          "items": {
      +            "maxLength": 128,
      +            "minLength": 1,
      +            "pattern": "^[A-Za-z0-9][A-Za-z0-9._:/-]*$",
      +            "type": "string"
      +          },
      +          "maxItems": 1000,
      +          "type": "array"
      +        },
      +        "selected_bytes": {
      +          "maximum": 2000000,
      +          "minimum": 0,
      +          "type": "integer"
      +        },
      +        "selected_packet_sha256": {
      +          "pattern": "(?i)^[a-f0-9]{64}$",
      +          "type": "string"
      +        },
      +        "source_packet_sha256": {
      +          "pattern": "(?i)^[a-f0-9]{64}$",
      +          "type": "string"
      +        }
      +      },
      +      "required": [
      +        "source_packet_sha256",
      +        "selected_packet_sha256",
      +        "included_refs",
      +        "max_bytes",
      +        "selected_bytes"
      +      ],
      +      "type": "object"
      +    },
      +    {
      +      "type": "null"
      +    }
      +  ],
      +  "default": null
      +}
    • changedOutput schema / properties / profile_reports / items / properties / execution_metrics / anyOf
      Previous value: -[
      -  {
      -    "additionalProperties": false,
      -    "description": "Optional host-reported timing and token counts for one completed profile.",
      -    "properties": {
      -      "attempt_count": {
      -        "default": 1,
      -        "maximum": 4,
      -        "minimum": 1,
      -        "type": "integer"
      -      },
      -      "completed_at": {
      -        "format": "date-time",
      -        "type": "string"
      -      },
      -      "input_tokens": {
      -        "anyOf": [
      -          {
      -            "minimum": 0,
      -            "type": "integer"
      -          },
      -          {
      -            "type": "null"
      -          }
      -        ],
      -        "default": null
      -      },
      -      "output_tokens": {
      -        "anyOf": [
      -          {
      -            "minimum": 0,
      -            "type": "integer"
      -          },
      -          {
      -            "type": "null"
      -          }
      -        ],
      -        "default": null
      -      },
      -      "started_at": {
      -        "format": "date-time",
      -        "type": "string"
      -      }
      -    },
      -    "required": [
      -      "started_at",
      -      "completed_at"
      -    ],
      -    "type": "object"
      -  },
      -  {
      -    "type": "null"
      -  }
      -]New value: +[
      +  {
      +    "additionalProperties": false,
      +    "description": "Optional host-reported timing and token counts for one completed profile.",
      +    "properties": {
      +      "attempt_count": {
      +        "default": 1,
      +        "maximum": 4,
      +        "minimum": 1,
      +        "type": "integer"
      +      },
      +      "attempts": {
      +        "default": [],
      +        "items": {
      +          "additionalProperties": false,
      +          "description": "One actual executor call; no exception bodies or source content.",
      +          "properties": {
      +            "attempt": {
      +              "maximum": 4,
      +              "minimum": 1,
      +              "type": "integer"
      +            },
      +            "cached_input_tokens": {
      +              "anyOf": [
      +                {
      +                  "minimum": 0,
      +                  "type": "integer"
      +                },
      +                {
      +                  "type": "null"
      +                }
      +              ],
      +              "default": null
      +            },
      +            "completed_at": {
      +              "format": "date-time",
      +              "type": "string"
      +            },
      +            "executor_seconds": {
      +              "minimum": 0,
      +              "type": "number"
      +            },
      +            "input_tokens": {
      +              "anyOf": [
      +                {
      +                  "minimum": 0,
      +                  "type": "integer"
      +                },
      +                {
      +                  "type": "null"
      +                }
      +              ],
      +              "default": null
      +            },
      +            "model_seconds": {
      +              "anyOf": [
      +                {
      +                  "minimum": 0,
      +                  "type": "number"
      +                },
      +                {
      +                  "type": "null"
      +                }
      +              ],
      +              "default": null
      +            },
      +            "outcome": {
      +              "enum": [
      +                "completed",
      +                "retryable_error",
      +                "timeout",
      +                "failed",
      +                "cancelled"
      +              ],
      +              "type": "string"
      +            },
      +            "output_tokens": {
      +              "anyOf": [
      +                {
      +                  "minimum": 0,
      +                  "type": "integer"
      +                },
      +                {
      +                  "type": "null"
      +                }
      +              ],
      +              "default": null
      +            },
      +            "preparation_seconds": {
      +              "anyOf": [
      +                {
      +                  "minimum": 0,
      +                  "type": "number"
      +                },
      +                {
      +                  "type": "null"
      +                }
      +              ],
      +              "default": null
      +            },
      +            "profile": {
      +              "enum": [
      +                "pr_test_analyzer",
      +                "code_reviewer",
      +                "security_reviewer",
      +                "silent_failure_hunter",
      +                "code_explorer",
      +                "typescript_reviewer",
      +                "react_reviewer",
      +                "ruby_reviewer",
      +                "python_reviewer",
      +                "mobile_reviewer"
      +              ],
      +              "type": "string"
      +            },
      +            "queue_seconds": {
      +              "minimum": 0,
      +              "type": "number"
      +            },
      +            "started_at": {
      +              "format": "date-time",
      +              "type": "string"
      +            },
      +            "validation_seconds": {
      +              "anyOf": [
      +                {
      +                  "minimum": 0,
      +                  "type": "number"
      +                },
      +                {
      +                  "type": "null"
      +                }
      +              ],
      +              "default": null
      +            }
      +          },
      +          "required": [
      +            "profile",
      +            "attempt",
      +            "outcome",
      +            "started_at",
      +            "completed_at",
      +            "queue_seconds",
      +            "executor_seconds"
      +          ],
      +          "type": "object"
      +        },
      +        "maxItems": 4,
      +        "type": "array"
      +      },
      +      "completed_at": {
      +        "format": "date-time",
      +        "type": "string"
      +      },
      +      "input_tokens": {
      +        "anyOf": [
      +          {
      +            "minimum": 0,
      +            "type": "integer"
      +          },
      +          {
      +            "type": "null"
      +          }
      +        ],
      +        "default": null
      +      },
      +      "output_tokens": {
      +        "anyOf": [
      +          {
      +            "minimum": 0,
      +            "type": "integer"
      +          },
      +          {
      +            "type": "null"
      +          }
      +        ],
      +        "default": null
      +      },
      +      "started_at": {
      +        "format": "date-time",
      +        "type": "string"
      +      }
      +    },
      +    "required": [
      +      "started_at",
      +      "completed_at"
      +    ],
      +    "type": "object"
      +  },
      +  {
      +    "type": "null"
      +  }
      +]
    • addedOutput schema / properties / profile_reports / items / properties / finding_candidates / items / properties / failure_condition
      Added value: +{
      +  "anyOf": [
      +    {
      +      "maxLength": 2000,
      +      "minLength": 1,
      +      "type": "string"
      +    },
      +    {
      +      "type": "null"
      +    }
      +  ],
      +  "default": null,
      +  "description": "Specific preconditions that make the alleged failure occur."
      +}
    • addedOutput schema / properties / profile_reports / items / properties / finding_candidates / items / properties / flip_condition
      Added value: +{
      +  "anyOf": [
      +    {
      +      "maxLength": 2000,
      +      "minLength": 1,
      +      "type": "string"
      +    },
      +    {
      +      "type": "null"
      +    }
      +  ],
      +  "default": null,
      +  "description": "Concrete source/contract evidence that would refute this candidate."
      +}
    • addedOutput schema / properties / profile_reports / items / properties / review_rules_sha256
      Added value: +{
      +  "anyOf": [
      +    {
      +      "pattern": "(?i)^[a-f0-9]{64}$",
      +      "type": "string"
      +    },
      +    {
      +      "type": "null"
      +    }
      +  ],
      +  "default": null
      +}
    • changedOutput schema / properties / review_context / anyOf
      Previous value: -[
      -  {
      -    "additionalProperties": false,
      -    "description": "Immutable identifiers for the exact source and evidence packet reviewed.",
      -    "properties": {
      -      "base_sha": {
      -        "pattern": "(?i)^(?:[a-f0-9]{40}|[a-f0-9]{64})$",
      -        "type": "string"
      -      },
      -      "changed_files": {
      -        "items": {
      -          "maxLength": 1024,
      -          "minLength": 1,
      -          "type": "string"
      -        },
      -        "maxItems": 500,
      -        "minItems": 1,
      -        "type": "array"
      -      },
      -      "diff_sha256": {
      -        "pattern": "(?i)^[a-f0-9]{64}$",
      -        "type": "string"
      -      },
      -      "evidence_packet_sha256": {
      -        "pattern": "(?i)^[a-f0-9]{64}$",
      -        "type": "string"
      -      },
      -      "evidence_refs": {
      -        "items": {
      -          "maxLength": 128,
      -          "minLength": 1,
      -          "pattern": "^[A-Za-z0-9][A-Za-z0-9._:/-]*$",
      -          "type": "string"
      -        },
      -        "maxItems": 1000,
      -        "minItems": 1,
      -        "type": "array"
      -      },
      -      "evidence_registry": {
      -        "default": [],
      -        "description": "Optional complete ref-to-source registry with revision, coordinates and hashes.",
      -        "items": {
      -          "additionalProperties": false,
      -          "description": "Metadata for one evidence item; raw content remains with the host.",
      -          "properties": {
      -            "end_line": {
      -              "anyOf": [
      -                {
      -                  "minimum": 1,
      -                  "type": "integer"
      -                },
      -                {
      -                  "type": "null"
      -                }
      -              ],
      -              "default": null
      -            },
      -            "evidence_ref": {
      -              "maxLength": 128,
      -              "minLength": 1,
      -              "pattern": "^[A-Za-z0-9][A-Za-z0-9._:/-]*$",
      -              "type": "string"
      -            },
      -            "kind": {
      -              "enum": [
      -                "source",
      -                "diff",
      -                "requirement",
      -                "runtime",
      -                "other"
      -              ],
      -              "type": "string"
      -            },
      -            "locator": {
      -              "anyOf": [
      -                {
      -                  "maxLength": 1024,
      -                  "minLength": 1,
      -                  "type": "string"
      -                },
      -                {
      -                  "type": "null"
      -                }
      -              ],
      -              "default": null
      -            },
      -            "path": {
      -              "anyOf": [
      -                {
      -                  "maxLength": 1024,
      -                  "minLength": 1,
      -                  "type": "string"
      -                },
      -                {
      -                  "type": "null"
      -                }
      -              ],
      -              "default": null
      -            },
      -            "revision": {
      -              "anyOf": [
      -                {
      -                  "pattern": "(?i)^(?:[a-f0-9]{40}|[a-f0-9]{64})$",
      -                  "type": "string"
      -                },
      -                {
      -                  "type": "null"
      -                }
      -              ],
      -              "default": null
      -            },
      -            "sha256": {
      -              "pattern": "(?i)^[a-f0-9]{64}$",
      -              "type": "string"
      -            },
      -            "start_line": {
      -              "anyOf": [
      -                {
      -                  "minimum": 1,
      -                  "type": "integer"
      -                },
      -                {
      -                  "type": "null"
      -                }
      -              ],
      -              "default": null
      -            }
      -          },
      -          "required": [
      -            "evidence_ref",
      -            "kind",
      -            "sha256"
      -          ],
      -          "type": "object"
      -        },
      -        "maxItems": 1000,
      -        "type": "array"
      -      },
      -      "head_sha": {
      -        "pattern": "(?i)^(?:[a-f0-9]{40}|[a-f0-9]{64})$",
      -        "type": "string"
      -      },
      -      "repository": {
      -        "maxLength": 512,
      -        "minLength": 1,
      -        "type": "string"
      -      }
      -    },
      -    "required": [
      -      "repository",
      -      "base_sha",
      -      "head_sha",
      -      "diff_sha256",
      -      "evidence_packet_sha256",
      -      "changed_files",
      -      "evidence_refs"
      -    ],
      -    "type": "object"
      -  },
      -  {
      -    "type": "null"
      -  }
      -]New value: +[
      +  {
      +    "additionalProperties": false,
      +    "description": "Immutable identifiers for the exact source and evidence packet reviewed.",
      +    "properties": {
      +      "base_sha": {
      +        "pattern": "(?i)^(?:[a-f0-9]{40}|[a-f0-9]{64})$",
      +        "type": "string"
      +      },
      +      "changed_files": {
      +        "items": {
      +          "maxLength": 1024,
      +          "minLength": 1,
      +          "type": "string"
      +        },
      +        "maxItems": 500,
      +        "minItems": 1,
      +        "type": "array"
      +      },
      +      "diff_sha256": {
      +        "pattern": "(?i)^[a-f0-9]{64}$",
      +        "type": "string"
      +      },
      +      "evidence_packet_sha256": {
      +        "pattern": "(?i)^[a-f0-9]{64}$",
      +        "type": "string"
      +      },
      +      "evidence_refs": {
      +        "items": {
      +          "maxLength": 128,
      +          "minLength": 1,
      +          "pattern": "^[A-Za-z0-9][A-Za-z0-9._:/-]*$",
      +          "type": "string"
      +        },
      +        "maxItems": 1000,
      +        "minItems": 1,
      +        "type": "array"
      +      },
      +      "evidence_registry": {
      +        "default": [],
      +        "description": "Optional complete ref-to-source registry with revision, coordinates and hashes.",
      +        "items": {
      +          "additionalProperties": false,
      +          "description": "Metadata for one evidence item; raw content remains with the host.",
      +          "properties": {
      +            "end_line": {
      +              "anyOf": [
      +                {
      +                  "minimum": 1,
      +                  "type": "integer"
      +                },
      +                {
      +                  "type": "null"
      +                }
      +              ],
      +              "default": null
      +            },
      +            "evidence_ref": {
      +              "maxLength": 128,
      +              "minLength": 1,
      +              "pattern": "^[A-Za-z0-9][A-Za-z0-9._:/-]*$",
      +              "type": "string"
      +            },
      +            "kind": {
      +              "enum": [
      +                "source",
      +                "diff",
      +                "requirement",
      +                "runtime",
      +                "other"
      +              ],
      +              "type": "string"
      +            },
      +            "locator": {
      +              "anyOf": [
      +                {
      +                  "maxLength": 1024,
      +                  "minLength": 1,
      +                  "type": "string"
      +                },
      +                {
      +                  "type": "null"
      +                }
      +              ],
      +              "default": null
      +            },
      +            "path": {
      +              "anyOf": [
      +                {
      +                  "maxLength": 1024,
      +                  "minLength": 1,
      +                  "type": "string"
      +                },
      +                {
      +                  "type": "null"
      +                }
      +              ],
      +              "default": null
      +            },
      +            "revision": {
      +              "anyOf": [
      +                {
      +                  "pattern": "(?i)^(?:[a-f0-9]{40}|[a-f0-9]{64})$",
      +                  "type": "string"
      +                },
      +                {
      +                  "type": "null"
      +                }
      +              ],
      +              "default": null
      +            },
      +            "sha256": {
      +              "pattern": "(?i)^[a-f0-9]{64}$",
      +              "type": "string"
      +            },
      +            "start_line": {
      +              "anyOf": [
      +                {
      +                  "minimum": 1,
      +                  "type": "integer"
      +                },
      +                {
      +                  "type": "null"
      +                }
      +              ],
      +              "default": null
      +            }
      +          },
      +          "required": [
      +            "evidence_ref",
      +            "kind",
      +            "sha256"
      +          ],
      +          "type": "object"
      +        },
      +        "maxItems": 1000,
      +        "type": "array"
      +      },
      +      "head_sha": {
      +        "pattern": "(?i)^(?:[a-f0-9]{40}|[a-f0-9]{64})$",
      +        "type": "string"
      +      },
      +      "repository": {
      +        "maxLength": 512,
      +        "minLength": 1,
      +        "type": "string"
      +      },
      +      "review_rules": {
      +        "anyOf": [
      +          {
      +            "additionalProperties": false,
      +            "properties": {
      +              "rules": {
      +                "default": [],
      +                "items": {
      +                  "additionalProperties": false,
      +                  "properties": {
      +                    "condition": {
      +                      "maxLength": 2000,
      +                      "minLength": 1,
      +                      "type": "string"
      +                    },
      +                    "kind": {
      +                      "enum": [
      +                        "raise",
      +                        "guard"
      +                      ],
      +                      "type": "string"
      +                    },
      +                    "paths": {
      +                      "items": {
      +                        "type": "string"
      +                      },
      +                      "maxItems": 32,
      +                      "minItems": 1,
      +                      "type": "array"
      +                    },
      +                    "rationale": {
      +                      "maxLength": 2000,
      +                      "minLength": 1,
      +                      "type": "string"
      +                    },
      +                    "rule_id": {
      +                      "pattern": "^[A-Za-z0-9][A-Za-z0-9._-]{0,127}$",
      +                      "type": "string"
      +                    },
      +                    "text": {
      +                      "maxLength": 2000,
      +                      "minLength": 1,
      +                      "type": "string"
      +                    }
      +                  },
      +                  "required": [
      +                    "rule_id",
      +                    "kind",
      +                    "paths",
      +                    "condition",
      +                    "text",
      +                    "rationale"
      +                  ],
      +                  "type": "object"
      +                },
      +                "maxItems": 100,
      +                "type": "array"
      +              },
      +              "schema_version": {
      +                "const": 1,
      +                "default": 1,
      +                "type": "integer"
      +              }
      +            },
      +            "type": "object"
      +          },
      +          {
      +            "type": "null"
      +          }
      +        ],
      +        "default": null
      +      }
      +    },
      +    "required": [
      +      "repository",
      +      "base_sha",
      +      "head_sha",
      +      "diff_sha256",
      +      "evidence_packet_sha256",
      +      "changed_files",
      +      "evidence_refs"
      +    ],
      +    "type": "object"
      +  },
      +  {
      +    "type": "null"
      +  }
      +]
  2. Changed13 schema fields changedv0.2.10
    • changedInput schema / properties / review_context / anyOf
      Previous value: -[
      -  {
      -    "additionalProperties": false,
      -    "description": "Immutable identifiers for the exact source and evidence packet reviewed.",
      -    "properties": {
      -      "base_sha": {
      -        "pattern": "(?i)^(?:[a-f0-9]{40}|[a-f0-9]{64})$",
      -        "type": "string"
      -      },
      -      "changed_files": {
      -        "items": {
      -          "type": "string"
      -        },
      -        "maxItems": 500,
      -        "minItems": 1,
      -        "type": "array"
      -      },
      -      "diff_sha256": {
      -        "pattern": "(?i)^[a-f0-9]{64}$",
      -        "type": "string"
      -      },
      -      "evidence_packet_sha256": {
      -        "pattern": "(?i)^[a-f0-9]{64}$",
      -        "type": "string"
      -      },
      -      "evidence_refs": {
      -        "items": {
      -          "maxLength": 128,
      -          "minLength": 1,
      -          "pattern": "^[A-Za-z0-9][A-Za-z0-9._:/-]*$",
      -          "type": "string"
      -        },
      -        "maxItems": 1000,
      -        "minItems": 1,
      -        "type": "array"
      -      },
      -      "head_sha": {
      -        "pattern": "(?i)^(?:[a-f0-9]{40}|[a-f0-9]{64})$",
      -        "type": "string"
      -      },
      -      "repository": {
      -        "maxLength": 512,
      -        "minLength": 1,
      -        "type": "string"
      -      }
      -    },
      -    "required": [
      -      "repository",
      -      "base_sha",
      -      "head_sha",
      -      "diff_sha256",
      -      "evidence_packet_sha256",
      -      "changed_files",
      -      "evidence_refs"
      -    ],
      -    "type": "object"
      -  },
      -  {
      -    "type": "null"
      -  }
      -]New value: +[
      +  {
      +    "additionalProperties": false,
      +    "description": "Immutable identifiers for the exact source and evidence packet reviewed.",
      +    "properties": {
      +      "base_sha": {
      +        "pattern": "(?i)^(?:[a-f0-9]{40}|[a-f0-9]{64})$",
      +        "type": "string"
      +      },
      +      "changed_files": {
      +        "items": {
      +          "maxLength": 1024,
      +          "minLength": 1,
      +          "type": "string"
      +        },
      +        "maxItems": 500,
      +        "minItems": 1,
      +        "type": "array"
      +      },
      +      "diff_sha256": {
      +        "pattern": "(?i)^[a-f0-9]{64}$",
      +        "type": "string"
      +      },
      +      "evidence_packet_sha256": {
      +        "pattern": "(?i)^[a-f0-9]{64}$",
      +        "type": "string"
      +      },
      +      "evidence_refs": {
      +        "items": {
      +          "maxLength": 128,
      +          "minLength": 1,
      +          "pattern": "^[A-Za-z0-9][A-Za-z0-9._:/-]*$",
      +          "type": "string"
      +        },
      +        "maxItems": 1000,
      +        "minItems": 1,
      +        "type": "array"
      +      },
      +      "evidence_registry": {
      +        "default": [],
      +        "description": "Optional complete ref-to-source registry with revision, coordinates and hashes.",
      +        "items": {
      +          "additionalProperties": false,
      +          "description": "Metadata for one evidence item; raw content remains with the host.",
      +          "properties": {
      +            "end_line": {
      +              "anyOf": [
      +                {
      +                  "minimum": 1,
      +                  "type": "integer"
      +                },
      +                {
      +                  "type": "null"
      +                }
      +              ],
      +              "default": null
      +            },
      +            "evidence_ref": {
      +              "maxLength": 128,
      +              "minLength": 1,
      +              "pattern": "^[A-Za-z0-9][A-Za-z0-9._:/-]*$",
      +              "type": "string"
      +            },
      +            "kind": {
      +              "enum": [
      +                "source",
      +                "diff",
      +                "requirement",
      +                "runtime",
      +                "other"
      +              ],
      +              "type": "string"
      +            },
      +            "locator": {
      +              "anyOf": [
      +                {
      +                  "maxLength": 1024,
      +                  "minLength": 1,
      +                  "type": "string"
      +                },
      +                {
      +                  "type": "null"
      +                }
      +              ],
      +              "default": null
      +            },
      +            "path": {
      +              "anyOf": [
      +                {
      +                  "maxLength": 1024,
      +                  "minLength": 1,
      +                  "type": "string"
      +                },
      +                {
      +                  "type": "null"
      +                }
      +              ],
      +              "default": null
      +            },
      +            "revision": {
      +              "anyOf": [
      +                {
      +                  "pattern": "(?i)^(?:[a-f0-9]{40}|[a-f0-9]{64})$",
      +                  "type": "string"
      +                },
      +                {
      +                  "type": "null"
      +                }
      +              ],
      +              "default": null
      +            },
      +            "sha256": {
      +              "pattern": "(?i)^[a-f0-9]{64}$",
      +              "type": "string"
      +            },
      +            "start_line": {
      +              "anyOf": [
      +                {
      +                  "minimum": 1,
      +                  "type": "integer"
      +                },
      +                {
      +                  "type": "null"
      +                }
      +              ],
      +              "default": null
      +            }
      +          },
      +          "required": [
      +            "evidence_ref",
      +            "kind",
      +            "sha256"
      +          ],
      +          "type": "object"
      +        },
      +        "maxItems": 1000,
      +        "type": "array"
      +      },
      +      "head_sha": {
      +        "pattern": "(?i)^(?:[a-f0-9]{40}|[a-f0-9]{64})$",
      +        "type": "string"
      +      },
      +      "repository": {
      +        "maxLength": 512,
      +        "minLength": 1,
      +        "type": "string"
      +      }
      +    },
      +    "required": [
      +      "repository",
      +      "base_sha",
      +      "head_sha",
      +      "diff_sha256",
      +      "evidence_packet_sha256",
      +      "changed_files",
      +      "evidence_refs"
      +    ],
      +    "type": "object"
      +  },
      +  {
      +    "type": "null"
      +  }
      +]
    • changedInput schema / properties / review_context / description
      Previous value: -"Optional immutable repository, base/head, diff, and Evidence Packet identity. When supplied, every completed profile must include a structured report whose evidence references belong to this packet; completed outcomes require a final report."New value: +"Optional immutable repository, base/head, changed-file, diff, and Evidence Packet identity. When supplied, every completed profile must include a structured report whose evidence references belong to this packet; completed outcomes require a final report. The response may include file-type-based recommended_profiles as non-binding hints. Optional evidence_registry metadata binds each ref to a source kind, revision, coordinates and content hash. The host verifies actual content locally."
    • changedOutput schema / properties / final_review_report / anyOf
      Previous value: -[
      -  {
      -    "additionalProperties": false,
      -    "description": "Structured synthesis stored with a review-bound orchestration session.",
      -    "properties": {
      -      "coverage_gaps": {
      -        "default": [],
      -        "items": {
      -          "additionalProperties": false,
      -          "properties": {
      -            "evidence_refs": {
      -              "default": [],
      -              "items": {
      -                "maxLength": 128,
      -                "minLength": 1,
      -                "pattern": "^[A-Za-z0-9][A-Za-z0-9._:/-]*$",
      -                "type": "string"
      -              },
      -              "maxItems": 32,
      -              "type": "array"
      -            },
      -            "text": {
      -              "maxLength": 2000,
      -              "minLength": 1,
      -              "type": "string"
      -            }
      -          },
      -          "required": [
      -            "text"
      -          ],
      -          "type": "object"
      -        },
      -        "maxItems": 100,
      -        "type": "array"
      -      },
      -      "finding_candidates": {
      -        "default": [],
      -        "items": {
      -          "additionalProperties": false,
      -          "properties": {
      -            "candidate_id": {
      -              "pattern": "^F-[0-9]{2,}$",
      -              "type": "string"
      -            },
      -            "confidence": {
      -              "enum": [
      -                "high",
      -                "medium",
      -                "low"
      -              ],
      -              "type": "string"
      -            },
      -            "description": {
      -              "maxLength": 5000,
      -              "minLength": 1,
      -              "type": "string"
      -            },
      -            "evidence_refs": {
      -              "items": {
      -                "maxLength": 128,
      -                "minLength": 1,
      -                "pattern": "^[A-Za-z0-9][A-Za-z0-9._:/-]*$",
      -                "type": "string"
      -              },
      -              "maxItems": 32,
      -              "minItems": 1,
      -              "type": "array"
      -            },
      -            "source_profiles": {
      -              "items": {
      -                "enum": [
      -                  "pr_test_analyzer",
      -                  "code_reviewer",
      -                  "security_reviewer",
      -                  "silent_failure_hunter",
      -                  "code_explorer",
      -                  "typescript_reviewer",
      -                  "react_reviewer",
      -                  "ruby_reviewer",
      -                  "python_reviewer",
      -                  "mobile_reviewer"
      -                ],
      -                "type": "string"
      -              },
      -              "minItems": 1,
      -              "type": "array"
      -            },
      -            "title": {
      -              "maxLength": 256,
      -              "minLength": 1,
      -              "type": "string"
      -            },
      -            "verification_gap": {
      -              "maxLength": 2000,
      -              "minLength": 1,
      -              "type": "string"
      -            }
      -          },
      -          "required": [
      -            "candidate_id",
      -            "title",
      -            "description",
      -            "confidence",
      -            "verification_gap",
      -            "evidence_refs",
      -            "source_profiles"
      -          ],
      -          "type": "object"
      -        },
      -        "maxItems": 100,
      -        "type": "array"
      -      },
      -      "profiles_reviewed": {
      -        "items": {
      -          "enum": [
      -            "pr_test_analyzer",
      -            "code_reviewer",
      -            "security_reviewer",
      -            "silent_failure_hunter",
      -            "code_explorer",
      -            "typescript_reviewer",
      -            "react_reviewer",
      -            "ruby_reviewer",
      -            "python_reviewer",
      -            "mobile_reviewer"
      -          ],
      -          "type": "string"
      -        },
      -        "minItems": 1,
      -        "type": "array"
      -      },
      -      "summary": {
      -        "maxLength": 5000,
      -        "minLength": 1,
      -        "type": "string"
      -      },
      -      "unverified": {
      -        "default": [],
      -        "items": {
      -          "additionalProperties": false,
      -          "properties": {
      -            "evidence_refs": {
      -              "default": [],
      -              "items": {
      -                "maxLength": 128,
      -                "minLength": 1,
      -                "pattern": "^[A-Za-z0-9][A-Za-z0-9._:/-]*$",
      -                "type": "string"
      -              },
      -              "maxItems": 32,
      -              "type": "array"
      -            },
      -            "text": {
      -              "maxLength": 2000,
      -              "minLength": 1,
      -              "type": "string"
      -            }
      -          },
      -          "required": [
      -            "text"
      -          ],
      -          "type": "object"
      -        },
      -        "maxItems": 100,
      -        "type": "array"
      -      }
      -    },
      -    "required": [
      -      "summary",
      -      "profiles_reviewed"
      -    ],
      -    "type": "object"
      -  },
      -  {
      -    "type": "null"
      -  }
      -]New value: +[
      +  {
      +    "additionalProperties": false,
      +    "description": "Structured synthesis stored with a review-bound orchestration session.",
      +    "properties": {
      +      "candidate_decisions": {
      +        "default": [],
      +        "description": "One host decision per submitted candidate; absent on legacy saved reports.",
      +        "items": {
      +          "additionalProperties": false,
      +          "description": "The host's disposition of one profile-local candidate.",
      +          "properties": {
      +            "evidence_refs": {
      +              "items": {
      +                "maxLength": 128,
      +                "minLength": 1,
      +                "pattern": "^[A-Za-z0-9][A-Za-z0-9._:/-]*$",
      +                "type": "string"
      +              },
      +              "maxItems": 32,
      +              "minItems": 1,
      +              "type": "array"
      +            },
      +            "final_finding_id": {
      +              "anyOf": [
      +                {
      +                  "pattern": "^F-[0-9]{2,}$",
      +                  "type": "string"
      +                },
      +                {
      +                  "type": "null"
      +                }
      +              ],
      +              "default": null
      +            },
      +            "rationale": {
      +              "maxLength": 2000,
      +              "minLength": 1,
      +              "type": "string"
      +            },
      +            "source": {
      +              "additionalProperties": false,
      +              "description": "A profile-local candidate that contributed to one synthesized finding.",
      +              "properties": {
      +                "candidate_id": {
      +                  "pattern": "^F-[0-9]{2,}$",
      +                  "type": "string"
      +                },
      +                "profile": {
      +                  "enum": [
      +                    "pr_test_analyzer",
      +                    "code_reviewer",
      +                    "security_reviewer",
      +                    "silent_failure_hunter",
      +                    "code_explorer",
      +                    "typescript_reviewer",
      +                    "react_reviewer",
      +                    "ruby_reviewer",
      +                    "python_reviewer",
      +                    "mobile_reviewer"
      +                  ],
      +                  "type": "string"
      +                }
      +              },
      +              "required": [
      +                "profile",
      +                "candidate_id"
      +              ],
      +              "type": "object"
      +            },
      +            "verdict": {
      +              "enum": [
      +                "confirmed",
      +                "rejected",
      +                "duplicate",
      +                "unverified"
      +              ],
      +              "type": "string"
      +            }
      +          },
      +          "required": [
      +            "source",
      +            "verdict",
      +            "rationale",
      +            "evidence_refs"
      +          ],
      +          "type": "object"
      +        },
      +        "maxItems": 1000,
      +        "type": "array"
      +      },
      +      "coverage_gaps": {
      +        "default": [],
      +        "items": {
      +          "additionalProperties": false,
      +          "properties": {
      +            "evidence_refs": {
      +              "default": [],
      +              "items": {
      +                "maxLength": 128,
      +                "minLength": 1,
      +                "pattern": "^[A-Za-z0-9][A-Za-z0-9._:/-]*$",
      +                "type": "string"
      +              },
      +              "maxItems": 32,
      +              "type": "array"
      +            },
      +            "text": {
      +              "maxLength": 2000,
      +              "minLength": 1,
      +              "type": "string"
      +            }
      +          },
      +          "required": [
      +            "text"
      +          ],
      +          "type": "object"
      +        },
      +        "maxItems": 100,
      +        "type": "array"
      +      },
      +      "finding_candidates": {
      +        "default": [],
      +        "items": {
      +          "additionalProperties": false,
      +          "properties": {
      +            "affected_area": {
      +              "anyOf": [
      +                {
      +                  "maxLength": 256,
      +                  "type": "string"
      +                },
      +                {
      +                  "type": "null"
      +                }
      +              ],
      +              "default": null,
      +              "description": "Affected user flow or system area, when supported by the evidence."
      +            },
      +            "candidate_id": {
      +              "pattern": "^F-[0-9]{2,}$",
      +              "type": "string"
      +            },
      +            "confidence": {
      +              "enum": [
      +                "high",
      +                "medium",
      +                "low"
      +              ],
      +              "type": "string"
      +            },
      +            "description": {
      +              "maxLength": 5000,
      +              "minLength": 1,
      +              "type": "string"
      +            },
      +            "evidence_refs": {
      +              "items": {
      +                "maxLength": 128,
      +                "minLength": 1,
      +                "pattern": "^[A-Za-z0-9][A-Za-z0-9._:/-]*$",
      +                "type": "string"
      +              },
      +              "maxItems": 32,
      +              "minItems": 1,
      +              "type": "array"
      +            },
      +            "impact": {
      +              "anyOf": [
      +                {
      +                  "maxLength": 2000,
      +                  "type": "string"
      +                },
      +                {
      +                  "type": "null"
      +                }
      +              ],
      +              "default": null,
      +              "description": "Concrete effect on users or contracts; severity remains host-owned."
      +            },
      +            "severity": {
      +              "anyOf": [
      +                {
      +                  "enum": [
      +                    "high",
      +                    "medium",
      +                    "low"
      +                  ],
      +                  "type": "string"
      +                },
      +                {
      +                  "type": "null"
      +                }
      +              ],
      +              "default": null,
      +              "description": "Impact severity selected by the host for a confirmed finding."
      +            },
      +            "source_candidates": {
      +              "default": [],
      +              "description": "Required for new final reports; empty only on reports persisted before source linkage.",
      +              "items": {
      +                "additionalProperties": false,
      +                "description": "A profile-local candidate that contributed to one synthesized finding.",
      +                "properties": {
      +                  "candidate_id": {
      +                    "pattern": "^F-[0-9]{2,}$",
      +                    "type": "string"
      +                  },
      +                  "profile": {
      +                    "enum": [
      +                      "pr_test_analyzer",
      +                      "code_reviewer",
      +                      "security_reviewer",
      +                      "silent_failure_hunter",
      +                      "code_explorer",
      +                      "typescript_reviewer",
      +                      "react_reviewer",
      +                      "ruby_reviewer",
      +                      "python_reviewer",
      +                      "mobile_reviewer"
      +                    ],
      +                    "type": "string"
      +                  }
      +                },
      +                "required": [
      +                  "profile",
      +                  "candidate_id"
      +                ],
      +                "type": "object"
      +              },
      +              "type": "array"
      +            },
      +            "source_locations": {
      +              "default": [],
      +              "description": "Precise source locations supporting this candidate when available.",
      +              "items": {
      +                "additionalProperties": false,
      +                "description": "A stable source locator for a finding candidate.",
      +                "properties": {
      +                  "end_line": {
      +                    "anyOf": [
      +                      {
      +                        "minimum": 1,
      +                        "type": "integer"
      +                      },
      +                      {
      +                        "type": "null"
      +                      }
      +                    ],
      +                    "default": null
      +                  },
      +                  "path": {
      +                    "maxLength": 1024,
      +                    "minLength": 1,
      +                    "type": "string"
      +                  },
      +                  "start_line": {
      +                    "minimum": 1,
      +                    "type": "integer"
      +                  }
      +                },
      +                "required": [
      +                  "path",
      +                  "start_line"
      +                ],
      +                "type": "object"
      +              },
      +              "maxItems": 20,
      +              "type": "array"
      +            },
      +            "source_profiles": {
      +              "items": {
      +                "enum": [
      +                  "pr_test_analyzer",
      +                  "code_reviewer",
      +                  "security_reviewer",
      +                  "silent_failure_hunter",
      +                  "code_explorer",
      +                  "typescript_reviewer",
      +                  "react_reviewer",
      +                  "ruby_reviewer",
      +                  "python_reviewer",
      +                  "mobile_reviewer"
      +                ],
      +                "type": "string"
      +              },
      +              "minItems": 1,
      +              "type": "array"
      +            },
      +            "title": {
      +              "maxLength": 256,
      +              "minLength": 1,
      +              "type": "string"
      +            },
      +            "verification_gap": {
      +              "maxLength": 2000,
      +              "minLength": 1,
      +              "type": "string"
      +            }
      +          },
      +          "required": [
      +            "candidate_id",
      +            "title",
      +            "description",
      +            "confidence",
      +            "verification_gap",
      +            "evidence_refs",
      +            "source_profiles"
      +          ],
      +          "type": "object"
      +        },
      +        "maxItems": 100,
      +        "type": "array"
      +      },
      +      "profiles_reviewed": {
      +        "items": {
      +          "enum": [
      +            "pr_test_analyzer",
      +            "code_reviewer",
      +            "security_reviewer",
      +            "silent_failure_hunter",
      +            "code_explorer",
      +            "typescript_reviewer",
      +            "react_reviewer",
      +            "ruby_reviewer",
      +            "python_reviewer",
      +            "mobile_reviewer"
      +          ],
      +          "type": "string"
      +        },
      +        "minItems": 1,
      +        "type": "array"
      +      },
      +      "summary": {
      +        "maxLength": 5000,
      +        "minLength": 1,
      +        "type": "string"
      +      },
      +      "unverified": {
      +        "default": [],
      +        "items": {
      +          "additionalProperties": false,
      +          "properties": {
      +            "evidence_refs": {
      +              "default": [],
      +              "items": {
      +                "maxLength": 128,
      +                "minLength": 1,
      +                "pattern": "^[A-Za-z0-9][A-Za-z0-9._:/-]*$",
      +                "type": "string"
      +              },
      +              "maxItems": 32,
      +              "type": "array"
      +            },
      +            "text": {
      +              "maxLength": 2000,
      +              "minLength": 1,
      +              "type": "string"
      +            }
      +          },
      +          "required": [
      +            "text"
      +          ],
      +          "type": "object"
      +        },
      +        "maxItems": 100,
      +        "type": "array"
      +      }
      +    },
      +    "required": [
      +      "summary",
      +      "profiles_reviewed"
      +    ],
      +    "type": "object"
      +  },
      +  {
      +    "type": "null"
      +  }
      +]
    • addedOutput schema / properties / profile_reports / items / properties / execution_metrics
      Added value: +{
      +  "anyOf": [
      +    {
      +      "additionalProperties": false,
      +      "description": "Optional host-reported timing and token counts for one completed profile.",
      +      "properties": {
      +        "attempt_count": {
      +          "default": 1,
      +          "maximum": 4,
      +          "minimum": 1,
      +          "type": "integer"
      +        },
      +        "completed_at": {
      +          "format": "date-time",
      +          "type": "string"
      +        },
      +        "input_tokens": {
      +          "anyOf": [
      +            {
      +              "minimum": 0,
      +              "type": "integer"
      +            },
      +            {
      +              "type": "null"
      +            }
      +          ],
      +          "default": null
      +        },
      +        "output_tokens": {
      +          "anyOf": [
      +            {
      +              "minimum": 0,
      +              "type": "integer"
      +            },
      +            {
      +              "type": "null"
      +            }
      +          ],
      +          "default": null
      +        },
      +        "started_at": {
      +          "format": "date-time",
      +          "type": "string"
      +        }
      +      },
      +      "required": [
      +        "started_at",
      +        "completed_at"
      +      ],
      +      "type": "object"
      +    },
      +    {
      +      "type": "null"
      +    }
      +  ],
      +  "default": null,
      +  "description": "Optional host-reported execution data; the orchestrator does not verify it."
      +}
    • addedOutput schema / properties / profile_reports / items / properties / finding_candidates / items / properties / affected_area
      Added value: +{
      +  "anyOf": [
      +    {
      +      "maxLength": 256,
      +      "type": "string"
      +    },
      +    {
      +      "type": "null"
      +    }
      +  ],
      +  "default": null,
      +  "description": "Affected user flow or system area, when supported by the evidence."
      +}
    • addedOutput schema / properties / profile_reports / items / properties / finding_candidates / items / properties / impact
      Added value: +{
      +  "anyOf": [
      +    {
      +      "maxLength": 2000,
      +      "type": "string"
      +    },
      +    {
      +      "type": "null"
      +    }
      +  ],
      +  "default": null,
      +  "description": "Concrete effect on users or contracts; severity remains host-owned."
      +}
    • addedOutput schema / properties / profile_reports / items / properties / finding_candidates / items / properties / source_locations
      Added value: +{
      +  "default": [],
      +  "description": "Precise source locations supporting this candidate when available.",
      +  "items": {
      +    "additionalProperties": false,
      +    "description": "A stable source locator for a finding candidate.",
      +    "properties": {
      +      "end_line": {
      +        "anyOf": [
      +          {
      +            "minimum": 1,
      +            "type": "integer"
      +          },
      +          {
      +            "type": "null"
      +          }
      +        ],
      +        "default": null
      +      },
      +      "path": {
      +        "maxLength": 1024,
      +        "minLength": 1,
      +        "type": "string"
      +      },
      +      "start_line": {
      +        "minimum": 1,
      +        "type": "integer"
      +      }
      +    },
      +    "required": [
      +      "path",
      +      "start_line"
      +    ],
      +    "type": "object"
      +  },
      +  "maxItems": 20,
      +  "type": "array"
      +}
    • addedOutput schema / properties / profile_reports / maxItems
      Added value: +10
    • addedOutput schema / properties / recommended_profiles
      Added value: +{
      +  "description": "File-type-based profile hints only; the host selects the route.",
      +  "items": {
      +    "enum": [
      +      "pr_test_analyzer",
      +      "code_reviewer",
      +      "security_reviewer",
      +      "silent_failure_hunter",
      +      "code_explorer",
      +      "typescript_reviewer",
      +      "react_reviewer",
      +      "ruby_reviewer",
      +      "python_reviewer",
      +      "mobile_reviewer"
      +    ],
      +    "type": "string"
      +  },
      +  "type": "array"
      +}
    • changedOutput schema / properties / review_context / anyOf
      Previous value: -[
      -  {
      -    "additionalProperties": false,
      -    "description": "Immutable identifiers for the exact source and evidence packet reviewed.",
      -    "properties": {
      -      "base_sha": {
      -        "pattern": "(?i)^(?:[a-f0-9]{40}|[a-f0-9]{64})$",
      -        "type": "string"
      -      },
      -      "changed_files": {
      -        "items": {
      -          "type": "string"
      -        },
      -        "maxItems": 500,
      -        "minItems": 1,
      -        "type": "array"
      -      },
      -      "diff_sha256": {
      -        "pattern": "(?i)^[a-f0-9]{64}$",
      -        "type": "string"
      -      },
      -      "evidence_packet_sha256": {
      -        "pattern": "(?i)^[a-f0-9]{64}$",
      -        "type": "string"
      -      },
      -      "evidence_refs": {
      -        "items": {
      -          "maxLength": 128,
      -          "minLength": 1,
      -          "pattern": "^[A-Za-z0-9][A-Za-z0-9._:/-]*$",
      -          "type": "string"
      -        },
      -        "maxItems": 1000,
      -        "minItems": 1,
      -        "type": "array"
      -      },
      -      "head_sha": {
      -        "pattern": "(?i)^(?:[a-f0-9]{40}|[a-f0-9]{64})$",
      -        "type": "string"
      -      },
      -      "repository": {
      -        "maxLength": 512,
      -        "minLength": 1,
      -        "type": "string"
      -      }
      -    },
      -    "required": [
      -      "repository",
      -      "base_sha",
      -      "head_sha",
      -      "diff_sha256",
      -      "evidence_packet_sha256",
      -      "changed_files",
      -      "evidence_refs"
      -    ],
      -    "type": "object"
      -  },
      -  {
      -    "type": "null"
      -  }
      -]New value: +[
      +  {
      +    "additionalProperties": false,
      +    "description": "Immutable identifiers for the exact source and evidence packet reviewed.",
      +    "properties": {
      +      "base_sha": {
      +        "pattern": "(?i)^(?:[a-f0-9]{40}|[a-f0-9]{64})$",
      +        "type": "string"
      +      },
      +      "changed_files": {
      +        "items": {
      +          "maxLength": 1024,
      +          "minLength": 1,
      +          "type": "string"
      +        },
      +        "maxItems": 500,
      +        "minItems": 1,
      +        "type": "array"
      +      },
      +      "diff_sha256": {
      +        "pattern": "(?i)^[a-f0-9]{64}$",
      +        "type": "string"
      +      },
      +      "evidence_packet_sha256": {
      +        "pattern": "(?i)^[a-f0-9]{64}$",
      +        "type": "string"
      +      },
      +      "evidence_refs": {
      +        "items": {
      +          "maxLength": 128,
      +          "minLength": 1,
      +          "pattern": "^[A-Za-z0-9][A-Za-z0-9._:/-]*$",
      +          "type": "string"
      +        },
      +        "maxItems": 1000,
      +        "minItems": 1,
      +        "type": "array"
      +      },
      +      "evidence_registry": {
      +        "default": [],
      +        "description": "Optional complete ref-to-source registry with revision, coordinates and hashes.",
      +        "items": {
      +          "additionalProperties": false,
      +          "description": "Metadata for one evidence item; raw content remains with the host.",
      +          "properties": {
      +            "end_line": {
      +              "anyOf": [
      +                {
      +                  "minimum": 1,
      +                  "type": "integer"
      +                },
      +                {
      +                  "type": "null"
      +                }
      +              ],
      +              "default": null
      +            },
      +            "evidence_ref": {
      +              "maxLength": 128,
      +              "minLength": 1,
      +              "pattern": "^[A-Za-z0-9][A-Za-z0-9._:/-]*$",
      +              "type": "string"
      +            },
      +            "kind": {
      +              "enum": [
      +                "source",
      +                "diff",
      +                "requirement",
      +                "runtime",
      +                "other"
      +              ],
      +              "type": "string"
      +            },
      +            "locator": {
      +              "anyOf": [
      +                {
      +                  "maxLength": 1024,
      +                  "minLength": 1,
      +                  "type": "string"
      +                },
      +                {
      +                  "type": "null"
      +                }
      +              ],
      +              "default": null
      +            },
      +            "path": {
      +              "anyOf": [
      +                {
      +                  "maxLength": 1024,
      +                  "minLength": 1,
      +                  "type": "string"
      +                },
      +                {
      +                  "type": "null"
      +                }
      +              ],
      +              "default": null
      +            },
      +            "revision": {
      +              "anyOf": [
      +                {
      +                  "pattern": "(?i)^(?:[a-f0-9]{40}|[a-f0-9]{64})$",
      +                  "type": "string"
      +                },
      +                {
      +                  "type": "null"
      +                }
      +              ],
      +              "default": null
      +            },
      +            "sha256": {
      +              "pattern": "(?i)^[a-f0-9]{64}$",
      +              "type": "string"
      +            },
      +            "start_line": {
      +              "anyOf": [
      +                {
      +                  "minimum": 1,
      +                  "type": "integer"
      +                },
      +                {
      +                  "type": "null"
      +                }
      +              ],
      +              "default": null
      +            }
      +          },
      +          "required": [
      +            "evidence_ref",
      +            "kind",
      +            "sha256"
      +          ],
      +          "type": "object"
      +        },
      +        "maxItems": 1000,
      +        "type": "array"
      +      },
      +      "head_sha": {
      +        "pattern": "(?i)^(?:[a-f0-9]{40}|[a-f0-9]{64})$",
      +        "type": "string"
      +      },
      +      "repository": {
      +        "maxLength": 512,
      +        "minLength": 1,
      +        "type": "string"
      +      }
      +    },
      +    "required": [
      +      "repository",
      +      "base_sha",
      +      "head_sha",
      +      "diff_sha256",
      +      "evidence_packet_sha256",
      +      "changed_files",
      +      "evidence_refs"
      +    ],
      +    "type": "object"
      +  },
      +  {
      +    "type": "null"
      +  }
      +]
    • addedOutput schema / properties / revision
      Added value: +{
      +  "default": 0,
      +  "description": "Workflow revision for conditional writes.",
      +  "minimum": 0,
      +  "type": "integer"
      +}
    • addedOutput schema / properties / risk_signals
      Added value: +{
      +  "anyOf": [
      +    {
      +      "additionalProperties": false,
      +      "description": "Host-supplied escalation signals with the rationale and refs that support them.",
      +      "properties": {
      +        "cross_system_scope": {
      +          "default": false,
      +          "description": "The relevant behavior crosses repository, service, or system boundaries.",
      +          "type": "boolean"
      +        },
      +        "evidence_conflict": {
      +          "default": false,
      +          "description": "Relevant authoritative evidence sources disagree.",
      +          "type": "boolean"
      +        },
      +        "evidence_refs": {
      +          "default": [],
      +          "description": "Evidence Packet references supporting the enabled signals.",
      +          "items": {
      +            "maxLength": 128,
      +            "minLength": 1,
      +            "pattern": "^[A-Za-z0-9][A-Za-z0-9._:/-]*$",
      +            "type": "string"
      +          },
      +          "maxItems": 32,
      +          "type": "array"
      +        },
      +        "evidence_uncertain": {
      +          "default": false,
      +          "description": "A specific material conclusion remains uncertain, and a scoped read-only review could plausibly resolve it. Do not set solely because CI, Stage, or runtime checks were not run.",
      +          "type": "boolean"
      +        },
      +        "high_blast_radius": {
      +          "default": false,
      +          "description": "The change could affect many consumers, services, or data records.",
      +          "type": "boolean"
      +        },
      +        "high_risk_domain": {
      +          "default": false,
      +          "description": "The change affects a sensitive security, identity, payment, fraud, privacy, or access-control area.",
      +          "type": "boolean"
      +        },
      +        "multiple_plausible_causes": {
      +          "default": false,
      +          "description": "More than one plausible cause remains after investigation.",
      +          "type": "boolean"
      +        },
      +        "non_reproducible": {
      +          "default": false,
      +          "description": "The reported behavior cannot be reproduced under expected conditions.",
      +          "type": "boolean"
      +        },
      +        "rationale": {
      +          "anyOf": [
      +            {
      +              "maxLength": 2000,
      +              "type": "string"
      +            },
      +            {
      +              "type": "null"
      +            }
      +          ],
      +          "default": null,
      +          "description": "Short explanation for the enabled signals; required when any signal is true."
      +        }
      +      },
      +      "type": "object"
      +    },
      +    {
      +      "type": "null"
      +    }
      +  ],
      +  "default": null
      +}
    • addedOutput schema / properties / transition_receipts
      Added value: +{
      +  "description": "Bounded request hashes for safe replay; no raw transition payloads are stored.",
      +  "items": {
      +    "additionalProperties": false,
      +    "properties": {
      +      "applied_revision": {
      +        "minimum": 1,
      +        "type": "integer"
      +      },
      +      "request_id": {
      +        "pattern": "^[A-Za-z0-9][A-Za-z0-9._:-]{0,127}$",
      +        "type": "string"
      +      },
      +      "request_sha256": {
      +        "pattern": "^[a-f0-9]{64}$",
      +        "type": "string"
      +      }
      +    },
      +    "required": [
      +      "request_id",
      +      "request_sha256",
      +      "applied_revision"
      +    ],
      +    "type": "object"
      +  },
      +  "maxItems": 128,
      +  "type": "array"
      +}
  3. Changed4 schema fields changedv0.2.9
    • addedInput schema / properties / review_context
      Added value: +{
      +  "anyOf": [
      +    {
      +      "additionalProperties": false,
      +      "description": "Immutable identifiers for the exact source and evidence packet reviewed.",
      +      "properties": {
      +        "base_sha": {
      +          "pattern": "(?i)^(?:[a-f0-9]{40}|[a-f0-9]{64})$",
      +          "type": "string"
      +        },
      +        "changed_files": {
      +          "items": {
      +            "type": "string"
      +          },
      +          "maxItems": 500,
      +          "minItems": 1,
      +          "type": "array"
      +        },
      +        "diff_sha256": {
      +          "pattern": "(?i)^[a-f0-9]{64}$",
      +          "type": "string"
      +        },
      +        "evidence_packet_sha256": {
      +          "pattern": "(?i)^[a-f0-9]{64}$",
      +          "type": "string"
      +        },
      +        "evidence_refs": {
      +          "items": {
      +            "maxLength": 128,
      +            "minLength": 1,
      +            "pattern": "^[A-Za-z0-9][A-Za-z0-9._:/-]*$",
      +            "type": "string"
      +          },
      +          "maxItems": 1000,
      +          "minItems": 1,
      +          "type": "array"
      +        },
      +        "head_sha": {
      +          "pattern": "(?i)^(?:[a-f0-9]{40}|[a-f0-9]{64})$",
      +          "type": "string"
      +        },
      +        "repository": {
      +          "maxLength": 512,
      +          "minLength": 1,
      +          "type": "string"
      +        }
      +      },
      +      "required": [
      +        "repository",
      +        "base_sha",
      +        "head_sha",
      +        "diff_sha256",
      +        "evidence_packet_sha256",
      +        "changed_files",
      +        "evidence_refs"
      +      ],
      +      "type": "object"
      +    },
      +    {
      +      "type": "null"
      +    }
      +  ],
      +  "default": null,
      +  "description": "Optional immutable repository, base/head, diff, and Evidence Packet identity. When supplied, every completed profile must include a structured report whose evidence references belong to this packet; completed outcomes require a final report."
      +}
    • addedOutput schema / properties / final_review_report
      Added value: +{
      +  "anyOf": [
      +    {
      +      "additionalProperties": false,
      +      "description": "Structured synthesis stored with a review-bound orchestration session.",
      +      "properties": {
      +        "coverage_gaps": {
      +          "default": [],
      +          "items": {
      +            "additionalProperties": false,
      +            "properties": {
      +              "evidence_refs": {
      +                "default": [],
      +                "items": {
      +                  "maxLength": 128,
      +                  "minLength": 1,
      +                  "pattern": "^[A-Za-z0-9][A-Za-z0-9._:/-]*$",
      +                  "type": "string"
      +                },
      +                "maxItems": 32,
      +                "type": "array"
      +              },
      +              "text": {
      +                "maxLength": 2000,
      +                "minLength": 1,
      +                "type": "string"
      +              }
      +            },
      +            "required": [
      +              "text"
      +            ],
      +            "type": "object"
      +          },
      +          "maxItems": 100,
      +          "type": "array"
      +        },
      +        "finding_candidates": {
      +          "default": [],
      +          "items": {
      +            "additionalProperties": false,
      +            "properties": {
      +              "candidate_id": {
      +                "pattern": "^F-[0-9]{2,}$",
      +                "type": "string"
      +              },
      +              "confidence": {
      +                "enum": [
      +                  "high",
      +                  "medium",
      +                  "low"
      +                ],
      +                "type": "string"
      +              },
      +              "description": {
      +                "maxLength": 5000,
      +                "minLength": 1,
      +                "type": "string"
      +              },
      +              "evidence_refs": {
      +                "items": {
      +                  "maxLength": 128,
      +                  "minLength": 1,
      +                  "pattern": "^[A-Za-z0-9][A-Za-z0-9._:/-]*$",
      +                  "type": "string"
      +                },
      +                "maxItems": 32,
      +                "minItems": 1,
      +                "type": "array"
      +              },
      +              "source_profiles": {
      +                "items": {
      +                  "enum": [
      +                    "pr_test_analyzer",
      +                    "code_reviewer",
      +                    "security_reviewer",
      +                    "silent_failure_hunter",
      +                    "code_explorer",
      +                    "typescript_reviewer",
      +                    "react_reviewer",
      +                    "ruby_reviewer",
      +                    "python_reviewer",
      +                    "mobile_reviewer"
      +                  ],
      +                  "type": "string"
      +                },
      +                "minItems": 1,
      +                "type": "array"
      +              },
      +              "title": {
      +                "maxLength": 256,
      +                "minLength": 1,
      +                "type": "string"
      +              },
      +              "verification_gap": {
      +                "maxLength": 2000,
      +                "minLength": 1,
      +                "type": "string"
      +              }
      +            },
      +            "required": [
      +              "candidate_id",
      +              "title",
      +              "description",
      +              "confidence",
      +              "verification_gap",
      +              "evidence_refs",
      +              "source_profiles"
      +            ],
      +            "type": "object"
      +          },
      +          "maxItems": 100,
      +          "type": "array"
      +        },
      +        "profiles_reviewed": {
      +          "items": {
      +            "enum": [
      +              "pr_test_analyzer",
      +              "code_reviewer",
      +              "security_reviewer",
      +              "silent_failure_hunter",
      +              "code_explorer",
      +              "typescript_reviewer",
      +              "react_reviewer",
      +              "ruby_reviewer",
      +              "python_reviewer",
      +              "mobile_reviewer"
      +            ],
      +            "type": "string"
      +          },
      +          "minItems": 1,
      +          "type": "array"
      +        },
      +        "summary": {
      +          "maxLength": 5000,
      +          "minLength": 1,
      +          "type": "string"
      +        },
      +        "unverified": {
      +          "default": [],
      +          "items": {
      +            "additionalProperties": false,
      +            "properties": {
      +              "evidence_refs": {
      +                "default": [],
      +                "items": {
      +                  "maxLength": 128,
      +                  "minLength": 1,
      +                  "pattern": "^[A-Za-z0-9][A-Za-z0-9._:/-]*$",
      +                  "type": "string"
      +                },
      +                "maxItems": 32,
      +                "type": "array"
      +              },
      +              "text": {
      +                "maxLength": 2000,
      +                "minLength": 1,
      +                "type": "string"
      +              }
      +            },
      +            "required": [
      +              "text"
      +            ],
      +            "type": "object"
      +          },
      +          "maxItems": 100,
      +          "type": "array"
      +        }
      +      },
      +      "required": [
      +        "summary",
      +        "profiles_reviewed"
      +      ],
      +      "type": "object"
      +    },
      +    {
      +      "type": "null"
      +    }
      +  ],
      +  "default": null
      +}
    • addedOutput schema / properties / profile_reports
      Added value: +{
      +  "items": {
      +    "additionalProperties": false,
      +    "description": "Structured host-reported result for one completed specialist profile.",
      +    "properties": {
      +      "coverage_gaps": {
      +        "default": [],
      +        "items": {
      +          "additionalProperties": false,
      +          "properties": {
      +            "evidence_refs": {
      +              "default": [],
      +              "items": {
      +                "maxLength": 128,
      +                "minLength": 1,
      +                "pattern": "^[A-Za-z0-9][A-Za-z0-9._:/-]*$",
      +                "type": "string"
      +              },
      +              "maxItems": 32,
      +              "type": "array"
      +            },
      +            "text": {
      +              "maxLength": 2000,
      +              "minLength": 1,
      +              "type": "string"
      +            }
      +          },
      +          "required": [
      +            "text"
      +          ],
      +          "type": "object"
      +        },
      +        "maxItems": 100,
      +        "type": "array"
      +      },
      +      "evidence_map": {
      +        "default": [],
      +        "items": {
      +          "additionalProperties": false,
      +          "properties": {
      +            "description": {
      +              "maxLength": 2000,
      +              "minLength": 1,
      +              "type": "string"
      +            },
      +            "evidence_ref": {
      +              "maxLength": 128,
      +              "minLength": 1,
      +              "pattern": "^[A-Za-z0-9][A-Za-z0-9._:/-]*$",
      +              "type": "string"
      +            }
      +          },
      +          "required": [
      +            "evidence_ref",
      +            "description"
      +          ],
      +          "type": "object"
      +        },
      +        "maxItems": 500,
      +        "type": "array"
      +      },
      +      "finding_candidates": {
      +        "default": [],
      +        "items": {
      +          "additionalProperties": false,
      +          "description": "A possible defect with evidence references; the host still decides whether it is confirmed.",
      +          "properties": {
      +            "candidate_id": {
      +              "pattern": "^F-[0-9]{2,}$",
      +              "type": "string"
      +            },
      +            "confidence": {
      +              "enum": [
      +                "high",
      +                "medium",
      +                "low"
      +              ],
      +              "type": "string"
      +            },
      +            "description": {
      +              "maxLength": 5000,
      +              "minLength": 1,
      +              "type": "string"
      +            },
      +            "evidence_refs": {
      +              "items": {
      +                "maxLength": 128,
      +                "minLength": 1,
      +                "pattern": "^[A-Za-z0-9][A-Za-z0-9._:/-]*$",
      +                "type": "string"
      +              },
      +              "maxItems": 32,
      +              "minItems": 1,
      +              "type": "array"
      +            },
      +            "title": {
      +              "maxLength": 256,
      +              "minLength": 1,
      +              "type": "string"
      +            },
      +            "verification_gap": {
      +              "maxLength": 2000,
      +              "minLength": 1,
      +              "type": "string"
      +            }
      +          },
      +          "required": [
      +            "candidate_id",
      +            "title",
      +            "description",
      +            "confidence",
      +            "verification_gap",
      +            "evidence_refs"
      +          ],
      +          "type": "object"
      +        },
      +        "maxItems": 100,
      +        "type": "array"
      +      },
      +      "profile": {
      +        "enum": [
      +          "pr_test_analyzer",
      +          "code_reviewer",
      +          "security_reviewer",
      +          "silent_failure_hunter",
      +          "code_explorer",
      +          "typescript_reviewer",
      +          "react_reviewer",
      +          "ruby_reviewer",
      +          "python_reviewer",
      +          "mobile_reviewer"
      +        ],
      +        "type": "string"
      +      },
      +      "scope": {
      +        "maxLength": 2000,
      +        "minLength": 1,
      +        "type": "string"
      +      },
      +      "unverified": {
      +        "default": [],
      +        "items": {
      +          "additionalProperties": false,
      +          "properties": {
      +            "evidence_refs": {
      +              "default": [],
      +              "items": {
      +                "maxLength": 128,
      +                "minLength": 1,
      +                "pattern": "^[A-Za-z0-9][A-Za-z0-9._:/-]*$",
      +                "type": "string"
      +              },
      +              "maxItems": 32,
      +              "type": "array"
      +            },
      +            "text": {
      +              "maxLength": 2000,
      +              "minLength": 1,
      +              "type": "string"
      +            }
      +          },
      +          "required": [
      +            "text"
      +          ],
      +          "type": "object"
      +        },
      +        "maxItems": 100,
      +        "type": "array"
      +      }
      +    },
      +    "required": [
      +      "profile",
      +      "scope"
      +    ],
      +    "type": "object"
      +  },
      +  "type": "array"
      +}
    • addedOutput schema / properties / review_context
      Added value: +{
      +  "anyOf": [
      +    {
      +      "additionalProperties": false,
      +      "description": "Immutable identifiers for the exact source and evidence packet reviewed.",
      +      "properties": {
      +        "base_sha": {
      +          "pattern": "(?i)^(?:[a-f0-9]{40}|[a-f0-9]{64})$",
      +          "type": "string"
      +        },
      +        "changed_files": {
      +          "items": {
      +            "type": "string"
      +          },
      +          "maxItems": 500,
      +          "minItems": 1,
      +          "type": "array"
      +        },
      +        "diff_sha256": {
      +          "pattern": "(?i)^[a-f0-9]{64}$",
      +          "type": "string"
      +        },
      +        "evidence_packet_sha256": {
      +          "pattern": "(?i)^[a-f0-9]{64}$",
      +          "type": "string"
      +        },
      +        "evidence_refs": {
      +          "items": {
      +            "maxLength": 128,
      +            "minLength": 1,
      +            "pattern": "^[A-Za-z0-9][A-Za-z0-9._:/-]*$",
      +            "type": "string"
      +          },
      +          "maxItems": 1000,
      +          "minItems": 1,
      +          "type": "array"
      +        },
      +        "head_sha": {
      +          "pattern": "(?i)^(?:[a-f0-9]{40}|[a-f0-9]{64})$",
      +          "type": "string"
      +        },
      +        "repository": {
      +          "maxLength": 512,
      +          "minLength": 1,
      +          "type": "string"
      +        }
      +      },
      +      "required": [
      +        "repository",
      +        "base_sha",
      +        "head_sha",
      +        "diff_sha256",
      +        "evidence_packet_sha256",
      +        "changed_files",
      +        "evidence_refs"
      +      ],
      +      "type": "object"
      +    },
      +    {
      +      "type": "null"
      +    }
      +  ],
      +  "default": null
      +}
  4. Changed1 schema field changedv0.2.5
    • changedOutput schema / properties / model_policy / anyOf
      Previous value: -[
      -  {
      -    "additionalProperties": false,
      -    "properties": {
      -      "model": {
      -        "anyOf": [
      -          {
      -            "enum": [
      -              "gpt-6-luna",
      -              "gpt-6-sol"
      -            ],
      -            "type": "string"
      -          },
      -          {
      -            "type": "string"
      -          }
      -        ]
      -      },
      -      "provider": {
      -        "default": "openai",
      -        "enum": [
      -          "openai",
      -          "anthropic"
      -        ],
      -        "type": "string"
      -      },
      -      "reasoning": {
      -        "enum": [
      -          "none",
      -          "minimal",
      -          "low",
      -          "medium",
      -          "high",
      -          "xhigh",
      -          "max"
      -        ],
      -        "type": "string"
      -      },
      -      "reasoning_capabilities_verified": {
      -        "default": false,
      -        "type": "boolean"
      -      }
      -    },
      -    "required": [
      -      "model",
      -      "reasoning"
      -    ],
      -    "type": "object"
      -  },
      -  {
      -    "type": "null"
      -  }
      -]New value: +[
      +  {
      +    "additionalProperties": false,
      +    "properties": {
      +      "mode": {
      +        "const": "configured",
      +        "default": "configured",
      +        "type": "string"
      +      },
      +      "model": {
      +        "anyOf": [
      +          {
      +            "enum": [
      +              "gpt-6-luna",
      +              "gpt-6-sol"
      +            ],
      +            "type": "string"
      +          },
      +          {
      +            "type": "string"
      +          }
      +        ]
      +      },
      +      "provider": {
      +        "default": "openai",
      +        "enum": [
      +          "openai",
      +          "anthropic"
      +        ],
      +        "type": "string"
      +      },
      +      "reasoning": {
      +        "enum": [
      +          "none",
      +          "minimal",
      +          "low",
      +          "medium",
      +          "high",
      +          "xhigh",
      +          "max"
      +        ],
      +        "type": "string"
      +      },
      +      "reasoning_capabilities_verified": {
      +        "default": false,
      +        "type": "boolean"
      +      }
      +    },
      +    "required": [
      +      "model",
      +      "reasoning"
      +    ],
      +    "type": "object"
      +  },
      +  {
      +    "additionalProperties": false,
      +    "properties": {
      +      "mode": {
      +        "const": "host_default",
      +        "default": "host_default",
      +        "type": "string"
      +      }
      +    },
      +    "type": "object"
      +  },
      +  {
      +    "type": "null"
      +  }
      +]
  5. Changed1 schema field changedv0.1.1
    • addedInput schema / properties / task_type / description
      Added value: +"Broad request category: ordinary_review for implementation review, widget_review for widget changes, epic_analysis for broad exploration, requirements_analysis for requirement review, qa_planning for coverage planning, autotest_implementation for automation work, or other. This affects recommended_bundles only; the host chooses the route from changed files and evidence; it is not a risk level."
  6. First observedv0.1.0

TDQS

A4.8/5.0
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations only cover the safety/idempotency profile; the description adds substantial operational context they do not: session TTL (1800s default), default capacity of 100, purge of expired sessions, eviction of retained terminal sessions, and a named failure mode ("session limit" error). It also discloses the storage boundary — identifiers and report fields are persisted, not the raw diff or full Evidence Packet.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Front-loaded with the core action, then a short purpose/alternative comparison, then three tight bullets for limits and failure modes. Slightly redundant with the schema on task_type's effect ("the host still selects the review route"), but every other sentence carries distinct information.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a 2-parameter session-creation tool with an output schema already present, this covers what the schema and annotations cannot: lifecycle, capacity, eviction behavior, the session-limit failure, and the persistence boundary. Nothing an agent needs to call it correctly is missing.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%, so the baseline is 3, but the description adds meaning beyond the schema: it clarifies that task_type only narrows the bundle shortlist while the host selects the route, and that review_context should carry exact source/evidence identifiers for an auditable review. The task_type wording largely duplicates the schema text, which keeps this from a 5.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a specific verb and resource ("Create a QA session") plus the key scoping fact ("Every call creates a separate session"), and explicitly separates it from the sibling prepare_qa_orchestration ("stateless profile checklist"). An agent can pick between the two without opening either schema.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines5/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Names the alternative tool and the condition that selects it (stateless checklist vs. stateful session), and gives a concrete when-to-pass rule for the optional parameter ("For an auditable code review, pass review_context with the exact source and evidence packet identifiers"). Guidance is explicit rather than implied.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.