new_feature.manifest
new_feature.manifest
Persist and parse the lifecycle state of managed features.
FeatureRecord
dataclass
Store the allocated state and lifecycle status of one managed feature.
Manifest
dataclass
Store all managed feature records for one control checkout.
manifest_path(repo_root: Path) -> Path
Return the path of a repository's managed-feature manifest.
manifest_lock(repo_root: Path) -> Iterator[None]
Serialize manifest reads and writes for a repository.
target_merge_lock(repo_root: Path) -> Iterator[None]
Serialize mutations of this repository's control checkout during merges.
feature_operation_lock(repo_root: Path, slug: str) -> Iterator[None]
Fail fast when a lifecycle operation already owns this feature.
feature_execution_lock(repo_root: Path, slug: str) -> Iterator[None]
Allow concurrent commands while excluding feature lifecycle mutations.
load_manifest(repo_root: Path) -> Manifest
Load a repository manifest, returning an empty one when none exists.
save_manifest(repo_root: Path, manifest: Manifest) -> None
Atomically persist a managed-feature manifest to disk.