{ "task_id": "DEV-000292", "task_revision": 1, "architecture_revision": "ADR-0018", "base_repo_revision": "HEAD", "risk_tier": "E", "intent": "Provide an explicitly isolated development/test runtime profile for Domovoy so local model, speech, image, OCR, Docker and diagnostic paths are usable without changing production behavior.", "requirement_ids": ["isolated development runtime", "local multimodal model access", "development diagnostics"], "allowed_change_scope": { "modules": ["interaction", "core-runtime", "cognitive-worker", "creator-web", "deployment", "development-governance"], "paths": [ "cmd/cognitive-worker/**", "cmd/core-runtime/**", "cmd/creator-web/**", "cmd/research-runtime/**", "adapters/models/**", "adapters/research/**", "contracts/cognitive/**", "modules/interaction/domain/**", "deploy/docker-compose.dev.yml", "dev/ACTIVE_TASK.json", "dev/tasks/DEV-000292-development-mode-runtime-access.json", "docs/evidence/**", "docs/PROJECT_STATUS.md" ] }, "forbidden_change_scope": { "paths": ["architecture/**", "security/**", "database/**", "deploy/docker-compose.prod.yml", "LLM-local/**"] }, "allowed_architecture_delta": { "new_cross_module_dependencies": 0, "new_canonical_owners": 0, "new_privileges": 1, "new_third_party_dependencies": 0, "new_database_owner_roles": 0 }, "contracts": { "consume": ["existing cognitive gateway", "existing local model HTTP APIs", "existing dev compose network"], "may_change": ["dev-only modality and diagnostic wiring; no production contract change"] }, "semantic_owner": "development-governance owns the isolated dev profile; cognitive-worker owns model capability routing", "canonical_state": ["existing dev databases and Docker volumes only"], "state_transitions": ["production-only restriction -> explicit dev-only capability switch"], "side_effects_and_privileges": ["dev network and Docker diagnostics only", "no production credentials", "no secret logging", "no production external mutation"], "persistence_and_migrations": ["dev volumes only; no production migration"], "failure_retry_restart": ["dev services remain independently restartable", "unsupported modality stays explicitly unavailable"], "assumptions": ["the developer starts the profile separately from production", "test credentials are disposable and never reused in production"], "acceptance_scenarios": ["dev profile starts independently", "text, speech, image and OCR routes are discoverable or report a precise unavailable state", "diagnostic endpoints are reachable inside the dev network", "meaningful chat requests prefer cognitive interpretation over token reflexes", "stable reflexes are sampled periodically for cognitive drift and a disagreement is observable as a cognitive candidate", "production compose remains unchanged", "no secret value appears in source or logs"], "required_tests": ["go test ./...", "go vet ./...", "go run ./cmd/devctl preflight -active dev/ACTIVE_TASK.json", "go run ./cmd/devctl check-diff -active dev/ACTIVE_TASK.json", "go run ./cmd/devctl check-architecture", "go run ./cmd/devctl independent", "docker compose -f deploy/docker-compose.dev.yml config", "git diff --check", "dev runtime health smoke"], "terminal_gap_states": ["BLOCKED_BY_ARCHITECTURE_GAP", "BLOCKED_BY_SPEC_GAP", "BLOCKED_BY_CONFLICT", "BLOCKED_BY_MISSING_CAPABILITY"] }