Skip to main content

Crate jjj

Crate jjj 

Source
Expand description

jjj (Jujutsu Juggler) — distributed project management using Popperian epistemology.

Entities follow a three-tier model:

  • Problems: things to solve, forming a DAG via parent_id
  • Solutions: conjectures attached to jj Change IDs (not commit hashes)
  • Critiques: error-elimination feedback that can block solution approval

All metadata lives in an orphaned jjj bookmark and syncs via jj git push/fetch. There is no central server and no database required for the core workflow. SQLite is used as a local cache for search and embeddings only.

Re-exports§

pub use error::JjjError;
pub use error::Result;
pub use models::Critique;
pub use models::CritiqueSeverity;
pub use models::CritiqueStatus;
pub use models::Milestone;
pub use models::MilestoneStatus;
pub use models::Problem;
pub use models::ProblemStatus;
pub use models::ProjectConfig;
pub use models::Solution;
pub use models::SolutionStatus;

Modules§

automation
Config-driven automation: fires actions in response to jjj events.
cli
commands
context
Command execution context providing shared access to storage and JJ client.
db
display
Display formatting utilities for entity IDs.
domain
Shared domain operations.
embeddings
Embedding client for computing vector embeddings via the Ollama API.
error
Error types for jjj.
id
UUID7 generation and utilities for entity IDs.
jj
local_config
Local configuration for jjj stored in .jj/jjj.toml
models
picker
Interactive picker for disambiguation.
ranking
resolve
Entity resolution from user input to UUID.
storage
sync
tui
utils