Skip to content

Commit fc0af9f

Browse files
committed
refactor(naming): replace grab-bag ops/manager module names with responsibility names
mcpp.bmi_cache.ops -> mcpp.bmi_cache.maintenance mcpp.scaffold.ops -> mcpp.scaffold.create mcpp.publish.ops -> mcpp.publish.pipeline mcpp.pack.ops -> mcpp.pack.pipeline mcpp.pm.index_ops -> mcpp.pm.index_management mcpp.toolchain.manager -> mcpp.toolchain.lifecycle Pure rename (module/file/import sites); namespaces, exported symbols and behavior unchanged.
1 parent 7a1d560 commit fc0af9f

14 files changed

Lines changed: 40 additions & 36 deletions

.agents/docs/2026-06-10-cli-modularization.md

Lines changed: 14 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -133,17 +133,17 @@ validation of CLI shapes, and routing. Relocation map (bodies verbatim again):
133133
| Phase-1 location | Phase-2 owner | Contents |
134134
|---|---|---|
135135
| `mcpp.cli.common` | `mcpp.project` (`src/project.cppm`) | `find_manifest_root`, `find_workspace_root`, `merge_workspace_deps` (also folds the private copy `pm.commands` kept) |
136-
| `mcpp.cli.common` | `mcpp.bmi_cache.ops` | `dir_size`, `human_bytes` |
136+
| `mcpp.cli.common` | `mcpp.bmi_cache.maintenance` | `dir_size`, `human_bytes` |
137137
| `mcpp.cli.common` | `mcpp.build.prepare` (internal) | `target_dir` |
138138
| `mcpp.cli.install_ui` | `mcpp.fetcher.progress` (`src/fetcher/progress.cppm`) | NDJSON→ui adapters (`CliInstallProgress``InstallProgressHandler`), `make_bootstrap_progress_callback`, `make_path_ctx` |
139139
| `mcpp.cli.build` | `mcpp.build.prepare` (`src/build/prepare.cppm`) | `BuildContext`, `BuildOverrides`, `prepare_build` |
140140
| `mcpp.cli.cmd_build` | `mcpp.build.execute` (`src/build/execute.cppm`) | build cache + fast path, `run_build_plan`, `try_fast_build`, `build_run_target`, `run_tests`, `clean_project` |
141-
| `mcpp.cli.cmd_toolchain` | `mcpp.toolchain.manager` (`src/toolchain/manager.cppm`) | version matching + `toolchain_list/install/set_default/remove` |
142-
| `mcpp.cli.cmd_registry` | `mcpp.pm.index_ops` (`src/pm/index_ops.cppm`) | `search_packages`, `index_list/add/remove/update/pin/unpin` |
143-
| `mcpp.cli.cmd_cache` | `mcpp.bmi_cache.ops` (`src/bmi_cache/ops.cppm`) | `cache_list/info/prune/clean` |
144-
| `mcpp.cli.cmd_new` | `mcpp.scaffold.ops` (`src/scaffold/ops.cppm`) | template fetch/instantiate + `create_builtin_project` |
145-
| `mcpp.cli.cmd_publish` | `mcpp.publish.ops` (`src/publish/ops.cppm`) | `publish_package`, `emit_xpkg_to` |
146-
| `mcpp.cli.cmd_publish` | `mcpp.pack.ops` (`src/pack/ops.cppm`) | `build_and_pack` |
141+
| `mcpp.cli.cmd_toolchain` | `mcpp.toolchain.lifecycle` (`src/toolchain/lifecycle.cppm`) | version matching + `toolchain_list/install/set_default/remove` |
142+
| `mcpp.cli.cmd_registry` | `mcpp.pm.index_management` (`src/pm/index_management.cppm`) | `search_packages`, `index_list/add/remove/update/pin/unpin` |
143+
| `mcpp.cli.cmd_cache` | `mcpp.bmi_cache.maintenance` (`src/bmi_cache/maintenance.cppm`) | `cache_list/info/prune/clean` |
144+
| `mcpp.cli.cmd_new` | `mcpp.scaffold.create` (`src/scaffold/create.cppm`) | template fetch/instantiate + `create_builtin_project` |
145+
| `mcpp.cli.cmd_publish` | `mcpp.publish.pipeline` (`src/publish/pipeline.cppm`) | `publish_package`, `emit_xpkg_to` |
146+
| `mcpp.cli.cmd_publish` | `mcpp.pack.pipeline` (`src/pack/pipeline.cppm`) | `build_and_pack` |
147147
| `mcpp.cli.cmd_self` | `mcpp.doctor` (`src/doctor.cppm`) | `env_report`, `doctor_report`, `why_report`, `explain_code`, `self_init`, `self_config` |
148148

