chore: delete deprecated --experimental-lockfile aliases and dormant scaffolding#51
Merged
Conversation
…liases and dormant scaffolding Audit gap #11 + user directive: aggressively delete dormant / deprecation-tracked scaffolding since nobody is using deacon yet — no back-compat to preserve. ## Deleted CLI flags (Up + Build) - `--experimental-lockfile` (hidden alias for the legacy `<PATH>` form, emitted a deprecation WARN) — replaced by `--no-lockfile` and the default-derived path next to the config file. - `--experimental-frozen-lockfile` (hidden alias for `--frozen-lockfile`) — replaced by `--frozen-lockfile` directly. - `--omit-syntax-directive` (Build) — was never read in any code path. - `--skip-persisting-customizations-from-features` (Build) — was never read. ## Deleted code following the flags - `crates/deacon/src/cli.rs`: removed the 2 deprecation-WARN blocks, the `effective_frozen_lockfile = frozen || experimental_frozen` OR, and the corresponding fields from the Up + Build dispatchers + enum variants. - `crates/deacon/src/commands/up/args.rs`: removed `experimental_lockfile`, `experimental_frozen_lockfile`, and `omit_syntax_directive` from `UpArgs` and `NormalizedUpInput` (+ their Default impl + the normalize-and-validate threading). Removed the `#[allow(dead_code)] // TODO: Will be wired in T009` on `update_remote_user_uid_default` (it IS actually consumed downstream — no allow needed). - `crates/deacon/src/commands/up/mod.rs`: simplified the frozen-lockfile pre-build validation — `(args.frozen_lockfile || args.experimental_lockfile.is_some())` → `args.frozen_lockfile`, and dropped the experimental_lockfile path derivation. - `crates/deacon/src/commands/up/helpers.rs`: removed the `experimental_lockfile` branch in `handle_lockfile_post_build` and the `experimental_lockfile_path_overrides_derivation` test. - `crates/deacon/src/commands/build/mod.rs`: removed `experimental_lockfile`, `experimental_frozen_lockfile`, `omit_syntax_directive`, and `skip_persisting_customizations_from_features` from `BuildArgs` and its Default impl. Tightened the `no_lockfile` / `frozen_lockfile` doc comments to point at the actual followup (lifting the byte-compare helper from `up::helpers` into a shared module). - `crates/core/src/build/mod.rs`: removed `experimental_lockfile`, `experimental_frozen_lockfile`, `omit_syntax_directive` from the `BuildRequest` struct and updated the 2 test fixtures accordingly. - `crates/deacon/tests/up_lockfile_frozen.rs`: removed the `test_experimental_frozen_lockfile_defaults_to_false` test; updated 2 other tests that referenced the deleted field to use `frozen_lockfile`. ## Deleted dead module - `crates/deacon/src/commands/up/dotfiles.rs` (245 LoC) — module was marked `#[deprecated]` since T009 with dotfiles execution now in `deacon_core::container_lifecycle::execute_dotfiles_in_container`. Confirmed zero callers via grep. Removed `mod dotfiles;` registration in `up/mod.rs` and the matching doc-comment line. ## Verification - `cargo build` - `cargo fmt --all -- --check` - `cargo clippy --all-targets -- -D warnings` - `cargo test --lib` → 284 deacon + 1081 deacon-core pass Refs: gap #11 from the post-1.0 audit. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
5 tasks
# Conflicts: # crates/deacon/src/commands/up/dotfiles.rs
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Audit gap #11 + user directive: aggressively delete dormant / deprecation-tracked scaffolding since nobody is using deacon yet — no back-compat to preserve.
Deleted CLI flags (Up + Build)
--experimental-lockfile(hidden alias for the legacy<PATH>form; emitted a deprecation WARN)--experimental-frozen-lockfile(hidden alias for--frozen-lockfile)--omit-syntax-directive(Build) — was never read in any code path--skip-persisting-customizations-from-features(Build) — was never readReplaced by the graduated
--no-lockfile/--frozen-lockfileflags and the default-derived lockfile path (next to the config file).Deleted code following the flags
crates/deacon/src/cli.rs: removed 2 deprecation-WARN blocks, theeffective_frozen_lockfile = frozen || experimental_frozenOR, and the fields from Up + Build dispatchers + enum variants.crates/deacon/src/commands/up/args.rs: removedexperimental_lockfile,experimental_frozen_lockfile,omit_syntax_directivefromUpArgsandNormalizedUpInput. Dropped the stale#[allow(dead_code)] // TODO: T009onupdate_remote_user_uid_default(it IS actually consumed downstream).crates/deacon/src/commands/up/mod.rs: simplified pre-build validation —(frozen_lockfile || experimental_lockfile.is_some())→frozen_lockfile.crates/deacon/src/commands/up/helpers.rs: removed theexperimental_lockfilebranch inhandle_lockfile_post_buildand the corresponding test.crates/deacon/src/commands/build/mod.rs: removed the 4 fields fromBuildArgs+ Default impl. Tightenedno_lockfile/frozen_lockfilecomments to point at the actual followup (lifting the byte-compare helper fromup::helpersinto a shared module).crates/core/src/build/mod.rs: removedexperimental_lockfile,experimental_frozen_lockfile,omit_syntax_directivefromBuildRequestand updated 2 test fixtures.crates/deacon/tests/up_lockfile_frozen.rs: removedtest_experimental_frozen_lockfile_defaults_to_false; updated 2 other tests to usefrozen_lockfileinstead.Deleted dead module
crates/deacon/src/commands/up/dotfiles.rs(245 LoC) — marked#[deprecated]since T009 with dotfiles execution now indeacon_core::container_lifecycle::execute_dotfiles_in_container. Confirmed zero callers via grep. Removedmod dotfiles;registration inup/mod.rs.Net diff
8 files changed, +29 / -434.
Verification
cargo buildcargo fmt --all -- --checkcargo clippy --all-targets -- -D warningscargo test --lib→ 284 deacon + 1081 deacon-core passRefs: gap #11 from the post-1.0 audit.
🤖 Generated with Claude Code