Skip to content

Loom integration needs stable binary asset and schema migration contract #331

@jkomoros

Description

@jkomoros

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:

  1. Document or publish stable per-platform binary asset naming for automated vendoring.
  2. Add/document msgvault migrate for applying schema migrations explicitly.
  3. 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.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions