@jwilger/pi-development-system 0.47.0 → 0.48.0
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
CHANGED
|
@@ -24,6 +24,23 @@ finding from every later reader, so it must carry its reason.
|
|
|
24
24
|
clippy; biome recommended-plus; TypeScript `strict`. Loosening a project rule is a
|
|
25
25
|
recorded decision, not an edit.
|
|
26
26
|
|
|
27
|
+
## No warning stands
|
|
28
|
+
|
|
29
|
+
A warning is an error that has not been triaged yet. Before every commit:
|
|
30
|
+
|
|
31
|
+
- Biome, `tsc`, knip and markdownlint pass with nothing reported (lefthook and CI run them).
|
|
32
|
+
- `lens_diagnostics` (pi-lens) shows no warnings for the files you changed. Run it with
|
|
33
|
+
`mode=full` on those paths after a refresh; a cached finding that looks wrong is a stale
|
|
34
|
+
cache to refresh (touch the file and re-run), never one to wave off.
|
|
35
|
+
- Each finding is fixed, or suppressed on the line above with a reason
|
|
36
|
+
(`// pi-lens-ignore: high-fan-out -- composition root: wiring is its job`).
|
|
37
|
+
- Enable stricter rules by the behaviour they prevent (silent failure, panics, shadowing,
|
|
38
|
+
unreasoned `allow`), not whole categories that contradict each other. Warn while
|
|
39
|
+
working; deny in CI.
|
|
40
|
+
- Vendored code under `src/subagents` is on a ratchet: `test/subagents/nocheck-files.ts`
|
|
41
|
+
lists the files still skipping type checks and may only shrink. A file you touch there
|
|
42
|
+
is made clean and dropped from the list.
|
|
43
|
+
|
|
27
44
|
## What the extension does
|
|
28
45
|
|
|
29
46
|
Editing a file so that it adds `#[allow(`, `#[expect(`, `// biome-ignore`,
|
|
@@ -44,3 +61,4 @@ departure naming why a bare one is right. Suppressions already in the file are n
|
|
|
44
61
|
- [ ] Suppression is one line with a reason of 15+ characters
|
|
45
62
|
- [ ] `expect` used where available
|
|
46
63
|
- [ ] No lint rule loosened in project config without a recorded decision
|
|
64
|
+
- [ ] `lens_diagnostics` shows no warnings on the changed files (refreshed, not cached)
|
|
@@ -500,7 +500,7 @@ export function diffAgentSettings(base: AgentType, draft: AgentType): AgentSetti
|
|
|
500
500
|
const after = draft[key];
|
|
501
501
|
if (JSON.stringify(before ?? null) === JSON.stringify(after ?? null)) continue;
|
|
502
502
|
if (after === undefined) override[key] = null as never;
|
|
503
|
-
else (override[key]
|
|
503
|
+
else Object.assign(override, { [key]: structuredClone(after) });
|
|
504
504
|
}
|
|
505
505
|
void CLEARABLE_OVERRIDE_FIELDS;
|
|
506
506
|
return override;
|