@tangle-network/agent-runtime 0.311.2 → 0.312.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/dist/{activation-Dvl9gE_g.js → activation-CE5vCzYS.js} +2 -2
- package/dist/{activation-Dvl9gE_g.js.map → activation-CE5vCzYS.js.map} +1 -1
- package/dist/{activation-BxR-Im_k.d.ts → activation-K-k4BRp9.d.ts} +2 -3
- package/dist/agent.d.ts +1 -2
- package/dist/agent.js +2 -2
- package/dist/{coordination-driver-CIfgl4Yj.js → coordination-driver-Cp2z1zz6.js} +14 -14
- package/dist/coordination-driver-Cp2z1zz6.js.map +1 -0
- package/dist/{delegate-05Ddb4_L.js → delegate-DPkyIx3C.js} +2 -2
- package/dist/{delegate-05Ddb4_L.js.map → delegate-DPkyIx3C.js.map} +1 -1
- package/dist/durable.d.ts +1 -2
- package/dist/durable.js +2 -2
- package/dist/{graph-BNVGyp1P.js → graph-DP0X2bVC.js} +5 -5
- package/dist/graph-DP0X2bVC.js.map +1 -0
- package/dist/{improvement-cycle-Ig1_rWAw.js → improvement-cycle-D5r4auxT.js} +3 -3
- package/dist/{improvement-cycle-Ig1_rWAw.js.map → improvement-cycle-D5r4auxT.js.map} +1 -1
- package/dist/{index-B0c5PmmO.d.ts → index-BdIi1eIV.d.ts} +11256 -2501
- package/dist/index.d.ts +4 -6
- package/dist/index.js +7 -7
- package/dist/intelligence.d.ts +2 -3
- package/dist/intelligence.js +3 -3
- package/dist/kernel.d.ts +2 -4
- package/dist/kernel.js +8 -8
- package/dist/{loop-runner-bin-Beh7PECB.js → loop-runner-bin-Cn7244xv.js} +3 -3
- package/dist/{loop-runner-bin-Beh7PECB.js.map → loop-runner-bin-Cn7244xv.js.map} +1 -1
- package/dist/{loop-runner-bin-drXESgaI.d.ts → loop-runner-bin-CoKHGqxE.d.ts} +2 -3
- package/dist/loop-runner-bin.d.ts +1 -1
- package/dist/loop-runner-bin.js +1 -1
- package/dist/mcp/bin.js +3 -3
- package/dist/mcp/index.d.ts +2 -5
- package/dist/mcp/index.js +4 -4
- package/dist/{openai-tools-CJHfmFzg.d.ts → openai-tools-C2GoLNjj.d.ts} +2 -2
- package/dist/profiles.d.ts +1 -1
- package/dist/{provision-supervisor-CfKlAMTb.js → provision-supervisor-BahNK2L0.js} +3 -3
- package/dist/{provision-supervisor-CfKlAMTb.js.map → provision-supervisor-BahNK2L0.js.map} +1 -1
- package/dist/{runtime-DsnHqwNx.js → runtime-DRrpUP7n.js} +8 -8
- package/dist/{runtime-DsnHqwNx.js.map → runtime-DRrpUP7n.js.map} +1 -1
- package/dist/{search-executor-BNLvgp0X.js → search-executor-BuwMU5TF.js} +2 -2
- package/dist/{search-executor-BNLvgp0X.js.map → search-executor-BuwMU5TF.js.map} +1 -1
- package/dist/{server-Bx4d5imQ.js → server-DMqPF86Y.js} +3 -3
- package/dist/{server-Bx4d5imQ.js.map → server-DMqPF86Y.js.map} +1 -1
- package/dist/{supervise-D6MgxpMI.js → supervise-CGMzXi_j.js} +47 -20
- package/dist/supervise-CGMzXi_j.js.map +1 -0
- package/dist/{supervisor-WYRLsCp1.js → supervisor-DgcmBicU.js} +33 -23
- package/dist/supervisor-DgcmBicU.js.map +1 -0
- package/dist/testing.d.ts +1 -2
- package/dist/testing.js +12 -12
- package/dist/tui/index.d.ts +1 -1
- package/dist/tui/index.js +1 -1
- package/package.json +1 -1
- package/skills/profile-authoring/SKILL.md +1 -1
- package/dist/coordination-driver-CIfgl4Yj.js.map +0 -1
- package/dist/graph-BNVGyp1P.js.map +0 -1
- package/dist/stream-agent-turn-fd2XzrTv.d.ts +0 -2252
- package/dist/substrate-GW6LFx4A.d.ts +0 -284
- package/dist/supervise-D6MgxpMI.js.map +0 -1
- package/dist/supervisor-WYRLsCp1.js.map +0 -1
- package/dist/types-RlLmOHFR.d.ts +0 -6210
|
@@ -9904,7 +9904,7 @@ const outsideKinds = /* @__PURE__ */ new Set([
|
|
|
9904
9904
|
"seat-segment",
|
|
9905
9905
|
"seat-materialized",
|
|
9906
9906
|
"seat-paused",
|
|
9907
|
-
"
|
|
9907
|
+
"root-segment",
|
|
9908
9908
|
"paused",
|
|
9909
9909
|
"driver-attempt",
|
|
9910
9910
|
"node-inputs-resolved",
|
|
@@ -9986,7 +9986,7 @@ async function replaySpawnTree(journal, blobs, root) {
|
|
|
9986
9986
|
if (ev.kind === "workspace-capture") continue;
|
|
9987
9987
|
if (ev.kind === "trace-unpropagated") continue;
|
|
9988
9988
|
if (ev.kind === "seat-segment" || ev.kind === "seat-materialized" || ev.kind === "seat-paused") continue;
|
|
9989
|
-
if (ev.kind === "
|
|
9989
|
+
if (ev.kind === "root-segment") continue;
|
|
9990
9990
|
if (ev.kind === "paused") continue;
|
|
9991
9991
|
if (ev.kind === "driver-attempt") continue;
|
|
9992
9992
|
if (ev.kind === "node-inputs-resolved") continue;
|
|
@@ -24596,6 +24596,8 @@ async function prepareScopeRetainedOwnerTask(scope, task) {
|
|
|
24596
24596
|
const latestSeat = segmentStarts.at(-1);
|
|
24597
24597
|
const previousSeat = segmentStarts.at(-2);
|
|
24598
24598
|
if (latestSeat && previousSeat && latestSeat.provider !== previousSeat.provider && owned.indexOf(latestSeat) > owned.indexOf(latestInput)) state.forceNewSession = true;
|
|
24599
|
+
const rootSegment = owned.filter((event) => event.kind === "root-segment").at(-1);
|
|
24600
|
+
if (rootSegment?.from !== void 0 && rootSegment.from.harness !== rootSegment.to.harness && owned.indexOf(rootSegment) > owned.indexOf(latestInput)) state.forceNewSession = true;
|
|
24599
24601
|
if (state.forceNewSession) {
|
|
24600
24602
|
delete state.priorSession;
|
|
24601
24603
|
delete state.forceNewSession;
|
|
@@ -28716,23 +28718,30 @@ function rootExecutionBindingReceipt(opts, materialization, attemptId) {
|
|
|
28716
28718
|
throw new RuntimeRunStateError(`supervisor: run '${opts.runId}' has invalid root execution binding`, { cause: error });
|
|
28717
28719
|
}
|
|
28718
28720
|
}
|
|
28719
|
-
/**
|
|
28720
|
-
|
|
28721
|
-
|
|
28722
|
-
|
|
28723
|
-
|
|
28724
|
-
|
|
28725
|
-
|
|
28726
|
-
|
|
28727
|
-
|
|
28728
|
-
|
|
28721
|
+
/** Whether a segment changes what the recorded profile runs, apart from the caller's stack. */
|
|
28722
|
+
function changesRootProfile(entry) {
|
|
28723
|
+
const { stack: _stack, ...current } = entry.current;
|
|
28724
|
+
return contentAddress(current) !== contentAddress(entry.registered);
|
|
28725
|
+
}
|
|
28726
|
+
/**
|
|
28727
|
+
* Append one `root-segment` record when the root enters a segment that differs from the one it
|
|
28728
|
+
* last ran. The last record's `to` is what it last ran; a resumed run with no record last ran its
|
|
28729
|
+
* recorded profile, and a fresh run ran nothing. Every later entry on the same segment appends
|
|
28730
|
+
* nothing, so a resume after a dead supervisor or a lost stream is a boundary, not a segment.
|
|
28731
|
+
*/
|
|
28732
|
+
async function recordRootSegment(opts, events, at, fresh) {
|
|
28733
|
+
const entry = opts.rootSegment;
|
|
28734
|
+
if (entry === void 0) return;
|
|
28735
|
+
const records = events.filter((event) => event.kind === "root-segment" && event.id === opts.runId);
|
|
28736
|
+
const last = records.at(-1)?.to ?? (fresh ? void 0 : entry.registered);
|
|
28737
|
+
if (last !== void 0 && contentAddress(last) === contentAddress(entry.current)) return;
|
|
28729
28738
|
await opts.journal.appendEvent(opts.runId, {
|
|
28730
|
-
kind: "
|
|
28739
|
+
kind: "root-segment",
|
|
28731
28740
|
id: opts.runId,
|
|
28732
|
-
from: last,
|
|
28733
|
-
to:
|
|
28734
|
-
reason:
|
|
28735
|
-
seq:
|
|
28741
|
+
...last === void 0 ? {} : { from: last },
|
|
28742
|
+
to: entry.current,
|
|
28743
|
+
reason: entry.reason,
|
|
28744
|
+
seq: records.length,
|
|
28736
28745
|
at
|
|
28737
28746
|
});
|
|
28738
28747
|
}
|
|
@@ -28766,7 +28775,7 @@ function describeIdentityMismatch(recorded, requested) {
|
|
|
28766
28775
|
"correlation"
|
|
28767
28776
|
].filter((field) => contentAddress(recorded[field]) !== contentAddress(requested[field])).map((field) => `${field} recorded ${short(recorded[field])} but resumed with ${short(requested[field])}`);
|
|
28768
28777
|
if (differing.length === 0) return "the identity objects differ in shape while every known field matches";
|
|
28769
|
-
return `${differing.join("; ")} —
|
|
28778
|
+
return `${differing.join("; ")} — a different task or root profile is a new run; a resume may change the root's model, reasoning effort and harness as a new segment of this run (segment)`;
|
|
28770
28779
|
}
|
|
28771
28780
|
/** Validate caller-supplied root identity before any journal access. Fresh runs may omit identity,
|
|
28772
28781
|
* but once supplied it is trusted durable evidence and therefore must be complete and canonical;
|
|
@@ -28819,14 +28828,14 @@ function describeRejection(error) {
|
|
|
28819
28828
|
function createSupervisor() {
|
|
28820
28829
|
let attached;
|
|
28821
28830
|
async function run(root, task, opts) {
|
|
28822
|
-
const { budget, rootIdentity,
|
|
28831
|
+
const { budget, rootIdentity, rootSegment, rootMaterialization, runId, journal: journalStore, blobs: blobStore, executors: executorRegistry, recoverExecutor, maxDepth, workerSlots, reservationPolicy, deadlineCheckIn, maxRestarts, withinMs, childSettleGraceMs, teardownConfirmMs, resume, retainedAtSettlement: requestedRetainedAtSettlement, ownerWorkspaceRetention, now: suppliedNow, signal, hooks, workerTrace, workerTraceUnpropagated, interactiveBindingDir } = opts;
|
|
28823
28832
|
const input = detachedSnapshot({
|
|
28824
28833
|
task,
|
|
28825
28834
|
options: {
|
|
28826
28835
|
budget,
|
|
28827
28836
|
runId,
|
|
28828
28837
|
...rootIdentity === void 0 ? {} : { rootIdentity },
|
|
28829
|
-
...
|
|
28838
|
+
...rootSegment === void 0 ? {} : { rootSegment },
|
|
28830
28839
|
...rootMaterialization === void 0 ? {} : { rootMaterialization },
|
|
28831
28840
|
...maxDepth === void 0 ? {} : { maxDepth },
|
|
28832
28841
|
...typeof workerSlots === "number" ? { workerSlots } : {},
|
|
@@ -28895,9 +28904,9 @@ function createSupervisor() {
|
|
|
28895
28904
|
resumeFrom = restored.resumeFrom;
|
|
28896
28905
|
prior = [...resumeFrom.events];
|
|
28897
28906
|
pool = createBudgetPool(opts.budget, runEpochMs, restored.poolRestore);
|
|
28898
|
-
|
|
28907
|
+
await recordRootSegment(opts, prior, runStartedAt, false);
|
|
28899
28908
|
} else {
|
|
28900
|
-
if (opts.
|
|
28909
|
+
if (opts.rootSegment !== void 0 && changesRootProfile(opts.rootSegment)) throw new RuntimeRunStateError(`supervisor: run '${opts.runId}' has no recorded root to change the model or harness of; a new run takes them from its profile`);
|
|
28901
28910
|
pool = createBudgetPool(opts.budget, runStartedAtMs);
|
|
28902
28911
|
if (existing === void 0) await opts.journal.beginTree(opts.runId, runStartedAt);
|
|
28903
28912
|
const rootReceipt = rootMaterializationReceipt(opts);
|
|
@@ -28921,6 +28930,7 @@ function createSupervisor() {
|
|
|
28921
28930
|
at: runStartedAt
|
|
28922
28931
|
});
|
|
28923
28932
|
await appendSpawnEvents(opts.journal, opts.runId, rootEvents);
|
|
28933
|
+
await recordRootSegment(opts, [], runStartedAt, true);
|
|
28924
28934
|
}
|
|
28925
28935
|
const stableRootReceipt = resuming ? prior?.find((event) => event.kind === "materialized" && event.id === opts.runId)?.receipt : rootMaterializationReceipt(opts);
|
|
28926
28936
|
if (stableRootReceipt !== void 0) {
|
|
@@ -29604,4 +29614,4 @@ function isNonEmptySpend(s) {
|
|
|
29604
29614
|
//#endregion
|
|
29605
29615
|
export { environmentReader as $, projectSandboxOutcome as $i, parseWorkerToolTraceArtifact as $n, sanitizeAgentRuntimeEvent as $r, PEER_MAIL_WIRE_KEY as $t, scopeOwnerExecutorNodeContext as A, worktreeCliProfileMaterialization as Ai, resolveAgentEnvironmentProvider as An, resolveHarnessTranscriptCapture as Ar, captureReusableExecutorConfig as At, consumeScopeRetainedOwnerResult as B, recordRuntimeOwnedDriveHarnessProviderEvidence as Bi, InMemoryResultBlobStore as Bn, buildLoopOtelSpans as Br, createInPlaceCliExecutor as Bt, deriveNodeExecutionIdentity as C, promptOnlyProfileMaterialization as Ci, readPromptOptions as Cn, abortError as Cr, createContinuationKeeper as Ct, recordScopeOwnerMaterialization as D, sandboxActProfileMaterialization as Di, createAgentEnvironmentProviderRegistry as Dn, harnessTranscriptArtifact as Dr, passedItems as Dt, recordScopeOwnerDriverAttempt as E, renderUnsupported as Ei, LEAF_CONTINUATION_TASK as En, captureHarnessTranscript as Er, failedItems as Et, seatExecutionProfile as F, inheritRuntimeOwnedExecutorAttestation as Fi, retainedExecutorSeamKey as Fn, readTraceContextFromEnv as Fr, snapshotExecutorConfig as Ft, scopeRetainedOwnerContext as G, runtimeOwnedPendingExecutorMaterialization as Gi, replaySpawnTree as Gn, flatOtelSpan as Gr, workerTraceSeamKey as Gt, prepareScopeRetainedOwnerSeatSwitch as H, runtimeOwnedExecutorExecutionBinding as Hi, insideCursorNamespace as Hn, buildRuntimeEventOtelSpans as Hr, readWorkerTraceContext as Ht, abandonScopeRetainedOwnerInvocation as I, knownExecutionBindingReceipt as Ii, unavailablePauseMs as In, traceContextToEnv as Ir, createWorktreeCliExecutor as It, scopeRetainedOwnerResourceReader as J, unknownMaterializationReceipt as Ji, readCommittedJsonLines as Jn, padSpanId as Jr, createActivityLog as Jt, scopeRetainedOwnerJournalRoot as K, runtimeOwnedScopeOwnerRuntime as Ki, isNoEntError as Kn, generateSpanId as Kr, taskToPrompt as Kt, beginScopeRetainedOwnerDrive as L, knownMaterializationReceipt as Li, unavailableSignalOfFailure as Ln, defaultRedactor as Lr, DEFAULT_SANDBOX_STEERING_MAX_TURNS as Lt, SeatChain as M, attestRuntimeOwnedScopeOwner as Mi, decodeToolPart as Mn, contentAddress as Mr, cliWorktreeExecutor as Mt, SeatChainExhaustedError as N, authoredProfileDigest as Ni, sandboxSessionTraceSource as Nn, createPropagatingTraceEmitter as Nr, createExecutor as Nt, recordScopeOwnerPause as O, unsupportedProfileDimensions as Oi, providerAsExecutor as On, persistHarnessTranscript as Or, verdictFromJudgeScore as Ot, authoredSeatStages as P, finalizeRuntimeOwnedPendingExecutor as Pi, registerRetainedExecutorPreparation as Pn, mergeTraceEnv as Pr, createExecutorRegistry as Pt, SPAWN_RESOURCE_PATH_MAX_BYTES as Q, detachedSnapshot as Qi, isTraceAnalysisStore as Qn, createRuntimeStreamEventCollector as Qr, DEFAULT_PEER_MAIL_LIMITS as Qt, bindScopeRetainedOwnerEnvironmentId as R, newExecutionAttemptId as Ri, FileResultBlobStore as Rn, defaultRedactorIdentityMaterial as Rr, createSteerableSandboxSession as Rt, createScope as S, promptModelProfileMaterialization as Si, assertBoxlessPromptOptions as Sn, RunCancellationReason as Sr, checkVerdictOf as St, meterRuntimeOwnedProviderAttempt as T, renderProfileMaterializationIssues as Ti, runBrainLoop as Tn, runAbortable as Tr, expandQuestions as Tt, prepareScopeRetainedOwnerTask as U, runtimeOwnedExecutorMaterialization as Ui, loadSpawnForest as Un, createOpenInferenceFileExporter as Ur, workerTraceEnv as Ut, noteScopeRetainedOwnerCoordination as V, runtimeOwnedDriveHarnessProviderEvidence as Vi, InMemorySpawnJournal as Vn, buildLoopSpanNodes as Vr, WORKER_TRACE_PROPAGATION as Vt, reconcileScopeRetainedOwnerEnvironment as W, runtimeOwnedExecutorProviderEvidence as Wi, materializeTreeView as Wn, createOtelExporter as Wr, workerTraceHeaders as Wt, scopeRetainedOwnerResult as X, executableAgentSpecSnapshot as Xi, WORKER_TOOL_TRACE_SCHEMA_VERSION as Xn, toOtelAttributes as Xr, createInbox as Xt, scopeRetainedOwnerRestorePoint as Y, executableAgentProfileSnapshot as Yi, writeAllBytes as Yn, padTraceId as Yr, readWorkerProgress as Yt, scopeRetainedOwnerTurnEnded as Z, detachedFrozen as Zi, captureWorkerTraceEvidence as Zn, createRuntimeEventCollector as Zr, AUTHORITY_MARKERS as Zt, isDriverSpec as _, promptOptionsFromAgentTurnInput as _a, controlProfileMaterialization as _i, runAgentRounds as _n, retainedCreateMaterial as _r, CONTINUATION_FACTS as _t, collectDelivered as a, extractLlmCallEvent as aa, createWorktree as ai, isLiveNodeStatus as an, createBudgetPool as ar, interactiveAdmissionSeamKey as at, assertRecursiveReservationPolicy as b, profileMaterializationAxes$1 as bi, SandboxEvidenceRetentionError as bn, createWorkerSlots as br, admitFinding as bt, runTree as c, mapSandboxToolEvent as ca, LOCAL_HARNESSES as ci, bridgeModelRouteRefusal as cn, spendFromUsageEvents as cr, reconnectRetainedInteractiveRun as ct, classifyDriverFailure as d, sandboxProgressEvents as da, localHarnessExecutable as di, harnessUsageIsEmpty as dn, bridgeStopSignalKey as dr, freeSlots as dt, readSandboxOutcome as ea, sanitizeKnowledgeReadinessReport as ei, claimsAuthority as en, workerTraceAnalysisStore as er, hostDirectoryReader as et, runDriverWithRetry as f, sumSandboxUsage as fa, parseCodexTokenUsage as fi, readCodexRolloutSession as fn, errMessage as fr, queueOf as ft, driverExecutorFactory as g, promptFromAgentTurnInput as ga, assertProfileMaterialization as gi, isTerminalDecision as gn, startRetainedRunInEnvironment as gr, CONTINUATIONS_DIR as gt, driverChild as h, awaitAbortable$1 as ha, AGENT_PROFILE_MATERIALIZATION_AXES as hi, defaultSelectWinner as hn, startRetainedRun as hr, mapExecutorResult as ht, bestDelivered as i, createSandboxUsageLedger as ia, captureWorktreeDiff as ii, peerMailVerbNames as in, assertValidBudget as ir, providerVisibleProfile as it, settledToIteration as j, attestRuntimeOwnedPendingExecutor as ji, createPushTraceSource as jn, retainHarnessTranscript as jr, cliInPlaceExecutor as jt, restoreScopeOwnerAcceptedExecution as k, validateProfileMaterialization as ki, providerAsSandboxClient as kn, readHarnessTranscript as kr, bindReusableExecutorExecutionId as kt, DriverAttemptsExhaustedError as l, notifySandboxEventObserver as la, harnessInvocation as li, addHarnessUsage as ln, spendFromUsageTotals as lr, recoverRetainedInteractiveRun as lt, upstreamUnavailableSignal as m, abortError$1 as ma, terminateProcessTreeAndConfirm as mi, createSandboxForSpec as mn, recoverRetainedRun as mr, gateOnDeliverable as mt, createRootHandle as n, canonicalStreamEventFromSandboxEvent as na, runSettledCommand as ni, isPeerMailEnvelope as nn, BudgetReconcileFault as nr, coordinationMcpAlias as nt, pickBestDelivered as o, isSandboxTerminalEvent as oa, removeWorktree as oi, isTerminalNodeStatus as on, meterUsageEvent as or, attachWorker as ot, summarizeDriverAttempts as p, decodeHarnessUsage as pa, CodexExecutionDiagnosticError as pi, TERMINAL_DECISIONS as pn, reconnectRetainedRun as pr, rollingDispatch as pt, scopeRetainedOwnerPriorSpend as q, unknownExecutionBindingReceipt as qi, prepareJsonlAppend as qn, loopEventToOtelSpan as qr, DEFAULT_STALL_AFTER_MS as qt, createSupervisor as r, createSandboxToolPartState as ra, runWorktreeHarness as ri, peerMailTools as rn, ReservationWaitRefused as rr, coordinationProfileToolPrefix as rt, runFinalizer as s, mapSandboxEvent as sa, DEFAULT_LOCAL_HARNESS as si, bridgeAdmissionRefusal as sn, newUsageTotals as sr, readWorkerInteractiveBinding as st, DEFAULT_MAX_DEPTH as t, assertSandboxServedModel as ta, sanitizeRuntimeStreamEvent as ti, createPeerMailbox as tn, executorFailure as tr, resolveSpawnResourcePaths as tt, HarnessTurnFailedError as u, sandboxEventServedBackend as ua, harnessSupportsReasoningEffort as ui, createCodexRolloutStoreReader as un, bridgeRuntimeAttachmentsKey as ur, startRetainedInteractiveRun as ut, withDriverExecutor as v, providerMessageText as va, defineProfileMaterializationContract as vi, createSandboxLineage as vn, destroyInteractiveEnvironment as vr, CheckUnavailableError as vt, meterRuntimeOwnedAccounting as w, promptResourceProfileMaterialization as wi, routerBrain as wn, linkAbort as wr, distillFindings as wt, beginScopeOwnerAttempt as x, promptControlProfileMaterialization as xi, captureBeforeDestroy as xn, openSlotGroup as xr, bestComposite as xt, SUBTREE_RESULT_LIMIT as y, fullProfileMaterialization as yi, acquireSandbox as yn, environmentGone as yr, admitContinuationPolicy as yt, bindScopeRetainedOwnerProvider as z, providerAttemptEvidence as zi, FileSpawnJournal as zn, resolveRedactor as zr, createRouterTranscript as zt };
|
|
29606
29616
|
|
|
29607
|
-
//# sourceMappingURL=supervisor-
|
|
29617
|
+
//# sourceMappingURL=supervisor-DgcmBicU.js.map
|