Skip to content

chore(release): v3.0.0-beta.4 — Phase 2 complete, halfvec HNSW fix (#95)#105

Merged
salishforge merged 1 commit into
mainfrom
release/v3.0.0-beta.4
Apr 18, 2026
Merged

chore(release): v3.0.0-beta.4 — Phase 2 complete, halfvec HNSW fix (#95)#105
salishforge merged 1 commit into
mainfrom
release/v3.0.0-beta.4

Conversation

@salishforge
Copy link
Copy Markdown
Owner

Summary

Files

  • `package.json` — `3.0.0-beta.3` → `3.0.0-beta.4`
  • `CHANGELOG.md` — new beta.4 entry (Added / Changed / Known gaps)
  • `ROADMAP.md` — `Where We Are Today` bumped; Phase 1 remaining items collapsed (all shipped); Phase 2 marked COMPLETE with per-item PR references; Multi-model revision strategy for sleep cycles #13 two-pass triage flagged as the remaining partial item
  • `schema/schema.sql` — remove the two failing `CREATE INDEX ... USING hnsw` statements; comment with rationale and pointer to the example
  • `schema/hnsw-indexes.example.sql` (new) — template for operators with embeddings (covers 384, 768, 1536, 3072 dimensions)

Phase 2 scorecard (closed on merge)

Issue cleanup (closed since beta.3)

#10, #14, #16, #17, #18, #35, #43, #46, #50 — all shipped but not previously closed on the tracker. Status comments added to #13 and #41 documenting current state without closing.

Test plan

  • CI type-check / lint / build pass
  • CI test-integration (Node 20, 22) — the namespace / cold / budgeting / advisory test suites all run
  • CI test-rls passes — RLS still enforced under all new per-namespace paths
  • On merge + tag `v3.0.0-beta.4`, release workflow publishes via OIDC (Trusted Publishing) — no `NPM_TOKEN` used. Validates ci(release): switch publish to npm Trusted Publishing (OIDC) #97 end-to-end.
  • GitHub Release auto-created with the CHANGELOG excerpt for beta.4

Follow-up after merge

  1. Tag `v3.0.0-beta.4` on `main` — triggers the release workflow.
  2. If OIDC publish succeeds: delete the `NPM_TOKEN` repo secret. If it fails: diagnose, re-tag if needed.
  3. Next sprint candidates: close remaining Phase 2 work (Multi-model revision strategy for sleep cycles #13 two-pass triage), start Phase 3 / security (security: Redis cache poisoning — no schema validation on deserialized data #41), or begin Phase 4 ROADMAP items.

Ships Phase 2 of the ROADMAP (memory namespaces #16, cold tier search
+ restoration #14, memory budgeting, adaptive sleep advisory) and
closes out related tracker issues.

Also fixes #95: schema.sql no longer issues failing CREATE INDEX
statements for HNSW on bare halfvec columns (pgvector requires an
explicit dimension spec). The two affected indexes are now documented
in a new schema/hnsw-indexes.example.sql template that operators
apply AFTER choosing their embedding provider's dimension. Fresh
installs without embeddings emit no errors; installs with embeddings
get a clear, idempotent path to the HNSW indexes.

This is the first release publishing via npm Trusted Publishing (OIDC)
instead of a long-lived token — validates the infrastructure landed in
Sprint A and the Phase 2 follow-up (PR #97).

Changes bundled:
- package.json: 3.0.0-beta.3 → 3.0.0-beta.4
- CHANGELOG.md: new v3.0.0-beta.4 entry with per-feature and
  known-gap breakdown
- ROADMAP.md: "Where We Are Today" updated; Phase 1 "Remaining"
  section collapsed (all shipped); Phase 2 marked COMPLETE with
  per-item PR references; #13 two-pass triage flagged as the one
  partial item
- schema/schema.sql: remove two failing HNSW CREATE INDEX (with
  documented why-comment pointing at the template)
- schema/hnsw-indexes.example.sql: new — template for operators to
  apply HNSW indexes after pinning halfvec dimension
@salishforge salishforge merged commit 596a6b2 into main Apr 18, 2026
12 checks passed
@salishforge salishforge deleted the release/v3.0.0-beta.4 branch April 18, 2026 04:21
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

schema: halfvec HNSW indexes silently fail to create (no dimension spec)

1 participant