• Blog
  • Docs
  • Pricing
  • We’re hiring!
Log inSign up
kamenxrider

kamenxrider

slimarmor

Semantic vector DB on Val Town SQLite — DiskANN, hybrid search
Public
Like
slimarmor
Home
Code
7
CHANGES.md
GUIDE.md
HANDOVER.md
README.md
H
api.ts
ui.ts
vectordb.ts
Environment variables
4
Branches
1
Pull requests
Remixes
History
Val Town is a collaborative website to build and scale JavaScript apps.
Deploy APIs, crons, & store data – all from the browser, and deployed in milliseconds.
Sign up now
Code
/
CHANGES.md
Code
/
CHANGES.md
Search
…
Viewing readonly version of main branch: v84
View latest version
CHANGES.md

SlimArmor — Changelog

v4.1 — 2026-03-02 (Performance & Correctness)

Performance

  • upsertMany now uses sqlite.batch() — all records in a batch are written in a single round-trip instead of one SQL call per record. For 100 records, this is ~3× faster.
  • FTS sync is batched — DELETE + INSERT for FTS5 are batched alongside main upserts (one round-trip instead of two per record).
  • setup() guard added — module-level _setupDone flag skips all setup SQL on warm requests. Saves 3+ SQLite round-trips on every subsequent call after the first.
  • /seed and /test use upsertMany — seeding 100 records now makes ~2 embedding API calls instead of 100.

Bug Fixes

  • /clear now clears FTS table — previously, POST /clear only deleted from the main vectordb table, leaving ghost entries in vectordb_fts that would appear in keyword search results. Now both tables are cleared atomically via sqlite.batch().
  • stats() uses correct dim in auto-dim mode — estimated_storage_mb now uses RESOLVED_DIM (actual detected dimension) instead of the pre-resolution config default when EMBEDDING_DIM=auto.

v4.0 — 2026-02-03

  • ui.ts: Moved CLI logic to /ui.js (external script) to fix embedded/preview CSP issues.
  • api.ts: Added /ui.js route to serve the CLI script with no-store caching.
  • api.ts: Added ALLOW_WRITE_TESTS_NOAUTH to allow full validation without headers.
  • api.ts: Added /validate?write=yes preset to the no-JS CLI.
  • vectordb.ts: Expanded DiskANN index tuning — supports INDEX_ALPHA, INDEX_SEARCH_L, INDEX_INSERT_L.
  • vectordb.ts: Expanded INDEX_COMPRESS_NEIGHBORS options (float1bit, floatb16, float32).

v3.0 — 2026-02-02

  • api.ts: /stats uses configured embedding dimensions (no hard-coded 4096).
  • ui.ts: upsert now accepts --meta JSON; del reflects actual deleted field.
  • vectordb.ts: Added metadata filters, hybrid BM25 keyword boost, batch upsert, chunking helper, FTS5 index.
  • api.ts: Added /auth, /export, /import, /upsert_chunked, enhanced /search and /list.
  • api.ts: Added /validate endpoint for self-checks.
  • ui.ts: Added hybrid search flags, meta filters, pagination, server auth status.
  • Auth: Added ADMIN_TOKEN bearer token authentication for write operations.
  • Docs: Full README, GUIDE, HANDOVER written.

v2.0 — 2026-02-01

  • Multi-provider support: Nebius (default), OpenAI, OpenRouter, custom.
  • Browser CLI (/ui) — terminal-style web interface.
  • Added /seed, /calibrate, /test, /clear, /reindex admin endpoints.
  • Content-hash deduplication (skips re-embedding unchanged text).
  • maxDistance filter on search.
  • Distance scores returned in search results.

v1.0 — 2026-01-31

  • Initial release.
  • Core: setup(), upsert(), search(), remove(), stats().
  • libSQL DiskANN index with float8 neighbor compression.
  • Nebius embedding API integration.
FeaturesVersion controlCode intelligenceCLIMCP
Use cases
TeamsAI agentsSlackGTM
DocsShowcaseTemplatesNewestTrendingAPI examplesNPM packages
PricingNewsletterBlogAboutCareers
We’re hiring!
Brandhi@val.townStatus
X (Twitter)
Discord community
GitHub discussions
YouTube channel
Bluesky
Open Source Pledge
Terms of usePrivacy policyAbuse contact
© 2026 Val Town, Inc.