stitchkit 0.114.2 → 0.116.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/CHANGELOG.md +54 -0
- package/dist/agent-runtime/coding-tool-files.d.ts.map +1 -1
- package/dist/agent-runtime/coding-tool-listing.d.ts.map +1 -1
- package/dist/agent-runtime/coding-tool-paths.d.ts.map +1 -1
- package/dist/agent-runtime/coding-tool-refusals.d.ts +6 -0
- package/dist/agent-runtime/coding-tool-refusals.d.ts.map +1 -1
- package/dist/agent-runtime/coding-tool-search-patch.d.ts.map +1 -1
- package/dist/agent-runtime/contained-scan.d.ts +1 -1
- package/dist/agent-runtime/contained-scan.d.ts.map +1 -1
- package/dist/agent-runtime/sandbox-broker.d.ts.map +1 -1
- package/dist/agent-runtime/sandbox-bubblewrap-storage.d.ts.map +1 -1
- package/dist/application/directory-inbox-files.d.ts.map +1 -1
- package/dist/application/file-state-store.d.ts.map +1 -1
- package/dist/entrypoints/agent-runtime/coding-tools.js +6 -4
- package/dist/entrypoints/agent-runtime/harness.js +2 -1
- package/dist/entrypoints/agent-runtime/sandbox.js +13 -8
- package/dist/entrypoints/agent-runtime/sqlite/bun.js +8 -6
- package/dist/entrypoints/agent-runtime/sqlite/node.js +8 -6
- package/dist/entrypoints/agent-runtime/testing.js +8 -6
- package/dist/entrypoints/agent-runtime.js +8 -6
- package/dist/entrypoints/application/diagnostic-journal.js +2 -2
- package/dist/entrypoints/application/directory-inbox.js +10 -7
- package/dist/entrypoints/cli/publish.js +11 -8
- package/dist/entrypoints/cli.js +6 -3
- package/dist/entrypoints/files.js +10 -7
- package/dist/entrypoints/process/owner-loss.js +1 -1
- package/dist/entrypoints/process.js +3 -3
- package/dist/entrypoints/react/keyboard/testing.js +1 -1
- package/dist/entrypoints/react/keyboard.js +11 -11
- package/dist/entrypoints/server.js +4 -4
- package/dist/entrypoints/telegram/grammy.js +2 -2
- package/dist/entrypoints/telegram.d.ts +1 -1
- package/dist/entrypoints/telegram.d.ts.map +1 -1
- package/dist/entrypoints/telegram.js +30 -14
- package/dist/entrypoints/tools.js +5 -2
- package/dist/files/chunk-spool.d.ts.map +1 -1
- package/dist/{index-2f9r0jgr.js → index-364k2zwa.js} +4 -4
- package/dist/{index-dc9ere5p.js → index-4g6qmgdx.js} +1 -1
- package/dist/index-6f49krb5.js +107 -0
- package/dist/{index-912sza5h.js → index-90p34rts.js} +1 -1
- package/dist/{index-07dcf2yn.js → index-ac6vvm30.js} +5 -2
- package/dist/{index-zrtrjkbf.js → index-arjmb6de.js} +183 -172
- package/dist/{index-7r4knwf8.js → index-dr3t5n1v.js} +14 -4
- package/dist/{index-84bf5spd.js → index-f6m4c545.js} +5 -2
- package/dist/{index-qj1sy4ep.js → index-fa435yq2.js} +1 -1
- package/dist/{index-hy802jnr.js → index-fdk4r4r6.js} +6 -3
- package/dist/index-jj9228tt.js +6 -0
- package/dist/{index-a3462dqf.js → index-jq2ky8fw.js} +1 -1
- package/dist/{index-s47ac8zt.js → index-n5sv4z0w.js} +142 -156
- package/dist/{index-bh2ht9y5.js → index-n8z3rvzw.js} +4 -1
- package/dist/index-q968hy6y.js +100 -0
- package/dist/{index-j4zh647a.js → index-tt30h7mr.js} +4 -1
- package/dist/{index-tnxsq7cw.js → index-w7jq3fz9.js} +113 -38
- package/dist/{index-p02zgk8x.js → index-y4rxnvgp.js} +6 -0
- package/dist/{index-5v5a9k2n.js → index-z3d6smer.js} +1 -1
- package/dist/{index-6b3pcq5z.js → index-zqkz4af9.js} +1 -1
- package/dist/internal/atomic-file.d.ts.map +1 -1
- package/dist/internal/atomic-staging.d.ts.map +1 -1
- package/dist/internal/contained-directory.d.ts +20 -0
- package/dist/internal/contained-directory.d.ts.map +1 -0
- package/dist/{agent-runtime → internal}/contained-files.d.ts +24 -13
- package/dist/internal/contained-files.d.ts.map +1 -0
- package/dist/internal/contained-handle.d.ts +30 -0
- package/dist/internal/contained-handle.d.ts.map +1 -0
- package/dist/internal/contained-write.d.ts +12 -0
- package/dist/internal/contained-write.d.ts.map +1 -0
- package/dist/internal/darwin-binding.d.ts +1 -1
- package/dist/internal/darwin-binding.d.ts.map +1 -1
- package/dist/internal/errno.d.ts +3 -0
- package/dist/internal/errno.d.ts.map +1 -0
- package/dist/internal/process-instance.d.ts.map +1 -1
- package/dist/internal/write-download.d.ts +5 -14
- package/dist/internal/write-download.d.ts.map +1 -1
- package/dist/process/group-diagnostics.d.ts +1 -0
- package/dist/process/group-diagnostics.d.ts.map +1 -1
- package/dist/process/group-settlement.d.ts +2 -0
- package/dist/process/group-settlement.d.ts.map +1 -1
- package/dist/process/group.d.ts.map +1 -1
- package/dist/process/owner-loss-control.d.ts.map +1 -1
- package/dist/react/keyboard/hooks.d.ts +2 -2
- package/dist/react/keyboard/hooks.d.ts.map +1 -1
- package/dist/react/keyboard/layers.d.ts +2 -0
- package/dist/react/keyboard/layers.d.ts.map +1 -1
- package/dist/telegram/broadcast-state.d.ts.map +1 -1
- package/dist/telegram/budget-transformer.d.ts +5 -2
- package/dist/telegram/budget-transformer.d.ts.map +1 -1
- package/dist/telegram/outbound-budget.d.ts +26 -11
- package/dist/telegram/outbound-budget.d.ts.map +1 -1
- package/dist/tools/cli/download.d.ts.map +1 -1
- package/dist/tools/cli/publication-storage.d.ts.map +1 -1
- package/dist/tools/cli/publication.d.ts.map +1 -1
- package/dist/tools/cli/view.d.ts +7 -1
- package/dist/tools/cli/view.d.ts.map +1 -1
- package/llms/agent-runtime.txt +16 -6
- package/llms/cli.txt +37 -3
- package/llms/process.txt +2 -2
- package/llms/react-keyboard.txt +18 -2
- package/llms/stitchkit.txt +3 -3
- package/llms/telegram.txt +10 -3
- package/llms/{upgrading-0.104.0-0.114.0.txt → upgrading-0.105.0-0.116.0.txt} +85 -124
- package/llms/{upgrading-0.44.0-0.61.0.txt → upgrading-0.44.0-0.62.0.txt} +120 -3
- package/llms/{upgrading-0.62.0-0.78.0.txt → upgrading-0.63.0-0.83.0.txt} +181 -120
- package/llms/{upgrading-0.79.0-0.103.13.txt → upgrading-0.84.0-0.104.0.txt} +124 -181
- package/llms/upgrading.txt +4 -4
- package/llms-full.txt +168 -19
- package/llms.txt +9 -9
- package/native/darwin-arm64.node +0 -0
- package/native/darwin-x64.node +0 -0
- package/native-assets.json +4 -4
- package/package.json +1 -1
- package/dist/agent-runtime/contained-darwin.d.ts +0 -21
- package/dist/agent-runtime/contained-darwin.d.ts.map +0 -1
- package/dist/agent-runtime/contained-files.d.ts.map +0 -1
- package/dist/agent-runtime/contained-write.d.ts +0 -9
- package/dist/agent-runtime/contained-write.d.ts.map +0 -1
|
@@ -23,6 +23,14 @@ import {
|
|
|
23
23
|
createToolRunner,
|
|
24
24
|
formatToolError
|
|
25
25
|
} from "./index-htxh46ej.js";
|
|
26
|
+
import {
|
|
27
|
+
writeContainedFile
|
|
28
|
+
} from "./index-q968hy6y.js";
|
|
29
|
+
import {
|
|
30
|
+
openPinnedDirectory,
|
|
31
|
+
isSafeEntryName,
|
|
32
|
+
containedEntryMetadata
|
|
33
|
+
} from "./index-arjmb6de.js";
|
|
26
34
|
import {
|
|
27
35
|
collectToolSurface
|
|
28
36
|
} from "./index-86nbfysb.js";
|
|
@@ -31,8 +39,8 @@ import {
|
|
|
31
39
|
readCapped
|
|
32
40
|
} from "./index-mgb7r8b8.js";
|
|
33
41
|
import {
|
|
34
|
-
|
|
35
|
-
} from "./index-
|
|
42
|
+
errnoOf
|
|
43
|
+
} from "./index-jj9228tt.js";
|
|
36
44
|
import {
|
|
37
45
|
sleep
|
|
38
46
|
} from "./index-eemvahkc.js";
|
|
@@ -1298,10 +1306,13 @@ function selectRecords(data) {
|
|
|
1298
1306
|
}
|
|
1299
1307
|
throw new CliArgumentError2("an aggregate needs a collection; this result is not one");
|
|
1300
1308
|
}
|
|
1309
|
+
function isAbsent(value) {
|
|
1310
|
+
return value === undefined || value === null;
|
|
1311
|
+
}
|
|
1301
1312
|
function readField(record, path) {
|
|
1302
1313
|
let current = record;
|
|
1303
1314
|
for (const segment of path) {
|
|
1304
|
-
if (!isRecord(current))
|
|
1315
|
+
if (!isRecord(current) || !Object.hasOwn(current, segment))
|
|
1305
1316
|
return;
|
|
1306
1317
|
current = current[segment];
|
|
1307
1318
|
}
|
|
@@ -1326,7 +1337,7 @@ function availableFields(records) {
|
|
|
1326
1337
|
function assertFieldPresent(records, field) {
|
|
1327
1338
|
const path = fieldPath(field);
|
|
1328
1339
|
const present = records.some((record) => readField(record, path) !== undefined);
|
|
1329
|
-
if (!present) {
|
|
1340
|
+
if (records.length > 0 && !present) {
|
|
1330
1341
|
const available = availableFields(records);
|
|
1331
1342
|
throw new CliArgumentError2(`no record carries the field "${field}"${available.length > 0 ? ` — available: ${available.join(", ")}` : ""}`);
|
|
1332
1343
|
}
|
|
@@ -1337,6 +1348,8 @@ function groupKey(value) {
|
|
|
1337
1348
|
return ABSENT;
|
|
1338
1349
|
if (value === null)
|
|
1339
1350
|
return "null";
|
|
1351
|
+
if (value === "null" || value === ABSENT)
|
|
1352
|
+
return JSON.stringify(value);
|
|
1340
1353
|
if (typeof value === "object")
|
|
1341
1354
|
return JSON.stringify(value);
|
|
1342
1355
|
return String(value);
|
|
@@ -1344,10 +1357,23 @@ function groupKey(value) {
|
|
|
1344
1357
|
function ordered(totals, top) {
|
|
1345
1358
|
const entries = [...totals].sort(([leftKey, left], [rightKey, right]) => right === left ? leftKey.localeCompare(rightKey) : right - left);
|
|
1346
1359
|
const sliced = top === undefined ? entries : entries.slice(0, top);
|
|
1347
|
-
return
|
|
1360
|
+
return {
|
|
1361
|
+
kind: "json",
|
|
1362
|
+
data: Object.fromEntries(sliced),
|
|
1363
|
+
order: sliced.map(([key]) => key)
|
|
1364
|
+
};
|
|
1365
|
+
}
|
|
1366
|
+
function stringifyGroups(data, order, compact) {
|
|
1367
|
+
if (!isRecord(data) || order.length === 0)
|
|
1368
|
+
return JSON.stringify(data);
|
|
1369
|
+
const lines = order.map((key) => `${JSON.stringify(key)}:${compact ? "" : " "}${JSON.stringify(data[key])}`);
|
|
1370
|
+
return compact ? `{${lines.join(",")}}` : `{
|
|
1371
|
+
${lines.join(`,
|
|
1372
|
+
`)}
|
|
1373
|
+
}`;
|
|
1348
1374
|
}
|
|
1349
1375
|
function numericValue(value, field) {
|
|
1350
|
-
if (value
|
|
1376
|
+
if (isAbsent(value))
|
|
1351
1377
|
return;
|
|
1352
1378
|
if (typeof value === "number" && Number.isFinite(value))
|
|
1353
1379
|
return value;
|
|
@@ -1355,8 +1381,8 @@ function numericValue(value, field) {
|
|
|
1355
1381
|
return Number(value);
|
|
1356
1382
|
throw new CliArgumentError2(`--sum ${field}: "${groupKey(value)}" is not a number`);
|
|
1357
1383
|
}
|
|
1358
|
-
function renderTable(records,
|
|
1359
|
-
const
|
|
1384
|
+
function renderTable(records, columns) {
|
|
1385
|
+
const fields = columns.map(({ field }) => field);
|
|
1360
1386
|
const cell = (value) => {
|
|
1361
1387
|
if (value === undefined)
|
|
1362
1388
|
return "";
|
|
@@ -1366,7 +1392,7 @@ function renderTable(records, fields) {
|
|
|
1366
1392
|
return JSON.stringify(value);
|
|
1367
1393
|
return String(value);
|
|
1368
1394
|
};
|
|
1369
|
-
const rows = records.map((record) =>
|
|
1395
|
+
const rows = records.map((record) => columns.map(({ path }) => cell(readField(record, path))));
|
|
1370
1396
|
const widths = fields.map((field, column) => Math.max(field.length, ...rows.map((row) => row[column]?.length ?? 0)));
|
|
1371
1397
|
const line = (cells) => cells.map((value, column) => value.padEnd(widths[column] ?? value.length)).join(" ").trimEnd();
|
|
1372
1398
|
return `${[line(fields), line(widths.map((width) => "-".repeat(width))), ...rows.map(line)].join(`
|
|
@@ -1374,9 +1400,9 @@ function renderTable(records, fields) {
|
|
|
1374
1400
|
`;
|
|
1375
1401
|
}
|
|
1376
1402
|
function compareFieldValues(left, right) {
|
|
1377
|
-
if (left
|
|
1378
|
-
return right
|
|
1379
|
-
if (right
|
|
1403
|
+
if (isAbsent(left))
|
|
1404
|
+
return isAbsent(right) ? 0 : 1;
|
|
1405
|
+
if (isAbsent(right))
|
|
1380
1406
|
return -1;
|
|
1381
1407
|
if (typeof left === "number" && typeof right === "number")
|
|
1382
1408
|
return left - right;
|
|
@@ -1391,17 +1417,35 @@ function renderRecords(records, view) {
|
|
|
1391
1417
|
const path = assertFieldPresent(records, view.sort);
|
|
1392
1418
|
const direction = view.ascending ? 1 : -1;
|
|
1393
1419
|
selected.sort((left, right) => {
|
|
1394
|
-
const
|
|
1395
|
-
const
|
|
1396
|
-
|
|
1420
|
+
const leftValue = readField(left, path);
|
|
1421
|
+
const rightValue = readField(right, path);
|
|
1422
|
+
const order = compareFieldValues(leftValue, rightValue);
|
|
1423
|
+
return isAbsent(leftValue) || isAbsent(rightValue) ? order : order * direction;
|
|
1397
1424
|
});
|
|
1398
1425
|
}
|
|
1426
|
+
const columns = view.table?.map((field) => ({
|
|
1427
|
+
field,
|
|
1428
|
+
path: assertFieldPresent(records, field)
|
|
1429
|
+
}));
|
|
1399
1430
|
if (view.top !== undefined)
|
|
1400
1431
|
selected = selected.slice(0, view.top);
|
|
1401
|
-
return
|
|
1432
|
+
return columns ? { kind: "text", text: renderTable(selected, columns) } : { kind: "json", data: selected };
|
|
1433
|
+
}
|
|
1434
|
+
function refuseEnvelopeFields(data, view) {
|
|
1435
|
+
if (!isRecord(data))
|
|
1436
|
+
return;
|
|
1437
|
+
const fields = view.kind === "records" ? [...view.sort === undefined ? [] : [view.sort], ...view.table ?? []] : [view.field, ...view.kind === "sum" && view.by !== undefined ? [view.by] : []];
|
|
1438
|
+
for (const field of fields) {
|
|
1439
|
+
const first = field.split(".")[0] ?? "";
|
|
1440
|
+
if (Object.hasOwn(data, first) && !Array.isArray(data[first])) {
|
|
1441
|
+
throw new CliArgumentError2(`"${field}" belongs to the result object, not to its empty collection`);
|
|
1442
|
+
}
|
|
1443
|
+
}
|
|
1402
1444
|
}
|
|
1403
1445
|
function renderCliView2(data, view) {
|
|
1404
1446
|
const records = selectRecords(data);
|
|
1447
|
+
if (records.length === 0)
|
|
1448
|
+
refuseEnvelopeFields(data, view);
|
|
1405
1449
|
if (view.kind === "records")
|
|
1406
1450
|
return renderRecords(records, view);
|
|
1407
1451
|
if (view.kind === "count") {
|
|
@@ -1411,7 +1455,7 @@ function renderCliView2(data, view) {
|
|
|
1411
1455
|
const key = groupKey(readField(record, path));
|
|
1412
1456
|
totals.set(key, (totals.get(key) ?? 0) + 1);
|
|
1413
1457
|
}
|
|
1414
|
-
return
|
|
1458
|
+
return ordered(totals, view.top);
|
|
1415
1459
|
}
|
|
1416
1460
|
const path = assertFieldPresent(records, view.field);
|
|
1417
1461
|
if (view.by === undefined) {
|
|
@@ -1426,7 +1470,7 @@ function renderCliView2(data, view) {
|
|
|
1426
1470
|
const key = groupKey(readField(record, byPath));
|
|
1427
1471
|
totals.set(key, (totals.get(key) ?? 0) + (numericValue(readField(record, path), view.field) ?? 0));
|
|
1428
1472
|
}
|
|
1429
|
-
return
|
|
1473
|
+
return ordered(totals, view.top);
|
|
1430
1474
|
}
|
|
1431
1475
|
|
|
1432
1476
|
// src/tools/operations/wait-core.ts
|
|
@@ -1646,37 +1690,63 @@ function createCliIo(config) {
|
|
|
1646
1690
|
import { basename, resolve } from "node:path";
|
|
1647
1691
|
|
|
1648
1692
|
// src/internal/write-download.ts
|
|
1649
|
-
import
|
|
1650
|
-
|
|
1651
|
-
|
|
1652
|
-
if (!isWithinDir2(root, target)) {
|
|
1693
|
+
import path from "node:path";
|
|
1694
|
+
async function writeDownload(root, name, data) {
|
|
1695
|
+
if (!isSafeEntryName(name) || path.basename(name) !== name) {
|
|
1653
1696
|
throw new Error("download name escapes the output dir");
|
|
1654
1697
|
}
|
|
1655
|
-
|
|
1656
|
-
await
|
|
1698
|
+
const parent = { handle: root, basename: name };
|
|
1699
|
+
const metadata = await containedEntryMetadata(parent);
|
|
1700
|
+
await writeContainedFile({
|
|
1701
|
+
parent,
|
|
1702
|
+
content: data,
|
|
1703
|
+
replace: true,
|
|
1704
|
+
...metadata?.isFile() && { mode: metadata.mode }
|
|
1705
|
+
});
|
|
1657
1706
|
}
|
|
1658
1707
|
|
|
1659
1708
|
// src/tools/cli/download.ts
|
|
1660
1709
|
var DEFAULT_DOWNLOAD_MAX_BYTES = 100 * 1024 * 1024;
|
|
1661
1710
|
async function downloadResults(files, dir, stderr, quiet, allowPrivate, maxBytes, timeoutMs) {
|
|
1662
1711
|
const root = resolve(dir);
|
|
1712
|
+
if (files.length === 0)
|
|
1713
|
+
return true;
|
|
1714
|
+
let directory;
|
|
1715
|
+
try {
|
|
1716
|
+
directory = await openPinnedDirectory(root, { create: true, readable: false });
|
|
1717
|
+
} catch (error) {
|
|
1718
|
+
stderr(`failed to prepare download directory: ${error instanceof Error ? error.message : String(error)}
|
|
1719
|
+
`);
|
|
1720
|
+
return false;
|
|
1721
|
+
}
|
|
1663
1722
|
let succeeded = true;
|
|
1664
|
-
|
|
1665
|
-
|
|
1666
|
-
|
|
1667
|
-
|
|
1668
|
-
|
|
1669
|
-
|
|
1670
|
-
|
|
1671
|
-
|
|
1672
|
-
|
|
1673
|
-
|
|
1674
|
-
|
|
1675
|
-
|
|
1723
|
+
try {
|
|
1724
|
+
for (const file of files) {
|
|
1725
|
+
try {
|
|
1726
|
+
const res = await fetchGuarded(new URL(file.url), allowPrivate, { timeoutMs });
|
|
1727
|
+
if (!res.ok)
|
|
1728
|
+
throw new Error(`HTTP ${res.status}`);
|
|
1729
|
+
const buffer = await readCapped(res, maxBytes);
|
|
1730
|
+
if (!buffer)
|
|
1731
|
+
throw new Error(`file exceeds the ${maxBytes}-byte cap`);
|
|
1732
|
+
const name = basename(file.name);
|
|
1733
|
+
await writeDownload(directory, name, buffer);
|
|
1734
|
+
if (!quiet)
|
|
1735
|
+
stderr(`saved ${resolve(root, name)} (${(buffer.length / 1024).toFixed(0)}KB)
|
|
1736
|
+
`);
|
|
1737
|
+
} catch (err) {
|
|
1738
|
+
succeeded = false;
|
|
1739
|
+
const reason = errnoOf(err) ?? (err instanceof Error ? err.message : String(err));
|
|
1740
|
+
stderr(`failed to download ${file.url}: ${reason}
|
|
1676
1741
|
`);
|
|
1677
|
-
|
|
1742
|
+
}
|
|
1743
|
+
}
|
|
1744
|
+
} finally {
|
|
1745
|
+
try {
|
|
1746
|
+
await directory.close();
|
|
1747
|
+
} catch (error) {
|
|
1678
1748
|
succeeded = false;
|
|
1679
|
-
stderr(`failed to download
|
|
1749
|
+
stderr(`failed to close download directory: ${error instanceof Error ? error.message : String(error)}
|
|
1680
1750
|
`);
|
|
1681
1751
|
}
|
|
1682
1752
|
}
|
|
@@ -2295,6 +2365,11 @@ async function emitManagedResult(session, command, initial, options) {
|
|
|
2295
2365
|
stdout(viewed.text);
|
|
2296
2366
|
return exit(downloadsOk ? 0 : 1);
|
|
2297
2367
|
}
|
|
2368
|
+
if (viewed.order) {
|
|
2369
|
+
stdout(`${stringifyGroups(viewed.data, viewed.order, options.json === true)}
|
|
2370
|
+
`);
|
|
2371
|
+
return exit(downloadsOk ? 0 : 1);
|
|
2372
|
+
}
|
|
2298
2373
|
result = { ...result, data: viewed.data };
|
|
2299
2374
|
}
|
|
2300
2375
|
const exitCode = emitResult2(result, { stdout, stderr }, emitOptionsFor(config, options.json, command));
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"atomic-file.d.ts","sourceRoot":"","sources":["../../src/internal/atomic-file.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;GAqBG;AAIH,OAAO,EACL,KAAK,oBAAoB,EAG1B,MAAM,sBAAsB,CAAC;
|
|
1
|
+
{"version":3,"file":"atomic-file.d.ts","sourceRoot":"","sources":["../../src/internal/atomic-file.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"atomic-staging.d.ts","sourceRoot":"","sources":["../../src/internal/atomic-staging.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;
|
|
1
|
+
{"version":3,"file":"atomic-staging.d.ts","sourceRoot":"","sources":["../../src/internal/atomic-staging.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;AAcH,mGAAmG;AACnG,wBAAgB,WAAW,IAAI,MAAM,CAEpC;AAED,4FAA4F;AAC5F,wBAAgB,WAAW,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,CAElD;AAED;;;GAGG;AACH,wBAAgB,mBAAmB,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAEzD;AAED,6CAA6C;AAC7C,MAAM,WAAW,yBAAyB;IACxC,oEAAoE;IACpE,SAAS,EAAE,MAAM,CAAC;IAClB;;;;OAIG;IACH,WAAW,EAAE,MAAM,CAAC;IACpB,2EAA2E;IAC3E,MAAM,CAAC,EAAE,WAAW,CAAC;CACtB;AAMD;;;;;;GAMG;AACH,wBAAsB,kBAAkB,CACtC,OAAO,EAAE,yBAAyB,GACjC,OAAO,CAAC,MAAM,EAAE,CAAC,CA6BnB"}
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
import { type ContainedFileHandle } from './contained-handle.js';
|
|
2
|
+
/** Open one child directory without following a symbolic link. */
|
|
3
|
+
export declare function openDirectoryAt(directory: ContainedFileHandle, name: string, searchOnly?: boolean): Promise<ContainedFileHandle>;
|
|
4
|
+
/** Move a walk to `next`; a failure to close the previous step does not leak the new one. */
|
|
5
|
+
export declare function descend(current: ContainedFileHandle, next: ContainedFileHandle): Promise<ContainedFileHandle>;
|
|
6
|
+
/** Create one directory through its pinned parent; false if an entry already exists. */
|
|
7
|
+
export declare function createDirectoryAt(directory: ContainedFileHandle, name: string): Promise<boolean>;
|
|
8
|
+
/**
|
|
9
|
+
* Select the configured root once, then walk its canonical components through directory
|
|
10
|
+
* descriptors. Initial root aliases are configuration; symlinks introduced after that
|
|
11
|
+
* selection cannot redirect the walk. Missing descendants are created through the same
|
|
12
|
+
* pinned parents. The returned capability remains the selected directory if it is renamed.
|
|
13
|
+
*/
|
|
14
|
+
export declare function openPinnedDirectory(absolute: string, options?: {
|
|
15
|
+
create?: boolean;
|
|
16
|
+
readable?: boolean;
|
|
17
|
+
}, io?: {
|
|
18
|
+
realpath(path: string): Promise<string>;
|
|
19
|
+
}): Promise<ContainedFileHandle>;
|
|
20
|
+
//# sourceMappingURL=contained-directory.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"contained-directory.d.ts","sourceRoot":"","sources":["../../src/internal/contained-directory.ts"],"names":[],"mappings":"AAGA,OAAO,EACL,KAAK,mBAAmB,EAGzB,MAAM,oBAAoB,CAAC;AAkB5B,kEAAkE;AAClE,wBAAsB,eAAe,CACnC,SAAS,EAAE,mBAAmB,EAC9B,IAAI,EAAE,MAAM,EACZ,UAAU,UAAQ,GACjB,OAAO,CAAC,mBAAmB,CAAC,CAO9B;AAED,6FAA6F;AAC7F,wBAAsB,OAAO,CAC3B,OAAO,EAAE,mBAAmB,EAC5B,IAAI,EAAE,mBAAmB,GACxB,OAAO,CAAC,mBAAmB,CAAC,CAQ9B;AAED,wFAAwF;AACxF,wBAAsB,iBAAiB,CACrC,SAAS,EAAE,mBAAmB,EAC9B,IAAI,EAAE,MAAM,GACX,OAAO,CAAC,OAAO,CAAC,CAWlB;AAED;;;;;GAKG;AACH,wBAAsB,mBAAmB,CACvC,QAAQ,EAAE,MAAM,EAChB,OAAO,GAAE;IAAE,MAAM,CAAC,EAAE,OAAO,CAAC;IAAC,QAAQ,CAAC,EAAE,OAAO,CAAA;CAAO,EACtD,EAAE,GAAE;IAAE,QAAQ,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAAA;CAAiB,GAC7D,OAAO,CAAC,mBAAmB,CAAC,CA0C9B"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { type
|
|
1
|
+
import { type ContainedFileHandle } from './contained-handle.js';
|
|
2
2
|
export interface ContainedFile {
|
|
3
3
|
absolute: string;
|
|
4
4
|
relative: string;
|
|
@@ -27,17 +27,8 @@ export interface ContainedFileScan {
|
|
|
27
27
|
deniedTruncated: boolean;
|
|
28
28
|
}
|
|
29
29
|
export type ContainedEntryKind = 'file' | 'directory' | 'symlink' | 'other';
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
close(): Promise<void>;
|
|
33
|
-
read(buffer: Buffer, offset: number, length: number, position: number): Promise<{
|
|
34
|
-
bytesRead: number;
|
|
35
|
-
}>;
|
|
36
|
-
stat(): Promise<Stats>;
|
|
37
|
-
}
|
|
38
|
-
export declare function descriptorPath(handle: ContainedFileHandle): string;
|
|
39
|
-
export declare function openPinnedDirectory(absolute: string): Promise<ContainedFileHandle>;
|
|
40
|
-
export declare function openDirectoryAt(directory: ContainedFileHandle, name: string): Promise<ContainedFileHandle>;
|
|
30
|
+
/** One entry name a directory-relative call may receive: never a walk and never truncated by NUL. */
|
|
31
|
+
export declare function isSafeEntryName(name: string): boolean;
|
|
41
32
|
export declare function openFileAt(directory: ContainedFileHandle, name: string): Promise<ContainedFileHandle>;
|
|
42
33
|
interface ContainedEntryMetadata {
|
|
43
34
|
mode: number;
|
|
@@ -80,11 +71,31 @@ export interface ContainedParent {
|
|
|
80
71
|
* happens, and cannot do that without knowing what would be created.
|
|
81
72
|
*/
|
|
82
73
|
export declare function missingContainedDirectories(root: string, relative: string): Promise<string[]>;
|
|
74
|
+
/**
|
|
75
|
+
* The first segment of `relative` that opens an entry stored under another spelling.
|
|
76
|
+
*
|
|
77
|
+
* A policy compares strings, and a volume that folds case or normalization opens
|
|
78
|
+
* `CREDENTIALS` for a rule written against `credentials`. An entry that answers to
|
|
79
|
+
* another spelling is the only cost here: a listing runs only then, and it decides,
|
|
80
|
+
* because two distinct entries may exist on a volume that does not fold. A missing
|
|
81
|
+
* segment is not misspelled; the caller reports it.
|
|
82
|
+
*/
|
|
83
|
+
export declare function misspelledContainedSegment(root: string, relative: string): Promise<string | undefined>;
|
|
84
|
+
/** A directory vanished after the host approved a different creation plan. */
|
|
85
|
+
export declare class UnapprovedContainedDirectoryError extends Error {
|
|
86
|
+
readonly relative: string;
|
|
87
|
+
constructor(relative: string);
|
|
88
|
+
}
|
|
83
89
|
export declare function openContainedParent(root: string, relative: string, options?: {
|
|
84
|
-
|
|
90
|
+
createDirectories?: readonly string[];
|
|
85
91
|
}): Promise<ContainedParent>;
|
|
86
92
|
/** Open a final regular-file candidate through pinned ancestors without following symlinks. */
|
|
87
93
|
export declare function openContainedFile(root: string, relative: string): Promise<ContainedFileHandle>;
|
|
94
|
+
/** What was checked is no longer what the path names; the caller can look again. */
|
|
95
|
+
export declare class ContainedPathChangedError extends Error {
|
|
96
|
+
readonly relative: string;
|
|
97
|
+
constructor(relative: string);
|
|
98
|
+
}
|
|
88
99
|
export declare function assertContainedFileCurrent(root: string, relative: string, expected: ContainedFileHandle): Promise<void>;
|
|
89
100
|
export declare function assertContainedParentCurrent(root: string, relative: string, expected: ContainedFileHandle): Promise<void>;
|
|
90
101
|
export declare function containedEntryMetadata(parent: ContainedParent): Promise<ContainedEntryMetadata | null>;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"contained-files.d.ts","sourceRoot":"","sources":["../../src/internal/contained-files.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* The shared contained-file capability and its platform descriptor adapters.
|
|
3
|
+
* Darwin native calls return numeric descriptors; Linux also exposes descriptor paths.
|
|
4
|
+
*/
|
|
5
|
+
import { type Stats } from 'node:fs';
|
|
6
|
+
export interface ContainedFileHandle {
|
|
7
|
+
readonly fd: number;
|
|
8
|
+
close(): Promise<void>;
|
|
9
|
+
read(buffer: Buffer, offset: number, length: number, position: number): Promise<{
|
|
10
|
+
bytesRead: number;
|
|
11
|
+
}>;
|
|
12
|
+
stat(): Promise<Stats>;
|
|
13
|
+
}
|
|
14
|
+
export declare function descriptorPath(handle: ContainedFileHandle): string;
|
|
15
|
+
export declare const FILE_TYPE_DIRECTORY = 16384;
|
|
16
|
+
export declare const FILE_TYPE_REGULAR = 32768;
|
|
17
|
+
export declare const FILE_TYPE_SYMLINK = 40960;
|
|
18
|
+
export declare function modeIs(mode: number, type: number): boolean;
|
|
19
|
+
export declare class NumericFileHandle implements ContainedFileHandle {
|
|
20
|
+
readonly fd: number;
|
|
21
|
+
private closed;
|
|
22
|
+
constructor(fd: number);
|
|
23
|
+
/** Once only: the number may already name another file, and a walk's cleanup can repeat this. */
|
|
24
|
+
close(): Promise<void>;
|
|
25
|
+
read(buffer: Buffer, offset: number, length: number, position: number): Promise<{
|
|
26
|
+
bytesRead: number;
|
|
27
|
+
}>;
|
|
28
|
+
stat(): Promise<Stats>;
|
|
29
|
+
}
|
|
30
|
+
//# sourceMappingURL=contained-handle.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"contained-handle.d.ts","sourceRoot":"","sources":["../../src/internal/contained-handle.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,OAAO,EAA2D,KAAK,KAAK,EAAE,MAAM,SAAS,CAAC;AAE9F,MAAM,WAAW,mBAAmB;IAClC,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAC;IACpB,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;IACvB,IAAI,CACF,MAAM,EAAE,MAAM,EACd,MAAM,EAAE,MAAM,EACd,MAAM,EAAE,MAAM,EACd,QAAQ,EAAE,MAAM,GACf,OAAO,CAAC;QAAE,SAAS,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IAClC,IAAI,IAAI,OAAO,CAAC,KAAK,CAAC,CAAC;CACxB;AAED,wBAAgB,cAAc,CAAC,MAAM,EAAE,mBAAmB,GAAG,MAAM,CAGlE;AAGD,eAAO,MAAM,mBAAmB,QAAW,CAAC;AAC5C,eAAO,MAAM,iBAAiB,QAAW,CAAC;AAC1C,eAAO,MAAM,iBAAiB,QAAW,CAAC;AAE1C,wBAAgB,MAAM,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,OAAO,CAE1D;AAED,qBAAa,iBAAkB,YAAW,mBAAmB;IAG/C,QAAQ,CAAC,EAAE,EAAE,MAAM;IAF/B,OAAO,CAAC,MAAM,CAAS;IAEvB,YAAqB,EAAE,EAAE,MAAM,EAAI;IAEnC,iGAAiG;IACjG,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC,CAMrB;IAED,IAAI,CACF,MAAM,EAAE,MAAM,EACd,MAAM,EAAE,MAAM,EACd,MAAM,EAAE,MAAM,EACd,QAAQ,EAAE,MAAM,GACf,OAAO,CAAC;QAAE,SAAS,EAAE,MAAM,CAAA;KAAE,CAAC,CAMhC;IAED,IAAI,IAAI,OAAO,CAAC,KAAK,CAAC,CAIrB;CACF"}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import type { ContainedParent } from './contained-files.js';
|
|
2
|
+
/**
|
|
3
|
+
* Create or atomically replace one direct child through the pinned parent descriptor.
|
|
4
|
+
* `mode` keeps permission bits only: new content must not inherit setuid, setgid or sticky.
|
|
5
|
+
*/
|
|
6
|
+
export declare function writeContainedFile(input: {
|
|
7
|
+
parent: ContainedParent;
|
|
8
|
+
content: string | Uint8Array;
|
|
9
|
+
replace: boolean;
|
|
10
|
+
mode?: number;
|
|
11
|
+
}): Promise<void>;
|
|
12
|
+
//# sourceMappingURL=contained-write.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"contained-write.d.ts","sourceRoot":"","sources":["../../src/internal/contained-write.ts"],"names":[],"mappings":"AAcA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AAoHzD;;;GAGG;AACH,wBAAsB,kBAAkB,CAAC,KAAK,EAAE;IAC9C,MAAM,EAAE,eAAe,CAAC;IACxB,OAAO,EAAE,MAAM,GAAG,UAAU,CAAC;IAC7B,OAAO,EAAE,OAAO,CAAC;IACjB,IAAI,CAAC,EAAE,MAAM,CAAC;CACf,GAAG,OAAO,CAAC,IAAI,CAAC,CAehB"}
|
|
@@ -5,7 +5,7 @@ export interface DarwinEntry {
|
|
|
5
5
|
}
|
|
6
6
|
export interface DarwinBinding {
|
|
7
7
|
processIdentity(pid: number): unknown;
|
|
8
|
-
openDirectoryAt(directory: number, name: string): number;
|
|
8
|
+
openDirectoryAt(directory: number, name: string, searchOnly: boolean): number;
|
|
9
9
|
openFileAt(directory: number, name: string): number;
|
|
10
10
|
createFileAt(directory: number, name: string, mode: number): number;
|
|
11
11
|
createDirectoryAt(directory: number, name: string, mode: number): boolean;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"darwin-binding.d.ts","sourceRoot":"","sources":["../../src/internal/darwin-binding.ts"],"names":[],"mappings":"AAIA,MAAM,WAAW,WAAW;IAC1B,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;CACd;AAED,MAAM,WAAW,aAAa;IAC5B,eAAe,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC;IACtC,eAAe,CAAC,SAAS,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,MAAM,CAAC;
|
|
1
|
+
{"version":3,"file":"darwin-binding.d.ts","sourceRoot":"","sources":["../../src/internal/darwin-binding.ts"],"names":[],"mappings":"AAIA,MAAM,WAAW,WAAW;IAC1B,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;CACd;AAED,MAAM,WAAW,aAAa;IAC5B,eAAe,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC;IACtC,eAAe,CAAC,SAAS,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,UAAU,EAAE,OAAO,GAAG,MAAM,CAAC;IAC9E,UAAU,CAAC,SAAS,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,MAAM,CAAC;IACpD,YAAY,CAAC,SAAS,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,MAAM,CAAC;IACpE,iBAAiB,CAAC,SAAS,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC;IAC1E,MAAM,CAAC,SAAS,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,IAAI,CAAC,WAAW,EAAE,MAAM,CAAC,GAAG,IAAI,CAAC;IAC1E,MAAM,CAAC,SAAS,EAAE,MAAM,GAAG,SAAS,WAAW,EAAE,CAAC;IAClD,QAAQ,CAAC,SAAS,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,IAAI,CAAC;IAClE,QAAQ,CAAC,SAAS,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,IAAI,CAAC;CACjD;AAED,wBAAgB,YAAY,CAAC,KAAK,EAAE,OAAO,EAAE,KAAK,EAAE,SAAS,MAAM,EAAE,GAAG,OAAO,CAM9E;AAID,wBAAgB,iBAAiB,IAAI,aAAa,CA4BjD"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"errno.d.ts","sourceRoot":"","sources":["../../src/internal/errno.ts"],"names":[],"mappings":"AAAA,kGAAkG;AAClG,wBAAgB,OAAO,CAAC,KAAK,EAAE,OAAO,GAAG,MAAM,GAAG,SAAS,CAO1D"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"process-instance.d.ts","sourceRoot":"","sources":["../../src/internal/process-instance.ts"],"names":[],"mappings":"AAKA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;
|
|
1
|
+
{"version":3,"file":"process-instance.d.ts","sourceRoot":"","sources":["../../src/internal/process-instance.ts"],"names":[],"mappings":"AAKA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAKxB;;;GAGG;AACH,eAAO,MAAM,qBAAqB;;;;;;;;kBAOvB,CAAC;AACZ;;;GAGG;AACH,MAAM,MAAM,eAAe,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,qBAAqB,CAAC,CAAC;AAEpE;;GAEG;AACH,QAAA,MAAM,gCAAgC;;;;;;;;;;;;;;4BAGpC,CAAC;AAIH;;;GAGG;AACH,MAAM,MAAM,0BAA0B,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,gCAAgC,CAAC,CAAC;AAE1F;;;GAGG;AACH,wBAAsB,sBAAsB,CAC1C,GAAG,EAAE,MAAM,GACV,OAAO,CAAC,0BAA0B,CAAC,CAGrC;AAED;;GAEG;AACH,wBAAgB,iBAAiB,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAS1E;AAED;;GAEG;AACH,wBAAsB,mBAAmB,CACvC,GAAG,EAAE,MAAM,EACX,QAAQ,SAAU,GACjB,OAAO,CAAC,eAAe,GAAG,IAAI,CAAC,CAGjC;AAED,iEAAiE;AACjE,wBAAsB,wBAAwB,CAC5C,GAAG,EAAE,MAAM,EACX,QAAQ,EAAE,MAAM,GACf,OAAO,CAAC,0BAA0B,CAAC,CAsDrC;AAED,QAAA,MAAM,0BAA0B;;;;;;;;;;;;;;;iBAW9B,CAAC;AACH;;;GAGG;AACH,MAAM,MAAM,oBAAoB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,0BAA0B,CAAC,CAAC;AAE9E;;GAEG;AACH,wBAAsB,iBAAiB,CACrC,GAAG,EAAE,MAAM,EACX,QAAQ,EAAE,eAAe,GAAG,IAAI,GAAG,SAAS,GAC3C,OAAO,CAAC,oBAAoB,CAAC,CAQ/B;AAED,UAAU,kBAAkB;IAC1B,IAAI,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,eAAe,GAAG,IAAI,CAAC,CAAC;IACnD,QAAQ,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,GAAG,MAAM,CAAC,CAAC;IACjD,OAAO,CAAC,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,0BAA0B,CAAC,CAAC;CAC5D;AAED;;GAEG;AACH,wBAAsB,qBAAqB,CACzC,GAAG,EAAE,MAAM,EACX,QAAQ,EAAE,eAAe,GAAG,IAAI,GAAG,SAAS,EAC5C,MAAM,GAAE,kBAA2E,GAClF,OAAO,CAAC,oBAAoB,CAAC,CAuC/B"}
|
|
@@ -1,17 +1,8 @@
|
|
|
1
|
+
import type { ContainedFileHandle } from './contained-handle.js';
|
|
1
2
|
/**
|
|
2
|
-
*
|
|
3
|
-
*
|
|
4
|
-
*
|
|
5
|
-
* Shared by the CLI's `--output-dir` and the `mountDownload` native tool. It
|
|
6
|
-
* deliberately takes an **already-resolved** target rather than building one:
|
|
7
|
-
* the two callers derive the filename differently (an untrusted `file.name` vs a
|
|
8
|
-
* name derived from the URL) and, more importantly, report the path back to the
|
|
9
|
-
* user — so composing it here would silently change one of those outputs from
|
|
10
|
-
* relative to absolute.
|
|
11
|
-
*
|
|
12
|
-
* The containment re-check is cheap and belongs on this side: both callers reduce
|
|
13
|
-
* the name to a basename first, but that is an invariant of *their* code, and
|
|
14
|
-
* this is where the write actually happens.
|
|
3
|
+
* Publish a CLI download as one direct child of the batch's pinned output root.
|
|
4
|
+
* Atomic replacement replaces links themselves, never the inode they point to.
|
|
5
|
+
* The caller owns the root descriptor and closes it after every file has settled.
|
|
15
6
|
*/
|
|
16
|
-
export declare function writeDownload(root:
|
|
7
|
+
export declare function writeDownload(root: ContainedFileHandle, name: string, data: Uint8Array): Promise<void>;
|
|
17
8
|
//# sourceMappingURL=write-download.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"write-download.d.ts","sourceRoot":"","sources":["../../src/internal/write-download.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"write-download.d.ts","sourceRoot":"","sources":["../../src/internal/write-download.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,oBAAoB,CAAC;AAG9D;;;;GAIG;AACH,wBAAsB,aAAa,CACjC,IAAI,EAAE,mBAAmB,EACzB,IAAI,EAAE,MAAM,EACZ,IAAI,EAAE,UAAU,GACf,OAAO,CAAC,IAAI,CAAC,CAYf"}
|
|
@@ -8,6 +8,7 @@ declare const ObservationSchema: z.ZodObject<{
|
|
|
8
8
|
observations: z.ZodNumber;
|
|
9
9
|
lastStates: z.ZodArray<z.ZodString>;
|
|
10
10
|
elapsedMs: z.ZodNumber;
|
|
11
|
+
reason: z.ZodOptional<z.ZodString>;
|
|
11
12
|
}, z.core.$strip>;
|
|
12
13
|
type Observation = z.infer<typeof ObservationSchema>;
|
|
13
14
|
/** Only this internal error carries process-state diagnostics safe to promote. */
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"group-diagnostics.d.ts","sourceRoot":"","sources":["../../src/process/group-diagnostics.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,QAAA,MAAM,iBAAiB
|
|
1
|
+
{"version":3,"file":"group-diagnostics.d.ts","sourceRoot":"","sources":["../../src/process/group-diagnostics.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,QAAA,MAAM,iBAAiB;;;;;;;;;;iBAQrB,CAAC;AACH,KAAK,WAAW,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,iBAAiB,CAAC,CAAC;AAGrD,kFAAkF;AAClF,qBAAa,oBAAqB,SAAQ,KAAK;IAC7C,YAAY,OAAO,EAAE,MAAM,EAAE,WAAW,EAAE,WAAW,EAAE,KAAK,GAAE,OAAqB,EAKlF;CACF;AAQD,2FAA2F;AAC3F,wBAAgB,0BAA0B,CAAC,KAAK,EAAE,OAAO,GAAG,WAAW,EAAE,CA+BxE"}
|
|
@@ -1,5 +1,7 @@
|
|
|
1
1
|
/** `killpg(..., 0)` also sees Linux zombies; only live members can still perform work. */
|
|
2
2
|
export declare function hasLiveGroupMember(table: string, group: number): boolean;
|
|
3
|
+
/** A bounded name for what stopped the observation; caller messages stay out of diagnostics. */
|
|
4
|
+
export declare function observationFailureReason(cause: unknown): string;
|
|
3
5
|
/** A delivered SIGKILL is asynchronous; do not report cleanup until every group member is dead. */
|
|
4
6
|
export declare function waitForProcessGroupExit(pid: number | undefined, deadline: number, killLiveMembers?: () => Promise<boolean>): Promise<void>;
|
|
5
7
|
//# sourceMappingURL=group-settlement.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"group-settlement.d.ts","sourceRoot":"","sources":["../../src/process/group-settlement.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"group-settlement.d.ts","sourceRoot":"","sources":["../../src/process/group-settlement.ts"],"names":[],"mappings":"AAMA,0FAA0F;AAC1F,wBAAgB,kBAAkB,CAAC,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,OAAO,CAQxE;AAgBD,gGAAgG;AAChG,wBAAgB,wBAAwB,CAAC,KAAK,EAAE,OAAO,GAAG,MAAM,CAK/D;AAED,mGAAmG;AACnG,wBAAsB,uBAAuB,CAC3C,GAAG,EAAE,MAAM,GAAG,SAAS,EACvB,QAAQ,EAAE,MAAM,EAChB,eAAe,CAAC,EAAE,MAAM,OAAO,CAAC,OAAO,CAAC,GACvC,OAAO,CAAC,IAAI,CAAC,CAmDf"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"group.d.ts","sourceRoot":"","sources":["../../src/process/group.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"group.d.ts","sourceRoot":"","sources":["../../src/process/group.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,kBAAkB,EAAE,KAAK,6BAA6B,EAAE,MAAM,YAAY,CAAC;AAKpF,+FAA+F;AAC/F,wBAAgB,qBAAqB,CAAC,SAAS,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO;IAYpE,MAAM;IACN,MAAM;EAIT;AAeD,gGAAgG;AAChG,wBAAgB,WAAW,CAAC,GAAG,EAAE,MAAM,GAAG,SAAS,EAAE,MAAM,EAAE,MAAM,CAAC,OAAO,GAAG,OAAO,CASpF;AAyCD,sGAAsG;AACtG,MAAM,WAAW,gBAAgB;IAC/B,QAAQ,CAAC,GAAG,EAAE,MAAM,GAAG,SAAS,CAAC;IACjC,QAAQ,CAAC,MAAM,EAAE,6BAA6B,CAAC;IAC/C,QAAQ,CAAC,gBAAgB,EAAE,MAAM,CAAC;IAClC,gEAAgE;IAChE,QAAQ,CAAC,KAAK,EAAE,OAAO,CAAC;CACzB;AAED;;;;;;;;;;GAUG;AACH,wBAAsB,gBAAgB,CAAC,IAAI,EAAE,gBAAgB,GAAG,OAAO,CAAC,OAAO,CAAC,CAmB/E;AAED,gGAAgG;AAChG,MAAM,WAAW,aAAa;IAC5B,QAAQ,CAAC,GAAG,CAAC,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAC;IACjC,QAAQ,CAAC,UAAU,EAAE,MAAM,GAAG,IAAI,CAAC;CACpC;AAED;;;;;;;;GAQG;AACH,wBAAsB,iBAAiB,CACrC,IAAI,EAAE,gBAAgB,GAAG;IAAE,MAAM,EAAE,aAAa,CAAC;IAAC,UAAU,EAAE,OAAO,CAAC,OAAO,CAAC,CAAA;CAAE,GAC/E,OAAO,CAAC,OAAO,CAAC,CAsBlB;AAED;;;;;GAKG;AACH,wBAAsB,eAAe,CAAC,IAAI,EAAE;IAC1C,MAAM,EAAE,aAAa,CAAC;IACtB,MAAM,EAAE,6BAA6B,CAAC;IACtC,UAAU,EAAE,OAAO,CAAC,OAAO,CAAC,CAAC;IAC7B,KAAK,EAAE,OAAO,CAAC;CAChB,GAAG,OAAO,CAAC,OAAO,CAAC,CAyBnB;AAED,wBAAgB,mBAAmB,CAAC,KAAK,EAAE,OAAO,GAAG,kBAAkB,CAQtE;AAED,wBAAgB,mBAAmB,CAAC,CAAC,EAAE,MAAM,EAAE,OAAO,CAAC,CAAC,CAAC,EAAE,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,CAAC,CAAC,CAMxF"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"owner-loss-control.d.ts","sourceRoot":"","sources":["../../src/process/owner-loss-control.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;
|
|
1
|
+
{"version":3,"file":"owner-loss-control.d.ts","sourceRoot":"","sources":["../../src/process/owner-loss-control.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AAgB1C,UAAU,YAAY;IACpB,QAAQ,CAAC,GAAG,CAAC,EAAE,MAAM,CAAC;IACtB,EAAE,CAAC,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI,EAAE,MAAM,EAAE,MAAM,GAAG,IAAI,KAAK,IAAI,GAAG,OAAO,CAAC;CAC5F;AASD,2FAA2F;AAC3F,wBAAgB,oBAAoB,CAAC,GAAG,EAAE,MAAM,GAAG,SAAS,GAAG,IAAI,CAOlE;AAQD,mFAAmF;AACnF,wBAAgB,sBAAsB,CAAC,KAAK,EAAE,YAAY,EAAE,OAAO,EAAE,MAAM,GAAG,IAAI,CAwDjF;AAED,gGAAgG;AAChG,wBAAgB,wBAAwB,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,IAAI,CAG7E;AAED,oGAAoG;AACpG,wBAAsB,iBAAiB,CAAC,KAAK,EAAE,YAAY,GAAG,OAAO,CAAC,MAAM,GAAG,SAAS,CAAC,CAIxF"}
|
|
@@ -30,7 +30,7 @@ export interface KeyLayerOptions {
|
|
|
30
30
|
/** Default `'bubble'`: after everything nearer. `'capture'`: before it, `local` layers only. */
|
|
31
31
|
readonly phase?: KeyLayerPhase;
|
|
32
32
|
}
|
|
33
|
-
/**
|
|
33
|
+
/** A layer adopts committed options before the caller's layout effects and leaves at unmount. */
|
|
34
34
|
export declare function useKeyLayer(options: KeyLayerOptions): void;
|
|
35
35
|
export interface EscapeLayerOptions {
|
|
36
36
|
readonly kind: 'overlay' | 'local' | 'route';
|
|
@@ -48,7 +48,7 @@ export declare function useEscapeLayer(options: EscapeLayerOptions): void;
|
|
|
48
48
|
export interface NavZoneProps {
|
|
49
49
|
readonly ref: (element: HTMLElement | null) => void;
|
|
50
50
|
readonly role?: 'listbox' | 'tablist';
|
|
51
|
-
readonly 'aria-orientation'
|
|
51
|
+
readonly 'aria-orientation'?: ZoneOrientation;
|
|
52
52
|
readonly 'aria-label'?: string;
|
|
53
53
|
readonly 'data-keyboard-zone': '';
|
|
54
54
|
readonly onKeyDown: (event: {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"hooks.d.ts","sourceRoot":"","sources":["../../../src/react/keyboard/hooks.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AACH,OAAO,EACL,KAAK,SAAS,EAMf,MAAM,OAAO,CAAC;AACf,OAAO,EAGL,KAAK,YAAY,EACjB,KAAK,aAAa,EAGnB,MAAM,UAAU,CAAC;AAClB,OAAO,EAIL,KAAK,UAAU,EACf,KAAK,WAAW,EAChB,KAAK,eAAe,EACrB,MAAM,QAAQ,CAAC;AAiBhB;;;;;;GAMG;AACH,MAAM,WAAW,eAAe;IAC9B,QAAQ,CAAC,IAAI,EAAE,YAAY,CAAC;IAC5B,kGAAkG;IAClG,KAAK,CAAC,KAAK,EAAE,aAAa,GAAG,OAAO,CAAC;IACrC,yEAAyE;IACzE,QAAQ,CAAC,MAAM,CAAC,EAAE,OAAO,CAAC;IAC1B;;;;OAIG;IACH,QAAQ,CAAC,KAAK,CAAC,EAAE,SAAS,CAAC,OAAO,GAAG,IAAI,CAAC,CAAC;IAC3C,uGAAuG;IACvG,QAAQ,CAAC,MAAM,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IACrC,gGAAgG;IAChG,QAAQ,CAAC,KAAK,CAAC,EAAE,aAAa,CAAC;CAChC;AAcD,
|
|
1
|
+
{"version":3,"file":"hooks.d.ts","sourceRoot":"","sources":["../../../src/react/keyboard/hooks.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AACH,OAAO,EACL,KAAK,SAAS,EAMf,MAAM,OAAO,CAAC;AACf,OAAO,EAGL,KAAK,YAAY,EACjB,KAAK,aAAa,EAGnB,MAAM,UAAU,CAAC;AAClB,OAAO,EAIL,KAAK,UAAU,EACf,KAAK,WAAW,EAChB,KAAK,eAAe,EACrB,MAAM,QAAQ,CAAC;AAiBhB;;;;;;GAMG;AACH,MAAM,WAAW,eAAe;IAC9B,QAAQ,CAAC,IAAI,EAAE,YAAY,CAAC;IAC5B,kGAAkG;IAClG,KAAK,CAAC,KAAK,EAAE,aAAa,GAAG,OAAO,CAAC;IACrC,yEAAyE;IACzE,QAAQ,CAAC,MAAM,CAAC,EAAE,OAAO,CAAC;IAC1B;;;;OAIG;IACH,QAAQ,CAAC,KAAK,CAAC,EAAE,SAAS,CAAC,OAAO,GAAG,IAAI,CAAC,CAAC;IAC3C,uGAAuG;IACvG,QAAQ,CAAC,MAAM,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IACrC,gGAAgG;IAChG,QAAQ,CAAC,KAAK,CAAC,EAAE,aAAa,CAAC;CAChC;AAcD,iGAAiG;AACjG,wBAAgB,WAAW,CAAC,OAAO,EAAE,eAAe,GAAG,IAAI,CAc1D;AAED,MAAM,WAAW,kBAAkB;IACjC,QAAQ,CAAC,IAAI,EAAE,SAAS,GAAG,OAAO,GAAG,OAAO,CAAC;IAC7C,qGAAqG;IACrG,QAAQ,IAAI,OAAO,CAAC;IACpB,QAAQ,CAAC,MAAM,CAAC,EAAE,OAAO,CAAC;IAC1B,QAAQ,CAAC,KAAK,CAAC,EAAE,SAAS,CAAC,OAAO,GAAG,IAAI,CAAC,CAAC;CAC5C;AAED,gGAAgG;AAChG,wBAAgB,cAAc,CAAC,OAAO,EAAE,kBAAkB,GAAG,IAAI,CAOhE;AAED;;;GAGG;AACH,MAAM,WAAW,YAAY;IAC3B,QAAQ,CAAC,GAAG,EAAE,CAAC,OAAO,EAAE,WAAW,GAAG,IAAI,KAAK,IAAI,CAAC;IACpD,QAAQ,CAAC,IAAI,CAAC,EAAE,SAAS,GAAG,SAAS,CAAC;IACtC,QAAQ,CAAC,kBAAkB,CAAC,EAAE,eAAe,CAAC;IAC9C,QAAQ,CAAC,YAAY,CAAC,EAAE,MAAM,CAAC;IAC/B,QAAQ,CAAC,oBAAoB,EAAE,EAAE,CAAC;IAClC,QAAQ,CAAC,SAAS,EAAE,CAAC,KAAK,EAAE;QAAE,QAAQ,CAAC,WAAW,EAAE,aAAa,CAAA;KAAE,KAAK,IAAI,CAAC;CAC9E;AAED;;;;GAIG;AACH,MAAM,WAAW,gBAAgB;IAC/B,QAAQ,CAAC,GAAG,EAAE,CAAC,OAAO,EAAE,WAAW,GAAG,IAAI,KAAK,IAAI,CAAC;IACpD,QAAQ,CAAC,QAAQ,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;IAC1B,QAAQ,CAAC,IAAI,CAAC,EAAE,QAAQ,GAAG,KAAK,CAAC;IACjC,QAAQ,CAAC,eAAe,CAAC,EAAE,OAAO,CAAC;IACnC,QAAQ,CAAC,cAAc,CAAC,EAAE,MAAM,CAAC;IACjC,QAAQ,CAAC,OAAO,EAAE,MAAM,IAAI,CAAC;CAC9B;AAED,MAAM,WAAW,OAAO,CAAC,EAAE,SAAS,UAAU;IAC5C,oEAAoE;IACpE,QAAQ,CAAC,SAAS,EAAE,YAAY,CAAC;IACjC,uFAAuF;IACvF,QAAQ,CAAC,OAAO,EAAE,SAAS,CAAC,WAAW,GAAG,IAAI,CAAC,CAAC;IAChD,SAAS,CAAC,EAAE,EAAE,EAAE,GAAG,gBAAgB,CAAC;IACpC,8FAA8F;IAC9F,QAAQ,CAAC,OAAO,EAAE,EAAE,GAAG,IAAI,CAAC;IAC5B,uFAAuF;IACvF,KAAK,CAAC,EAAE,CAAC,EAAE,EAAE,GAAG,OAAO,CAAC;CACzB;AAED;;;;;GAKG;AACH,wBAAgB,cAAc,CAAC,EAAE,SAAS,UAAU,EAClD,GAAG,EAAE,CAAC,EAAE,EAAE,EAAE,EAAE,IAAI,EAAE,WAAW,GAAG,IAAI,KAAK,IAAI,GAC9C;IAAE,GAAG,CAAC,EAAE,EAAE,EAAE,GAAG,CAAC,IAAI,EAAE,WAAW,GAAG,IAAI,KAAK,IAAI,CAAC;IAAC,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAA;CAAE,CAmB5E;AAED;;;;;;;;GAQG;AACH,wBAAgB,UAAU,CAAC,EAAE,SAAS,UAAU,EAAE,OAAO,EAAE,WAAW,CAAC,EAAE,CAAC,GAAG,OAAO,CAAC,EAAE,CAAC,CA4DvF"}
|