primitive-admin 1.1.0-alpha.80 → 1.1.0-alpha.82
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/README.md +5 -5
- package/assets/skill/skills/primitive-platform/SKILL.md +23 -11
- package/dist/bin/primitive.js +14 -15
- package/dist/bin/primitive.js.map +1 -1
- package/dist/src/commands/databases.js +3 -5
- package/dist/src/commands/databases.js.map +1 -1
- package/dist/src/commands/documents.js +163 -21
- package/dist/src/commands/documents.js.map +1 -1
- package/dist/src/commands/functions.js +736 -12
- package/dist/src/commands/functions.js.map +1 -1
- package/dist/src/commands/prompts.js +19 -2
- package/dist/src/commands/prompts.js.map +1 -1
- package/dist/src/commands/sync-app-settings.js +2 -2
- package/dist/src/commands/sync-app-settings.js.map +1 -1
- package/dist/src/commands/sync.js +29 -27
- package/dist/src/commands/sync.js.map +1 -1
- package/dist/src/commands/webhooks.d.ts +29 -0
- package/dist/src/commands/webhooks.js +118 -54
- package/dist/src/commands/webhooks.js.map +1 -1
- package/dist/src/commands/workflows.d.ts +1 -29
- package/dist/src/commands/workflows.js +8 -109
- package/dist/src/commands/workflows.js.map +1 -1
- package/dist/src/lib/api-client.d.ts +119 -3
- package/dist/src/lib/api-client.js +166 -5
- package/dist/src/lib/api-client.js.map +1 -1
- package/dist/src/lib/config-object-descriptor.js +12 -4
- package/dist/src/lib/config-object-descriptor.js.map +1 -1
- package/dist/src/lib/env-resolver-core.d.ts +24 -19
- package/dist/src/lib/env-resolver-core.js +35 -54
- package/dist/src/lib/env-resolver-core.js.map +1 -1
- package/dist/src/lib/function-db-types.js +15 -0
- package/dist/src/lib/function-db-types.js.map +1 -1
- package/dist/src/lib/function-document-types.js +4 -0
- package/dist/src/lib/function-document-types.js.map +1 -1
- package/dist/src/lib/function-log-tail.d.ts +51 -2
- package/dist/src/lib/function-log-tail.js +160 -13
- package/dist/src/lib/function-log-tail.js.map +1 -1
- package/dist/src/lib/function-run.d.ts +271 -0
- package/dist/src/lib/function-run.js +378 -0
- package/dist/src/lib/function-run.js.map +1 -0
- package/dist/src/lib/function-schema-codegen.d.ts +28 -0
- package/dist/src/lib/function-schema-codegen.js +41 -10
- package/dist/src/lib/function-schema-codegen.js.map +1 -1
- package/dist/src/lib/function-sync.d.ts +9 -4
- package/dist/src/lib/function-sync.js +29 -7
- package/dist/src/lib/function-sync.js.map +1 -1
- package/dist/src/lib/generated-config-surfaces.d.ts +555 -19
- package/dist/src/lib/generated-config-surfaces.js +1826 -80
- package/dist/src/lib/generated-config-surfaces.js.map +1 -1
- package/dist/src/lib/generated-sdk-types.d.ts +1 -1
- package/dist/src/lib/generated-sdk-types.js +1 -1
- package/dist/src/lib/generated-sdk-types.js.map +1 -1
- package/dist/src/lib/local-test-cases.js +2 -2
- package/dist/src/lib/local-test-cases.js.map +1 -1
- package/dist/src/lib/prompt-schema-codegen.d.ts +94 -0
- package/dist/src/lib/prompt-schema-codegen.js +212 -0
- package/dist/src/lib/prompt-schema-codegen.js.map +1 -0
- package/dist/src/lib/snapshot-manifest-layout.d.ts +61 -0
- package/dist/src/lib/snapshot-manifest-layout.js +70 -0
- package/dist/src/lib/snapshot-manifest-layout.js.map +1 -0
- package/dist/src/lib/step-run-table.d.ts +43 -0
- package/dist/src/lib/step-run-table.js +129 -0
- package/dist/src/lib/step-run-table.js.map +1 -0
- package/dist/src/lib/swift-codegen/banners.d.ts +18 -0
- package/dist/src/lib/swift-codegen/banners.js +19 -0
- package/dist/src/lib/swift-codegen/banners.js.map +1 -0
- package/dist/src/lib/swift-codegen/dbGenerator.js +11 -7
- package/dist/src/lib/swift-codegen/dbGenerator.js.map +1 -1
- package/dist/src/lib/swift-codegen/functionGenerator.d.ts +125 -0
- package/dist/src/lib/swift-codegen/functionGenerator.js +423 -0
- package/dist/src/lib/swift-codegen/functionGenerator.js.map +1 -0
- package/dist/src/lib/swift-codegen/generator.d.ts +6 -0
- package/dist/src/lib/swift-codegen/generator.js +21 -10
- package/dist/src/lib/swift-codegen/generator.js.map +1 -1
- package/dist/src/lib/swift-codegen/schemaToSwift.d.ts +15 -0
- package/dist/src/lib/swift-codegen/schemaToSwift.js +21 -4
- package/dist/src/lib/swift-codegen/schemaToSwift.js.map +1 -1
- package/dist/src/lib/sync-paths.d.ts +19 -14
- package/dist/src/lib/sync-paths.js +26 -24
- package/dist/src/lib/sync-paths.js.map +1 -1
- package/dist/src/lib/webhook-deliver.d.ts +209 -0
- package/dist/src/lib/webhook-deliver.js +519 -0
- package/dist/src/lib/webhook-deliver.js.map +1 -0
- package/dist/src/lib/workflow-toml-validator.d.ts +9 -5
- package/dist/src/lib/workflow-toml-validator.js +18 -10
- package/dist/src/lib/workflow-toml-validator.js.map +1 -1
- package/package.json +2 -2
|
@@ -1,2 +1,31 @@
|
|
|
1
1
|
import { Command } from "commander";
|
|
2
|
+
import { type FetchLike, type WebhookDeliverClient } from "../lib/webhook-deliver.js";
|
|
2
3
|
export declare function registerWebhooksCommands(program: Command): void;
|
|
4
|
+
/** The transports `webhooks test` uses, injectable so its wiring is testable. */
|
|
5
|
+
export interface WebhooksTestDeps {
|
|
6
|
+
/** Defaults to a real `ApiClient`. */
|
|
7
|
+
client?: WebhookDeliverClient;
|
|
8
|
+
/**
|
|
9
|
+
* Defaults to the CLI's own transport — unauthenticated, because the receive
|
|
10
|
+
* endpoint is not an admin route, but localhost-HTTPS-aware like every other
|
|
11
|
+
* request the CLI makes.
|
|
12
|
+
*/
|
|
13
|
+
fetchImpl?: FetchLike;
|
|
14
|
+
/** Defaults to the active environment's API base URL. */
|
|
15
|
+
serverUrl?: () => string;
|
|
16
|
+
sleep?: (ms: number) => Promise<void>;
|
|
17
|
+
}
|
|
18
|
+
/**
|
|
19
|
+
* `primitive webhooks test [--deliver]` — the command body, exported so its
|
|
20
|
+
* wiring and its outcome mapping are testable without a network (#3321).
|
|
21
|
+
*
|
|
22
|
+
* Returns the process exit code rather than calling `process.exit` itself:
|
|
23
|
+
* `0` for a signed preview, and in delivered mode `0` only when a dispatch was
|
|
24
|
+
* positively confirmed.
|
|
25
|
+
*/
|
|
26
|
+
export declare function runWebhooksTest(webhookId: string, options: {
|
|
27
|
+
app?: string;
|
|
28
|
+
payload?: string;
|
|
29
|
+
deliver?: boolean;
|
|
30
|
+
json?: boolean;
|
|
31
|
+
}, deps?: WebhooksTestDeps): Promise<number>;
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import { readFileSync, statSync } from "fs";
|
|
2
2
|
import { ApiClient } from "../lib/api-client.js";
|
|
3
|
-
import { resolveAppId } from "../lib/config.js";
|
|
3
|
+
import { resolveAppId, getServerUrl } from "../lib/config.js";
|
|
4
|
+
import { deliverWebhookTest, } from "../lib/webhook-deliver.js";
|
|
4
5
|
import { success, error, info, keyValue, result as printResult, formatTable, formatId, formatDate, formatStatus, json, divider, dim, warn, } from "../lib/output.js";
|
|
5
6
|
import { assertSupportedFlags, buildWebhookEnvelope, } from "../lib/log-inspection.js";
|
|
6
7
|
import { confirmPrompt } from "../lib/confirm-prompt.js";
|
|
@@ -369,12 +370,21 @@ Reclaiming the key and the slot means hard-deleting the row:
|
|
|
369
370
|
.option("--payload <json>", "Test payload as JSON, signed verbatim. Pass the event " +
|
|
370
371
|
"object directly (e.g. '{\"type\":\"event\",\"data\":{…}}'); it is used " +
|
|
371
372
|
"as-is. Omit it to sign a canned webhook.test ping.")
|
|
373
|
+
.option("--deliver", "Post the signed payload to the webhook's real receive endpoint, " +
|
|
374
|
+
"firing the function (or workflow) for real and reporting the run")
|
|
372
375
|
.option("--json", "Output as JSON")
|
|
373
376
|
.addHelpText("after", `
|
|
374
|
-
|
|
375
|
-
body
|
|
376
|
-
|
|
377
|
-
|
|
377
|
+
By default this command only SIGNS: it prints the signature headers and the
|
|
378
|
+
signed body, posts nothing, and so starts no run and records no delivery.
|
|
379
|
+
|
|
380
|
+
--deliver posts that signed body to the webhook's receive endpoint,
|
|
381
|
+
POST /app/{appId}/webhook/{webhookKey} — the same unauthenticated path a
|
|
382
|
+
provider uses, so signature verification, handshake rules, deduplication and
|
|
383
|
+
dispatch all run for real. That is a real delivery: a real event row is written
|
|
384
|
+
and the signed body's dedup key is spent (permanently on the 'github' scheme).
|
|
385
|
+
It reports the delivery's event id and the run id, and exits non-zero unless a
|
|
386
|
+
dispatch was positively confirmed; --json carries an outcome of
|
|
387
|
+
"dispatched" | "refused" | "unconfirmed".
|
|
378
388
|
|
|
379
389
|
The value of --payload is signed exactly as given (WYSIWYG). A JSON object is
|
|
380
390
|
used as the test body verbatim, so a wrapped payload such as '{"payload":{…}}'
|
|
@@ -383,55 +393,9 @@ passing a non-object such as an array) signs the canned
|
|
|
383
393
|
{"type":"webhook.test", …} ping.
|
|
384
394
|
`)
|
|
385
395
|
.action(async (webhookId, options) => {
|
|
386
|
-
const
|
|
387
|
-
|
|
388
|
-
|
|
389
|
-
try {
|
|
390
|
-
payload = JSON.parse(options.payload);
|
|
391
|
-
}
|
|
392
|
-
catch {
|
|
393
|
-
error("Invalid JSON in --payload");
|
|
394
|
-
process.exit(1);
|
|
395
|
-
}
|
|
396
|
-
}
|
|
397
|
-
const client = new ApiClient();
|
|
398
|
-
try {
|
|
399
|
-
const result = await client.testWebhook(resolvedAppId, webhookId, payload);
|
|
400
|
-
if (options.json) {
|
|
401
|
-
json(result);
|
|
402
|
-
return;
|
|
403
|
-
}
|
|
404
|
-
if (result.success) {
|
|
405
|
-
success("Test payload signed. Nothing was delivered — post the signed body " +
|
|
406
|
-
"(--json shows the exact rawBody) with these headers to the " +
|
|
407
|
-
"receive endpoint to trigger the workflow.");
|
|
408
|
-
if (result.signatureHeaders) {
|
|
409
|
-
divider();
|
|
410
|
-
info("Generated Signature Headers:");
|
|
411
|
-
for (const [header, value] of Object.entries(result.signatureHeaders)) {
|
|
412
|
-
keyValue(` ${header}`, String(value));
|
|
413
|
-
}
|
|
414
|
-
}
|
|
415
|
-
if (result.payload) {
|
|
416
|
-
divider();
|
|
417
|
-
info("Test Payload:");
|
|
418
|
-
console.log(JSON.stringify(result.payload, null, 2));
|
|
419
|
-
}
|
|
420
|
-
}
|
|
421
|
-
else {
|
|
422
|
-
error(`Test failed: ${result.message || result.errorCode || "unknown error"}`);
|
|
423
|
-
}
|
|
424
|
-
}
|
|
425
|
-
catch (err) {
|
|
426
|
-
// The server refuses a preview it cannot sign with a coded 400 — the
|
|
427
|
-
// scheme holds only public key material, the row still stores a raw
|
|
428
|
-
// secret, the signing secret is unset or unresolvable (#2445). Print
|
|
429
|
-
// the machine-readable code alongside the message, the established
|
|
430
|
-
// convention here: the prose explains, the code is what an operator
|
|
431
|
-
// searches for or reports.
|
|
432
|
-
error(err?.code ? `${err.message} (${err.code})` : err.message);
|
|
433
|
-
process.exit(1);
|
|
434
|
-
}
|
|
396
|
+
const code = await runWebhooksTest(webhookId, options);
|
|
397
|
+
if (code !== 0)
|
|
398
|
+
process.exit(code);
|
|
435
399
|
});
|
|
436
400
|
// Verify a captured delivery's signature
|
|
437
401
|
webhooks
|
|
@@ -559,4 +523,104 @@ script.
|
|
|
559
523
|
}
|
|
560
524
|
});
|
|
561
525
|
}
|
|
526
|
+
/**
|
|
527
|
+
* `primitive webhooks test [--deliver]` — the command body, exported so its
|
|
528
|
+
* wiring and its outcome mapping are testable without a network (#3321).
|
|
529
|
+
*
|
|
530
|
+
* Returns the process exit code rather than calling `process.exit` itself:
|
|
531
|
+
* `0` for a signed preview, and in delivered mode `0` only when a dispatch was
|
|
532
|
+
* positively confirmed.
|
|
533
|
+
*/
|
|
534
|
+
export async function runWebhooksTest(webhookId, options, deps = {}) {
|
|
535
|
+
const resolvedAppId = resolveAppId(undefined, options);
|
|
536
|
+
let payload = {};
|
|
537
|
+
if (options.payload) {
|
|
538
|
+
try {
|
|
539
|
+
payload = JSON.parse(options.payload);
|
|
540
|
+
}
|
|
541
|
+
catch {
|
|
542
|
+
error("Invalid JSON in --payload");
|
|
543
|
+
return 1;
|
|
544
|
+
}
|
|
545
|
+
}
|
|
546
|
+
const client = (deps.client ?? new ApiClient());
|
|
547
|
+
if (options.deliver) {
|
|
548
|
+
const result = await deliverWebhookTest({
|
|
549
|
+
appId: resolvedAppId,
|
|
550
|
+
webhookId,
|
|
551
|
+
payload,
|
|
552
|
+
serverUrl: (deps.serverUrl ?? getServerUrl)(),
|
|
553
|
+
}, {
|
|
554
|
+
client,
|
|
555
|
+
...(deps.fetchImpl ? { fetchImpl: deps.fetchImpl } : {}),
|
|
556
|
+
...(deps.sleep ? { sleep: deps.sleep } : {}),
|
|
557
|
+
// Said before anything is delivered, and in the terminal rather than
|
|
558
|
+
// only in the guide: a diagnostic that mutates the app has to announce
|
|
559
|
+
// it where the user is looking (#3321 criterion 4). It goes to stderr,
|
|
560
|
+
// so `--json` keeps one clean object on stdout.
|
|
561
|
+
onBeforeDeliver: (notice) => notice.forEach((line) => warn(line)),
|
|
562
|
+
});
|
|
563
|
+
if (options.json) {
|
|
564
|
+
json(result);
|
|
565
|
+
}
|
|
566
|
+
else if (result.outcome === "dispatched") {
|
|
567
|
+
success(result.headline);
|
|
568
|
+
result.details.forEach((line) => info(line));
|
|
569
|
+
}
|
|
570
|
+
else {
|
|
571
|
+
// A refusal the server explained keeps the established convention: the
|
|
572
|
+
// prose explains, the code is what an operator searches for (#2445).
|
|
573
|
+
if (result.refusal) {
|
|
574
|
+
error(result.refusal.code
|
|
575
|
+
? `${result.refusal.message} (${result.refusal.code})`
|
|
576
|
+
: result.refusal.message);
|
|
577
|
+
if (result.delivery === null)
|
|
578
|
+
info("Nothing was delivered.");
|
|
579
|
+
}
|
|
580
|
+
else {
|
|
581
|
+
error(result.headline);
|
|
582
|
+
}
|
|
583
|
+
result.details.forEach((line) => info(line));
|
|
584
|
+
}
|
|
585
|
+
return result.outcome === "dispatched" ? 0 : 1;
|
|
586
|
+
}
|
|
587
|
+
try {
|
|
588
|
+
const result = await client.testWebhook(resolvedAppId, webhookId, payload);
|
|
589
|
+
if (options.json) {
|
|
590
|
+
json(result);
|
|
591
|
+
return 0;
|
|
592
|
+
}
|
|
593
|
+
if (result.success) {
|
|
594
|
+
success("Test payload signed. Nothing was delivered — re-run with --deliver " +
|
|
595
|
+
"to post it to the receive endpoint for real, or post the signed " +
|
|
596
|
+
"body (--json shows the exact rawBody) with these headers yourself.");
|
|
597
|
+
if (result.signatureHeaders) {
|
|
598
|
+
divider();
|
|
599
|
+
info("Generated Signature Headers:");
|
|
600
|
+
for (const [header, value] of Object.entries(result.signatureHeaders)) {
|
|
601
|
+
keyValue(` ${header}`, String(value));
|
|
602
|
+
}
|
|
603
|
+
}
|
|
604
|
+
if (result.payload) {
|
|
605
|
+
divider();
|
|
606
|
+
info("Test Payload:");
|
|
607
|
+
console.log(JSON.stringify(result.payload, null, 2));
|
|
608
|
+
}
|
|
609
|
+
}
|
|
610
|
+
else {
|
|
611
|
+
error(`Test failed: ${result.message || result.errorCode || "unknown error"}`);
|
|
612
|
+
}
|
|
613
|
+
return 0;
|
|
614
|
+
}
|
|
615
|
+
catch (err) {
|
|
616
|
+
// The server refuses a preview it cannot sign with a coded 400 — the
|
|
617
|
+
// scheme holds only public key material, the row still stores a raw
|
|
618
|
+
// secret, the signing secret is unset or unresolvable (#2445). Print
|
|
619
|
+
// the machine-readable code alongside the message, the established
|
|
620
|
+
// convention here: the prose explains, the code is what an operator
|
|
621
|
+
// searches for or reports.
|
|
622
|
+
error(err?.code ? `${err.message} (${err.code})` : err.message);
|
|
623
|
+
return 1;
|
|
624
|
+
}
|
|
625
|
+
}
|
|
562
626
|
//# sourceMappingURL=webhooks.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"webhooks.js","sourceRoot":"","sources":["../../../src/commands/webhooks.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"webhooks.js","sourceRoot":"","sources":["../../../src/commands/webhooks.ts"],"names":[],"mappings":"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"}
|
|
@@ -48,17 +48,7 @@ export declare function isPreviewWaitTerminalStatus(s: unknown): boolean;
|
|
|
48
48
|
*/
|
|
49
49
|
export declare function previewWaitOutcome(status: unknown): "completed" | "failed" | "terminated" | "skipped" | "apply" | "missing" | "timeout";
|
|
50
50
|
export declare function renderRunStatusStepResults(stepResults: any[]): string[];
|
|
51
|
-
|
|
52
|
-
* #2771 — how long a step row has been going.
|
|
53
|
-
*
|
|
54
|
-
* A step that is still executing is persisted with status `running` and a
|
|
55
|
-
* `durationMs` of 0 (the column is required; the real value is written when the
|
|
56
|
-
* step ends). Printing that 0 hides the one number that matters while a run is
|
|
57
|
-
* in flight — how long the current step has been stuck — so a running row is
|
|
58
|
-
* measured from its `startedAt` instead. Finished rows keep their stored
|
|
59
|
-
* duration. Exported for testability.
|
|
60
|
-
*/
|
|
61
|
-
export declare function stepRunDisplayDurationMs(step: any, now?: number): number | null;
|
|
51
|
+
export { annotateStepGaps, stepRunDisplayDurationMs, } from "../lib/step-run-table.js";
|
|
62
52
|
/**
|
|
63
53
|
* #2771 — the step lines `workflows runs status` should render.
|
|
64
54
|
*
|
|
@@ -70,24 +60,6 @@ export declare function stepRunDisplayDurationMs(step: any, now?: number): numbe
|
|
|
70
60
|
* results always win when it has them. Exported for testability.
|
|
71
61
|
*/
|
|
72
62
|
export declare function stepResultsForRunStatus(instanceStepResults: any[] | undefined | null, persistedStepRuns: any[] | undefined | null, now?: number): any[];
|
|
73
|
-
/**
|
|
74
|
-
* #1367 — annotate step-run rows with the inter-step gap: the wall-clock time
|
|
75
|
-
* between the previous step's `endedAt` and this step's `startedAt`. Sorts by
|
|
76
|
-
* `startedAt` when every row has a parseable one (tie-break `stepIndex`),
|
|
77
|
-
* otherwise by `stepIndex` for the whole list — the ordering mode must be
|
|
78
|
-
* chosen once for all rows, not per pair: a per-pair timestamp-vs-index
|
|
79
|
-
* fallback is not transitive when some rows lack a timestamp (A<B by index,
|
|
80
|
-
* B<C by index, C<A by time), and a non-transitive comparator leaves
|
|
81
|
-
* Array.prototype.sort free to return an arbitrary order, computing gaps
|
|
82
|
-
* against the wrong predecessor. The first step has no predecessor, so its
|
|
83
|
-
* `gapMs` is `null`. A gap is only meaningful when both adjacent timestamps
|
|
84
|
-
* parse and the gap is positive. When the immediate predecessor lacks a valid
|
|
85
|
-
* `endedAt`, the gap is left `null` rather than measured from an older,
|
|
86
|
-
* non-adjacent step — otherwise a later step could raise a false stall
|
|
87
|
-
* warning against a step it does not actually follow. Exported for
|
|
88
|
-
* testability.
|
|
89
|
-
*/
|
|
90
|
-
export declare function annotateStepGaps(steps: any[]): any[];
|
|
91
63
|
/**
|
|
92
64
|
* #1367 — compute min / p50 / p95 / max over a set of latency samples (ms).
|
|
93
65
|
* Ignores non-finite values. Returns `null` when there are no valid samples.
|
|
@@ -121,25 +121,13 @@ export function renderRunStatusStepResults(stepResults) {
|
|
|
121
121
|
}
|
|
122
122
|
return lines;
|
|
123
123
|
}
|
|
124
|
-
|
|
125
|
-
|
|
126
|
-
|
|
127
|
-
|
|
128
|
-
|
|
129
|
-
|
|
130
|
-
|
|
131
|
-
* measured from its `startedAt` instead. Finished rows keep their stored
|
|
132
|
-
* duration. Exported for testability.
|
|
133
|
-
*/
|
|
134
|
-
export function stepRunDisplayDurationMs(step, now = Date.now()) {
|
|
135
|
-
const stored = typeof step?.durationMs === "number" ? step.durationMs : null;
|
|
136
|
-
if (step?.status !== "running")
|
|
137
|
-
return stored;
|
|
138
|
-
const started = step?.startedAt ? new Date(step.startedAt).getTime() : NaN;
|
|
139
|
-
if (Number.isNaN(started))
|
|
140
|
-
return stored;
|
|
141
|
-
return Math.max(0, now - started);
|
|
142
|
-
}
|
|
124
|
+
// #3348 — the step table, the gap annotation and the running-step duration now
|
|
125
|
+
// live in `lib/step-run-table.ts`, shared with `functions runs steps`: a
|
|
126
|
+
// function run's steps are the same rows, and the two views must not be two
|
|
127
|
+
// tables that merely resemble each other. Re-exported from here because this is
|
|
128
|
+
// where the two helpers were first exported for testability.
|
|
129
|
+
export { annotateStepGaps, stepRunDisplayDurationMs, } from "../lib/step-run-table.js";
|
|
130
|
+
import { renderStepRunTable, stepRunDisplayDurationMs, } from "../lib/step-run-table.js";
|
|
143
131
|
/**
|
|
144
132
|
* #2771 — the step lines `workflows runs status` should render.
|
|
145
133
|
*
|
|
@@ -163,53 +151,6 @@ export function stepResultsForRunStatus(instanceStepResults, persistedStepRuns,
|
|
|
163
151
|
output: row?.output,
|
|
164
152
|
}));
|
|
165
153
|
}
|
|
166
|
-
/**
|
|
167
|
-
* #1367 — annotate step-run rows with the inter-step gap: the wall-clock time
|
|
168
|
-
* between the previous step's `endedAt` and this step's `startedAt`. Sorts by
|
|
169
|
-
* `startedAt` when every row has a parseable one (tie-break `stepIndex`),
|
|
170
|
-
* otherwise by `stepIndex` for the whole list — the ordering mode must be
|
|
171
|
-
* chosen once for all rows, not per pair: a per-pair timestamp-vs-index
|
|
172
|
-
* fallback is not transitive when some rows lack a timestamp (A<B by index,
|
|
173
|
-
* B<C by index, C<A by time), and a non-transitive comparator leaves
|
|
174
|
-
* Array.prototype.sort free to return an arbitrary order, computing gaps
|
|
175
|
-
* against the wrong predecessor. The first step has no predecessor, so its
|
|
176
|
-
* `gapMs` is `null`. A gap is only meaningful when both adjacent timestamps
|
|
177
|
-
* parse and the gap is positive. When the immediate predecessor lacks a valid
|
|
178
|
-
* `endedAt`, the gap is left `null` rather than measured from an older,
|
|
179
|
-
* non-adjacent step — otherwise a later step could raise a false stall
|
|
180
|
-
* warning against a step it does not actually follow. Exported for
|
|
181
|
-
* testability.
|
|
182
|
-
*/
|
|
183
|
-
export function annotateStepGaps(steps) {
|
|
184
|
-
const rows = [...(steps || [])];
|
|
185
|
-
const allTimed = rows.every((r) => r?.startedAt && !Number.isNaN(new Date(r.startedAt).getTime()));
|
|
186
|
-
rows.sort((a, b) => {
|
|
187
|
-
if (allTimed) {
|
|
188
|
-
const sa = new Date(a.startedAt).getTime();
|
|
189
|
-
const sb = new Date(b.startedAt).getTime();
|
|
190
|
-
if (sa !== sb)
|
|
191
|
-
return sa - sb;
|
|
192
|
-
}
|
|
193
|
-
return (a?.stepIndex ?? 0) - (b?.stepIndex ?? 0);
|
|
194
|
-
});
|
|
195
|
-
let prevEnded = null;
|
|
196
|
-
for (const row of rows) {
|
|
197
|
-
const started = row?.startedAt ? new Date(row.startedAt).getTime() : NaN;
|
|
198
|
-
if (prevEnded != null && !Number.isNaN(started)) {
|
|
199
|
-
const gap = started - prevEnded;
|
|
200
|
-
row.gapMs = gap > 0 ? gap : 0;
|
|
201
|
-
}
|
|
202
|
-
else {
|
|
203
|
-
row.gapMs = null;
|
|
204
|
-
}
|
|
205
|
-
// Only genuinely adjacent steps yield a gap: if this step lacks a valid
|
|
206
|
-
// `endedAt`, clear the predecessor so the NEXT step's gap is left null
|
|
207
|
-
// instead of being measured from a non-adjacent earlier step.
|
|
208
|
-
const ended = row?.endedAt ? new Date(row.endedAt).getTime() : NaN;
|
|
209
|
-
prevEnded = Number.isNaN(ended) ? null : ended;
|
|
210
|
-
}
|
|
211
|
-
return rows;
|
|
212
|
-
}
|
|
213
154
|
/**
|
|
214
155
|
* #1367 — compute min / p50 / p95 / max over a set of latency samples (ms).
|
|
215
156
|
* Ignores non-finite values. Returns `null` when there are no valid samples.
|
|
@@ -1236,49 +1177,7 @@ Reclaiming the key means hard-deleting the row and its cascade:
|
|
|
1236
1177
|
info("No step runs found.");
|
|
1237
1178
|
return;
|
|
1238
1179
|
}
|
|
1239
|
-
|
|
1240
|
-
// next starting. Only surfaced above a 1s threshold so normal
|
|
1241
|
-
// back-to-back steps stay quiet; a large gap flags a mid-run stall.
|
|
1242
|
-
const STEP_GAP_THRESHOLD_MS = 1000;
|
|
1243
|
-
// #2771 — an in-flight run also returns the step executing right now
|
|
1244
|
-
// (status `running`, duration not written yet). Show its elapsed time
|
|
1245
|
-
// so a step stuck retrying is visible as such.
|
|
1246
|
-
const rows = annotateStepGaps(items).map((row) => ({
|
|
1247
|
-
...row,
|
|
1248
|
-
displayDurationMs: stepRunDisplayDurationMs(row),
|
|
1249
|
-
}));
|
|
1250
|
-
console.log(formatTable(rows, [
|
|
1251
|
-
{ header: "STEP", key: "stepId" },
|
|
1252
|
-
{ header: "KIND", key: "stepKind" },
|
|
1253
|
-
{
|
|
1254
|
-
header: "STATUS",
|
|
1255
|
-
key: "status",
|
|
1256
|
-
format: (v) => v === "completed" ? chalk.green(v) :
|
|
1257
|
-
v === "failed" ? chalk.red(v) :
|
|
1258
|
-
v === "skipped" ? chalk.gray(v) :
|
|
1259
|
-
v === "error_captured" ? chalk.yellow(v) :
|
|
1260
|
-
// #2771 — the step executing right now.
|
|
1261
|
-
v === "running" ? chalk.cyan(v) : v,
|
|
1262
|
-
},
|
|
1263
|
-
{
|
|
1264
|
-
header: "GAP",
|
|
1265
|
-
key: "gapMs",
|
|
1266
|
-
format: (v) => typeof v === "number" && v >= STEP_GAP_THRESHOLD_MS
|
|
1267
|
-
? chalk.yellow(formatDuration(v))
|
|
1268
|
-
: chalk.dim("-"),
|
|
1269
|
-
},
|
|
1270
|
-
{ header: "DURATION", key: "displayDurationMs", format: formatDuration },
|
|
1271
|
-
{
|
|
1272
|
-
header: "TOKENS",
|
|
1273
|
-
key: "totalTokens",
|
|
1274
|
-
format: (v) => v ? String(v).replace(/\B(?=(\d{3})+(?!\d))/g, ",") : "-",
|
|
1275
|
-
},
|
|
1276
|
-
{
|
|
1277
|
-
header: "ERROR",
|
|
1278
|
-
key: "error",
|
|
1279
|
-
format: (v) => v ? (v.length > 60 ? v.slice(0, 57) + "..." : v) : "",
|
|
1280
|
-
},
|
|
1281
|
-
]));
|
|
1180
|
+
console.log(renderStepRunTable(items));
|
|
1282
1181
|
}
|
|
1283
1182
|
catch (err) {
|
|
1284
1183
|
error(err.message);
|