Skip to content

CLI changelog

  • dimple init template fixed — alpha.5’s template used baseUrl; the schema requires baseURL, so every command after a fresh init failed validation. The template now decodes as a valid config as-is (zero env vars), and the llm section ships commented out (regression-guarded by tests/cli/init-config.test.ts)
  • First-boot directory races fixed — the jobs DB client and the logging file sink now create their parent directory lazily before connecting/opening (the store’s dir creation was not ordered before them — fresh boots could fail with SQLITE_CANTOPEN / ENOENT)
  • 32a099b: - Blue-green config reloaddimple.reload(input) validates the new config typed, pauses new calls, boots the new stack, drains in-flight work (30s cap), and swaps atomically; a failed boot leaves the old stack untouched; identical configs resolve as { reloaded: false }
    • Index upsert lifecycle — re-indexing a changed file supersedes the old unit with a confirmed identity edge (one transaction); stable chunk keys (line-independent); cwd-anchored keys; content-identical skips keep their embeddings and stranded units re-embed in place
    • Store.reconcile — deleted files AND removed definitions demote (source_removed); rename/move candidates surface as pending supersedes (rule near-duplicates); currentCommit provenance stamping (codeVersion metadata, backfilled on re-index); code units are TTL-exempt
    • code_calls edges — the extractor emits call sites; same-file and imported-file resolution links callers to callees (index-derived only, not authorable on the facade)
    • Query context budgetsquery(text, { budget: { maxUnits, maxChars, maxMs } }) with results.truncated; CLI --max-units/--max-chars/--max-ms
    • Edge review surfacegraph confirm|reject|expire <edge-id> (CLI + facade, Sdk.EdgeNotFound); explain --edge-kind; the graphNeighbors expired-edge bug fixed
    • Zero postinstall scripts on default installs — transformers is an optional peer, auto-installed on first use (autoInstall: false to opt out); hosted providers need nothing
    • Turso remote databaseslibsql:// store/jobs URLs with ${ENV_VAR} token resolution; one remote DB serves memories + jobs
    • CLI stdout is data-only — console logs route to stderr; --json is compact (embeddings omitted, --embedding opts in); text results carry [contentType] tags; dimple db-schema prints the table/column map; dimple init writes the full annotated schema; stats/health/graph coverage default to the config model
    • profile: "semantic" | "keyword" works — pure-leg weights; the retrieval audit records the effective mode; every query emits a sync hybrid.search log line
    • addEdge(confirmed) supersedes flips the old memory in the same transaction; get/forget/updateEmbedding resolve logical keys; query-time contentType filter on both search legs
    • Worker-ready bundlesnode:fs loads lazily across store/config/workflow/logger; edge runtimes (Cloudflare Workers) build without a filesystem service
  • 98fb80b: - Hosted embedding providers — any OpenAI-compatible endpoint (OpenAI, ollama, vLLM, org-hosted gateways via per-model baseURL), plus native Google (gemini-embedding-2), Cohere and Amazon Bedrock providers; dimensions sent to the endpoint and enforced on the output
    • Per-model transformers runtime optionsdevice, full dtype list (fp32/fp16/q8/int8/uint8/q4/bnb4/q4f16/q2/q2f16/q1/q1f16), pooling, normalize, cacheDir
    • DB-level vector quantizationvectorType (float8 verified 4× smaller: 395 B vs 1536 B for 384-dim; float16/float1bit seams); topic centroids pinned to float32, dequantization on read
    • Multi-model switching — per-model trees + vector tables coexist; memory.embed backfill re-embeds existing memories into a new model’s tree (idempotent, durable)
    • CLI --version now reads the real package version
    • Tag-based publishingv<version> tags trigger verified npm publishes (tag must match both package.json versions); pushes to master never publish
    • Packaging — CHANGELOG.md shipped in tarballs; fully self-contained type declarations; extensive package READMEs (problem/approach, topic tree, dream mode, concepts, full config reference, storage & logs)
  • Updated dependencies [98fb80b]
    • @ponraaj/dimple-sdk@0.0.0-alpha.4
  • CLI –version now reads the real package version (was hardcoded).
  • Updated dependencies
    • @ponraaj/dimple-sdk@0.0.0-alpha.3
  • Per-model embedding options (device/dtype/pooling/normalize/cacheDir), full transformers dtype list, DB-level vector quantization (vectorType), package READMEs.
  • Updated dependencies
    • @ponraaj/dimple-sdk@0.0.0-alpha.2