44 lines
2.0 KiB
Markdown
44 lines
2.0 KiB
Markdown
# WRNexusJS 0.7.0 R3 — Workspace Repair and Typecheck Isolation
|
|
|
|
## Problem
|
|
|
|
Applying a source ZIP over an existing Git checkout cannot delete files or change the Git index. Two local focused-typecheck files and two previously tracked environment files therefore survived earlier archive updates:
|
|
|
|
- `focus-shims.d.ts`
|
|
- `tsconfig.focus.json`
|
|
- `examples/basic-app/.env`
|
|
- `examples/basic-app/.env.uat`
|
|
|
|
The ambient declarations in `focus-shims.d.ts` replaced or weakened the installed Bun, Node.js, TypeScript, filesystem, child-process, Happy DOM, and tsup typings. That produced dozens of false `implicit any`, missing namespace member, and untyped `Bun.serve` errors.
|
|
|
|
## Corrections
|
|
|
|
1. Root `tsconfig.json` now has explicit include/exclude rules and always excludes focused-typecheck helper files.
|
|
2. Added `bun run repair:workspace` to:
|
|
- remove the two temporary typecheck files;
|
|
- remove unsafe secret-like files and temporary shims from Git tracking;
|
|
- preserve local `.env` file contents;
|
|
- ensure the required `.gitignore` rules exist.
|
|
3. Added `bun run check:workspace` for non-mutating CI/release verification.
|
|
4. `validate:0.7` warns about local leftovers instead of allowing a TypeScript cascade, and verifies that the root typecheck excludes them.
|
|
5. The security audit blocks tracked typecheck shims and tracked environment files with the repair command in its error message.
|
|
6. Release prepare/publish now runs `check:workspace` before validation.
|
|
7. Package staging rejects `focus-shims.d.ts` and `tsconfig.focus.json`.
|
|
8. Added an executable Git regression test proving local environment values are retained while unsafe files are removed from tracking.
|
|
|
|
## Required one-time command for an existing checkout
|
|
|
|
```powershell
|
|
bun run repair:workspace
|
|
```
|
|
|
|
Then review and commit the index changes:
|
|
|
|
```powershell
|
|
git status
|
|
git add .gitignore package.json tsconfig.json scripts
|
|
|
|
git commit -m "fix(tooling): isolate temporary typecheck files and repair workspace state"
|
|
git push origin main
|
|
```
|