Skip to main content

respond

Function respond 

Source
pub fn respond(hook_json: &str, project_dir: &Path) -> Option<String>
Expand description

The whole envelope, total: hook JSON in, at most one voice block out. Every failure path is None — the fail-open contract as a return type. The voices are derived from project_dir (the register, the shim evidence), the classes come from spec/agenda.register, and the edited path is normalized repo-relative so messages match what the repo’s own gates would say.

Capability: Effectful — reads the edited file, the registers, and build.rs under project_dir.