{ "task_id": "DEV-000180", "task_revision": 1, "architecture_revision": "ADR-0018", "base_repo_revision": "2ed2302526f6915c9ddef852ed17a8c47f716cc2", "risk_tier": "E", "intent": "Allow the existing synthetic qualification benchmark to bound maximum output bytes per case for slow local providers.", "requirement_ids": ["WP-200", "AUDIT-COMPLETION-TRUTH"], "allowed_change_scope": {"modules": ["cognitive benchmark"], "paths": ["cmd/cognitive-benchmark/main.go", "dev/ACTIVE_TASK.json", "dev/tasks/DEV-000180-bounded-medium-qualification-output.json"]}, "forbidden_change_scope": {"paths": ["architecture/**", "security/**", "cmd/cognitive-worker/**", "modules/**", "contracts/**", "adapters/**", "database/**", "deploy/**", ".gitea/**"]}, "allowed_architecture_delta": {"new_cross_module_dependencies": 0, "new_canonical_owners": 0, "new_privileges": 0, "new_third_party_dependencies": 0, "new_database_owner_roles": 0}, "contracts": {"consume": ["existing cognitive advisory request contract"], "may_change": ["benchmark CLI parameter only"]}, "semantic_owner": "cognitive benchmark", "canonical_state": [], "state_transitions": ["fixed benchmark output cap -> explicit bounded qualification run"], "side_effects_and_privileges": ["none"], "persistence_and_migrations": ["none"], "failure_retry_restart": ["non-positive output cap rejected; default preserves previous 4096-byte behavior"], "assumptions": ["bounded output is valid only for synthetic exact-answer corpus and does not alter production provider configuration"], "acceptance_scenarios": ["default behavior remains unchanged", "positive output cap is forwarded to advisory request", "invalid cap fails closed", "no provider boundary is bypassed"], "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 -active dev/ACTIVE_TASK.json", "go run ./cmd/devctl/independent", "git diff --check", "CI"], "terminal_gap_states": ["BLOCKED_BY_CONFLICT"] }