deepline 0.3.303 → 0.3.304
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/release.ts +1 -1
- package/dist/bundling-sources/shared_libs/play-runtime/app-runtime-api.ts +31 -1
- package/dist/bundling-sources/shared_libs/play-runtime/execute-server-timing.ts +30 -0
- package/dist/bundling-sources/shared_libs/play-runtime/resource-governor.ts +144 -1
- package/dist/bundling-sources/shared_libs/play-runtime/scheduler-backends/postgres.ts +1 -0
- package/dist/cli/auth-UBWZC26A.js +31 -0
- package/dist/cli/{auth-337SVWQD.mjs → auth-YKJHKHIQ.mjs} +4 -4
- package/dist/cli/{billing-CVQURTWQ.js → billing-EOIKAZES.js} +70 -70
- package/dist/cli/{billing-SVGYQSJI.mjs → billing-XEEW5SV2.mjs} +4 -4
- package/dist/cli/{chunk-XKW6HTWO.mjs → chunk-35SCWK4Y.mjs} +1 -1
- package/dist/cli/{chunk-PUKK7SZX.mjs → chunk-7HYH533G.mjs} +1 -1
- package/dist/cli/{chunk-P2KELOST.js → chunk-7NQJDQPH.js} +48 -48
- package/dist/cli/{chunk-MTICVDNY.mjs → chunk-7OXXCRGZ.mjs} +1 -1
- package/dist/cli/{chunk-JWUOPLAR.mjs → chunk-7QV545D7.mjs} +1 -1
- package/dist/cli/{chunk-XXQYOQWO.mjs → chunk-AOUGAM72.mjs} +2 -2
- package/dist/cli/{chunk-EAIGGEV5.js → chunk-BBXO7APG.js} +6 -6
- package/dist/cli/{chunk-GQUI3NYN.js → chunk-DNBJRKVE.js} +57 -57
- package/dist/cli/{chunk-HIXYNASX.js → chunk-DOCDA2YP.js} +4 -4
- package/dist/cli/{chunk-NFWFUCGM.js → chunk-FDEU7UY7.js} +6 -6
- package/dist/cli/{chunk-4LRG6AJZ.mjs → chunk-IHT6XITB.mjs} +2 -2
- package/dist/cli/{chunk-WJGRIDWQ.js → chunk-INOSSTSG.js} +15 -15
- package/dist/cli/{chunk-LGGR7CGZ.mjs → chunk-JKY2QANB.mjs} +4 -4
- package/dist/cli/{chunk-IVT2CZPM.mjs → chunk-JZWC4ES6.mjs} +1 -1
- package/dist/cli/{chunk-4D5YQETI.js → chunk-KP5TOAI4.js} +6 -6
- package/dist/cli/{chunk-5NEXN4MZ.js → chunk-NC4JXVVS.js} +2 -2
- package/dist/cli/{chunk-JGEFX6FQ.js → chunk-NJS3RHQO.js} +6 -6
- package/dist/cli/{chunk-DH6LEJWD.mjs → chunk-NW7I3LDU.mjs} +3 -3
- package/dist/cli/{chunk-YZLPXH7G.mjs → chunk-TABL2Q6H.mjs} +2 -2
- package/dist/cli/{chunk-RY6WID7C.js → chunk-USJBSNRI.js} +26 -26
- package/dist/cli/{chunk-BVJSAJKV.mjs → chunk-YJ2QYYB5.mjs} +1 -1
- package/dist/cli/{chunk-OOQ4IRP4.js → chunk-ZQSQCHG3.js} +1 -1
- package/dist/cli/{client-AMSHGQFH.mjs → client-FZPHVNWV.mjs} +3 -3
- package/dist/cli/client-IMFLPCD7.js +20 -0
- package/dist/cli/{csv-B2OKPMNX.js → csv-ANJ4KSHF.js} +12 -12
- package/dist/cli/{csv-F4RPWI4E.mjs → csv-CCHVZPRD.mjs} +3 -3
- package/dist/cli/{db-AJYYK5HH.js → db-AE3MLMRF.js} +20 -20
- package/dist/cli/{db-QP4WNVSS.mjs → db-JFVR6STL.mjs} +4 -4
- package/dist/cli/{executions-4LHEJCCY.js → executions-DGX53UEW.js} +6 -6
- package/dist/cli/{executions-NY7HYAEH.mjs → executions-WNXCURLN.mjs} +4 -4
- package/dist/cli/{feedback-CXXJJARR.js → feedback-DGEFG6JI.js} +6 -6
- package/dist/cli/{feedback-SJYHLVYY.mjs → feedback-L4A66OA2.mjs} +3 -3
- package/dist/cli/git-6QWUB6CR.js +23 -0
- package/dist/cli/{git-DUODO3NL.mjs → git-LIZ3FGVR.mjs} +4 -4
- package/dist/cli/index.js +73 -73
- package/dist/cli/index.mjs +30 -30
- package/dist/cli/{legacy-noops-3UYJVVNW.js → legacy-noops-L7GGGAOR.js} +7 -7
- package/dist/cli/{legacy-noops-IUDXZFYO.mjs → legacy-noops-UCKGOSJA.mjs} +4 -4
- package/dist/cli/{monitors-IEEVACOD.js → monitors-NGACMMWV.js} +85 -85
- package/dist/cli/{monitors-PDWE6BGA.mjs → monitors-NLMFDD4C.mjs} +4 -4
- package/dist/cli/{org-VSPO2YF3.mjs → org-2OW6TPHF.mjs} +4 -4
- package/dist/cli/{org-NUFEZRY7.js → org-FJSCZ6S3.js} +60 -60
- package/dist/cli/{play-MXYK2BRE.js → play-GJC4AIAX.js} +200 -200
- package/dist/cli/{play-KMHPJVWH.mjs → play-ZZ4AQLL5.mjs} +6 -6
- package/dist/cli/{providers-7ENB4EYV.mjs → providers-6BJNJUSG.mjs} +4 -4
- package/dist/cli/{providers-YE5YRIML.js → providers-D7KLXB4S.js} +7 -7
- package/dist/cli/{quickstart-KXCU2MZ2.js → quickstart-6WYRYZJZ.js} +5 -5
- package/dist/cli/{quickstart-GFOOHX2U.mjs → quickstart-FH4NGHEJ.mjs} +3 -3
- package/dist/cli/{search-R426JJQW.js → search-KOSJMN3U.js} +6 -6
- package/dist/cli/{search-KESXCJDL.mjs → search-SUT5XFI6.mjs} +5 -5
- package/dist/cli/{secrets-HDR522GC.mjs → secrets-QK5QP4YU.mjs} +4 -4
- package/dist/cli/{secrets-BRB5SIXG.js → secrets-Y2OI2P7O.js} +13 -13
- package/dist/cli/{sessions-IK3OSQC6.js → sessions-MLDROWXY.js} +5 -5
- package/dist/cli/{sessions-VOOSWVLS.mjs → sessions-VQKZHOQJ.mjs} +4 -4
- package/dist/cli/{settings-OPGEFGXL.js → settings-6WOSPHBC.js} +74 -74
- package/dist/cli/{settings-BZKDIHTX.mjs → settings-SPUINZYG.mjs} +7 -7
- package/dist/cli/{setup-TP2VWSCU.js → setup-E2UJV6PW.js} +41 -41
- package/dist/cli/{setup-RVPS7AJJ.mjs → setup-ZE2SDMC4.mjs} +6 -6
- package/dist/cli/skills-J3QIHO5L.js +28 -0
- package/dist/cli/{skills-7BDD2F4V.mjs → skills-OJYRPY2N.mjs} +4 -4
- package/dist/cli/{tools-46ILS57M.js → tools-BNHRVKLA.js} +50 -50
- package/dist/cli/{tools-XLGGDBM3.mjs → tools-O6EIDEKW.mjs} +5 -5
- package/dist/cli/{update-2JEM7WUF.mjs → update-NWESWMYF.mjs} +6 -6
- package/dist/cli/update-TDOIF3C4.js +28 -0
- package/dist/cli/{workflow-ZKGPY7T4.js → workflow-SAJAOPYE.js} +15 -15
- package/dist/cli/{workflow-SSTGMXOQ.mjs → workflow-YJHXDD57.mjs} +5 -5
- package/dist/index.js +6 -6
- package/dist/index.mjs +3 -3
- package/dist/install-integrity.json +68 -68
- package/dist/release.d.mts +1 -1
- package/dist/release.d.ts +1 -1
- package/dist/release.js +2 -2
- package/dist/release.mjs +1 -1
- package/package.json +1 -1
- package/dist/cli/auth-4ME3NANJ.js +0 -31
- package/dist/cli/client-WN33QCMV.js +0 -20
- package/dist/cli/git-K7YPSXLC.js +0 -23
- package/dist/cli/skills-TK2CIWVS.js +0 -28
- package/dist/cli/update-3JOCQWNF.js +0 -28
|
@@ -200,7 +200,7 @@ export const SDK_RELEASE = {
|
|
|
200
200
|
// getters keep their established compatibility behavior.
|
|
201
201
|
// 0.3.1 deprecated the legacy `deepline enrich` command in favor of Plays.
|
|
202
202
|
// 0.3.90 is the first deliberately versioned SDK release for API v3.
|
|
203
|
-
version: '0.3.
|
|
203
|
+
version: '0.3.304',
|
|
204
204
|
updateSummary:
|
|
205
205
|
'Play grep now returns concise results with the matched fields and terms. Automatic CLI updates are enabled by default; use `deepline settings autoupdate off` to opt out, `deepline settings autoupdate on` to re-enable updates, or `deepline settings autoupdate pin <version>` to hold an exact release.',
|
|
206
206
|
packageCapabilities: {
|
|
@@ -2452,7 +2452,9 @@ export async function projectRunEventsViaAppRuntime(
|
|
|
2452
2452
|
const batches = partitionRunEventsForAppRuntime(input.events);
|
|
2453
2453
|
const receiptBatch = runLedgerReceiptBatchIndex(batches);
|
|
2454
2454
|
for (const [index, events] of batches.entries()) {
|
|
2455
|
+
const beforeBatchStartedAt = Date.now();
|
|
2455
2456
|
await input.beforeBatch();
|
|
2457
|
+
const beforeBatchMs = Math.max(0, Date.now() - beforeBatchStartedAt);
|
|
2456
2458
|
// Retain the original receipt for the terminal (or final) piece so an acknowledged
|
|
2457
2459
|
// legacy delivery stays acknowledged across the reader rollout.
|
|
2458
2460
|
const idempotencyKey =
|
|
@@ -2476,7 +2478,16 @@ export async function projectRunEventsViaAppRuntime(
|
|
|
2476
2478
|
};
|
|
2477
2479
|
// The durable outbox owns recovery; this helper does not retry OCCs or
|
|
2478
2480
|
// other delivery failures inside an already-leased invocation.
|
|
2479
|
-
|
|
2481
|
+
let responseMeta: RuntimeApiResponseMeta | null = null;
|
|
2482
|
+
const deliveryContext = {
|
|
2483
|
+
...context,
|
|
2484
|
+
retryPolicy: 'none' as const,
|
|
2485
|
+
onResponseMeta(meta: RuntimeApiResponseMeta) {
|
|
2486
|
+
context.onResponseMeta?.(meta);
|
|
2487
|
+
if (meta.action === 'project_run_events') responseMeta = meta;
|
|
2488
|
+
},
|
|
2489
|
+
};
|
|
2490
|
+
const requestStartedAt = Date.now();
|
|
2480
2491
|
try {
|
|
2481
2492
|
await postAppRuntimeApi(deliveryContext, {
|
|
2482
2493
|
action: 'project_run_events',
|
|
@@ -2501,6 +2512,25 @@ export async function projectRunEventsViaAppRuntime(
|
|
|
2501
2512
|
...request,
|
|
2502
2513
|
});
|
|
2503
2514
|
}
|
|
2515
|
+
const requestWallMs = Math.max(0, Date.now() - requestStartedAt);
|
|
2516
|
+
if (beforeBatchMs >= 500 || requestWallMs >= 500) {
|
|
2517
|
+
const observedResponse = responseMeta as RuntimeApiResponseMeta | null;
|
|
2518
|
+
console.info('[run-ledger-outbox.project_transport_slow]', {
|
|
2519
|
+
runId: input.playId,
|
|
2520
|
+
eventCount: events.length,
|
|
2521
|
+
batchIndex: index,
|
|
2522
|
+
batchCount: batches.length,
|
|
2523
|
+
beforeBatchMs,
|
|
2524
|
+
requestWallMs,
|
|
2525
|
+
roundTripMs: observedResponse?.roundTripMs ?? null,
|
|
2526
|
+
requestId: observedResponse?.requestId ?? null,
|
|
2527
|
+
requestBodyRawBytes: observedResponse?.requestBodyRawBytes ?? null,
|
|
2528
|
+
requestBodyWireBytes: observedResponse?.requestBodyWireBytes ?? null,
|
|
2529
|
+
requestBodySerializeMs:
|
|
2530
|
+
observedResponse?.requestBodySerializeMs ?? null,
|
|
2531
|
+
requestBodyPackMs: observedResponse?.requestBodyPackMs ?? null,
|
|
2532
|
+
});
|
|
2533
|
+
}
|
|
2504
2534
|
}
|
|
2505
2535
|
}
|
|
2506
2536
|
|
|
@@ -33,6 +33,36 @@ export const EXECUTE_SERVER_TIMING_STAGES = [
|
|
|
33
33
|
'execute',
|
|
34
34
|
'identity',
|
|
35
35
|
'usage_schedule',
|
|
36
|
+
// Managed AI inference slices: `ai_prepare` includes request preparation and
|
|
37
|
+
// contains `ai_billing_authorize`; `ai_provider_work_start` is the durable
|
|
38
|
+
// pre-call transition; `ai_gateway_first_output` is the time to the first
|
|
39
|
+
// model-output part (excluding SDK control chunks); and
|
|
40
|
+
// `ai_gateway_stream_wall` is the end-to-end SDK stream
|
|
41
|
+
// collection wall. Stream wall includes awaited finish callbacks, so evidence
|
|
42
|
+
// persistence and settlement overlap it. First-output and stream wall both
|
|
43
|
+
// include Gateway/network/upstream time; neither claims provider-internal
|
|
44
|
+
// model time.
|
|
45
|
+
'ai_prepare',
|
|
46
|
+
'ai_billing_authorize',
|
|
47
|
+
'ai_provider_work_start',
|
|
48
|
+
'ai_gateway_first_output',
|
|
49
|
+
'ai_gateway_stream_wall',
|
|
50
|
+
'ai_generation_evidence_persist',
|
|
51
|
+
'ai_billing_settlement',
|
|
52
|
+
'ai_output_canonicalization',
|
|
53
|
+
'ai_result_persist',
|
|
54
|
+
// Provider HTTP slices are only nonzero for calls that take this path:
|
|
55
|
+
// admission; `provider_fetch_headers` until response headers arrive (or
|
|
56
|
+
// `provider_fetch_error_wait` for a rejected fetch); retry backoff; body
|
|
57
|
+
// read, JSON parse, result transform and output normalization are separate.
|
|
58
|
+
'provider_admission',
|
|
59
|
+
'provider_fetch_headers',
|
|
60
|
+
'provider_fetch_error_wait',
|
|
61
|
+
'provider_retry_wait',
|
|
62
|
+
'provider_body_read',
|
|
63
|
+
'provider_json_parse',
|
|
64
|
+
'provider_result_transform',
|
|
65
|
+
'provider_output_normalization',
|
|
36
66
|
'total',
|
|
37
67
|
// The execution gateway preserves these disjoint stages beside the app
|
|
38
68
|
// handler's stages. They are deliberately part of this small, additive
|
|
@@ -12,7 +12,10 @@ import type {
|
|
|
12
12
|
ProviderConcurrencyGrant,
|
|
13
13
|
ProviderPacingGrant,
|
|
14
14
|
} from './governor/rate-state-backend';
|
|
15
|
-
import type {
|
|
15
|
+
import type {
|
|
16
|
+
ExecuteServerTiming,
|
|
17
|
+
ExecuteServerTimingStage,
|
|
18
|
+
} from './execute-server-timing';
|
|
16
19
|
|
|
17
20
|
export type RuntimeResourceLease = WorkLease;
|
|
18
21
|
export type RuntimeProviderPermit = ProviderPermit;
|
|
@@ -511,6 +514,29 @@ export type RuntimePhaseTiming = {
|
|
|
511
514
|
ewmaMs: number | null;
|
|
512
515
|
};
|
|
513
516
|
|
|
517
|
+
const AI_INFERENCE_EXECUTE_STAGES = [
|
|
518
|
+
'ai_prepare',
|
|
519
|
+
'ai_billing_authorize',
|
|
520
|
+
'ai_provider_work_start',
|
|
521
|
+
'ai_gateway_first_output',
|
|
522
|
+
'ai_gateway_stream_wall',
|
|
523
|
+
'ai_generation_evidence_persist',
|
|
524
|
+
'ai_billing_settlement',
|
|
525
|
+
'ai_output_canonicalization',
|
|
526
|
+
'ai_result_persist',
|
|
527
|
+
] as const satisfies readonly ExecuteServerTimingStage[];
|
|
528
|
+
|
|
529
|
+
const PROVIDER_HTTP_EXECUTE_STAGES = [
|
|
530
|
+
'provider_admission',
|
|
531
|
+
'provider_fetch_headers',
|
|
532
|
+
'provider_fetch_error_wait',
|
|
533
|
+
'provider_retry_wait',
|
|
534
|
+
'provider_body_read',
|
|
535
|
+
'provider_json_parse',
|
|
536
|
+
'provider_result_transform',
|
|
537
|
+
'provider_output_normalization',
|
|
538
|
+
] as const satisfies readonly ExecuteServerTimingStage[];
|
|
539
|
+
|
|
514
540
|
/**
|
|
515
541
|
* Selected execute-route stages for the same population as `fetchToHeaders`.
|
|
516
542
|
* These are nested because they partition handler work inside that wall; they
|
|
@@ -523,6 +549,26 @@ export type RuntimeExecuteRouteTiming = {
|
|
|
523
549
|
chargeOpenMs: number;
|
|
524
550
|
fixtureLoadMs: number;
|
|
525
551
|
executeMs: number;
|
|
552
|
+
/**
|
|
553
|
+
* Managed `ai_inference` stages, accumulated independently because each can
|
|
554
|
+
* observe a different request population. `count` is the number of requests
|
|
555
|
+
* with a non-zero `ai_prepare` marker. Stage counters include positive
|
|
556
|
+
* durations only: the header serializes milliseconds to three decimal
|
|
557
|
+
* places, so an absent stage cannot be distinguished from a duration
|
|
558
|
+
* rounded to zero. These slices overlap; in particular stream wall contains
|
|
559
|
+
* awaited evidence persistence and billing settlement.
|
|
560
|
+
*/
|
|
561
|
+
aiInference?: RuntimeExecuteStageGroup<
|
|
562
|
+
(typeof AI_INFERENCE_EXECUTE_STAGES)[number]
|
|
563
|
+
>;
|
|
564
|
+
/**
|
|
565
|
+
* Deepline-owned HTTP provider stages. `count` is the number of requests
|
|
566
|
+
* with a non-zero provider-admission marker; each stage retains its own
|
|
567
|
+
* positive-duration denominator for rolling-build compatibility.
|
|
568
|
+
*/
|
|
569
|
+
providerHttp?: RuntimeExecuteStageGroup<
|
|
570
|
+
(typeof PROVIDER_HTTP_EXECUTE_STAGES)[number]
|
|
571
|
+
>;
|
|
526
572
|
/**
|
|
527
573
|
* Where `chargeOpenMs` went, nested rather than summed: these are disjoint
|
|
528
574
|
* slices of it, never independent phases. Present only when the deployed app
|
|
@@ -557,6 +603,18 @@ export type RuntimeExecuteRouteTiming = {
|
|
|
557
603
|
};
|
|
558
604
|
};
|
|
559
605
|
|
|
606
|
+
/** Fixed-size run summary for one execute-route stage. */
|
|
607
|
+
export type RuntimeExecuteStageTiming = {
|
|
608
|
+
count: number;
|
|
609
|
+
totalMs: number;
|
|
610
|
+
maxMs: number | null;
|
|
611
|
+
};
|
|
612
|
+
|
|
613
|
+
/** A fixed set of named execute stages with one run-level request count. */
|
|
614
|
+
export type RuntimeExecuteStageGroup<Stage extends ExecuteServerTimingStage> = {
|
|
615
|
+
count: number;
|
|
616
|
+
} & Record<Stage, RuntimeExecuteStageTiming>;
|
|
617
|
+
|
|
560
618
|
/**
|
|
561
619
|
* A compact, unitless sample aggregate. Provider permits use it for bucket
|
|
562
620
|
* occupancy at admission, rather than mislabelling an in-flight count as ms.
|
|
@@ -854,6 +912,71 @@ function createPhaseTiming(): {
|
|
|
854
912
|
};
|
|
855
913
|
}
|
|
856
914
|
|
|
915
|
+
function createExecuteStageAccumulator(): {
|
|
916
|
+
observe(value: number): void;
|
|
917
|
+
snapshot(): RuntimeExecuteStageTiming;
|
|
918
|
+
} {
|
|
919
|
+
let count = 0;
|
|
920
|
+
let totalMs = 0;
|
|
921
|
+
let maxMs: number | null = null;
|
|
922
|
+
return {
|
|
923
|
+
observe(value) {
|
|
924
|
+
count += 1;
|
|
925
|
+
totalMs += value;
|
|
926
|
+
maxMs = maxMs === null ? value : Math.max(maxMs, value);
|
|
927
|
+
},
|
|
928
|
+
snapshot() {
|
|
929
|
+
return { count, totalMs, maxMs };
|
|
930
|
+
},
|
|
931
|
+
};
|
|
932
|
+
}
|
|
933
|
+
|
|
934
|
+
function createExecuteStageGroup<
|
|
935
|
+
const Stages extends readonly ExecuteServerTimingStage[],
|
|
936
|
+
>(stages: Stages) {
|
|
937
|
+
type Stage = Stages[number];
|
|
938
|
+
// Keep the tuple's element type explicit through iteration. TypeScript can
|
|
939
|
+
// widen a generic readonly tuple to the full timing-stage union in loops,
|
|
940
|
+
// even though every value here came from this group's stage list.
|
|
941
|
+
const stageNames = stages as readonly Stage[];
|
|
942
|
+
const metrics = Object.fromEntries(
|
|
943
|
+
stageNames.map((stage) => [stage, createExecuteStageAccumulator()]),
|
|
944
|
+
) as Record<Stage, ReturnType<typeof createExecuteStageAccumulator>>;
|
|
945
|
+
let count = 0;
|
|
946
|
+
return {
|
|
947
|
+
get count() {
|
|
948
|
+
return count;
|
|
949
|
+
},
|
|
950
|
+
observe(markerMs: number | null, timing: ExecuteServerTiming) {
|
|
951
|
+
// The execute header renders absent stages as zero, so zero cannot be
|
|
952
|
+
// attributed to an observed stage with confidence. The positive marker
|
|
953
|
+
// selects calls in this group; stage populations remain explicit.
|
|
954
|
+
if (markerMs === null || !Number.isFinite(markerMs) || markerMs <= 0) {
|
|
955
|
+
return;
|
|
956
|
+
}
|
|
957
|
+
count += 1;
|
|
958
|
+
for (const stage of stageNames) {
|
|
959
|
+
const durationMs = timing[stage];
|
|
960
|
+
if (
|
|
961
|
+
durationMs !== null &&
|
|
962
|
+
Number.isFinite(durationMs) &&
|
|
963
|
+
durationMs > 0
|
|
964
|
+
) {
|
|
965
|
+
metrics[stage].observe(durationMs);
|
|
966
|
+
}
|
|
967
|
+
}
|
|
968
|
+
},
|
|
969
|
+
snapshot(): RuntimeExecuteStageGroup<Stage> {
|
|
970
|
+
return {
|
|
971
|
+
count,
|
|
972
|
+
...Object.fromEntries(
|
|
973
|
+
stageNames.map((stage) => [stage, metrics[stage].snapshot()]),
|
|
974
|
+
),
|
|
975
|
+
} as RuntimeExecuteStageGroup<Stage>;
|
|
976
|
+
},
|
|
977
|
+
};
|
|
978
|
+
}
|
|
979
|
+
|
|
857
980
|
function createSampleTiming(): {
|
|
858
981
|
observe(value: number | null | undefined): void;
|
|
859
982
|
snapshot(): RuntimeSampleTiming;
|
|
@@ -979,6 +1102,12 @@ export function createRuntimeResourceGovernor(input: {
|
|
|
979
1102
|
fixtureLoadMs: 0,
|
|
980
1103
|
executeMs: 0,
|
|
981
1104
|
};
|
|
1105
|
+
const executeAiInference = createExecuteStageGroup(
|
|
1106
|
+
AI_INFERENCE_EXECUTE_STAGES,
|
|
1107
|
+
);
|
|
1108
|
+
const executeProviderHttp = createExecuteStageGroup(
|
|
1109
|
+
PROVIDER_HTTP_EXECUTE_STAGES,
|
|
1110
|
+
);
|
|
982
1111
|
const executeChargeOpen = {
|
|
983
1112
|
count: 0,
|
|
984
1113
|
eligibilityMs: 0,
|
|
@@ -1288,6 +1417,14 @@ export function createRuntimeResourceGovernor(input: {
|
|
|
1288
1417
|
executeRoute.chargeOpenMs += executeRouteTiming.charge_open;
|
|
1289
1418
|
executeRoute.fixtureLoadMs += executeRouteTiming.fixture_load;
|
|
1290
1419
|
executeRoute.executeMs += executeRouteTiming.execute;
|
|
1420
|
+
executeAiInference.observe(
|
|
1421
|
+
executeRouteTiming.ai_prepare,
|
|
1422
|
+
executeRouteTiming,
|
|
1423
|
+
);
|
|
1424
|
+
executeProviderHttp.observe(
|
|
1425
|
+
executeRouteTiming.provider_admission,
|
|
1426
|
+
executeRouteTiming,
|
|
1427
|
+
);
|
|
1291
1428
|
// Same rule as the gateway block below: require the complete substage
|
|
1292
1429
|
// set this app version emits, so an older build that reports only
|
|
1293
1430
|
// `charge_open` does not silently contribute a partial split.
|
|
@@ -1734,6 +1871,12 @@ export function createRuntimeResourceGovernor(input: {
|
|
|
1734
1871
|
? {
|
|
1735
1872
|
executeRoute: {
|
|
1736
1873
|
...executeRoute,
|
|
1874
|
+
...(executeAiInference.count > 0
|
|
1875
|
+
? { aiInference: executeAiInference.snapshot() }
|
|
1876
|
+
: {}),
|
|
1877
|
+
...(executeProviderHttp.count > 0
|
|
1878
|
+
? { providerHttp: executeProviderHttp.snapshot() }
|
|
1879
|
+
: {}),
|
|
1737
1880
|
...(executeChargeOpen.count > 0
|
|
1738
1881
|
? { chargeOpen: { ...executeChargeOpen } }
|
|
1739
1882
|
: {}),
|
|
@@ -20733,6 +20733,7 @@ async function dispatchRunLedgerOutboxBatchWithScope(
|
|
|
20733
20733
|
eventIds: events.map((event) => event.eventId),
|
|
20734
20734
|
error: error instanceof Error ? error.message : String(error),
|
|
20735
20735
|
code: failure.code,
|
|
20736
|
+
responseStatus: failure.status,
|
|
20736
20737
|
failureReason: failure.failureReason,
|
|
20737
20738
|
...(failure.projectionMismatch
|
|
20738
20739
|
? { projectionMismatch: failure.projectionMismatch }
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
"use strict";Object.defineProperty(exports, "__esModule", {value: true});
|
|
2
|
+
|
|
3
|
+
|
|
4
|
+
|
|
5
|
+
|
|
6
|
+
|
|
7
|
+
|
|
8
|
+
|
|
9
|
+
|
|
10
|
+
|
|
11
|
+
|
|
12
|
+
var _chunk7NQJDQPHjs = require('./chunk-7NQJDQPH.js');
|
|
13
|
+
require('./chunk-BBXO7APG.js');
|
|
14
|
+
require('./chunk-DOCDA2YP.js');
|
|
15
|
+
require('./chunk-XNYIZMNQ.js');
|
|
16
|
+
require('./chunk-ZQSQCHG3.js');
|
|
17
|
+
require('./chunk-7P5AA3SN.js');
|
|
18
|
+
require('./chunk-OG64RBAC.js');
|
|
19
|
+
require('./chunk-COGTRVWW.js');
|
|
20
|
+
|
|
21
|
+
|
|
22
|
+
|
|
23
|
+
|
|
24
|
+
|
|
25
|
+
|
|
26
|
+
|
|
27
|
+
|
|
28
|
+
|
|
29
|
+
|
|
30
|
+
|
|
31
|
+
exports.EXIT_WORKSPACE_MISMATCH = _chunk7NQJDQPHjs.EXIT_WORKSPACE_MISMATCH; exports.clearPendingClaim = _chunk7NQJDQPHjs.clearPendingClaim; exports.clearSatisfiedPendingClaim = _chunk7NQJDQPHjs.clearSatisfiedPendingClaim; exports.handleRegister = _chunk7NQJDQPHjs.handleRegister; exports.handleStatus = _chunk7NQJDQPHjs.handleStatus; exports.handleWait = _chunk7NQJDQPHjs.handleWait; exports.readPendingAuthClaim = _chunk7NQJDQPHjs.readPendingAuthClaim; exports.registerAuthCommands = _chunk7NQJDQPHjs.registerAuthCommands; exports.reportSetupCompleted = _chunk7NQJDQPHjs.reportSetupCompleted; exports.resolvePendingAuthClaimForResume = _chunk7NQJDQPHjs.resolvePendingAuthClaimForResume;
|
|
@@ -9,11 +9,11 @@ import {
|
|
|
9
9
|
registerAuthCommands,
|
|
10
10
|
reportSetupCompleted,
|
|
11
11
|
resolvePendingAuthClaimForResume
|
|
12
|
-
} from "./chunk-
|
|
13
|
-
import "./chunk-
|
|
14
|
-
import "./chunk-
|
|
12
|
+
} from "./chunk-IHT6XITB.mjs";
|
|
13
|
+
import "./chunk-35SCWK4Y.mjs";
|
|
14
|
+
import "./chunk-7QV545D7.mjs";
|
|
15
15
|
import "./chunk-DLIRSHV6.mjs";
|
|
16
|
-
import "./chunk-
|
|
16
|
+
import "./chunk-7OXXCRGZ.mjs";
|
|
17
17
|
import "./chunk-NXGCO4JB.mjs";
|
|
18
18
|
import "./chunk-WZYKRD7T.mjs";
|
|
19
19
|
import "./chunk-KRD6H754.mjs";
|