Skip to main content
Nika follows real semver toward 1.0. The latest tagged public release is v. 1.0 tags when the release gates are green — never on a calendar. Features arrive in 1.x minors. Each version is a quality milestone earned by crate admissions + hygiene vector deploys + ADR promotions.
Canonical source: ROADMAP.md on the main branch. This page summarises the milestones; the full roadmap lives in the repo alongside ADRs. The forward gates themselves are machine-carried by the spec’s timeline (conditions, never dates) — when a gate flips, the record gains a dated, proven entry.

The road so far

The dated, tagged detail lives on the Releases page.

Why real semver toward 1.0

1.0 means we stand behind it

v0.90.0 was the first public release; the 0.9x line is release-candidate grade. 1.0 is the usable engine we commit to as a stable public API, not a marketing tick. Pre-1.0 the surface is still hardening; 1.0 is the line where the public API is stable and additive from there.

Quality bar stays high

Every crate admits with 12 gates. crates meet that bar today. Admission cadence is set by the quality bar, not a calendar — and not by a crate count.

Forward-compat = additive

#[non_exhaustive] on every public type + pre-planted reservations means new features are additive. No breaking change without an Accepted ADR. See forward-compat invariants.

Public accountability

All work happens on the main branch. Every commit is Co-Authored-By Nika 🦋, atomic, bisectable. The engine is the changelog.

Current state: v

crates admitted · lib tests · hygiene vectors · ADRs ( Accepted). Already live today: the four verbs (infer · exec · invoke · agent), nika run / check / test / trace / dap, the LSP, the MCP oracle, catalog providers, and the embedded language pack. See live state for the authoritative snapshot.

Milestones

The current work. Each 0.9x minor is a complete, diamond-grade release; together they close the distance to 1.0:
  • The remaining L0 slices: nika-binding (types-first slice) and nika-transform. There is no “last crate”: ADR-037 made the count a projection (, cap ), so the train ends when the gates close, not when a counter fills.
  • The 7 shadow zones close (the 1.0 gates): nika serve input trust · cross-provider structured-output parity · binding taint runtime · for_each per-element spotlight · L1 taint runtime · NikaError Display parity · the provider parity matrix.
  • The registry story: shared workflows re-proven by CI (hash + oracle + engine cert) and a client verb to consume them (nika add — ADR-106, Proposed).
  • Design-partner hardening: 1.0.0-rc.N pre-releases once the gates are green, exercised on real workloads before the lock.
No date. The train ships when each release earns its tag.
The whole Connectome is a declared pre-condition of the official launch (the timeline’s connectome gate · « lands whole before 1.0 »):
  • nika-connectome L2 orchestrator + the L1 memory satellites (nika-hnsw, nika-bm25, nika-rrf, nika-fsrs, nika-rdfs-reasoner, nika-temporal, nika-graph-algos, nika-autodesc-minimal, nika-autodesc-full), admitted through the same 12 gates as every crate.
  • Recall and ingest as builtin tools under invoke: — never a new verb (the 4 verbs are absolute).
  • The zero-LLM write path: memory is written by deterministic code, never by a model’s output.
  • A sovereign, exportable store on open standards (RDF/SPARQL · ADR-004): yours to query, export, delete.
  • Store digests pinned in receipts, so recall is replayable.
Separate count from the Diamond horizon: the 11 memory crates (1 orchestrator + 10 satellites) add on top. No date: gates, not calendars. The un-numbered next major stays reserved, its content the operator’s to declare.
A standard is judged by what outlives its author. The hundred-year gate lands before the launch:
  • The NEP door exercised end to end: proposals ratified through it, laws and fixtures landing together.
  • The conformance suite in tiers (T0/T1/T2), any engine proving itself with the public runner.
  • Every release archived beyond us: Software Heritage, a citable DOI, the SWHID cited in the spec.
  • The compatibility promise, published: what a workflow written today is guaranteed tomorrow.
  • The deterministic checker, proven in CI: same input, same diagnostics, same order.
  • Succession written down: the project survives its maintainer.
