|
1 | 1 | ## 1. New files |
2 | 2 |
|
3 | | -- [ ] 1.1 Create `scripts/paths.py` with `ensure_user_path(from_login_shell=False)` plus its internal static-dir and node-availability helpers, copied verbatim from `scripts/detect_lang.py`. |
4 | | -- [ ] 1.2 Create `scripts/user_config.py` with `load_user_config`, `load_project_overrides`, `get_overrides`, copied verbatim from `scripts/detect_lang.py`. |
| 3 | +- [x] 1.1 Create `scripts/paths.py` with `ensure_user_path(from_login_shell=False)` plus its internal static-dir and node-availability helpers, copied verbatim from `scripts/detect_lang.py`. |
| 4 | +- [x] 1.2 Create `scripts/user_config.py` with `load_user_config`, `load_project_overrides`, `get_overrides`, copied verbatim from `scripts/detect_lang.py`. |
5 | 5 |
|
6 | 6 | ## 2. detect_lang.py refactor |
7 | 7 |
|
8 | | -- [ ] 2.1 Delete the implementation bodies of `ensure_user_path` and configuration helpers from `scripts/detect_lang.py`. |
9 | | -- [ ] 2.2 Replace them with re-exports (`from paths import ensure_user_path`, `from user_config import load_user_config, load_project_overrides, get_overrides`) and add `__all__` enumerating all externally imported symbols (existing + new re-exports). |
| 8 | +- [x] 2.1 Delete the implementation bodies of `ensure_user_path` and configuration helpers from `scripts/detect_lang.py`. |
| 9 | +- [x] 2.2 Replace them with re-exports (`from paths import ensure_user_path`, `from user_config import load_user_config, load_project_overrides, get_overrides`) and add `__all__` enumerating all externally imported symbols (existing + new re-exports). |
10 | 10 |
|
11 | 11 | ## 3. Hooks annotation |
12 | 12 |
|
13 | | -- [ ] 3.1 In each of `hooks/env_check.py`, `hooks/pre_tool_git_guard.py`, `hooks/post_tool_lint.py`, `hooks/user_prompt_validator.py`, append an inline comment to the existing `from detect_lang import ...` line noting the source file (`paths.py` or `user_config.py`). |
| 13 | +- [x] 3.1 In each of `hooks/env_check.py`, `hooks/pre_tool_git_guard.py`, `hooks/post_tool_lint.py`, `hooks/user_prompt_validator.py`, append an inline comment to the existing `from detect_lang import ...` line noting the source file (`paths.py` or `user_config.py`). |
14 | 14 |
|
15 | 15 | ## 4. Validation |
16 | 16 |
|
17 | | -- [ ] 4.1 Run `python3 tests/run_all.py` — all hook simulation, language-registry, unit, CVE, edges, and field-regression subsets must pass. |
18 | | -- [ ] 4.2 Run `python3 -m unittest discover -s tests -p 'test_*.py' -v` — `test_plugin_manifests.py` and `test_skill_vendor.py` must pass (pre-existing baseline). |
19 | | -- [ ] 4.3 Run `git diff --check` — must be clean. |
20 | | -- [ ] 4.4 Run `openspec validate --all --strict` — must pass (3 pre-existing specs + new `language-gate-commands`). |
21 | | -- [ ] 4.5 Run `ruff check scripts/paths.py scripts/user_config.py scripts/detect_lang.py hooks/` — zero lint issues. |
| 17 | +- [x] 4.1 Run `python3 tests/run_all.py` — all hook simulation, language-registry, unit, CVE, edges, and field-regression subsets must pass. |
| 18 | +- [x] 4.2 Run `python3 -m unittest discover -s tests -p 'test_*.py' -v` — `test_plugin_manifests.py` and `test_skill_vendor.py` must pass (pre-existing baseline). |
| 19 | +- [x] 4.3 Run `git diff --check` — must be clean. |
| 20 | +- [x] 4.4 Run `openspec validate --all --strict` — must pass (3 pre-existing specs + new `language-gate-commands`). |
| 21 | +- [x] 4.5 Run `ruff check scripts/paths.py scripts/user_config.py scripts/detect_lang.py hooks/` — zero lint issues. |
22 | 22 |
|
23 | 23 | ## 5. Graph evidence |
24 | 24 |
|
25 | | -- [ ] 5.1 Rebuild `code-review-graph` and verify the cross-community edge count between `hooks-gate` and `scripts-scan` drops to ≤4 (was 19). |
| 25 | +- [x] 5.1 Rebuild `code-review-graph` and verify the cross-community edge count between `hooks-gate` and `scripts-scan` drops to ≤4 (was 19). |
26 | 26 |
|
27 | 27 | ## 6. Release |
28 | 28 |
|
29 | | -- [ ] 6.1 `node scripts/bump-plugin.mjs codeguard patch` — bump 0.6.0 → 0.6.1. |
30 | | -- [ ] 6.2 Commit plugin repo change, push `main` + tag `v0.6.1`. |
31 | | -- [ ] 6.3 In `full-stack-plugins` market repo, sync catalog `codeguard` to `0.6.1` and regenerate three marketplace manifests; commit and push. |
32 | | -- [ ] 6.4 `openspec archive add-detect-lang-splits` after all tasks above are checked. |
| 29 | +- [x] 6.1 `node scripts/bump-plugin.mjs codeguard patch` — bump 0.6.0 → 0.6.1. |
| 30 | +- [x] 6.2 Commit plugin repo change, push `main` + tag `v0.6.1`. |
| 31 | +- [x] 6.3 In `full-stack-plugins` market repo, sync catalog `codeguard` to `0.6.1` and regenerate three marketplace manifests; commit and push. |
| 32 | +- [x] 6.4 `openspec archive add-detect-lang-splits` after all tasks above are checked. |
0 commit comments