MCPcopy
hub / github.com/github/spec-kit / _decide_overwrite

Function _decide_overwrite

src/specify_cli/shared_infra.py:405–417  ·  view source on GitHub ↗

Return (write, bucket) where bucket is 'skip', 'preserved', or None.

(rel: str, dst: Path)

Source from the content-addressed store, hash-verified

403 variant_dir = "bash" if script_type == "sh" else "powershell"
404
405 def _decide_overwrite(rel: str, dst: Path) -> tuple[bool, str | None]:
406 """Return (write, bucket) where bucket is 'skip', 'preserved', or None."""
407 if not dst.exists():
408 return True, None
409 if force:
410 return True, None
411 if refresh_managed:
412 if _is_managed(rel, dst):
413 return True, None
414 if rel in prior_hashes:
415 return False, "preserved"
416 return False, "skip"
417 return False, "skip"
418
419 def _safe_dest_or_bucket(dst: Path, rel: str, *, parent_must_exist: bool = True) -> bool:
420 """Run the safe-destination check and bucket symlinked paths.

Callers 1

install_shared_infraFunction · 0.85

Calls 1

_is_managedFunction · 0.85

Tested by

no test coverage detected