Skip to main content
Glama

QA Orchestrator

QA Orchestrator MCP server – quality and maintenance score on Glama

A Python/FastMCP toolkit for evidence-bound code and QA reviews: deterministic workflow, ten specialist profiles, nine fixed bundles, structured findings, and optional execution and evaluation tools.

The host (Codex, Claude Code, or another integration) retrieves evidence, runs models, validates findings, and owns the final QA decision. The MCP server checks workflow and report contracts. Optional Python tools supervise actual execution; connecting the MCP server alone does not activate them.

Quick start

Requires Python 3.12+, Git, uv, and an MCP host. Supports Windows, macOS, and Linux. Model access is configured in the host.

For installation without a checkout, replace <commit-sha> with the full immutable revision you intend to install:

codex mcp add qa-orchestrator -- uvx --from 'git+https://github.com/Rbkmen/qa-orchestrator.git@<commit-sha>' qa-orchestrator-mcp

Use the same revision for server and host instructions. Remote installs contain only published code; local upgrades require a checkout installation.

With no saved policy, model_policy is host_default: the host uses its own model and reasoning. Existing explicit policies remain active.

For a checkout installation:

git clone https://github.com/Rbkmen/qa-orchestrator.git
cd qa-orchestrator
uv sync --locked
uv run qa-orchestrator-doctor --json

Register scripts/qa-orchestrator on macOS/Linux or .venv\Scripts\qa-orchestrator-mcp.exe on Windows. The client starts the STDIO server on demand. See Installation, Codex, and Claude Code.

Reference the canonical host rules from existing instructions. Verify the connection with get_qa_orchestration_catalog, get_qa_orchestration_model_policy, and prepare_qa_orchestration(agent_profile="code_explorer"); these calls create no session.

Related MCP server: Support Ticket Triage MCP

Architecture and responsibilities

Layer

Responsibility

MCP server

Checklists, stage/group validation, fixed escalation rules, bounded session state

Evidence utilities

Immutable Git source/diff hashes, citation coordinates, exact context packets

HostReviewAdapter

Async executor supervision, concurrency/time budgets, group barriers and attempts

CodexProfileExecutor

Installed CLI execution, strict output schema, report validation and reported usage

Benchmark tools

Snapshot identity and scoring of explicitly adjudicated runs

The host owns source retrieval, defect confirmation, severity, final decisions, code edits, and external writes. Jira, GitLab, CI, TestRail, Sentry, and other sources come through the host's tools. Initialization instructions are advisory; read_only=true and host_owns_decisions=true describe review ownership, while session tools mutate local state.

Review workflow

Pinned evidence → triage → primary review groups → optional deep review
                → synthesis → awaiting_host_outcome → host final outcome
  1. Build the evidence input; use ReviewContext for an auditable bound review.

  2. Call start_qa_orchestration, then complete triage through advance_qa_orchestration with one selected_profile or selected_bundle.

  3. Run the returned execution_groups. Profiles in one group may run concurrently; wait for all, then record the ordered completed_profiles and reports in one transition. Transition calls are sequential.

  4. Supply evidence-based risk_signals on the last primary-review transition. Perform any required deep review, then validate and synthesize the result.

  5. Call finish_qa_orchestration with completed, partial, or blocked. A completed bound review requires final_review_report. Record early stops through advance_qa_orchestration first.

Use the session returned by each transition. Read/recover with get_qa_orchestration or list_qa_orchestrations. Revision checks and request keys protect against stale submissions and lost-response retries.

completed records workflow completion; it is not a CI pass or release approval. For a clean single-profile route, skip_synthesis=true skips the separate synthesis stage, but still requires host validation and a final report. Findings, material unresolved questions, coverage gaps, unverified notes, or risk signals prevent the shortcut. Bundles retain synthesis.

Deep-review rules

Trigger

Required signals

High-risk uncertainty

high_risk_domain and evidence_uncertain

Multiple complexity signals

At least two of cross_system_scope, multiple_plausible_causes, non_reproducible, high_blast_radius

Critical evidence conflict

evidence_conflict and at least one of high_risk_domain, cross_system_scope, high_blast_radius

Enabled signals require rationale and evidence refs. Missing CI, Stage, or device execution alone does not require escalation; uncertainty must concern a material question that scoped review could resolve.

Example: ordinary QA of a small Ruby guard change checks requirements, the changed branch, callers, and assertions. The host can select ruby_reviewer, execute its checklist, submit its report and risk signals, synthesize, then finalize. See the complete MCP tool contract for payloads.

Profiles and bundles

Use one profile for a narrow, low-risk concern; use a bundle for broad or cross-concern work. File count alone does not define scope.

Profile

Focus

code_explorer

Faraday — Evidence Investigator: paths, callers, dependencies and evidence map

code_reviewer

Changed-code failure modes and contract breaks

pr_test_analyzer

Test coverage and meaningful assertion gaps

security_reviewer

Authentication, authorization, input validation and sensitive data

silent_failure_hunter

Swallowed errors, fallbacks, timeout/rollback and error propagation

typescript_reviewer

Types, narrowing, casts, async and error contracts

react_reviewer

State, effects, rendering, accessibility and visible behavior

ruby_reviewer

Ruby semantics, exceptions, persistence and relevant jobs

python_reviewer

Validation, serialization, cancellation, cleanup and MCP contracts

mobile_reviewer

React Native/native lifecycle, navigation and platform contracts

Test Analyzer returns coverage gaps; Evidence Investigator returns an evidence map and unresolved links. Both are prohibited from returning implementation findings, enforced by server validation and the Codex output schema.

In the schedules below, + means one concurrent-capable group; → means a barrier between groups.

Bundle

Execution groups

ordinary_mr

code_explorer → code_reviewer + pr_test_analyzer

widget

code_explorer → react_reviewer + typescript_reviewer + pr_test_analyzer

widget_js

code_explorer → code_reviewer + react_reviewer + pr_test_analyzer

ruby_backend

code_explorer → ruby_reviewer + pr_test_analyzer

python_backend

code_explorer + python_reviewer + pr_test_analyzer

mobile

code_explorer → mobile_reviewer + pr_test_analyzer

security

code_explorer → security_reviewer + silent_failure_hunter

autotest

code_reviewer + typescript_reviewer + pr_test_analyzer

requirements

code_explorer → code_reviewer

The Python bundle starts all profiles together; required context must be supplied upfront. Reports from previous groups are available only to subsequent groups. The installed catalog is authoritative; see the bundle and profile catalog.

Evidence and context

A bound ReviewContext pins repository identity, full base/head commits, diff and packet SHA-256, changed paths, and evidence IDs. Optional registry metadata adds source hashes, coordinates and external locators. Bound profiles submit structured reports; finding coordinates must be supported by cited head-source records when a registry is supplied.

Local utilities verify immutable Git bytes, hashes and coordinates. External requirements/runtime evidence remains unverified by the Git checker. The MCP server validates identifiers and citations; it does not read the raw packet.

Exact context packing retains original UTF-8 fragments without summarizing or truncating them. Changed source, diff and supplied requirements remain mandatory. Optional omissions are declared; mandatory overflow fails before execution. Reports cannot cite omitted refs. The Codex executor defaults to 1,500,000 rendered bytes and a 2 MB serialized packet limit, not token limits. Source caching is bounded and in memory; Python AST chunks preserve source coordinates.

See Evidence Registry and context packing.

Findings and final decisions

Reports separate candidates, coverage gaps, unverified claims and evidence maps. The host assigns every candidate one verdict: confirmed, rejected, duplicate, or unverified, with rationale and evidence. Final findings retain profile/candidate lineage; confirmation requires severity, impact, affected area and source locations. Finalization checks the complete decision ledger.

Paired failure_condition and flip_condition describe failure prerequisites and refuting evidence. Conditioned candidates require a context/candidate-bound counterevidence check; confirmation or duplicate linkage requires not_refuted. The host performs that inspection. Legacy candidates may omit both conditions.

Explicit scoped ReviewRuleset rules can raise concerns or guard against known false-positive patterns. They bind reports through a digest and guide inspection; they do not automatically suppress findings or learn from reviews. See rules and counterevidence.

Host execution

HostReviewAdapter supervises an injected async execute_profile(job) for a bound session with triage complete. It enforces group barriers, concurrency/time limits, lease renewal and cancellation. It stops at deep review or synthesis; later stages and final decisions remain with the host.

Timeouts and explicit RetryableProfileError can be retried. Permanent failures are not replayed automatically. A failed group is never recorded as complete; the run becomes partial, retaining successful unsaved reports.

CodexProfileExecutor uses an authenticated installed CLI, a fresh temporary workspace, read-only sandbox, no inherited user configuration, and a strict JSON schema. Invalid output or detected forbidden tool actions fail the call; timeout/cancellation terminates its process tree. In host_default, it requires an explicit model. Other runtimes use a custom executor.

Optional checkpoints reuse validated reports only when context, rules, checklist, model policy, previous-group reports and executor/instruction identity match. Reuse is reported separately; disable it for independent benchmark repetitions. See Host Adapter and execution tools.

Performance and evaluation

Narrow routing, concurrent groups, the clean-profile synthesis shortcut, checkpoints and bounded context selection can avoid unnecessary work. Execution speed and latency preferences remain controlled by the user's host/provider settings; improvement requires measurement.

execution_attempts records fresh successful, failed and cancelled calls, queue wait, duration and available phase/token observations. Missing usage remains unknown, never zero. Checkpoint reuse is separate; model_seconds includes the CLI/process interval rather than provider-only inference. No automatic price estimate is produced.

Benchmark tools score pinned runs using explicit adjudications and can report precision, eligible recall, high-impact misses, evidence validity, time, usage and repetition stability. They do not launch models or decide matches. Keep reference findings hidden and compare fresh matched runs. Unit tests do not prove review quality or speed. See Benchmark and Profile Evaluation.

MCP tools

Tool

Purpose

get_qa_orchestration_catalog

Profiles, bundles and schedules

prepare_qa_orchestration

One profile checklist

prepare_qa_orchestration_bundle

Bundle checklists and groups

get_qa_orchestration_model_policy

Running server's policy snapshot

start_qa_orchestration

Create a session

advance_qa_orchestration

Validate and record a transition/reports

renew_qa_orchestration

Extend an active lease

get_qa_orchestration

Read a retained session

list_qa_orchestrations

Discover retained session IDs

finish_qa_orchestration

Finalize host outcome and report

delete_qa_orchestration

Irreversibly discard local session state

Reads do not extend TTL. Deletion neither finalizes a review nor cancels host execution.

CLI tools

Command

Purpose

qa-orch setup / setup --host-default

Configure per-stage models or return to host settings

qa-orch config show / reload

Inspect/validate the saved policy

qa-orch evidence discover

Suggest pinned callers, contracts and conventionally named tests

qa-orch evidence build / verify

Register/verify source and diff

qa-orch evidence pack / chunks

Exact context packets/source chunks

qa-orch rules

Bind explicit review rules

qa-orch benchmark import-reviewbench / score / reliability / compare

Import, score repetitions and compare same-model speed runs

qa-orchestrator-doctor --json

Read-only local diagnostics

qa-orchestrator aliases qa-orch. Running either without a subcommand starts the MCP server. These tools do not provide a one-command MR review and publication flow.

Configuration

host_default uses the host's model/reasoning. Optional configured policy sets provider, model and effort per stage. Setup validates local metadata, not account access or live model capabilities; no provider credentials are stored.

Variable

Default

QA_ORCHESTRATOR_DATA_DIR

~/.qa-orchestrator

QA_ORCHESTRATOR_MODEL_POLICY_PATH

<data-dir>/model-policy.json

QA_ORCHESTRATOR_ORCHESTRATION_TTL_SECONDS

1800

QA_ORCHESTRATOR_ORCHESTRATION_MAX_SESSIONS

100

QA_ORCHESTRATOR_SESSION_STORE_PATH

Unset; opt-in SQLite recovery

Pass overrides through the MCP client's environment. Restart the server connection after code/policy changes: CLI reload does not update that process. Inspect the loaded policy with get_qa_orchestration_model_policy; neither configuration nor session metadata proves model execution.

Storage and trust boundaries

Session state is bounded and in memory by default. Optional SQLite restores non-expired unfinished sessions and finalized bound reviews with structured reports. Finalized legacy sessions without artifacts are removed. Checkpoints use a separate opt-in store; use one server process per session-store file.

Stored reports can contain source-derived findings and descriptions. Raw packets, prompts, transcripts and benchmark artifacts are managed separately by the host. Reports are limited to 64 KiB each and 256 KiB combined per session. Normal MCP calls need no network; installation, evidence tools and model execution may need it.

Validation proves structure, identity and reported sequence, not source completeness, defect truth or runtime success. The CLI read-only sandbox restricts writes, not all reads; strict read isolation needs an OS/container boundary. Forbidden-action detection cannot prove an action never started. No autonomous external writes or learned persistent QA memory are added.

Development and documentation

uv run pytest -q
uv run ruff check .
uv run qa-orchestrator-doctor --json
git diff --check

Implementation: src/qa_orchestrator/. Tests cover contracts, workflow, storage, evidence and execution supervision; real-model quality and target application/device checks are separate.

See CONTRIBUTING.md, Orchestration Policy, Review Upgrades, and SECURITY.md. Licensed under MIT.

Available Tools

11 tools
advance_qa_orchestrationRecord QA step resultA

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.

ParametersJSON 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

ParametersJSON Schema
NameRequiredDescription
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.

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.

delete_qa_orchestrationDiscard QA session stateA
DestructiveIdempotent

Delete one QA session from memory and configured recovery storage. To retain a final QA outcome, use finish_qa_orchestration.

run_id selects one session at any stage; no prior advance or finish required. Recover a lost ID via list_qa_orchestrations(), matching task type, route, and stage; confirm the target if several entries match.

  • Idempotent: deleted=true confirms absence, including unknown or expired IDs.

  • Irreversible: get/advance/finish cannot use the ID, even after restart.

  • Storage failure: memory stays intact; resolve the error and retry.

Host tasks and model executions are unaffected.

ParametersJSON 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.

Output Schema

ParametersJSON Schema
NameRequiredDescription
run_idYes
deletedNoThe run_id is absent from this server and its recovery store, including if already absent.

TDQS

A4.9/5.0
Behavior5/5

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

Annotations already declare destructive, idempotent, and non-read-only, but the description adds material context beyond them: deleted=true confirms absence even for unknown/expired IDs, irreversibility that survives restart, storage-failure behavior where memory stays intact, and the explicit note that host tasks and model executions are unaffected. These are exactly the operational details annotations cannot convey.

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

Conciseness5/5

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

Front-loaded imperative sentence, then a bulleted block where each line carries a distinct fact (mutation behavior, idempotency, irreversibility, failure recovery, unaffected systems). No sentence restates the name or the annotations verbatim, and there is no padding.

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?

With an output schema present, the description need not explain return fields, and it correctly stops there. For a single-parameter destructive mutation with full annotation coverage, everything an agent needs to call it safely and recover from edge cases is present.

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

Parameters4/5

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

Schema coverage is 100% and the schema itself documents the qar- pattern, so the baseline is 3. The description nonetheless adds dispatch-relevant meaning: run_id can select a session at any stage with no prior advance or finish, and it points at list_qa_orchestrations as the recovery path for an unknown ID.

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?

The description opens with a specific verb and resource ('Delete one QA session from memory and configured recovery storage') and immediately distinguishes itself from the sibling that shares its domain by naming finish_qa_orchestration as the retain-outcome alternative. An agent can differentiate it from advance/get/list/prepare with no schema inspection.

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?

It states when to use this tool ('to retain a final QA outcome, use finish_qa_orchestration' implies deletion is for discarding), relaxes a constraint ('no prior advance or finish required'), and routes the agent to list_qa_orchestrations to recover a lost ID with instructions for disambiguating matches. Explicit alternatives and conditions are provided rather than implied.

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

finish_qa_orchestrationRecord final QA outcomeA
Idempotent

Finalize the QA run and store its structured report when the session is review-bound.

After normal synthesis or an eligible clean single-profile fast path, use the retained run_id at awaiting_host_outcome to choose completed, partial, or blocked. After an early stop recorded by advance_qa_orchestration, outcome must match its partial/blocked status.

  • A completed review-bound session requires final_review_report.

  • Structured reports survive a restart only when the same session store is configured; otherwise they are in-memory only. They remain until TTL expiry, capacity eviction, or explicit deletion.

  • Same outcome: returns the retained terminal session.

  • Different outcome: conflicting final outcome; status unchanged.

  • Premature call: outcome is not ready. Finalized sessions with review artifacts can be restored from the configured store and expire at configured TTL (1800s default), or are removed by eviction or explicit deletion. Legacy finalized sessions without review artifacts are removed at restart. Removed run_ids cannot be deduplicated.

ParametersJSON 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.
outcomeYesHost-selected final session status: completed, partial, or blocked.
expected_revisionNoOptional current workflow revision for a new finalization. The same retained outcome/report can still be replayed idempotently.
final_review_reportNoStructured synthesized findings and coverage for a review_context-bound session. Required when its outcome is completed; each finding cites registered evidence refs and the original profile-local candidate IDs and evidence that support it. The report must include one candidate_decisions entry per submitted candidate. Confirmed findings require host severity, impact, affected area, and source locations. The report is limited to 64 KiB; profile plus final reports are limited to 256 KiB per session.

Output Schema

ParametersJSON Schema
NameRequiredDescription
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.

TDQS

A4.8/5.0
Behavior5/5

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

Goes well past the annotations: it discloses idempotent replay semantics ("Same outcome: returns the retained terminal session"), the conflict failure mode ("conflicting final outcome"), the readiness gate, and a full persistence lifecycle (restart survival depends on a configured session store, in-memory otherwise, TTL 1800s default, capacity eviction, explicit deletion, legacy sessions dropped at restart). This is exactly the mutation/idempotency/permanence context the annotations cannot carry.

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?

Well front-loaded: action, preconditions, then error/idempotency behavior, then retention. Slightly penalized because the persistence rules are stated twice — the third bullet on restart/TTL/eviction and the closing paragraph restate the same lifecycle facts rather than consolidating them.

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 state-machine finalizer with a rich input schema and an output schema, the description covers the remaining agent-facing unknowns: readiness gating, outcome-consistency rules, idempotent replay, and artifact retention/expiry. Nothing needed to call it correctly is missing.

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

Parameters4/5

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

Schema description coverage is 100%, so the schema already defines run_id, outcome, expected_revision and the report shape; baseline would be 3. The description adds real cross-parameter meaning on top: outcome must match a prior early-stop status, and completed review-bound sessions require final_review_report, which the schema marks only as default-null.

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?

The opening sentence gives a specific verb and resource ("Finalize the QA run and store its structured report") plus the scoping condition ("when the session is review-bound"). It distinguishes itself from siblings by naming the state transition point (awaiting_host_outcome) and contrasting with advance_qa_orchestration's early-stop path, so an agent can separate it from get/list/advance without opening a 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?

Explicitly states when to call it ("After normal synthesis or an eligible clean single-profile fast path"), how to choose the outcome in the early-stop case ("outcome must match its partial/blocked status"), and when it is invalid ("Premature call: `outcome is not ready`"). Alternatives and preconditions are named rather than implied.

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

get_qa_orchestrationInspect one QA sessionA
Read-onlyIdempotent

Read one retained run_id's state, including bound review context and structured reports.

Use run_id on the server retaining that session to resume or reconcile a lost advance_qa_orchestration response. Reads do not extend expires_at. Errors unknown run_id or expired session require a new session via start_qa_orchestration. If run_id is lost, use list_qa_orchestrations() to find retained sessions first.

For all-stage server policy, use get_qa_orchestration_model_policy(); for review progress or final outcome, use advance_qa_orchestration or finish_qa_orchestration, respectively. Local stdio access requires no additional credentials.

ParametersJSON 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.

Output Schema

ParametersJSON Schema
NameRequiredDescription
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.

TDQS

A4.9/5.0
Behavior5/5

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

Adds behavior beyond the annotations: reads do not extend expires_at (TTL semantics), the run_id is server-scoped ('use run_id on the server retaining that session'), and it enumerates the error strings `unknown run_id` and `expired session` with the required remedy. It also notes local stdio needs no extra credentials. Nothing contradicts readOnlyHint/idempotentHint.

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

Conciseness5/5

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

Front-loads the core action in the first sentence, then separates recovery semantics from sibling routing into distinct paragraphs. Every sentence carries non-redundant information (TTL, error codes, credentials, routing), with no filler.

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?

An output schema exists, so return-value detail is legitimately omitted. The description compensates with expiry behavior, error semantics, recovery path, sibling routing, and auth notes, which is everything an agent needs to invoke this read tool correctly in a multi-tool orchestration flow.

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

Parameters4/5

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

Schema coverage is 100% and the single run_id parameter is well documented there (pattern, origin), so the baseline is 3. The description adds genuine semantics the schema lacks: the run_id must be presented to the server that retains the session, and that a lost value should be recovered via list_qa_orchestrations rather than reconstructed.

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

Purpose5/5

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

States a specific verb and resource: 'Read one retained run_id's state, including bound review context and structured reports.' The scope (single session by run_id) is explicit, and the description names sibling tools it is not (advance_qa_orchestration, finish_qa_orchestration, get_qa_orchestration_model_policy), so it is distinguishable without opening schemas.

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 concrete when-to-use triggers: resume or reconcile a lost advance_qa_orchestration response, or find a retained session via list_qa_orchestrations when run_id is lost. It also routes to the correct alternatives for model policy, review progress, and final outcome, and states the recovery path (start_qa_orchestration) for unknown/expired run_id.

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

get_qa_orchestration_catalogDiscover QA profiles and bundlesA
Read-onlyIdempotent

Read the static profile/bundle catalog: specialists, review scopes, and execution schedules.

Use before creating a session or choosing its triage route; no session or arguments required. Task-type recommendations are shortlists, not restrictions. Choose a bundle for broad work or a single profile for a narrow concern using changed files and confirmed stack.

  • For a session, the successful triage response includes selected_review_routes with the selected profile or bundle checklists and execution_groups.

  • Standalone or recovery lookup: prepare_qa_orchestration(agent_profile) or prepare_qa_orchestration_bundle(bundle).

  • Create a session: start_qa_orchestration; set its route: advance_qa_orchestration.

  • Session IDs: list_qa_orchestrations().

Available routes come from the installed server's bundled definitions; active sessions and configured models do not change this catalog.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

Output Schema

ParametersJSON Schema
NameRequiredDescription
bundlesYes
profilesYes
read_onlyNo
host_owns_decisionsNo
recommended_bundles_by_task_typeYesTask-based shortlists only; they do not restrict the available bundles.

TDQS

A4.6/5.0
Behavior4/5

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

Annotations already declare readOnlyHint, idempotentHint, and openWorldHint=false, so safety is covered. The description adds genuinely non-obvious context: the catalog is static, requires no session or arguments, and is unaffected by active sessions or configured models. It stops short of describing the response shape, but an output schema exists to carry that.

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

Conciseness4/5

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

Front-loaded with the core purpose in the first sentence, then routes. The bulleted alternative map is dense but each entry carries routing value; it is slightly longer than strictly necessary for a zero-argument catalog read.

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?

With an output schema present, return values need no explanation, and the description covers everything else an agent needs: what the catalog contains, when to consult it, that it is static and argument-free, and which sibling handles each follow-up action.

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?

Zero parameters, so the baseline is 4. The description reinforces this by noting 'no session or arguments required,' which prevents an agent from inventing a session_id or filter argument.

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

Purpose5/5

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

States a specific verb and resource ('Read the static profile/bundle catalog') and enumerates its contents (specialists, review scopes, execution schedules), which no sibling covers. An agent can distinguish it from prepare_qa_orchestration, start_qa_orchestration, and list_qa_orchestrations without opening any 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?

Explicitly states when to use it ('before creating a session or choosing its triage route') and routes to alternatives by scenario: standalone/recovery lookup goes to prepare_qa_orchestration(_bundle), session creation to start_qa_orchestration, route setting to advance_qa_orchestration, session listing to list_qa_orchestrations. It also clarifies that task-type recommendations are shortlists, not restrictions.

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

get_qa_orchestration_model_policyInspect server model settingsA
Read-onlyIdempotent

Read the server-wide model policy used to create new sessions.

