pi-mono-all 1.2.6 → 1.2.8
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/CHANGELOG.md +12 -0
- package/node_modules/pi-mono-auto-fix/CHANGELOG.md +8 -0
- package/node_modules/pi-mono-auto-fix/index.ts +18 -6
- package/node_modules/pi-mono-auto-fix/package.json +1 -1
- package/node_modules/pi-mono-context-guard/CHANGELOG.md +9 -0
- package/node_modules/pi-mono-context-guard/index.ts +16 -0
- package/node_modules/pi-mono-context-guard/package.json +1 -1
- package/package.json +10 -10
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,17 @@
|
|
|
1
1
|
# pi-mono-all
|
|
2
2
|
|
|
3
|
+
## 1.2.8
|
|
4
|
+
|
|
5
|
+
### Patch Changes
|
|
6
|
+
|
|
7
|
+
- Bundle `pi-mono-context-guard@1.7.4` with compaction-safe read dedup cache invalidation.
|
|
8
|
+
|
|
9
|
+
## 1.2.7
|
|
10
|
+
|
|
11
|
+
### Patch Changes
|
|
12
|
+
|
|
13
|
+
- Bundle `pi-mono-auto-fix@0.3.2` with Windows command quoting, local npm shim resolution, and OS temp-directory fallback fixes.
|
|
14
|
+
|
|
3
15
|
## 1.2.6
|
|
4
16
|
|
|
5
17
|
### Patch Changes
|
|
@@ -1,5 +1,13 @@
|
|
|
1
1
|
# pi-mono-auto-fix
|
|
2
2
|
|
|
3
|
+
## 0.3.2
|
|
4
|
+
|
|
5
|
+
### Patch Changes
|
|
6
|
+
|
|
7
|
+
### Fixed
|
|
8
|
+
|
|
9
|
+
- Fix Windows auto-fix execution for paths containing spaces by using `cmd.exe`-compatible quoting, resolving local `.cmd`/`.exe`/`.bat` npm shims, and using the OS temp directory instead of hardcoded `/tmp` for npx fallbacks.
|
|
10
|
+
|
|
3
11
|
## 0.3.1
|
|
4
12
|
|
|
5
13
|
### Patch Changes
|
|
@@ -19,7 +19,7 @@ import type {
|
|
|
19
19
|
} from "@earendil-works/pi-coding-agent";
|
|
20
20
|
import { spawn } from "node:child_process";
|
|
21
21
|
import { existsSync, readFileSync, statSync } from "node:fs";
|
|
22
|
-
import { homedir } from "node:os";
|
|
22
|
+
import { homedir, tmpdir } from "node:os";
|
|
23
23
|
import { dirname, extname, isAbsolute, relative, resolve } from "node:path";
|
|
24
24
|
|
|
25
25
|
// ---------------------------------------------------------------------------
|
|
@@ -101,6 +101,9 @@ function loadConfig(): Config {
|
|
|
101
101
|
// ---------------------------------------------------------------------------
|
|
102
102
|
|
|
103
103
|
function shellQuote(s: string): string {
|
|
104
|
+
if (process.platform === "win32") {
|
|
105
|
+
return `"${s.replace(/"/g, '\\"')}"`;
|
|
106
|
+
}
|
|
104
107
|
return `'${s.replace(/'/g, "'\\''")}'`;
|
|
105
108
|
}
|
|
106
109
|
|
|
@@ -135,8 +138,17 @@ function findLocalBin(
|
|
|
135
138
|
): { binPath: string; projectRoot: string } | undefined {
|
|
136
139
|
let dir = startDir;
|
|
137
140
|
while (true) {
|
|
138
|
-
const
|
|
139
|
-
|
|
141
|
+
const candidates =
|
|
142
|
+
process.platform === "win32"
|
|
143
|
+
? [
|
|
144
|
+
`${dir}/node_modules/.bin/${tool}.cmd`,
|
|
145
|
+
`${dir}/node_modules/.bin/${tool}.exe`,
|
|
146
|
+
`${dir}/node_modules/.bin/${tool}.bat`,
|
|
147
|
+
`${dir}/node_modules/.bin/${tool}`,
|
|
148
|
+
]
|
|
149
|
+
: [`${dir}/node_modules/.bin/${tool}`];
|
|
150
|
+
const binPath = candidates.find((candidate) => existsSync(candidate));
|
|
151
|
+
if (binPath) return { binPath, projectRoot: dir };
|
|
140
152
|
const parent = dirname(dir);
|
|
141
153
|
if (parent === dir) return undefined;
|
|
142
154
|
dir = parent;
|
|
@@ -285,8 +297,8 @@ function resolveEslintCommand(
|
|
|
285
297
|
* If `command` starts with `npx <tool>`, attempt to resolve a project-local
|
|
286
298
|
* binary by walking up from the first file. On hit, rewrite the command to
|
|
287
299
|
* exec the local bin directly and return the project root as cwd. On miss,
|
|
288
|
-
* fall back to
|
|
289
|
-
* being delegated through pnpm.
|
|
300
|
+
* fall back to the OS temp directory so npx can fetch the latest from the
|
|
301
|
+
* registry without being delegated through pnpm.
|
|
290
302
|
*/
|
|
291
303
|
function resolveSpawnTarget(
|
|
292
304
|
command: string,
|
|
@@ -308,7 +320,7 @@ function resolveSpawnTarget(
|
|
|
308
320
|
}
|
|
309
321
|
}
|
|
310
322
|
// No local install — neutral cwd avoids pnpm delegating npx.
|
|
311
|
-
return { command, spawnCwd:
|
|
323
|
+
return { command, spawnCwd: tmpdir() };
|
|
312
324
|
}
|
|
313
325
|
|
|
314
326
|
async function runFixer(
|
|
@@ -1,5 +1,14 @@
|
|
|
1
1
|
# pi-mono-context-guard
|
|
2
2
|
|
|
3
|
+
## 1.7.4
|
|
4
|
+
|
|
5
|
+
### Patch Changes
|
|
6
|
+
|
|
7
|
+
### Fixed
|
|
8
|
+
|
|
9
|
+
- Clear the read deduplication cache before session compaction so files can be re-read after their earlier contents leave the model context.
|
|
10
|
+
- Add a `context-guard:clear-cache` event for external cache invalidation.
|
|
11
|
+
|
|
3
12
|
## 1.7.3
|
|
4
13
|
|
|
5
14
|
### Patch Changes
|
|
@@ -93,6 +93,22 @@ export default function (pi: ExtensionAPI): void {
|
|
|
93
93
|
}
|
|
94
94
|
});
|
|
95
95
|
|
|
96
|
+
// -------------------------------------------------------------------------
|
|
97
|
+
// Clear cache before compaction � file contents are lost but cache
|
|
98
|
+
// entries would still block re-reads with "File unchanged since last read".
|
|
99
|
+
// -------------------------------------------------------------------------
|
|
100
|
+
pi.on("session_before_compact", async () => {
|
|
101
|
+
readCache.clear();
|
|
102
|
+
});
|
|
103
|
+
|
|
104
|
+
// -------------------------------------------------------------------------
|
|
105
|
+
// Cache clear � allows external extensions to invalidate the dedup cache.
|
|
106
|
+
// Emitted via pi.events.emit("context-guard:clear-cache").
|
|
107
|
+
// -------------------------------------------------------------------------
|
|
108
|
+
pi.events.on("context-guard:clear-cache", () => {
|
|
109
|
+
readCache.clear();
|
|
110
|
+
});
|
|
111
|
+
|
|
96
112
|
// -------------------------------------------------------------------------
|
|
97
113
|
// Reset cache on new session
|
|
98
114
|
// -------------------------------------------------------------------------
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "pi-mono-all",
|
|
3
|
-
"version": "1.2.
|
|
3
|
+
"version": "1.2.8",
|
|
4
4
|
"description": "All pi-mono extensions and bundled skills",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"keywords": [
|
|
@@ -10,23 +10,23 @@
|
|
|
10
10
|
],
|
|
11
11
|
"dependencies": {
|
|
12
12
|
"pi-mono-ask-user-question": "1.7.4",
|
|
13
|
-
"pi-mono-auto-fix": "0.3.
|
|
13
|
+
"pi-mono-auto-fix": "0.3.2",
|
|
14
14
|
"pi-mono-btw": "1.7.4",
|
|
15
|
-
"pi-mono-clear": "1.7.3",
|
|
16
15
|
"pi-mono-context": "0.1.1",
|
|
16
|
+
"pi-mono-clear": "1.7.3",
|
|
17
|
+
"pi-mono-context-guard": "1.7.4",
|
|
18
|
+
"pi-mono-linear": "0.2.4",
|
|
19
|
+
"pi-mono-multi-edit": "1.7.3",
|
|
17
20
|
"pi-mono-figma": "0.2.2",
|
|
18
|
-
"pi-mono-
|
|
21
|
+
"pi-mono-review": "1.8.2",
|
|
22
|
+
"pi-mono-sentinel": "1.13.0",
|
|
19
23
|
"pi-mono-loop": "1.7.3",
|
|
20
|
-
"pi-mono-multi-edit": "1.7.3",
|
|
21
|
-
"pi-mono-linear": "0.2.4",
|
|
22
24
|
"pi-mono-simplify": "1.7.3",
|
|
23
|
-
"pi-mono-
|
|
25
|
+
"pi-mono-status-line": "1.7.3",
|
|
24
26
|
"pi-mono-team-mode": "2.3.2",
|
|
25
27
|
"pi-mono-usage": "0.1.1",
|
|
26
28
|
"pi-mono-web-search": "0.1.0",
|
|
27
|
-
"pi-
|
|
28
|
-
"pi-common": "0.1.1",
|
|
29
|
-
"pi-mono-status-line": "1.7.3"
|
|
29
|
+
"pi-common": "0.1.1"
|
|
30
30
|
},
|
|
31
31
|
"bundledDependencies": [
|
|
32
32
|
"pi-mono-ask-user-question",
|