| author | |
| committer | |
| log | 7d620506a1fecf07aa2d623e72059d551709ae3a |
| tree | 7e797720b38c528b7512911f51bf3da20e456339 |
| parent | b28471567cebe20347205059bbbdb3efe1213528 |
| signature | Signed by PGP key B5690EEEBB952194 |
2 files changed, 4 insertions(+), 3 deletions(-)
docs/operations/development.md+3-2| ... | ... | @@ -74,11 +74,12 @@ Windows investigation while that suite is not a required gate. |
| 74 | 74 | ### Unused code |
| 75 | 75 | |
| 76 | 76 | `vp run knip:check` checks unused files and dependencies across the repo, then |
| 77 | unused runtime exports in `apps/desktop`, `apps/web`, and every internal package under | |
| 77 | unused runtime exports in `apps/server`, `apps/desktop`, `apps/web`, and every internal package under | |
| 78 | 78 | `packages/`. CI enforces both checks. |
| 79 | 79 | Exported types and Effect schemas are allowed without consumers. The schema preprocessor |
| 80 | 80 | recognizes schema types, including aliases and schema classes; functions that create or decode |
| 81 | schemas remain checked. Completely unused files remain checked too. | |
| 81 | schemas remain checked. Canonical Effect service construction APIs stay exported with an explicit | |
| 82 | `@public` annotation, which Knip recognizes. Completely unused files remain checked too. | |
| 82 | 83 | Named exports in web UI component modules are kept as complete component sets. Knip ignores |
| 83 | 84 | unused exports in `apps/web/src/components/ui/*.tsx`, while still reporting an entire unused file. |
| 84 | 85 | Use `vp run knip --workspace apps/web` to audit one workspace, including exports, |
package.json+1-1| ... | ... | @@ -27,7 +27,7 @@ |
| 27 | 27 | "tc": "vp run -r --concurrency-limit 2 typecheck", |
| 28 | 28 | "lint": "vp lint --report-unused-disable-directives", |
| 29 | 29 | "knip": "knip --preprocessor ./scripts/knip-schemas.ts", |
| 30 | "knip:check": "knip --include files,dependencies --no-config-hints && knip --workspace apps/desktop --workspace apps/web --workspace packages/client-runtime --workspace packages/contracts --workspace packages/effect-acp --workspace packages/effect-codex-app-server --workspace packages/shared --workspace packages/ssh --workspace packages/tailscale --exports --preprocessor ./scripts/knip-schemas.ts --no-config-hints", | |
| 30 | "knip:check": "knip --include files,dependencies --no-config-hints && knip --workspace apps/server --workspace apps/desktop --workspace apps/web --workspace packages/client-runtime --workspace packages/contracts --workspace packages/effect-acp --workspace packages/effect-codex-app-server --workspace packages/shared --workspace packages/ssh --workspace packages/tailscale --exports --preprocessor ./scripts/knip-schemas.ts --no-config-hints", | |
| 31 | 31 | "knip:production": "knip --production --preprocessor ./scripts/knip-schemas.ts", |
| 32 | 32 | "lint:mobile": "node scripts/mobile-native-static-check.ts", |
| 33 | 33 | "test": "vp run -r test", |