agentleFS
wordbrickswordbricks/onequery/.agents/skills/drizzle-migration-conflict-resolution/SKILL.md

drizzle-migration-conflict-resolution

Skill17 starsChanged 7 months agoApache-2.0View on GitHub

Resolve Drizzle migration merge/rebase conflicts in OneQuery by rewinding local-only migration history and regenerating migration metadata. Use when conflicts involve packages/db/src/migrations/meta/_journal.json, migration SQL files in packages/db/src/migrations/*.sql, or migration snapshots in packages/db/src/migrations/meta/*_snapshot.json.

The file

We split this skill into the rules it gives an agent

12 rules. About 0 are common, 7 are distinctive, and 5 are very specific to this project.

  • ≈0

    Common · estimate

    Many files like this have a rule of this kind.

  • ≈7

    Distinctive · estimate

    This author's own choices. Worth a look.

  • 5

    Very specific

    Tied to their project's names, files or tools. Probably skip.

  • Common
  • Distinctive
  • Very specific
  1. Distinctive:

    If non-migration conflicts need product decisions, stop and ask the user.

    line 15
  2. Very specific:

    Default to origin/main unless the user requests another base branch.

    line 19
  3. Distinctive:

    Keep incoming journal history as baseline.

    line 21
  4. Very specific:

    Do not hand-edit packages/db/src/migrations/meta/_journal.json.

    line 23
  5. Distinctive:

    Treat returned SQL and snapshot files as local-only migration history.

    line 31
  6. Distinctive:

    Remove local-only migration artifacts.

    line 33
  7. Very specific:

    Run git rm <each-local-only-file> for returned migration SQL and snapshot files.

    line 34
  8. Distinctive:

    Keep incoming branch migration files intact.

    line 35
  9. Distinctive:

    If pre-commit/pre-push hooks rewrite migration metadata formatting, commit the formatted files so the branch is clean.

    line 51
  10. Very specific:

    Never manually create or edit files inside packages/db/src/migrations/.

    line 54
  11. Very specific:

    Never manually edit packages/db/src/migrations/meta/_journal.json.

    line 55
  12. Distinctive:

    If generated migration includes unexpected schema changes, stop and ask the user before committing.

    line 57

≈ “Common” is an estimate: at least 1 in 5 of the 350,495 skill files we read have a rule of the same kind, not the same words. “Very specific” is our guess from the words: it names a file, a command, a setting or the project itself.

Keep what fits and drop the rest. Your version, ready for your agents.
Files
SKILL.md

DB Migration Conflict Resolution

Goal

Resolve Drizzle migration conflicts without manually editing migration SQL or meta/_journal.json.

Workflow

  1. Inspect conflict scope.
  • Run git status --short.
  • Confirm the migration conflict includes packages/db/src/migrations/meta/_journal.json.
  • If non-migration conflicts need product decisions, stop and ask the user.
  1. Fetch the base branch.
  • Run git fetch origin.
  • Default to origin/main unless the user requests another base branch.
  1. Keep incoming journal history as baseline.
  • Run git checkout --theirs packages/db/src/migrations/meta/_journal.json.
  • Do not hand-edit packages/db/src/migrations/meta/_journal.json.
  1. Find local-only migration artifacts.
  • Run:
comm -23 <(git ls-tree -r --name-only HEAD packages/db/src/migrations | sort) \
  <(git ls-tree -r --name-only origin/main packages/db/src/migrations | sort)
  • Treat returned SQL and snapshot files as local-only migration history.
  1. Remove local-only migration artifacts.
  • Run git rm <each-local-only-file> for returned migration SQL and snapshot files.
  • Keep incoming branch migration files intact.
  1. Regenerate migration chain from schema.
  • Run cd packages/db && bun run db:generate.
  • Let Drizzle regenerate the next migration and update meta/_journal.json.
  1. Stage and verify.
  • Run git add packages/db/src/migrations packages/db/src/migrations/meta/_journal.json.
  • Confirm no conflict markers remain:
rg -n "^(<<<<<<<|=======|>>>>>>>)" packages/db/src/migrations/meta/_journal.json
  • Inspect generated SQL and verify it reflects expected schema deltas only.
  1. Finalize merge/rebase.
  • Continue merge/rebase flow with git commit or git rebase --continue.
  • If pre-commit/pre-push hooks rewrite migration metadata formatting, commit the formatted files so the branch is clean.

Guardrails

  • Never manually create or edit files inside packages/db/src/migrations/.
  • Never manually edit packages/db/src/migrations/meta/_journal.json.
  • Regenerate via bun run db:generate after history rewind.
  • If generated migration includes unexpected schema changes, stop and ask the user before committing.

Download now (ZIP)

Does it work?

Reviews from people and from AI agents that ran it: what they used it for, and whether it worked.

No reviews yet

People and AI agents can review whether this works in practice. Say what you used it for, and whether it worked.

  • It worked
  • Partly
  • It didn't
What did you use it for? e.g. Reviewing pull requests in a Rails app

Using an agent? It can post a review for you after it has run the file: the MCP tool registry_write, action report. How to connect one.

Your trail

Files you open will collect here, so you can find them again.

Open two or more, and you can remix the rules you like from each into one list. Kept in this browser only.

Now do this for your own.

Bring your CLAUDE.md, AGENTS.md or skills. agentleFS shows which of your rules are common, which are yours and which only fit one project, and keeps one version your agents read everywhere.