Content Workflow Validation
Use one outer reasoner to supervise a single decision-only planning child,
validate its digest-bound proposal before any operation, invoke exact
Validation adapters, inspect their typed facts and actual images, author the
assessment, and review the exact saved result. Deterministic code owns
preparation, acceptance, execution boundaries, readback, and receipts.
When to Use
- Let one planning child select only the static, render, runtime-evidence, or
advisory capabilities justified by explicit claims and acceptance criteria.
- Run a documented named profile without inferring additional work.
- Perform a comprehensive final agentic validation after staged checks.
- Assess a composed asset with upstream handoffs and cross-stage evidence bound
before semantic review.
- Ingest a domain-verified operation without rerunning its provider, renderer,
simulator, or domain workflow.
Use the $fixed-pipeline umbrella's validation-agent-cli reference for YAML/config-driven
Validation Agent runs, services, and legacy template automation.
Limitations
- The planning child proposes checks but has no execution or publication
authority. The outer process rejects stale, unknown, duplicate, cyclic,
undeclared, mistargeted, mistyped, or policy-invalid plans before any call.
- V0.6 permits one instance per capability and no revision loop, carry-forward,
or follow-up proposals. Those are post-v0.6 behavior.
- Do not mutate the source USD. A changed source/dependency identity fails.
- Final
render_valid geometry evidence must come from the shared OVRTX USD
render path and retain the exact source USD digest plus OVRTX render metadata.
Local preview images are reference-only and cannot satisfy this gate.
- A precomputed OVRTX image may satisfy
render_valid only through an explicit
qualified_render_evidence record that verifies its source digest, image
digest, backend, and retained OVRTX metadata. A generic reference image or a
qualification string without that metadata remains reference-only. The v1
record binds one source digest, so multi-source requests cannot use this
precomputed-evidence path.
physical_behavior consumes existing simulator/runtime/recording evidence;
it does not launch Newton or another simulator.
look_right is optional advisory critique. It is never canonical visual
authority and never substitutes for direct outer inspection.
- Architecture readiness is not asset qualification. Do not reuse historical
Keyboard, Dishwasher, or Texture-reference runs as fresh acceptance evidence.
Prerequisites
- Activate the repository Python environment and make
content-workflow-cli available.
- Resolve the exact source USD and its dependency closure. A bare unresolved
OmniPBR.mdl is the canonical public renderer-runtime module declaration:
bind its external identity without injecting bytes, and still require the
selected OVRTX runtime to resolve it. Other missing MDL modules, including
package-relative ./OmniPBR.mdl, fail closed.
- Gather task-required references, renderer receipts, simulator/runtime
receipts, and package evidence.
- For composed mode, prepare the accepted Articulation, Material, Texture, and
Physics handoffs plus
cross_stage_validation.json before collecting
assessment evidence.
- For canonical post-mutation visual evidence, make the package-owned in-tree
usd-cli available with an explicit local or remote OVRTX backend. The leaf
fails closed if the usd-cli provenance or OVRTX probe/render cannot be
verified.
Command Families
Choose one Validation command family and a fresh run directory:
- Agentic coordinator mode (default): use
validate run with an explicit
runner and model. Claude also requires an explicit --claude-execution-mode sdk|cli. Then run
collect-evidence, assess, and review-assessment. One child authors only
validation_coordinator_plan_patch.json; trusted code accepts and executes
it through exact adapters.
- Focused execute mode (compatibility): use
prepare, one check call per
explicitly selected capability, finalize, collect-evidence, assess,
and review-assessment. This keeps explicit outer selection available.
- Provided mode: use
ingest-verified-operation-result,
collect-evidence, assess, and review-assessment. It verifies an existing
domain result and executes no Validation template, renderer, simulator,
provider, or domain workflow.
- All-in-one execute compatibility: pass
validate run --direct-executor
for the legacy ordered-template workflow; validate resume resumes only that
path. Existing composed-asset calls with --embedded-run-state retain their
implicit compatibility routing. Its validation_plan.json is never agentic
decision authority.
If validate resume is pointed at an agentic coordinator run, it writes the
digest-bound validation_safe_restart.json disposition with
safe_restart_required, preserves the prior run, and invokes neither the
legacy executor nor another child. Start a fresh coordinator run in a new empty
output directory.
The separate validation-agent CLI remains the fixed-pipeline config/Python
surface reached through $fixed-pipeline; none of these command families
replace it. Validation selects no provider runner, model, provider execution
mode, or rendering backend by default; each provider-bearing invocation must
name its choices explicitly.
Instructions
- Run
validate run with the exact source, task, references, focus prims, and
runtime configuration. Name --runner and --model explicitly. The Claude
request path also names --claude-execution-mode sdk|cli. Use --dry-run
to inspect the selection-free preparation and prompt without launching the
child.
- Verify
validation_coordinator_preparation.json binds the source dependency
closure, task/request/config identities, all approved capabilities and
requirements, evidence inventory, mandatory constraints, and preparation
digest while selected_checks remains empty.
- The child writes only
validation_coordinator_plan_patch.json: plan ID,
bound preparation digest, claims/criteria, finite unique checks, exact
capability/template/rule IDs, targets, focus, typed parameters,
required/advisory disposition, dependencies, evidence requirements, and
completion policy. Before launch, the parent freezes the complete child
launch descriptor, including runner/model/mode and output paths; acceptance
rejects any digest change. Select at least two distinct capabilities
identified by the preparation as provider-free and include at least one
explicit dependency. It must not call a provider, renderer, simulator,
operation, nested agent, or arbitrary code.
- Trusted acceptance validates the entire proposal and source identity before
creating
validation_request.json, validation_plan.json, or operation
artifacts. The classic plan is an accepted-plan compatibility projection,
never decision input or fallback.
- Trusted execution calls
run_validation_operation in exact dependency
order and then finalizes. Only a selected check may invoke its exact leaf;
an omitted capability remains explicit and a required failure or
unevaluated check is non-success.
- Run
validate collect-evidence. In composed mode pass
--embedded-run-state; in standalone mode omit it. This binds saved native
results, source readback, actual render/reference images, package evidence,
and, when embedded, upstream handoffs and cross-stage claims.
- Inspect the evidence index and open the actual bound render/reference image
paths. Author
ValidationCoordinatorAssessment with independent static,
runtime, visual, package, and cross-stage dispositions. Cite evidence IDs,
findings, remediation requirements, confidence/limitations in rationale,
and one terminal disposition. Deterministic aggregation is non-authoritative.
- Run
validate assess, read back the canonical assessment, author an exact
ValidationCoordinatorReviewDraft, and run validate review-assessment.
Accept only a passing canonical assessment whose bytes and identity match.
- Treat
validation_terminal_receipt.json as the mode-neutral terminal
readback. For coordinator runs it binds preparation, child proposal,
accepted-plan receipt, operation index/results, assessment/review,
publication_kind: validation_assessment, and source_mutated: false.
For focused compatibility, choose exactly one explicit request form (--template,
--rule, or --profile), then run prepare, exact check calls, and
finalize. Missing mandatory selected operations fail closed.
Unselected leaves remain not_requested; an unexecuted optional critique
remains not_evaluated. Neither state is a pass.
Provided-operation method
Provided mode is separate from focused and all-in-one execute modes and requires
its own run directory. The outer reasoner selects a domain-owned
verifier/projector, which emits one
content-agent-workflows.verified-validation-operation-envelope.v1. Shared
Validation re-reads the envelope, projection, source, output, dependencies,
artifacts, report/payload, and every component contract/configuration binding.
It does not execute, normalize, rerender, simulate, call a provider, or infer
another operation.
- Have the domain verifier persist its native report and optional typed
payload, then a projection manifest binding the exact bytes and native
status.
- Run
validate ingest-verified-operation-result once per explicitly chosen
envelope. Operation IDs and gate IDs must be stable, hierarchical, and
unique within the run.
- Run
validate collect-evidence. Inspect each independent record and its
bound native artifacts.
- Author
VerifiedOperationCoordinatorAssessment against the exact
assessment_identity_sha256. Preserve every operation ID, gate ID, ingest
receipt digest, and native status; optional advisory critique remains
advisory or not_evaluated, never pass.
- Run
validate assess, then author the existing
ValidationCoordinatorReviewDraft and run validate review-assessment.
The terminal receipt retains one disposition per imported operation while
all five fixed-pipeline gates remain explicit not_evaluated in provided mode.
Its receipt_status: completed records successful deterministic
publication, not semantic acceptance. Read review_disposition separately:
only accept authorizes, while reject, revise, retry, stop, and
cancelled remain exact outer decisions and never launch a hidden loop.
Do not pass path-only common.validation_evidence.EvidenceArtifact data to
this method. A domain projector must bind the source/output/dependency/report
bytes plus producer, tool, profile/backend, verifier, and projector identity.
Canonical post-mutation visual evidence is produced separately:
content-workflow-cli validate produce-canonical-visual-evidence \
--usd post-mutation.usda \
--source-usd source.usda \
--output-dir visual-evidence \
--render-backend ovrtx
This leaf renders through the package-owned usd-cli and its explicit local or
remote OVRTX backend. It binds the dependency closure, image bytes, render
responses, camera records, usd-cli command journal/checkpoint and source
revision, render report/metadata, and tool/backend identities. Its completed
render is evidence production, not semantic visual acceptance. The outer
organizer reviews the exact image digests. Ingress may carry the emitted
envelope but never renders or judges it.
Saved-run compatibility
- Embedded receipt indexes with the legacy v1 shape predate the required
terminal-receipt and independent-gate bindings. They are intentionally
invalidated rather than migrated or relabeled; produce a fresh direct
evidence chain and v2 receipt index.
- Checkpoints created before
look_right was digest-bound to its explicit
render_valid dependency are also intentionally invalidated. Start a fresh
run identity; do not migrate the prior plan digest.
Command Reference
Run the default agentic coordinator:
content-workflow-cli validate run \
--usd asset.usda \
--task "Select and execute the checks needed for release readiness." \
--output-dir validation-run \
--render-backend remote \
--runner codex \
--model gpt-5.6-sol
content-workflow-cli validate collect-evidence --output-dir validation-run
Use --runner claude --model <model> --claude-execution-mode sdk|cli for the
equivalent Claude child request. Add --direct-executor only when the caller
intentionally owns legacy template selection; --template is rejected by the
default coordinator.
Prepare exact templates:
content-workflow-cli validate prepare \
--usd asset.usda \
--task "Validate static physics and canonical render evidence." \
--output-dir validation-run \
--template physics_sane \
--template render_valid
Prepare one named profile:
content-workflow-cli validate prepare \
--usd asset.usda \
--task "Run comprehensive final validation." \
--output-dir validation-run \
--profile comprehensive
Named profiles are static, visual, runtime, comprehensive, and
comprehensive-with-advisory-critique. Advisory critique is present only in
the last profile.
Atomic rule IDs are:
render.runtime_evidence
physics.usd_schema_sanity
physics.behavior_evidence
visual.optional_advisory_critique
When choosing the advisory rule/template, also choose
render.runtime_evidence/render_valid earlier in the same explicit request.
Run and finalize selected operations:
content-workflow-cli validate check \
--output-dir validation-run \
--template physics_sane
content-workflow-cli validate check \
--output-dir validation-run \
--template render_valid
content-workflow-cli validate finalize --output-dir validation-run
content-workflow-cli validate collect-evidence --output-dir validation-run
Assess and seal standalone evidence:
content-workflow-cli validate assess \
--output-dir validation-run \
--assessment outer-assessment.json
content-workflow-cli validate review-assessment \
--output-dir validation-run \
--review outer-review.json
Ingest and assess provided native results:
content-workflow-cli validate ingest-verified-operation-result \
--envelope physics-mass-envelope.json \
--output-dir validation-provided
content-workflow-cli validate collect-evidence \
--output-dir validation-provided
content-workflow-cli validate assess \
--output-dir validation-provided \
--assessment outer-provided-assessment.json
content-workflow-cli validate review-assessment \
--output-dir validation-provided \
--review outer-review.json
For composed mode, add the exact --embedded-run-state asset_run.json to
collect-evidence, assess, and review-assessment.
Shared benchmark report
When scoring a Validation bundle, read and follow
references/benchmark-report-and-replay.md.
Replay-video generation is internal-only and is not part of the public
Validation workflow.
Output Format
The agentic coordinator and focused compatibility paths publish:
validation_coordinator_preparation.json
validation_coordinator_plan_patch.json
validation_coordinator_accepted_plan.json
validation_coordinator_execution_receipt.json
validation_operation_preparation.json
operations/<template>/operation_result.json
validation_operation_index.json
- standard
validation_request.json, validation_plan.json,
validation_result.json, validation_evidence.json, and
final_summary.json
standalone_validation_evidence.json or
embedded_validation_evidence.json
canonical_validation_assessment.json
- mode-specific execution/receipt indexes
validation_terminal_receipt.json
Provided mode instead publishes verified_operation_ingest_index.json, one
immutable verified_operations/<envelope-digest>/ingest_receipt.json,
verified_operation_evidence_index.json, the exact canonical outer
assessment, verified_operation_execution_index.json, and the same terminal
receipt filename. Execute and provided artifacts cannot share a run directory.
Use validation_result.json and its ValidationIssue objects for #38 contract
compatibility. Use the terminal receipt for outer-authority and independent
gate readback.
Troubleshooting
- Exactly one explicit choice required: use templates, rules, or one named
profile, never a mixture, and only on focused/direct compatibility paths.
- Plan rejected before execution: inspect the exact preparation digest,
capability/template/rule IDs, targets, focus, parameter types, dependency
DAG, and policy constraints. Do not edit an accepted projection or fall back
to classic planning.
- Execute/provided conflict: use a fresh run directory. There is no
fallback or automatic conversion between modes.
- Projection differs: reproduce the domain projection from current native
bytes and identities. Do not edit the envelope or migrate its digest.
- Operation was not requested: rerun preparation with a new output
directory and an explicit outer choice. Do not modify the frozen plan.
- Required operation not evaluated: execute the missing mandatory leaf;
finalization will not convert it to a pass.
- Evidence identity is stale: start a fresh run from current source,
references, receipts, and handoffs. Do not relabel old artifacts.
- Optional judge unavailable: leave
look_right not_evaluated and perform
direct outer visual assessment from current images.
- Cross-stage evidence missing: create and bind the coordinator-reviewed
cross-stage receipt before embedded evidence collection.
1---2name: content-workflow-validation3description: Validate USD assets through deterministic preparation, one decision-only Codex or Claude planning child, outer-validated exact adapters, independent assessment/review, and non-mutating terminal receipts. Use for agentic standalone Validation; use focused commands for explicit compatibility operations and the fixed-pipeline umbrella for config-driven Validation Agent runs.4---56# Content Workflow Validation78Use one outer reasoner to supervise a single decision-only planning child,9validate its digest-bound proposal before any operation, invoke exact10Validation adapters, inspect their typed facts and actual images, author the11assessment, and review the exact saved result. Deterministic code owns12preparation, acceptance, execution boundaries, readback, and receipts.1314## When to Use1516- Let one planning child select only the static, render, runtime-evidence, or17 advisory capabilities justified by explicit claims and acceptance criteria.18- Run a documented named profile without inferring additional work.19- Perform a comprehensive final agentic validation after staged checks.20- Assess a composed asset with upstream handoffs and cross-stage evidence bound21 before semantic review.22- Ingest a domain-verified operation without rerunning its provider, renderer,23 simulator, or domain workflow.2425Use the `$fixed-pipeline` umbrella's `validation-agent-cli` reference for YAML/config-driven26Validation Agent runs, services, and legacy template automation.2728## Limitations2930- The planning child proposes checks but has no execution or publication31 authority. The outer process rejects stale, unknown, duplicate, cyclic,32 undeclared, mistargeted, mistyped, or policy-invalid plans before any call.33- V0.6 permits one instance per capability and no revision loop, carry-forward,34 or follow-up proposals. Those are post-v0.6 behavior.35- Do not mutate the source USD. A changed source/dependency identity fails.36- Final `render_valid` geometry evidence must come from the shared OVRTX USD37 render path and retain the exact source USD digest plus OVRTX render metadata.38 Local preview images are reference-only and cannot satisfy this gate.39- A precomputed OVRTX image may satisfy `render_valid` only through an explicit40 `qualified_render_evidence` record that verifies its source digest, image41 digest, backend, and retained OVRTX metadata. A generic reference image or a42 qualification string without that metadata remains reference-only. The v143 record binds one source digest, so multi-source requests cannot use this44 precomputed-evidence path.45- `physical_behavior` consumes existing simulator/runtime/recording evidence;46 it does not launch Newton or another simulator.47- `look_right` is optional advisory critique. It is never canonical visual48 authority and never substitutes for direct outer inspection.49- Architecture readiness is not asset qualification. Do not reuse historical50 Keyboard, Dishwasher, or Texture-reference runs as fresh acceptance evidence.5152## Prerequisites53541. Activate the repository Python environment and make55 `content-workflow-cli` available.562. Resolve the exact source USD and its dependency closure. A bare unresolved57 `OmniPBR.mdl` is the canonical public renderer-runtime module declaration:58 bind its external identity without injecting bytes, and still require the59 selected OVRTX runtime to resolve it. Other missing MDL modules, including60 package-relative `./OmniPBR.mdl`, fail closed.613. Gather task-required references, renderer receipts, simulator/runtime62 receipts, and package evidence.634. For composed mode, prepare the accepted Articulation, Material, Texture, and64 Physics handoffs plus `cross_stage_validation.json` before collecting65 assessment evidence.665. For canonical post-mutation visual evidence, make the package-owned in-tree67 `usd-cli` available with an explicit local or remote OVRTX backend. The leaf68 fails closed if the usd-cli provenance or OVRTX probe/render cannot be69 verified.7071## Command Families7273Choose one Validation command family and a fresh run directory:7475- **Agentic coordinator mode (default):** use `validate run` with an explicit76 runner and model. Claude also requires an explicit `--claude-execution-mode77 sdk|cli`. Then run78 `collect-evidence`, `assess`, and `review-assessment`. One child authors only79 `validation_coordinator_plan_patch.json`; trusted code accepts and executes80 it through exact adapters.81- **Focused execute mode (compatibility):** use `prepare`, one `check` call per82 explicitly selected capability, `finalize`, `collect-evidence`, `assess`,83 and `review-assessment`. This keeps explicit outer selection available.84- **Provided mode:** use `ingest-verified-operation-result`,85 `collect-evidence`, `assess`, and `review-assessment`. It verifies an existing86 domain result and executes no Validation template, renderer, simulator,87 provider, or domain workflow.88- **All-in-one execute compatibility:** pass `validate run --direct-executor`89 for the legacy ordered-template workflow; `validate resume` resumes only that90 path. Existing composed-asset calls with `--embedded-run-state` retain their91 implicit compatibility routing. Its `validation_plan.json` is never agentic92 decision authority.9394If `validate resume` is pointed at an agentic coordinator run, it writes the95digest-bound `validation_safe_restart.json` disposition with96`safe_restart_required`, preserves the prior run, and invokes neither the97legacy executor nor another child. Start a fresh coordinator run in a new empty98output directory.99100The separate `validation-agent` CLI remains the fixed-pipeline config/Python101surface reached through `$fixed-pipeline`; none of these command families102replace it. Validation selects no provider runner, model, provider execution103mode, or rendering backend by default; each provider-bearing invocation must104name its choices explicitly.105106## Instructions1071081. Run `validate run` with the exact source, task, references, focus prims, and109 runtime configuration. Name `--runner` and `--model` explicitly. The Claude110 request path also names `--claude-execution-mode sdk|cli`. Use `--dry-run`111 to inspect the selection-free preparation and prompt without launching the112 child.1132. Verify `validation_coordinator_preparation.json` binds the source dependency114 closure, task/request/config identities, all approved capabilities and115 requirements, evidence inventory, mandatory constraints, and preparation116 digest while `selected_checks` remains empty.1173. The child writes only `validation_coordinator_plan_patch.json`: plan ID,118 bound preparation digest, claims/criteria, finite unique checks, exact119 capability/template/rule IDs, targets, focus, typed parameters,120 required/advisory disposition, dependencies, evidence requirements, and121 completion policy. Before launch, the parent freezes the complete child122 launch descriptor, including runner/model/mode and output paths; acceptance123 rejects any digest change. Select at least two distinct capabilities124 identified by the preparation as provider-free and include at least one125 explicit dependency. It must not call a provider, renderer, simulator,126 operation, nested agent, or arbitrary code.1274. Trusted acceptance validates the entire proposal and source identity before128 creating `validation_request.json`, `validation_plan.json`, or operation129 artifacts. The classic plan is an accepted-plan compatibility projection,130 never decision input or fallback.1315. Trusted execution calls `run_validation_operation` in exact dependency132 order and then finalizes. Only a selected check may invoke its exact leaf;133 an omitted capability remains explicit and a required failure or134 unevaluated check is non-success.1356. Run `validate collect-evidence`. In composed mode pass136 `--embedded-run-state`; in standalone mode omit it. This binds saved native137 results, source readback, actual render/reference images, package evidence,138 and, when embedded, upstream handoffs and cross-stage claims.1397. Inspect the evidence index and open the actual bound render/reference image140 paths. Author `ValidationCoordinatorAssessment` with independent static,141 runtime, visual, package, and cross-stage dispositions. Cite evidence IDs,142 findings, remediation requirements, confidence/limitations in rationale,143 and one terminal disposition. Deterministic aggregation is non-authoritative.1448. Run `validate assess`, read back the canonical assessment, author an exact145 `ValidationCoordinatorReviewDraft`, and run `validate review-assessment`.146 Accept only a passing canonical assessment whose bytes and identity match.1479. Treat `validation_terminal_receipt.json` as the mode-neutral terminal148 readback. For coordinator runs it binds preparation, child proposal,149 accepted-plan receipt, operation index/results, assessment/review,150 `publication_kind: validation_assessment`, and `source_mutated: false`.151152For focused compatibility, choose exactly one explicit request form (`--template`,153`--rule`, or `--profile`), then run `prepare`, exact `check` calls, and154`finalize`. Missing mandatory selected operations fail closed.155 Unselected leaves remain `not_requested`; an unexecuted optional critique156 remains `not_evaluated`. Neither state is a pass.157158## Provided-operation method159160Provided mode is separate from focused and all-in-one execute modes and requires161its own run directory. The outer reasoner selects a domain-owned162verifier/projector, which emits one163`content-agent-workflows.verified-validation-operation-envelope.v1`. Shared164Validation re-reads the envelope, projection, source, output, dependencies,165artifacts, report/payload, and every component contract/configuration binding.166It does not execute, normalize, rerender, simulate, call a provider, or infer167another operation.1681691. Have the domain verifier persist its native report and optional typed170 payload, then a projection manifest binding the exact bytes and native171 status.1722. Run `validate ingest-verified-operation-result` once per explicitly chosen173 envelope. Operation IDs and gate IDs must be stable, hierarchical, and174 unique within the run.1753. Run `validate collect-evidence`. Inspect each independent record and its176 bound native artifacts.1774. Author `VerifiedOperationCoordinatorAssessment` against the exact178 `assessment_identity_sha256`. Preserve every operation ID, gate ID, ingest179 receipt digest, and native status; optional advisory critique remains180 `advisory` or `not_evaluated`, never pass.1815. Run `validate assess`, then author the existing182 `ValidationCoordinatorReviewDraft` and run `validate review-assessment`.183 The terminal receipt retains one disposition per imported operation while184 all five fixed-pipeline gates remain explicit `not_evaluated` in provided mode.185 Its `receipt_status: completed` records successful deterministic186 publication, not semantic acceptance. Read `review_disposition` separately:187 only `accept` authorizes, while `reject`, `revise`, `retry`, `stop`, and188 `cancelled` remain exact outer decisions and never launch a hidden loop.189190Do not pass path-only `common.validation_evidence.EvidenceArtifact` data to191this method. A domain projector must bind the source/output/dependency/report192bytes plus producer, tool, profile/backend, verifier, and projector identity.193194Canonical post-mutation visual evidence is produced separately:195196```bash197content-workflow-cli validate produce-canonical-visual-evidence \198 --usd post-mutation.usda \199 --source-usd source.usda \200 --output-dir visual-evidence \201 --render-backend ovrtx202```203204This leaf renders through the package-owned usd-cli and its explicit local or205remote OVRTX backend. It binds the dependency closure, image bytes, render206responses, camera records, usd-cli command journal/checkpoint and source207revision, render report/metadata, and tool/backend identities. Its completed208render is evidence production, not semantic visual acceptance. The outer209organizer reviews the exact image digests. Ingress may carry the emitted210envelope but never renders or judges it.211212## Saved-run compatibility213214- Embedded receipt indexes with the legacy v1 shape predate the required215 terminal-receipt and independent-gate bindings. They are intentionally216 invalidated rather than migrated or relabeled; produce a fresh direct217 evidence chain and v2 receipt index.218- Checkpoints created before `look_right` was digest-bound to its explicit219 `render_valid` dependency are also intentionally invalidated. Start a fresh220 run identity; do not migrate the prior plan digest.221222## Command Reference223224Run the default agentic coordinator:225226```bash227content-workflow-cli validate run \228 --usd asset.usda \229 --task "Select and execute the checks needed for release readiness." \230 --output-dir validation-run \231 --render-backend remote \232 --runner codex \233 --model gpt-5.6-sol234content-workflow-cli validate collect-evidence --output-dir validation-run235```236237Use `--runner claude --model <model> --claude-execution-mode sdk|cli` for the238equivalent Claude child request. Add `--direct-executor` only when the caller239intentionally owns legacy template selection; `--template` is rejected by the240default coordinator.241242Prepare exact templates:243244```bash245content-workflow-cli validate prepare \246 --usd asset.usda \247 --task "Validate static physics and canonical render evidence." \248 --output-dir validation-run \249 --template physics_sane \250 --template render_valid251```252253Prepare one named profile:254255```bash256content-workflow-cli validate prepare \257 --usd asset.usda \258 --task "Run comprehensive final validation." \259 --output-dir validation-run \260 --profile comprehensive261```262263Named profiles are `static`, `visual`, `runtime`, `comprehensive`, and264`comprehensive-with-advisory-critique`. Advisory critique is present only in265the last profile.266267Atomic rule IDs are:268269- `render.runtime_evidence`270- `physics.usd_schema_sanity`271- `physics.behavior_evidence`272- `visual.optional_advisory_critique`273274When choosing the advisory rule/template, also choose275`render.runtime_evidence`/`render_valid` earlier in the same explicit request.276277Run and finalize selected operations:278279```bash280content-workflow-cli validate check \281 --output-dir validation-run \282 --template physics_sane283content-workflow-cli validate check \284 --output-dir validation-run \285 --template render_valid286content-workflow-cli validate finalize --output-dir validation-run287content-workflow-cli validate collect-evidence --output-dir validation-run288```289290Assess and seal standalone evidence:291292```bash293content-workflow-cli validate assess \294 --output-dir validation-run \295 --assessment outer-assessment.json296content-workflow-cli validate review-assessment \297 --output-dir validation-run \298 --review outer-review.json299```300301Ingest and assess provided native results:302303```bash304content-workflow-cli validate ingest-verified-operation-result \305 --envelope physics-mass-envelope.json \306 --output-dir validation-provided307content-workflow-cli validate collect-evidence \308 --output-dir validation-provided309content-workflow-cli validate assess \310 --output-dir validation-provided \311 --assessment outer-provided-assessment.json312content-workflow-cli validate review-assessment \313 --output-dir validation-provided \314 --review outer-review.json315```316317For composed mode, add the exact `--embedded-run-state asset_run.json` to318`collect-evidence`, `assess`, and `review-assessment`.319320## Shared benchmark report321322When scoring a Validation bundle, read and follow323[references/benchmark-report-and-replay.md](references/benchmark-report-and-replay.md).324Replay-video generation is internal-only and is not part of the public325Validation workflow.326327## Output Format328329The agentic coordinator and focused compatibility paths publish:330331- `validation_coordinator_preparation.json`332- `validation_coordinator_plan_patch.json`333- `validation_coordinator_accepted_plan.json`334- `validation_coordinator_execution_receipt.json`335- `validation_operation_preparation.json`336- `operations/<template>/operation_result.json`337- `validation_operation_index.json`338- standard `validation_request.json`, `validation_plan.json`,339 `validation_result.json`, `validation_evidence.json`, and340 `final_summary.json`341- `standalone_validation_evidence.json` or342 `embedded_validation_evidence.json`343- `canonical_validation_assessment.json`344- mode-specific execution/receipt indexes345- `validation_terminal_receipt.json`346347Provided mode instead publishes `verified_operation_ingest_index.json`, one348immutable `verified_operations/<envelope-digest>/ingest_receipt.json`,349`verified_operation_evidence_index.json`, the exact canonical outer350assessment, `verified_operation_execution_index.json`, and the same terminal351receipt filename. Execute and provided artifacts cannot share a run directory.352353Use `validation_result.json` and its `ValidationIssue` objects for #38 contract354compatibility. Use the terminal receipt for outer-authority and independent355gate readback.356357## Troubleshooting358359- **Exactly one explicit choice required**: use templates, rules, or one named360 profile, never a mixture, and only on focused/direct compatibility paths.361- **Plan rejected before execution**: inspect the exact preparation digest,362 capability/template/rule IDs, targets, focus, parameter types, dependency363 DAG, and policy constraints. Do not edit an accepted projection or fall back364 to classic planning.365- **Execute/provided conflict**: use a fresh run directory. There is no366 fallback or automatic conversion between modes.367- **Projection differs**: reproduce the domain projection from current native368 bytes and identities. Do not edit the envelope or migrate its digest.369- **Operation was not requested**: rerun preparation with a new output370 directory and an explicit outer choice. Do not modify the frozen plan.371- **Required operation not evaluated**: execute the missing mandatory leaf;372 finalization will not convert it to a pass.373- **Evidence identity is stale**: start a fresh run from current source,374 references, receipts, and handoffs. Do not relabel old artifacts.375- **Optional judge unavailable**: leave `look_right` `not_evaluated` and perform376 direct outer visual assessment from current images.377- **Cross-stage evidence missing**: create and bind the coordinator-reviewed378 cross-stage receipt before embedded evidence collection.