deepline 0.3.67 → 0.3.68
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/dist/bundling-sources/sdk/src/client.ts +0 -2
- package/dist/bundling-sources/sdk/src/release.ts +1 -1
- package/dist/bundling-sources/sdk/src/types.ts +0 -2
- package/dist/cli/index.js +136 -198
- package/dist/cli/index.mjs +48 -110
- package/dist/index.d.mts +0 -4
- package/dist/index.d.ts +0 -4
- package/dist/index.js +1 -1
- package/dist/index.mjs +1 -1
- package/package.json +1 -1
package/dist/cli/index.mjs
CHANGED
|
@@ -1199,7 +1199,7 @@ var SDK_RELEASE = {
|
|
|
1199
1199
|
// available at toolResponse.rawV2 while toolResponse.raw and all declared
|
|
1200
1200
|
// getters keep their established compatibility behavior.
|
|
1201
1201
|
// 0.3.1 deprecated the legacy `deepline enrich` command in favor of Plays.
|
|
1202
|
-
version: "0.3.
|
|
1202
|
+
version: "0.3.68",
|
|
1203
1203
|
updateSummary: "Automatic CLI updates are now enabled by default. To opt out, run `deepline settings autoupdate off`; use `deepline settings autoupdate on` to re-enable updates or `deepline settings autoupdate pin <version>` to hold an exact release. This release also adds raw-v2 tool responses at toolResponse.rawV2 while preserving existing toolResponse.raw and declared getters.",
|
|
1204
1204
|
packageCapabilities: {
|
|
1205
1205
|
updatePreferences: 1
|
|
@@ -18216,20 +18216,12 @@ async function publishImportedPlayDependencies(client2, graph) {
|
|
|
18216
18216
|
};
|
|
18217
18217
|
await publishNode(graph.root.filePath, true);
|
|
18218
18218
|
}
|
|
18219
|
-
function timestampDate(value) {
|
|
18220
|
-
if (value === null || value === void 0 || value === "") return null;
|
|
18221
|
-
const normalized = typeof value === "string" && /^\d+$/.test(value.trim()) ? Number(value) : value;
|
|
18222
|
-
const date = new Date(normalized);
|
|
18223
|
-
return Number.isNaN(date.getTime()) ? null : date;
|
|
18224
|
-
}
|
|
18225
18219
|
function formatTimestamp(value) {
|
|
18226
|
-
|
|
18227
|
-
|
|
18220
|
+
if (!value) return "\u2014";
|
|
18221
|
+
const date = typeof value === "number" ? new Date(value) : new Date(value);
|
|
18222
|
+
if (Number.isNaN(date.getTime())) return "\u2014";
|
|
18228
18223
|
return date.toISOString();
|
|
18229
18224
|
}
|
|
18230
|
-
function isoTimestamp(value) {
|
|
18231
|
-
return timestampDate(value)?.toISOString() ?? null;
|
|
18232
|
-
}
|
|
18233
18225
|
function formatRunLine(run) {
|
|
18234
18226
|
const credits = typeof run.billingTotalCredits === "number" && Number.isFinite(run.billingTotalCredits) ? `${formatCreditAmount(run.billingTotalCredits)} credits` : "\u2014";
|
|
18235
18227
|
return `${run.workflowId} ${run.status} ${formatTimestamp(run.startTime)} ${credits}`;
|
|
@@ -22655,22 +22647,13 @@ async function handleRunsList(args) {
|
|
|
22655
22647
|
...offset !== void 0 ? { offset } : {}
|
|
22656
22648
|
})).map((run) => ({
|
|
22657
22649
|
runId: run.workflowId,
|
|
22658
|
-
// `workflowId` is the legacy SDK name for the same public Deepline run
|
|
22659
|
-
// identity. Keep it during the compatibility window, but never label the
|
|
22660
|
-
// duplicate as a Temporal/runtime id.
|
|
22661
22650
|
workflowId: run.workflowId,
|
|
22662
|
-
|
|
22663
|
-
// stable Deepline run id; `runId` above is the canonical public id.
|
|
22664
|
-
temporalRunId: run.runId ?? null,
|
|
22651
|
+
temporalRunId: run.runId,
|
|
22665
22652
|
parentRunId: run.parentRunId ?? null,
|
|
22666
22653
|
rootRunId: run.rootRunId ?? null,
|
|
22667
22654
|
status: String(run.status ?? "").toLowerCase(),
|
|
22668
|
-
createdAt: run.createdAt ?? null,
|
|
22669
|
-
createdAtIso: isoTimestamp(run.createdAt),
|
|
22670
22655
|
startedAt: run.startTime ?? run.startedAt ?? null,
|
|
22671
|
-
startedAtIso: isoTimestamp(run.startTime ?? run.startedAt ?? null),
|
|
22672
22656
|
finishedAt: run.closeTime ?? run.finishedAt ?? null,
|
|
22673
|
-
finishedAtIso: isoTimestamp(run.closeTime ?? run.finishedAt ?? null),
|
|
22674
22657
|
executionTime: run.executionTime,
|
|
22675
22658
|
billingTotalCredits: run.billingTotalCredits,
|
|
22676
22659
|
billingMaxCreditsPerRun: run.billingMaxCreditsPerRun,
|
|
@@ -22678,19 +22661,9 @@ async function handleRunsList(args) {
|
|
|
22678
22661
|
}));
|
|
22679
22662
|
const lines = runs.length === 0 ? [
|
|
22680
22663
|
playName ? `No runs found for ${playName}.` : `No runs found for status ${statusFilter}.`
|
|
22681
|
-
] : runs.map(
|
|
22682
|
-
|
|
22683
|
-
|
|
22684
|
-
` created: ${formatTimestamp(run.createdAt)}`,
|
|
22685
|
-
` started: ${formatTimestamp(run.startedAt)}`,
|
|
22686
|
-
` finished: ${formatTimestamp(run.finishedAt)}`,
|
|
22687
|
-
` credits: ${typeof run.billingTotalCredits === "number" && Number.isFinite(run.billingTotalCredits) ? formatCreditAmount(run.billingTotalCredits) : "\u2014"}`,
|
|
22688
|
-
` inspect: deepline runs get ${run.runId} --json`
|
|
22689
|
-
];
|
|
22690
|
-
if (run.parentRunId) lines2.push(` parent: ${run.parentRunId}`);
|
|
22691
|
-
if (run.rootRunId) lines2.push(` root: ${run.rootRunId}`);
|
|
22692
|
-
return lines2.join("\n");
|
|
22693
|
-
});
|
|
22664
|
+
] : runs.map(
|
|
22665
|
+
(run) => `${run.runId} ${run.status} ${formatTimestamp(run.startedAt)} ${typeof run.billingTotalCredits === "number" && Number.isFinite(run.billingTotalCredits) ? `${formatCreditAmount(run.billingTotalCredits)} credits` : "\u2014"}${run.parentRunId ? ` parent=${run.parentRunId}` : ""}`
|
|
22666
|
+
);
|
|
22694
22667
|
printCommandEnvelope(
|
|
22695
22668
|
{
|
|
22696
22669
|
runs,
|
|
@@ -30496,12 +30469,10 @@ function registerEnrichCommand(program) {
|
|
|
30496
30469
|
}
|
|
30497
30470
|
|
|
30498
30471
|
// src/cli/commands/feedback.ts
|
|
30499
|
-
import { readFileSync as readFileSync9 } from "fs";
|
|
30500
30472
|
async function handleFeedback(text, options) {
|
|
30501
|
-
const message = resolveFeedbackText(text, options.file);
|
|
30502
30473
|
const { http } = getAuthedHttpClient();
|
|
30503
30474
|
const response = await http.post("/api/v2/cli/feedback", {
|
|
30504
|
-
text
|
|
30475
|
+
text,
|
|
30505
30476
|
requested: options.requested === true,
|
|
30506
30477
|
environment: collectLocalEnvInfo(),
|
|
30507
30478
|
...options.command ? { command: options.command } : {},
|
|
@@ -30519,35 +30490,6 @@ async function handleFeedback(text, options) {
|
|
|
30519
30490
|
{ json: options.json }
|
|
30520
30491
|
);
|
|
30521
30492
|
}
|
|
30522
|
-
function resolveFeedbackText(text, file, readFile6 = (path) => readFileSync9(path, "utf8")) {
|
|
30523
|
-
if (text !== void 0 && file !== void 0) {
|
|
30524
|
-
throw new Error(
|
|
30525
|
-
"Pass feedback text positionally or with --file, not both."
|
|
30526
|
-
);
|
|
30527
|
-
}
|
|
30528
|
-
let value;
|
|
30529
|
-
if (file !== void 0) {
|
|
30530
|
-
try {
|
|
30531
|
-
value = readFile6(file === "-" ? 0 : file);
|
|
30532
|
-
} catch (error) {
|
|
30533
|
-
throw new Error(
|
|
30534
|
-
`Could not read feedback ${file === "-" ? "from stdin" : `file ${file}`}: ${error instanceof Error ? error.message : String(error)}`
|
|
30535
|
-
);
|
|
30536
|
-
}
|
|
30537
|
-
} else if (text !== void 0) {
|
|
30538
|
-
value = text;
|
|
30539
|
-
} else if (!process.stdin.isTTY) {
|
|
30540
|
-
value = readFile6(0);
|
|
30541
|
-
} else {
|
|
30542
|
-
throw new Error(
|
|
30543
|
-
"Feedback text is required. Pass it positionally, use --file <path>, or pipe stdin."
|
|
30544
|
-
);
|
|
30545
|
-
}
|
|
30546
|
-
if (!value.trim()) {
|
|
30547
|
-
throw new Error("Feedback text must not be empty.");
|
|
30548
|
-
}
|
|
30549
|
-
return value;
|
|
30550
|
-
}
|
|
30551
30493
|
function registerFeedbackCommands(program) {
|
|
30552
30494
|
const feedback = program.command("feedback").description("Submit CLI feedback to Deepline.").addHelpText(
|
|
30553
30495
|
"after",
|
|
@@ -30567,12 +30509,10 @@ Examples:
|
|
|
30567
30509
|
`
|
|
30568
30510
|
Examples:
|
|
30569
30511
|
deepline feedback send "tools search returned stale results" --json
|
|
30570
|
-
deepline feedback send --file incident.md --requested --json
|
|
30571
|
-
cat incident.md | deepline feedback send --requested --json
|
|
30572
30512
|
deepline feedback send "tools search returned stale results" --requested --json
|
|
30573
30513
|
deepline feedback send "plays run failed after upload" --command "deepline plays run my.play.ts --watch"
|
|
30574
30514
|
`
|
|
30575
|
-
).argument("
|
|
30515
|
+
).argument("<text>", "Feedback text").option("--command <command>", "Command that reproduced the issue").option("--payload <payload>", "JSON or plain-text payload for the repro").option(
|
|
30576
30516
|
"--requested",
|
|
30577
30517
|
"Mark the report as explicitly requested by the user"
|
|
30578
30518
|
).option("--json", "Emit JSON output").action(handleFeedback);
|
|
@@ -30583,7 +30523,7 @@ import {
|
|
|
30583
30523
|
existsSync as existsSync10,
|
|
30584
30524
|
mkdirSync as mkdirSync8,
|
|
30585
30525
|
readdirSync as readdirSync3,
|
|
30586
|
-
readFileSync as
|
|
30526
|
+
readFileSync as readFileSync9,
|
|
30587
30527
|
statSync as statSync4,
|
|
30588
30528
|
writeFileSync as writeFileSync11
|
|
30589
30529
|
} from "fs";
|
|
@@ -30721,7 +30661,7 @@ function sessionIdFromCodexFilePath(filePath) {
|
|
|
30721
30661
|
}
|
|
30722
30662
|
function readCodexSessionId(filePath) {
|
|
30723
30663
|
try {
|
|
30724
|
-
for (const line of normalizedJsonLines(
|
|
30664
|
+
for (const line of normalizedJsonLines(readFileSync9(filePath)).slice(
|
|
30725
30665
|
0,
|
|
30726
30666
|
20
|
|
30727
30667
|
)) {
|
|
@@ -31040,7 +30980,7 @@ async function handleSessionsSend(options) {
|
|
|
31040
30980
|
throw new Error(`File not found: ${options.file}`);
|
|
31041
30981
|
}
|
|
31042
30982
|
const response2 = await uploadPayload("/api/v2/cli/send-session", {
|
|
31043
|
-
file:
|
|
30983
|
+
file: readFileSync9(filePath).toString("base64"),
|
|
31044
30984
|
filename: basename5(filePath)
|
|
31045
30985
|
});
|
|
31046
30986
|
printCommandEnvelope(
|
|
@@ -31070,7 +31010,7 @@ async function handleSessionsSend(options) {
|
|
|
31070
31010
|
agent: options.agent
|
|
31071
31011
|
});
|
|
31072
31012
|
const built = targets.map((target) => {
|
|
31073
|
-
const upload = buildSessionUploadContent(
|
|
31013
|
+
const upload = buildSessionUploadContent(readFileSync9(target.filePath));
|
|
31074
31014
|
return { ...target, ...upload };
|
|
31075
31015
|
});
|
|
31076
31016
|
if (built.some((session) => session.needsChunking)) {
|
|
@@ -31154,8 +31094,8 @@ function loadViewerAssets() {
|
|
|
31154
31094
|
const jsPath = join12(root, "viewer.js");
|
|
31155
31095
|
if (!existsSync10(cssPath) || !existsSync10(jsPath)) continue;
|
|
31156
31096
|
return {
|
|
31157
|
-
css:
|
|
31158
|
-
js:
|
|
31097
|
+
css: readFileSync9(cssPath, "utf8"),
|
|
31098
|
+
js: readFileSync9(jsPath, "utf8")
|
|
31159
31099
|
};
|
|
31160
31100
|
} catch {
|
|
31161
31101
|
continue;
|
|
@@ -31193,7 +31133,7 @@ async function handleSessionsRender(options) {
|
|
|
31193
31133
|
const sessions = targets.map((target) => ({
|
|
31194
31134
|
label: target.label,
|
|
31195
31135
|
events: parsePreparedEvents(
|
|
31196
|
-
prepareSessionBuffer(
|
|
31136
|
+
prepareSessionBuffer(readFileSync9(target.filePath))
|
|
31197
31137
|
)
|
|
31198
31138
|
}));
|
|
31199
31139
|
const { css, js } = loadViewerAssets();
|
|
@@ -31427,7 +31367,7 @@ Examples:
|
|
|
31427
31367
|
|
|
31428
31368
|
// src/cli/commands/monitors.ts
|
|
31429
31369
|
import { randomUUID as randomUUID5 } from "crypto";
|
|
31430
|
-
import { readFileSync as
|
|
31370
|
+
import { readFileSync as readFileSync10, writeFileSync as writeFileSync12 } from "fs";
|
|
31431
31371
|
import { resolve as resolve14 } from "path";
|
|
31432
31372
|
import { createInterface } from "readline/promises";
|
|
31433
31373
|
|
|
@@ -31867,8 +31807,8 @@ function parseJsonObjectArg(raw, argLabel) {
|
|
|
31867
31807
|
return parsed;
|
|
31868
31808
|
}
|
|
31869
31809
|
function resolveMonitorJsonBody(input2) {
|
|
31870
|
-
const readFile6 = input2.readFile ?? ((path) =>
|
|
31871
|
-
const readStdin = input2.readStdin ?? (() =>
|
|
31810
|
+
const readFile6 = input2.readFile ?? ((path) => readFileSync10(path, "utf-8"));
|
|
31811
|
+
const readStdin = input2.readStdin ?? (() => readFileSync10(0, "utf-8"));
|
|
31872
31812
|
if (input2.positional !== void 0 && input2.file !== void 0) {
|
|
31873
31813
|
throw new MonitorsUsageError(
|
|
31874
31814
|
`Pass exactly one source for ${input2.argLabel}: the positional JSON or --file, not both.`
|
|
@@ -32265,7 +32205,6 @@ function renderDeployedListText(payload, requestedStatus) {
|
|
|
32265
32205
|
if (!entry || !key) continue;
|
|
32266
32206
|
const status = asString(entry.status);
|
|
32267
32207
|
const tool = asString(entry.tool);
|
|
32268
|
-
const monitorType = asString(entry.type);
|
|
32269
32208
|
const name = asString(entry.name);
|
|
32270
32209
|
const outputTable = asString(entry.output_table);
|
|
32271
32210
|
const webhookState = asString(entry.webhook_state);
|
|
@@ -32276,11 +32215,10 @@ function renderDeployedListText(payload, requestedStatus) {
|
|
|
32276
32215
|
lines.push(
|
|
32277
32216
|
` ${key}${status ? ` ${status}` : ""}${tool ? ` ${tool}` : ""}${name ? ` (${name})` : ""}`
|
|
32278
32217
|
);
|
|
32279
|
-
if (outputTable ||
|
|
32218
|
+
if (outputTable || webhookState || executionType || boundPlays !== void 0) {
|
|
32280
32219
|
lines.push(
|
|
32281
32220
|
` ${[
|
|
32282
32221
|
outputTable ? `table: ${outputTable}` : null,
|
|
32283
|
-
monitorType ? `type: ${monitorType}` : null,
|
|
32284
32222
|
webhookState ? `webhook: ${webhookState}` : null,
|
|
32285
32223
|
executionType ? `execution: ${executionType}` : null,
|
|
32286
32224
|
boundPlays !== void 0 ? `bound Plays: ${boundPlays}` : null
|
|
@@ -33105,7 +33043,6 @@ function renderMonitorGet(payload) {
|
|
|
33105
33043
|
const tool = asString(payload.tool);
|
|
33106
33044
|
if (!key || !tool) return void 0;
|
|
33107
33045
|
const status = asString(payload.status);
|
|
33108
|
-
const monitorType = asString(payload.type);
|
|
33109
33046
|
const hasLastReceivedEvent = "last_received_event" in payload;
|
|
33110
33047
|
const lastReceivedEvent = asString(payload.last_received_event);
|
|
33111
33048
|
const definition = asRecord2(payload.definition);
|
|
@@ -33123,9 +33060,8 @@ function renderMonitorGet(payload) {
|
|
|
33123
33060
|
const lines = [
|
|
33124
33061
|
`Monitor: ${key}`,
|
|
33125
33062
|
`Tool: ${tool}`,
|
|
33126
|
-
...monitorType ? [`Type: ${monitorType}`] : [],
|
|
33127
33063
|
...status ? [`Status: ${status}`] : [],
|
|
33128
|
-
...hasLastReceivedEvent ? [`
|
|
33064
|
+
...hasLastReceivedEvent ? [`Last received: ${lastReceivedEvent ?? "never"}`] : [],
|
|
33129
33065
|
...pricingLine ? [`Pricing: ${pricingLine}`] : [],
|
|
33130
33066
|
...nextRenewalAt ? [`Next renewal: ${nextRenewalAt}`] : []
|
|
33131
33067
|
];
|
|
@@ -33191,15 +33127,17 @@ function renderMonitorGet(payload) {
|
|
|
33191
33127
|
const name = asString(play.name) ?? "unnamed Play";
|
|
33192
33128
|
const listener = asString(play.listener_key);
|
|
33193
33129
|
const health = asRecord2(play.consumer_health);
|
|
33194
|
-
const
|
|
33130
|
+
const status2 = asString(health?.last_run_status) ?? "no delivery yet";
|
|
33195
33131
|
const lastDelivery = asFiniteNumber(health?.last_delivery_at);
|
|
33196
|
-
const runId = asString(health?.last_run_id);
|
|
33197
33132
|
const error = asString(health?.last_error);
|
|
33198
|
-
lines.push(` ${name}${listener ? ` (listener: ${listener})` : ""}:`);
|
|
33199
33133
|
lines.push(
|
|
33200
|
-
`
|
|
33201
|
-
` Latest consumer run: ${runId ?? "never"}${runStatus ? ` (${runStatus})` : ""}`
|
|
33134
|
+
` ${name}${listener ? ` (listener: ${listener})` : ""}: ${status2}`
|
|
33202
33135
|
);
|
|
33136
|
+
if (lastDelivery !== void 0) {
|
|
33137
|
+
lines.push(
|
|
33138
|
+
` last delivery: ${new Date(lastDelivery).toISOString()}`
|
|
33139
|
+
);
|
|
33140
|
+
}
|
|
33203
33141
|
if (error) lines.push(` error: ${error}`);
|
|
33204
33142
|
}
|
|
33205
33143
|
}
|
|
@@ -34857,7 +34795,7 @@ import {
|
|
|
34857
34795
|
existsSync as existsSync14,
|
|
34858
34796
|
lstatSync as lstatSync2,
|
|
34859
34797
|
mkdirSync as mkdirSync11,
|
|
34860
|
-
readFileSync as
|
|
34798
|
+
readFileSync as readFileSync14,
|
|
34861
34799
|
realpathSync as realpathSync4,
|
|
34862
34800
|
writeFileSync as writeFileSync15
|
|
34863
34801
|
} from "fs";
|
|
@@ -34868,7 +34806,7 @@ import { dirname as dirname16, join as join16, resolve as resolve16 } from "path
|
|
|
34868
34806
|
import {
|
|
34869
34807
|
existsSync as existsSync11,
|
|
34870
34808
|
lstatSync,
|
|
34871
|
-
readFileSync as
|
|
34809
|
+
readFileSync as readFileSync11,
|
|
34872
34810
|
realpathSync as realpathSync3,
|
|
34873
34811
|
rmSync as rmSync4
|
|
34874
34812
|
} from "fs";
|
|
@@ -34884,7 +34822,7 @@ var nodeFileSystem = {
|
|
|
34884
34822
|
},
|
|
34885
34823
|
read(path) {
|
|
34886
34824
|
try {
|
|
34887
|
-
return
|
|
34825
|
+
return readFileSync11(path, "utf8");
|
|
34888
34826
|
} catch {
|
|
34889
34827
|
return "";
|
|
34890
34828
|
}
|
|
@@ -34994,7 +34932,7 @@ function isOwnedInstallerCommandPath(input2) {
|
|
|
34994
34932
|
|
|
34995
34933
|
// src/cli/commands/skills.ts
|
|
34996
34934
|
import { spawn as spawn3 } from "child_process";
|
|
34997
|
-
import { existsSync as existsSync13, mkdirSync as mkdirSync10, readFileSync as
|
|
34935
|
+
import { existsSync as existsSync13, mkdirSync as mkdirSync10, readFileSync as readFileSync13, writeFileSync as writeFileSync14 } from "fs";
|
|
34998
34936
|
import { homedir as homedir8 } from "os";
|
|
34999
34937
|
import { dirname as dirname15, join as join15 } from "path";
|
|
35000
34938
|
|
|
@@ -35109,7 +35047,7 @@ import { spawn as spawn2, spawnSync } from "child_process";
|
|
|
35109
35047
|
import {
|
|
35110
35048
|
existsSync as existsSync12,
|
|
35111
35049
|
mkdirSync as mkdirSync9,
|
|
35112
|
-
readFileSync as
|
|
35050
|
+
readFileSync as readFileSync12,
|
|
35113
35051
|
unlinkSync,
|
|
35114
35052
|
writeFileSync as writeFileSync13
|
|
35115
35053
|
} from "fs";
|
|
@@ -35473,7 +35411,7 @@ function hasMarkedSkillsSyncVersion(path, version) {
|
|
|
35473
35411
|
}
|
|
35474
35412
|
function readMarkedSkillsSyncVersion(path) {
|
|
35475
35413
|
try {
|
|
35476
|
-
return existsSync12(path) ?
|
|
35414
|
+
return existsSync12(path) ? readFileSync12(path, "utf-8").trim() : "";
|
|
35477
35415
|
} catch {
|
|
35478
35416
|
return "";
|
|
35479
35417
|
}
|
|
@@ -35961,7 +35899,7 @@ function isSkillsPlanCurrent(plan, state) {
|
|
|
35961
35899
|
}
|
|
35962
35900
|
function readSkillsInstallState(path) {
|
|
35963
35901
|
try {
|
|
35964
|
-
const parsed = JSON.parse(
|
|
35902
|
+
const parsed = JSON.parse(readFileSync13(path, "utf8"));
|
|
35965
35903
|
return parsed !== null && typeof parsed === "object" && !Array.isArray(parsed) ? parsed : null;
|
|
35966
35904
|
} catch {
|
|
35967
35905
|
return null;
|
|
@@ -36253,7 +36191,7 @@ function phasesFromLegacyStatus(status) {
|
|
|
36253
36191
|
function readSetupState(input2) {
|
|
36254
36192
|
try {
|
|
36255
36193
|
const parsed = JSON.parse(
|
|
36256
|
-
|
|
36194
|
+
readFileSync14(
|
|
36257
36195
|
setupStatePath(input2.baseUrl, input2.scope, input2.root),
|
|
36258
36196
|
"utf8"
|
|
36259
36197
|
)
|
|
@@ -36358,7 +36296,7 @@ function asRecord3(value) {
|
|
|
36358
36296
|
}
|
|
36359
36297
|
function safeRead(path) {
|
|
36360
36298
|
try {
|
|
36361
|
-
return
|
|
36299
|
+
return readFileSync14(path, "utf8");
|
|
36362
36300
|
} catch {
|
|
36363
36301
|
return "";
|
|
36364
36302
|
}
|
|
@@ -37122,7 +37060,7 @@ Examples:
|
|
|
37122
37060
|
import {
|
|
37123
37061
|
existsSync as existsSync15,
|
|
37124
37062
|
mkdirSync as mkdirSync12,
|
|
37125
|
-
readFileSync as
|
|
37063
|
+
readFileSync as readFileSync15,
|
|
37126
37064
|
renameSync,
|
|
37127
37065
|
rmSync as rmSync5,
|
|
37128
37066
|
writeFileSync as writeFileSync16
|
|
@@ -37169,7 +37107,7 @@ function readCliUpdatePreferences(homeDir2 = homedir10()) {
|
|
|
37169
37107
|
const path = cliUpdatePreferencesPath(homeDir2);
|
|
37170
37108
|
if (!existsSync15(path)) return defaultPreferences();
|
|
37171
37109
|
try {
|
|
37172
|
-
const parsed = JSON.parse(
|
|
37110
|
+
const parsed = JSON.parse(readFileSync15(path, "utf8"));
|
|
37173
37111
|
return {
|
|
37174
37112
|
schemaVersion: UPDATE_PREFERENCES_SCHEMA_VERSION,
|
|
37175
37113
|
autoUpdateEnabled: typeof parsed.autoUpdateEnabled === "boolean" ? parsed.autoUpdateEnabled : true,
|
|
@@ -37248,7 +37186,7 @@ import {
|
|
|
37248
37186
|
existsSync as existsSync17,
|
|
37249
37187
|
mkdirSync as mkdirSync13,
|
|
37250
37188
|
realpathSync as realpathSync5,
|
|
37251
|
-
readFileSync as
|
|
37189
|
+
readFileSync as readFileSync17,
|
|
37252
37190
|
renameSync as renameSync2,
|
|
37253
37191
|
rmSync as rmSync6,
|
|
37254
37192
|
unlinkSync as unlinkSync2,
|
|
@@ -37266,7 +37204,7 @@ import {
|
|
|
37266
37204
|
|
|
37267
37205
|
// src/cli/install-integrity.ts
|
|
37268
37206
|
import { createRequire } from "module";
|
|
37269
|
-
import { existsSync as existsSync16, readFileSync as
|
|
37207
|
+
import { existsSync as existsSync16, readFileSync as readFileSync16, statSync as statSync5 } from "fs";
|
|
37270
37208
|
import { isAbsolute as isAbsolute6, join as join18, relative as relative6, resolve as resolve17 } from "path";
|
|
37271
37209
|
var SDK_SIDECAR_CRITICAL_PACKAGE_FILES = [
|
|
37272
37210
|
"dist/cli/index.mjs",
|
|
@@ -37300,7 +37238,7 @@ function resolveContainedPath(root, value) {
|
|
|
37300
37238
|
return target;
|
|
37301
37239
|
}
|
|
37302
37240
|
function parseJson(path) {
|
|
37303
|
-
return JSON.parse(
|
|
37241
|
+
return JSON.parse(readFileSync16(path, "utf8"));
|
|
37304
37242
|
}
|
|
37305
37243
|
function isFile(path) {
|
|
37306
37244
|
try {
|
|
@@ -37510,7 +37448,7 @@ function publicNpmFallbackRegistryUrl(hostUrl) {
|
|
|
37510
37448
|
}
|
|
37511
37449
|
function readOptionalText(path) {
|
|
37512
37450
|
try {
|
|
37513
|
-
return
|
|
37451
|
+
return readFileSync17(path, "utf8").trim();
|
|
37514
37452
|
} catch {
|
|
37515
37453
|
return "";
|
|
37516
37454
|
}
|
|
@@ -37713,7 +37651,7 @@ function readAutoUpdateFailure(plan) {
|
|
|
37713
37651
|
if (!path) return null;
|
|
37714
37652
|
try {
|
|
37715
37653
|
const parsed = JSON.parse(
|
|
37716
|
-
|
|
37654
|
+
readFileSync17(path, "utf8")
|
|
37717
37655
|
);
|
|
37718
37656
|
if ((parsed.kind === "npm-global" || parsed.kind === "python-sidecar") && typeof parsed.packageSpec === "string" && typeof parsed.failedAt === "string" && typeof parsed.exitCode === "number" && typeof parsed.manualCommand === "string") {
|
|
37719
37657
|
return parsed;
|
|
@@ -37799,7 +37737,7 @@ function installedPackageVersion(versionDir) {
|
|
|
37799
37737
|
"package.json"
|
|
37800
37738
|
);
|
|
37801
37739
|
try {
|
|
37802
|
-
const parsed = JSON.parse(
|
|
37740
|
+
const parsed = JSON.parse(readFileSync17(packageJsonPath, "utf8"));
|
|
37803
37741
|
return typeof parsed.version === "string" ? safeVersionSegment(parsed.version) : "";
|
|
37804
37742
|
} catch {
|
|
37805
37743
|
return "";
|
|
@@ -39059,7 +38997,7 @@ import {
|
|
|
39059
38997
|
chmodSync,
|
|
39060
38998
|
existsSync as existsSync18,
|
|
39061
38999
|
mkdtempSync,
|
|
39062
|
-
readFileSync as
|
|
39000
|
+
readFileSync as readFileSync18,
|
|
39063
39001
|
writeFileSync as writeFileSync19
|
|
39064
39002
|
} from "fs";
|
|
39065
39003
|
import { tmpdir as tmpdir5 } from "os";
|
|
@@ -41188,7 +41126,7 @@ function readJsonArgument(raw, flagName) {
|
|
|
41188
41126
|
throw new Error(`Invalid ${flagName} value: empty @file path.`);
|
|
41189
41127
|
}
|
|
41190
41128
|
try {
|
|
41191
|
-
return
|
|
41129
|
+
return readFileSync18(resolveAtFilePath(filePath), "utf8").replace(
|
|
41192
41130
|
/^\uFEFF/,
|
|
41193
41131
|
""
|
|
41194
41132
|
);
|
package/dist/index.d.mts
CHANGED
|
@@ -1026,8 +1026,6 @@ interface PlayRunListItem {
|
|
|
1026
1026
|
startTime?: string | null;
|
|
1027
1027
|
/** Unix epoch milliseconds when the run started, returned by normalized V2 run summaries. */
|
|
1028
1028
|
startedAt?: number | string | null;
|
|
1029
|
-
/** Unix epoch milliseconds when the run was created. */
|
|
1030
|
-
createdAt?: number | string | null;
|
|
1031
1029
|
/** ISO 8601 timestamp when the run finished. */
|
|
1032
1030
|
closeTime?: string | null;
|
|
1033
1031
|
/** Unix epoch milliseconds when the run finished, returned by normalized V2 run summaries. */
|
|
@@ -2439,8 +2437,6 @@ type MonitorListEntry = {
|
|
|
2439
2437
|
monitor_key?: string;
|
|
2440
2438
|
status?: string;
|
|
2441
2439
|
tool?: string;
|
|
2442
|
-
/** Generic provider-authored event category for this deployed monitor. */
|
|
2443
|
-
type?: string;
|
|
2444
2440
|
name?: string;
|
|
2445
2441
|
configured?: boolean;
|
|
2446
2442
|
active?: boolean;
|
package/dist/index.d.ts
CHANGED
|
@@ -1026,8 +1026,6 @@ interface PlayRunListItem {
|
|
|
1026
1026
|
startTime?: string | null;
|
|
1027
1027
|
/** Unix epoch milliseconds when the run started, returned by normalized V2 run summaries. */
|
|
1028
1028
|
startedAt?: number | string | null;
|
|
1029
|
-
/** Unix epoch milliseconds when the run was created. */
|
|
1030
|
-
createdAt?: number | string | null;
|
|
1031
1029
|
/** ISO 8601 timestamp when the run finished. */
|
|
1032
1030
|
closeTime?: string | null;
|
|
1033
1031
|
/** Unix epoch milliseconds when the run finished, returned by normalized V2 run summaries. */
|
|
@@ -2439,8 +2437,6 @@ type MonitorListEntry = {
|
|
|
2439
2437
|
monitor_key?: string;
|
|
2440
2438
|
status?: string;
|
|
2441
2439
|
tool?: string;
|
|
2442
|
-
/** Generic provider-authored event category for this deployed monitor. */
|
|
2443
|
-
type?: string;
|
|
2444
2440
|
name?: string;
|
|
2445
2441
|
configured?: boolean;
|
|
2446
2442
|
active?: boolean;
|
package/dist/index.js
CHANGED
|
@@ -832,7 +832,7 @@ var SDK_RELEASE = {
|
|
|
832
832
|
// available at toolResponse.rawV2 while toolResponse.raw and all declared
|
|
833
833
|
// getters keep their established compatibility behavior.
|
|
834
834
|
// 0.3.1 deprecated the legacy `deepline enrich` command in favor of Plays.
|
|
835
|
-
version: "0.3.
|
|
835
|
+
version: "0.3.68",
|
|
836
836
|
updateSummary: "Automatic CLI updates are now enabled by default. To opt out, run `deepline settings autoupdate off`; use `deepline settings autoupdate on` to re-enable updates or `deepline settings autoupdate pin <version>` to hold an exact release. This release also adds raw-v2 tool responses at toolResponse.rawV2 while preserving existing toolResponse.raw and declared getters.",
|
|
837
837
|
packageCapabilities: {
|
|
838
838
|
updatePreferences: 1
|
package/dist/index.mjs
CHANGED
|
@@ -744,7 +744,7 @@ var SDK_RELEASE = {
|
|
|
744
744
|
// available at toolResponse.rawV2 while toolResponse.raw and all declared
|
|
745
745
|
// getters keep their established compatibility behavior.
|
|
746
746
|
// 0.3.1 deprecated the legacy `deepline enrich` command in favor of Plays.
|
|
747
|
-
version: "0.3.
|
|
747
|
+
version: "0.3.68",
|
|
748
748
|
updateSummary: "Automatic CLI updates are now enabled by default. To opt out, run `deepline settings autoupdate off`; use `deepline settings autoupdate on` to re-enable updates or `deepline settings autoupdate pin <version>` to hold an exact release. This release also adds raw-v2 tool responses at toolResponse.rawV2 while preserving existing toolResponse.raw and declared getters.",
|
|
749
749
|
packageCapabilities: {
|
|
750
750
|
updatePreferences: 1
|