{"apiVersion": "openeyes.nails.web.v1", "boundary": "provider_authorization_review_artifact_confirmed_local_write_only", "confirmedWriteContractPath": "/api/web/v1/plugins/nails/production-cutover:provider-authorization-review-artifact-confirmed-write-contract", "confirmedWritePath": "/api/web/v1/plugins/nails/production-cutover:provider-authorization-review-artifact-confirmed-write", "contract": {"additionalProperties": false, "contractVersion": 1, "methods": ["POST"], "name": "nails-production-cutover-provider-authorization-review-artifact-confirmed-write", "optionalFields": ["referenceUri", "reviewerRole", "sourceEvidenceNotes", "replaceExisting", "compactOutputFiles"], "requiredFields": ["reviewPackageDir", "providerId", "market", "evidenceId", "reviewerId", "reviewedAt", "findingsSummary", "approvedForReadOnlyProviderCollection"], "schemaDigest": "115a2e3ab0206f96e1e0ca664127e427682950a8f05e6789dbc963a2480b7eef", "schemaId": "https://openeyes.local/plugins/nails/web/v1/production-cutover-provider-authorization-review-artifact-confirmed-write-request.schema.json"}, "deployEnabled": false, "links": {"sourceExternalEvidencePacket": {"contractPath": "/api/web/v1/plugins/nails/production-cutover:go-live-external-evidence-packet-contract", "method": "POST", "network": false, "path": "/api/web/v1/plugins/nails/production-cutover:go-live-external-evidence-packet"}, "stagingExecutionPacketAudit": {"contractPath": "/api/web/v1/plugins/nails/production-cutover:staging-execution-packet-audit-contract", "method": "POST", "network": false, "path": "/api/web/v1/plugins/nails/production-cutover:staging-execution-packet-audit", "requiresAllProviderAuthorizationArtifactsReady": true}}, "localWrapper": {"commandTemplate": "rtk python scripts/nails_write_provider_authorization_review_artifact.py --review-package-dir <reviewPackageDir> --provider-id <providerId> --market <market> --evidence-id <evidenceId> --reviewer-id <reviewerId> --reviewed-at <reviewedAt> --findings-summary <non-secret-summary> --approved-for-read-only-provider-collection", "deployEnabled": false, "embeddedAuditScript": "scripts/nails_audit_provider_authorization_review_package.py", "network": false, "productionMutations": false, "script": "scripts/nails_write_provider_authorization_review_artifact.py", "submitEnabled": false, "uploadEnabled": false}, "method": "GET", "network": false, "ok": true, "pluginId": "nails", "productionMutations": false, "route": "/api/web/v1/plugins/nails/production-cutover:provider-authorization-review-artifact-confirmed-write-contract", "schema": {"$id": "https://openeyes.local/plugins/nails/web/v1/production-cutover-provider-authorization-review-artifact-confirmed-write-request.schema.json", "$schema": "https://json-schema.org/draft/2020-12/schema", "additionalProperties": false, "properties": {"approvedForReadOnlyProviderCollection": {"const": true, "description": "Must be explicitly true; this route records a confirmed approval and does not auto-approve on the caller's behalf.", "type": "boolean"}, "compactOutputFiles": {"default": false, "description": "Write compact JSON artifacts when true.", "type": "boolean"}, "evidenceId": {"description": "Evidence id in the artifact manifest row.", "minLength": 1, "type": "string"}, "findingsSummary": {"description": "Non-secret approval summary.", "minLength": 1, "type": "string"}, "market": {"description": "Market in the artifact manifest row, such as CN or GLOBAL.", "minLength": 1, "type": "string"}, "providerId": {"description": "Provider id in the artifact manifest row.", "minLength": 1, "type": "string"}, "referenceUri": {"description": "Optional stable non-secret oss:// or maliang:// URI. When omitted the manifest row referenceUri is reused.", "minLength": 1, "type": "string"}, "replaceExisting": {"default": false, "description": "When false, an already approved artifact is not overwritten.", "type": "boolean"}, "reviewPackageDir": {"description": "Local provider authorization review package directory generated by production-cutover:go-live-external-evidence-packet.", "minLength": 1, "type": "string"}, "reviewedAt": {"description": "Non-secret review timestamp, preferably ISO-8601 UTC.", "minLength": 1, "type": "string"}, "reviewerId": {"description": "Non-secret reviewer or system id.", "minLength": 1, "type": "string"}, "reviewerRole": {"description": "Optional reviewer role override.", "minLength": 1, "type": "string"}, "sourceEvidenceNotes": {"description": "Optional non-secret source evidence notes.", "minLength": 1, "type": "string"}}, "required": ["reviewPackageDir", "providerId", "market", "evidenceId", "reviewerId", "reviewedAt", "findingsSummary", "approvedForReadOnlyProviderCollection"], "title": "Nails Production Cutover Provider Authorization Review Artifact Confirmed Write Request v1", "type": "object"}, "sideEffects": "local_provider_authorization_review_artifact_files_only", "submitEnabled": false, "uploadEnabled": false, "writeBoundary": {"deployEnabled": false, "mode": "provider_authorization_review_artifact_confirmed_local_write", "network": false, "productionMutations": false, "readsLocalFiles": true, "runsEmbeddedAudit": true, "secretMaterialReturned": false, "submitEnabled": false, "uploadEnabled": false, "writesLocalFiles": true, "writesLocalState": false}}