@attest-ai/core 0.5.0 → 0.9.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.
Files changed (123) hide show
  1. package/dist/cjs/index.cjs +741 -25
  2. package/dist/cjs/index.cjs.map +1 -1
  3. package/dist/cjs/index.d.cts +145 -8
  4. package/dist/cjs/proto/index.cjs +81 -0
  5. package/dist/cjs/proto/index.cjs.map +1 -1
  6. package/dist/cjs/proto/index.d.cts +145 -3
  7. package/dist/esm/cli.js +321 -2
  8. package/dist/esm/cli.js.map +1 -1
  9. package/dist/esm/index.d.ts +145 -8
  10. package/dist/esm/index.js +724 -25
  11. package/dist/esm/index.js.map +1 -1
  12. package/dist/esm/proto/index.d.ts +145 -3
  13. package/dist/esm/proto/index.js +77 -0
  14. package/dist/esm/proto/index.js.map +1 -1
  15. package/package.json +4 -4
  16. package/dist/adapters/anthropic.d.ts +0 -31
  17. package/dist/adapters/anthropic.d.ts.map +0 -1
  18. package/dist/adapters/anthropic.js +0 -42
  19. package/dist/adapters/anthropic.js.map +0 -1
  20. package/dist/adapters/gemini.d.ts +0 -30
  21. package/dist/adapters/gemini.d.ts.map +0 -1
  22. package/dist/adapters/gemini.js +0 -41
  23. package/dist/adapters/gemini.js.map +0 -1
  24. package/dist/adapters/index.d.ts +0 -11
  25. package/dist/adapters/index.d.ts.map +0 -1
  26. package/dist/adapters/index.js +0 -7
  27. package/dist/adapters/index.js.map +0 -1
  28. package/dist/adapters/manual.d.ts +0 -9
  29. package/dist/adapters/manual.d.ts.map +0 -1
  30. package/dist/adapters/manual.js +0 -16
  31. package/dist/adapters/manual.js.map +0 -1
  32. package/dist/adapters/ollama.d.ts +0 -19
  33. package/dist/adapters/ollama.d.ts.map +0 -1
  34. package/dist/adapters/ollama.js +0 -30
  35. package/dist/adapters/ollama.js.map +0 -1
  36. package/dist/adapters/openai.d.ts +0 -34
  37. package/dist/adapters/openai.d.ts.map +0 -1
  38. package/dist/adapters/openai.js +0 -42
  39. package/dist/adapters/openai.js.map +0 -1
  40. package/dist/adapters/otel.d.ts +0 -25
  41. package/dist/adapters/otel.d.ts.map +0 -1
  42. package/dist/adapters/otel.js +0 -133
  43. package/dist/adapters/otel.js.map +0 -1
  44. package/dist/agent.d.ts +0 -14
  45. package/dist/agent.d.ts.map +0 -1
  46. package/dist/agent.js +0 -54
  47. package/dist/agent.js.map +0 -1
  48. package/dist/client.d.ts +0 -23
  49. package/dist/client.d.ts.map +0 -1
  50. package/dist/client.js +0 -171
  51. package/dist/client.js.map +0 -1
  52. package/dist/config.d.ts +0 -21
  53. package/dist/config.d.ts.map +0 -1
  54. package/dist/config.js +0 -31
  55. package/dist/config.js.map +0 -1
  56. package/dist/context.d.ts +0 -4
  57. package/dist/context.d.ts.map +0 -1
  58. package/dist/context.js +0 -3
  59. package/dist/context.js.map +0 -1
  60. package/dist/delegate.d.ts +0 -3
  61. package/dist/delegate.d.ts.map +0 -1
  62. package/dist/delegate.js +0 -24
  63. package/dist/delegate.js.map +0 -1
  64. package/dist/engine-downloader.d.ts +0 -7
  65. package/dist/engine-downloader.d.ts.map +0 -1
  66. package/dist/engine-downloader.js +0 -136
  67. package/dist/engine-downloader.js.map +0 -1
  68. package/dist/engine-manager.d.ts +0 -26
  69. package/dist/engine-manager.d.ts.map +0 -1
  70. package/dist/engine-manager.js +0 -172
  71. package/dist/engine-manager.js.map +0 -1
  72. package/dist/expect.d.ts +0 -133
  73. package/dist/expect.d.ts.map +0 -1
  74. package/dist/expect.js +0 -330
  75. package/dist/expect.js.map +0 -1
  76. package/dist/index.d.ts +0 -16
  77. package/dist/index.d.ts.map +0 -1
  78. package/dist/index.js +0 -15
  79. package/dist/index.js.map +0 -1
  80. package/dist/proto/codec.d.ts +0 -20
  81. package/dist/proto/codec.d.ts.map +0 -1
  82. package/dist/proto/codec.js +0 -71
  83. package/dist/proto/codec.js.map +0 -1
  84. package/dist/proto/constants.d.ts +0 -21
  85. package/dist/proto/constants.d.ts.map +0 -1
  86. package/dist/proto/constants.js +0 -25
  87. package/dist/proto/constants.js.map +0 -1
  88. package/dist/proto/errors.d.ts +0 -13
  89. package/dist/proto/errors.d.ts.map +0 -1
  90. package/dist/proto/errors.js +0 -24
  91. package/dist/proto/errors.js.map +0 -1
  92. package/dist/proto/index.d.ts +0 -5
  93. package/dist/proto/index.d.ts.map +0 -1
  94. package/dist/proto/index.js +0 -5
  95. package/dist/proto/index.js.map +0 -1
  96. package/dist/proto/types.d.ts +0 -104
  97. package/dist/proto/types.d.ts.map +0 -1
  98. package/dist/proto/types.js +0 -2
  99. package/dist/proto/types.js.map +0 -1
  100. package/dist/result.d.ts +0 -15
  101. package/dist/result.d.ts.map +0 -1
  102. package/dist/result.js +0 -32
  103. package/dist/result.js.map +0 -1
  104. package/dist/simulation.d.ts +0 -8
  105. package/dist/simulation.d.ts.map +0 -1
  106. package/dist/simulation.js +0 -21
  107. package/dist/simulation.js.map +0 -1
  108. package/dist/tier.d.ts +0 -5
  109. package/dist/tier.d.ts.map +0 -1
  110. package/dist/tier.js +0 -10
  111. package/dist/tier.js.map +0 -1
  112. package/dist/trace-tree.d.ts +0 -20
  113. package/dist/trace-tree.d.ts.map +0 -1
  114. package/dist/trace-tree.js +0 -92
  115. package/dist/trace-tree.js.map +0 -1
  116. package/dist/trace.d.ts +0 -41
  117. package/dist/trace.d.ts.map +0 -1
  118. package/dist/trace.js +0 -88
  119. package/dist/trace.js.map +0 -1
  120. package/dist/version.d.ts +0 -3
  121. package/dist/version.d.ts.map +0 -1
  122. package/dist/version.js +0 -3
  123. package/dist/version.js.map +0 -1