The mode is either host_default (use the host's configured model and reasoning) or configured (use the returned per-stage provider, model IDs, and reasoning).

Use to inspect the policy loaded for new sessions; takes no arguments.

  • Existing session state and current-stage policy: get_qa_orchestration(run_id).

  • Create a session with these settings: start_qa_orchestration.

Reads the loaded in-memory snapshot, not the current policy file; restart the server connection after file changes. No session is created and no provider is contacted; the result does not verify which model the host executed.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

Output Schema

ParametersJSON Schema
NameRequiredDescription
modeYes
providerNo
deep_modelNo
triage_modelNo
primary_modelNo
deep_reasoningNo
synthesis_modelNo
triage_reasoningNo
primary_reasoningNo
synthesis_reasoningNo

TDQS

A4.8/5.0
Behavior5/5

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

Beyond the readOnly/idempotent/openWorld annotations, it discloses that the read comes from a loaded in-memory snapshot rather than the current policy file, that a server connection restart is needed after file changes, and that no session is created and no provider is contacted. It also warns the result does not verify which model the host executed, which prevents an important false conclusion.

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

Conciseness4/5

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

Front-loaded with the core purpose, then mode semantics, then routing and caveats in a scannable bulleted form. It is slightly longer than strictly necessary (the mode paragraph could be tighter), but every sentence carries distinct information.

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

Completeness5/5

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

An output schema exists, so return structure need not be restated, and the description instead supplies the interpretive key ('host_default' vs 'configured') and the freshness caveat. For a no-argument read tool this leaves an agent with everything needed to call it and correctly interpret the result.

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?

The tool takes zero parameters, so the baseline is 4; the description correctly states 'takes no arguments,' removing any ambiguity about an implicit run_id. There is no parameter syntax to add meaning to.

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

Purpose5/5

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

States a specific verb and resource ('Read the server-wide model policy used to create new sessions') and immediately explains the two possible modes of what is returned. It distinguishes itself from siblings by pointing to get_qa_orchestration for session state and start_qa_orchestration for creating sessions.

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 conditions for use ('Use to inspect the policy loaded for new sessions; takes no arguments') and names two alternatives with the conditions that select them. Nothing about when to reach for this tool versus its siblings is left to inference.

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

list_qa_orchestrationsList retained QA sessionsA
Read-onlyIdempotent

List non-expired QA session identifiers and brief metadata, including bound review identity.

Recover a lost run_id by matching task type, route, and stage; confirm if several match. Call get_qa_orchestration(run_id) for full state and next action, or get_qa_orchestration_model_policy() for server policy. Takes no arguments.

  • Includes retained terminal sessions; expired or evicted sessions are unrecoverable.

  • Sorts by expires_at descending, then run_id descending; empty means none are retained.

  • After restart, unfinished sessions and finalized sessions with saved review artifacts restored from configured local storage appear.

  • Reading does not extend session TTL.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

Output Schema

ParametersJSON Schema
NameRequiredDescription
sessionsYes
read_onlyNo
host_owns_decisionsNo

TDQS

A4.9/5.0
Behavior5/5

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

Annotations only cover the safety profile (readOnly, idempotent, closed-world). The description adds genuinely non-obvious traits: retention scope (terminal sessions retained, expired/evicted unrecoverable), deterministic sort order, restart/storage restoration behavior, and the fact that reading does not extend TTL. This is exactly the behavioral context an agent cannot get from structured fields.

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

Conciseness5/5

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

Front-loaded with the primary purpose in sentence one, followed by usage and alternatives, then three tight bullets for retention, ordering, and restart semantics. No sentence is redundant and each bullet carries distinct operational value.

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?

An output schema exists, so return-shape explanation is unnecessary. Between purpose, routing to alternatives, retention/expiry rules, sort order, and TTL behavior, the description covers everything an agent needs to decide to call this and interpret the results.

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?

The tool takes zero parameters, so per the rubric the baseline is 4. The description correctly notes 'Takes no arguments,' which is fully adequate; there is nothing further to specify.

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

Purpose5/5

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

States a specific verb and resource ('List non-expired QA session identifiers and brief metadata') and immediately scopes it against the sibling that returns detail ('Call get_qa_orchestration(run_id) for full state'). An agent can distinguish this list tool from get_qa_orchestration and get_qa_orchestration_model_policy without opening any 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 an explicit use case ('Recover a lost run_id by matching task type, route, and stage; confirm if several match') and routes to two named alternatives for different needs (full state, server policy). It also states the calling constraint ('Takes no arguments'), leaving nothing to inference.

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

prepare_qa_orchestrationRead specialist review checklistA
Read-onlyIdempotent

Return one specialist's fixed ReviewRoute checklist: profile, display_name, focus, required_sections, constraints, and escalation_signals.

Use before reviewing one scoped concern when no session is active, or to recover a checklist when the triage response is unavailable; no session is required.

  • Standalone review: use get_qa_orchestration_catalog() to match profile focus to changed files and confirmed stack.

  • Session primary_review: use selected_review_routes returned by the successful triage advance call. It contains every selected checklist and execution_group; do not make a separate preparation call for the same session.

This local lookup reads bundled definitions, without executing reviews or calling models. Use advance_qa_orchestration to apply a session route. Results depend only on agent_profile. Invalid values fail input validation; retry with a listed enum value.

ParametersJSON Schema
NameRequiredDescriptionDefault
agent_profileYesChoose one fixed specialist profile: code_explorer maps execution and evidence; code_reviewer reviews implementation; pr_test_analyzer reviews coverage; security_reviewer and silent_failure_hunter target security and silent failures; ruby_reviewer, python_reviewer, typescript_reviewer, react_reviewer, and mobile_reviewer target their named stacks. Choose from changed files and confirmed stack.

Output Schema

ParametersJSON Schema
NameRequiredDescription
focusYesThe profile's review boundary and primary responsibility.
profileYes
read_onlyNo
constraintsYesShared limits for this read-only review profile.
display_nameYes
required_sectionsYesProfile-specific output sections; use these instead of a generic template.
escalation_signalsNoConditions 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.
host_owns_decisionsNo

TDQS

A4.4/5.0
Behavior4/5

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

Annotations already cover readOnly/idempotent/openWorld, but the description adds real context beyond them: it is a local lookup of bundled definitions that executes no reviews or models, needs no session, is deterministic on agent_profile, and fails input validation on invalid enums. It does not, however, describe anything about the returned checklist structure beyond naming the fields, and no output schema detail is referenced.

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

Conciseness4/5

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

Front-loads the core purpose, then uses tight bullets for the two usage scenarios before closing with two short operational notes. Slightly long with some restatement of the session distinction, but every section carries information.

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

Completeness5/5

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

With a single enum parameter, full schema coverage, existing annotations, and an output schema covering return values, the description supplies everything else needed: usage routing, no-session behavior, local-only execution, and error recovery. Nothing an agent needs to invoke it correctly is missing.

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

Parameters3/5

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

Schema description coverage is 100% and the enum values are already fully documented in the schema itself, so the baseline is 3. The description adds only marginal value: 'Results depend only on agent_profile' and the retry-with-listed-enum guidance, which is behavioral rather than semantic.

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 concrete verb and resource: 'Return one specialist's fixed ReviewRoute checklist', then names the exact payload fields (profile, display_name, focus, required_sections, constraints, escalation_signals). It is clearly distinguishable from siblings like advance_qa_orchestration, get_qa_orchestration_catalog, and prepare_qa_orchestration_bundle.

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-to-use branches: standalone review uses get_qa_orchestration_catalog to match profile to changed files, while session primary_review should use selected_review_routes from triage instead. It also states the exclusion plainly – 'do not make a separate preparation call for the same session' – and notes no session is required.

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

prepare_qa_orchestration_bundleRead bundle review checklistsA
Read-onlyIdempotent

Return every fixed ReviewRoute checklist and execution wave for one bundle.

Use for standalone bundle lookup or to recover checklists when the successful triage response is unavailable. In a session, the triage advance response includes the selected checklists and execution_groups. Run execution_groups in order; profiles in one group are independent and may run concurrently when the host supports it. After every profile in the group finishes, record the complete group once in bundle order with completed_profiles. Older hosts may continue using completed_profile one at a time. For a single profile, use prepare_qa_orchestration. This stateless lookup reads bundled definitions; it does not execute reviews, create a session, or call models.

ParametersJSON Schema
NameRequiredDescriptionDefault
bundleYesSelected fixed multi-profile bundle. The tool returns every checklist and its ordered execution_groups. Profiles in the same group may run concurrently; for one profile, use prepare_qa_orchestration.

Output Schema

ParametersJSON Schema
NameRequiredDescription
bundleYesFixed bundle whose profile checklists are returned.
routesYesDetailed checklists in the selected route's declared profile order. Each route is a fixed, read-only checklist; it does not execute a review.
execution_groupsYesOrdered 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.

TDQS

A4.3/5.0
Behavior4/5

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

Annotations already declare readOnly/idempotent/no-open-world, but the description adds operational semantics: stateless lookup, no session creation, no model calls, and the ordering/concurrency rules for execution_groups. It does not cover error behavior or pagination, but the added workflow context is substantial.

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

Conciseness3/5

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

Purpose and usage are front-loaded, but the middle block about recording completed groups with completed_profiles vs completed_profile describes the advance tool's workflow rather than this read tool, which is scope bleed in an otherwise tight definition.

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?

With an output schema present, the description need not explain return values; it covers purpose, usage conditions, the alternative tool, and execution semantics. Nothing an agent needs to call this correctly is missing.

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

Parameters3/5

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

Schema description coverage is 100% with an enum, so the schema already fully documents the single 'bundle' parameter. The description's note that it returns checklists and ordered execution_groups adds only marginal meaning beyond the enum list.

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

Purpose5/5

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

States a specific verb and resource: 'Return every fixed ReviewRoute checklist and execution wave for one bundle.' It explicitly distinguishes itself from prepare_qa_orchestration (single profile) and implicitly from advance/triage flows, so an agent can route without opening schemas.

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 concrete when-to-use conditions ('standalone bundle lookup or to recover checklists when the successful triage response is unavailable') and names the alternative for the single-profile case. Nothing about selection is left to inference.

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

renew_qa_orchestrationRenew active QA session leaseA

Extend an active session's TTL while host review work is running.

Renew before expires_at. This changes only the lease, without advancing a profile or workflow revision. Active primary/deep/synthesis and awaiting-host-outcome sessions may be renewed; terminal or expired sessions cannot be revived. No worker or model is launched.

ParametersJSON 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.
expected_revisionNoOptional current workflow revision; stale renewals fail.

Output Schema

ParametersJSON Schema
NameRequiredDescription
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.

TDQS

A4.2/5.0
Behavior4/5

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

Annotations already declare the write/idempotency/safety profile (readOnlyHint=false, idempotentHint=false, destructiveHint=false), so the bar is lower; the description still adds real behavioral context: no worker or model is launched, the lease is the only thing mutated, and terminal/expired sessions cannot be revived. It doesn't state what happens on failure of a stale renewal beyond what the schema notes.

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

Conciseness4/5

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

Front-loads the core action in the first sentence and layers constraints after it; every sentence carries information (timing, scope of mutation, eligibility, side-effect absence). Slightly dense but no filler.

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?

An output schema exists, so return values need not be explained. Given the tool's complexity, the description covers timing, mutation scope, preconditions, eligibility, and the absence of side effects — everything an agent needs to invoke it correctly.

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

Parameters3/5

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

Schema description coverage is 100% (run_id format and expected_revision semantics fully documented in the schema), so the baseline is 3. The description adds nothing about parameter semantics beyond the schema, but does not need to.

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?

Specific verb (extend/renew) on a specific resource (active session's TTL/lease), with the scope of the change bounded ('changes only the lease, without advancing a profile or workflow revision'). This distinguishes it cleanly from sibling advance_qa_orchestration and finish_qa_orchestration without opening their schemas.

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

Usage Guidelines4/5

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

States the trigger condition ('while host review work is running', 'renew before expires_at') and enumerates the eligible states (active primary/deep/synthesis, awaiting-host-outcome) versus the ineligible ones (terminal or expired). It does not explicitly name a sibling alternative, but it implicitly routes the agent away from advance.

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

start_qa_orchestrationA

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

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

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

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

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

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

Output Schema

ParametersJSON Schema
NameRequiredDescription
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.

TDQS

A4.8/5.0
Behavior5/5

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

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

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

Conciseness4/5

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

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

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

Completeness5/5

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

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

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

Parameters4/5

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

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

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

Purpose5/5

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

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

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

Usage Guidelines5/5

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

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

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

Tool Schema Changelog

Recent tool additions, removals, and schema changes observed during successful MCP inspections.

  1. 5 tool updatesv0.2.11
    • Changedadvance_qa_orchestration8 fields changed
      • 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"
        +  }
        +]
    • Changedfinish_qa_orchestration8 fields changed
      • changedInput 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"
        +  }
        +]
      • 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"
        +  }
        +]
    • Changedget_qa_orchestration7 fields changed
      • 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"
        +  }
        +]
    • Changedrenew_qa_orchestration7 fields changed
      • 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"
        +  }
        +]
    • Changedstart_qa_orchestration8 fields changed
      • changedInput schema / properties / review_context / anyOf
        Previous value: -[
        -  {
        -    "additionalProperties": false,
        -    "description": "Immutable identifiers for the exact source and evidence packet reviewed.",
        -    "properties": {
        -      "base_sha": {
        -        "pattern": "(?i)^(?:[a-f0-9]{40}|[a-f0-9]{64})$",
        -        "type": "string"
        -      },
        -      "changed_files": {
        -        "items": {
        -          "maxLength": 1024,
        -          "minLength": 1,
        -          "type": "string"
        -        },
        -        "maxItems": 500,
        -        "minItems": 1,
        -        "type": "array"
        -      },
        -      "diff_sha256": {
        -        "pattern": "(?i)^[a-f0-9]{64}$",
        -        "type": "string"
        -      },
        -      "evidence_packet_sha256": {
        -        "pattern": "(?i)^[a-f0-9]{64}$",
        -        "type": "string"
        -      },
        -      "evidence_refs": {
        -        "items": {
        -          "maxLength": 128,
        -          "minLength": 1,
        -          "pattern": "^[A-Za-z0-9][A-Za-z0-9._:/-]*$",
        -          "type": "string"
        -        },
        -        "maxItems": 1000,
        -        "minItems": 1,
        -        "type": "array"
        -      },
        -      "evidence_registry": {
        -        "default": [],
        -        "description": "Optional complete ref-to-source registry with revision, coordinates and hashes.",
        -        "items": {
        -          "additionalProperties": false,
        -          "description": "Metadata for one evidence item; raw content remains with the host.",
        -          "properties": {
        -            "end_line": {
        -              "anyOf": [
        -                {
        -                  "minimum": 1,
        -                  "type": "integer"
        -                },
        -                {
        -                  "type": "null"
        -                }
        -              ],
        -              "default": null
        -            },
        -            "evidence_ref": {
        -              "maxLength": 128,
        -              "minLength": 1,
        -              "pattern": "^[A-Za-z0-9][A-Za-z0-9._:/-]*$",
        -              "type": "string"
        -            },
        -            "kind": {
        -              "enum": [
        -                "source",
        -                "diff",
        -                "requirement",
        -                "runtime",
        -                "other"
        -              ],
        -              "type": "string"
        -            },
        -            "locator": {
        -              "anyOf": [
        -                {
        -                  "maxLength": 1024,
        -                  "minLength": 1,
        -                  "type": "string"
        -                },
        -                {
        -                  "type": "null"
        -                }
        -              ],
        -              "default": null
        -            },
        -            "path": {
        -              "anyOf": [
        -                {
        -                  "maxLength": 1024,
        -                  "minLength": 1,
        -                  "type": "string"
        -                },
        -                {
        -                  "type": "null"
        -                }
        -              ],
        -              "default": null
        -            },
        -            "revision": {
        -              "anyOf": [
        -                {
        -                  "pattern": "(?i)^(?:[a-f0-9]{40}|[a-f0-9]{64})$",
        -                  "type": "string"
        -                },
        -                {
        -                  "type": "null"
        -                }
        -              ],
        -              "default": null
        -            },
        -            "sha256": {
        -              "pattern": "(?i)^[a-f0-9]{64}$",
        -              "type": "string"
        -            },
        -            "start_line": {
        -              "anyOf": [
        -                {
        -                  "minimum": 1,
        -                  "type": "integer"
        -                },
        -                {
        -                  "type": "null"
        -                }
        -              ],
        -              "default": null
        -            }
        -          },
        -          "required": [
        -            "evidence_ref",
        -            "kind",
        -            "sha256"
        -          ],
        -          "type": "object"
        -        },
        -        "maxItems": 1000,
        -        "type": "array"
        -      },
        -      "head_sha": {
        -        "pattern": "(?i)^(?:[a-f0-9]{40}|[a-f0-9]{64})$",
        -        "type": "string"
        -      },
        -      "repository": {
        -        "maxLength": 512,
        -        "minLength": 1,
        -        "type": "string"
        -      }
        -    },
        -    "required": [
        -      "repository",
        -      "base_sha",
        -      "head_sha",
        -      "diff_sha256",
        -      "evidence_packet_sha256",
        -      "changed_files",
        -      "evidence_refs"
        -    ],
        -    "type": "object"
        -  },
        -  {
        -    "type": "null"
        -  }
        -]New value: +[
        +  {
        +    "additionalProperties": false,
        +    "description": "Immutable identifiers for the exact source and evidence packet reviewed.",
        +    "properties": {
        +      "base_sha": {
        +        "pattern": "(?i)^(?:[a-f0-9]{40}|[a-f0-9]{64})$",
        +        "type": "string"
        +      },
        +      "changed_files": {
        +        "items": {
        +          "maxLength": 1024,
        +          "minLength": 1,
        +          "type": "string"
        +        },
        +        "maxItems": 500,
        +        "minItems": 1,
        +        "type": "array"
        +      },
        +      "diff_sha256": {
        +        "pattern": "(?i)^[a-f0-9]{64}$",
        +        "type": "string"
        +      },
        +      "evidence_packet_sha256": {
        +        "pattern": "(?i)^[a-f0-9]{64}$",
        +        "type": "string"
        +      },
        +      "evidence_refs": {
        +        "items": {
        +          "maxLength": 128,
        +          "minLength": 1,
        +          "pattern": "^[A-Za-z0-9][A-Za-z0-9._:/-]*$",
        +          "type": "string"
        +        },
        +        "maxItems": 1000,
        +        "minItems": 1,
        +        "type": "array"
        +      },
        +      "evidence_registry": {
        +        "default": [],
        +        "description": "Optional complete ref-to-source registry with revision, coordinates and hashes.",
        +        "items": {
        +          "additionalProperties": false,
        +          "description": "Metadata for one evidence item; raw content remains with the host.",
        +          "properties": {
        +            "end_line": {
        +              "anyOf": [
        +                {
        +                  "minimum": 1,
        +                  "type": "integer"
        +                },
        +                {
        +                  "type": "null"
        +                }
        +              ],
        +              "default": null
        +            },
        +            "evidence_ref": {
        +              "maxLength": 128,
        +              "minLength": 1,
        +              "pattern": "^[A-Za-z0-9][A-Za-z0-9._:/-]*$",
        +              "type": "string"
        +            },
        +            "kind": {
        +              "enum": [
        +                "source",
        +                "diff",
        +                "requirement",
        +                "runtime",
        +                "other"
        +              ],
        +              "type": "string"
        +            },
        +            "locator": {
        +              "anyOf": [
        +                {
        +                  "maxLength": 1024,
        +                  "minLength": 1,
        +                  "type": "string"
        +                },
        +                {
        +                  "type": "null"
        +                }
        +              ],
        +              "default": null
        +            },
        +            "path": {
        +              "anyOf": [
        +                {
        +                  "maxLength": 1024,
        +                  "minLength": 1,
        +                  "type": "string"
        +                },
        +                {
        +                  "type": "null"
        +                }
        +              ],
        +              "default": null
        +            },
        +            "revision": {
        +              "anyOf": [
        +                {
        +                  "pattern": "(?i)^(?:[a-f0-9]{40}|[a-f0-9]{64})$",
        +                  "type": "string"
        +                },
        +                {
        +                  "type": "null"
        +                }
        +              ],
        +              "default": null
        +            },
        +            "sha256": {
        +              "pattern": "(?i)^[a-f0-9]{64}$",
        +              "type": "string"
        +            },
        +            "start_line": {
        +              "anyOf": [
        +                {
        +                  "minimum": 1,
        +                  "type": "integer"
        +                },
        +                {
        +                  "type": "null"
        +                }
        +              ],
        +              "default": null
        +            }
        +          },
        +          "required": [
        +            "evidence_ref",
        +            "kind",
        +            "sha256"
        +          ],
        +          "type": "object"
        +        },
        +        "maxItems": 1000,
        +        "type": "array"
        +      },
        +      "head_sha": {
        +        "pattern": "(?i)^(?:[a-f0-9]{40}|[a-f0-9]{64})$",
        +        "type": "string"
        +      },
        +      "repository": {
        +        "maxLength": 512,
        +        "minLength": 1,
        +        "type": "string"
        +      },
        +      "review_rules": {
        +        "anyOf": [
        +          {
        +            "additionalProperties": false,
        +            "properties": {
        +              "rules": {
        +                "default": [],
        +                "items": {
        +                  "additionalProperties": false,
        +                  "properties": {
        +                    "condition": {
        +                      "maxLength": 2000,
        +                      "minLength": 1,
        +                      "type": "string"
        +                    },
        +                    "kind": {
        +                      "enum": [
        +                        "raise",
        +                        "guard"
        +                      ],
        +                      "type": "string"
        +                    },
        +                    "paths": {
        +                      "items": {
        +                        "type": "string"
        +                      },
        +                      "maxItems": 32,
        +                      "minItems": 1,
        +                      "type": "array"
        +                    },
        +                    "rationale": {
        +                      "maxLength": 2000,
        +                      "minLength": 1,
        +                      "type": "string"
        +                    },
        +                    "rule_id": {
        +                      "pattern": "^[A-Za-z0-9][A-Za-z0-9._-]{0,127}$",
        +                      "type": "string"
        +                    },
        +                    "text": {
        +                      "maxLength": 2000,
        +                      "minLength": 1,
        +                      "type": "string"
        +                    }
        +                  },
        +                  "required": [
        +                    "rule_id",
        +                    "kind",
        +                    "paths",
        +                    "condition",
        +                    "text",
        +                    "rationale"
        +                  ],
        +                  "type": "object"
        +                },
        +                "maxItems": 100,
        +                "type": "array"
        +              },
        +              "schema_version": {
        +                "const": 1,
        +                "default": 1,
        +                "type": "integer"
        +              }
        +            },
        +            "type": "object"
        +          },
        +          {
        +            "type": "null"
        +          }
        +        ],
        +        "default": null
        +      }
        +    },
        +    "required": [
        +      "repository",
        +      "base_sha",
        +      "head_sha",
        +      "diff_sha256",
        +      "evidence_packet_sha256",
        +      "changed_files",
        +      "evidence_refs"
        +    ],
        +    "type": "object"
        +  },
        +  {
        +    "type": "null"
        +  }
        +]
      • changedOutput schema / properties / final_review_report / anyOf
        Previous value: -[
        -  {
        -    "additionalProperties": false,
        -    "description": "Structured synthesis stored with a review-bound orchestration session.",
        -    "properties": {
        -      "candidate_decisions": {
        -        "default": [],
        -        "description": "One host decision per submitted candidate; absent on legacy saved reports.",
        -        "items": {
        -          "additionalProperties": false,
        -          "description": "The host's disposition of one profile-local candidate.",
        -          "properties": {
        -            "evidence_refs": {
        -              "items": {
        -                "maxLength": 128,
        -                "minLength": 1,
        -                "pattern": "^[A-Za-z0-9][A-Za-z0-9._:/-]*$",
        -                "type": "string"
        -              },
        -              "maxItems": 32,
        -              "minItems": 1,
        -              "type": "array"
        -            },
        -            "final_finding_id": {
        -              "anyOf": [
        -                {
        -                  "pattern": "^F-[0-9]{2,}$",
        -                  "type": "string"
        -                },
        -                {
        -                  "type": "null"
        -                }
        -              ],
        -              "default": null
        -            },
        -            "rationale": {
        -              "maxLength": 2000,
        -              "minLength": 1,
        -              "type": "string"
        -            },
        -            "source": {
        -              "additionalProperties": false,
        -              "description": "A profile-local candidate that contributed to one synthesized finding.",
        -              "properties": {
        -                "candidate_id": {
        -                  "pattern": "^F-[0-9]{2,}$",
        -                  "type": "string"
        -                },
        -                "profile": {
        -                  "enum": [
        -                    "pr_test_analyzer",
        -                    "code_reviewer",
        -                    "security_reviewer",
        -                    "silent_failure_hunter",
        -                    "code_explorer",
        -                    "typescript_reviewer",
        -                    "react_reviewer",
        -                    "ruby_reviewer",
        -                    "python_reviewer",
        -                    "mobile_reviewer"
        -                  ],
        -                  "type": "string"
        -                }
        -              },
        -              "required": [
        -                "profile",
        -                "candidate_id"
        -              ],
        -              "type": "object"
        -            },
        -            "verdict": {
        -              "enum": [
        -                "confirmed",
        -                "rejected",
        -                "duplicate",
        -                "unverified"
        -              ],
        -              "type": "string"
        -            }
        -          },
        -          "required": [
        -            "source",
        -            "verdict",
        -            "rationale",
        -            "evidence_refs"
        -          ],
        -          "type": "object"
        -        },
        -        "maxItems": 1000,
        -        "type": "array"
        -      },
        -      "coverage_gaps": {
        -        "default": [],
        -        "items": {
        -          "additionalProperties": false,
        -          "properties": {
        -            "evidence_refs": {
        -              "default": [],
        -              "items": {
        -                "maxLength": 128,
        -                "minLength": 1,
        -                "pattern": "^[A-Za-z0-9][A-Za-z0-9._:/-]*$",
        -                "type": "string"
        -              },
        -              "maxItems": 32,
        -              "type": "array"
        -            },
        -            "text": {
        -              "maxLength": 2000,
        -              "minLength": 1,
        -              "type": "string"
        -            }
        -          },
        -          "required": [
        -            "text"
        -          ],
        -          "type": "object"
        -        },
        -        "maxItems": 100,
        -        "type": "array"
        -      },
        -      "finding_candidates": {
        -        "default": [],
        -        "items": {
        -          "additionalProperties": false,
        -          "properties": {
        -            "affected_area": {
        -              "anyOf": [
        -                {
        -                  "maxLength": 256,
        -                  "type": "string"
        -                },
        -                {
        -                  "type": "null"
        -                }
        -              ],
        -              "default": null,
        -              "description": "Affected user flow or system area, when supported by the evidence."
        -            },
        -            "candidate_id": {
        -              "pattern": "^F-[0-9]{2,}$",
        -              "type": "string"
        -            },
        -            "confidence": {
        -              "enum": [
        -                "high",
        -                "medium",
        -                "low"
        -              ],
        -              "type": "string"
        -            },
        -            "description": {
        -              "maxLength": 5000,
        -              "minLength": 1,
        -              "type": "string"
        -            },
        -            "evidence_refs": {
        -              "items": {
        -                "maxLength": 128,
        -                "minLength": 1,
        -                "pattern": "^[A-Za-z0-9][A-Za-z0-9._:/-]*$",
        -                "type": "string"
        -              },
        -              "maxItems": 32,
        -              "minItems": 1,
        -              "type": "array"
        -            },
        -            "impact": {
        -              "anyOf": [
        -                {
        -                  "maxLength": 2000,
        -                  "type": "string"
        -                },
        -                {
        -                  "type": "null"
        -                }
        -              ],
        -              "default": null,
        -              "description": "Concrete effect on users or contracts; severity remains host-owned."
        -            },
        -            "severity": {
        -              "anyOf": [
        -                {
        -                  "enum": [
        -                    "high",
        -                    "medium",
        -                    "low"
        -                  ],
        -                  "type": "string"
        -                },
        -                {
        -                  "type": "null"
        -                }
        -              ],
        -              "default": null,
        -              "description": "Impact severity selected by the host for a confirmed finding."
        -            },
        -            "source_candidates": {
        -              "default": [],
        -              "description": "Required for new final reports; empty only on reports persisted before source linkage.",
        -              "items": {
        -                "additionalProperties": false,
        -                "description": "A profile-local candidate that contributed to one synthesized finding.",
        -                "properties": {
        -                  "candidate_id": {
        -                    "pattern": "^F-[0-9]{2,}$",
        -                    "type": "string"
        -                  },
        -                  "profile": {
        -                    "enum": [
        -                      "pr_test_analyzer",
        -                      "code_reviewer",
        -                      "security_reviewer",
        -                      "silent_failure_hunter",
        -                      "code_explorer",
        -                      "typescript_reviewer",
        -                      "react_reviewer",
        -                      "ruby_reviewer",
        -                      "python_reviewer",
        -                      "mobile_reviewer"
        -                    ],
        -                    "type": "string"
        -                  }
        -                },
        -                "required": [
        -                  "profile",
        -                  "candidate_id"
        -                ],
        -                "type": "object"
        -              },
        -              "type": "array"
        -            },
        -            "source_locations": {
        -              "default": [],
        -              "description": "Precise source locations supporting this candidate when available.",
        -              "items": {
        -                "additionalProperties": false,
        -                "description": "A stable source locator for a finding candidate.",
        -                "properties": {
        -                  "end_line": {
        -                    "anyOf": [
        -                      {
        -                        "minimum": 1,
        -                        "type": "integer"
        -                      },
        -                      {
        -                        "type": "null"
        -                      }
        -                    ],
        -                    "default": null
        -                  },
        -                  "path": {
        -                    "maxLength": 1024,
        -                    "minLength": 1,
        -                    "type": "string"
        -                  },
        -                  "start_line": {
        -                    "minimum": 1,
        -                    "type": "integer"
        -                  }
        -                },
        -                "required": [
        -                  "path",
        -                  "start_line"
        -                ],
        -                "type": "object"
        -              },
        -              "maxItems": 20,
        -              "type": "array"
        -            },
        -            "source_profiles": {
        -              "items": {
        -                "enum": [
        -                  "pr_test_analyzer",
        -                  "code_reviewer",
        -                  "security_reviewer",
        -                  "silent_failure_hunter",
        -                  "code_explorer",
        -                  "typescript_reviewer",
        -                  "react_reviewer",
        -                  "ruby_reviewer",
        -                  "python_reviewer",
        -                  "mobile_reviewer"
        -                ],
        -                "type": "string"
        -              },
        -              "minItems": 1,
        -              "type": "array"
        -            },
        -            "title": {
        -              "maxLength": 256,
        -              "minLength": 1,
        -              "type": "string"
        -            },
        -            "verification_gap": {
        -              "maxLength": 2000,
        -              "minLength": 1,
        -              "type": "string"
        -            }
        -          },
        -          "required": [
        -            "candidate_id",
        -            "title",
        -            "description",
        -            "confidence",
        -            "verification_gap",
        -            "evidence_refs",
        -            "source_profiles"
        -          ],
        -          "type": "object"
        -        },
        -        "maxItems": 100,
        -        "type": "array"
        -      },
        -      "profiles_reviewed": {
        -        "items": {
        -          "enum": [
        -            "pr_test_analyzer",
        -            "code_reviewer",
        -            "security_reviewer",
        -            "silent_failure_hunter",
        -            "code_explorer",
        -            "typescript_reviewer",
        -            "react_reviewer",
        -            "ruby_reviewer",
        -            "python_reviewer",
        -            "mobile_reviewer"
        -          ],
        -          "type": "string"
        -        },
        -        "minItems": 1,
        -        "type": "array"
        -      },
        -      "summary": {
        -        "maxLength": 5000,
        -        "minLength": 1,
        -        "type": "string"
        -      },
        -      "unverified": {
        -        "default": [],
        -        "items": {
        -          "additionalProperties": false,
        -          "properties": {
        -            "evidence_refs": {
        -              "default": [],
        -              "items": {
        -                "maxLength": 128,
        -                "minLength": 1,
        -                "pattern": "^[A-Za-z0-9][A-Za-z0-9._:/-]*$",
        -                "type": "string"
        -              },
        -              "maxItems": 32,
        -              "type": "array"
        -            },
        -            "text": {
        -              "maxLength": 2000,
        -              "minLength": 1,
        -              "type": "string"
        -            }
        -          },
        -          "required": [
        -            "text"
        -          ],
        -          "type": "object"
        -        },
        -        "maxItems": 100,
        -        "type": "array"
        -      }
        -    },
        -    "required": [
        -      "summary",
        -      "profiles_reviewed"
        -    ],
        -    "type": "object"
        -  },
        -  {
        -    "type": "null"
        -  }
        -]New value: +[
        +  {
        +    "additionalProperties": false,
        +    "description": "Structured synthesis stored with a review-bound orchestration session.",
        +    "properties": {
        +      "candidate_decisions": {
        +        "default": [],
        +        "description": "One host decision per submitted candidate; absent on legacy saved reports.",
        +        "items": {
        +          "additionalProperties": false,
        +          "description": "The host's disposition of one profile-local candidate.",
        +          "properties": {
        +            "evidence_refs": {
        +              "items": {
        +                "maxLength": 128,
        +                "minLength": 1,
        +                "pattern": "^[A-Za-z0-9][A-Za-z0-9._:/-]*$",
        +                "type": "string"
        +              },
        +              "maxItems": 32,
        +              "minItems": 1,
        +              "type": "array"
        +            },
        +            "final_finding_id": {
        +              "anyOf": [
        +                {
        +                  "pattern": "^F-[0-9]{2,}$",
        +                  "type": "string"
        +                },
        +                {
        +                  "type": "null"
        +                }
        +              ],
        +              "default": null
        +            },
        +            "rationale": {
        +              "maxLength": 2000,
        +              "minLength": 1,
        +              "type": "string"
        +            },
        +            "refutation": {
        +              "anyOf": [
        +                {
        +                  "additionalProperties": false,
        +                  "description": "Host's evidence-backed assessment, not a vote or proof of another agent's execution.",
        +                  "properties": {
        +                    "candidate_sha256": {
        +                      "pattern": "(?i)^[a-f0-9]{64}$",
        +                      "type": "string"
        +                    },
        +                    "context_sha256": {
        +                      "pattern": "(?i)^[a-f0-9]{64}$",
        +                      "type": "string"
        +                    },
        +                    "evidence_refs": {
        +                      "items": {
        +                        "maxLength": 128,
        +                        "minLength": 1,
        +                        "pattern": "^[A-Za-z0-9][A-Za-z0-9._:/-]*$",
        +                        "type": "string"
        +                      },
        +                      "maxItems": 32,
        +                      "minItems": 1,
        +                      "type": "array"
        +                    },
        +                    "rationale": {
        +                      "maxLength": 2000,
        +                      "minLength": 1,
        +                      "type": "string"
        +                    },
        +                    "status": {
        +                      "enum": [
        +                        "refuted",
        +                        "not_refuted",
        +                        "unverified"
        +                      ],
        +                      "type": "string"
        +                    }
        +                  },
        +                  "required": [
        +                    "context_sha256",
        +                    "candidate_sha256",
        +                    "status",
        +                    "rationale",
        +                    "evidence_refs"
        +                  ],
        +                  "type": "object"
        +                },
        +                {
        +                  "type": "null"
        +                }
        +              ],
        +              "default": null
        +            },
        +            "source": {
        +              "additionalProperties": false,
        +              "description": "A profile-local candidate that contributed to one synthesized finding.",
        +              "properties": {
        +                "candidate_id": {
        +                  "pattern": "^F-[0-9]{2,}$",
        +                  "type": "string"
        +                },
        +                "profile": {
        +                  "enum": [
        +                    "pr_test_analyzer",
        +                    "code_reviewer",
        +                    "security_reviewer",
        +                    "silent_failure_hunter",
        +                    "code_explorer",
        +                    "typescript_reviewer",
        +                    "react_reviewer",
        +                    "ruby_reviewer",
        +                    "python_reviewer",
        +                    "mobile_reviewer"
        +                  ],
        +                  "type": "string"
        +                }
        +              },
        +              "required": [
        +                "profile",
        +                "candidate_id"
        +              ],
        +              "type": "object"
        +            },
        +            "verdict": {
        +              "enum": [
        +                "confirmed",
        +                "rejected",
        +                "duplicate",
        +                "unverified"
        +              ],
        +              "type": "string"
        +            }
        +          },
        +          "required": [
        +            "source",
        +            "verdict",
        +            "rationale",
        +            "evidence_refs"
        +          ],
        +          "type": "object"
        +        },
        +        "maxItems": 1000,
        +        "type": "array"
        +      },
        +      "coverage_gaps": {
        +        "default": [],
        +        "items": {
        +          "additionalProperties": false,
        +          "properties": {
        +            "evidence_refs": {
        +              "default": [],
        +              "items": {
        +                "maxLength": 128,
        +                "minLength": 1,
        +                "pattern": "^[A-Za-z0-9][A-Za-z0-9._:/-]*$",
        +                "type": "string"
        +              },
        +              "maxItems": 32,
        +              "type": "array"
        +            },
        +            "text": {
        +              "maxLength": 2000,
        +              "minLength": 1,
        +              "type": "string"
        +            }
        +          },
        +          "required": [
        +            "text"
        +          ],
        +          "type": "object"
        +        },
        +        "maxItems": 100,
        +        "type": "array"
        +      },
        +      "finding_candidates": {
        +        "default": [],
        +        "items": {
        +          "additionalProperties": false,
        +          "properties": {
        +            "affected_area": {
        +              "anyOf": [
        +                {
        +                  "maxLength": 256,
        +                  "type": "string"
        +                },
        +                {
        +                  "type": "null"
        +                }
        +              ],
        +              "default": null,
        +              "description": "Affected user flow or system area, when supported by the evidence."
        +            },
        +            "candidate_id": {
        +              "pattern": "^F-[0-9]{2,}$",
        +              "type": "string"
        +            },
        +            "confidence": {
        +              "enum": [
        +                "high",
        +                "medium",
        +                "low"
        +              ],
        +              "type": "string"
        +            },
        +            "description": {
        +              "maxLength": 5000,
        +              "minLength": 1,
        +              "type": "string"
        +            },
        +            "evidence_refs": {
        +              "items": {
        +                "maxLength": 128,
        +                "minLength": 1,
        +                "pattern": "^[A-Za-z0-9][A-Za-z0-9._:/-]*$",
        +                "type": "string"
        +              },
        +              "maxItems": 32,
        +              "minItems": 1,
        +              "type": "array"
        +            },
        +            "failure_condition": {
        +              "anyOf": [
        +                {
        +                  "maxLength": 2000,
        +                  "minLength": 1,
        +                  "type": "string"
        +                },
        +                {
        +                  "type": "null"
        +                }
        +              ],
        +              "default": null,
        +              "description": "Specific preconditions that make the alleged failure occur."
        +            },
        +            "flip_condition": {
        +              "anyOf": [
        +                {
        +                  "maxLength": 2000,
        +                  "minLength": 1,
        +                  "type": "string"
        +                },
        +                {
        +                  "type": "null"
        +                }
        +              ],
        +              "default": null,
        +              "description": "Concrete source/contract evidence that would refute this candidate."
        +            },
        +            "impact": {
        +              "anyOf": [
        +                {
        +                  "maxLength": 2000,
        +                  "type": "string"
        +                },
        +                {
        +                  "type": "null"
        +                }
        +              ],
        +              "default": null,
        +              "description": "Concrete effect on users or contracts; severity remains host-owned."
        +            },
        +            "severity": {
        +              "anyOf": [
        +                {
        +                  "enum": [
        +                    "high",
        +                    "medium",
        +                    "low"
        +                  ],
        +                  "type": "string"
        +                },
        +                {
        +                  "type": "null"
        +                }
        +              ],
        +              "default": null,
        +              "description": "Impact severity selected by the host for a confirmed finding."
        +            },
        +            "source_candidates": {
        +              "default": [],
        +              "description": "Required for new final reports; empty only on reports persisted before source linkage.",
        +              "items": {
        +                "additionalProperties": false,
        +                "description": "A profile-local candidate that contributed to one synthesized finding.",
        +                "properties": {
        +                  "candidate_id": {
        +                    "pattern": "^F-[0-9]{2,}$",
        +                    "type": "string"
        +                  },
        +                  "profile": {
        +                    "enum": [
        +                      "pr_test_analyzer",
        +                      "code_reviewer",
        +                      "security_reviewer",
        +                      "silent_failure_hunter",
        +                      "code_explorer",
        +                      "typescript_reviewer",
        +                      "react_reviewer",
        +                      "ruby_reviewer",
        +                      "python_reviewer",
        +                      "mobile_reviewer"
        +                    ],
        +                    "type": "string"
        +                  }
        +                },
        +                "required": [
        +                  "profile",
        +                  "candidate_id"
        +                ],
        +                "type": "object"
        +              },
        +              "type": "array"
        +            },
        +            "source_locations": {
        +              "default": [],
        +              "description": "Precise source locations supporting this candidate when available.",
        +              "items": {
        +                "additionalProperties": false,
        +                "description": "A stable source locator for a finding candidate.",
        +                "properties": {
        +                  "end_line": {
        +                    "anyOf": [
        +                      {
        +                        "minimum": 1,
        +                        "type": "integer"
        +                      },
        +                      {
        +                        "type": "null"
        +                      }
        +                    ],
        +                    "default": null
        +                  },
        +                  "path": {
        +                    "maxLength": 1024,
        +                    "minLength": 1,
        +                    "type": "string"
        +                  },
        +                  "start_line": {
        +                    "minimum": 1,
        +                    "type": "integer"
        +                  }
        +                },
        +                "required": [
        +                  "path",
        +                  "start_line"
        +                ],
        +                "type": "object"
        +              },
        +              "maxItems": 20,
        +              "type": "array"
        +            },
        +            "source_profiles": {
        +              "items": {
        +                "enum": [
        +                  "pr_test_analyzer",
        +                  "code_reviewer",
        +                  "security_reviewer",
        +                  "silent_failure_hunter",
        +                  "code_explorer",
        +                  "typescript_reviewer",
        +                  "react_reviewer",
        +                  "ruby_reviewer",
        +                  "python_reviewer",
        +                  "mobile_reviewer"
        +                ],
        +                "type": "string"
        +              },
        +              "minItems": 1,
        +              "type": "array"
        +            },
        +            "title": {
        +              "maxLength": 256,
        +              "minLength": 1,
        +              "type": "string"
        +            },
        +            "verification_gap": {
        +              "maxLength": 2000,
        +              "minLength": 1,
        +              "type": "string"
        +            }
        +          },
        +          "required": [
        +            "candidate_id",
        +            "title",
        +            "description",
        +            "confidence",
        +            "verification_gap",
        +            "evidence_refs",
        +            "source_profiles"
        +          ],
        +          "type": "object"
        +        },
        +        "maxItems": 100,
        +        "type": "array"
        +      },
        +      "profiles_reviewed": {
        +        "items": {
        +          "enum": [
        +            "pr_test_analyzer",
        +            "code_reviewer",
        +            "security_reviewer",
        +            "silent_failure_hunter",
        +            "code_explorer",
        +            "typescript_reviewer",
        +            "react_reviewer",
        +            "ruby_reviewer",
        +            "python_reviewer",
        +            "mobile_reviewer"
        +          ],
        +          "type": "string"
        +        },
        +        "minItems": 1,
        +        "type": "array"
        +      },
        +      "review_rules_sha256": {
        +        "anyOf": [
        +          {
        +            "pattern": "(?i)^[a-f0-9]{64}$",
        +            "type": "string"
        +          },
        +          {
        +            "type": "null"
        +          }
        +        ],
        +        "default": null
        +      },
        +      "summary": {
        +        "maxLength": 5000,
        +        "minLength": 1,
        +        "type": "string"
        +      },
        +      "unverified": {
        +        "default": [],
        +        "items": {
        +          "additionalProperties": false,
        +          "properties": {
        +            "evidence_refs": {
        +              "default": [],
        +              "items": {
        +                "maxLength": 128,
        +                "minLength": 1,
        +                "pattern": "^[A-Za-z0-9][A-Za-z0-9._:/-]*$",
        +                "type": "string"
        +              },
        +              "maxItems": 32,
        +              "type": "array"
        +            },
        +            "text": {
        +              "maxLength": 2000,
        +              "minLength": 1,
        +              "type": "string"
        +            }
        +          },
        +          "required": [
        +            "text"
        +          ],
        +          "type": "object"
        +        },
        +        "maxItems": 100,
        +        "type": "array"
        +      }
        +    },
        +    "required": [
        +      "summary",
        +      "profiles_reviewed"
        +    ],
        +    "type": "object"
        +  },
        +  {
        +    "type": "null"
        +  }
        +]
      • addedOutput schema / properties / profile_reports / items / properties / context_selection
        Added value: +{
        +  "anyOf": [
        +    {
        +      "additionalProperties": false,
        +      "description": "Host assertion of the exact subset actually sent to a profile.",
        +      "properties": {
        +        "budget_omitted_refs": {
        +          "default": [],
        +          "items": {
        +            "maxLength": 128,
        +            "minLength": 1,
        +            "pattern": "^[A-Za-z0-9][A-Za-z0-9._:/-]*$",
        +            "type": "string"
        +          },
        +          "maxItems": 1000,
        +          "type": "array"
        +        },
        +        "included_refs": {
        +          "items": {
        +            "maxLength": 128,
        +            "minLength": 1,
        +            "pattern": "^[A-Za-z0-9][A-Za-z0-9._:/-]*$",
        +            "type": "string"
        +          },
        +          "maxItems": 1000,
        +          "type": "array"
        +        },
        +        "max_bytes": {
        +          "maximum": 2000000,
        +          "minimum": 1,
        +          "type": "integer"
        +        },
        +        "omitted_refs": {
        +          "default": [],
        +          "items": {
        +            "maxLength": 128,
        +            "minLength": 1,
        +            "pattern": "^[A-Za-z0-9][A-Za-z0-9._:/-]*$",
        +            "type": "string"
        +          },
        +          "maxItems": 1000,
        +          "type": "array"
        +        },
        +        "selected_bytes": {
        +          "maximum": 2000000,
        +          "minimum": 0,
        +          "type": "integer"
        +        },
        +        "selected_packet_sha256": {
        +          "pattern": "(?i)^[a-f0-9]{64}$",
        +          "type": "string"
        +        },
        +        "source_packet_sha256": {
        +          "pattern": "(?i)^[a-f0-9]{64}$",
        +          "type": "string"
        +        }
        +      },
        +      "required": [
        +        "source_packet_sha256",
        +        "selected_packet_sha256",
        +        "included_refs",
        +        "max_bytes",
        +        "selected_bytes"
        +      ],
        +      "type": "object"
        +    },
        +    {
        +      "type": "null"
        +    }
        +  ],
        +  "default": null
        +}
      • changedOutput schema / properties / profile_reports / items / properties / execution_metrics / anyOf
        Previous value: -[
        -  {
        -    "additionalProperties": false,
        -    "description": "Optional host-reported timing and token counts for one completed profile.",
        -    "properties": {
        -      "attempt_count": {
        -        "default": 1,
        -        "maximum": 4,
        -        "minimum": 1,
        -        "type": "integer"
        -      },
        -      "completed_at": {
        -        "format": "date-time",
        -        "type": "string"
        -      },
        -      "input_tokens": {
        -        "anyOf": [
        -          {
        -            "minimum": 0,
        -            "type": "integer"
        -          },
        -          {
        -            "type": "null"
        -          }
        -        ],
        -        "default": null
        -      },
        -      "output_tokens": {
        -        "anyOf": [
        -          {
        -            "minimum": 0,
        -            "type": "integer"
        -          },
        -          {
        -            "type": "null"
        -          }
        -        ],
        -        "default": null
        -      },
        -      "started_at": {
        -        "format": "date-time",
        -        "type": "string"
        -      }
        -    },
        -    "required": [
        -      "started_at",
        -      "completed_at"
        -    ],
        -    "type": "object"
        -  },
        -  {
        -    "type": "null"
        -  }
        -]New value: +[
        +  {
        +    "additionalProperties": false,
        +    "description": "Optional host-reported timing and token counts for one completed profile.",
        +    "properties": {
        +      "attempt_count": {
        +        "default": 1,
        +        "maximum": 4,
        +        "minimum": 1,
        +        "type": "integer"
        +      },
        +      "attempts": {
        +        "default": [],
        +        "items": {
        +          "additionalProperties": false,
        +          "description": "One actual executor call; no exception bodies or source content.",
        +          "properties": {
        +            "attempt": {
        +              "maximum": 4,
        +              "minimum": 1,
        +              "type": "integer"
        +            },
        +            "cached_input_tokens": {
        +              "anyOf": [
        +                {
        +                  "minimum": 0,
        +                  "type": "integer"
        +                },
        +                {
        +                  "type": "null"
        +                }
        +              ],
        +              "default": null
        +            },
        +            "completed_at": {
        +              "format": "date-time",
        +              "type": "string"
        +            },
        +            "executor_seconds": {
        +              "minimum": 0,
        +              "type": "number"
        +            },
        +            "input_tokens": {
        +              "anyOf": [
        +                {
        +                  "minimum": 0,
        +                  "type": "integer"
        +                },
        +                {
        +                  "type": "null"
        +                }
        +              ],
        +              "default": null
        +            },
        +            "model_seconds": {
        +              "anyOf": [
        +                {
        +                  "minimum": 0,
        +                  "type": "number"
        +                },
        +                {
        +                  "type": "null"
        +                }
        +              ],
        +              "default": null
        +            },
        +            "outcome": {
        +              "enum": [
        +                "completed",
        +                "retryable_error",
        +                "timeout",
        +                "failed",
        +                "cancelled"
        +              ],
        +              "type": "string"
        +            },
        +            "output_tokens": {
        +              "anyOf": [
        +                {
        +                  "minimum": 0,
        +                  "type": "integer"
        +                },
        +                {
        +                  "type": "null"
        +                }
        +              ],
        +              "default": null
        +            },
        +            "preparation_seconds": {
        +              "anyOf": [
        +                {
        +                  "minimum": 0,
        +                  "type": "number"
        +                },
        +                {
        +                  "type": "null"
        +                }
        +              ],
        +              "default": null
        +            },
        +            "profile": {
        +              "enum": [
        +                "pr_test_analyzer",
        +                "code_reviewer",
        +                "security_reviewer",
        +                "silent_failure_hunter",
        +                "code_explorer",
        +                "typescript_reviewer",
        +                "react_reviewer",
        +                "ruby_reviewer",
        +                "python_reviewer",
        +                "mobile_reviewer"
        +              ],
        +              "type": "string"
        +            },
        +            "queue_seconds": {
        +              "minimum": 0,
        +              "type": "number"
        +            },
        +            "started_at": {
        +              "format": "date-time",
        +              "type": "string"
        +            },
        +            "validation_seconds": {
        +              "anyOf": [
        +                {
        +                  "minimum": 0,
        +                  "type": "number"
        +                },
        +                {
        +                  "type": "null"
        +                }
        +              ],
        +              "default": null
        +            }
        +          },
        +          "required": [
        +            "profile",
        +            "attempt",
        +            "outcome",
        +            "started_at",
        +            "completed_at",
        +            "queue_seconds",
        +            "executor_seconds"
        +          ],
        +          "type": "object"
        +        },
        +        "maxItems": 4,
        +        "type": "array"
        +      },
        +      "completed_at": {
        +        "format": "date-time",
        +        "type": "string"
        +      },
        +      "input_tokens": {
        +        "anyOf": [
        +          {
        +            "minimum": 0,
        +            "type": "integer"
        +          },
        +          {
        +            "type": "null"
        +          }
        +        ],
        +        "default": null
        +      },
        +      "output_tokens": {
        +        "anyOf": [
        +          {
        +            "minimum": 0,
        +            "type": "integer"
        +          },
        +          {
        +            "type": "null"
        +          }
        +        ],
        +        "default": null
        +      },
        +      "started_at": {
        +        "format": "date-time",
        +        "type": "string"
        +      }
        +    },
        +    "required": [
        +      "started_at",
        +      "completed_at"
        +    ],
        +    "type": "object"
        +  },
        +  {
        +    "type": "null"
        +  }
        +]
      • addedOutput schema / properties / profile_reports / items / properties / finding_candidates / items / properties / failure_condition
        Added value: +{
        +  "anyOf": [
        +    {
        +      "maxLength": 2000,
        +      "minLength": 1,
        +      "type": "string"
        +    },
        +    {
        +      "type": "null"
        +    }
        +  ],
        +  "default": null,
        +  "description": "Specific preconditions that make the alleged failure occur."
        +}
      • addedOutput schema / properties / profile_reports / items / properties / finding_candidates / items / properties / flip_condition
        Added value: +{
        +  "anyOf": [
        +    {
        +      "maxLength": 2000,
        +      "minLength": 1,
        +      "type": "string"
        +    },
        +    {
        +      "type": "null"
        +    }
        +  ],
        +  "default": null,
        +  "description": "Concrete source/contract evidence that would refute this candidate."
        +}
      • addedOutput schema / properties / profile_reports / items / properties / review_rules_sha256
        Added value: +{
        +  "anyOf": [
        +    {
        +      "pattern": "(?i)^[a-f0-9]{64}$",
        +      "type": "string"
        +    },
        +    {
        +      "type": "null"
        +    }
        +  ],
        +  "default": null
        +}
      • changedOutput schema / properties / review_context / anyOf
        Previous value: -[
        -  {
        -    "additionalProperties": false,
        -    "description": "Immutable identifiers for the exact source and evidence packet reviewed.",
        -    "properties": {
        -      "base_sha": {
        -        "pattern": "(?i)^(?:[a-f0-9]{40}|[a-f0-9]{64})$",
        -        "type": "string"
        -      },
        -      "changed_files": {
        -        "items": {
        -          "maxLength": 1024,
        -          "minLength": 1,
        -          "type": "string"
        -        },
        -        "maxItems": 500,
        -        "minItems": 1,
        -        "type": "array"
        -      },
        -      "diff_sha256": {
        -        "pattern": "(?i)^[a-f0-9]{64}$",
        -        "type": "string"
        -      },
        -      "evidence_packet_sha256": {
        -        "pattern": "(?i)^[a-f0-9]{64}$",
        -        "type": "string"
        -      },
        -      "evidence_refs": {
        -        "items": {
        -          "maxLength": 128,
        -          "minLength": 1,
        -          "pattern": "^[A-Za-z0-9][A-Za-z0-9._:/-]*$",
        -          "type": "string"
        -        },
        -        "maxItems": 1000,
        -        "minItems": 1,
        -        "type": "array"
        -      },
        -      "evidence_registry": {
        -        "default": [],
        -        "description": "Optional complete ref-to-source registry with revision, coordinates and hashes.",
        -        "items": {
        -          "additionalProperties": false,
        -          "description": "Metadata for one evidence item; raw content remains with the host.",
        -          "properties": {
        -            "end_line": {
        -              "anyOf": [
        -                {
        -                  "minimum": 1,
        -                  "type": "integer"
        -                },
        -                {
        -                  "type": "null"
        -                }
        -              ],
        -              "default": null
        -            },
        -            "evidence_ref": {
        -              "maxLength": 128,
        -              "minLength": 1,
        -              "pattern": "^[A-Za-z0-9][A-Za-z0-9._:/-]*$",
        -              "type": "string"
        -            },
        -            "kind": {
        -              "enum": [
        -                "source",
        -                "diff",
        -                "requirement",
        -                "runtime",
        -                "other"
        -              ],
        -              "type": "string"
        -            },
        -            "locator": {
        -              "anyOf": [
        -                {
        -                  "maxLength": 1024,
        -                  "minLength": 1,
        -                  "type": "string"
        -                },
        -                {
        -                  "type": "null"
        -                }
        -              ],
        -              "default": null
        -            },
        -            "path": {
        -              "anyOf": [
        -                {
        -                  "maxLength": 1024,
        -                  "minLength": 1,
        -                  "type": "string"
        -                },
        -                {
        -                  "type": "null"
        -                }
        -              ],
        -              "default": null
        -            },
        -            "revision": {
        -              "anyOf": [
        -                {
        -                  "pattern": "(?i)^(?:[a-f0-9]{40}|[a-f0-9]{64})$",
        -                  "type": "string"
        -                },
        -                {
        -                  "type": "null"
        -                }
        -              ],
        -              "default": null
        -            },
        -            "sha256": {
        -              "pattern": "(?i)^[a-f0-9]{64}$",
        -              "type": "string"
        -            },
        -            "start_line": {
        -              "anyOf": [
        -                {
        -                  "minimum": 1,
        -                  "type": "integer"
        -                },
        -                {
        -                  "type": "null"
        -                }
        -              ],
        -              "default": null
        -            }
        -          },
        -          "required": [
        -            "evidence_ref",
        -            "kind",
        -            "sha256"
        -          ],
        -          "type": "object"
        -        },
        -        "maxItems": 1000,
        -        "type": "array"
        -      },
        -      "head_sha": {
        -        "pattern": "(?i)^(?:[a-f0-9]{40}|[a-f0-9]{64})$",
        -        "type": "string"
        -      },
        -      "repository": {
        -        "maxLength": 512,
        -        "minLength": 1,
        -        "type": "string"
        -      }
        -    },
        -    "required": [
        -      "repository",
        -      "base_sha",
        -      "head_sha",
        -      "diff_sha256",
        -      "evidence_packet_sha256",
        -      "changed_files",
        -      "evidence_refs"
        -    ],
        -    "type": "object"
        -  },
        -  {
        -    "type": "null"
        -  }
        -]New value: +[
        +  {
        +    "additionalProperties": false,
        +    "description": "Immutable identifiers for the exact source and evidence packet reviewed.",
        +    "properties": {
        +      "base_sha": {
        +        "pattern": "(?i)^(?:[a-f0-9]{40}|[a-f0-9]{64})$",
        +        "type": "string"
        +      },
        +      "changed_files": {
        +        "items": {
        +          "maxLength": 1024,
        +          "minLength": 1,
        +          "type": "string"
        +        },
        +        "maxItems": 500,
        +        "minItems": 1,
        +        "type": "array"
        +      },
        +      "diff_sha256": {
        +        "pattern": "(?i)^[a-f0-9]{64}$",
        +        "type": "string"
        +      },
        +      "evidence_packet_sha256": {
        +        "pattern": "(?i)^[a-f0-9]{64}$",
        +        "type": "string"
        +      },
        +      "evidence_refs": {
        +        "items": {
        +          "maxLength": 128,
        +          "minLength": 1,
        +          "pattern": "^[A-Za-z0-9][A-Za-z0-9._:/-]*$",
        +          "type": "string"
        +        },
        +        "maxItems": 1000,
        +        "minItems": 1,
        +        "type": "array"
        +      },
        +      "evidence_registry": {
        +        "default": [],
        +        "description": "Optional complete ref-to-source registry with revision, coordinates and hashes.",
        +        "items": {
        +          "additionalProperties": false,
        +          "description": "Metadata for one evidence item; raw content remains with the host.",
        +          "properties": {
        +            "end_line": {
        +              "anyOf": [
        +                {
        +                  "minimum": 1,
        +                  "type": "integer"
        +                },
        +                {
        +                  "type": "null"
        +                }
        +              ],
        +              "default": null
        +            },
        +            "evidence_ref": {
        +              "maxLength": 128,
        +              "minLength": 1,
        +              "pattern": "^[A-Za-z0-9][A-Za-z0-9._:/-]*$",
        +              "type": "string"
        +            },
        +            "kind": {
        +              "enum": [
        +                "source",
        +                "diff",
        +                "requirement",
        +                "runtime",
        +                "other"
        +              ],
        +              "type": "string"
        +            },
        +            "locator": {
        +              "anyOf": [
        +                {
        +                  "maxLength": 1024,
        +                  "minLength": 1,
        +                  "type": "string"
        +                },
        +                {
        +                  "type": "null"
        +                }
        +              ],
        +              "default": null
        +            },
        +            "path": {
        +              "anyOf": [
        +                {
        +                  "maxLength": 1024,
        +                  "minLength": 1,
        +                  "type": "string"
        +                },
        +                {
        +                  "type": "null"
        +                }
        +              ],
        +              "default": null
        +            },
        +            "revision": {
        +              "anyOf": [
        +                {
        +                  "pattern": "(?i)^(?:[a-f0-9]{40}|[a-f0-9]{64})$",
        +                  "type": "string"
        +                },
        +                {
        +                  "type": "null"
        +                }
        +              ],
        +              "default": null
        +            },
        +            "sha256": {
        +              "pattern": "(?i)^[a-f0-9]{64}$",
        +              "type": "string"
        +            },
        +            "start_line": {
        +              "anyOf": [
        +                {
        +                  "minimum": 1,
        +                  "type": "integer"
        +                },
        +                {
        +                  "type": "null"
        +                }
        +              ],
        +              "default": null
        +            }
        +          },
        +          "required": [
        +            "evidence_ref",
        +            "kind",
        +            "sha256"
        +          ],
        +          "type": "object"
        +        },
        +        "maxItems": 1000,
        +        "type": "array"
        +      },
        +      "head_sha": {
        +        "pattern": "(?i)^(?:[a-f0-9]{40}|[a-f0-9]{64})$",
        +        "type": "string"
        +      },
        +      "repository": {
        +        "maxLength": 512,
        +        "minLength": 1,
        +        "type": "string"
        +      },
        +      "review_rules": {
        +        "anyOf": [
        +          {
        +            "additionalProperties": false,
        +            "properties": {
        +              "rules": {
        +                "default": [],
        +                "items": {
        +                  "additionalProperties": false,
        +                  "properties": {
        +                    "condition": {
        +                      "maxLength": 2000,
        +                      "minLength": 1,
        +                      "type": "string"
        +                    },
        +                    "kind": {
        +                      "enum": [
        +                        "raise",
        +                        "guard"
        +                      ],
        +                      "type": "string"
        +                    },
        +                    "paths": {
        +                      "items": {
        +                        "type": "string"
        +                      },
        +                      "maxItems": 32,
        +                      "minItems": 1,
        +                      "type": "array"
        +                    },
        +                    "rationale": {
        +                      "maxLength": 2000,
        +                      "minLength": 1,
        +                      "type": "string"
        +                    },
        +                    "rule_id": {
        +                      "pattern": "^[A-Za-z0-9][A-Za-z0-9._-]{0,127}$",
        +                      "type": "string"
        +                    },
        +                    "text": {
        +                      "maxLength": 2000,
        +                      "minLength": 1,
        +                      "type": "string"
        +                    }
        +                  },
        +                  "required": [
        +                    "rule_id",
        +                    "kind",
        +                    "paths",
        +                    "condition",
        +                    "text",
        +                    "rationale"
        +                  ],
        +                  "type": "object"
        +                },
        +                "maxItems": 100,
        +                "type": "array"
        +              },
        +              "schema_version": {
        +                "const": 1,
        +                "default": 1,
        +                "type": "integer"
        +              }
        +            },
        +            "type": "object"
        +          },
        +          {
        +            "type": "null"
        +          }
        +        ],
        +        "default": null
        +      }
        +    },
        +    "required": [
        +      "repository",
        +      "base_sha",
        +      "head_sha",
        +      "diff_sha256",
        +      "evidence_packet_sha256",
        +      "changed_files",
        +      "evidence_refs"
        +    ],
        +    "type": "object"
        +  },
        +  {
        +    "type": "null"
        +  }
        +]
  2. 5 tool updatesv0.2.10
    • Changedadvance_qa_orchestration17 fields changed
      • 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"
        +}
    • Changedfinish_qa_orchestration14 fields changed
      • addedInput schema / properties / expected_revision
        Added value: +{
        +  "anyOf": [
        +    {
        +      "minimum": 0,
        +      "type": "integer"
        +    },
        +    {
        +      "type": "null"
        +    }
        +  ],
        +  "default": null,
        +  "description": "Optional current workflow revision for a new finalization. The same retained outcome/report can still be replayed idempotently."
        +}
      • changedInput 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"
        +  }
        +]
      • changedInput schema / properties / final_review_report / description
        Previous value: -"Structured synthesized findings and coverage for a review_context-bound session. Required when its outcome is completed; each finding cites registered evidence refs."New value: +"Structured synthesized findings and coverage for a review_context-bound session. Required when its outcome is completed; each finding cites registered evidence refs and the original profile-local candidate IDs and evidence that support it. The report must include one candidate_decisions entry per submitted candidate. Confirmed findings require host severity, impact, affected area, and source locations. The report is limited to 64 KiB; profile plus final reports are limited to 256 KiB per session."
      • 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"
        +}
    • Changedget_qa_orchestration11 fields changed
      • 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"
        +}
    • Addedrenew_qa_orchestration
    • Changedstart_qa_orchestration13 fields changed
      • changedInput schema / properties / review_context / anyOf
        Previous value: -[
        -  {
        -    "additionalProperties": false,
        -    "description": "Immutable identifiers for the exact source and evidence packet reviewed.",
        -    "properties": {
        -      "base_sha": {
        -        "pattern": "(?i)^(?:[a-f0-9]{40}|[a-f0-9]{64})$",
        -        "type": "string"
        -      },
        -      "changed_files": {
        -        "items": {
        -          "type": "string"
        -        },
        -        "maxItems": 500,
        -        "minItems": 1,
        -        "type": "array"
        -      },
        -      "diff_sha256": {
        -        "pattern": "(?i)^[a-f0-9]{64}$",
        -        "type": "string"
        -      },
        -      "evidence_packet_sha256": {
        -        "pattern": "(?i)^[a-f0-9]{64}$",
        -        "type": "string"
        -      },
        -      "evidence_refs": {
        -        "items": {
        -          "maxLength": 128,
        -          "minLength": 1,
        -          "pattern": "^[A-Za-z0-9][A-Za-z0-9._:/-]*$",
        -          "type": "string"
        -        },
        -        "maxItems": 1000,
        -        "minItems": 1,
        -        "type": "array"
        -      },
        -      "head_sha": {
        -        "pattern": "(?i)^(?:[a-f0-9]{40}|[a-f0-9]{64})$",
        -        "type": "string"
        -      },
        -      "repository": {
        -        "maxLength": 512,
        -        "minLength": 1,
        -        "type": "string"
        -      }
        -    },
        -    "required": [
        -      "repository",
        -      "base_sha",
        -      "head_sha",
        -      "diff_sha256",
        -      "evidence_packet_sha256",
        -      "changed_files",
        -      "evidence_refs"
        -    ],
        -    "type": "object"
        -  },
        -  {
        -    "type": "null"
        -  }
        -]New value: +[
        +  {
        +    "additionalProperties": false,
        +    "description": "Immutable identifiers for the exact source and evidence packet reviewed.",
        +    "properties": {
        +      "base_sha": {
        +        "pattern": "(?i)^(?:[a-f0-9]{40}|[a-f0-9]{64})$",
        +        "type": "string"
        +      },
        +      "changed_files": {
        +        "items": {
        +          "maxLength": 1024,
        +          "minLength": 1,
        +          "type": "string"
        +        },
        +        "maxItems": 500,
        +        "minItems": 1,
        +        "type": "array"
        +      },
        +      "diff_sha256": {
        +        "pattern": "(?i)^[a-f0-9]{64}$",
        +        "type": "string"
        +      },
        +      "evidence_packet_sha256": {
        +        "pattern": "(?i)^[a-f0-9]{64}$",
        +        "type": "string"
        +      },
        +      "evidence_refs": {
        +        "items": {
        +          "maxLength": 128,
        +          "minLength": 1,
        +          "pattern": "^[A-Za-z0-9][A-Za-z0-9._:/-]*$",
        +          "type": "string"
        +        },
        +        "maxItems": 1000,
        +        "minItems": 1,
        +        "type": "array"
        +      },
        +      "evidence_registry": {
        +        "default": [],
        +        "description": "Optional complete ref-to-source registry with revision, coordinates and hashes.",
        +        "items": {
        +          "additionalProperties": false,
        +          "description": "Metadata for one evidence item; raw content remains with the host.",
        +          "properties": {
        +            "end_line": {
        +              "anyOf": [
        +                {
        +                  "minimum": 1,
        +                  "type": "integer"
        +                },
        +                {
        +                  "type": "null"
        +                }
        +              ],
        +              "default": null
        +            },
        +            "evidence_ref": {
        +              "maxLength": 128,
        +              "minLength": 1,
        +              "pattern": "^[A-Za-z0-9][A-Za-z0-9._:/-]*$",
        +              "type": "string"
        +            },
        +            "kind": {
        +              "enum": [
        +                "source",
        +                "diff",
        +                "requirement",
        +                "runtime",
        +                "other"
        +              ],
        +              "type": "string"
        +            },
        +            "locator": {
        +              "anyOf": [
        +                {
        +                  "maxLength": 1024,
        +                  "minLength": 1,
        +                  "type": "string"
        +                },
        +                {
        +                  "type": "null"
        +                }
        +              ],
        +              "default": null
        +            },
        +            "path": {
        +              "anyOf": [
        +                {
        +                  "maxLength": 1024,
        +                  "minLength": 1,
        +                  "type": "string"
        +                },
        +                {
        +                  "type": "null"
        +                }
        +              ],
        +              "default": null
        +            },
        +            "revision": {
        +              "anyOf": [
        +                {
        +                  "pattern": "(?i)^(?:[a-f0-9]{40}|[a-f0-9]{64})$",
        +                  "type": "string"
        +                },
        +                {
        +                  "type": "null"
        +                }
        +              ],
        +              "default": null
        +            },
        +            "sha256": {
        +              "pattern": "(?i)^[a-f0-9]{64}$",
        +              "type": "string"
        +            },
        +            "start_line": {
        +              "anyOf": [
        +                {
        +                  "minimum": 1,
        +                  "type": "integer"
        +                },
        +                {
        +                  "type": "null"
        +                }
        +              ],
        +              "default": null
        +            }
        +          },
        +          "required": [
        +            "evidence_ref",
        +            "kind",
        +            "sha256"
        +          ],
        +          "type": "object"
        +        },
        +        "maxItems": 1000,
        +        "type": "array"
        +      },
        +      "head_sha": {
        +        "pattern": "(?i)^(?:[a-f0-9]{40}|[a-f0-9]{64})$",
        +        "type": "string"
        +      },
        +      "repository": {
        +        "maxLength": 512,
        +        "minLength": 1,
        +        "type": "string"
        +      }
        +    },
        +    "required": [
        +      "repository",
        +      "base_sha",
        +      "head_sha",
        +      "diff_sha256",
        +      "evidence_packet_sha256",
        +      "changed_files",
        +      "evidence_refs"
        +    ],
        +    "type": "object"
        +  },
        +  {
        +    "type": "null"
        +  }
        +]
      • changedInput schema / properties / review_context / description
        Previous value: -"Optional immutable repository, base/head, diff, and Evidence Packet identity. When supplied, every completed profile must include a structured report whose evidence references belong to this packet; completed outcomes require a final report."New value: +"Optional immutable repository, base/head, changed-file, diff, and Evidence Packet identity. When supplied, every completed profile must include a structured report whose evidence references belong to this packet; completed outcomes require a final report. The response may include file-type-based recommended_profiles as non-binding hints. Optional evidence_registry metadata binds each ref to a source kind, revision, coordinates and content hash. The host verifies actual content locally."
      • changedOutput schema / properties / final_review_report / anyOf
        Previous value: -[
        -  {
        -    "additionalProperties": false,
        -    "description": "Structured synthesis stored with a review-bound orchestration session.",
        -    "properties": {
        -      "coverage_gaps": {
        -        "default": [],
        -        "items": {
        -          "additionalProperties": false,
        -          "properties": {
        -            "evidence_refs": {
        -              "default": [],
        -              "items": {
        -                "maxLength": 128,
        -                "minLength": 1,
        -                "pattern": "^[A-Za-z0-9][A-Za-z0-9._:/-]*$",
        -                "type": "string"
        -              },
        -              "maxItems": 32,
        -              "type": "array"
        -            },
        -            "text": {
        -              "maxLength": 2000,
        -              "minLength": 1,
        -              "type": "string"
        -            }
        -          },
        -          "required": [
        -            "text"
        -          ],
        -          "type": "object"
        -        },
        -        "maxItems": 100,
        -        "type": "array"
        -      },
        -      "finding_candidates": {
        -        "default": [],
        -        "items": {
        -          "additionalProperties": false,
        -          "properties": {
        -            "candidate_id": {
        -              "pattern": "^F-[0-9]{2,}$",
        -              "type": "string"
        -            },
        -            "confidence": {
        -              "enum": [
        -                "high",
        -                "medium",
        -                "low"
        -              ],
        -              "type": "string"
        -            },
        -            "description": {
        -              "maxLength": 5000,
        -              "minLength": 1,
        -              "type": "string"
        -            },
        -            "evidence_refs": {
        -              "items": {
        -                "maxLength": 128,
        -                "minLength": 1,
        -                "pattern": "^[A-Za-z0-9][A-Za-z0-9._:/-]*$",
        -                "type": "string"
        -              },
        -              "maxItems": 32,
        -              "minItems": 1,
        -              "type": "array"
        -            },
        -            "source_profiles": {
        -              "items": {
        -                "enum": [
        -                  "pr_test_analyzer",
        -                  "code_reviewer",
        -                  "security_reviewer",
        -                  "silent_failure_hunter",
        -                  "code_explorer",
        -                  "typescript_reviewer",
        -                  "react_reviewer",
        -                  "ruby_reviewer",
        -                  "python_reviewer",
        -                  "mobile_reviewer"
        -                ],
        -                "type": "string"
        -              },
        -              "minItems": 1,
        -              "type": "array"
        -            },
        -            "title": {
        -              "maxLength": 256,
        -              "minLength": 1,
        -              "type": "string"
        -            },
        -            "verification_gap": {
        -              "maxLength": 2000,
        -              "minLength": 1,
        -              "type": "string"
        -            }
        -          },
        -          "required": [
        -            "candidate_id",
        -            "title",
        -            "description",
        -            "confidence",
        -            "verification_gap",
        -            "evidence_refs",
        -            "source_profiles"
        -          ],
        -          "type": "object"
        -        },
        -        "maxItems": 100,
        -        "type": "array"
        -      },
        -      "profiles_reviewed": {
        -        "items": {
        -          "enum": [
        -            "pr_test_analyzer",
        -            "code_reviewer",
        -            "security_reviewer",
        -            "silent_failure_hunter",
        -            "code_explorer",
        -            "typescript_reviewer",
        -            "react_reviewer",
        -            "ruby_reviewer",
        -            "python_reviewer",
        -            "mobile_reviewer"
        -          ],
        -          "type": "string"
        -        },
        -        "minItems": 1,
        -        "type": "array"
        -      },
        -      "summary": {
        -        "maxLength": 5000,
        -        "minLength": 1,
        -        "type": "string"
        -      },
        -      "unverified": {
        -        "default": [],
        -        "items": {
        -          "additionalProperties": false,
        -          "properties": {
        -            "evidence_refs": {
        -              "default": [],
        -              "items": {
        -                "maxLength": 128,
        -                "minLength": 1,
        -                "pattern": "^[A-Za-z0-9][A-Za-z0-9._:/-]*$",
        -                "type": "string"
        -              },
        -              "maxItems": 32,
        -              "type": "array"
        -            },
        -            "text": {
        -              "maxLength": 2000,
        -              "minLength": 1,
        -              "type": "string"
        -            }
        -          },
        -          "required": [
        -            "text"
        -          ],
        -          "type": "object"
        -        },
        -        "maxItems": 100,
        -        "type": "array"
        -      }
        -    },
        -    "required": [
        -      "summary",
        -      "profiles_reviewed"
        -    ],
        -    "type": "object"
        -  },
        -  {
        -    "type": "null"
        -  }
        -]New value: +[
        +  {
        +    "additionalProperties": false,
        +    "description": "Structured synthesis stored with a review-bound orchestration session.",
        +    "properties": {
        +      "candidate_decisions": {
        +        "default": [],
        +        "description": "One host decision per submitted candidate; absent on legacy saved reports.",
        +        "items": {
        +          "additionalProperties": false,
        +          "description": "The host's disposition of one profile-local candidate.",
        +          "properties": {
        +            "evidence_refs": {
        +              "items": {
        +                "maxLength": 128,
        +                "minLength": 1,
        +                "pattern": "^[A-Za-z0-9][A-Za-z0-9._:/-]*$",
        +                "type": "string"
        +              },
        +              "maxItems": 32,
        +              "minItems": 1,
        +              "type": "array"
        +            },
        +            "final_finding_id": {
        +              "anyOf": [
        +                {
        +                  "pattern": "^F-[0-9]{2,}$",
        +                  "type": "string"
        +                },
        +                {
        +                  "type": "null"
        +                }
        +              ],
        +              "default": null
        +            },
        +            "rationale": {
        +              "maxLength": 2000,
        +              "minLength": 1,
        +              "type": "string"
        +            },
        +            "source": {
        +              "additionalProperties": false,
        +              "description": "A profile-local candidate that contributed to one synthesized finding.",
        +              "properties": {
        +                "candidate_id": {
        +                  "pattern": "^F-[0-9]{2,}$",
        +                  "type": "string"
        +                },
        +                "profile": {
        +                  "enum": [
        +                    "pr_test_analyzer",
        +                    "code_reviewer",
        +                    "security_reviewer",
        +                    "silent_failure_hunter",
        +                    "code_explorer",
        +                    "typescript_reviewer",
        +                    "react_reviewer",
        +                    "ruby_reviewer",
        +                    "python_reviewer",
        +                    "mobile_reviewer"
        +                  ],
        +                  "type": "string"
        +                }
        +              },
        +              "required": [
        +                "profile",
        +                "candidate_id"
        +              ],
        +              "type": "object"
        +            },
        +            "verdict": {
        +              "enum": [
        +                "confirmed",
        +                "rejected",
        +                "duplicate",
        +                "unverified"
        +              ],
        +              "type": "string"
        +            }
        +          },
        +          "required": [
        +            "source",
        +            "verdict",
        +            "rationale",
        +            "evidence_refs"
        +          ],
        +          "type": "object"
        +        },
        +        "maxItems": 1000,
        +        "type": "array"
        +      },
        +      "coverage_gaps": {
        +        "default": [],
        +        "items": {
        +          "additionalProperties": false,
        +          "properties": {
        +            "evidence_refs": {
        +              "default": [],
        +              "items": {
        +                "maxLength": 128,
        +                "minLength": 1,
        +                "pattern": "^[A-Za-z0-9][A-Za-z0-9._:/-]*$",
        +                "type": "string"
        +              },
        +              "maxItems": 32,
        +              "type": "array"
        +            },
        +            "text": {
        +              "maxLength": 2000,
        +              "minLength": 1,
        +              "type": "string"
        +            }
        +          },
        +          "required": [
        +            "text"
        +          ],
        +          "type": "object"
        +        },
        +        "maxItems": 100,
        +        "type": "array"
        +      },
        +      "finding_candidates": {
        +        "default": [],
        +        "items": {
        +          "additionalProperties": false,
        +          "properties": {
        +            "affected_area": {
        +              "anyOf": [
        +                {
        +                  "maxLength": 256,
        +                  "type": "string"
        +                },
        +                {
        +                  "type": "null"
        +                }
        +              ],
        +              "default": null,
        +              "description": "Affected user flow or system area, when supported by the evidence."
        +            },
        +            "candidate_id": {
        +              "pattern": "^F-[0-9]{2,}$",
        +              "type": "string"
        +            },
        +            "confidence": {
        +              "enum": [
        +                "high",
        +                "medium",
        +                "low"
        +              ],
        +              "type": "string"
        +            },
        +            "description": {
        +              "maxLength": 5000,
        +              "minLength": 1,
        +              "type": "string"
        +            },
        +            "evidence_refs": {
        +              "items": {
        +                "maxLength": 128,
        +                "minLength": 1,
        +                "pattern": "^[A-Za-z0-9][A-Za-z0-9._:/-]*$",
        +                "type": "string"
        +              },
        +              "maxItems": 32,
        +              "minItems": 1,
        +              "type": "array"
        +            },
        +            "impact": {
        +              "anyOf": [
        +                {
        +                  "maxLength": 2000,
        +                  "type": "string"
        +                },
        +                {
        +                  "type": "null"
        +                }
        +              ],
        +              "default": null,
        +              "description": "Concrete effect on users or contracts; severity remains host-owned."
        +            },
        +            "severity": {
        +              "anyOf": [
        +                {
        +                  "enum": [
        +                    "high",
        +                    "medium",
        +                    "low"
        +                  ],
        +                  "type": "string"
        +                },
        +                {
        +                  "type": "null"
        +                }
        +              ],
        +              "default": null,
        +              "description": "Impact severity selected by the host for a confirmed finding."
        +            },
        +            "source_candidates": {
        +              "default": [],
        +              "description": "Required for new final reports; empty only on reports persisted before source linkage.",
        +              "items": {
        +                "additionalProperties": false,
        +                "description": "A profile-local candidate that contributed to one synthesized finding.",
        +                "properties": {
        +                  "candidate_id": {
        +                    "pattern": "^F-[0-9]{2,}$",
        +                    "type": "string"
        +                  },
        +                  "profile": {
        +                    "enum": [
        +                      "pr_test_analyzer",
        +                      "code_reviewer",
        +                      "security_reviewer",
        +                      "silent_failure_hunter",
        +                      "code_explorer",
        +                      "typescript_reviewer",
        +                      "react_reviewer",
        +                      "ruby_reviewer",
        +                      "python_reviewer",
        +                      "mobile_reviewer"
        +                    ],
        +                    "type": "string"
        +                  }
        +                },
        +                "required": [
        +                  "profile",
        +                  "candidate_id"
        +                ],
        +                "type": "object"
        +              },
        +              "type": "array"
        +            },
        +            "source_locations": {
        +              "default": [],
        +              "description": "Precise source locations supporting this candidate when available.",
        +              "items": {
        +                "additionalProperties": false,
        +                "description": "A stable source locator for a finding candidate.",
        +                "properties": {
        +                  "end_line": {
        +                    "anyOf": [
        +                      {
        +                        "minimum": 1,
        +                        "type": "integer"
        +                      },
        +                      {
        +                        "type": "null"
        +                      }
        +                    ],
        +                    "default": null
        +                  },
        +                  "path": {
        +                    "maxLength": 1024,
        +                    "minLength": 1,
        +                    "type": "string"
        +                  },
        +                  "start_line": {
        +                    "minimum": 1,
        +                    "type": "integer"
        +                  }
        +                },
        +                "required": [
        +                  "path",
        +                  "start_line"
        +                ],
        +                "type": "object"
        +              },
        +              "maxItems": 20,
        +              "type": "array"
        +            },
        +            "source_profiles": {
        +              "items": {
        +                "enum": [
        +                  "pr_test_analyzer",
        +                  "code_reviewer",
        +                  "security_reviewer",
        +                  "silent_failure_hunter",
        +                  "code_explorer",
        +                  "typescript_reviewer",
        +                  "react_reviewer",
        +                  "ruby_reviewer",
        +                  "python_reviewer",
        +                  "mobile_reviewer"
        +                ],
        +                "type": "string"
        +              },
        +              "minItems": 1,
        +              "type": "array"
        +            },
        +            "title": {
        +              "maxLength": 256,
        +              "minLength": 1,
        +              "type": "string"
        +            },
        +            "verification_gap": {
        +              "maxLength": 2000,
        +              "minLength": 1,
        +              "type": "string"
        +            }
        +          },
        +          "required": [
        +            "candidate_id",
        +            "title",
        +            "description",
        +            "confidence",
        +            "verification_gap",
        +            "evidence_refs",
        +            "source_profiles"
        +          ],
        +          "type": "object"
        +        },
        +        "maxItems": 100,
        +        "type": "array"
        +      },
        +      "profiles_reviewed": {
        +        "items": {
        +          "enum": [
        +            "pr_test_analyzer",
        +            "code_reviewer",
        +            "security_reviewer",
        +            "silent_failure_hunter",
        +            "code_explorer",
        +            "typescript_reviewer",
        +            "react_reviewer",
        +            "ruby_reviewer",
        +            "python_reviewer",
        +            "mobile_reviewer"
        +          ],
        +          "type": "string"
        +        },
        +        "minItems": 1,
        +        "type": "array"
        +      },
        +      "summary": {
        +        "maxLength": 5000,
        +        "minLength": 1,
        +        "type": "string"
        +      },
        +      "unverified": {
        +        "default": [],
        +        "items": {
        +          "additionalProperties": false,
        +          "properties": {
        +            "evidence_refs": {
        +              "default": [],
        +              "items": {
        +                "maxLength": 128,
        +                "minLength": 1,
        +                "pattern": "^[A-Za-z0-9][A-Za-z0-9._:/-]*$",
        +                "type": "string"
        +              },
        +              "maxItems": 32,
        +              "type": "array"
        +            },
        +            "text": {
        +              "maxLength": 2000,
        +              "minLength": 1,
        +              "type": "string"
        +            }
        +          },
        +          "required": [
        +            "text"
        +          ],
        +          "type": "object"
        +        },
        +        "maxItems": 100,
        +        "type": "array"
        +      }
        +    },
        +    "required": [
        +      "summary",
        +      "profiles_reviewed"
        +    ],
        +    "type": "object"
        +  },
        +  {
        +    "type": "null"
        +  }
        +]
      • addedOutput schema / properties / profile_reports / items / properties / execution_metrics
        Added value: +{
        +  "anyOf": [
        +    {
        +      "additionalProperties": false,
        +      "description": "Optional host-reported timing and token counts for one completed profile.",
        +      "properties": {
        +        "attempt_count": {
        +          "default": 1,
        +          "maximum": 4,
        +          "minimum": 1,
        +          "type": "integer"
        +        },
        +        "completed_at": {
        +          "format": "date-time",
        +          "type": "string"
        +        },
        +        "input_tokens": {
        +          "anyOf": [
        +            {
        +              "minimum": 0,
        +              "type": "integer"
        +            },
        +            {
        +              "type": "null"
        +            }
        +          ],
        +          "default": null
        +        },
        +        "output_tokens": {
        +          "anyOf": [
        +            {
        +              "minimum": 0,
        +              "type": "integer"
        +            },
        +            {
        +              "type": "null"
        +            }
        +          ],
        +          "default": null
        +        },
        +        "started_at": {
        +          "format": "date-time",
        +          "type": "string"
        +        }
        +      },
        +      "required": [
        +        "started_at",
        +        "completed_at"
        +      ],
        +      "type": "object"
        +    },
        +    {
        +      "type": "null"
        +    }
        +  ],
        +  "default": null,
        +  "description": "Optional host-reported execution data; the orchestrator does not verify it."
        +}
      • addedOutput schema / properties / profile_reports / items / properties / finding_candidates / items / properties / affected_area
        Added value: +{
        +  "anyOf": [
        +    {
        +      "maxLength": 256,
        +      "type": "string"
        +    },
        +    {
        +      "type": "null"
        +    }
        +  ],
        +  "default": null,
        +  "description": "Affected user flow or system area, when supported by the evidence."
        +}
      • addedOutput schema / properties / profile_reports / items / properties / finding_candidates / items / properties / impact
        Added value: +{
        +  "anyOf": [
        +    {
        +      "maxLength": 2000,
        +      "type": "string"
        +    },
        +    {
        +      "type": "null"
        +    }
        +  ],
        +  "default": null,
        +  "description": "Concrete effect on users or contracts; severity remains host-owned."
        +}
      • addedOutput schema / properties / profile_reports / items / properties / finding_candidates / items / properties / source_locations
        Added value: +{
        +  "default": [],
        +  "description": "Precise source locations supporting this candidate when available.",
        +  "items": {
        +    "additionalProperties": false,
        +    "description": "A stable source locator for a finding candidate.",
        +    "properties": {
        +      "end_line": {
        +        "anyOf": [
        +          {
        +            "minimum": 1,
        +            "type": "integer"
        +          },
        +          {
        +            "type": "null"
        +          }
        +        ],
        +        "default": null
        +      },
        +      "path": {
        +        "maxLength": 1024,
        +        "minLength": 1,
        +        "type": "string"
        +      },
        +      "start_line": {
        +        "minimum": 1,
        +        "type": "integer"
        +      }
        +    },
        +    "required": [
        +      "path",
        +      "start_line"
        +    ],
        +    "type": "object"
        +  },
        +  "maxItems": 20,
        +  "type": "array"
        +}
      • addedOutput schema / properties / profile_reports / maxItems
        Added value: +10
      • addedOutput schema / properties / recommended_profiles
        Added value: +{
        +  "description": "File-type-based profile hints only; the host selects the route.",
        +  "items": {
        +    "enum": [
        +      "pr_test_analyzer",
        +      "code_reviewer",
        +      "security_reviewer",
        +      "silent_failure_hunter",
        +      "code_explorer",
        +      "typescript_reviewer",
        +      "react_reviewer",
        +      "ruby_reviewer",
        +      "python_reviewer",
        +      "mobile_reviewer"
        +    ],
        +    "type": "string"
        +  },
        +  "type": "array"
        +}
      • changedOutput schema / properties / review_context / anyOf
        Previous value: -[
        -  {
        -    "additionalProperties": false,
        -    "description": "Immutable identifiers for the exact source and evidence packet reviewed.",
        -    "properties": {
        -      "base_sha": {
        -        "pattern": "(?i)^(?:[a-f0-9]{40}|[a-f0-9]{64})$",
        -        "type": "string"
        -      },
        -      "changed_files": {
        -        "items": {
        -          "type": "string"
        -        },
        -        "maxItems": 500,
        -        "minItems": 1,
        -        "type": "array"
        -      },
        -      "diff_sha256": {
        -        "pattern": "(?i)^[a-f0-9]{64}$",
        -        "type": "string"
        -      },
        -      "evidence_packet_sha256": {
        -        "pattern": "(?i)^[a-f0-9]{64}$",
        -        "type": "string"
        -      },
        -      "evidence_refs": {
        -        "items": {
        -          "maxLength": 128,
        -          "minLength": 1,
        -          "pattern": "^[A-Za-z0-9][A-Za-z0-9._:/-]*$",
        -          "type": "string"
        -        },
        -        "maxItems": 1000,
        -        "minItems": 1,
        -        "type": "array"
        -      },
        -      "head_sha": {
        -        "pattern": "(?i)^(?:[a-f0-9]{40}|[a-f0-9]{64})$",
        -        "type": "string"
        -      },
        -      "repository": {
        -        "maxLength": 512,
        -        "minLength": 1,
        -        "type": "string"
        -      }
        -    },
        -    "required": [
        -      "repository",
        -      "base_sha",
        -      "head_sha",
        -      "diff_sha256",
        -      "evidence_packet_sha256",
        -      "changed_files",
        -      "evidence_refs"
        -    ],
        -    "type": "object"
        -  },
        -  {
        -    "type": "null"
        -  }
        -]New value: +[
        +  {
        +    "additionalProperties": false,
        +    "description": "Immutable identifiers for the exact source and evidence packet reviewed.",
        +    "properties": {
        +      "base_sha": {
        +        "pattern": "(?i)^(?:[a-f0-9]{40}|[a-f0-9]{64})$",
        +        "type": "string"
        +      },
        +      "changed_files": {
        +        "items": {
        +          "maxLength": 1024,
        +          "minLength": 1,
        +          "type": "string"
        +        },
        +        "maxItems": 500,
        +        "minItems": 1,
        +        "type": "array"
        +      },
        +      "diff_sha256": {
        +        "pattern": "(?i)^[a-f0-9]{64}$",
        +        "type": "string"
        +      },
        +      "evidence_packet_sha256": {
        +        "pattern": "(?i)^[a-f0-9]{64}$",
        +        "type": "string"
        +      },
        +      "evidence_refs": {
        +        "items": {
        +          "maxLength": 128,
        +          "minLength": 1,
        +          "pattern": "^[A-Za-z0-9][A-Za-z0-9._:/-]*$",
        +          "type": "string"
        +        },
        +        "maxItems": 1000,
        +        "minItems": 1,
        +        "type": "array"
        +      },
        +      "evidence_registry": {
        +        "default": [],
        +        "description": "Optional complete ref-to-source registry with revision, coordinates and hashes.",
        +        "items": {
        +          "additionalProperties": false,
        +          "description": "Metadata for one evidence item; raw content remains with the host.",
        +          "properties": {
        +            "end_line": {
        +              "anyOf": [
        +                {
        +                  "minimum": 1,
        +                  "type": "integer"
        +                },
        +                {
        +                  "type": "null"
        +                }
        +              ],
        +              "default": null
        +            },
        +            "evidence_ref": {
        +              "maxLength": 128,
        +              "minLength": 1,
        +              "pattern": "^[A-Za-z0-9][A-Za-z0-9._:/-]*$",
        +              "type": "string"
        +            },
        +            "kind": {
        +              "enum": [
        +                "source",
        +                "diff",
        +                "requirement",
        +                "runtime",
        +                "other"
        +              ],
        +              "type": "string"
        +            },
        +            "locator": {
        +              "anyOf": [
        +                {
        +                  "maxLength": 1024,
        +                  "minLength": 1,
        +                  "type": "string"
        +                },
        +                {
        +                  "type": "null"
        +                }
        +              ],
        +              "default": null
        +            },
        +            "path": {
        +              "anyOf": [
        +                {
        +                  "maxLength": 1024,
        +                  "minLength": 1,
        +                  "type": "string"
        +                },
        +                {
        +                  "type": "null"
        +                }
        +              ],
        +              "default": null
        +            },
        +            "revision": {
        +              "anyOf": [
        +                {
        +                  "pattern": "(?i)^(?:[a-f0-9]{40}|[a-f0-9]{64})$",
        +                  "type": "string"
        +                },
        +                {
        +                  "type": "null"
        +                }
        +              ],
        +              "default": null
        +            },
        +            "sha256": {
        +              "pattern": "(?i)^[a-f0-9]{64}$",
        +              "type": "string"
        +            },
        +            "start_line": {
        +              "anyOf": [
        +                {
        +                  "minimum": 1,
        +                  "type": "integer"
        +                },
        +                {
        +                  "type": "null"
        +                }
        +              ],
        +              "default": null
        +            }
        +          },
        +          "required": [
        +            "evidence_ref",
        +            "kind",
        +            "sha256"
        +          ],
        +          "type": "object"
        +        },
        +        "maxItems": 1000,
        +        "type": "array"
        +      },
        +      "head_sha": {
        +        "pattern": "(?i)^(?:[a-f0-9]{40}|[a-f0-9]{64})$",
        +        "type": "string"
        +      },
        +      "repository": {
        +        "maxLength": 512,
        +        "minLength": 1,
        +        "type": "string"
        +      }
        +    },
        +    "required": [
        +      "repository",
        +      "base_sha",
        +      "head_sha",
        +      "diff_sha256",
        +      "evidence_packet_sha256",
        +      "changed_files",
        +      "evidence_refs"
        +    ],
        +    "type": "object"
        +  },
        +  {
        +    "type": "null"
        +  }
        +]
      • addedOutput schema / properties / revision
        Added value: +{
        +  "default": 0,
        +  "description": "Workflow revision for conditional writes.",
        +  "minimum": 0,
        +  "type": "integer"
        +}
      • addedOutput schema / properties / risk_signals
        Added value: +{
        +  "anyOf": [
        +    {
        +      "additionalProperties": false,
        +      "description": "Host-supplied escalation signals with the rationale and refs that support them.",
        +      "properties": {
        +        "cross_system_scope": {
        +          "default": false,
        +          "description": "The relevant behavior crosses repository, service, or system boundaries.",
        +          "type": "boolean"
        +        },
        +        "evidence_conflict": {
        +          "default": false,
        +          "description": "Relevant authoritative evidence sources disagree.",
        +          "type": "boolean"
        +        },
        +        "evidence_refs": {
        +          "default": [],
        +          "description": "Evidence Packet references supporting the enabled signals.",
        +          "items": {
        +            "maxLength": 128,
        +            "minLength": 1,
        +            "pattern": "^[A-Za-z0-9][A-Za-z0-9._:/-]*$",
        +            "type": "string"
        +          },
        +          "maxItems": 32,
        +          "type": "array"
        +        },
        +        "evidence_uncertain": {
        +          "default": false,
        +          "description": "A specific material conclusion remains uncertain, and a scoped read-only review could plausibly resolve it. Do not set solely because CI, Stage, or runtime checks were not run.",
        +          "type": "boolean"
        +        },
        +        "high_blast_radius": {
        +          "default": false,
        +          "description": "The change could affect many consumers, services, or data records.",
        +          "type": "boolean"
        +        },
        +        "high_risk_domain": {
        +          "default": false,
        +          "description": "The change affects a sensitive security, identity, payment, fraud, privacy, or access-control area.",
        +          "type": "boolean"
        +        },
        +        "multiple_plausible_causes": {
        +          "default": false,
        +          "description": "More than one plausible cause remains after investigation.",
        +          "type": "boolean"
        +        },
        +        "non_reproducible": {
        +          "default": false,
        +          "description": "The reported behavior cannot be reproduced under expected conditions.",
        +          "type": "boolean"
        +        },
        +        "rationale": {
        +          "anyOf": [
        +            {
        +              "maxLength": 2000,
        +              "type": "string"
        +            },
        +            {
        +              "type": "null"
        +            }
        +          ],
        +          "default": null,
        +          "description": "Short explanation for the enabled signals; required when any signal is true."
        +        }
        +      },
        +      "type": "object"
        +    },
        +    {
        +      "type": "null"
        +    }
        +  ],
        +  "default": null
        +}
      • addedOutput schema / properties / transition_receipts
        Added value: +{
        +  "description": "Bounded request hashes for safe replay; no raw transition payloads are stored.",
        +  "items": {
        +    "additionalProperties": false,
        +    "properties": {
        +      "applied_revision": {
        +        "minimum": 1,
        +        "type": "integer"
        +      },
        +      "request_id": {
        +        "pattern": "^[A-Za-z0-9][A-Za-z0-9._:-]{0,127}$",
        +        "type": "string"
        +      },
        +      "request_sha256": {
        +        "pattern": "^[a-f0-9]{64}$",
        +        "type": "string"
        +      }
        +    },
        +    "required": [
        +      "request_id",
        +      "request_sha256",
        +      "applied_revision"
        +    ],
        +    "type": "object"
        +  },
        +  "maxItems": 128,
        +  "type": "array"
        +}
  3. 5 tool updatesv0.2.9
    • Changedadvance_qa_orchestration4 fields changed
      • 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
        +}
    • Changedfinish_qa_orchestration4 fields changed
      • addedInput 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,
        +  "description": "Structured synthesized findings and coverage for a review_context-bound session. Required when its outcome is completed; each finding cites registered evidence refs."
        +}
      • 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
        +}
    • Changedget_qa_orchestration3 fields changed
      • 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
        +}
    • Changedlist_qa_orchestrations5 fields changed
      • changedOutput schema / properties / sessions / items / description
        Previous value: -"Content-free metadata for identifying a retained session."New value: +"Bounded metadata for finding a retained orchestration session."
      • addedOutput schema / properties / sessions / items / properties / has_review_artifacts
        Added value: +{
        +  "default": false,
        +  "type": "boolean"
        +}
      • addedOutput schema / properties / sessions / items / properties / review_diff_sha256
        Added value: +{
        +  "anyOf": [
        +    {
        +      "type": "string"
        +    },
        +    {
        +      "type": "null"
        +    }
        +  ],
        +  "default": null
        +}
      • addedOutput schema / properties / sessions / items / properties / review_head_sha
        Added value: +{
        +  "anyOf": [
        +    {
        +      "type": "string"
        +    },
        +    {
        +      "type": "null"
        +    }
        +  ],
        +  "default": null
        +}
      • addedOutput schema / properties / sessions / items / properties / review_repository
        Added value: +{
        +  "anyOf": [
        +    {
        +      "type": "string"
        +    },
        +    {
        +      "type": "null"
        +    }
        +  ],
        +  "default": null
        +}
    • Changedstart_qa_orchestration4 fields changed
      • addedInput schema / properties / review_context
        Added value: +{
        +  "anyOf": [
        +    {
        +      "additionalProperties": false,
        +      "description": "Immutable identifiers for the exact source and evidence packet reviewed.",
        +      "properties": {
        +        "base_sha": {
        +          "pattern": "(?i)^(?:[a-f0-9]{40}|[a-f0-9]{64})$",
        +          "type": "string"
        +        },
        +        "changed_files": {
        +          "items": {
        +            "type": "string"
        +          },
        +          "maxItems": 500,
        +          "minItems": 1,
        +          "type": "array"
        +        },
        +        "diff_sha256": {
        +          "pattern": "(?i)^[a-f0-9]{64}$",
        +          "type": "string"
        +        },
        +        "evidence_packet_sha256": {
        +          "pattern": "(?i)^[a-f0-9]{64}$",
        +          "type": "string"
        +        },
        +        "evidence_refs": {
        +          "items": {
        +            "maxLength": 128,
        +            "minLength": 1,
        +            "pattern": "^[A-Za-z0-9][A-Za-z0-9._:/-]*$",
        +            "type": "string"
        +          },
        +          "maxItems": 1000,
        +          "minItems": 1,
        +          "type": "array"
        +        },
        +        "head_sha": {
        +          "pattern": "(?i)^(?:[a-f0-9]{40}|[a-f0-9]{64})$",
        +          "type": "string"
        +        },
        +        "repository": {
        +          "maxLength": 512,
        +          "minLength": 1,
        +          "type": "string"
        +        }
        +      },
        +      "required": [
        +        "repository",
        +        "base_sha",
        +        "head_sha",
        +        "diff_sha256",
        +        "evidence_packet_sha256",
        +        "changed_files",
        +        "evidence_refs"
        +      ],
        +      "type": "object"
        +    },
        +    {
        +      "type": "null"
        +    }
        +  ],
        +  "default": null,
        +  "description": "Optional immutable repository, base/head, diff, and Evidence Packet identity. When supplied, every completed profile must include a structured report whose evidence references belong to this packet; completed outcomes require a final report."
        +}
      • addedOutput schema / properties / final_review_report
        Added value: +{
        +  "anyOf": [
        +    {
        +      "additionalProperties": false,
        +      "description": "Structured synthesis stored with a review-bound orchestration session.",
        +      "properties": {
        +        "coverage_gaps": {
        +          "default": [],
        +          "items": {
        +            "additionalProperties": false,
        +            "properties": {
        +              "evidence_refs": {
        +                "default": [],
        +                "items": {
        +                  "maxLength": 128,
        +                  "minLength": 1,
        +                  "pattern": "^[A-Za-z0-9][A-Za-z0-9._:/-]*$",
        +                  "type": "string"
        +                },
        +                "maxItems": 32,
        +                "type": "array"
        +              },
        +              "text": {
        +                "maxLength": 2000,
        +                "minLength": 1,
        +                "type": "string"
        +              }
        +            },
        +            "required": [
        +              "text"
        +            ],
        +            "type": "object"
        +          },
        +          "maxItems": 100,
        +          "type": "array"
        +        },
        +        "finding_candidates": {
        +          "default": [],
        +          "items": {
        +            "additionalProperties": false,
        +            "properties": {
        +              "candidate_id": {
        +                "pattern": "^F-[0-9]{2,}$",
        +                "type": "string"
        +              },
        +              "confidence": {
        +                "enum": [
        +                  "high",
        +                  "medium",
        +                  "low"
        +                ],
        +                "type": "string"
        +              },
        +              "description": {
        +                "maxLength": 5000,
        +                "minLength": 1,
        +                "type": "string"
        +              },
        +              "evidence_refs": {
        +                "items": {
        +                  "maxLength": 128,
        +                  "minLength": 1,
        +                  "pattern": "^[A-Za-z0-9][A-Za-z0-9._:/-]*$",
        +                  "type": "string"
        +                },
        +                "maxItems": 32,
        +                "minItems": 1,
        +                "type": "array"
        +              },
        +              "source_profiles": {
        +                "items": {
        +                  "enum": [
        +                    "pr_test_analyzer",
        +                    "code_reviewer",
        +                    "security_reviewer",
        +                    "silent_failure_hunter",
        +                    "code_explorer",
        +                    "typescript_reviewer",
        +                    "react_reviewer",
        +                    "ruby_reviewer",
        +                    "python_reviewer",
        +                    "mobile_reviewer"
        +                  ],
        +                  "type": "string"
        +                },
        +                "minItems": 1,
        +                "type": "array"
        +              },
        +              "title": {
        +                "maxLength": 256,
        +                "minLength": 1,
        +                "type": "string"
        +              },
        +              "verification_gap": {
        +                "maxLength": 2000,
        +                "minLength": 1,
        +                "type": "string"
        +              }
        +            },
        +            "required": [
        +              "candidate_id",
        +              "title",
        +              "description",
        +              "confidence",
        +              "verification_gap",
        +              "evidence_refs",
        +              "source_profiles"
        +            ],
        +            "type": "object"
        +          },
        +          "maxItems": 100,
        +          "type": "array"
        +        },
        +        "profiles_reviewed": {
        +          "items": {
        +            "enum": [
        +              "pr_test_analyzer",
        +              "code_reviewer",
        +              "security_reviewer",
        +              "silent_failure_hunter",
        +              "code_explorer",
        +              "typescript_reviewer",
        +              "react_reviewer",
        +              "ruby_reviewer",
        +              "python_reviewer",
        +              "mobile_reviewer"
        +            ],
        +            "type": "string"
        +          },
        +          "minItems": 1,
        +          "type": "array"
        +        },
        +        "summary": {
        +          "maxLength": 5000,
        +          "minLength": 1,
        +          "type": "string"
        +        },
        +        "unverified": {
        +          "default": [],
        +          "items": {
        +            "additionalProperties": false,
        +            "properties": {
        +              "evidence_refs": {
        +                "default": [],
        +                "items": {
        +                  "maxLength": 128,
        +                  "minLength": 1,
        +                  "pattern": "^[A-Za-z0-9][A-Za-z0-9._:/-]*$",
        +                  "type": "string"
        +                },
        +                "maxItems": 32,
        +                "type": "array"
        +              },
        +              "text": {
        +                "maxLength": 2000,
        +                "minLength": 1,
        +                "type": "string"
        +              }
        +            },
        +            "required": [
        +              "text"
        +            ],
        +            "type": "object"
        +          },
        +          "maxItems": 100,
        +          "type": "array"
        +        }
        +      },
        +      "required": [
        +        "summary",
        +        "profiles_reviewed"
        +      ],
        +      "type": "object"
        +    },
        +    {
        +      "type": "null"
        +    }
        +  ],
        +  "default": null
        +}
      • addedOutput schema / properties / profile_reports
        Added value: +{
        +  "items": {
        +    "additionalProperties": false,
        +    "description": "Structured host-reported result for one completed specialist profile.",
        +    "properties": {
        +      "coverage_gaps": {
        +        "default": [],
        +        "items": {
        +          "additionalProperties": false,
        +          "properties": {
        +            "evidence_refs": {
        +              "default": [],
        +              "items": {
        +                "maxLength": 128,
        +                "minLength": 1,
        +                "pattern": "^[A-Za-z0-9][A-Za-z0-9._:/-]*$",
        +                "type": "string"
        +              },
        +              "maxItems": 32,
        +              "type": "array"
        +            },
        +            "text": {
        +              "maxLength": 2000,
        +              "minLength": 1,
        +              "type": "string"
        +            }
        +          },
        +          "required": [
        +            "text"
        +          ],
        +          "type": "object"
        +        },
        +        "maxItems": 100,
        +        "type": "array"
        +      },
        +      "evidence_map": {
        +        "default": [],
        +        "items": {
        +          "additionalProperties": false,
        +          "properties": {
        +            "description": {
        +              "maxLength": 2000,
        +              "minLength": 1,
        +              "type": "string"
        +            },
        +            "evidence_ref": {
        +              "maxLength": 128,
        +              "minLength": 1,
        +              "pattern": "^[A-Za-z0-9][A-Za-z0-9._:/-]*$",
        +              "type": "string"
        +            }
        +          },
        +          "required": [
        +            "evidence_ref",
        +            "description"
        +          ],
        +          "type": "object"
        +        },
        +        "maxItems": 500,
        +        "type": "array"
        +      },
        +      "finding_candidates": {
        +        "default": [],
        +        "items": {
        +          "additionalProperties": false,
        +          "description": "A possible defect with evidence references; the host still decides whether it is confirmed.",
        +          "properties": {
        +            "candidate_id": {
        +              "pattern": "^F-[0-9]{2,}$",
        +              "type": "string"
        +            },
        +            "confidence": {
        +              "enum": [
        +                "high",
        +                "medium",
        +                "low"
        +              ],
        +              "type": "string"
        +            },
        +            "description": {
        +              "maxLength": 5000,
        +              "minLength": 1,
        +              "type": "string"
        +            },
        +            "evidence_refs": {
        +              "items": {
        +                "maxLength": 128,
        +                "minLength": 1,
        +                "pattern": "^[A-Za-z0-9][A-Za-z0-9._:/-]*$",
        +                "type": "string"
        +              },
        +              "maxItems": 32,
        +              "minItems": 1,
        +              "type": "array"
        +            },
        +            "title": {
        +              "maxLength": 256,
        +              "minLength": 1,
        +              "type": "string"
        +            },
        +            "verification_gap": {
        +              "maxLength": 2000,
        +              "minLength": 1,
        +              "type": "string"
        +            }
        +          },
        +          "required": [
        +            "candidate_id",
        +            "title",
        +            "description",
        +            "confidence",
        +            "verification_gap",
        +            "evidence_refs"
        +          ],
        +          "type": "object"
        +        },
        +        "maxItems": 100,
        +        "type": "array"
        +      },
        +      "profile": {
        +        "enum": [
        +          "pr_test_analyzer",
        +          "code_reviewer",
        +          "security_reviewer",
        +          "silent_failure_hunter",
        +          "code_explorer",
        +          "typescript_reviewer",
        +          "react_reviewer",
        +          "ruby_reviewer",
        +          "python_reviewer",
        +          "mobile_reviewer"
        +        ],
        +        "type": "string"
        +      },
        +      "scope": {
        +        "maxLength": 2000,
        +        "minLength": 1,
        +        "type": "string"
        +      },
        +      "unverified": {
        +        "default": [],
        +        "items": {
        +          "additionalProperties": false,
        +          "properties": {
        +            "evidence_refs": {
        +              "default": [],
        +              "items": {
        +                "maxLength": 128,
        +                "minLength": 1,
        +                "pattern": "^[A-Za-z0-9][A-Za-z0-9._:/-]*$",
        +                "type": "string"
        +              },
        +              "maxItems": 32,
        +              "type": "array"
        +            },
        +            "text": {
        +              "maxLength": 2000,
        +              "minLength": 1,
        +              "type": "string"
        +            }
        +          },
        +          "required": [
        +            "text"
        +          ],
        +          "type": "object"
        +        },
        +        "maxItems": 100,
        +        "type": "array"
        +      }
        +    },
        +    "required": [
        +      "profile",
        +      "scope"
        +    ],
        +    "type": "object"
        +  },
        +  "type": "array"
        +}
      • addedOutput schema / properties / review_context
        Added value: +{
        +  "anyOf": [
        +    {
        +      "additionalProperties": false,
        +      "description": "Immutable identifiers for the exact source and evidence packet reviewed.",
        +      "properties": {
        +        "base_sha": {
        +          "pattern": "(?i)^(?:[a-f0-9]{40}|[a-f0-9]{64})$",
        +          "type": "string"
        +        },
        +        "changed_files": {
        +          "items": {
        +            "type": "string"
        +          },
        +          "maxItems": 500,
        +          "minItems": 1,
        +          "type": "array"
        +        },
        +        "diff_sha256": {
        +          "pattern": "(?i)^[a-f0-9]{64}$",
        +          "type": "string"
        +        },
        +        "evidence_packet_sha256": {
        +          "pattern": "(?i)^[a-f0-9]{64}$",
        +          "type": "string"
        +        },
        +        "evidence_refs": {
        +          "items": {
        +            "maxLength": 128,
        +            "minLength": 1,
        +            "pattern": "^[A-Za-z0-9][A-Za-z0-9._:/-]*$",
        +            "type": "string"
        +          },
        +          "maxItems": 1000,
        +          "minItems": 1,
        +          "type": "array"
        +        },
        +        "head_sha": {
        +          "pattern": "(?i)^(?:[a-f0-9]{40}|[a-f0-9]{64})$",
        +          "type": "string"
        +        },
        +        "repository": {
        +          "maxLength": 512,
        +          "minLength": 1,
        +          "type": "string"
        +        }
        +      },
        +      "required": [
        +        "repository",
        +        "base_sha",
        +        "head_sha",
        +        "diff_sha256",
        +        "evidence_packet_sha256",
        +        "changed_files",
        +        "evidence_refs"
        +      ],
        +      "type": "object"
        +    },
        +    {
        +      "type": "null"
        +    }
        +  ],
        +  "default": null
        +}
  4. 7 tool updatesv0.2.5
    • Changedadvance_qa_orchestration10 fields changed
      • 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."
        +}
    • Changedfinish_qa_orchestration1 field changed
      • 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"
        +  }
        +]
    • Changedget_qa_orchestration1 field changed
      • 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"
        +  }
        +]
    • Changedget_qa_orchestration_catalog2 fields changed
      • addedOutput schema / properties / bundles / items / properties / execution_groups
        Added value: +{
        +  "description": "Ordered execution waves. Profiles in the same group are independent and may be reviewed concurrently; finish each group before starting the next.",
        +  "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"
        +  },
        +  "type": "array"
        +}
      • changedOutput schema / properties / bundles / items / required
        Previous value: -[
        -  "bundle",
        -  "when_to_use",
        -  "profiles"
        -]New value: +[
        +  "bundle",
        +  "when_to_use",
        +  "profiles",
        +  "execution_groups"
        +]
    • Changedget_qa_orchestration_model_policy56 fields changed
      • changedOutput schema / description
        Previous value: -"The model IDs the host agent should use for each orchestration role."New value: +"Flat MCP response shape for configured and host-default model policies."
      • addedOutput schema / properties / deep_model / anyOf
        Added value: +[
        +  {
        +    "maxLength": 128,
        +    "minLength": 1,
        +    "pattern": "^[A-Za-z0-9][A-Za-z0-9._-]{0,127}$",
        +    "type": "string"
        +  },
        +  {
        +    "type": "null"
        +  }
        +]
      • addedOutput schema / properties / deep_model / default
        Added value: +null
      • removedOutput schema / properties / deep_model / maxLength
        Removed value: -128
      • removedOutput schema / properties / deep_model / minLength
        Removed value: -1
      • removedOutput schema / properties / deep_model / pattern
        Removed value: -"^[A-Za-z0-9][A-Za-z0-9._-]{0,127}$"
      • addedOutput schema / properties / deep_model / title
        Added value: +"Deep Model"
      • removedOutput schema / properties / deep_model / type
        Removed value: -"string"
      • addedOutput schema / properties / deep_reasoning / anyOf
        Added value: +[
        +  {
        +    "enum": [
        +      "none",
        +      "minimal",
        +      "low",
        +      "medium",
        +      "high",
        +      "xhigh",
        +      "max"
        +    ],
        +    "type": "string"
        +  },
        +  {
        +    "type": "null"
        +  }
        +]
      • changedOutput schema / properties / deep_reasoning / default
        Previous value: -"high"New value: +null
      • removedOutput schema / properties / deep_reasoning / enum
        Removed value: -[
        -  "none",
        -  "minimal",
        -  "low",
        -  "medium",
        -  "high",
        -  "xhigh",
        -  "max"
        -]
      • addedOutput schema / properties / deep_reasoning / title
        Added value: +"Deep Reasoning"
      • removedOutput schema / properties / deep_reasoning / type
        Removed value: -"string"
      • addedOutput schema / properties / mode
        Added value: +{
        +  "enum": [
        +    "configured",
        +    "host_default"
        +  ],
        +  "title": "Mode",
        +  "type": "string"
        +}
      • addedOutput schema / properties / primary_model / anyOf
        Added value: +[
        +  {
        +    "maxLength": 128,
        +    "minLength": 1,
        +    "pattern": "^[A-Za-z0-9][A-Za-z0-9._-]{0,127}$",
        +    "type": "string"
        +  },
        +  {
        +    "type": "null"
        +  }
        +]
      • addedOutput schema / properties / primary_model / default
        Added value: +null
      • removedOutput schema / properties / primary_model / maxLength
        Removed value: -128
      • removedOutput schema / properties / primary_model / minLength
        Removed value: -1
      • removedOutput schema / properties / primary_model / pattern
        Removed value: -"^[A-Za-z0-9][A-Za-z0-9._-]{0,127}$"
      • addedOutput schema / properties / primary_model / title
        Added value: +"Primary Model"
      • removedOutput schema / properties / primary_model / type
        Removed value: -"string"
      • addedOutput schema / properties / primary_reasoning / anyOf
        Added value: +[
        +  {
        +    "enum": [
        +      "none",
        +      "minimal",
        +      "low",
        +      "medium",
        +      "high",
        +      "xhigh",
        +      "max"
        +    ],
        +    "type": "string"
        +  },
        +  {
        +    "type": "null"
        +  }
        +]
      • changedOutput schema / properties / primary_reasoning / default
        Previous value: -"medium"New value: +null
      • removedOutput schema / properties / primary_reasoning / enum
        Removed value: -[
        -  "none",
        -  "minimal",
        -  "low",
        -  "medium",
        -  "high",
        -  "xhigh",
        -  "max"
        -]
      • addedOutput schema / properties / primary_reasoning / title
        Added value: +"Primary Reasoning"
      • removedOutput schema / properties / primary_reasoning / type
        Removed value: -"string"
      • addedOutput schema / properties / provider / anyOf
        Added value: +[
        +  {
        +    "enum": [
        +      "openai",
        +      "anthropic"
        +    ],
        +    "title": "ModelProvider",
        +    "type": "string"
        +  },
        +  {
        +    "type": "null"
        +  }
        +]
      • addedOutput schema / properties / provider / default
        Added value: +null
      • removedOutput schema / properties / provider / enum
        Removed value: -[
        -  "openai",
        -  "anthropic"
        -]
      • removedOutput schema / properties / provider / type
        Removed value: -"string"
      • addedOutput schema / properties / synthesis_model / anyOf
        Added value: +[
        +  {
        +    "maxLength": 128,
        +    "minLength": 1,
        +    "pattern": "^[A-Za-z0-9][A-Za-z0-9._-]{0,127}$",
        +    "type": "string"
        +  },
        +  {
        +    "type": "null"
        +  }
        +]
      • addedOutput schema / properties / synthesis_model / default
        Added value: +null
      • removedOutput schema / properties / synthesis_model / maxLength
        Removed value: -128
      • removedOutput schema / properties / synthesis_model / minLength
        Removed value: -1
      • removedOutput schema / properties / synthesis_model / pattern
        Removed value: -"^[A-Za-z0-9][A-Za-z0-9._-]{0,127}$"
      • addedOutput schema / properties / synthesis_model / title
        Added value: +"Synthesis Model"
      • removedOutput schema / properties / synthesis_model / type
        Removed value: -"string"
      • addedOutput schema / properties / synthesis_reasoning / anyOf
        Added value: +[
        +  {
        +    "enum": [
        +      "none",
        +      "minimal",
        +      "low",
        +      "medium",
        +      "high",
        +      "xhigh",
        +      "max"
        +    ],
        +    "type": "string"
        +  },
        +  {
        +    "type": "null"
        +  }
        +]
      • changedOutput schema / properties / synthesis_reasoning / default
        Previous value: -"medium"New value: +null
      • removedOutput schema / properties / synthesis_reasoning / enum
        Removed value: -[
        -  "none",
        -  "minimal",
        -  "low",
        -  "medium",
        -  "high",
        -  "xhigh",
        -  "max"
        -]
      • addedOutput schema / properties / synthesis_reasoning / title
        Added value: +"Synthesis Reasoning"
      • removedOutput schema / properties / synthesis_reasoning / type
        Removed value: -"string"
      • addedOutput schema / properties / triage_model / anyOf
        Added value: +[
        +  {
        +    "maxLength": 128,
        +    "minLength": 1,
        +    "pattern": "^[A-Za-z0-9][A-Za-z0-9._-]{0,127}$",
        +    "type": "string"
        +  },
        +  {
        +    "type": "null"
        +  }
        +]
      • addedOutput schema / properties / triage_model / default
        Added value: +null
      • removedOutput schema / properties / triage_model / maxLength
        Removed value: -128
      • removedOutput schema / properties / triage_model / minLength
        Removed value: -1
      • removedOutput schema / properties / triage_model / pattern
        Removed value: -"^[A-Za-z0-9][A-Za-z0-9._-]{0,127}$"
      • addedOutput schema / properties / triage_model / title
        Added value: +"Triage Model"
      • removedOutput schema / properties / triage_model / type
        Removed value: -"string"
      • addedOutput schema / properties / triage_reasoning / anyOf
        Added value: +[
        +  {
        +    "enum": [
        +      "none",
        +      "minimal",
        +      "low",
        +      "medium",
        +      "high",
        +      "xhigh",
        +      "max"
        +    ],
        +    "type": "string"
        +  },
        +  {
        +    "type": "null"
        +  }
        +]
      • changedOutput schema / properties / triage_reasoning / default
        Previous value: -"max"New value: +null
      • removedOutput schema / properties / triage_reasoning / enum
        Removed value: -[
        -  "none",
        -  "minimal",
        -  "low",
        -  "medium",
        -  "high",
        -  "xhigh",
        -  "max"
        -]
      • addedOutput schema / properties / triage_reasoning / title
        Added value: +"Triage Reasoning"
      • removedOutput schema / properties / triage_reasoning / type
        Removed value: -"string"
      • changedOutput schema / required
        Previous value: -[
        -  "provider",
        -  "triage_model",
        -  "primary_model",
        -  "deep_model",
        -  "synthesis_model"
        -]New value: +[
        +  "mode"
        +]
      • addedOutput schema / title
        Added value: +"ModelPolicyResponse"
    • Addedprepare_qa_orchestration_bundle
    • Changedstart_qa_orchestration1 field changed
      • changedOutput schema / properties / model_policy / anyOf
        Previous value: -[
        -  {
        -    "additionalProperties": false,
        -    "properties": {
        -      "model": {
        -        "anyOf": [
        -          {
        -            "enum": [
        -              "gpt-6-luna",
        -              "gpt-6-sol"
        -            ],
        -            "type": "string"
        -          },
        -          {
        -            "type": "string"
        -          }
        -        ]
        -      },
        -      "provider": {
        -        "default": "openai",
        -        "enum": [
        -          "openai",
        -          "anthropic"
        -        ],
        -        "type": "string"
        -      },
        -      "reasoning": {
        -        "enum": [
        -          "none",
        -          "minimal",
        -          "low",
        -          "medium",
        -          "high",
        -          "xhigh",
        -          "max"
        -        ],
        -        "type": "string"
        -      },
        -      "reasoning_capabilities_verified": {
        -        "default": false,
        -        "type": "boolean"
        -      }
        -    },
        -    "required": [
        -      "model",
        -      "reasoning"
        -    ],
        -    "type": "object"
        -  },
        -  {
        -    "type": "null"
        -  }
        -]New value: +[
        +  {
        +    "additionalProperties": false,
        +    "properties": {
        +      "mode": {
        +        "const": "configured",
        +        "default": "configured",
        +        "type": "string"
        +      },
        +      "model": {
        +        "anyOf": [
        +          {
        +            "enum": [
        +              "gpt-6-luna",
        +              "gpt-6-sol"
        +            ],
        +            "type": "string"
        +          },
        +          {
        +            "type": "string"
        +          }
        +        ]
        +      },
        +      "provider": {
        +        "default": "openai",
        +        "enum": [
        +          "openai",
        +          "anthropic"
        +        ],
        +        "type": "string"
        +      },
        +      "reasoning": {
        +        "enum": [
        +          "none",
        +          "minimal",
        +          "low",
        +          "medium",
        +          "high",
        +          "xhigh",
        +          "max"
        +        ],
        +        "type": "string"
        +      },
        +      "reasoning_capabilities_verified": {
        +        "default": false,
        +        "type": "boolean"
        +      }
        +    },
        +    "required": [
        +      "model",
        +      "reasoning"
        +    ],
        +    "type": "object"
        +  },
        +  {
        +    "additionalProperties": false,
        +    "properties": {
        +      "mode": {
        +        "const": "host_default",
        +        "default": "host_default",
        +        "type": "string"
        +      }
        +    },
        +    "type": "object"
        +  },
        +  {
        +    "type": "null"
        +  }
        +]
  5. 1 tool updatev0.2.0
    • Addeddelete_qa_orchestration

TDQS

A4.6/5.0

Scored across 11 tools

Disambiguation4/5

Most tools have clearly distinct lifecycle roles, but the three stateless lookup tools (get_qa_orchestration_catalog, prepare_qa_orchestration, prepare_qa_orchestration_bundle) all return bundled review definitions and could be momentarily confused despite descriptions clarifying their scope.

Naming Consistency5/5

All names follow a predictable snake_case verb_qa_orchestration(s) pattern with consistent prefixes (start, prepare, get, advance, renew, list, delete, finish). Minor noun suffix variation (catalog, model_policy, bundle) is descriptive rather than inconsistent.

Tool Count5/5

11 tools map cleanly to the QA session lifecycle plus stateless lookups; none appear redundant, and the set is well within the typical 3-15 range for a focused orchestration server.

Completeness5/5

Covers create, advance, finalize, read, list, delete, renew, plus preparation, catalog, and model-policy lookups—full lifecycle with recovery paths for lost session IDs. No obvious operational gap for the stated QA orchestration scope.

Maintenance

ActivityActive
ResponsivenessUnresponsive

Related MCP Connectors

Related MCP Servers