{ "task_id": "DEV-000061", "task_revision": 2, "architecture_revision": "ADR-0009+ADR-0010", "base_repo_revision": "e4b6121dc08041f1d4dc00aa042714d0fd933aa0", "risk_tier": "E", "intent": "Add the Interaction canonical owner, bounded authenticated Web Chat V1 foundation, and the minimal provider-neutral CredentialRef secret resolution prerequisite.", "requirement_ids": [ "INV-OWN-001", "INV-EPI-001", "ADR-0009", "ADR-0010" ], "allowed_change_scope": { "modules": [ "interaction", "identity", "epistemics", "capability", "platform" ], "paths": [ "architecture/adrs/ADR-0009-human-interaction-owner.md", "architecture/adrs/ADR-0010-credential-ref-secret-resolution.md", "architecture/architecture-registry.yaml", "architecture/architecture-registry.json", "database/**", "contracts/interaction/**", "contracts/secrets/**", "modules/interaction/**", "platform/secrets/**", "adapters/postgres/**", "cmd/core-runtime/**", "cmd/creator-web/**", "deploy/**", "tests/human_interaction/**", "tests/secret_resolution/**", "tests/architecture/**", "docs/PROJECT_STATUS.md", "dev/ACTIVE_TASK.json", "dev/tasks/DEV-000061-human-interaction-foundation.json" ] }, "forbidden_change_scope": { "paths": [ "architecture/ARCHITECTURE_CONSTITUTION.md", "contracts/identity/**", "contracts/epistemics/**", "contracts/work/**", "contracts/authority/**", "contracts/commit/**", "modules/identity/**", "modules/epistemics/**", "modules/work/**", "modules/authority/**", "modules/commit/**", "cmd/cognitive-worker/**", "security/**", "ci/**", ".gitea/**" ] }, "allowed_architecture_delta": { "new_cross_module_dependencies": 3, "new_canonical_owners": 1, "new_privileges": 1, "new_third_party_dependencies": 0, "new_provider_adapters": 0 }, "contracts": { "consume": [ "identity session", "situation focus", "cognitive gateway", "credential ref secret resolution" ], "may_change": [ "contracts/interaction@v1", "contracts/secrets@v1" ] }, "semantic_owner": "interaction", "canonical_state": [ "Conversation", "HumanUtterance", "UtteranceInterpretation", "OriginalHumanIntent", "InteractionRelation" ], "state_transitions": [ "utterance RECORDED->INTERPRETED", "conversation OPEN" ], "side_effects_and_privileges": [ "authenticated human message persistence", "bounded advisory call through existing gateway only", "interaction_role credential resolution through CredentialRef and Secret Resolver" ], "persistence_and_migrations": [ "interaction schema and owner-local tables", "no cross-owner FK", "CredentialRef metadata only; plaintext secrets remain in protected Secret Backend" ], "failure_retry_restart": [ "append utterance before interpretation", "cognitive loss produces human-safe unavailable response", "no automatic mutation", "secret resolution fails closed without exposing plaintext" ], "assumptions": [ "user accepted ADR-0009 decision", "user accepted ADR-0010 decision", "CPU CANARY allowed only through existing flag", "docker-test prohibited", "existing protected local secret storage is the first Secret Backend" ], "acceptance_scenarios": [ "typed utterance and conversation", "identity assurance separate from truth", "speech acts distinguishable", "correction appends", "no direct provider", "no ACTIVE binding", "CredentialRef resolves only for authorized runtime consumers" ], "required_tests": [ "go test ./...", "go vet ./...", "architecture", "owner ACL", "LLM-free", "cognitive registry", "human interaction", "secret resolution" ], "terminal_gap_states": [ "BLOCKED_BY_ARCHITECTURE_GAP", "BLOCKED_BY_SPEC_GAP", "BLOCKED_BY_MISSING_CAPABILITY", "BLOCKED_BY_CONFLICT" ] }