Files
Assistant/dev/tasks/DEV-000285-semantic-research-routing-fix.json
m f6f68ffb04
CI / test (push) Successful in 54s
CI / test (pull_request) Successful in 53s
fix: route source-dependent questions to research
2026-08-24 06:29:56 +03:00

24 lines
2.3 KiB
JSON

{
"task_id": "DEV-000285",
"task_revision": 1,
"architecture_revision": "ADR-0018",
"base_repo_revision": "5c98bc3",
"risk_tier": "E",
"intent": "Route semantically source-dependent current-fact questions to the existing provider-neutral WEB_RESEARCH capability instead of returning an unverified fallback.",
"requirement_ids": ["truth-first source routing", "no entity-specific keyword branches", "local deterministic fallback remains honest"],
"allowed_change_scope": {"modules": ["interaction"], "paths": ["dev/ACTIVE_TASK.json", "dev/tasks/DEV-000285-semantic-research-routing-fix.json", "modules/interaction/domain/chat.go", "modules/interaction/domain/chat_test.go"]},
"forbidden_change_scope": {"paths": ["architecture/**", "security/**", "database/**", "cmd/**", "deploy/**", "LLM-local/**"]},
"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": ["interaction semantic candidate contract", "capability WEB_RESEARCH hint"], "may_change": []},
"semantic_owner": "interaction",
"canonical_state": ["no new canonical state; only semantic interpretation hints change"],
"state_transitions": ["source-dependent question -> WEB_RESEARCH hint -> existing research runtime"],
"side_effects_and_privileges": ["existing read-only research connector may be selected by downstream runtime"],
"persistence_and_migrations": ["none"],
"failure_retry_restart": ["if research is unavailable, existing truthful unverified response remains"],
"assumptions": ["lexical cues represent semantic classes such as currentness and observed external state, not named entities"],
"acceptance_scenarios": ["weather-like current fact routes to WEB_RESEARCH without city-specific code", "ordinary model mention does not route to research", "non-research factual question remains honest when no source-dependent cue exists"],
"required_tests": ["go test ./modules/interaction/domain", "go vet ./modules/interaction/domain", "preflight", "check-diff", "check-architecture", "independent", "git diff --check", "CI", "production health smoke"],
"terminal_gap_states": ["BLOCKED_BY_SPEC_GAP", "BLOCKED_BY_ARCHITECTURE_GAP", "BLOCKED_BY_MISSING_CAPABILITY"]
}