Skip to main content
Glama

Record QA step result

advance_qa_orchestration

Record one active QA step's result; return updated state and next_action instructions for the host.

Instructions

Record one active QA step's result; return updated state and next_action instructions for the host.

After completed triage, the response also includes selected_review_routes with the exact selected checklists and execution_groups, avoiding a separate preparation tool call.

For finalization, use finish_qa_orchestration at awaiting_host_outcome; after early stops, match the recorded outcome.

  • Triage: select exactly one bundle or profile; default to one profile for narrow work.

  • Every call requires run_id, completed_step, and status. Copy completed_step from the latest session's current_step; use status=completed after a successful stage.

  • Primary review: after a whole execution group finishes, report its ordered profiles together with completed_profiles. In a review-context-bound session, also supply matching profile_reports. Older hosts may continue reporting completed_profile one at a time. The final group requires risk_signals ({} if none).

  • Clean single-profile fast path: set skip_synthesis=true only when that review has no findings, no unresolved material questions, and no risk signals. This bypasses only the separate synthesis step; the host still validates and produces the final QA report. The server cannot verify this claim. Bundles, findings, unresolved questions, or any risk signal require the normal synthesis stage.

  • Trust boundary: completion fields, execution_metrics, and risk_signals are host-reported. The server cannot confirm each review ran, whether it ran concurrently, or that risk_signals reflect evidence; bound sessions validate report/profile alignment, citation membership, finding-source lineage, and risk-signal reference membership, not report truth.

  • Early stop: omit route selectors, completion fields, and risk_signals.

  • Success saves state and refreshes expires_at.

  • Invalid/stale requests and unknown/expired run_ids fail without advancing.

  • With request_id and expected_revision, exact retries return current retained state without another transition or TTL refresh. Conflicting payloads and new stale revisions fail.

  • Legacy calls without request_id are non-idempotent: never retry them blindly. After a lost response or transition error, read get_qa_orchestration(run_id) and continue from its current_step; if the session is unknown or expired, start a new session.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