149149
Resulting cli layer: `cli.cppm` (dispatcher, 481) + seven `cmd_*` adapters
@@ -153,6 +153,10 @@ the cli layer. The split rule for each command: CLI-shape validation and
153153
usage errors stay in the adapter; everything after lives in the domain op
154154
with identical statements, messages and exit codes.
155155

156+
Naming rule: module names state the responsibility (`maintenance`, `create`,
157+
`pipeline`, `lifecycle`, `index_management`) — grab-bag suffixes like `ops`,
158+
`manager` or `utils` are not acceptable module names in this codebase.
159+
156160
## 5. Follow-ups (out of scope here)
157161

158162
- Decompose `prepare_build` internally (workspace / toolchain / dep-resolution / feature phases) now that it lives in `mcpp.build.prepare`.
@@ -169,8 +173,8 @@ with identical statements, messages and exit codes.
169173
PR opened; CI green on linux/windows/macos.
170174
- 2026-06-10 (phase 2): domain relocation executed — implementations moved out
171175
of `mcpp.cli.*` into `mcpp.project`, `mcpp.fetcher.progress`,
172-
`mcpp.build.{prepare,execute}`, `mcpp.toolchain.manager`,
173-
`mcpp.pm.index_ops`, `mcpp.bmi_cache.ops`, `mcpp.scaffold.ops`,
174-
`mcpp.publish.ops`, `mcpp.pack.ops`, `mcpp.doctor`; `cli/cmd_*` reduced to
176+
`mcpp.build.{prepare,execute}`, `mcpp.toolchain.lifecycle`,
177+
`mcpp.pm.index_management`, `mcpp.bmi_cache.maintenance`, `mcpp.scaffold.create`,
178+
`mcpp.publish.pipeline`, `mcpp.pack.pipeline`, `mcpp.doctor`; `cli/cmd_*` reduced to
175179
parse + route adapters (~450 lines total). Self-host build + 18/18 unit
176180
tests pass; e2e parity with baseline re-verified.
Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,12 +1,12 @@
1-
// mcpp.bmi_cache.ops — global BMI cache inspection + pruning, and the
1+
// mcpp.bmi_cache.maintenance — global BMI cache inspection + pruning, and the
22
// shared fs-size/byte-formatting helpers they are built on.
33
// Bodies moved verbatim from the CLI layer. Zero behavior change.
44

55
module;
66
#include <cstdio>
77
#include <cstdlib>
88

9-
export module mcpp.bmi_cache.ops;
9+
export module mcpp.bmi_cache.maintenance;
1010

1111
import std;
1212
import mcpp.toolchain.stdmod;

src/cli.cppm

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -5,8 +5,8 @@
55
// mcpp.cli.cmd_toolchain / cmd_publish / cmd_self (parse + route)
66
// mcpp.pm.commands (add / remove / update)
77
// Domain logic lives in its owning subsystem: mcpp.build.{prepare,execute},
8-
// mcpp.pm.index_ops, mcpp.toolchain.manager, mcpp.scaffold.ops,
9-
// mcpp.publish.ops, mcpp.pack.ops, mcpp.bmi_cache.ops, mcpp.doctor,
8+
// mcpp.pm.index_management, mcpp.toolchain.lifecycle, mcpp.scaffold.create,
9+
// mcpp.publish.pipeline, mcpp.pack.pipeline, mcpp.bmi_cache.maintenance, mcpp.doctor,
1010
// mcpp.project, mcpp.fetcher.progress.
1111
// See .agents/docs/2026-06-10-cli-modularization.md for the architecture.
1212

src/cli/cmd_cache.cppm

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
// mcpp.cli.cmd_cache — CLI parsing + routing for the `mcpp cache` family.
2-
// Implementations live in mcpp.bmi_cache.ops.
2+
// Implementations live in mcpp.bmi_cache.maintenance.
33

