diff --git a/dev/ACTIVE_TASK.json b/dev/ACTIVE_TASK.json index 94b2bd5..8e774ae 100644 --- a/dev/ACTIVE_TASK.json +++ b/dev/ACTIVE_TASK.json @@ -1,5 +1,5 @@ { - "task_file": "dev/tasks/DEV-000051-openai-advisory-runtime-gate.json", - "task_id": "DEV-000051", + "task_file": "dev/tasks/DEV-000052-promote-disabled-openai-gate.json", + "task_id": "DEV-000052", "task_revision": 1 } diff --git a/dev/tasks/DEV-000052-promote-disabled-openai-gate.json b/dev/tasks/DEV-000052-promote-disabled-openai-gate.json new file mode 100644 index 0000000..94939eb --- /dev/null +++ b/dev/tasks/DEV-000052-promote-disabled-openai-gate.json @@ -0,0 +1,23 @@ +{ + "task_id": "DEV-000052", + "task_revision": 1, + "architecture_revision": "ADR-0007", + "base_repo_revision": "61f349ec409ea399149184ba3bdef79e52409ba0", + "risk_tier": "E", + "intent": "Promote the exact merged disabled-by-default OpenAI runtime gate to docker-prod, refreshing all project image provenance while proving no OpenAI credential/mount/egress activation, the OpenAI endpoint remains unavailable and deterministic advisory plus production health remain intact.", + "requirement_ids": ["ADR-0007", "DEV-000045", "DEV-000051", "INV-EPI-001"], + "allowed_change_scope": {"modules": [], "paths": ["dev/ACTIVE_TASK.json", "dev/tasks/DEV-000052-promote-disabled-openai-gate.json"]}, + "forbidden_change_scope": {"paths": ["architecture/**", "ci/**", ".gitea/**", "contracts/**", "modules/**", "adapters/**", "cmd/**", "database/**", "deploy/**", "docs/**", "security/**", "tests/**"]}, + "allowed_architecture_delta": {"new_cross_module_dependencies": 0, "new_canonical_owners": 0, "new_privileges": 0, "new_third_party_dependencies": 0}, + "contracts": {"consume": ["creator-advisory-v1", "ADR-0007", "production artifact provenance"], "may_change": []}, + "semantic_owner": "none-promotion-only", + "canonical_state": [], + "state_transitions": [], + "side_effects_and_privileges": ["rebuild and replace the seven project-owned containers on docker-prod from exact merged main", "refresh external deployment manifests", "no OpenAI secret, provider call, egress route or Creator Web binding"], + "persistence_and_migrations": [], + "failure_retry_restart": ["existing canonical volumes and secrets remain mounted unchanged", "failed promotion does not publish a new manifest", "OpenAI endpoint remains 503 and deterministic advisory remains available after restart"], + "assumptions": ["current production contains no OPENAI_API_KEY or OPENAI_API_KEY_FILE configuration", "docker-test remains prohibited"], + "acceptance_scenarios": ["all seven project images carry exact merged main revision", "production health remains healthy", "OpenAI endpoint returns 503", "deterministic advisory returns PROVIDER_UNAVAILABLE", "cognitive worker has no OpenAI/provider credential environment or mount", "Creator Web continues routing to deterministic endpoint"], + "required_tests": ["architecture preflight", "exact diff scope", "CI", "exact artifact confirmation", "production health", "disabled OpenAI endpoint smoke", "deterministic advisory smoke", "cognitive isolation inspection"], + "terminal_gap_states": ["BLOCKED_BY_ARCHITECTURE_GAP", "BLOCKED_BY_SPEC_GAP", "BLOCKED_BY_MISSING_CAPABILITY", "BLOCKED_BY_CONFLICT"] +}