Skip to content

Clarify git vs dolt as source of truth for issue data #3135

@josh-m-sharpe

Description

@josh-m-sharpe

bd version 1.0.0 (Homebrew)

I started using beads in the pre-dolt days when issues were persisted in git via JSONL. It was simple - one source of truth, synced through normal git workflows.

After the dolt migration, I'm finding it difficult to keep beads in sync across working directories, and it's unclear whether issue data is still tracked in git.

Context: I have three checkouts of the same repo on my workstation (for running multiple agents). Each has its own dolt instance, but they've gotten out of sync. After stopping all work, bringing all three up to origin/master, bd list --limit 0 reports different issue counts across directories. One checkout has .beads/embeddeddolt while the others have .beads/dolt - should those differ? bd doctor reports it doesn't work in embedded mode, so it's hard to diagnose further.

After some debugging, I resolved it by manually running bd export from one checkout and re-initializing the others. But bd init --force shows this:

WARNING: Re-initializing will destroy the existing database.
  Existing issues: 511
  This action CANNOT be undone.

This raises the question: is destroying the local dolt DB actually unrecoverable? I assumed everything was backed by git, but the warning suggests otherwise.

I also noticed the README description changed from "Distributed, git-backed graph issue tracker" (v0.60.0) to "Distributed graph issue tracker, powered by Dolt" (v0.61.0).

Questions:

  1. Is it a bug that dolt isn't reliably flushing back to issues.jsonl (or another git-tracked format)?
  2. Or is git sync intentionally deprecated in favor of dolt remotes?
  3. If dolt is now the primary store, what's the recommended way to back up and sync issue data - especially across multiple working directories of the same repo?

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions