Loom is integrating msgvault as the canonical local Gmail substrate and needs a few release/schema contracts to safely vendor and upgrade the binary.
Verified against latest release v0.14.1 on 2026-05-21:
- Release assets are per-platform, but names are versioned archives such as
msgvault_0.14.1_darwin_arm64.tar.gz, not a stable unversioned asset pattern such as msgvault-{os}-{arch}. Loom can adapt, but a documented stable pattern would make vendoring safer.
msgvault migrate is not present in msgvault --help. Loom's rollout needs an explicit migration command for migrate-before-swap during binary upgrades.
- A fresh
msgvault --home <tmp> init-db creates a SQLite msgvault.db, but PRAGMA user_version returns 0. Loom needs a schema version probe contract so it can compare the installed DB schema against the vendored binary's expected schema and surface drift before querying.
Useful existing pieces:
sync-full --after/--before exists.
sync-full --query and --limit exist.
import-mbox <identifier> <export-file> --checkpoint-interval <N> exists.
- Per-platform release assets and SHA256SUMS exist.
Requested contract:
- Document or publish stable per-platform binary asset naming for automated vendoring.
- Add/document
msgvault migrate for applying schema migrations explicitly.
- Set and document a machine-readable schema version, ideally
PRAGMA user_version, or provide an equivalent msgvault --schema-version command.
This is needed so Loom can vendor msgvault as a first-class binary dependency without curl-pipe install or silent schema drift.
Loom is integrating msgvault as the canonical local Gmail substrate and needs a few release/schema contracts to safely vendor and upgrade the binary.
Verified against latest release v0.14.1 on 2026-05-21:
msgvault_0.14.1_darwin_arm64.tar.gz, not a stable unversioned asset pattern such asmsgvault-{os}-{arch}. Loom can adapt, but a documented stable pattern would make vendoring safer.msgvault migrateis not present inmsgvault --help. Loom's rollout needs an explicit migration command for migrate-before-swap during binary upgrades.msgvault --home <tmp> init-dbcreates a SQLitemsgvault.db, butPRAGMA user_versionreturns0. Loom needs a schema version probe contract so it can compare the installed DB schema against the vendored binary's expected schema and surface drift before querying.Useful existing pieces:
sync-full --after/--beforeexists.sync-full --queryand--limitexist.import-mbox <identifier> <export-file> --checkpoint-interval <N>exists.Requested contract:
msgvault migratefor applying schema migrations explicitly.PRAGMA user_version, or provide an equivalentmsgvault --schema-versioncommand.This is needed so Loom can vendor msgvault as a first-class binary dependency without curl-pipe install or silent schema drift.