71 lines
3.9 KiB
JSON
71 lines
3.9 KiB
JSON
{
|
|
"task_id": "DEV-000084",
|
|
"task_revision": 1,
|
|
"architecture_revision": "DEV-000073-baseline",
|
|
"base_repo_revision": "0482e6ac14cd7625598a203dbdec9298b1bac04c",
|
|
"risk_tier": "C",
|
|
"intent": "Evolve the single-catalog cognitive orchestrator with an always-available built-in provider and task-aware selection across connected providers using capability, quality, latency, cost, and reliability evidence.",
|
|
"requirement_ids": [
|
|
"Built-in Domovoy cognition remains available without an external provider",
|
|
"Connected providers expose typed connection references without credential material",
|
|
"Provider selection considers task capability, quality, speed, cost, and reliability",
|
|
"Provider and model revisions remain replaceable as the catalog evolves"
|
|
],
|
|
"allowed_change_scope": {
|
|
"modules": ["capability", "cognitive-worker"],
|
|
"paths": [
|
|
"contracts/capability/cognitive_registry.go",
|
|
"contracts/cognitive/types.go",
|
|
"contracts/interaction/types.go",
|
|
"modules/capability/domain/cognitive_registry.go",
|
|
"modules/capability/domain/cognitive_registry_test.go",
|
|
"adapters/postgres/capability_repository.go",
|
|
"database/migrations/028_capability_cognitive_provider_profile.sql",
|
|
"cmd/cognitive-worker/main.go",
|
|
"cmd/cognitive-worker/gateway.go",
|
|
"cmd/cognitive-worker/gateway_registry_test.go",
|
|
"cmd/cognitive-worker/interpretation.go",
|
|
"cmd/cognitive-worker/interpretation_live_trace_test.go",
|
|
"cmd/cognitive-worker/discovery.go",
|
|
"cmd/creator-web/server.go",
|
|
"cmd/core-runtime/main.go",
|
|
"dev/tasks/DEV-000084-evolving-cognitive-provider-catalog.json"
|
|
]
|
|
},
|
|
"forbidden_change_scope": {
|
|
"paths": ["architecture/**", "security/**", "cmd/core-runtime/**", "cmd/creator-web/**", "deploy/**"]
|
|
},
|
|
"allowed_architecture_delta": {
|
|
"new_cross_module_dependencies": 0,
|
|
"new_canonical_owners": 0,
|
|
"new_privileges": 0,
|
|
"new_third_party_dependencies": 0,
|
|
"new_provider_adapters": 0,
|
|
"new_database_owner_roles": 0
|
|
},
|
|
"contracts": {
|
|
"consume": ["existing capability registry", "existing cognitive gateway"],
|
|
"may_change": ["versioned provider profile and task-aware selection fields"]
|
|
},
|
|
"semantic_owner": "capability",
|
|
"canonical_state": ["provider connection profile", "model suitability and performance evidence"],
|
|
"state_transitions": [
|
|
"discovered provider profile is validated before invocation",
|
|
"selection ranks eligible candidates without granting new authority",
|
|
"provider revision supersedes prior metadata without rewriting history"
|
|
],
|
|
"side_effects_and_privileges": ["No new privilege", "Credential material remains outside canonical registry"],
|
|
"persistence_and_migrations": ["One additive capability migration", "No cross-owner writes"],
|
|
"failure_retry_restart": ["Built-in provider remains available when registry or remote providers fail", "Provider failures are observed and excluded for the current attempt"],
|
|
"assumptions": ["V1 has one shared catalog and no user/group visibility", "Existing CredentialRef contract is retained", "Selection is advisory routing and does not authorize external actions"],
|
|
"acceptance_scenarios": [
|
|
"Built-in provider answers when no connected provider is invocable",
|
|
"Secret values never appear in provider registry responses or logs",
|
|
"Task requiring a capability excludes models without it",
|
|
"Quality, reliability, latency, and cost policy affect deterministic ranking",
|
|
"A failed primary provider falls back to another eligible provider"
|
|
],
|
|
"required_tests": ["go test ./modules/capability/domain", "go test ./cmd/cognitive-worker", "go test ./...", "go vet ./...", "devctl preflight", "devctl check-diff", "devctl check-architecture", "git diff --check"],
|
|
"terminal_gap_states": ["BLOCKED_BY_ARCHITECTURE_GAP", "BLOCKED_BY_SPEC_GAP", "BLOCKED_BY_MISSING_CAPABILITY", "BLOCKED_BY_CONFLICT"]
|
|
}
|