Add household scenario audit plan
This commit is contained in:
@@ -1,5 +1,5 @@
|
||||
{
|
||||
"task_file": "dev/tasks/DEV-000294-creative-chat-routing.json",
|
||||
"task_id": "DEV-000294",
|
||||
"task_file": "dev/tasks/DEV-000295-household-scenario-audit.json",
|
||||
"task_id": "DEV-000295",
|
||||
"task_revision": 1
|
||||
}
|
||||
|
||||
@@ -0,0 +1,108 @@
|
||||
{
|
||||
"task_id": "DEV-000295",
|
||||
"task_revision": 1,
|
||||
"architecture_revision": "ADR-0019",
|
||||
"base_repo_revision": "origin/main",
|
||||
"risk_tier": "E",
|
||||
"intent": "Провести сценарный аудит бытового общения Домового, добавить устойчивую маршрутизацию умений и проверку конечного ответа без монолитного оркестратора.",
|
||||
"requirement_ids": [
|
||||
"REQ-HOUSEHOLD-001",
|
||||
"REQ-HOUSEHOLD-002",
|
||||
"REQ-HOUSEHOLD-003",
|
||||
"REQ-HOUSEHOLD-004"
|
||||
],
|
||||
"allowed_change_scope": {
|
||||
"modules": ["interaction", "capability", "epistemics", "situation", "work", "continuity"],
|
||||
"paths": [
|
||||
"cmd/core-runtime/**",
|
||||
"modules/interaction/**",
|
||||
"modules/capability/**",
|
||||
"modules/epistemics/**",
|
||||
"modules/situation/**",
|
||||
"modules/work/**",
|
||||
"modules/continuity/**",
|
||||
"contracts/interaction/**",
|
||||
"contracts/capability/**",
|
||||
"tests/**",
|
||||
"dev/ACTIVE_TASK.json",
|
||||
"dev/tasks/DEV-000295-household-scenario-audit.json"
|
||||
]
|
||||
},
|
||||
"forbidden_change_scope": {
|
||||
"paths": [
|
||||
"architecture/**",
|
||||
"security/**",
|
||||
"adapters/models/**",
|
||||
"docker-compose*.yml",
|
||||
"deploy/**",
|
||||
"migrations/**",
|
||||
"go.mod",
|
||||
"go.sum"
|
||||
]
|
||||
},
|
||||
"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": [
|
||||
"contracts.identity@v1",
|
||||
"contracts.authority@v1",
|
||||
"contracts.capability@v1",
|
||||
"contracts.cognitive@v1",
|
||||
"contracts.interaction@v1",
|
||||
"contracts.work@v1"
|
||||
],
|
||||
"may_change": []
|
||||
},
|
||||
"semantic_owner": "interaction owns meaning classification; capability owns capability health and selection; existing semantic owners retain canonical state",
|
||||
"canonical_state": ["existing Interpretation, CapabilityResolution, Situation, Goal/Task and ProspectiveItem only"],
|
||||
"state_transitions": ["request -> meaning -> bounded capability route -> result/clarification/degraded answer -> verification evidence"],
|
||||
"side_effects_and_privileges": ["Scenario tests are read-only/fake by default; real reminders, websites, messages and code changes remain behind existing Commit/Executor and authority boundaries."],
|
||||
"persistence_and_migrations": ["No new tables, migrations or events; verify existing durable memory, situation, goal/task and continuity paths."],
|
||||
"failure_retry_restart": ["Each scenario distinguishes unavailable, partial and unknown outcome; retries must not duplicate external effects; restart restores context and commitments from canonical state."],
|
||||
"acceptance_scenarios": [
|
||||
"SCN-HH-001 identity/name/preference continuity",
|
||||
"SCN-HH-002 location/weather/time/price current-data research",
|
||||
"SCN-HH-003 travel/nearby-place clarification and result synthesis",
|
||||
"SCN-HH-004 multi-action request decomposition and agent assignment",
|
||||
"SCN-HH-005 reminder/goal/task lifecycle and follow-up",
|
||||
"SCN-HH-006 speech/image/OCR capability routing and degraded mode",
|
||||
"SCN-HH-007 creative conversation without web-search leakage",
|
||||
"SCN-HH-008 unavailable/partial/contradictory tool and model responses",
|
||||
"SCN-HH-009 short natural answer and no internal protocol leakage",
|
||||
"SCN-HH-010 authority/confirmation/unknown-outcome safety"
|
||||
],
|
||||
"required_tests": [
|
||||
"go test",
|
||||
"go vet",
|
||||
"preflight",
|
||||
"check-diff",
|
||||
"check-architecture",
|
||||
"independent",
|
||||
"git diff",
|
||||
"git diff --check",
|
||||
"unit",
|
||||
"semantic-routing",
|
||||
"scenario-contract",
|
||||
"degraded-mode",
|
||||
"restart-recovery",
|
||||
"architecture",
|
||||
"go-test ./...",
|
||||
"go vet ./...",
|
||||
"production smoke on docker.cin.su"
|
||||
],
|
||||
"terminal_gap_states": [
|
||||
"BLOCKED_BY_SPEC_GAP",
|
||||
"BLOCKED_BY_ARCHITECTURE_GAP",
|
||||
"BLOCKED_BY_MISSING_CAPABILITY"
|
||||
],
|
||||
"assumptions": [
|
||||
"Локальный Docker запрещён; production verification выполняется только на docker.cin.su.",
|
||||
"Провайдеры и browser session могут быть недоступны, поэтому тесты обязаны проверять полезный degraded ответ.",
|
||||
"Новые умения добавляются отдельными capability/adapter/route компонентами, а не единым монолитным оркестратором."
|
||||
]
|
||||
}
|
||||
Reference in New Issue
Block a user