@underactive/pi-topping-web-tools 0.2.6 → 0.2.7

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 CHANGED
@@ -2,6 +2,14 @@
2
2
 
3
3
  ## [Unreleased]
4
4
 
5
+ ## [0.2.7] - 2026-10-05
6
+
7
+ ### Changed
8
+
9
+ - Tested against pi 1.0.3. No break: the extension-facing declaration surface is unchanged apart from additive `registerToolRenderer`/`ToolRenderers`, pi-ai adds `samplingParamsByThinkingLevel` and renames the Azure provider (unused here), and pi-tui's Home/End default change does not reach these tools.
10
+ - Bumped the pinned `@earendil-works/pi-ai`, `@earendil-works/pi-coding-agent`, and `@earendil-works/pi-tui` devDependencies from 1.0.0 to 1.0.3.
11
+ - `web_browser`: the truncated-output file and `toFile` screenshots are written with mode `0600`, matching pi 1.0.3's user-only output files. Both were already unreadable by other users because each sits in a `0700` `mkdtemp` directory.
12
+
5
13
  ## [0.2.6] - 2026-10-02
6
14
 
7
15
  ### Changed
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@underactive/pi-topping-web-tools",
3
- "version": "0.2.6",
3
+ "version": "0.2.7",
4
4
  "description": "Pi extensions for the web: fetch_markdown (URL to markdown, cached, keyless), pdf_extract (PDF text extraction) and web_browser (headless Playwright automation), sharing a preapproved-host allowlist.",
5
5
  "keywords": ["pi-package", "pi-extension"],
6
6
  "license": "MIT",
@@ -53,9 +53,9 @@
53
53
  "typebox": "*"
54
54
  },
55
55
  "devDependencies": {
56
- "@earendil-works/pi-ai": "1.0.0",
57
- "@earendil-works/pi-coding-agent": "1.0.0",
58
- "@earendil-works/pi-tui": "1.0.0",
56
+ "@earendil-works/pi-ai": "1.0.3",
57
+ "@earendil-works/pi-coding-agent": "1.0.3",
58
+ "@earendil-works/pi-tui": "1.0.3",
59
59
  "@types/node": "^24.0.0",
60
60
  "@types/turndown": "^5.0.5",
61
61
  "typebox": "^1.3.3",
@@ -173,7 +173,7 @@ async function truncateTextResult(
173
173
  const tempDir = await mkdtemp(join(tmpdir(), "pi-web-browser-"));
174
174
  const tempFile = join(tempDir, "output.txt");
175
175
  await withFileMutationQueue(tempFile, async () => {
176
- await writeFile(tempFile, text, "utf-8");
176
+ await writeFile(tempFile, text, { encoding: "utf-8", mode: 0o600 });
177
177
  });
178
178
 
179
179
  outDetails.fullOutputPath = tempFile;
@@ -195,7 +195,7 @@ async function saveScreenshotToTempFile(shot: ScreenshotResult): Promise<string>
195
195
  const tempFile = join(tempDir, "screenshot.png");
196
196
  const buf = Buffer.from(shot.data, "base64");
197
197
  await withFileMutationQueue(tempFile, async () => {
198
- await writeFile(tempFile, buf);
198
+ await writeFile(tempFile, buf, { mode: 0o600 });
199
199
  });
200
200
  return tempFile;
201
201
  }