singularity-forge/docs/dev
Jeremy b1c0dafc70 feat(gsd): implement ADR-005 multi-model provider and tool strategy
Implements all 4 phases of ADR-005 (issue #2790):

Phase 1: Provider Capabilities Registry
- Declarative ProviderCapabilities interface and PROVIDER_CAPABILITIES
  registry covering all 12 API providers
- Consolidates scattered *-shared.ts knowledge into queryable registry
- Unknown providers get permissive defaults (backward compatible)

Phase 2: Tool Compatibility Metadata
- ToolCompatibility interface (producesImages, schemaFeatures, minCapabilityTier)
- compatibility field on ToolDefinition
- Tool compatibility registry with pre-populated built-in tools
- Auto-registration from registerTool() and MCP tool defaults

Phase 3: Tool-Compat Filter + ProviderSwitchReport
- ProviderSwitchReport tracks thinking blocks dropped/downgraded,
  tool call IDs remapped, synthetic results inserted, thought
  signatures dropped during cross-provider message transformation
- isToolCompatibleWithProvider(), filterToolsForProvider(), adjustToolSet()
  functions in model router
- filteredTools field on RoutingDecision
- Verbose output for filtered tools in auto-model-selection

Phase 4: adjustToolSet Extension Hook
- AdjustToolSetEvent and AdjustToolSetResult interfaces
- emitAdjustToolSet() on ExtensionAPI and ExtensionRuntime
- Default no-op handler in register-hooks.ts

Includes 47 new tests (20 provider caps + 10 switch report + 17 tool compat)

Closes #2790
2026-04-10 12:33:40 -05:00
..
building-coding-agents docs: reorganize into user-docs/ and dev/ subdirectories 2026-04-10 09:25:31 -05:00
context-and-hooks docs: reorganize into user-docs/ and dev/ subdirectories 2026-04-10 09:25:31 -05:00
extending-pi docs: reorganize into user-docs/ and dev/ subdirectories 2026-04-10 09:25:31 -05:00
pi-ui-tui docs: reorganize into user-docs/ and dev/ subdirectories 2026-04-10 09:25:31 -05:00
proposals docs: reorganize into user-docs/ and dev/ subdirectories 2026-04-10 09:25:31 -05:00
superpowers docs: reorganize into user-docs/ and dev/ subdirectories 2026-04-10 09:25:31 -05:00
what-is-pi docs: reorganize into user-docs/ and dev/ subdirectories 2026-04-10 09:25:31 -05:00
ADR-001-branchless-worktree-architecture.md docs: reorganize into user-docs/ and dev/ subdirectories 2026-04-10 09:25:31 -05:00
ADR-003-pipeline-simplification.md docs: reorganize into user-docs/ and dev/ subdirectories 2026-04-10 09:25:31 -05:00
ADR-004-capability-aware-model-routing.md docs: reorganize into user-docs/ and dev/ subdirectories 2026-04-10 09:25:31 -05:00
ADR-005-multi-model-provider-tool-strategy.md feat(gsd): implement ADR-005 multi-model provider and tool strategy 2026-04-10 12:33:40 -05:00
ADR-007-model-catalog-split.md docs: reorganize into user-docs/ and dev/ subdirectories 2026-04-10 09:25:31 -05:00
ADR-008-gsd-tools-over-mcp-for-provider-parity.md docs: reorganize into user-docs/ and dev/ subdirectories 2026-04-10 09:25:31 -05:00
ADR-008-IMPLEMENTATION-PLAN.md docs: reorganize into user-docs/ and dev/ subdirectories 2026-04-10 09:25:31 -05:00
agent-knowledge-index.md docs: reorganize into user-docs/ and dev/ subdirectories 2026-04-10 09:25:31 -05:00
architecture.md docs: reorganize into user-docs/ and dev/ subdirectories 2026-04-10 09:25:31 -05:00
ci-cd-pipeline.md docs: reorganize into user-docs/ and dev/ subdirectories 2026-04-10 09:25:31 -05:00
FILE-SYSTEM-MAP.md docs: reorganize into user-docs/ and dev/ subdirectories 2026-04-10 09:25:31 -05:00
FRONTIER-TECHNIQUES.md docs: reorganize into user-docs/ and dev/ subdirectories 2026-04-10 09:25:31 -05:00
pi-context-optimization-opportunities.md docs: reorganize into user-docs/ and dev/ subdirectories 2026-04-10 09:25:31 -05:00
PRD-branchless-worktree-architecture.md docs: reorganize into user-docs/ and dev/ subdirectories 2026-04-10 09:25:31 -05:00