pub fn write_plan(
root: &Path,
plan: &[GeneratedFile],
force: bool,
) -> Result<Vec<(String, FileAction)>>Expand description
Write a plan to disk, honoring the ownership model, and update
.ctx/harness.lock.
Returns one (rel_path, action) per planned file (plus the lock file
itself). This function does not print; callers surface warnings for
skipped files.