{"apiVersion": "openeyes.nails.web.v1", "boundary": "go_live_maliang_api_input_candidate_completion_local_only", "candidateBoundary": {"advancesLocalGoLiveTracker": true, "collectionExecutionEnabled": false, "deployEnabled": false, "liveCollectionEnabled": false, "mode": "maliang_api_input_candidate_completion_local_files_only", "network": false, "preparesMaliangApiInputCandidate": true, "preparesProviderQualityConfirmationHandoff": true, "productionMutations": false, "readsLocalFiles": true, "secretMaterialReturned": false, "submitEnabled": false, "uploadEnabled": false, "writesLocalAuditState": false, "writesLocalFiles": true}, "candidateContractPath": "/api/web/v1/plugins/nails/production-cutover:maliang-api-input-candidate-contract", "candidatePath": "/api/web/v1/plugins/nails/production-cutover:maliang-api-input-candidate", "collectionExecutionEnabled": false, "contract": {"additionalProperties": false, "contractVersion": 1, "methods": ["POST"], "name": "nails-production-cutover-maliang-api-input-candidate", "optionalFields": ["sourceReport", "outputDir", "envMode", "allowFixtureTarget", "allowWithoutExternalQuality", "replace", "compactOutputFiles"], "requiredFields": ["startBundle"], "schemaDigest": "a16839136443a5e5741d8e6e9be5b5f6336b6090912f4e1256d8c79c16d5aec9", "schemaId": "https://openeyes.local/plugins/nails/web/v1/production-cutover-maliang-api-input-candidate-request.schema.json"}, "deployEnabled": false, "links": {"providerCollectorReturn": {"contractPath": "/api/web/v1/plugins/nails/production-cutover:provider-collector-return-contract", "method": "POST", "network": false, "path": "/api/web/v1/plugins/nails/production-cutover:provider-collector-return"}, "providerQualityExternalConfirmation": {"artifact": "<startBundle>/provider-quality-confirmation.json", "network": false, "nextCommand": "scripts/nails_complete_go_live_provider_quality.py"}, "realEvidenceEntryConfirmedWrite": {"contractPath": "/api/web/v1/plugins/nails/production-cutover:real-evidence-entry-confirmed-write-contract", "evidenceEntryId": "provider_collector_return", "method": "POST", "network": false, "path": "/api/web/v1/plugins/nails/production-cutover:real-evidence-entry-confirmed-write"}}, "liveCollectionEnabled": false, "localWrapper": {"collectionExecutionEnabled": false, "commandTemplate": "rtk python scripts/nails_complete_go_live_maliang_api_input_candidate.py --start-bundle <startBundle> --source-report <providerCollectorImportReport> --output-dir <outputDir>", "deployEnabled": false, "liveCollectionEnabled": false, "network": false, "productionMutations": false, "script": "scripts/nails_complete_go_live_maliang_api_input_candidate.py", "steps": ["locate provider collector import report", "prepare public-release / Maliang API-input candidate bundle", "write provider-quality external confirmation handoff", "advance the local go-live tracker with maliang_api_input_candidate"], "submitEnabled": false, "uploadEnabled": false}, "method": "GET", "network": false, "ok": true, "pluginId": "nails", "productionMutations": false, "route": "/api/web/v1/plugins/nails/production-cutover:maliang-api-input-candidate-contract", "schema": {"$id": "https://openeyes.local/plugins/nails/web/v1/production-cutover-maliang-api-input-candidate-request.schema.json", "$schema": "https://json-schema.org/draft/2020-12/schema", "additionalProperties": false, "properties": {"allowFixtureTarget": {"default": false, "description": "Allow deterministic fixture Maliang target for local rehearsal. Production/staging runs should leave this false.", "type": "boolean"}, "allowWithoutExternalQuality": {"default": false, "description": "Diagnostic-only escape hatch for candidate prep before external provider-quality evidence readiness.", "type": "boolean"}, "compactOutputFiles": {"default": false, "description": "Write compact JSON artifacts when true.", "type": "boolean"}, "envMode": {"default": "process", "description": "Environment mode used by local candidate packaging and next-command templates.", "enum": ["fixture", "process"], "type": "string"}, "outputDir": {"description": "Optional empty local output directory for candidate completion artifacts. When supplied it must resolve inside the start bundle.", "minLength": 1, "type": "string"}, "replace": {"default": false, "description": "Allow replacing the maliang_api_input_candidate stage entry when advancing the local go-live tracker.", "type": "boolean"}, "sourceReport": {"description": "Optional provider collector import report inside the start bundle. Defaults to the latest collector return completion output.", "minLength": 1, "type": "string"}, "startBundle": {"description": "Local go-live start bundle whose provider collector return has been imported.", "minLength": 1, "type": "string"}}, "required": ["startBundle"], "title": "Nails Production Cutover Maliang API Input Candidate Request v1", "type": "object"}, "sideEffects": "local_maliang_api_input_candidate_completion_files_only", "submitEnabled": false, "uploadEnabled": false}