feat(error): create base Error enum

This commit is contained in:
2026-02-05 19:37:36 +01:00
parent d0f2b3fea1
commit 644854f088
2 changed files with 21 additions and 0 deletions

20
src/error.rs Normal file
View File

@@ -0,0 +1,20 @@
#[derive(Debug, thiserror::Error)]
pub enum Error {
// Domain errors
#[error("Invalid scope: {0}")]
InvalidScope(String),
#[error("Invalid description: {0}")]
InvalidDescription(String),
// Infrastructure errors
#[error("Not a Jujutsu repository")]
NotARepository,
#[error("jj is not installed or not in PATH")]
JjNotFound,
#[error("jj command failed: {message}")]
JjCommand { message: String, stderr: String },
// Application errors
#[error("Operation cancelled by user")]
Cancelled,
#[error("Non-interactive terminal detected")]
NonInteractive
}

View File

@@ -2,3 +2,4 @@ mod cli;
mod commit;
mod jj;
mod prompts;
mod error;