Skip to content

refactor(pm): move lockfile.cppm into pm/lock_io.cppm (PR-R2)#4

Merged
Sunrisepeak merged 1 commit intomainfrom
refactor/pm-r2-lock-io
May 8, 2026
Merged

refactor(pm): move lockfile.cppm into pm/lock_io.cppm (PR-R2)#4
Sunrisepeak merged 1 commit intomainfrom
refactor/pm-r2-lock-io

Conversation

@Sunrisepeak
Copy link
Copy Markdown
Member

Summary

Step two of the package-management subsystem refactor described in
.agents/docs/2026-05-08-pm-subsystem-architecture.md.
Strictly zero behavior change.

  • New module mcpp.pm.lock_io (src/pm/lock_io.cppm) carries the
    full lockfile read/write/serialize/hash implementation under the
    mcpp::pm namespace.
  • The existing mcpp.lockfile module (src/lockfile.cppm) is now a
    thin shim: re-exports mcpp.pm.lock_io and provides using aliases
    • inline forwarders so mcpp::lockfile::Lockfile, ::load, ::write,
      ... continue to resolve unchanged. The shim disappears once
      cli.cppm migrates to the mcpp::pm:: qualified names directly.

Test plan

  • mcpp build (worktree)
  • mcpp test — 9/9 unit binaries pass
  • e2e subset: 02 / 09 / 12 / 23 / 27 all pass
  • Full CI green

Step two of the package-management subsystem refactor described in
`.agents/docs/2026-05-08-pm-subsystem-architecture.md`. Strictly zero
behavior change.

* New module `mcpp.pm.lock_io` (`src/pm/lock_io.cppm`) carries the
  full lockfile read/write/serialize/hash implementation under the
  `mcpp::pm` namespace.
* The existing `mcpp.lockfile` module (`src/lockfile.cppm`) is now a
  thin shim: re-exports `mcpp.pm.lock_io` and provides `using` aliases
  + inline forwarders so `mcpp::lockfile::Lockfile`, `::load`, ::write`,
  ... continue to resolve unchanged. The shim disappears once `cli.cppm`
  migrates to the `mcpp::pm::` qualified names directly.

Verification:
* `mcpp build` compiles unchanged.
* `mcpp test` — 9/9 unit binaries pass.
* e2e subset (02 / 09 / 12 / 23 / 27) all pass.
@Sunrisepeak Sunrisepeak merged commit b42000d into main May 8, 2026
1 check passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant