JJ as Source of Truth

VCS-JJ-AS-SOURCE-OF-TRUTH

Summary

Use jj for local workflow in repositories with .jj state. This preserves descriptions, stack shape, operation-log recovery, and bookmark semantics.

Rule

Use jj as the source of truth in .jj repositories.

Why

A .jj repo has jj changes, operation log, working-copy state, and bookmarks layered over Git storage. Normal local workflow should use jj so descriptions, stack shape, and recovery stay coherent.

Helps

  • Prevents Git commands from bypassing jj semantics and confusing the change graph.

Limits

Git can still be used for transport or host tooling when jj does not cover the operation, but return to jj for local state and review shape.

Agent Instruction

Use `jj` as the source of truth in `.jj` repositories because a `.jj` repo has jj changes, operation
log, working-copy state, and bookmarks layered over Git storage.

Mechanisms

Supported by jj status, jj diff, jj desc, jj new, jj git fetch, and repo instructions that translate Git-centric advice into jj operations.

References