Skip to main content

finalize_spec

Function finalize_spec 

Source
pub fn finalize_spec(
    spec: &mut Spec,
    spec_repo: &FileSpecRepository,
    config: &Config,
    all_specs: &[Spec],
    options: FinalizeOptions,
) -> Result<()>
Expand description

Finalize a spec after successful completion.

This is the canonical finalization logic with full validation:

  • Checks for uncommitted changes in worktree
  • Validates driver/member relationships
  • Detects commits (if not provided)
  • Checks agent co-authorship for approval requirements
  • Updates status, commits, completed_at, and model
  • Verifies persistence

This function is idempotent and can be called multiple times safely.