Skip to content

v0.3.0

Latest

Choose a tag to compare

@somdoron somdoron released this 06 Oct 15:18
· 19 commits to main since this release

Submilli 0.3.0

This release adds embedding providers, improves TypeScript compatibility, and moves server Blueprint revisions to SQLite. Helm chart 0.4.0 deploys runtime 0.3.0.

Upgrade notes

  • Stop the old server and back up its entire state directory or volume before the first 0.3.0 startup. Blueprint revisions and active selections are imported into SQLite in one transaction, then the old Blueprint directory is archived. Later Blueprint changes live only in SQLite. Rolling back to 0.2.0 requires restoring the pre-upgrade backup. (#114)
  • The default database is $SUBMILLI_HOME/server/db/submilli.db. Persist the whole directory, including SQLite journal and lock files, on local or block-backed storage. The Compose file and chart configure this path on their existing state volume. Sessions, VFS data, secrets, and Packages remain under the server root.
  • Automatic migration of the old pre-0.2 server directory layout has been removed. Existing legacy state is left untouched. Complete the 0.2.0 layout migration before upgrading an older installation. (#102)
  • Embedded Rust callers must accommodate fallible setup APIs and prepare a Blueprint store before calling AppState::new; serve selects and migrates the store. This is a pre-1.0 minor release with embedding API changes.
  • Some previously accepted invalid TypeScript is now diagnosed, including mixed ?? and ||/&& expressions without parentheses, leading-zero number literals, unsupported object-type construct signatures, and comparisons with incompatible operand types.

New capabilities

  • submilli:embedding supports provider-backed embeddings with Blueprint model aliases, capability checks, input bounds, token/request budgets, batching, and response validation. Providers include OpenAI, Google, Voyage, Jina, and Hugging Face. (#142)
  • Embedders can record permission decisions, runs, calls, and live session events. Run recording is opt-in through the Rust API; this release does not add a public playground UI. (#128, #139)
  • Package security review follows transitive Package authority and checks more policy paths. The curated GitHub Package adds scoped research search. Download operations preserve the caller's write policy. (#150, #158, #117, #136)

Language and reliability fixes

  • Add TypeScript-compatible bitwise operators, improve generic call inference, control-flow narrowing, mixed array inference, casts, name lookup, and switch-block scoping. (#153, #149, #144, #130, #118)
  • Accept catch (error: unknown) and default omitted RegExp flags to an empty string. (#161, #162)
  • Correct JSON and Error formatting, function identity, union spreads, and URI decoding behavior. (#124)
  • Bound compiler inputs, type-validation traversal, diagnostics, and backtraces; make resolver diagnostics UTF-8 safe and propagate LLM/MCP setup failures. (#151, #163, #127, #152, #106, #111)

Helm chart

After publication:

helm install submilli oci://ghcr.io/submilli/charts/submilli --version 0.4.0 --wait
helm test submilli

For an existing chart 0.3.5 deployment, stop the old workload and snapshot its state before upgrading. Preserve tokens and the secret-store key. Chart 0.4.0 keeps the state volume and uses runtime 0.3.0's SQLite Blueprint storage. Do not roll back the image without restoring the pre-upgrade state.

Documentation

The book includes updated deployment guidance, a reproducible quickstart, generated CLI and built-in references, copyable heading links, and authorship metadata. Curated Packages and a public roadmap are documented.

All changes since v0.2.0