provider-snapshot no longer returns null for uninstalled/disabled providers: it emits one entry per registered provider with a lifecycle status (loading|ready|unavailable|error), an enabled flag, and a two-tier probe. Tier-1 is a fast which-style check (command-availability.ts, execFile/no-shell); tier-2 (cold ACP probe) is skipped unless forced, last_probed_at is older than PROVIDER_PROBE_TTL_MS (24h), or DB models are empty — the snapshot-latency win. Cache miss returns status:'loading' synchronously while the build settles via the existing inflight promise. ProviderSnapshotStatus/Entry regain loading/unavailable + gain enabled/description?/fetchedAt? in both coder and web copies, guarded by a runtime parity test (provider-types-parity.test.ts; compile-time cross-project check was blocked by TS6307). Also tracks the data/coder-providers.json seed via a .gitignore exception, completing the Phase 1 config file. No dispatch/route/UI changes (Phase 3+); AgentComposerBar filtering unchanged. 13 snapshot tests (+6) + 6 parity tests. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
21 lines
301 B
Plaintext
21 lines
301 B
Plaintext
node_modules
|
|
dist
|
|
.env
|
|
|
|
# Claude / Cursor (local agent & IDE config — CLAUDE.md and AGENTS.md stay tracked)
|
|
.claude/
|
|
.cursor/
|
|
.cursorignore
|
|
CLAUDE.local.md
|
|
*.log
|
|
.DS_Store
|
|
.vite
|
|
coverage
|
|
secrets/
|
|
data/*
|
|
!data/AGENTS.md
|
|
!data/skills/
|
|
!data/mcp.json
|
|
!data/coder-providers.json
|
|
codecontext/fork.tar.gz
|