zeroclaw-labs/zeroclaw · error · anyhow::Error
Run {run_id} checkpoint input is not a JSON object; there is
Error message
Run {run_id} checkpoint input is not a JSON object; there is no field an amend could replace What it means
Error "Run {run_id} checkpoint input is not a JSON object; there is no field an amend could replace" thrown in zeroclaw-labs/zeroclaw.
Source
Thrown at crates/zeroclaw-runtime/src/sop/engine.rs:2810
anyhow::Error::msg(format!(
"SOP '{}' step {current_step} does not declare an editable field \
(`- edit:`); an amend cannot apply",
sop.name
))
})
}
/// Pre-flight an `Amend` WITHOUT mutating anything: the step must declare an
/// editable field and the checkpoint's piped value must be a JSON object the
/// field can replace into.
fn can_amend_checkpoint(&self, run_id: &str) -> Result<()> {
self.checkpoint_edit_field(run_id)?;
let run = self
.active_runs
.get(run_id)
.ok_or_else(|| anyhow::Error::msg(format!("Active run not found: {run_id}")))?;
if !step_input_value(run, run.current_step).is_object() {
bail!(
"Run {run_id} checkpoint input is not a JSON object; \
there is no field an amend could replace"
);
}
Ok(())
}
/// The step a `Revise` would re-run: the last COMPLETED step before the
/// checkpoint, but only when it is an `llm.generate` capability (the only
/// step kind a re-draft is meaningful for). `None` = this gate is not
/// revisable.
fn revisable_predecessor(&self, run_id: &str) -> Option<u32> {
let run = self.get_run(run_id)?;
let pred = run
.step_results
.iter()
.rev()
.find(|r| r.status == SopStepStatus::Completed && r.step_number < run.current_step)?View on GitHub (pinned to 88bb9c8533)
Solutions
- The checkpoint input must be a JSON object with a field to replace; there is nothing to amend.
When it happens
Trigger: Thrown at crates/zeroclaw-runtime/src/sop/engine.rs:2810 when the library encounters an invalid state.
Common situations: See trigger scenarios.
AI-assisted analysis of zeroclaw-labs/zeroclaw@88bb9c8533 (2026-08-23).
Data as JSON: /api/errors/b4e7013d32050d5c.
Report an issue: GitHub.