run_idYesSession identifier returned by start_qa_orchestration or list_qa_orchestrations: qar- followed by 32 lowercase hexadecimal characters. Reuse it for this session; do not invent or transform it.
statusYesRequired on every call, including successful steps: use completed when the active step succeeds. Use partial or blocked only to stop early, then finalize with the same outcome using finish_qa_orchestration.
request_idNoOptional unique transition key. Requires expected_revision. Retrying the exact same payload returns current retained state without repeating the transition; reusing the key with another payload is rejected.
risk_signalsNoRequired with the final completed primary-review profile. Send an empty object when no evidence-based fixed escalation signals apply; any true signal requires a short rationale and Evidence Packet references. Do not send on earlier profiles or on the synthesis transition.
completed_stepYesRequired: copy the exact current_step from the latest session returned by start, advance, or get. Complete only triage, primary_review, deep_review, or synthesis. If current_step is awaiting_host_outcome, call finish_qa_orchestration instead.
skip_synthesisNoOptional clean-review fast path. Set true only after one selected profile reports no findings or unresolved material questions and every risk signal is false. The host still validates and reports the final QA result; the server trusts this host claim and cannot verify review content. Bundles, findings, unresolved questions, or any risk signal require the normal synthesis stage.
profile_reportsNoFor a review-context-bound session, one structured result per completed profile, in the same order. Every finding must cite Evidence Packet references. Optional execution_metrics are host-reported and are not independently verified. Up to ten reports are accepted, with 64 KiB per report and 256 KiB combined per session. Omit for legacy sessions without review_context.
selected_bundleNoFor completed triage, choose one fixed bundle only for broad, cross-concern, or high-risk work; several changed files alone do not require one. It is mutually exclusive with selected_profile; recommended_bundles is only a shortlist.
selected_profileNoFor completed triage, default to one allowed profile for a narrow, single-concern, low-risk review. It is mutually exclusive with selected_bundle.
completed_profileNoLegacy-compatible single-profile completion. After the complete execution_group has finished, submit exactly the current_profile returned by the latest advance_qa_orchestration call and follow fixed route order; never advance parallel profiles concurrently. Use completed_profiles to record a whole group in one call. Omit for other steps or an early stop.
expected_revisionNoOptional workflow revision from the latest session. A new transition is rejected if stale; a recognized request_id replay remains safe.
completed_profilesNoAfter the whole next execution_group has finished, submit every profile in that group exactly once and in fixed route order. This records the group in one call. For a bundle, the list must match the next complete group; for one profile, submit a one-item list. Mutually exclusive with completed_profile. Omit for other steps or an early stop.

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.
selected_review_routesNoAfter a successful triage selection, the exact checklists and execution groups for the selected route. Use this instead of a separate prepare call. This response-only field is not stored in the session.

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed8 schema fields changedv0.2.11
    • changedInput schema / properties / profile_reports / anyOf
      Previous 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"
      -        },
      -        "execution_metrics": {
      -          "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."
      -        },
      -        "finding_candidates": {
      -          "default": [],
      -          "items": {
      -            "additionalProperties": false,
      -            "description": "A possible defect with evidence references; the host still decides whether it is confirmed.",
      -            "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."
      -              },
      -              "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"
      -              },
      -              "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"
      -  },
      -  {
      -    "type": "null"
      -  }
      -]New value: +[
      +  {
      +    "items": {
      +      "additionalProperties": false,
      +      "description": "Structured host-reported result for one completed specialist profile.",
      +      "properties": {
      +        "context_selection": {
      +          "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
      +        },
      +        "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"
      +        },
      +        "execution_metrics": {
      +          "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"
      +                },
      +                "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"
      +            }
      +          ],
      +          "default": null,
      +          "description": "Optional host-reported execution data; the orchestrator does not verify it."
      +        },
      +        "finding_candidates": {
      +          "default": [],
      +          "items": {
      +            "additionalProperties": false,
      +            "description": "A possible defect with evidence references; the host still decides whether it is confirmed.",
      +            "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."
      +              },
      +              "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"
      +              },
      +              "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"
      +        },
      +        "review_rules_sha256": {
      +          "anyOf": [
      +            {
      +              "pattern": "(?i)^[a-f0-9]{64}$",
      +              "type": "string"
      +            },
      +            {
      +              "type": "null"
      +            }
      +          ],
      +          "default": null
      +        },
      +        "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"
      +  },
      +  {
      +    "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. Changed17 schema fields changedv0.2.10
    • addedInput schema / properties / expected_revision
      Added value: +{
      +  "anyOf": [
      +    {
      +      "minimum": 0,
      +      "type": "integer"
      +    },
      +    {
      +      "type": "null"
      +    }
      +  ],
      +  "default": null,
      +  "description": "Optional workflow revision from the latest session. A new transition is rejected if stale; a recognized request_id replay remains safe."
      +}
    • changedInput schema / properties / profile_reports / anyOf
      Previous 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"
      -  },
      -  {
      -    "type": "null"
      -  }
      -]New 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"
      +        },
      +        "execution_metrics": {
      +          "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."
      +        },
      +        "finding_candidates": {
      +          "default": [],
      +          "items": {
      +            "additionalProperties": false,
      +            "description": "A possible defect with evidence references; the host still decides whether it is confirmed.",
      +            "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."
      +              },
      +              "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"
      +              },
      +              "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"
      +  },
      +  {
      +    "type": "null"
      +  }
      +]
    • changedInput schema / properties / profile_reports / description
      Previous value: -"For a review-context-bound session, one structured result per completed profile, in the same order. Every finding must cite Evidence Packet references. Omit for legacy sessions without review_context."New value: +"For a review-context-bound session, one structured result per completed profile, in the same order. Every finding must cite Evidence Packet references. Optional execution_metrics are host-reported and are not independently verified. Up to ten reports are accepted, with 64 KiB per report and 256 KiB combined per session. Omit for legacy sessions without review_context."
    • addedInput schema / properties / request_id
      Added value: +{
      +  "anyOf": [
      +    {
      +      "pattern": "^[A-Za-z0-9][A-Za-z0-9._:-]{0,127}$",
      +      "type": "string"
      +    },
      +    {
      +      "type": "null"
      +    }
      +  ],
      +  "default": null,
      +  "description": "Optional unique transition key. Requires expected_revision. Retrying the exact same payload returns current retained state without repeating the transition; reusing the key with another payload is rejected."
      +}
    • changedInput schema / properties / risk_signals / anyOf
      Previous value: -[
      -  {
      -    "additionalProperties": false,
      -    "description": "Content-free, host-supplied signals used for deterministic escalation.",
      -    "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_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"
      -      }
      -    },
      -    "type": "object"
      -  },
      -  {
      -    "type": "null"
      -  }
      -]New value: +[
      +  {
      +    "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"
      +  }
      +]
    • changedInput schema / properties / risk_signals / description
      Previous value: -"Required with the final completed primary-review profile. Send an empty object when no evidence-based fixed escalation signals apply; do not send on earlier profiles or on the synthesis transition."New value: +"Required with the final completed primary-review profile. Send an empty object when no evidence-based fixed escalation signals apply; any true signal requires a short rationale and Evidence Packet references. Do not send on earlier profiles or on the synthesis transition."
    • 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 / profile_reports
      Added value: +{
      +  "anyOf": [
      +    {
      +      "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"
      +    },
      +    {
      +      "type": "null"
      +    }
      +  ],
      +  "default": null,
      +  "description": "For a review-context-bound session, one structured result per completed profile, in the same order. Every finding must cite Evidence Packet references. Omit for legacy sessions without review_context."
      +}
    • 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. Changed10 schema fields changedv0.2.5
    • changedInput schema / properties / completed_profile / description
      Previous value: -"After each successful primary-review step, submit exactly the current_profile returned by the previous advance_qa_orchestration call. Omit for other steps or an early stop."New value: +"Legacy-compatible single-profile completion. After the complete execution_group has finished, submit exactly the current_profile returned by the latest advance_qa_orchestration call and follow fixed route order; never advance parallel profiles concurrently. Use completed_profiles to record a whole group in one call. Omit for other steps or an early stop."
    • addedInput schema / properties / completed_profiles
      Added value: +{
      +  "anyOf": [
      +    {
      +      "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"
      +    },
      +    {
      +      "type": "null"
      +    }
      +  ],
      +  "default": null,
      +  "description": "After the whole next execution_group has finished, submit every profile in that group exactly once and in fixed route order. This records the group in one call. For a bundle, the list must match the next complete group; for one profile, submit a one-item list. Mutually exclusive with completed_profile. Omit for other steps or an early stop."
      +}
    • changedInput schema / properties / completed_step / description
      Previous value: -"Active step returned in current_step and completed by this call: triage, primary_review, deep_review, or synthesis. When current_step is awaiting_host_outcome, call finish_qa_orchestration instead."New value: +"Required: copy the exact current_step from the latest session returned by start, advance, or get. Complete only triage, primary_review, deep_review, or synthesis. If current_step is awaiting_host_outcome, call finish_qa_orchestration instead."
    • changedInput schema / properties / risk_signals / anyOf
      Previous value: -[
      -  {
      -    "additionalProperties": false,
      -    "description": "Content-free, host-supplied signals used for deterministic escalation.",
      -    "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_uncertain": {
      -        "default": false,
      -        "description": "A material conclusion depends on evidence that is missing or cannot be verified.",
      -        "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"
      -      }
      -    },
      -    "type": "object"
      -  },
      -  {
      -    "type": "null"
      -  }
      -]New value: +[
      +  {
      +    "additionalProperties": false,
      +    "description": "Content-free, host-supplied signals used for deterministic escalation.",
      +    "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_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"
      +      }
      +    },
      +    "type": "object"
      +  },
      +  {
      +    "type": "null"
      +  }
      +]
    • changedInput schema / properties / selected_bundle / description
      Previous value: -"For completed triage, choose one allowed fixed bundle for a broad or cross-concern review. It is mutually exclusive with selected_profile; recommended_bundles is only a shortlist."New value: +"For completed triage, choose one fixed bundle only for broad, cross-concern, or high-risk work; several changed files alone do not require one. It is mutually exclusive with selected_profile; recommended_bundles is only a shortlist."
    • changedInput schema / properties / selected_profile / description
      Previous value: -"For completed triage, choose one allowed profile for a narrow, low-risk review. It is mutually exclusive with selected_bundle."New value: +"For completed triage, default to one allowed profile for a narrow, single-concern, low-risk review. It is mutually exclusive with selected_bundle."
    • addedInput schema / properties / skip_synthesis
      Added value: +{
      +  "default": false,
      +  "description": "Optional clean-review fast path. Set true only after one selected profile reports no findings or unresolved material questions and every risk signal is false. The host still validates and reports the final QA result; the server trusts this host claim and cannot verify review content. Bundles, findings, unresolved questions, or any risk signal require the normal synthesis stage.",
      +  "type": "boolean"
      +}
    • changedInput schema / properties / status / description
      Previous value: -"Use completed after the active step succeeds. Use partial or blocked to stop early; then finalize with the same outcome using finish_qa_orchestration."New value: +"Required on every call, including successful steps: use completed when the active step succeeds. Use partial or blocked only to stop early, then finalize with the same outcome using finish_qa_orchestration."
    • 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"
      +  }
      +]
    • addedOutput schema / properties / selected_review_routes
      Added value: +{
      +  "anyOf": [
      +    {
      +      "properties": {
      +        "execution_groups": {
      +          "description": "Ordered execution waves whose flattened profile IDs exactly match routes. Run the groups in order; profiles in the same group are independent and may be reviewed concurrently by the host. Wait for every profile in a group before reporting it with one completed_profiles call in the declared order. Older hosts may report each completed_profile separately.",
      +          "items": {
      +            "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"
      +          },
      +          "minItems": 1,
      +          "type": "array"
      +        },
      +        "routes": {
      +          "description": "Detailed checklists in the selected route's declared profile order. Each route is a fixed, read-only checklist; it does not execute a review.",
      +          "items": {
      +            "properties": {
      +              "constraints": {
      +                "description": "Shared limits for this read-only review profile.",
      +                "items": {
      +                  "type": "string"
      +                },
      +                "minItems": 1,
      +                "type": "array"
      +              },
      +              "display_name": {
      +                "minLength": 1,
      +                "type": "string"
      +              },
      +              "escalation_signals": {
      +                "description": "Conditions to assess against evidence. A listed condition is not itself a deep-review trigger; set risk_signals only when the corresponding evidence-based condition applies.",
      +                "items": {
      +                  "type": "string"
      +                },
      +                "type": "array"
      +              },
      +              "focus": {
      +                "description": "The profile's review boundary and primary responsibility.",
      +                "minLength": 1,
      +                "type": "string"
      +              },
      +              "host_owns_decisions": {
      +                "const": true,
      +                "default": true,
      +                "type": "boolean"
      +              },
      +              "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"
      +              },
      +              "read_only": {
      +                "const": true,
      +                "default": true,
      +                "type": "boolean"
      +              },
      +              "required_sections": {
      +                "description": "Profile-specific output sections; use these instead of a generic template.",
      +                "items": {
      +                  "type": "string"
      +                },
      +                "minItems": 1,
      +                "type": "array"
      +              }
      +            },
      +            "required": [
      +              "profile",
      +              "display_name",
      +              "focus",
      +              "required_sections",
      +              "constraints"
      +            ],
      +            "type": "object"
      +          },
      +          "minItems": 1,
      +          "type": "array"
      +        }
      +      },
      +      "required": [
      +        "routes",
      +        "execution_groups"
      +      ],
      +      "type": "object"
      +    },
      +    {
      +      "type": "null"
      +    }
      +  ],
      +  "default": null,
      +  "description": "After a successful triage selection, the exact checklists and execution groups for the selected route. Use this instead of a separate prepare call. This response-only field is not stored in the session."
      +}
  5. Changed1 schema field changedv0.1.23
    • changedInput schema / properties / run_id / description
      Previous value: -"Session identifier returned by start_qa_orchestration: qar- followed by 32 lowercase hexadecimal characters. Reuse it for this session; do not invent or transform it."New value: +"Session identifier returned by start_qa_orchestration or list_qa_orchestrations: qar- followed by 32 lowercase hexadecimal characters. Reuse it for this session; do not invent or transform it."
  6. Changed8 schema fields changedv0.1.1
    • addedInput schema / properties / completed_profile / description
      Added value: +"After each successful primary-review step, submit exactly the current_profile returned by the previous advance_qa_orchestration call. Omit for other steps or an early stop."
    • addedInput schema / properties / completed_step / description
      Added value: +"Active step returned in current_step and completed by this call: triage, primary_review, deep_review, or synthesis. When current_step is awaiting_host_outcome, call finish_qa_orchestration instead."
    • changedInput schema / properties / completed_step / enum
      Previous value: -[
      -  "triage",
      -  "primary_review",
      -  "deep_review",
      -  "synthesis",
      -  "awaiting_host_outcome"
      -]New value: +[
      +  "triage",
      +  "primary_review",
      +  "deep_review",
      +  "synthesis"
      +]
    • changedInput schema / properties / risk_signals / description
      Previous value: -"Required with the final completed primary-review profile. Send an empty object when no signals apply."New value: +"Required with the final completed primary-review profile. Send an empty object when no evidence-based fixed escalation signals apply; do not send on earlier profiles or on the synthesis transition."
    • addedInput schema / properties / run_id / description
      Added value: +"Session identifier returned by start_qa_orchestration: qar- followed by 32 lowercase hexadecimal characters. Reuse it for this session; do not invent or transform it."
    • addedInput schema / properties / selected_bundle / description
      Added value: +"For completed triage, choose one allowed fixed bundle for a broad or cross-concern review. It is mutually exclusive with selected_profile; recommended_bundles is only a shortlist."
    • addedInput schema / properties / selected_profile / description
      Added value: +"For completed triage, choose one allowed profile for a narrow, low-risk review. It is mutually exclusive with selected_bundle."
    • addedInput schema / properties / status / description
      Added value: +"Use completed after the active step succeeds. Use partial or blocked to stop early; then finalize with the same outcome using finish_qa_orchestration."
  7. 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 declare readOnlyHint=false, idempotentHint=false, destructiveHint=false; the description goes well beyond them by disclosing state persistence with TTL refresh, the exact idempotency contract (request_id+expected_revision replays are safe, legacy calls are not), failure behavior for stale/invalid/expired runs, and a trust boundary enumerating which host-reported fields the server cannot verify.

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?