44
module;
55
#include <cstdio>
@@ -9,7 +9,7 @@ export module mcpp.cli.cmd_cache;
99

1010
import std;
1111
import mcpplibs.cmdline;
12-
import mcpp.bmi_cache.ops;
12+
import mcpp.bmi_cache.maintenance;
1313
import mcpp.ui;
1414

1515
namespace mcpp::cli {

src/cli/cmd_new.cppm

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
// mcpp.cli.cmd_new — CLI parsing + routing for `mcpp new`.
2-
// Implementation lives in mcpp.scaffold.ops.
2+
// Implementation lives in mcpp.scaffold.create.
33

44
module;
55
#include <cstdio>
@@ -10,7 +10,7 @@ export module mcpp.cli.cmd_new;
1010
import std;
1111
import mcpplibs.cmdline;
1212
import mcpp.scaffold;
13-
import mcpp.scaffold.ops;
13+
import mcpp.scaffold.create;
1414
import mcpp.ui;
1515

1616
namespace mcpp::cli {

src/cli/cmd_publish.cppm

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
// mcpp.cli.cmd_publish — CLI parsing + routing for publish / pack /
2-
// emit xpkg. Implementations live in mcpp.publish.ops and mcpp.pack.ops.
2+
// emit xpkg. Implementations live in mcpp.publish.pipeline and mcpp.pack.pipeline.
33

44
module;
55
#include <cstdio>
@@ -10,8 +10,8 @@ export module mcpp.cli.cmd_publish;
1010
import std;
1111
import mcpplibs.cmdline;
1212
import mcpp.pack;
13-
import mcpp.pack.ops;
14-
import mcpp.publish.ops;
13+
import mcpp.pack.pipeline;
14+
import mcpp.publish.pipeline;
1515
import mcpp.ui;
1616

1717
namespace mcpp::cli {

src/cli/cmd_registry.cppm

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
// mcpp.cli.cmd_registry — CLI parsing + routing for search and the
2-
// `mcpp index` family. Implementations live in mcpp.pm.index_ops.
2+
// `mcpp index` family. Implementations live in mcpp.pm.index_management.
33

44
module;
55
#include <cstdio>
@@ -9,7 +9,7 @@ export module mcpp.cli.cmd_registry;
99

1010
import std;
1111
import mcpplibs.cmdline;
12-
import mcpp.pm.index_ops;
12+
import mcpp.pm.index_management;
1313
import mcpp.ui;
1414

1515
namespace mcpp::cli {

src/cli/cmd_toolchain.cppm

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
// mcpp.cli.cmd_toolchain — CLI parsing + routing for the `mcpp toolchain`
2-
// family. Implementations live in mcpp.toolchain.manager.
2+
// family. Implementations live in mcpp.toolchain.lifecycle.
33

44
module;
55
#include <cstdio>
@@ -11,7 +11,7 @@ import std;
1111
import mcpplibs.cmdline;
1212
import mcpp.config;
1313
import mcpp.fetcher.progress;
14-
import mcpp.toolchain.manager;
14+
import mcpp.toolchain.lifecycle;
1515
import mcpp.ui;
1616

1717
namespace mcpp::cli {

src/doctor.cppm

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,7 @@ module;
1010
export module mcpp.doctor;
1111

1212
import std;
13-
import mcpp.bmi_cache.ops;
13+
import mcpp.bmi_cache.maintenance;
1414
import mcpp.build.prepare;
1515
import mcpp.build.plan;
1616
import mcpp.config;
Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,12 +1,12 @@
1-
// mcpp.pack.ops — pack orchestration: build (re-preparing for musl static
1+
// mcpp.pack.pipeline — pack orchestration: build (re-preparing for musl static
22
// when needed), pick the main binary, plan + run the bundler.
33
// Bodies moved verbatim from the CLI layer. Zero behavior change.
44

55
module;
66
#include <cstdio>
77
#include <cstdlib>
88

9-
export module mcpp.pack.ops;
9+
export module mcpp.pack.pipeline;
1010

1111
import std;
1212
import mcpp.build.prepare;

0 commit comments

Comments
 (0)