Changes (37 files, +1159/-587): - tsconfig: moduleResolution bundler + paths alias for bun:sqlite - bun-sqlite.ts: type shim replacing stale declare module .d.ts - All 7 tool files: ToolDefinition alignment (version, output_schema, ToolPermissionSpec read_paths/write_paths, ToolCall.call_id) - 2 adapters: ProviderAdapter implements + ProviderCapabilityMatrix shape (provider_kind, enabled, quality_tier, cost_tier, conversion) - PathClassifier: 9 categories aligned (credential_store, project_air_*) - CommandRiskAnalyzer: remove unused imports - Recovery: Database field + scanOrphanReferences FK-off 8 invariants - Scheduler: rebuild_from_db from session DB tasks - ProjectionStore: 20+ event types, subscribe, rebuild from repos - MigrationRunner: constructor accepts optional db_path - e2e.ts: replaced hardcoded ✅ with 14 real test/check gates - wiring.ts: eventIngestor.ingest (durable path, INV-2) - init.ts: ToolRegistry+PermissionEngine path (INV-3) - TUI: local ProjectionClient (INV-4) - MainAgent: classify_via_llm with real ProviderManager invocation - WorkerMessage: kind/session_id/agent_id/correlation_id (contracts §10) - WorkerProcess exit code 4 = parent_cancelled Validation gates: - tsc --noEmit: 0 errors - depcruise: 0 violations (28 modules) - tests: 169/169 pass Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
23 lines
1.2 KiB
TypeScript
Executable File
23 lines
1.2 KiB
TypeScript
Executable File
// bun:sqlite shim for tsc type-checking (Bun runtime uses built-in bun:sqlite)
|
|
// Mapped via tsconfig paths: "bun:sqlite" -> this file
|
|
// Types only — no implementation (Bun provides the real implementation at runtime)
|
|
// *Any* type used for complex return types to avoid deep shim maintenance
|
|
|
|
export class Database {
|
|
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
query(sql: string, ...params: any[]): any { throw new Error('shim') }
|
|
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
prepare(sql: string): any { throw new Error('shim') }
|
|
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
run(sql: string, ...params: any[]): any { throw new Error('shim') }
|
|
exec(sql: string): void { throw new Error('shim') }
|
|
close(): void { throw new Error('shim') }
|
|
inTransaction(callback: () => boolean): boolean { throw new Error('shim') }
|
|
constructor(filename: string, options?: Record<string, unknown>) { throw new Error('shim') }
|
|
}
|
|
|
|
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
export type StatementHandle = any
|
|
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
export type DatabaseHandle = any
|