dev-booster 1.16.8 → 1.16.9
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/package.json +1 -1
- package/template/.devbooster/boosters/audit.md +265 -232
package/package.json
CHANGED
|
@@ -7,9 +7,9 @@ This booster is active by default.
|
|
|
7
7
|
If the user invokes this booster alone, or uses it only to activate the mode:
|
|
8
8
|
- Do NOT stay passive.
|
|
9
9
|
- Immediately begin the pre-flight.
|
|
10
|
-
- Your first duty is to
|
|
11
|
-
-
|
|
12
|
-
- Only pause when a change becomes structurally risky (for example: installing new dependencies, broad config redesign, or Lot 2 code fixes).
|
|
10
|
+
- Your first duty is to make lint and typecheck operational, honest, and runnable.
|
|
11
|
+
- Do NOT stop at diagnosis when the issue is a removable bypass, stale config, wrong scope, wrong runtime, or other low-risk setup problem.
|
|
12
|
+
- Only pause when a change becomes structurally risky (for example: installing new dependencies, broad config redesign, or deep Lot 2 code fixes).
|
|
13
13
|
|
|
14
14
|
Use this activation response format:
|
|
15
15
|
|
|
@@ -22,136 +22,145 @@ Status: Running Pre-Flight
|
|
|
22
22
|
Goal: make lint and typecheck operational in the terminal, detect bypasses, normalize the setup, and classify findings by risk.
|
|
23
23
|
```
|
|
24
24
|
|
|
25
|
+
Keep activation chat output minimal.
|
|
26
|
+
Do not dump logs, file lists, or long reasoning in chat.
|
|
27
|
+
|
|
25
28
|
## 1. OBJECTIVE
|
|
26
|
-
|
|
27
|
-
-
|
|
28
|
-
-
|
|
29
|
+
This booster is focused on static audit health:
|
|
30
|
+
- lint
|
|
31
|
+
- typecheck
|
|
32
|
+
|
|
33
|
+
It must:
|
|
29
34
|
- treat the terminal as the official source of truth
|
|
30
|
-
- respect the real project
|
|
31
|
-
- detect
|
|
32
|
-
- normalize the setup with minimal
|
|
33
|
-
- classify findings into
|
|
35
|
+
- respect the real project context already documented in `.devbooster/rules/PROJECT.md`
|
|
36
|
+
- detect and remove masking that hides warnings or errors
|
|
37
|
+
- normalize the setup with minimal conservative changes
|
|
38
|
+
- classify findings into `Lot 1` and `Lot 2`
|
|
39
|
+
- keep the artifact as the detailed source of truth
|
|
34
40
|
|
|
35
41
|
This booster is not a broad modernization flow.
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
2. `.devbooster/rules/FRONTEND.md` → only if frontend findings dominate
|
|
43
|
-
3. `.devbooster/rules/BACKEND.md` → only if backend/tooling findings dominate
|
|
42
|
+
|
|
43
|
+
## 2. CONTEXT LOADING RULES
|
|
44
|
+
### Primary context order
|
|
45
|
+
1. `.devbooster/rules/PROJECT.md`
|
|
46
|
+
2. `.devbooster/rules/FRONTEND.md` (only if frontend findings dominate)
|
|
47
|
+
3. `.devbooster/rules/BACKEND.md` (only if backend/tooling findings dominate)
|
|
44
48
|
4. `.devbooster/rules/USER_PREFERENCES.md`
|
|
45
49
|
|
|
46
|
-
Do NOT re-bootstrap the project
|
|
47
|
-
Only inspect additional files when needed to execute audit reliably.
|
|
50
|
+
Do NOT re-bootstrap the project if `PROJECT.md` is already populated.
|
|
48
51
|
|
|
49
|
-
|
|
50
|
-
|
|
52
|
+
### Minimal base load
|
|
53
|
+
Start with only:
|
|
51
54
|
- `.devbooster/rules/PROJECT.md`
|
|
52
55
|
- `.devbooster/rules/USER_PREFERENCES.md`
|
|
53
56
|
- `.devbooster/hub/personas/skill_lint-and-validate.md`
|
|
54
57
|
|
|
55
|
-
|
|
58
|
+
### Lazy loading
|
|
59
|
+
Load extra context only if justified by findings:
|
|
56
60
|
|
|
57
|
-
|
|
58
|
-
After the first real audit pass, load additional context only if needed.
|
|
59
|
-
|
|
60
|
-
### Frontend-heavy findings
|
|
61
|
-
Load only when most findings are in React / Next / Vite / UI code:
|
|
61
|
+
#### Frontend-heavy findings
|
|
62
62
|
- `.devbooster/rules/FRONTEND.md`
|
|
63
63
|
- `.devbooster/hub/personas/agent_frontend-specialist.md`
|
|
64
|
-
- `.devbooster/hub/skills/nextjs-react-expert/SKILL.md`
|
|
64
|
+
- `.devbooster/hub/skills/nextjs-react-expert/SKILL.md`
|
|
65
65
|
|
|
66
|
-
Use `FRONTEND.md`
|
|
67
|
-
If
|
|
66
|
+
Use `FRONTEND.md` both for stack context and to preserve the project's frontend coding patterns.
|
|
67
|
+
If it is generic, empty, or not useful, ignore it.
|
|
68
68
|
|
|
69
|
-
|
|
70
|
-
Load only when most findings are in scripts, Node tooling, configs, services, or backend packages:
|
|
69
|
+
#### Backend/tooling-heavy findings
|
|
71
70
|
- `.devbooster/rules/BACKEND.md`
|
|
72
71
|
- `.devbooster/hub/personas/agent_backend-specialist.md`
|
|
73
72
|
- `.devbooster/hub/skills/nodejs-best-practices/SKILL.md`
|
|
74
73
|
|
|
75
|
-
Use `BACKEND.md`
|
|
76
|
-
If
|
|
74
|
+
Use `BACKEND.md` both for stack context and to preserve the project's backend/tooling patterns.
|
|
75
|
+
If it is generic, empty, or not useful, ignore it.
|
|
77
76
|
|
|
78
|
-
|
|
79
|
-
Load only when audit is being blocked by unclear legacy choices, suppressions, runtime mismatch, or config drift:
|
|
77
|
+
#### Legacy/config-conflict findings
|
|
80
78
|
- `.devbooster/hub/personas/agent_code-archaeologist.md`
|
|
81
79
|
- `.devbooster/hub/skills/systematic-debugging/SKILL.md`
|
|
82
80
|
|
|
83
|
-
##
|
|
84
|
-
|
|
81
|
+
## 3. AUDIT DISCIPLINE
|
|
82
|
+
The booster has only two missions:
|
|
83
|
+
- run lint correctly
|
|
84
|
+
- run typecheck correctly
|
|
85
85
|
|
|
86
|
-
|
|
87
|
-
|
|
86
|
+
Signals such as:
|
|
87
|
+
- monorepo / workspace
|
|
88
|
+
- package manager choice
|
|
89
|
+
- `.nvmrc`
|
|
90
|
+
- `tsconfig.*.json`
|
|
91
|
+
- package-local scripts
|
|
92
|
+
|
|
93
|
+
exist only to help choose the correct:
|
|
94
|
+
- runtime
|
|
95
|
+
- package manager
|
|
96
|
+
- command
|
|
97
|
+
- project scope
|
|
98
|
+
|
|
99
|
+
They are not separate workstreams.
|
|
100
|
+
If a scenario exists but does not materially affect lint or typecheck execution, coverage, or trustworthiness, do not turn it into noise.
|
|
101
|
+
|
|
102
|
+
## 4. PRE-FLIGHT
|
|
103
|
+
Start working immediately.
|
|
88
104
|
|
|
105
|
+
### Step A — Align runtime
|
|
89
106
|
Before any `npm`, `npx`, `node`, `tsc`, `next`, lint, or typecheck command:
|
|
90
|
-
- if the required runtime and package manager
|
|
91
|
-
- do not assume the package manager is always `npm`;
|
|
92
|
-
- if the required Node-based runtime is unavailable or clearly misaligned,
|
|
107
|
+
- if the required runtime and package manager already work in the current project terminal context, do NOT run `nvm use`
|
|
108
|
+
- do not assume the package manager is always `npm`; use `pnpm`, `yarn`, `bun`, or `npm` according to the real setup
|
|
109
|
+
- if the required Node-based runtime is unavailable or clearly misaligned, check whether `.nvmrc` exists
|
|
93
110
|
- only if `.nvmrc` exists and runtime is not healthy, run `nvm use` and try again
|
|
94
|
-
- if `.nvmrc` does not exist, do NOT run `nvm use
|
|
111
|
+
- if `.nvmrc` does not exist, do NOT run `nvm use`
|
|
95
112
|
|
|
96
113
|
If this project required `nvm use` once to become healthy, then every new terminal execution that depends on Node must run `nvm use` again before the actual command.
|
|
97
114
|
This repeat rule applies only to projects that actually needed NVM alignment.
|
|
98
115
|
|
|
99
|
-
### Step B —
|
|
100
|
-
|
|
101
|
-
-
|
|
102
|
-
-
|
|
103
|
-
- whether lint
|
|
104
|
-
-
|
|
105
|
-
-
|
|
106
|
-
-
|
|
107
|
-
-
|
|
108
|
-
-
|
|
109
|
-
-
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
Inspect for common bypasses.
|
|
121
|
-
This audit must prefer honest enforcement over preserving broad project-wide suppressions.
|
|
122
|
-
If the user activated this booster, the default assumption is that they want full visibility of warnings and errors.
|
|
123
|
-
|
|
124
|
-
Inspect for common bypasses:
|
|
125
|
-
|
|
126
|
-
#### Framework-level bypasses
|
|
127
|
-
When relevant, inspect files such as:
|
|
116
|
+
### Step B — Find the correct audit path
|
|
117
|
+
Inspect only what is necessary to determine:
|
|
118
|
+
- package manager
|
|
119
|
+
- single app vs monorepo / workspace
|
|
120
|
+
- whether lint/typecheck live at root, package level, or both
|
|
121
|
+
- `lint` script or equivalent
|
|
122
|
+
- `typecheck` script or equivalent
|
|
123
|
+
- ESLint config presence
|
|
124
|
+
- `tsconfig.json` or `tsconfig.*.json` presence
|
|
125
|
+
- whether framework wrappers such as `next lint` are in use
|
|
126
|
+
- whether commands are runnable in the correct scope
|
|
127
|
+
|
|
128
|
+
If this is a monorepo/workspace, do not assume root is the correct target.
|
|
129
|
+
Find the correct package/scope first.
|
|
130
|
+
|
|
131
|
+
### Step C — Remove masking and bypasses
|
|
132
|
+
Do not trust passing commands alone.
|
|
133
|
+
Inspect and normalize masking such as:
|
|
134
|
+
|
|
135
|
+
#### Framework-level masking
|
|
136
|
+
Check files such as:
|
|
128
137
|
- `next.config.js`
|
|
129
138
|
- `next.config.mjs`
|
|
130
139
|
- `next.config.ts`
|
|
131
140
|
|
|
132
|
-
Look for
|
|
141
|
+
Look for:
|
|
133
142
|
- `eslint.ignoreDuringBuilds`
|
|
134
143
|
- other project-wide lint-relaxing switches
|
|
135
144
|
|
|
136
|
-
If
|
|
145
|
+
If they clearly suppress enforcement globally, remove or normalize them during pre-flight.
|
|
146
|
+
Do NOT ask permission for clearly abusive masking.
|
|
137
147
|
|
|
138
|
-
#### ESLint-level
|
|
139
|
-
|
|
148
|
+
#### ESLint-level masking
|
|
149
|
+
Check:
|
|
140
150
|
- `eslint.config.*`
|
|
141
151
|
- `.eslintrc*`
|
|
142
152
|
- `.eslintignore`
|
|
143
153
|
|
|
144
154
|
Look for:
|
|
145
|
-
- broad
|
|
146
|
-
-
|
|
155
|
+
- broad/suspicious ignores
|
|
156
|
+
- globally disabled rules without clear reason
|
|
147
157
|
- overrides that nullify important checks
|
|
148
158
|
- scope that is too narrow or too broad
|
|
149
159
|
|
|
150
|
-
If
|
|
151
|
-
Do not leave clearly abusive global masking in place just because it was added by a previous developer.
|
|
160
|
+
If global masking is clearly abusive, remove or normalize it during pre-flight and rerun before reporting Round 1.
|
|
152
161
|
|
|
153
|
-
#### Inline suppressions
|
|
154
|
-
Search for
|
|
162
|
+
#### Inline suppressions
|
|
163
|
+
Search for:
|
|
155
164
|
- `eslint-disable`
|
|
156
165
|
- `eslint-disable-next-line`
|
|
157
166
|
- `eslint-disable-line`
|
|
@@ -164,29 +173,32 @@ Flag especially:
|
|
|
164
173
|
- suppressions around hook dependency rules
|
|
165
174
|
- suppressions with no explanation
|
|
166
175
|
|
|
167
|
-
|
|
168
|
-
|
|
176
|
+
If a suppression is clearly abusive, stale, or only there to lazily silence the tool, remove it during pre-flight or Lot 1 instead of merely reporting it.
|
|
177
|
+
|
|
178
|
+
### Step D — Stabilize typecheck
|
|
179
|
+
Inspect when relevant:
|
|
169
180
|
- `tsconfig.json`
|
|
170
181
|
- `tsconfig.*.json`
|
|
171
182
|
- framework-generated type includes such as `.next/types/**/*.ts`
|
|
172
|
-
- project references
|
|
183
|
+
- project references
|
|
184
|
+
- path aliases
|
|
185
|
+
- package-local TS configs
|
|
173
186
|
|
|
174
187
|
Look for:
|
|
175
188
|
- broken include paths
|
|
176
189
|
- stale framework-generated type references
|
|
177
190
|
- invalid project references
|
|
178
|
-
-
|
|
179
|
-
-
|
|
180
|
-
-
|
|
191
|
+
- alias drift
|
|
192
|
+
- wrong `tsc` target
|
|
193
|
+
- cases where `tsc --noEmit` at root is wrong and `tsc -p <tsconfig>` is required
|
|
181
194
|
|
|
182
|
-
If the project does not use TypeScript,
|
|
183
|
-
Treat that as a no-typecheck scenario, not as a broken setup.
|
|
195
|
+
If the project does not use TypeScript, treat that as a no-typecheck scenario, not a failure.
|
|
184
196
|
|
|
185
|
-
If typecheck
|
|
186
|
-
|
|
197
|
+
If typecheck is broken because of setup/configuration, fix that first.
|
|
198
|
+
Do NOT stop at reporting removable masking or stale config.
|
|
187
199
|
|
|
188
200
|
### Step E — Determine initial state
|
|
189
|
-
Classify the
|
|
201
|
+
Classify the starting point as one of:
|
|
190
202
|
- **Operational**
|
|
191
203
|
- **Operational but Masked**
|
|
192
204
|
- **Limited Coverage**
|
|
@@ -194,9 +206,7 @@ Classify the setup as one of:
|
|
|
194
206
|
- **Broken**
|
|
195
207
|
- **Missing**
|
|
196
208
|
|
|
197
|
-
##
|
|
198
|
-
Normalize audit intentionally, not blindly.
|
|
199
|
-
|
|
209
|
+
## 5. NORMALIZATION RULES
|
|
200
210
|
### Core rules
|
|
201
211
|
1. Terminal is the source of truth.
|
|
202
212
|
2. Coverage must be explicit, never accidental.
|
|
@@ -205,100 +215,111 @@ Normalize audit intentionally, not blindly.
|
|
|
205
215
|
5. Prefer minimal changes over opinionated redesign.
|
|
206
216
|
6. Do not install new dependencies unless truly required and approved.
|
|
207
217
|
7. Do not disable rules just to reduce noise.
|
|
208
|
-
8. Remove suspicious
|
|
209
|
-
9. If lint
|
|
210
|
-
10. If typecheck is failing because configuration is stale or inconsistent, attempt
|
|
218
|
+
8. Remove suspicious masking when it is clearly hiding enforcement.
|
|
219
|
+
9. If lint/typecheck is failing because runtime is misaligned, fix runtime usage first.
|
|
220
|
+
10. If typecheck is failing because configuration is stale or inconsistent, attempt conservative repair before reporting code findings.
|
|
211
221
|
|
|
212
|
-
###
|
|
213
|
-
|
|
222
|
+
### Allowed low-risk normalization
|
|
223
|
+
Without extra confirmation, you may:
|
|
214
224
|
- fix `lint` script wiring
|
|
215
225
|
- fix `typecheck` script wiring
|
|
216
|
-
- select the correct package manager command
|
|
217
|
-
- select the correct workspace/package scope
|
|
226
|
+
- select the correct package manager command
|
|
227
|
+
- select the correct workspace/package scope
|
|
218
228
|
- switch from a misleading wrapper command to the real ESLint CLI
|
|
219
229
|
- narrow or widen lint scope intentionally
|
|
220
230
|
- adjust ignores for generated/build artifacts
|
|
221
|
-
- normalize `tsconfig` includes
|
|
222
|
-
- choose the correct `tsconfig` target
|
|
223
|
-
- remove
|
|
231
|
+
- normalize stale or broken `tsconfig` includes
|
|
232
|
+
- choose the correct `tsconfig` target
|
|
233
|
+
- remove abusive global bypass flags
|
|
224
234
|
- remove clearly unjustified global rule disables or broad masking overrides
|
|
225
|
-
- remove clearly unjustified inline disables when
|
|
235
|
+
- remove clearly unjustified inline disables when safe
|
|
226
236
|
|
|
227
|
-
Only
|
|
228
|
-
Do not treat the presence of monorepo/workspace/package-manager/tsconfig variants as problems by default.
|
|
237
|
+
Only normalize what is necessary to make lint and typecheck truthful in the real project scope.
|
|
229
238
|
|
|
230
|
-
###
|
|
239
|
+
### Ask before
|
|
231
240
|
Ask before:
|
|
232
241
|
- installing packages
|
|
233
242
|
- redesigning shared lint/type architecture
|
|
234
243
|
- changing team-wide rules in a controversial way
|
|
235
|
-
- applying deep code fixes
|
|
236
|
-
|
|
237
|
-
##
|
|
238
|
-
|
|
239
|
-
|
|
240
|
-
###
|
|
241
|
-
|
|
242
|
-
|
|
243
|
-
|
|
244
|
-
-
|
|
245
|
-
- choose
|
|
246
|
-
-
|
|
247
|
-
|
|
248
|
-
|
|
249
|
-
|
|
250
|
-
|
|
251
|
-
|
|
252
|
-
|
|
253
|
-
|
|
254
|
-
- the
|
|
255
|
-
-
|
|
256
|
-
|
|
257
|
-
|
|
258
|
-
|
|
259
|
-
|
|
260
|
-
|
|
261
|
-
- **Setup Issues** → config, scope, parser, wrapper mismatch, bypasses, broken scripts, stale tsconfig entries, runtime misalignment, wrong package manager, wrong workspace/package target
|
|
262
|
-
- **Lint Findings** → lint-only findings
|
|
263
|
-
- **Typecheck Findings** → type-only findings
|
|
264
|
-
- **Lot 1 — Safe Fixes** → low-risk, behavior-preserving fixes
|
|
265
|
-
- **Lot 2 — Needs Deeper Analysis** → not safe to change based only on the first pass
|
|
266
|
-
|
|
267
|
-
### Phase 4 — Propose Lot 1 execution
|
|
268
|
-
After Round 1, ask directly whether you should apply Lot 1 now.
|
|
269
|
-
Do not be vague.
|
|
270
|
-
The expected intent is:
|
|
271
|
-
- Lot 1 is safe
|
|
272
|
-
- Lot 2 was kept conservative on purpose
|
|
273
|
-
|
|
274
|
-
### Phase 5 — Apply Lot 1
|
|
244
|
+
- applying deep Lot 2 code fixes
|
|
245
|
+
|
|
246
|
+
## 6. EXECUTION FLOW
|
|
247
|
+
This booster runs in 3 stages.
|
|
248
|
+
|
|
249
|
+
### Stage 1 — Setup only
|
|
250
|
+
Goal: make the environment healthy and honest.
|
|
251
|
+
|
|
252
|
+
Do this first:
|
|
253
|
+
- align runtime
|
|
254
|
+
- choose package manager and scope
|
|
255
|
+
- stabilize lint
|
|
256
|
+
- stabilize typecheck
|
|
257
|
+
- remove abusive masking
|
|
258
|
+
- rerun until commands are trustworthy
|
|
259
|
+
|
|
260
|
+
Round 1 must NOT be reported as complete until this setup-only normalization pass has happened.
|
|
261
|
+
|
|
262
|
+
When setup is complete:
|
|
263
|
+
- generate/update the artifact
|
|
264
|
+
- summarize briefly in chat
|
|
265
|
+
- ask:
|
|
266
|
+
|
|
267
|
+
`Setup concluído. Posso continuar para a varredura completa?`
|
|
268
|
+
|
|
269
|
+
### Stage 2 — Round 1 scan and classification
|
|
275
270
|
If the user approves:
|
|
276
|
-
-
|
|
277
|
-
-
|
|
271
|
+
- run the official lint command
|
|
272
|
+
- run the official typecheck command when TypeScript is present
|
|
273
|
+
- classify findings into:
|
|
274
|
+
- **Setup Issues**
|
|
275
|
+
- **Lint Findings**
|
|
276
|
+
- **Typecheck Findings**
|
|
277
|
+
- **Lot 1 — Safe Fixes**
|
|
278
|
+
- **Lot 2 — Needs Deeper Analysis**
|
|
278
279
|
- update the artifact
|
|
279
|
-
-
|
|
280
|
+
- summarize briefly in chat
|
|
281
|
+
- ask:
|
|
282
|
+
|
|
283
|
+
`Posso corrigir o Lote 1, que é o mais seguro?`
|
|
284
|
+
|
|
285
|
+
By the time you classify Round 1, clearly abusive masking should already be gone.
|
|
286
|
+
Do not stop after a generic diagnosis without explicitly producing `Lot 1` and `Lot 2`.
|
|
287
|
+
|
|
288
|
+
### Stage 3 — Safe correction, then deeper analysis
|
|
289
|
+
#### Stage 3A — Apply Lot 1
|
|
290
|
+
If the user approves:
|
|
291
|
+
- fix `Lot 1`
|
|
292
|
+
- rerun lint and typecheck
|
|
293
|
+
- absorb any newly surfaced safe follow-up items into `Lot 1` automatically
|
|
294
|
+
- if a newly surfaced item is no longer clearly safe, move it to `Lot 2`
|
|
295
|
+
- repeat this loop until the safe queue is exhausted
|
|
296
|
+
- update the artifact after each meaningful pass
|
|
297
|
+
- summarize briefly in chat
|
|
298
|
+
|
|
299
|
+
`Lot 1` is only complete when no safe fixes remain after rechecking.
|
|
280
300
|
|
|
281
|
-
|
|
282
|
-
After Lot 1 is complete, use this short transition:
|
|
301
|
+
Then ask:
|
|
283
302
|
|
|
284
303
|
`Rodada 1 concluída.`
|
|
285
304
|
|
|
286
305
|
`Agora vou fazer uma rodada mais aprofundada no Lote 2 para refinar o que ainda é seguro corrigir. Posso prosseguir?`
|
|
287
306
|
|
|
288
|
-
|
|
289
|
-
If the user approves
|
|
307
|
+
#### Stage 3B — Deep analysis of Lot 2
|
|
308
|
+
If the user approves:
|
|
290
309
|
- inspect the affected files more deeply
|
|
291
|
-
- read
|
|
310
|
+
- read full files when needed
|
|
292
311
|
- use more context and slower reasoning
|
|
293
|
-
- separate Lot 2 into:
|
|
294
|
-
-
|
|
295
|
-
-
|
|
296
|
-
|
|
297
|
-
|
|
298
|
-
|
|
312
|
+
- separate `Lot 2` into:
|
|
313
|
+
- items now safe enough to fix
|
|
314
|
+
- items that still require human review
|
|
315
|
+
- apply only what became safe
|
|
316
|
+
- update the artifact
|
|
317
|
+
- summarize briefly in chat
|
|
299
318
|
|
|
300
|
-
|
|
319
|
+
When only risky or ambiguous items remain, stop and hand control back to the user.
|
|
320
|
+
That is the natural end of the booster flow.
|
|
301
321
|
|
|
322
|
+
## 7. LOT RULES
|
|
302
323
|
### Lot 1 — Safe Fixes
|
|
303
324
|
Typical examples:
|
|
304
325
|
- autofixable ESLint formatting output
|
|
@@ -306,12 +327,10 @@ Typical examples:
|
|
|
306
327
|
- clearly unused variables
|
|
307
328
|
- trivial `const` improvements
|
|
308
329
|
- import ordering
|
|
309
|
-
- mechanical low-risk
|
|
310
|
-
- small suppression removals where
|
|
330
|
+
- mechanical low-risk ESLint fixes
|
|
331
|
+
- small suppression removals where behavior stays unchanged
|
|
311
332
|
- conservative tsconfig cleanup when the issue is obviously stale/generated-path drift
|
|
312
333
|
|
|
313
|
-
Apply these when genuinely safe, then rerun audit.
|
|
314
|
-
|
|
315
334
|
### Lot 2 — Needs Deeper Analysis
|
|
316
335
|
Typical examples:
|
|
317
336
|
- `react-hooks/exhaustive-deps`
|
|
@@ -321,91 +340,105 @@ Typical examples:
|
|
|
321
340
|
- accessibility issues requiring markup decisions
|
|
322
341
|
- anything likely to change render behavior, execution order, or developer intent
|
|
323
342
|
|
|
324
|
-
Do NOT force
|
|
325
|
-
|
|
326
|
-
Only after a deeper file-level review may you decide whether some of them became safe enough to fix.
|
|
343
|
+
Do NOT force Lot 2 blindly in Round 1.
|
|
344
|
+
Only after deeper file-level review may you decide that some items became safe enough to fix.
|
|
327
345
|
|
|
328
|
-
##
|
|
329
|
-
When relevant, explain
|
|
346
|
+
## 8. SPECIAL CASES
|
|
347
|
+
When relevant, explain only the impact, not a long theory. Examples:
|
|
330
348
|
- new lint errors may reflect increased coverage, not newly introduced bugs
|
|
331
|
-
- `next lint` may inspect a narrower slice
|
|
332
|
-
- `eslint .` may become noisy if scope
|
|
333
|
-
-
|
|
334
|
-
-
|
|
335
|
-
-
|
|
336
|
-
|
|
349
|
+
- `next lint` may inspect a narrower slice than the real ESLint CLI path
|
|
350
|
+
- `eslint .` may become noisy if scope/ignores were never normalized
|
|
351
|
+
- typecheck failures caused by stale framework-generated paths are setup issues first
|
|
352
|
+
- monorepo/workspace projects may require package-local audit commands rather than root-level commands
|
|
353
|
+
- the correct package manager and tsconfig target matter as much as the code itself
|
|
354
|
+
|
|
355
|
+
## 9. OUTPUT RULES
|
|
356
|
+
The artifact is the primary source of truth.
|
|
357
|
+
Chat is only the executive summary.
|
|
358
|
+
Do not dump detailed file lists, raw terminal transcripts, or exhaustive reasoning in chat unless the user explicitly asks.
|
|
337
359
|
|
|
338
|
-
|
|
339
|
-
Your response must use this structure:
|
|
360
|
+
Use this compact chat structure:
|
|
340
361
|
|
|
341
362
|
```md
|
|
342
363
|
## 🧽 Audit Report: [scope]
|
|
343
364
|
|
|
344
|
-
### 1.
|
|
345
|
-
-
|
|
346
|
-
-
|
|
347
|
-
-
|
|
348
|
-
-
|
|
349
|
-
|
|
350
|
-
|
|
351
|
-
-
|
|
352
|
-
-
|
|
353
|
-
|
|
354
|
-
|
|
355
|
-
|
|
356
|
-
-
|
|
357
|
-
|
|
358
|
-
|
|
359
|
-
|
|
360
|
-
### 3. Audit Results
|
|
361
|
-
- Setup Issues: [...]
|
|
362
|
-
- Lint Findings: [...]
|
|
363
|
-
- Typecheck Findings: [...]
|
|
364
|
-
- Lot 1 — Safe Fixes: [...]
|
|
365
|
-
- Lot 2 — Needs Deeper Analysis: [...]
|
|
366
|
-
|
|
367
|
-
### 4. Outcome
|
|
368
|
-
- [What is now working]
|
|
369
|
-
- [What was auto-fixed]
|
|
370
|
-
- [What still requires deeper analysis or human review]
|
|
365
|
+
### 1. Status
|
|
366
|
+
- State: [Operational / Operational but Masked / Limited Coverage / Excessive / Noisy Coverage / Broken / Missing]
|
|
367
|
+
- Lint: [passed/failed + short count]
|
|
368
|
+
- Typecheck: [passed/failed + short count]
|
|
369
|
+
- Setup: [short summary of what was normalized]
|
|
370
|
+
|
|
371
|
+
### 2. Findings
|
|
372
|
+
- Setup Issues: [short count/summary]
|
|
373
|
+
- Lot 1 — Safe Fixes: [short count/summary]
|
|
374
|
+
- Lot 2 — Needs Deeper Analysis: [short count/summary]
|
|
375
|
+
|
|
376
|
+
### 3. Artifact
|
|
377
|
+
- 📝 Registo em `@booster-generated/audit/<slug>.md`
|
|
378
|
+
|
|
379
|
+
### 4. Next Step
|
|
380
|
+
- [short next action or question]
|
|
371
381
|
```
|
|
372
382
|
|
|
373
|
-
|
|
383
|
+
All deeper detail must go into the artifact.
|
|
384
|
+
|
|
385
|
+
## 10. SAFETY BOUNDARIES
|
|
374
386
|
- Do not overwrite unrelated project conventions.
|
|
375
|
-
- Do not claim lint or typecheck is healthy unless terminal execution was actually verified in the correct runtime, package manager, and
|
|
376
|
-
- Do not silently preserve abusive bypasses just because a command
|
|
377
|
-
- Do not present Round 1 findings on top of
|
|
387
|
+
- Do not claim lint or typecheck is healthy unless terminal execution was actually verified in the correct runtime, package manager, and scope.
|
|
388
|
+
- Do not silently preserve abusive bypasses just because a command passes.
|
|
389
|
+
- Do not present Round 1 findings on top of masking that should already have been removed.
|
|
378
390
|
- Do not auto-fix Lot 2 without strong local justification.
|
|
379
391
|
- Do not turn this booster into a whole-project refactor.
|
|
380
392
|
- Do not invent auxiliary work just because a scenario pattern exists; stay focused on lint and typecheck.
|
|
381
393
|
|
|
382
|
-
## ARTIFACT GENERATION
|
|
383
|
-
During
|
|
394
|
+
## 11. ARTIFACT GENERATION (CRITICAL — NEVER SKIP)
|
|
395
|
+
During execution, create a state file at `@booster-generated/audit/<slug>.md` tracking history, decisions, rules, and outcomes in dense, non-conversational format.
|
|
396
|
+
|
|
397
|
+
This artifact is mandatory and fundamental to this booster.
|
|
398
|
+
You must treat it as a hard requirement, not as a suggestion.
|
|
384
399
|
|
|
385
|
-
This artifact is mandatory for this booster.
|
|
386
400
|
Create it even when:
|
|
387
401
|
- there is only one finding
|
|
388
|
-
-
|
|
402
|
+
- setup is already healthy
|
|
389
403
|
- the audit result is small
|
|
390
|
-
- the user stops after Round 1
|
|
391
|
-
|
|
392
|
-
|
|
393
|
-
|
|
394
|
-
|
|
395
|
-
|
|
396
|
-
|
|
404
|
+
- the user stops after Stage 1 or Round 1
|
|
405
|
+
|
|
406
|
+
Create it before presenting the first substantial audit result.
|
|
407
|
+
Then keep it updated on every relevant pass of the flow.
|
|
408
|
+
This is not optional.
|
|
409
|
+
|
|
410
|
+
You MUST update the artifact after:
|
|
411
|
+
- the setup-only pass is completed
|
|
412
|
+
- Round 1 scan/classification is completed
|
|
413
|
+
- `Lot 1` is approved and executed
|
|
414
|
+
- each meaningful Lot 1 recheck loop
|
|
415
|
+
- deeper `Lot 2` analysis begins
|
|
397
416
|
- deeper analysis reclassifies findings
|
|
398
417
|
- new fixes are applied
|
|
399
|
-
- the user
|
|
418
|
+
- the user changes the audit state with follow-up decisions
|
|
419
|
+
- any point where the state of the audit materially changes
|
|
400
420
|
|
|
401
421
|
Treat this file as the persistent audit trail for the session.
|
|
402
|
-
It must preserve
|
|
403
|
-
|
|
404
|
-
|
|
405
|
-
-
|
|
422
|
+
It must preserve:
|
|
423
|
+
- environment/runtime health
|
|
424
|
+
- what was found
|
|
425
|
+
- what was removed
|
|
426
|
+
- what was changed
|
|
427
|
+
- what was partially resolved
|
|
428
|
+
- what was intentionally left untouched
|
|
429
|
+
- what still needs review
|
|
430
|
+
- what remains pending for the user
|
|
431
|
+
|
|
432
|
+
The artifact, not the chat, is the detailed memory of the audit.
|
|
433
|
+
If something breaks later, this file must explain what was done and why.
|
|
434
|
+
|
|
435
|
+
- **Uniqueness rule:** If the slug already exists in `@booster-generated/audit/`, generate a new variation instead of overwriting
|
|
406
436
|
- **Notification rule:** After writing, notify the user with: 📝 Registo em `@booster-generated/audit/<slug>.md`
|
|
407
437
|
|
|
408
438
|
Do NOT skip artifact creation for small audits.
|
|
439
|
+
Do NOT wait for the user to remind you about the artifact.
|
|
440
|
+
Do NOT postpone artifact creation until the end.
|
|
409
441
|
Do NOT update this file silently in the background.
|
|
442
|
+
Do NOT advance the audit flow while forgetting to reflect the new state in the artifact.
|
|
410
443
|
|
|
411
|
-
**Reply:** On activation, immediately enter pre-flight mode, use `PROJECT.md` as the primary source of truth, realign runtime only when needed and repeat `nvm use` on each new terminal execution only for projects that actually required NVM alignment, make lint and typecheck operational in the terminal,
|
|
444
|
+
**Reply:** On activation, immediately enter pre-flight mode, use `PROJECT.md` as the primary source of truth, realign runtime only when needed and repeat `nvm use` on each new terminal execution only for projects that actually required NVM alignment, make lint and typecheck operational in the terminal, remove clearly abusive masking and bypasses as part of the default audit mission, create the artifact before the first substantial report, and keep chat concise. Put detailed analysis, file-by-file findings, command-level notes, and reasoning into the artifact. Always follow the 3-stage flow above, and keep the artifact updated on every meaningful audit pass.
|