mod context;
mod jinja;
mod prompt;
use thiserror::Error;
pub use context::{Context, StageContext, issue_value};
pub use jinja::*;
pub use prompt::*;
use crate::shell::CommandExecError;
#[derive(Debug, Error)]
pub enum TemplateError {
#[error("template render failed: {0}")]
Render(#[from] minijinja::Error),
#[error("prompt injection command `{command}` failed: {source}")]
PromptCommandFailed {
command: String,
#[source]
source: CommandExecError,
},
#[error(transparent)]
Io(#[from] std::io::Error),
}