@tangle-network/agent-runtime 0.337.2 → 0.338.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-DRHM55Oo.d.ts → activation-CsbNax2X.d.ts} +92 -4
- package/dist/activation-kbkAuSmY.js +889 -0
- package/dist/activation-kbkAuSmY.js.map +1 -0
- package/dist/agent.d.ts +1 -1
- package/dist/agent.js +3 -6
- package/dist/agent.js.map +1 -1
- package/dist/{bundle-BPGjESee.js → bundle-DM60AI2B.js} +2 -2
- package/dist/{bundle-BPGjESee.js.map → bundle-DM60AI2B.js.map} +1 -1
- package/dist/candidate-execution/index.d.ts +2 -2
- package/dist/candidate-execution/index.js +4 -5
- package/dist/candidate-execution/index.js.map +1 -1
- package/dist/content-digest-sBTLujlK.js +9 -0
- package/dist/content-digest-sBTLujlK.js.map +1 -0
- package/dist/{delegate-B-T_ZB50.js → delegate-Se1YZKMb.js} +2 -2
- package/dist/{delegate-B-T_ZB50.js.map → delegate-Se1YZKMb.js.map} +1 -1
- package/dist/{coordination-driver-BHkFVqIq.js → driver-control-acknowledgers-T2a1Ouay.js} +4514 -4440
- package/dist/driver-control-acknowledgers-T2a1Ouay.js.map +1 -0
- package/dist/durable.d.ts +1 -1
- package/dist/durable.js +223 -227
- package/dist/durable.js.map +1 -1
- package/dist/{graph-C4RFlWAJ.js → graph-CY0wH838.js} +65 -18
- package/dist/graph-CY0wH838.js.map +1 -0
- package/dist/{graph-registry-DAI6KNXB.js → graph-registry-By0tUj4S.js} +16 -15
- package/dist/graph-registry-By0tUj4S.js.map +1 -0
- package/dist/{improvement-cycle-D1I4hQvf.js → improve-CWGBT13K.js} +75 -1220
- package/dist/improve-CWGBT13K.js.map +1 -0
- package/dist/index.d.ts +6 -6
- package/dist/index.js +10 -13
- package/dist/index.js.map +1 -1
- package/dist/{integrations-DopfCC2a.d.ts → integrations-6xttbPi9.d.ts} +3 -3
- package/dist/integrations-dFi-ALk7.js.map +1 -1
- package/dist/intelligence.d.ts +7 -94
- package/dist/intelligence.js +505 -13
- package/dist/intelligence.js.map +1 -1
- package/dist/kernel.d.ts +2 -2
- package/dist/kernel.js +13 -12
- package/dist/{loop-runner-bin-DOuBIJ2O.d.ts → loop-runner-bin-CFnrAHpl.d.ts} +2 -2
- package/dist/{loop-runner-bin-Dv5QvYDH.js → loop-runner-bin-CdPlhy9g.js} +3 -3
- package/dist/{loop-runner-bin-Dv5QvYDH.js.map → loop-runner-bin-CdPlhy9g.js.map} +1 -1
- 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/bin.js.map +1 -1
- package/dist/mcp/index.d.ts +7 -3
- package/dist/mcp/index.js +6 -8
- package/dist/mcp/index.js.map +1 -1
- package/dist/{openai-tools-Oxk4KQrY.d.ts → openai-tools-zh2I_uD7.d.ts} +2 -2
- package/dist/platform.d.ts +7 -2
- package/dist/platform.js +16 -8
- package/dist/platform.js.map +1 -1
- package/dist/{prepare-CER-ZkPp.js → prepare-Bt0IouPq.js} +1241 -586
- package/dist/prepare-Bt0IouPq.js.map +1 -0
- package/dist/{profile-gNUsHNIJ.js → profile-Do-5xO_D.js} +89 -3
- package/dist/profile-Do-5xO_D.js.map +1 -0
- package/dist/profiles.d.ts +1 -1
- package/dist/profiles.js +1 -3
- package/dist/profiles.js.map +1 -1
- package/dist/{protected-model-port-BhpQRTw-.d.ts → protected-model-port-DGxQ8_YM.d.ts} +3 -3
- package/dist/{provision-supervisor-DGegCUH4.js → provision-supervisor-0jMufp4h.js} +12 -9
- package/dist/provision-supervisor-0jMufp4h.js.map +1 -0
- package/dist/record-value-B6bwJxLa.js +12 -0
- package/dist/record-value-B6bwJxLa.js.map +1 -0
- package/dist/{run-layout-Cu8H7aeh.js → run-cancellation-BoW5Sg9Y.js} +174 -95
- package/dist/run-cancellation-BoW5Sg9Y.js.map +1 -0
- package/dist/{runtime-BOGpotnH.js → runtime-D37zRSs7.js} +431 -621
- package/dist/runtime-D37zRSs7.js.map +1 -0
- package/dist/{sandbox-profile-compat-QTkLe1Z6.js → sandbox-profile-compat-xSoVtdWw.js} +690 -697
- package/dist/sandbox-profile-compat-xSoVtdWw.js.map +1 -0
- package/dist/search-executor-DmgUm5p7.js +1916 -0
- package/dist/search-executor-DmgUm5p7.js.map +1 -0
- package/dist/{server-hZWM-G8w.js → server-DQHJszfk.js} +4 -4
- package/dist/server-DQHJszfk.js.map +1 -0
- package/dist/{search-executor-Cm1WZmL-.js → structural-rollout-DAvIE8mw.js} +2261 -3984
- package/dist/structural-rollout-DAvIE8mw.js.map +1 -0
- package/dist/{supervise-CvAKVfue.js → supervise-WuPAwfPh.js} +7793 -5338
- package/dist/supervise-WuPAwfPh.js.map +1 -0
- package/dist/{supervisor-Rz8AGpYb.js → supervisor-CPG1I9UN.js} +26590 -27196
- package/dist/supervisor-CPG1I9UN.js.map +1 -0
- package/dist/testing.d.ts +226 -1
- package/dist/testing.js +13 -14
- package/dist/testing.js.map +1 -1
- package/dist/{top-app-BaMw1W2z.js → top-app-C55Wa7uy.js} +339 -337
- package/dist/top-app-C55Wa7uy.js.map +1 -0
- package/dist/tui/bin.js +1 -1
- package/dist/tui/index.d.ts +17 -15
- package/dist/tui/index.js +2 -2
- package/dist/{types-Dl5L4r8Z.d.ts → types-CrNWif8-.d.ts} +17410 -17173
- package/dist/{workspace-streams-JLjh5DC6.d.ts → workspace-streams-BZZds1Fw.d.ts} +18 -16
- package/package.json +2 -2
- package/skills/agent-graphs/SKILL.md +10 -3
- package/skills/agent-graphs/references/authoring.md +17 -0
- package/skills/profile-authoring/SKILL.md +3 -3
- package/skills/supervise/SKILL.md +2 -2
- package/dist/activation-BDP6Eivv.js +0 -234
- package/dist/activation-BDP6Eivv.js.map +0 -1
- package/dist/coordination-driver-BHkFVqIq.js.map +0 -1
- package/dist/graph-C4RFlWAJ.js.map +0 -1
- package/dist/graph-registry-DAI6KNXB.js.map +0 -1
- package/dist/improvement-cycle-D1I4hQvf.js.map +0 -1
- package/dist/prepare-CER-ZkPp.js.map +0 -1
- package/dist/profile-gNUsHNIJ.js.map +0 -1
- package/dist/protected-model-port-BuRsviSL.js +0 -766
- package/dist/protected-model-port-BuRsviSL.js.map +0 -1
- package/dist/provision-supervisor-DGegCUH4.js.map +0 -1
- package/dist/run-layout-Cu8H7aeh.js.map +0 -1
- package/dist/runtime-BOGpotnH.js.map +0 -1
- package/dist/sandbox-profile-compat-QTkLe1Z6.js.map +0 -1
- package/dist/search-executor-Cm1WZmL-.js.map +0 -1
- package/dist/server-hZWM-G8w.js.map +0 -1
- package/dist/supervise-CvAKVfue.js.map +0 -1
- package/dist/supervisor-Rz8AGpYb.js.map +0 -1
- package/dist/top-app-BaMw1W2z.js.map +0 -1
package/dist/index.d.ts
CHANGED
|
@@ -1,11 +1,11 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { $T as startRuntimeRun, AC as BackendTransportError, Ab as createOtelExporter, BC as ValidationError, Bb as RuntimeTelemetryOptions, C as RuntimeFailureCause, Cb as OtelExporter, D as runtimeFailureCause, Db as buildLoopSpanNodes, E as RuntimeFailureOwner, Eb as buildLoopOtelSpans, F as Budget, FC as RetainedInteractiveAdmissionError, Fb as toOtelAttributes, Ga as StructuralRolloutPolicy, Gb as sanitizeAgentRuntimeEvent, Hb as SanitizedKnowledgeRequirement, IC as RetainedInteractiveBindingError, Ib as RuntimeEventCollector, JT as RuntimeRunHandle, KT as RuntimeRunCompleteInput, Kb as sanitizeKnowledgeReadinessReport, LC as RetainedRunAdmissionError, Lb as RuntimeStreamEventCollector, Ld as SuperviseOptions, MC as JudgeError, Mb as loopEventToOtelSpan, NC as NotFoundError, Nb as padSpanId, O as settlementFailureCause, OC as AgentEvalError, Ob as buildRuntimeEventOtelSpans, PC as PlannerError, Pb as padTraceId, QT as RuntimeRunStatus, RC as RetainedRunDispatchBindingError, Rb as RuntimeStreamEventSink, S as RuntimeStreamEvent, Sb as OtelExportStats, Sh as ExecutorConfig, T as RuntimeFailureContext, TC as Redactor, Tb as RuntimeEventOtelOptions, UC as ExecutorFactory, Ub as createRuntimeEventCollector, Vb as SanitizedKnowledgeReadinessReport, Wb as createRuntimeStreamEventCollector, XT as RuntimeRunPersistenceAdapter, YT as RuntimeRunOptions, Yb as WorktreeCheckRunner, ZT as RuntimeRunRow, _ as RunAgentTaskOptions, a as AgentKnowledgeProvider, b as RuntimeSession, bb as OtelAttribute, c as AgentTaskContext, cC as D1StmtLike, d as AgentTaskStatus, f as BackendErrorDetail, g as OpenAIChatToolChoice, h as OpenAIChatTool, i as AgentExecutionBackend, jC as ConfigError, jb as generateSpanId, ju as IsolatedCheckResult, kC as AgentEvalErrorCode, kb as createOpenInferenceFileExporter, kp as SupervisorProfile, ku as IsolatedCheckBoxEvidence, l as AgentTaskRunResult, lC as SqlAdapter, m as OpenAIChatResponseFormat, n as AgentBackendContext, o as AgentRuntimeEvent, p as KnowledgeReadinessDecision, qT as RuntimeRunCost, qb as sanitizeRuntimeStreamEvent, r as AgentBackendInput, s as AgentRuntimeEventSink, sC as D1DatabaseLike, st as SupervisedResult, t as AgentAdapter, ty as DeliverableSpec, u as AgentTaskSpec, uC as d1ToSqlAdapter, v as RunAgentTaskStreamOptions, w as RuntimeFailureCode, wb as OtelSpan, x as RuntimeSessionStore, xb as OtelExportConfig, y as RuntimeCanonicalStreamEvent, yb as LoopSpanNode, zC as RuntimeRunStateError, zb as RuntimeStreamEventSummary } from "./types-CrNWif8-.js";
|
|
2
2
|
import { a as RuntimeHookErrorContext, c as RuntimeHookTarget, d as defineRuntimeHooks, f as notifyRuntimeDecisionPoint, i as RuntimeHookContext, l as RuntimeHooks, n as RuntimeDecisionKind, o as RuntimeHookEvent, p as notifyRuntimeHookEvent, r as RuntimeDecisionPoint, s as RuntimeHookPhase, t as RuntimeDecisionEvidenceRef, u as composeRuntimeHooks } from "./runtime-hooks-Bj6wJHlH.js";
|
|
3
|
-
import { P as AgentCandidateOutputArtifactPort } from "./workspace-streams-
|
|
3
|
+
import { P as AgentCandidateOutputArtifactPort } from "./workspace-streams-BZZds1Fw.js";
|
|
4
4
|
import { o as ImprovementProposalSource } from "./types-zWfqDjeL.js";
|
|
5
5
|
import { i as SurfaceImprovementEdit } from "./improvement-adapter-D5gwwoXQ.js";
|
|
6
|
-
import { $ as
|
|
7
|
-
import { _ as researchLoopRunner, a as DELEGATED_LOOP_MODES, c as DelegatedLoopResult, d as ResearchLoopRunnerOptions, f as RunDelegatedLoopOptions, g as isDelegatedLoopMode, h as auditLoopRunner, i as runLoopRunnerCli, l as DelegatedLoopRunner, m as WorktreeLoopRunnerOptions, n as LoopRunnerCliResult, o as DelegatedLoopMode, p as VetoedFact, r as parseLoopRunnerArgv, s as DelegatedLoopRegistry, t as LoopRunnerCliArgs, u as ResearchLoopResult, v as runDelegatedLoop, y as worktreeLoopRunner } from "./loop-runner-bin-
|
|
8
|
-
import { n as mcpToolsForRuntimeMcpSubset, t as mcpToolsForRuntimeMcp } from "./openai-tools-
|
|
6
|
+
import { $ as ImproveCandidateValidationInput, $t as Verifier, At as ImprovementCodeCandidate, B as searchMethod, Bt as SharedBoxSearchLane, Ct as ImproveSearchIdentity, Dt as ImproveSkillsOptions, Et as ImproveSearchResult, Ft as SearchEnvironmentFault, G as ControlledTrainingCommand, Gt as subscriptionLane, H as SearchImprovementDecision, Ht as isSearchEnvironmentFault, It as SearchLane, J as ProfileTrainer, Jt as AgenticGeneratorExecutorForWorktree, K as ImproveTrainingOptions, Kt as DeepReadonly, Lt as SearchLaneKind, Mt as SearchDispatchContext, Nt as SearchPromotion, Ot as ImproveSurface, Pt as SearchCellContext, Q as createCommandProfileTrainer, Qt as AgenticGeneratorShotReceipt, R as improve, Rt as SearchLaneOptions, St as ImproveSearchAgent, Tt as ImproveSearchOptions, U as decideSearchImprovement, Ut as routerLane, V as DecideSearchImprovementOptions, Vt as dedicatedLane, W as CheckpointServingPort, Wt as sharedBoxLane, X as TrainingBoundaryResult, Xt as AgenticGeneratorShotDisposition, Y as ProfileTrainerRequest, Yt as AgenticGeneratorOptions, Z as TrainingDatasetDocument, Zt as AgenticGeneratorShotExecution, _t as ImproveProfileComponents, at as ImproveCost, bt as ImproveRuntimeCodeGeneratorOptions, ct as ImproveMethodContext, dt as ImproveMethodOptions, en as VerifyResult, et as ImproveCandidateValidator, ft as ImproveMethodResult, gt as ImproveProfileAgent, ht as ImproveOptions, i as AgentImprovementActivationTransition, in as CandidateGenerator, it as ImproveCodeRunOptions, jt as ImprovementProfileCandidate, kt as ImprovementCandidate, lt as ImproveMethodFactory, mt as ImproveOptimizationRunOptions, n as AgentImprovementActivationResultStore, nn as commandVerifier, nt as ImproveCodeOptions, ot as ImproveCustomCodeGeneratorOptions, pt as ImproveMethodSource, q as ImproveTrainingResult, qt as ReadonlyAgentProfile, rn as defaultBuildPrompt, rt as ImproveCodeResult, st as ImproveLineage, t as AgentImprovementActivationReconciliation, tn as agenticGenerator, tt as ImproveCodeBaseOptions, ut as ImproveMethodLineage, vt as ImproveProfileSurface, wt as ImproveSearchMethod, xt as ImproveScenarioPartitions, yt as ImproveResult, z as SearchMethodOptions, zt as SearchTraceOptions } from "./activation-CsbNax2X.js";
|
|
7
|
+
import { _ as researchLoopRunner, a as DELEGATED_LOOP_MODES, c as DelegatedLoopResult, d as ResearchLoopRunnerOptions, f as RunDelegatedLoopOptions, g as isDelegatedLoopMode, h as auditLoopRunner, i as runLoopRunnerCli, l as DelegatedLoopRunner, m as WorktreeLoopRunnerOptions, n as LoopRunnerCliResult, o as DelegatedLoopMode, p as VetoedFact, r as parseLoopRunnerArgv, s as DelegatedLoopRegistry, t as LoopRunnerCliArgs, u as ResearchLoopResult, v as runDelegatedLoop, y as worktreeLoopRunner } from "./loop-runner-bin-CFnrAHpl.js";
|
|
8
|
+
import { n as mcpToolsForRuntimeMcpSubset, t as mcpToolsForRuntimeMcp } from "./openai-tools-zh2I_uD7.js";
|
|
9
9
|
import { AgentCandidateBundle, AgentCandidateCapturedArtifact, AgentCandidateKnowledge, AgentProfile, Sha256Digest } from "@tangle-network/agent-interface";
|
|
10
10
|
import { AgentProfile as AgentProfile$1, ControlBudget, ControlDecision, ControlEvalResult, ControlEvalResult as ControlEvalResult$1, ControlRunResult, ControlStep, CustomTokenPricing, DataAcquisitionPlan, KnowledgeReadinessReport, KnowledgeReadinessReport as KnowledgeReadinessReport$1, KnowledgeRequirement, MaximumCharge, ProposalFinding, RunRecord, RunRecord as RunRecord$1 } from "@tangle-network/agent-eval";
|
|
11
11
|
import { ZodType } from "zod";
|
|
@@ -282,7 +282,7 @@ interface RunConversationOptions {
|
|
|
282
282
|
/**
|
|
283
283
|
* Inbound depth at the point this driver was invoked. The runner
|
|
284
284
|
* increments it on every outbound participant call; gateways refuse at
|
|
285
|
-
* `
|
|
285
|
+
* `DEFAULT_MAX_FORWARD_DEPTH`. Default 0 (origin caller).
|
|
286
286
|
*/
|
|
287
287
|
inboundDepth?: number;
|
|
288
288
|
/**
|
package/dist/index.js
CHANGED
|
@@ -1,15 +1,16 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { An as padSpanId, Ar as priceTokens, Cn as buildLoopSpanNodes, En as createOtelExporter, Fn as sanitizeAgentRuntimeEvent, In as sanitizeKnowledgeReadinessReport, Ji as runtimeFailureCause, Ln as sanitizeRuntimeStreamEvent, Mn as toOtelAttributes, Mr as ROUTER_PRICE_SOURCE, Nn as createRuntimeEventCollector, On as generateSpanId, Pn as createRuntimeStreamEventCollector, Sn as buildLoopOtelSpans, Tn as createOpenInferenceFileExporter, Wi as executableAgentProfileSnapshot, Yi as settlementFailureCause, ba as defaultRedactorIdentityMaterial, jn as padTraceId, jr as routerTokenPrice, kn as loopEventToOtelSpan, wn as buildRuntimeEventOtelSpans, xa as resolveRedactor, za as providerMessageText } from "./supervisor-CPG1I9UN.js";
|
|
2
2
|
import { a as JudgeError, c as RetainedInteractiveAdmissionError, d as RetainedRunDispatchBindingError, f as RuntimeRunStateError, i as ConfigError, l as RetainedInteractiveBindingError, m as ValidationError, o as NotFoundError, r as BackendTransportError, s as PlannerError, t as AgentEvalError, u as RetainedRunAdmissionError } from "./errors-DodWX-cb.js";
|
|
3
|
-
import {
|
|
4
|
-
import { B as omitTopLevelDigest, F as canonicalCandidateDigest$1, P as canonicalCandidateBytes$1, R as embeddedCandidateArtifact, l as captureAgentCandidateWorkspace,
|
|
3
|
+
import { B as normalizeBackendStreamEvent, F as strategyAuthorMethod, G as touchSession, H as newRuntimeSession, L as streamAgentTurn, P as optimizerMethod, R as createIterableBackend, U as nowIso, V as InMemoryRuntimeSessionStore, W as startOrResumeRuntimeSession, z as createSandboxPromptBackend } from "./structural-rollout-DAvIE8mw.js";
|
|
4
|
+
import { B as omitTopLevelDigest, F as canonicalCandidateDigest$1, P as canonicalCandidateBytes$1, R as embeddedCandidateArtifact, l as captureAgentCandidateWorkspace, st as sleep, v as persistCandidateOutputArtifact, z as immutableCandidateValue } from "./sandbox-profile-compat-xSoVtdWw.js";
|
|
5
5
|
import { t as assertExecutableAgentProfile } from "./model-policy-CyCUwHed.js";
|
|
6
|
-
import {
|
|
7
|
-
import { $t as McpSpawnFault, en as connectStdioMcp } from "./runtime-BOGpotnH.js";
|
|
6
|
+
import { c as withMethodRuntimeControls, d as agenticGenerator, f as commandVerifier, g as isUsageAmount, h as createRuntimeUsageTotals, i as assertCandidateValidator, l as rawTraceDistiller, m as addRuntimeUsage, n as createCommandProfileTrainer, o as parseExecutionRef, p as defaultBuildPrompt, r as searchMethod, s as privateValuePaths, t as improve } from "./improve-CWGBT13K.js";
|
|
8
7
|
import { i as notifyRuntimeHookEvent, n as defineRuntimeHooks, r as notifyRuntimeDecisionPoint, t as composeRuntimeHooks } from "./runtime-hooks-tXpAarhW.js";
|
|
9
|
-
import {
|
|
10
|
-
import {
|
|
11
|
-
import { r as
|
|
12
|
-
import {
|
|
8
|
+
import { t as supervise } from "./supervise-WuPAwfPh.js";
|
|
9
|
+
import { D as parseRolloutPolicy, E as normalizeRolloutPolicy, O as serializeRolloutPolicy, T as applyRolloutPolicyToProfile, k as structuralRolloutPolicyFromProfile, n as createAgentImprovementActivationResult, w as ROLLOUT_POLICY_EXTENSION } from "./activation-kbkAuSmY.js";
|
|
10
|
+
import { i as isSearchEnvironmentFault, l as sharedBoxLane, o as routerLane, r as dedicatedLane, t as SearchEnvironmentFault, u as subscriptionLane, y as decideSearchImprovement } from "./search-executor-DmgUm5p7.js";
|
|
11
|
+
import { Xt as McpSpawnFault, Zt as connectStdioMcp } from "./runtime-D37zRSs7.js";
|
|
12
|
+
import { t as sealAgentCandidateBundle } from "./bundle-DM60AI2B.js";
|
|
13
|
+
import { a as isDelegatedLoopMode, c as worktreeLoopRunner, i as auditLoopRunner, n as runLoopRunnerCli, o as researchLoopRunner, r as DELEGATED_LOOP_MODES, s as runDelegatedLoop, t as parseLoopRunnerArgv } from "./loop-runner-bin-CdPlhy9g.js";
|
|
13
14
|
import { n as mcpToolsForRuntimeMcpSubset, t as mcpToolsForRuntimeMcp } from "./openai-tools-DoQ32vpe.js";
|
|
14
15
|
import { agentCandidateKnowledgeSchema, agentCandidateWorkspaceManifestMaterialSchema, agentProfileSchema, canonicalAgentProfileDigest, canonicalCandidateDigest, sha256DigestSchema } from "@tangle-network/agent-interface";
|
|
15
16
|
import { FAILURE_CLASSES, acquisitionPlansForKnowledgeGaps, blockingKnowledgeEval, canonicalJson, runAgentControlLoop, scoreKnowledgeReadiness, userQuestionsForKnowledgeGaps } from "@tangle-network/agent-eval";
|
|
@@ -208,10 +209,6 @@ function computeBackoff(spec, attempt) {
|
|
|
208
209
|
if (typeof spec === "function") return Math.max(0, spec(attempt));
|
|
209
210
|
return Math.max(0, spec);
|
|
210
211
|
}
|
|
211
|
-
/** Resolve after `ms` milliseconds — used for retry backoff in conversation call policy. */
|
|
212
|
-
function sleep(ms) {
|
|
213
|
-
return new Promise((resolve) => setTimeout(resolve, ms));
|
|
214
|
-
}
|
|
215
212
|
//#endregion
|
|
216
213
|
//#region src/conversation/headers.ts
|
|
217
214
|
/**
|