Repository navigation
Commit 3a99f2f
authored
refactor(layering): 首批下移工具适配层,并加装分层门禁与首个 CI (#1)
四 crate 的设计意图是 core(契约)← runtime(执行)← adapters(工具适配)
← cli(组装),但实际倒挂:adapters 已持有 ESLint/Checkstyle/Cargo/Go 的诊断
类型,其身份映射逻辑却住在二进制 crate,使 cli 顶层模块达 145 个、远超 core。
本 PR 不做一次性大搬迁(diff 无法审阅),而是先搬最干净的一族并装上门禁:
- 4 个 *_finding_identity(eslint/cargo_build/go/rustdoc,共 332 行)从
codeguard-cli 迁至 codeguard-adapters。四个模块本就直接依赖 adapters 的诊断
类型,跨 crate 后改为 crate 根 re-export;eslint 的 validate_records 由
pub(crate) 提升为 pub。cli 顶层模块 145 → 141,adapters 61 → 65。
- scripts/check_layering.py + layer-baseline.json:把倒挂变成显式债务。
cli 中剩余的 13 个领域形态模块(9 个 *_probe、2 个 *_module_graph、
npm_input_state、tool_identity)逐条登记归属与理由,额度只减不增——
新增未登记的领域模块会失败,模块下移后基线未同步收紧也会失败。
两个方向都做了负向验证。
- .github/workflows/ci.yml:本仓此前没有任何 CI,995 个测试无自动门禁。
门禁跑 layering check + build + test。
关于固定语料的一个坑:corpus_integrity 会按 sha256 校验来自
codeguard-plugin@9e4adb1 的真实文件,只建空目录不够(实测摘要不匹配),
CI 必须把该 commit 检出到兄弟目录。
验证:995 通过 / 0 失败(重构前后一致,无测试增减)。1 parent 5020605 commit 3a99f2f
20 files changed
Lines changed: 238 additions & 20 deletions
File tree
- .github/workflows
- crates
- codeguard-adapters/src
- codeguard-cli
- src
- work_sync
- tests
- scripts
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
| 1 | + | |
| 2 | + | |
| 3 | + | |
| 4 | + | |
| 5 | + | |
| 6 | + | |
| 7 | + | |
| 8 | + | |
| 9 | + | |
| 10 | + | |
| 11 | + | |
| 12 | + | |
| 13 | + | |
| 14 | + | |
| 15 | + | |
| 16 | + | |
| 17 | + | |
| 18 | + | |
| 19 | + | |
| 20 | + | |
| 21 | + | |
| 22 | + | |
| 23 | + | |
| 24 | + | |
| 25 | + | |
| 26 | + | |
| 27 | + | |
| 28 | + | |
| 29 | + | |
| 30 | + | |
| 31 | + | |
| 32 | + | |
| 33 | + | |
| 34 | + | |
| 35 | + | |
| 36 | + | |
| 37 | + | |
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
1 | 1 | | |
2 | 2 | | |
3 | | - | |
| 3 | + | |
4 | 4 | | |
5 | 5 | | |
6 | 6 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
1 | 1 | | |
2 | | - | |
| 2 | + | |
3 | 3 | | |
4 | 4 | | |
5 | 5 | | |
| |||
103 | 103 | | |
104 | 104 | | |
105 | 105 | | |
106 | | - | |
| 106 | + | |
107 | 107 | | |
108 | 108 | | |
109 | 109 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
1 | 1 | | |
2 | 2 | | |
3 | | - | |
| 3 | + | |
4 | 4 | | |
5 | 5 | | |
6 | 6 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
355 | 355 | | |
356 | 356 | | |
357 | 357 | | |
| 358 | + | |
| 359 | + | |
| 360 | + | |
| 361 | + | |
| 362 | + | |
| 363 | + | |
| 364 | + | |
| 365 | + | |
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
1 | 1 | | |
2 | 2 | | |
3 | | - | |
| 3 | + | |
4 | 4 | | |
5 | 5 | | |
6 | 6 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
1 | 1 | | |
| 2 | + | |
2 | 3 | | |
3 | | - | |
4 | 4 | | |
5 | 5 | | |
6 | 6 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
2 | 2 | | |
3 | 3 | | |
4 | 4 | | |
5 | | - | |
| 5 | + | |
6 | 6 | | |
7 | 7 | | |
8 | 8 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
14 | 14 | | |
15 | 15 | | |
16 | 16 | | |
17 | | - | |
18 | 17 | | |
19 | 18 | | |
20 | 19 | | |
| |||
71 | 70 | | |
72 | 71 | | |
73 | 72 | | |
74 | | - | |
75 | 73 | | |
76 | 74 | | |
77 | 75 | | |
| |||
95 | 93 | | |
96 | 94 | | |
97 | 95 | | |
98 | | - | |
99 | 96 | | |
100 | 97 | | |
101 | 98 | | |
| |||
154 | 151 | | |
155 | 152 | | |
156 | 153 | | |
157 | | - | |
158 | 154 | | |
159 | 155 | | |
160 | 156 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
1 | 1 | | |
2 | 2 | | |
3 | | - | |
| 3 | + | |
4 | 4 | | |
5 | 5 | | |
6 | 6 | | |
| |||
0 commit comments