diff --git a/README.md b/README.md index b1b5df0..56a427b 100644 --- a/README.md +++ b/README.md @@ -88,4 +88,4 @@ GitHub Discussions live on the core repo: **[statewave/discussions](https://gith ## Current status -**v1.3.0** — hybrid retrieval (pgvector + Postgres BM25, on by default with a `hybrid=false` opt-out) and compile-pipeline recall improvements (dedup/reconcile), plus provider-aware LLM key routing. The `/v1/*` API contract and governance surfaces (HMAC-signed [receipts](receipts.md), receipt-driven replay, per-memory [sensitivity labels](sensitivity-labels.md) + declarative YAML policy, opt-in detector-suggested labels, per-region data residency) remain stable, as do the v1.2 additions (dynamic settings endpoint for topology-agnostic hot-reload, a production-readiness probe, SSRF + DNS-rebinding protection on the webhook URL probe, LIKE metachar escaping in admin search, and six admin inspection endpoints). Both SDKs ship alongside: `statewave` (PyPI) v1.2.0 adds per-call timeout overrides and `CancelledError` propagation; `@statewavedev/sdk` (npm) v1.2.0 adds `AbortSignal` support on all HTTP methods. See [roadmap](roadmap.md) and [CHANGELOG](CHANGELOG.md). +**v1.4.0** — tenant-scoped memory provenance and `/v1/context` source-episode lookups (closes cross-tenant leakage the single-tenant repository helpers previously left open on shared infra), plus tenant-keyed admin bulk delete with explicit `tenant_id IS NULL` handling for global rows. Admin operational surface expands: `POST /admin/jobs/reset-stuck` recovers orphaned running compile jobs, `DELETE /admin/jobs/{id}` closes the immortal-terminal-job gap, and empty-subject stats return 200 instead of 404 so zero-data dashboards don't break. Support-docs bootstrap now runs an async compile with build-then-swap gated on the compile job's `memories_created` — a failed rebuild no longer empties the live pack. Non-breaking: `search_mode` opt-in on `/v1/memories/search`, `subject.deleted` webhook guarded against no-op fires, extended purge-event coverage. The `/v1/*` contract and the v1.3 hybrid-retrieval stack remain stable. Both SDKs ship v1.4.0 alongside as a parity release with no runtime changes since v1.2.0 (CI/docs hygiene only). See [roadmap](roadmap.md) and [CHANGELOG](CHANGELOG.md). diff --git a/product.md b/product.md index 6372df2..74499b5 100644 --- a/product.md +++ b/product.md @@ -45,7 +45,7 @@ Everything is organised around **subjects** — a user, account, workspace, repo ## Current limitations -Statewave is on its first stable public developer release line (v1.3.0). We document these honestly: +Statewave is on its first stable public developer release line (v1.4.0). We document these honestly: | Limitation | Impact | Status | |-----------|--------|--------| diff --git a/tools/_targets.py b/tools/_targets.py index 6065d0b..41900e3 100644 --- a/tools/_targets.py +++ b/tools/_targets.py @@ -144,7 +144,7 @@ ( "docs_product_status", "statewave-docs/product.md", - r'first stable public developer release \(v(\d+\.\d+\.\d+)\)', + r'first stable public developer release line \(v(\d+\.\d+\.\d+)\)', None, "independent", ),