@@ -1,19 +0,0 @@
1
- import type { Trace } from "../proto/types.js";
2
- interface OllamaResponse {
3
- model?: string;
4
- message?: {
5
- content?: string;
6
- };
7
- eval_count?: number;
8
- prompt_eval_count?: number;
9
- }
10
- export declare class OllamaAdapter {
11
- private readonly agentId;
12
- constructor(agentId?: string);
13
- traceFromResponse(response: OllamaResponse, options?: {
14
- inputMessages?: Record<string, unknown>[];
15
- latencyMs?: number;
16
- }): Trace;
17
- }
18
- export {};
19
- //# sourceMappingURL=ollama.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"ollama.d.ts","sourceRoot":"","sources":["../../src/adapters/ollama.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,mBAAmB,CAAC;AAG/C,UAAU,cAAc;IACtB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,OAAO,CAAC,EAAE;QAAE,OAAO,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC;IAC/B,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,iBAAiB,CAAC,EAAE,MAAM,CAAC;CAC5B;AAED,qBAAa,aAAa;IACxB,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAqB;gBAEjC,OAAO,CAAC,EAAE,MAAM;IAI5B,iBAAiB,CACf,QAAQ,EAAE,cAAc,EACxB,OAAO,CAAC,EAAE;QACR,aAAa,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,CAAC;QAC1C,SAAS,CAAC,EAAE,MAAM,CAAC;KACpB,GACA,KAAK;CA6BT"}
@@ -1,30 +0,0 @@
1
- import { TraceBuilder } from "../trace.js";
2
- export class OllamaAdapter {
3
- agentId;
4
- constructor(agentId) {
5
- this.agentId = agentId;
6
- }
7
- traceFromResponse(response, options) {
8
- const builder = new TraceBuilder(this.agentId);
9
- if (options?.inputMessages) {
10
- builder.setInput({ messages: options.inputMessages });
11
- }
12
- const completionText = response.message?.content ?? "";
13
- builder.addLlmCall("completion", {
14
- args: { model: response.model ?? "" },
15
- result: { completion: completionText },
16
- });
17
- builder.setOutput({ message: completionText });
18
- let totalTokens;
19
- if (response.eval_count !== undefined && response.prompt_eval_count !== undefined) {
20
- totalTokens = response.eval_count + response.prompt_eval_count;
21
- }
22
- builder.setMetadata({
23
- total_tokens: totalTokens,
24
- latency_ms: options?.latencyMs,
25
- model: response.model,
26
- });
27
- return builder.build();
28
- }
29
- }
30
- //# sourceMappingURL=ollama.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"ollama.js","sourceRoot":"","sources":["../../src/adapters/ollama.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAS3C,MAAM,OAAO,aAAa;IACP,OAAO,CAAqB;IAE7C,YAAY,OAAgB;QAC1B,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;IACzB,CAAC;IAED,iBAAiB,CACf,QAAwB,EACxB,OAGC;QAED,MAAM,OAAO,GAAG,IAAI,YAAY,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QAE/C,IAAI,OAAO,EAAE,aAAa,EAAE,CAAC;YAC3B,OAAO,CAAC,QAAQ,CAAC,EAAE,QAAQ,EAAE,OAAO,CAAC,aAAa,EAAE,CAAC,CAAC;QACxD,CAAC;QAED,MAAM,cAAc,GAAG,QAAQ,CAAC,OAAO,EAAE,OAAO,IAAI,EAAE,CAAC;QAEvD,OAAO,CAAC,UAAU,CAAC,YAAY,EAAE;YAC/B,IAAI,EAAE,EAAE,KAAK,EAAE,QAAQ,CAAC,KAAK,IAAI,EAAE,EAAE;YACrC,MAAM,EAAE,EAAE,UAAU,EAAE,cAAc,EAAE;SACvC,CAAC,CAAC;QAEH,OAAO,CAAC,SAAS,CAAC,EAAE,OAAO,EAAE,cAAc,EAAE,CAAC,CAAC;QAE/C,IAAI,WAA+B,CAAC;QACpC,IAAI,QAAQ,CAAC,UAAU,KAAK,SAAS,IAAI,QAAQ,CAAC,iBAAiB,KAAK,SAAS,EAAE,CAAC;YAClF,WAAW,GAAG,QAAQ,CAAC,UAAU,GAAG,QAAQ,CAAC,iBAAiB,CAAC;QACjE,CAAC;QAED,OAAO,CAAC,WAAW,CAAC;YAClB,YAAY,EAAE,WAAW;YACzB,UAAU,EAAE,OAAO,EAAE,SAAS;YAC9B,KAAK,EAAE,QAAQ,CAAC,KAAK;SACtB,CAAC,CAAC;QAEH,OAAO,OAAO,CAAC,KAAK,EAAE,CAAC;IACzB,CAAC;CACF"}
@@ -1,34 +0,0 @@
1
- import type { Trace } from "../proto/types.js";
2
- interface OpenAIUsage {
3
- total_tokens?: number;
4
- }
5
- interface OpenAIToolCall {
6
- function: {
7
- name: string;
8
- arguments: string;
9
- };
10
- }
11
- interface OpenAIMessage {
12
- content: string | null;
13
- tool_calls?: OpenAIToolCall[];
14
- }
15
- interface OpenAIChoice {
16
- message: OpenAIMessage;
17
- }
18
- interface OpenAIChatCompletion {
19
- model?: string;
20
- usage?: OpenAIUsage;
21
- choices: OpenAIChoice[];
22
- }
23
- export declare class OpenAIAdapter {
24
- private readonly agentId;
25
- constructor(agentId?: string);
26
- traceFromResponse(response: OpenAIChatCompletion, options?: {
27
- inputMessages?: Record<string, unknown>[];
28
- costUsd?: number;
29
- latencyMs?: number;
30
- structuredOutput?: Record<string, unknown>;
31
- }): Trace;
32
- }
33
- export {};
34
- //# sourceMappingURL=openai.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"openai.d.ts","sourceRoot":"","sources":["../../src/adapters/openai.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,mBAAmB,CAAC;AAG/C,UAAU,WAAW;IACnB,YAAY,CAAC,EAAE,MAAM,CAAC;CACvB;AAED,UAAU,cAAc;IACtB,QAAQ,EAAE;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,SAAS,EAAE,MAAM,CAAA;KAAE,CAAC;CAC/C;AAED,UAAU,aAAa;IACrB,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;IACvB,UAAU,CAAC,EAAE,cAAc,EAAE,CAAC;CAC/B;AAED,UAAU,YAAY;IACpB,OAAO,EAAE,aAAa,CAAC;CACxB;AAED,UAAU,oBAAoB;IAC5B,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,KAAK,CAAC,EAAE,WAAW,CAAC;IACpB,OAAO,EAAE,YAAY,EAAE,CAAC;CACzB;AAED,qBAAa,aAAa;IACxB,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAqB;gBAEjC,OAAO,CAAC,EAAE,MAAM;IAI5B,iBAAiB,CACf,QAAQ,EAAE,oBAAoB,EAC9B,OAAO,CAAC,EAAE;QACR,aAAa,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,CAAC;QAC1C,OAAO,CAAC,EAAE,MAAM,CAAC;QACjB,SAAS,CAAC,EAAE,MAAM,CAAC;QACnB,gBAAgB,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;KAC5C,GACA,KAAK;CA0CT"}
@@ -1,42 +0,0 @@
1
- import { TraceBuilder } from "../trace.js";
2
- export class OpenAIAdapter {
3
- agentId;
4
- constructor(agentId) {
5
- this.agentId = agentId;
6
- }
7
- traceFromResponse(response, options) {
8
- const builder = new TraceBuilder(this.agentId);
9
- if (options?.inputMessages) {
10
- builder.setInput({ messages: options.inputMessages });
11
- }
12
- const message = response.choices[0].message;
13
- const completionText = message.content ?? "";
14
- const stepArgs = {};
15
- if (response.model !== undefined)
16
- stepArgs.model = response.model;
17
- const stepResult = { completion: completionText };
18
- if (response.usage?.total_tokens !== undefined) {
19
- stepResult.tokens = response.usage.total_tokens;
20
- }
21
- builder.addLlmCall("completion", { args: stepArgs, result: stepResult });
22
- if (message.tool_calls) {
23
- for (const tc of message.tool_calls) {
24
- builder.addToolCall(tc.function.name, {
25
- args: { arguments: tc.function.arguments },
26
- });
27
- }
28
- }
29
- builder.setOutput({
30
- message: completionText,
31
- structured: options?.structuredOutput ?? {},
32
- });
33
- builder.setMetadata({
34
- total_tokens: response.usage?.total_tokens,
35
- cost_usd: options?.costUsd,
36
- latency_ms: options?.latencyMs,
37
- model: response.model,
38
- });
39
- return builder.build();
40
- }
41
- }
42
- //# sourceMappingURL=openai.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"openai.js","sourceRoot":"","sources":["../../src/adapters/openai.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAyB3C,MAAM,OAAO,aAAa;IACP,OAAO,CAAqB;IAE7C,YAAY,OAAgB;QAC1B,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;IACzB,CAAC;IAED,iBAAiB,CACf,QAA8B,EAC9B,OAKC;QAED,MAAM,OAAO,GAAG,IAAI,YAAY,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QAE/C,IAAI,OAAO,EAAE,aAAa,EAAE,CAAC;YAC3B,OAAO,CAAC,QAAQ,CAAC,EAAE,QAAQ,EAAE,OAAO,CAAC,aAAa,EAAE,CAAC,CAAC;QACxD,CAAC;QAED,MAAM,OAAO,GAAG,QAAQ,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC;QAC5C,MAAM,cAAc,GAAG,OAAO,CAAC,OAAO,IAAI,EAAE,CAAC;QAE7C,MAAM,QAAQ,GAA4B,EAAE,CAAC;QAC7C,IAAI,QAAQ,CAAC,KAAK,KAAK,SAAS;YAAE,QAAQ,CAAC,KAAK,GAAG,QAAQ,CAAC,KAAK,CAAC;QAElE,MAAM,UAAU,GAA4B,EAAE,UAAU,EAAE,cAAc,EAAE,CAAC;QAC3E,IAAI,QAAQ,CAAC,KAAK,EAAE,YAAY,KAAK,SAAS,EAAE,CAAC;YAC/C,UAAU,CAAC,MAAM,GAAG,QAAQ,CAAC,KAAK,CAAC,YAAY,CAAC;QAClD,CAAC;QAED,OAAO,CAAC,UAAU,CAAC,YAAY,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,EAAE,UAAU,EAAE,CAAC,CAAC;QAEzE,IAAI,OAAO,CAAC,UAAU,EAAE,CAAC;YACvB,KAAK,MAAM,EAAE,IAAI,OAAO,CAAC,UAAU,EAAE,CAAC;gBACpC,OAAO,CAAC,WAAW,CAAC,EAAE,CAAC,QAAQ,CAAC,IAAI,EAAE;oBACpC,IAAI,EAAE,EAAE,SAAS,EAAE,EAAE,CAAC,QAAQ,CAAC,SAAS,EAAE;iBAC3C,CAAC,CAAC;YACL,CAAC;QACH,CAAC;QAED,OAAO,CAAC,SAAS,CAAC;YAChB,OAAO,EAAE,cAAc;YACvB,UAAU,EAAE,OAAO,EAAE,gBAAgB,IAAI,EAAE;SAC5C,CAAC,CAAC;QAEH,OAAO,CAAC,WAAW,CAAC;YAClB,YAAY,EAAE,QAAQ,CAAC,KAAK,EAAE,YAAY;YAC1C,QAAQ,EAAE,OAAO,EAAE,OAAO;YAC1B,UAAU,EAAE,OAAO,EAAE,SAAS;YAC9B,KAAK,EAAE,QAAQ,CAAC,KAAK;SACtB,CAAC,CAAC;QAEH,OAAO,OAAO,CAAC,KAAK,EAAE,CAAC;IACzB,CAAC;CACF"}
@@ -1,25 +0,0 @@
1
- import type { Trace } from "../proto/types.js";
2
- interface OTelSpanContext {
3
- traceId: string;
4
- }
5
- interface OTelSpan {
6
- name: string;
7
- startTime: [number, number];
8
- endTime: [number, number];
9
- attributes?: Record<string, unknown>;
10
- parentSpanId?: string;
11
- spanContext(): OTelSpanContext;
12
- }
13
- export declare class OTelAdapter {
14
- private readonly agentId;
15
- constructor(agentId?: string);
16
- static fromSpans(spans: OTelSpan[], agentId?: string): Trace;
17
- private buildTrace;
18
- private findRootSpan;
19
- private classifySpan;
20
- private extractLlmStep;
21
- private extractToolStep;
22
- private spanMetadata;
23
- }
24
- export {};
25
- //# sourceMappingURL=otel.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"otel.d.ts","sourceRoot":"","sources":["../../src/adapters/otel.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,mBAAmB,CAAC;AAG/C,UAAU,eAAe;IACvB,OAAO,EAAE,MAAM,CAAC;CACjB;AAED,UAAU,QAAQ;IAChB,IAAI,EAAE,MAAM,CAAC;IACb,SAAS,EAAE,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAC5B,OAAO,EAAE,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAC1B,UAAU,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IACrC,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,WAAW,IAAI,eAAe,CAAC;CAChC;AAED,qBAAa,WAAW;IACtB,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAqB;gBAEjC,OAAO,CAAC,EAAE,MAAM;IAI5B,MAAM,CAAC,SAAS,CAAC,KAAK,EAAE,QAAQ,EAAE,EAAE,OAAO,CAAC,EAAE,MAAM,GAAG,KAAK;IAK5D,OAAO,CAAC,UAAU;IAuElB,OAAO,CAAC,YAAY;IAOpB,OAAO,CAAC,YAAY;IAcpB,OAAO,CAAC,cAAc;IAgBtB,OAAO,CAAC,eAAe;IAWvB,OAAO,CAAC,YAAY;CAKrB"}
@@ -1,133 +0,0 @@
1
- import { TraceBuilder } from "../trace.js";
2
- export class OTelAdapter {
3
- agentId;
4
- constructor(agentId) {
5
- this.agentId = agentId;
6
- }
7
- static fromSpans(spans, agentId) {
8
- const adapter = new OTelAdapter(agentId);
9
- return adapter.buildTrace(spans);
10
- }
11
- buildTrace(spans) {
12
- const sorted = [...spans].sort((a, b) => {
13
- const aTime = a.startTime[0] * 1e9 + a.startTime[1];
14
- const bTime = b.startTime[0] * 1e9 + b.startTime[1];
15
- return aTime - bTime;
16
- });
17
- const builder = new TraceBuilder(this.agentId);
18
- const rootSpan = this.findRootSpan(sorted);
19
- if (rootSpan) {
20
- const traceId = rootSpan.spanContext().traceId;
21
- if (traceId) {
22
- builder.setTraceId(`otel_${traceId.slice(0, 16)}`);
23
- }
24
- }
25
- let outputMessage = "";
26
- let totalTokens;
27
- let latencyMs;
28
- let model;
29
- for (const span of sorted) {
30
- const attrs = span.attributes ?? {};
31
- const stepType = this.classifySpan(attrs, span.name);
32
- if (stepType === "llm_call") {
33
- const [stepArgs, stepResult] = this.extractLlmStep(attrs);
34
- builder.addLlmCall(span.name, {
35
- args: stepArgs,
36
- result: stepResult,
37
- metadata: this.spanMetadata(span),
38
- });
39
- const completion = attrs["gen_ai.completion"];
40
- if (completion)
41
- outputMessage = String(completion);
42
- const inputTokens = Number(attrs["gen_ai.usage.input_tokens"] ?? 0);
43
- const outputTokens = Number(attrs["gen_ai.usage.output_tokens"] ?? 0);
44
- const spanTokens = inputTokens + outputTokens;
45
- if (spanTokens > 0)
46
- totalTokens = (totalTokens ?? 0) + spanTokens;
47
- if (model === undefined) {
48
- const responseModel = attrs["gen_ai.response.model"];
49
- const requestModel = attrs["gen_ai.request.model"];
50
- if (responseModel)
51
- model = String(responseModel);
52
- else if (requestModel)
53
- model = String(requestModel);
54
- }
55
- }
56
- else if (stepType === "tool_call") {
57
- const [stepArgs, stepResult] = this.extractToolStep(attrs);
58
- const toolName = String(attrs["gen_ai.tool.name"] ?? span.name);
59
- builder.addToolCall(toolName, {
60
- args: stepArgs,
61
- result: stepResult,
62
- metadata: this.spanMetadata(span),
63
- });
64
- }
65
- }
66
- if (rootSpan) {
67
- const startNs = rootSpan.startTime[0] * 1e9 + rootSpan.startTime[1];
68
- const endNs = rootSpan.endTime[0] * 1e9 + rootSpan.endTime[1];
69
- latencyMs = Math.floor((endNs - startNs) / 1_000_000);
70
- }
71
- builder.setOutput({ message: outputMessage });
72
- builder.setMetadata({ total_tokens: totalTokens, latency_ms: latencyMs, model });
73
- return builder.build();
74
- }
75
- findRootSpan(spans) {
76
- for (const span of spans) {
77
- if (!span.parentSpanId)
78
- return span;
79
- }
80
- return spans[0];
81
- }
82
- classifySpan(attrs, name) {
83
- const op = String(attrs["gen_ai.operation.name"] ?? "");
84
- if (op === "chat" || op === "completion" || op === "generate_content" || "gen_ai.completion" in attrs) {
85
- return "llm_call";
86
- }
87
- if (op === "tool" || "gen_ai.tool.name" in attrs) {
88
- return "tool_call";
89
- }
90
- const lower = name.toLowerCase();
91
- if (lower.includes("completion") || lower.includes("chat"))
92
- return "llm_call";
93
- if (lower.includes("tool"))
94
- return "tool_call";
95
- return undefined;
96
- }
97
- extractLlmStep(attrs) {
98
- const args = {};
99
- const result = {};
100
- if ("gen_ai.request.model" in attrs)
101
- args.model = String(attrs["gen_ai.request.model"]);
102
- if ("gen_ai.system" in attrs)
103
- args.system = String(attrs["gen_ai.system"]);
104
- if ("gen_ai.prompt" in attrs)
105
- args.prompt = String(attrs["gen_ai.prompt"]);
106
- if ("gen_ai.completion" in attrs)
107
- result.completion = String(attrs["gen_ai.completion"]);
108
- if ("gen_ai.usage.input_tokens" in attrs)
109
- result.input_tokens = Number(attrs["gen_ai.usage.input_tokens"]);
110
- if ("gen_ai.usage.output_tokens" in attrs)
111
- result.output_tokens = Number(attrs["gen_ai.usage.output_tokens"]);
112
- if ("gen_ai.response.model" in attrs)
113
- result.model = String(attrs["gen_ai.response.model"]);
114
- return [args, result];
115
- }
116
- extractToolStep(attrs) {
117
- const args = {};
118
- const result = {};
119
- if ("gen_ai.tool.call.id" in attrs)
120
- args.call_id = String(attrs["gen_ai.tool.call.id"]);
121
- if ("gen_ai.tool.parameters" in attrs)
122
- args.parameters = attrs["gen_ai.tool.parameters"];
123
- if ("gen_ai.tool.output" in attrs)
124
- result.output = attrs["gen_ai.tool.output"];
125
- return [args, result];
126
- }
127
- spanMetadata(span) {
128
- const startNs = span.startTime[0] * 1e9 + span.startTime[1];
129
- const endNs = span.endTime[0] * 1e9 + span.endTime[1];
130
- return { duration_ms: Math.floor((endNs - startNs) / 1_000_000) };
131
- }
132
- }
133
- //# sourceMappingURL=otel.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"otel.js","sourceRoot":"","sources":["../../src/adapters/otel.ts"],"names":[],"mappings":"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"}
package/dist/agent.d.ts DELETED
@@ -1,14 +0,0 @@
1
- import type { Trace } from "./proto/types.js";
2
- import { AgentResult } from "./result.js";
3
- import { TraceBuilder } from "./trace.js";
4
- export declare class Agent {
5
- readonly name: string;
6
- private readonly fn;
7
- constructor(name: string, fn?: (builder: TraceBuilder, args: Record<string, unknown>) => unknown);
8
- run(args?: Record<string, unknown>): AgentResult;
9
- arun(args?: Record<string, unknown>): Promise<AgentResult>;
10
- private setOutput;
11
- withTrace(trace: Trace): AgentResult;
12
- }
13
- export declare function agent(name: string, fn: (builder: TraceBuilder, args: Record<string, unknown>) => unknown): (args?: Record<string, unknown>) => AgentResult;
14
- //# sourceMappingURL=agent.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"agent.d.ts","sourceRoot":"","sources":["../src/agent.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,kBAAkB,CAAC;AAC9C,OAAO,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAC1C,OAAO,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AAG1C,qBAAa,KAAK;IAChB,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,OAAO,CAAC,QAAQ,CAAC,EAAE,CAAkF;gBAGnG,IAAI,EAAE,MAAM,EACZ,EAAE,CAAC,EAAE,CAAC,OAAO,EAAE,YAAY,EAAE,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,KAAK,OAAO;IAMxE,GAAG,CAAC,IAAI,GAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAM,GAAG,WAAW;IAc9C,IAAI,CAAC,IAAI,GAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAM,GAAG,OAAO,CAAC,WAAW,CAAC;IAcpE,OAAO,CAAC,SAAS;IAUjB,SAAS,CAAC,KAAK,EAAE,KAAK,GAAG,WAAW;CAGrC;AAED,wBAAgB,KAAK,CACnB,IAAI,EAAE,MAAM,EACZ,EAAE,EAAE,CAAC,OAAO,EAAE,YAAY,EAAE,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,KAAK,OAAO,GACpE,CAAC,IAAI,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,KAAK,WAAW,CASjD"}
package/dist/agent.js DELETED
@@ -1,54 +0,0 @@
1
- import { AgentResult } from "./result.js";
2
- import { TraceBuilder } from "./trace.js";
3
- import { activeBuilder } from "./context.js";
4
- export class Agent {
5
- name;
6
- fn;
7
- constructor(name, fn) {
8
- this.name = name;
9
- this.fn = fn;
10
- }
11
- run(args = {}) {
12
- if (this.fn === undefined) {
13
- throw new Error("No agent function provided. Pass fn to Agent().");
14
- }
15
- const builder = new TraceBuilder(this.name);
16
- builder.setInput(args);
17
- const output = activeBuilder.run(builder, () => this.fn(builder, args));
18
- this.setOutput(builder, output);
19
- return new AgentResult(builder.build());
20
- }
21
- async arun(args = {}) {
22
- if (this.fn === undefined) {
23
- throw new Error("No agent function provided. Pass fn to Agent().");
24
- }
25
- const builder = new TraceBuilder(this.name);
26
- builder.setInput(args);
27
- const output = await activeBuilder.run(builder, async () => this.fn(builder, args));
28
- this.setOutput(builder, output);
29
- return new AgentResult(builder.build());
30
- }
31
- setOutput(builder, output) {
32
- if (output !== null && output !== undefined && typeof output === "object" && !Array.isArray(output)) {
33
- builder.setOutput(output);
34
- }
35
- else if (output !== undefined) {
36
- builder.setOutput({ result: output });
37
- }
38
- else {
39
- builder.setOutput({ result: null });
40
- }
41
- }
42
- withTrace(trace) {
43
- return new AgentResult(trace);
44
- }
45
- }
46
- export function agent(name, fn) {
47
- const wrapped = new Agent(name, fn);
48
- const wrapper = (args) => {
49
- return wrapped.run(args ?? {});
50
- };
51
- wrapper.agent = wrapped;
52
- return wrapper;
53
- }
54
- //# sourceMappingURL=agent.js.map
package/dist/agent.js.map DELETED
@@ -1 +0,0 @@
1
- {"version":3,"file":"agent.js","sourceRoot":"","sources":["../src/agent.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAC1C,OAAO,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AAC1C,OAAO,EAAE,aAAa,EAAE,MAAM,cAAc,CAAC;AAE7C,MAAM,OAAO,KAAK;IACP,IAAI,CAAS;IACL,EAAE,CAAkF;IAErG,YACE,IAAY,EACZ,EAAsE;QAEtE,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;QACjB,IAAI,CAAC,EAAE,GAAG,EAAE,CAAC;IACf,CAAC;IAED,GAAG,CAAC,OAAgC,EAAE;QACpC,IAAI,IAAI,CAAC,EAAE,KAAK,SAAS,EAAE,CAAC;YAC1B,MAAM,IAAI,KAAK,CAAC,iDAAiD,CAAC,CAAC;QACrE,CAAC;QAED,MAAM,OAAO,GAAG,IAAI,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAC5C,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;QAEvB,MAAM,MAAM,GAAG,aAAa,CAAC,GAAG,CAAC,OAAO,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,EAAG,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC,CAAC;QACzE,IAAI,CAAC,SAAS,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;QAEhC,OAAO,IAAI,WAAW,CAAC,OAAO,CAAC,KAAK,EAAE,CAAC,CAAC;IAC1C,CAAC;IAED,KAAK,CAAC,IAAI,CAAC,OAAgC,EAAE;QAC3C,IAAI,IAAI,CAAC,EAAE,KAAK,SAAS,EAAE,CAAC;YAC1B,MAAM,IAAI,KAAK,CAAC,iDAAiD,CAAC,CAAC;QACrE,CAAC;QAED,MAAM,OAAO,GAAG,IAAI,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAC5C,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;QAEvB,MAAM,MAAM,GAAG,MAAM,aAAa,CAAC,GAAG,CAAC,OAAO,EAAE,KAAK,IAAI,EAAE,CAAC,IAAI,CAAC,EAAG,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC,CAAC;QACrF,IAAI,CAAC,SAAS,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;QAEhC,OAAO,IAAI,WAAW,CAAC,OAAO,CAAC,KAAK,EAAE,CAAC,CAAC;IAC1C,CAAC;IAEO,SAAS,CAAC,OAAqB,EAAE,MAAe;QACtD,IAAI,MAAM,KAAK,IAAI,IAAI,MAAM,KAAK,SAAS,IAAI,OAAO,MAAM,KAAK,QAAQ,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC;YACpG,OAAO,CAAC,SAAS,CAAC,MAAiC,CAAC,CAAC;QACvD,CAAC;aAAM,IAAI,MAAM,KAAK,SAAS,EAAE,CAAC;YAChC,OAAO,CAAC,SAAS,CAAC,EAAE,MAAM,EAAE,MAAM,EAAE,CAAC,CAAC;QACxC,CAAC;aAAM,CAAC;YACN,OAAO,CAAC,SAAS,CAAC,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC;QACtC,CAAC;IACH,CAAC;IAED,SAAS,CAAC,KAAY;QACpB,OAAO,IAAI,WAAW,CAAC,KAAK,CAAC,CAAC;IAChC,CAAC;CACF;AAED,MAAM,UAAU,KAAK,CACnB,IAAY,EACZ,EAAqE;IAErE,MAAM,OAAO,GAAG,IAAI,KAAK,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;IAEpC,MAAM,OAAO,GAAG,CAAC,IAA8B,EAAe,EAAE;QAC9D,OAAO,OAAO,CAAC,GAAG,CAAC,IAAI,IAAI,EAAE,CAAC,CAAC;IACjC,CAAC,CAAC;IAED,OAA8C,CAAC,KAAK,GAAG,OAAO,CAAC;IAChE,OAAO,OAAO,CAAC;AACjB,CAAC"}
package/dist/client.d.ts DELETED
@@ -1,23 +0,0 @@
1
- import type { Assertion, EvaluateBatchResult, Trace } from "./proto/types.js";
2
- import type { EngineManager } from "./engine-manager.js";
3
- export declare class AttestClient {
4
- private readonly engine;
5
- private requestId;
6
- private readonly pending;
7
- private writeChain;
8
- private readerActive;
9
- private lineHandler;
10
- constructor(engine: EngineManager);
11
- startReader(): void;
12
- stopReader(): void;
13
- private handleLine;
14
- private failAll;
15
- sendRequest(method: string, params: Record<string, unknown>, timeoutMs?: number): Promise<unknown>;
16
- evaluateBatch(trace: Trace, assertions: readonly Assertion[], options?: {
17
- timeout?: number;
18
- }): Promise<EvaluateBatchResult>;
19
- submitPluginResult(traceId: string, pluginName: string, assertionId: string, status: string, score: number, explanation: string, options?: {
20
- timeout?: number;
21
- }): Promise<boolean>;
22
- }
23
- //# sourceMappingURL=client.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../src/client.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EACV,SAAS,EACT,mBAAmB,EACnB,KAAK,EAEN,MAAM,kBAAkB,CAAC;AAQ1B,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AAkCzD,qBAAa,YAAY;IACvB,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAgB;IACvC,OAAO,CAAC,SAAS,CAAK;IACtB,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAqC;IAC7D,OAAO,CAAC,UAAU,CAAoC;IACtD,OAAO,CAAC,YAAY,CAAS;IAC7B,OAAO,CAAC,WAAW,CAAyC;gBAEhD,MAAM,EAAE,aAAa;IAIjC,WAAW,IAAI,IAAI;IAkBnB,UAAU,IAAI,IAAI;IAYlB,OAAO,CAAC,UAAU;IAoClB,OAAO,CAAC,OAAO;IAOT,WAAW,CACf,MAAM,EAAE,MAAM,EACd,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAC/B,SAAS,CAAC,EAAE,MAAM,GACjB,OAAO,CAAC,OAAO,CAAC;IA8Cb,aAAa,CACjB,KAAK,EAAE,KAAK,EACZ,UAAU,EAAE,SAAS,SAAS,EAAE,EAChC,OAAO,CAAC,EAAE;QAAE,OAAO,CAAC,EAAE,MAAM,CAAA;KAAE,GAC7B,OAAO,CAAC,mBAAmB,CAAC;IAiBzB,kBAAkB,CACtB,OAAO,EAAE,MAAM,EACf,UAAU,EAAE,MAAM,EAClB,WAAW,EAAE,MAAM,EACnB,MAAM,EAAE,MAAM,EACd,KAAK,EAAE,MAAM,EACb,WAAW,EAAE,MAAM,EACnB,OAAO,CAAC,EAAE;QAAE,OAAO,CAAC,EAAE,MAAM,CAAA;KAAE,GAC7B,OAAO,CAAC,OAAO,CAAC;CAsBpB"}
package/dist/client.js DELETED
@@ -1,171 +0,0 @@
1
- import { ProtocolError, EngineTimeoutError } from "./proto/errors.js";
2
- import { decodeResponse, encodeRequest, extractId, extractResult, } from "./proto/codec.js";
3
- import { isSimulationMode } from "./config.js";
4
- import { simulationEvaluateBatch } from "./simulation.js";
5
- const DEFAULT_TIMEOUT_MS = 30_000;
6
- function resolveTimeoutMs(override) {
7
- if (override !== undefined)
8
- return override;
9
- const env = process.env["ATTEST_ENGINE_TIMEOUT"];
10
- if (env !== undefined && env !== "") {
11
- const parsed = Number(env);
12
- if (!Number.isFinite(parsed) || parsed <= 0) {
13
- throw new Error(`ATTEST_ENGINE_TIMEOUT must be a positive number of milliseconds, got: '${env}'`);
14
- }
15
- return parsed;
16
- }
17
- return DEFAULT_TIMEOUT_MS;
18
- }
19
- function makeTimeoutPromise(method, timeoutMs) {
20
- return new Promise((_, reject) => {
21
- setTimeout(() => {
22
- reject(new EngineTimeoutError(method, timeoutMs));
23
- }, timeoutMs);
24
- });
25
- }
26
- export class AttestClient {
27
- engine;
28
- requestId = 0;
29
- pending = new Map();
30
- writeChain = Promise.resolve();
31
- readerActive = false;
32
- lineHandler = null;
33
- constructor(engine) {
34
- this.engine = engine;
35
- }
36
- startReader() {
37
- if (this.readerActive)
38
- return;
39
- const rl = this.engine.readlineInterface;
40
- if (rl === null) {
41
- throw new Error("Engine readline interface not available. Call engine.start() first.");
42
- }
43
- this.readerActive = true;
44
- this.lineHandler = (line) => this.handleLine(line);
45
- rl.on("line", this.lineHandler);
46
- rl.on("close", () => {
47
- this.failAll(new Error("Engine closed stdout."));
48
- this.readerActive = false;
49
- });
50
- }
51
- stopReader() {
52
- if (!this.readerActive)
53
- return;
54
- const rl = this.engine.readlineInterface;
55
- if (rl !== null && this.lineHandler !== null) {
56
- rl.removeListener("line", this.lineHandler);
57
- }
58
- this.lineHandler = null;
59
- this.readerActive = false;
60
- }
61
- handleLine(line) {
62
- let reqId;
63
- try {
64
- const response = decodeResponse(line);
65
- reqId = extractId(response);
66
- const pending = this.pending.get(reqId);
67
- if (pending === undefined)
68
- return;
69
- this.pending.delete(reqId);
70
- try {
71
- const result = extractResult(response);
72
- pending.resolve(result);
73
- }
74
- catch (err) {
75
- pending.reject(err);
76
- }
77
- }
78
- catch (err) {
79
- if (err instanceof ProtocolError) {
80
- // Try to extract id from raw JSON for error routing
81
- try {
82
- const raw = JSON.parse(line.trim());
83
- reqId = Number(raw.id ?? -1);
84
- }
85
- catch {
86
- reqId = -1;
87
- }
88
- const pending = this.pending.get(reqId);
89
- if (pending !== undefined) {
90
- this.pending.delete(reqId);
91
- pending.reject(err);
92
- }
93
- }
94
- // Malformed responses are silently discarded (logged in production)
95
- }
96
- }
97
- failAll(err) {
98
- for (const pending of this.pending.values()) {
99
- pending.reject(err);
100
- }
101
- this.pending.clear();
102
- }
103
- async sendRequest(method, params, timeoutMs) {
104
- const resolvedTimeout = resolveTimeoutMs(timeoutMs);
105
- if (!this.readerActive) {
106
- // Delegate to engine sequential mode with timeout
107
- return Promise.race([
108
- this.engine.sendRequest(method, params),
109
- makeTimeoutPromise(method, resolvedTimeout),
110
- ]);
111
- }
112
- const cp = this.engine.childProcess;
113
- if (cp === null || cp.stdin === null) {
114
- throw new Error("Engine process not started.");
115
- }
116
- let capturedReqId;
117
- const requestPromise = new Promise((resolve, reject) => {
118
- // Serialize writes through promise chain
119
- this.writeChain = this.writeChain.then(() => {
120
- this.requestId += 1;
121
- const reqId = this.requestId;
122
- capturedReqId = reqId;
123
- this.pending.set(reqId, { resolve, reject });
124
- const requestStr = encodeRequest(reqId, method, params);
125
- cp.stdin.write(requestStr, (err) => {
126
- if (err) {
127
- this.pending.delete(reqId);
128
- reject(err);
129
- }
130
- });
131
- });
132
- });
133
- const timeoutPromise = makeTimeoutPromise(method, resolvedTimeout);
134
- return Promise.race([requestPromise, timeoutPromise]).catch((err) => {
135
- if (err instanceof EngineTimeoutError && capturedReqId !== undefined) {
136
- this.pending.delete(capturedReqId);
137
- }
138
- throw err;
139
- });
140
- }
141
- async evaluateBatch(trace, assertions, options) {
142
- if (isSimulationMode()) {
143
- return simulationEvaluateBatch(assertions);
144
- }
145
- const params = {
146
- trace,
147
- assertions: [...assertions],
148
- };
149
- const raw = await this.sendRequest("evaluate_batch", params, options?.timeout);
150
- return raw;
151
- }
152
- async submitPluginResult(traceId, pluginName, assertionId, status, score, explanation, options) {
153
- const result = {
154
- assertion_id: assertionId,
155
- status,
156
- score,
157
- explanation,
158
- cost: 0.0,
159
- duration_ms: 0,
160
- };
161
- const params = {
162
- trace_id: traceId,
163
- plugin_name: pluginName,
164
- assertion_id: assertionId,
165
- result,
166
- };
167
- const raw = await this.sendRequest("submit_plugin_result", params, options?.timeout);
168
- return Boolean(raw?.accepted ?? false);
169
- }
170
- }
171
- //# sourceMappingURL=client.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"client.js","sourceRoot":"","sources":["../src/client.ts"],"names":[],"mappings":"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"}
package/dist/config.d.ts DELETED
@@ -1,21 +0,0 @@
1
- /**
2
- * Configure global SDK options.
3
- *
4
- * @param options.simulation - Enable simulation mode. All `evaluateBatch` calls
5
- * return deterministic pass results without spawning the engine or calling any
6
- * LLM. Equivalent to setting `ATTEST_SIMULATION=1` in the environment.
7
- */
8
- export declare function config(options: {
9
- simulation?: boolean;
10
- }): void;
11
- /**
12
- * Returns true when simulation mode is active via either the programmatic API
13
- * or the `ATTEST_SIMULATION` environment variable.
14
- */
15
- export declare function isSimulationMode(): boolean;
16
- /**
17
- * Reset all programmatic config to defaults. Primarily for use in tests.
18
- * Environment variables are not affected.
19
- */
20
- export declare function resetConfig(): void;
21
- //# sourceMappingURL=config.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":"AAEA;;;;;;GAMG;AACH,wBAAgB,MAAM,CAAC,OAAO,EAAE;IAAE,UAAU,CAAC,EAAE,OAAO,CAAA;CAAE,GAAG,IAAI,CAI9D;AAED;;;GAGG;AACH,wBAAgB,gBAAgB,IAAI,OAAO,CAO1C;AAED;;;GAGG;AACH,wBAAgB,WAAW,IAAI,IAAI,CAElC"}