Skip to main content

update_binding_json

Function update_binding_json 

Source
pub fn update_binding_json(
    root: &Path,
    mem: &str,
    name: &str,
    patch_json: &str,
) -> Result<Binding, PipelineEditError>
Expand description

Patch an existing binding from a JSON BindingPatch — the update path over the full author-editable record (sources, operations, deny_paths, coverage_semantics, rules including clearing, prune). Absent fields are preserved (the tail-preservation contract); explicit null clears intent / rules / prune; a present sources or operations block replaces that whole block; version stays engine-managed.

Refuses when the record does not exist (PipelineEditError::NotFound) or when the patch introduces a validation refusal the stored record did not already carry (PipelineEditError::Capability — pre-existing refusals never block an unrelated edit). Nothing is written on refusal. Returns the written record.