1.0.0 ships when the gates are green — the culmination, not the start. The contract system, the whole Connectome and the hundred-year machinery land first (the timeline’s gates carry the conditions); the language spec (nika: v1 envelope, Apache-2.0) is already public and stable. 1.0 is the point where the public API is locked and additive from there, enforced by cargo public-api + cargo semver-checks on every PR.
Arrives across 1.x minors, no breaking changes:
  • nika-catalog-sync shipping catalog freshness (triple-source cross-check: LiteLLM + models.dev + OpenRouter corroboration).
  • Sigstore keyless signing on release artifacts.
  • cargo install nika — crates.io joins the install matrix.
  • Deeper LSP analysis: full cross-task binding analysis + taint propagation warnings + DAG preview.
  • Cross-provider parity expansion as models evolve.
No date. The layered architecture, complete and then extended across 1.x minors.
Target state when shipped:
  • nika-wasm-host (L3) + nika-sandbox (L3) admitted.
  • WASM plugin boundary live: community plugins run with fuel metering, Trap taxonomy, capability-scoped syscalls.
  • nika-observability suite: OTel GenAI semconv bridge (ADR-035), Prometheus / StatsD exporters, audit log with tamper-evidence.
  • nika-policy L2 shipping Shield policy engine (prompt injection classification, taint enforcement).
  • pck registry fully live: community workflow packages, signature verification, overlay precedence (User > Pck > Core).
No date. Versions stay honest real-semver tags: there is no marketing version axis.
Beyond the ecosystem tier, Nika continues incrementally:
  • Language bindings (nika-napi, nika-py): rebuild if demand materializes (currently deferred per POST_AUDIT).
  • TUI (nika-tui): rebuild in the “Act 3” timeframe if needed.
  • Cross-provider parity expansion as models evolve (GPT-5 family, Claude 5, Gemini 3, etc.).
  • Community catalogs (nika-catalog-cn, nika-catalog-eu) via pck admission gates.
Real semver. Additive across minors; the next major stays un-numbered until declared.

How a release ships

1

The work earns the tag

Crate admissions (12 gates), shadow-zone closures, and field fixes accumulate on main — every commit atomic and bisectable.
2

The tag cuts the binaries

A vX.Y.Z tag triggers the release pipeline: four nika binaries (macOS arm64/x64 · Linux arm64/x64) + checksums.
3

The release lands everywhere

GitHub Release with curated notes, the Homebrew tap bumps, the install script serves the new version.
4

The changelog tells the story

A curated CHANGELOG.md section + an entry on Releases (subscribable via RSS).

Deliberately excluded

These are not “someday maybe”: they are architectural non-goals. Re-opening requires a new ADR that supersedes POST_AUDIT.
  • nika-sdk: 0 consumers, speculative (POST_AUDIT 2026-04-14).
  • nika-tui: W1 speculative. Maybe Act 3, never before.
  • Proc macros in L0: Q1 LOCKED. Manual impl + macro_rules! forever.
  • Box<dyn Error> in public API: hygiene vector 19 bans.
  • anyhow::Error in library code: ADR-005. Binary only.
  • Plugins as proc macros: the WASM boundary (ecosystem tier) is the plugin story.

Governance

1

Every change has an ADR

Significant engineering decisions start as Proposed ADRs, discussed in PRs, Accepted or Rejected. See ADR index.
2

Every commit is atomic + Co-Authored

1 logical change = 1 commit. Co-Authored-By Nika 🦋 always (never Claude). Bisectable history is non-negotiable.
3

Every crate passes 12 gates

No late fixes. No partial admissions. See admission.
4

Forward-compat = additive

No breaking change without Accepted ADR. cargo public-api + cargo semver-checks on every PR. See FCI.

See also

Releases

The full arc, dated and tagged: exploration → brouillon → Diamond.

Timeline

The one verifiable record — eras, releases, forward gates; every provable claim re-proven in CI.

Live state

Where the engine is today.

Constellation

Visual map of every crate across six layers — live admission status.

ADR index

Every decision that shapes the roadmap.