v0.3.6
✨ Added
oke-shipagent skill — after every implementation, append changelog notes under## Unreleasedand sync site docs viaoke-docs. Wired intoAGENTS.mdso sessions close work with changelog + docs.libsqlandpgliteStore SQL drivers as optional peers. libSQL adds nativeF32_BLOB/vector_top_kANN; PGlite provides opt-in PostgreSQL + pgvector parity without changing the local SQLite default.- Real pgvector ANN for PostgreSQL and PGlite:
vector(dims)storage, HNSW with cosine operators, and similarity-ranked search through Drizzle's native vector API. - Optional
descriptionon element declarations —store.*,signal,channel.template,clock,gate.policy/gate.rate,field.*.describe(…), andplugin.table— extracted into the Manifest and preferred as Console titles when set (raw key fallback). fx.all/fx.race— structured concurrency on plain Promises: pass thunks, first failure or settle aborts sibling branches via an ambientAbortSignal(fx.signal). No generators or monadic wrapper.fx.retry(fn, { retries, delay, backoff, jitter, when? })— exponential backoff with full jitter. Prefer insidefx.stepso durable replay skips completed work.flow({ retry })— coarse whole-doretry on the same journal session (rewinds the durable cursor between attempts).
♻️ Changed
bun run bumppromotes## Unreleasedinto## v{next} — {today}(and leaves a fresh empty Unreleased). Changelog notes for unfinished work no longer land on an already-shipped version section.- SQL-backed indexes share the SQL facet's existing connection. PGlite remains an explicit dialect-parity choice; measured WASM startup and warm CRUD remain meaningfully slower than native SQLite.
🐛 Fixed
store.index()now honorsdrivers.store.indexat real boot and uses the same driver switch in the Console. Explicitpgvectororlibsqlconfiguration fails loudly when its SQL engine, extension, or optional peer is unavailable instead of silently using memory.