{"apiVersion": "openeyes.nails.web.v1", "checks": ["verified_design_package", "visual_gate", "visual_result_roles", "asset_resource_consistency", "real_model_visual_eval"], "contract": {"additionalProperties": false, "contractVersion": 1, "name": "nails-visual-evals-report-request", "optionalFields": ["stateDigest"], "requiredFields": ["stateRoot"], "schemaDigest": "973ae2d906d972139f472710e9136a57a189f3dc2237041681d304438217bc8b", "schemaId": "https://openeyes.local/plugins/nails/web/v1/visual-evals-report-request.schema.json"}, "designPackageGetContractPath": "/api/web/v1/plugins/nails/design-packages:get-contract", "designPackageGetPath": "/api/web/v1/plugins/nails/design-packages:get", "method": "GET", "network": false, "ok": true, "onlinePilotEvidence": {"evidenceType": "visual_consistency_eval_report", "externalAuthorizationStillRequired": true, "network": false, "readinessContractPath": "/api/web/v1/plugins/nails/online-pilot:readiness-contract"}, "pluginId": "nails", "realModelVisualEvalDossier": {"artifact": "realModelVisualEvalDossier", "digestField": "realModelVisualEvalDossierDigest", "network": false, "requiredEvidence": ["model_run_record", "canonical_reference_digest", "visual_consistency_eval_report"], "submitEnabled": false, "uploadEnabled": false}, "route": "/api/web/v1/plugins/nails/visual-evals:report-contract", "rowLinks": {"authorizedSubmitPreviewRequest": {"approvalLedgerFallback": {"contractPath": "/api/web/v1/plugins/nails/online-pilot:approval-ledger-contract", "digestFields": ["authorizationRequirementsDigest", "approvalEvidencePolicyDigest", "nextGateRequestsDigest", "authorizationRequestBundleVerificationDigest"], "mode": "used_when_approvalEvidence_is_omitted", "network": false, "path": "/api/web/v1/plugins/nails/online-pilot:approval-ledger", "requiresStateRoot": true, "sourceField": "currentApprovalEvidence"}, "bodyFields": ["stateRoot", "payloadDigest", "approvalEvidence", "authorizationRequirementsDigest", "approvalEvidencePolicyDigest", "nextGateRequestsDigest", "authorizationRequestBundleVerificationDigest"], "bodyTemplate": {"approvalEvidence": "<online-pilot:evidence-packet.approvalEvidenceTemplate>", "approvalEvidencePolicyDigest": "<online-pilot:evidence-packet.approvalEvidencePolicyDigest>", "authorizationRequestBundleVerificationDigest": "<online-pilot:authorization-request-bundle-verify.verificationDigest>", "authorizationRequirementsDigest": "<online-pilot:evidence-packet.authorizationRequirementsDigest>", "nextGateRequestsDigest": "<online-pilot:evidence-packet.nextGateRequestsDigest>", "payloadDigest": "<row.payloadDigest>", "stateRoot": "<stateRoot>"}, "contractPath": "/api/web/v1/plugins/nails/online-pilot:authorized-submit-preview-contract", "deployEnabled": false, "method": "POST", "network": false, "path": "/api/web/v1/plugins/nails/online-pilot:authorized-submit-preview", "requiresStateRoot": true, "sourceFields": {"approvalEvidence": "online-pilot:evidence-packet.approvalEvidenceTemplate", "approvalEvidencePolicyDigest": "online-pilot:evidence-packet.approvalEvidencePolicyDigest", "authorizationRequestBundleVerificationDigest": "online-pilot:authorization-request-bundle-verify.verificationDigest", "authorizationRequirementsDigest": "online-pilot:evidence-packet.authorizationRequirementsDigest", "nextGateRequestsDigest": "online-pilot:evidence-packet.nextGateRequestsDigest", "payloadDigest": "online-pilot:review-package.payloadDigest", "stateRoot": "caller.localStateRoot"}, "submitEnabled": false, "uploadEnabled": false}, "designPackageRequest": {"bodyFields": ["stateDigest"], "method": "POST", "network": false, "path": "/api/web/v1/plugins/nails/design-packages:get", "requiresStateRoot": true}, "maliangHandoffPackageRequest": {"bodyFields": ["payloadDigest"], "method": "POST", "network": false, "optionalWhen": "releaseIdMatchesMaliangExportRecord", "path": "/api/web/v1/plugins/nails/maliang-exports:handoff-package", "requiresStateRoot": true}, "maliangReadinessRequest": {"bodyFields": ["payloadDigest"], "method": "POST", "network": false, "optionalWhen": "releaseIdMatchesMaliangExportRecord", "path": "/api/web/v1/plugins/nails/maliang-exports:readiness", "requiresStateRoot": true}, "onlinePilotReadinessContract": {"method": "GET", "network": false, "path": "/api/web/v1/plugins/nails/online-pilot:readiness-contract"}, "onlinePilotReviewPackageRequest": {"bodyFields": ["payloadDigest"], "condition": "external_authorization_required_before_submit", "method": "POST", "network": false, "path": "/api/web/v1/plugins/nails/online-pilot:review-package", "requiresStateRoot": true}, "realModelEvidenceApprovalLedgerConfirmedWriteRequest": {"bodyFields": ["stateRoot", "visualEvalReport", "visualEvalReportDigest", "confirmationRecord"], "contractPath": "/api/web/v1/plugins/nails/visual-evals:real-model-evidence-approval-ledger-confirmed-write-contract", "method": "POST", "network": false, "path": "/api/web/v1/plugins/nails/visual-evals:real-model-evidence-approval-ledger-confirmed-write", "requiresExternalReviewerConfirmation": true, "writesLocalState": true}, "submitGateReportRequest": {"bodyFields": ["payloadDigest"], "method": "POST", "network": false, "optionalWhen": "releaseIdMatchesMaliangExportRecord", "path": "/api/web/v1/plugins/nails/maliang-exports:submit-gate-report", "requiresStateRoot": true}}, "schema": {"$id": "https://openeyes.local/plugins/nails/web/v1/visual-evals-report-request.schema.json", "$schema": "https://json-schema.org/draft/2020-12/schema", "additionalProperties": false, "properties": {"stateDigest": {"description": "Optional verified design package state digest to evaluate; when omitted, the latest valid package is used.", "pattern": "^[a-f0-9]{64}$", "type": "string"}, "stateRoot": {"description": "Local state root that contains state/plugins/nails/verified-design-packages.", "minLength": 1, "type": "string"}}, "required": ["stateRoot"], "title": "Nails Visual Evals Report Request v1", "type": "object"}, "stateNamespace": "state/plugins/nails/verified-design-packages", "submitEnabled": false, "uploadEnabled": false, "visualEvalReportPath": "/api/web/v1/plugins/nails/visual-evals:report", "visualResultContract": {"contractVersion": 1, "name": "visual-consistency-result", "requiredFields": ["role", "assetRef", "status", "fingerResults", "directionResult", "paletteResult", "focusResult", "resourceResult", "layoutResult", "evidenceRefs", "evaluatorRef", "thresholdRef", "inputDigest", "evaluatedAt"], "schemaDigest": "cce65abe7311029a311abe2e853d1acbd883dad07ed64661a8e37a5ae5fddc5a", "schemaId": "https://openeyes.local/plugins/nails/schemas/v1/visual-consistency-result.schema.json"}}