Purpose and the next_action return are front-loaded, and the bulleted structure is scannable; nearly every sentence carries an operational constraint. It is long and a few points (trust boundary, skip_synthesis preconditions) are restated, which keeps it short of a 5 for a description this size.

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 12-parameter stateful transition tool with siblings, the description covers the transition model, early-stop path, finalization handoff, idempotency, failure modes, and trust boundaries. An output schema exists, and the description only briefly notes the selected_review_routes addition rather than re-explaining return values.

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 description coverage is 100%, so the baseline is 3, but the description adds cross-parameter workflow semantics the schema states only locally: which fields to omit on an early stop, when risk_signals is mandatory (final primary-review profile, {} if none) versus forbidden (earlier profiles, synthesis), and how completed_profile and completed_profiles relate to execution groups and route order.

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?

Opens with a precise verb+resource+scope: 'Record one active QA step's result; return updated state and next_action instructions for the host.' It also explicitly distinguishes itself from the sibling finish_qa_orchestration by naming the awaiting_host_outcome routing condition, so an agent can pick correctly 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?

Gives explicit when/when-not rules: use finish_qa_orchestration at awaiting_host_outcome, omit route selectors on early stops, set skip_synthesis only under three named conditions, and use get_qa_orchestration to recover after a lost legacy call. It also names the exact alternative to use when the session is unknown or expired (start a new session).

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