D-5: build custom libsqlite3.dylib with SQLITE_ENABLE_LOAD_EXTENSION=1 (user env work) #56

Closed
opened 2026-05-12 19:09:45 +00:00 by KofTwentyTwo · 1 comment
KofTwentyTwo commented 2026-05-12 19:09:45 +00:00 (Migrated from github.com)

Summary

Build custom libsqlite3.dylib with SQLITE_ENABLE_LOAD_EXTENSION=1. Skeleton at scripts/build-sqlite-with-extensions.sh; needs SQLite version pin + amalgamation URL + SHA256 + codesign identity filled in.

Evidence

  • docs/TODO.md:81
  • scripts/build-sqlite-with-extensions.sh exists with TODO markers; exits 1 until pins land

Recommended fix

User environment work:

  1. Pin SQLite version (e.g., 3.51.0 matching current macOS Tahoe)
  2. Pin amalgamation URL + SHA256
  3. Run bash scripts/build-sqlite-with-extensions.sh
  4. Verify dylib loads vec0 extension successfully
  5. Bundle in .app resources with proper codesign

Source

  • docs/TODO.md:81
  • .planning/architecture/JARVIS-API-MIGRATION-PLAN.md §7 — blocks M-4 vector-search activation

Cross-references

  • Blocks: #8 (M-4 Memory) full vector activation
  • Pairs with: #57 (D-6 vec0.dylib)
## Summary Build custom `libsqlite3.dylib` with `SQLITE_ENABLE_LOAD_EXTENSION=1`. Skeleton at `scripts/build-sqlite-with-extensions.sh`; needs SQLite version pin + amalgamation URL + SHA256 + codesign identity filled in. ## Evidence - `docs/TODO.md:81` - `scripts/build-sqlite-with-extensions.sh` exists with TODO markers; exits 1 until pins land ## Recommended fix User environment work: 1. Pin SQLite version (e.g., 3.51.0 matching current macOS Tahoe) 2. Pin amalgamation URL + SHA256 3. Run `bash scripts/build-sqlite-with-extensions.sh` 4. Verify dylib loads `vec0` extension successfully 5. Bundle in `.app` resources with proper codesign ## Source - `docs/TODO.md:81` - `.planning/architecture/JARVIS-API-MIGRATION-PLAN.md` §7 — blocks M-4 vector-search activation ## Cross-references - Blocks: #8 (M-4 Memory) full vector activation - Pairs with: #57 (D-6 vec0.dylib)
KofTwentyTwo commented 2026-05-13 16:27:49 +00:00 (Migrated from github.com)

Moot: D-5 was about building libsqlite3 with SQLITE_ENABLE_LOAD_EXTENSION so vec0.dylib could load at runtime. Since vec0 is now statically linked into the build (per #57 and the D-5/D-6 closure on 2026-05-11), the load-extension capability is no longer needed. Closing as 'no longer required'.

Moot: D-5 was about building libsqlite3 with SQLITE_ENABLE_LOAD_EXTENSION so vec0.dylib could load *at runtime*. Since vec0 is now statically linked into the build (per #57 and the D-5/D-6 closure on 2026-05-11), the load-extension capability is no longer needed. Closing as 'no longer required'.
Sign in to join this conversation.
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: KofTwentyTwo/Jarvis#56