akribes 0.21.17

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 (100) hide show
  1. package/CHANGELOG.md +30 -0
  2. package/LICENSE +21 -0
  3. package/README.md +160 -0
  4. package/dist/client.d.ts +240 -0
  5. package/dist/client.d.ts.map +1 -0
  6. package/dist/client.js +272 -0
  7. package/dist/client.js.map +1 -0
  8. package/dist/errors.d.ts +196 -0
  9. package/dist/errors.d.ts.map +1 -0
  10. package/dist/errors.js +274 -0
  11. package/dist/errors.js.map +1 -0
  12. package/dist/execution/index.d.ts +3 -0
  13. package/dist/execution/index.d.ts.map +1 -0
  14. package/dist/execution/index.js +3 -0
  15. package/dist/execution/index.js.map +1 -0
  16. package/dist/execution/replay.d.ts +37 -0
  17. package/dist/execution/replay.d.ts.map +1 -0
  18. package/dist/execution/replay.js +59 -0
  19. package/dist/execution/replay.js.map +1 -0
  20. package/dist/execution/steps.d.ts +327 -0
  21. package/dist/execution/steps.d.ts.map +1 -0
  22. package/dist/execution/steps.js +1068 -0
  23. package/dist/execution/steps.js.map +1 -0
  24. package/dist/http.d.ts +53 -0
  25. package/dist/http.d.ts.map +1 -0
  26. package/dist/http.js +141 -0
  27. package/dist/http.js.map +1 -0
  28. package/dist/index.d.ts +36 -0
  29. package/dist/index.d.ts.map +1 -0
  30. package/dist/index.js +38 -0
  31. package/dist/index.js.map +1 -0
  32. package/dist/runStream.d.ts +176 -0
  33. package/dist/runStream.d.ts.map +1 -0
  34. package/dist/runStream.js +408 -0
  35. package/dist/runStream.js.map +1 -0
  36. package/dist/sse.d.ts +46 -0
  37. package/dist/sse.d.ts.map +1 -0
  38. package/dist/sse.js +218 -0
  39. package/dist/sse.js.map +1 -0
  40. package/dist/sub/bench.d.ts +182 -0
  41. package/dist/sub/bench.d.ts.map +1 -0
  42. package/dist/sub/bench.js +420 -0
  43. package/dist/sub/bench.js.map +1 -0
  44. package/dist/sub/channels.d.ts +22 -0
  45. package/dist/sub/channels.d.ts.map +1 -0
  46. package/dist/sub/channels.js +32 -0
  47. package/dist/sub/channels.js.map +1 -0
  48. package/dist/sub/clients.d.ts +79 -0
  49. package/dist/sub/clients.d.ts.map +1 -0
  50. package/dist/sub/clients.js +190 -0
  51. package/dist/sub/clients.js.map +1 -0
  52. package/dist/sub/documents.d.ts +113 -0
  53. package/dist/sub/documents.d.ts.map +1 -0
  54. package/dist/sub/documents.js +329 -0
  55. package/dist/sub/documents.js.map +1 -0
  56. package/dist/sub/evals.d.ts +71 -0
  57. package/dist/sub/evals.d.ts.map +1 -0
  58. package/dist/sub/evals.js +86 -0
  59. package/dist/sub/evals.js.map +1 -0
  60. package/dist/sub/events.d.ts +65 -0
  61. package/dist/sub/events.d.ts.map +1 -0
  62. package/dist/sub/events.js +154 -0
  63. package/dist/sub/events.js.map +1 -0
  64. package/dist/sub/executions.d.ts +255 -0
  65. package/dist/sub/executions.d.ts.map +1 -0
  66. package/dist/sub/executions.js +322 -0
  67. package/dist/sub/executions.js.map +1 -0
  68. package/dist/sub/mcp.d.ts +51 -0
  69. package/dist/sub/mcp.d.ts.map +1 -0
  70. package/dist/sub/mcp.js +42 -0
  71. package/dist/sub/mcp.js.map +1 -0
  72. package/dist/sub/projects.d.ts +73 -0
  73. package/dist/sub/projects.d.ts.map +1 -0
  74. package/dist/sub/projects.js +101 -0
  75. package/dist/sub/projects.js.map +1 -0
  76. package/dist/sub/scripts.d.ts +58 -0
  77. package/dist/sub/scripts.d.ts.map +1 -0
  78. package/dist/sub/scripts.js +82 -0
  79. package/dist/sub/scripts.js.map +1 -0
  80. package/dist/sub/tokens.d.ts +126 -0
  81. package/dist/sub/tokens.d.ts.map +1 -0
  82. package/dist/sub/tokens.js +105 -0
  83. package/dist/sub/tokens.js.map +1 -0
  84. package/dist/sub/versions.d.ts +29 -0
  85. package/dist/sub/versions.d.ts.map +1 -0
  86. package/dist/sub/versions.js +52 -0
  87. package/dist/sub/versions.js.map +1 -0
  88. package/dist/tokenSafety.d.ts +15 -0
  89. package/dist/tokenSafety.d.ts.map +1 -0
  90. package/dist/tokenSafety.js +24 -0
  91. package/dist/tokenSafety.js.map +1 -0
  92. package/dist/types.d.ts +1147 -0
  93. package/dist/types.d.ts.map +1 -0
  94. package/dist/types.js +132 -0
  95. package/dist/types.js.map +1 -0
  96. package/dist/workflowEvents.d.ts +297 -0
  97. package/dist/workflowEvents.d.ts.map +1 -0
  98. package/dist/workflowEvents.js +612 -0
  99. package/dist/workflowEvents.js.map +1 -0
  100. package/package.json +57 -0
@@ -0,0 +1 @@
1
+ {"version":3,"file":"documents.js","sourceRoot":"","sources":["../../src/sub/documents.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,71 @@
1
+ import type { HttpClient } from '../http';
2
+ import type { EvalSuite, EvalSuiteSummary, EvalRun, EvalResult } from '../types';
3
+ export declare class EvalsClient {
4
+ private http;
5
+ private projectId;
6
+ constructor(http: HttpClient, projectId: number);
7
+ private path;
8
+ listSuites(scriptName: string, opts?: {
9
+ signal?: AbortSignal;
10
+ }): Promise<EvalSuite[]>;
11
+ createSuite(scriptName: string, data: {
12
+ name: string;
13
+ runner_url: string;
14
+ config?: Record<string, unknown>;
15
+ auto_run_channels?: string[];
16
+ }, opts?: {
17
+ signal?: AbortSignal;
18
+ }): Promise<EvalSuite>;
19
+ getSuite(scriptName: string, suiteId: number, opts?: {
20
+ signal?: AbortSignal;
21
+ }): Promise<EvalSuite | null>;
22
+ updateSuite(scriptName: string, suiteId: number, data: {
23
+ runner_url?: string;
24
+ config?: Record<string, unknown>;
25
+ auto_run_channels?: string[];
26
+ }, opts?: {
27
+ signal?: AbortSignal;
28
+ }): Promise<EvalSuite>;
29
+ deleteSuite(scriptName: string, suiteId: number, opts?: {
30
+ signal?: AbortSignal;
31
+ }): Promise<void>;
32
+ checkRunnerHealth(scriptName: string, suiteId: number, opts?: {
33
+ signal?: AbortSignal;
34
+ }): Promise<{
35
+ status: string;
36
+ http_status?: number;
37
+ error?: string;
38
+ } | null>;
39
+ trigger(scriptName: string, suiteId: number, data?: {
40
+ source?: string;
41
+ channel?: string;
42
+ auto_publish?: boolean;
43
+ triggered_by?: string;
44
+ }, opts?: {
45
+ signal?: AbortSignal;
46
+ }): Promise<EvalRun>;
47
+ cancel(runId: number, opts?: {
48
+ signal?: AbortSignal;
49
+ }): Promise<EvalRun>;
50
+ listRuns(scriptName: string, params?: {
51
+ suite_id?: number;
52
+ limit?: number;
53
+ offset?: number;
54
+ }, opts?: {
55
+ signal?: AbortSignal;
56
+ }): Promise<EvalRun[]>;
57
+ getRun(runId: number, opts?: {
58
+ signal?: AbortSignal;
59
+ }): Promise<EvalRun | null>;
60
+ getResults(runId: number, opts?: {
61
+ signal?: AbortSignal;
62
+ }): Promise<EvalResult[]>;
63
+ /**
64
+ * One row per eval suite in the configured project, including the latest +
65
+ * prior completed average score (drives the cross-script dashboard).
66
+ */
67
+ listProjectSummaries(opts?: {
68
+ signal?: AbortSignal;
69
+ }): Promise<EvalSuiteSummary[]>;
70
+ }
71
+ //# sourceMappingURL=evals.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"evals.d.ts","sourceRoot":"","sources":["../../src/sub/evals.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,86 @@
1
+ import { nullOn404 } from '../http';
2
+ export class EvalsClient {
3
+ http;
4
+ projectId;
5
+ constructor(http, projectId) {
6
+ this.http = http;
7
+ this.projectId = projectId;
8
+ }
9
+ path(scriptName, ...segments) {
10
+ return this.http.scriptPath(this.projectId, scriptName, ...segments);
11
+ }
12
+ // ── Suites ────────────────────────────────────────────────────────────────
13
+ async listSuites(scriptName, opts) {
14
+ return (await this.http.fetchOk(this.path(scriptName, 'eval-suites'), opts)).json();
15
+ }
16
+ async createSuite(scriptName, data, opts) {
17
+ return (await this.http.fetchOk(this.path(scriptName, 'eval-suites'), {
18
+ method: 'POST',
19
+ headers: { 'Content-Type': 'application/json' },
20
+ body: JSON.stringify(data),
21
+ signal: opts?.signal,
22
+ })).json();
23
+ }
24
+ async getSuite(scriptName, suiteId, opts) {
25
+ return nullOn404(async () => (await this.http.fetchOk(this.path(scriptName, 'eval-suites', String(suiteId)), opts)).json());
26
+ }
27
+ async updateSuite(scriptName, suiteId, data, opts) {
28
+ return (await this.http.fetchOk(this.path(scriptName, 'eval-suites', String(suiteId)), {
29
+ method: 'PATCH',
30
+ headers: { 'Content-Type': 'application/json' },
31
+ body: JSON.stringify(data),
32
+ signal: opts?.signal,
33
+ })).json();
34
+ }
35
+ async deleteSuite(scriptName, suiteId, opts) {
36
+ await this.http.fetchOk(this.path(scriptName, 'eval-suites', String(suiteId)), {
37
+ method: 'DELETE',
38
+ signal: opts?.signal,
39
+ });
40
+ }
41
+ async checkRunnerHealth(scriptName, suiteId, opts) {
42
+ return nullOn404(async () => (await this.http.fetchOk(this.path(scriptName, 'eval-suites', String(suiteId), 'health'), opts)).json());
43
+ }
44
+ // ── Trigger & Cancel ──────────────────────────────────────────────────────
45
+ async trigger(scriptName, suiteId, data, opts) {
46
+ return (await this.http.fetchOk(this.path(scriptName, 'eval-suites', String(suiteId), 'trigger'), {
47
+ method: 'POST',
48
+ headers: { 'Content-Type': 'application/json' },
49
+ body: JSON.stringify(data ?? {}),
50
+ signal: opts?.signal,
51
+ })).json();
52
+ }
53
+ async cancel(runId, opts) {
54
+ return (await this.http.fetchOk(`${this.http.getBaseUrl()}/eval-runs/${runId}`, {
55
+ method: 'DELETE',
56
+ signal: opts?.signal,
57
+ })).json();
58
+ }
59
+ // ── Runs & Results ────────────────────────────────────────────────────────
60
+ async listRuns(scriptName, params, opts) {
61
+ const qs = new URLSearchParams();
62
+ if (params?.suite_id != null)
63
+ qs.set('suite_id', String(params.suite_id));
64
+ if (params?.limit != null)
65
+ qs.set('limit', String(params.limit));
66
+ if (params?.offset != null)
67
+ qs.set('offset', String(params.offset));
68
+ const suffix = qs.toString() ? `?${qs}` : '';
69
+ return (await this.http.fetchOk(this.path(scriptName, 'eval-runs') + suffix, opts)).json();
70
+ }
71
+ async getRun(runId, opts) {
72
+ return nullOn404(async () => (await this.http.fetchOk(`${this.http.getBaseUrl()}/eval-runs/${runId}`, opts)).json());
73
+ }
74
+ async getResults(runId, opts) {
75
+ return (await this.http.fetchOk(`${this.http.getBaseUrl()}/eval-runs/${runId}/results`, opts)).json();
76
+ }
77
+ // ── Project-level cross-script dashboard (sub-spec 1a) ────────────────────
78
+ /**
79
+ * One row per eval suite in the configured project, including the latest +
80
+ * prior completed average score (drives the cross-script dashboard).
81
+ */
82
+ async listProjectSummaries(opts) {
83
+ return (await this.http.fetchOk(`${this.http.getBaseUrl()}/projects/${this.projectId}/eval-suite-summaries`, opts)).json();
84
+ }
85
+ }
86
+ //# sourceMappingURL=evals.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"evals.js","sourceRoot":"","sources":["../../src/sub/evals.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,SAAS,EAAE,MAAM,SAAS,CAAC;AAGpC,MAAM,OAAO,WAAW;IAEZ;IACA;IAFV,YACU,IAAgB,EAChB,SAAiB;QADjB,SAAI,GAAJ,IAAI,CAAY;QAChB,cAAS,GAAT,SAAS,CAAQ;IACxB,CAAC;IAEI,IAAI,CAAC,UAAkB,EAAE,GAAG,QAAkB;QACpD,OAAO,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,SAAS,EAAE,UAAU,EAAE,GAAG,QAAQ,CAAC,CAAC;IACvE,CAAC;IAED,6EAA6E;IAE7E,KAAK,CAAC,UAAU,CAAC,UAAkB,EAAE,IAA+B;QAClE,OAAO,CAAC,MAAM,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,aAAa,CAAC,EAAE,IAAI,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;IACtF,CAAC;IAED,KAAK,CAAC,WAAW,CACf,UAAkB,EAClB,IAA0G,EAC1G,IAA+B;QAE/B,OAAO,CAAC,MAAM,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,aAAa,CAAC,EAAE;YACpE,MAAM,EAAE,MAAM;YACd,OAAO,EAAE,EAAE,cAAc,EAAE,kBAAkB,EAAE;YAC/C,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC;YAC1B,MAAM,EAAE,IAAI,EAAE,MAAM;SACrB,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;IACb,CAAC;IAED,KAAK,CAAC,QAAQ,CAAC,UAAkB,EAAE,OAAe,EAAE,IAA+B;QACjF,OAAO,SAAS,CAAC,KAAK,IAAI,EAAE,CAC1B,CAAC,MAAM,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,aAAa,EAAE,MAAM,CAAC,OAAO,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC,CAAC,IAAI,EAAE,CAC9F,CAAC;IACJ,CAAC;IAED,KAAK,CAAC,WAAW,CACf,UAAkB,EAClB,OAAe,EACf,IAA6F,EAC7F,IAA+B;QAE/B,OAAO,CAAC,MAAM,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,aAAa,EAAE,MAAM,CAAC,OAAO,CAAC,CAAC,EAAE;YACrF,MAAM,EAAE,OAAO;YACf,OAAO,EAAE,EAAE,cAAc,EAAE,kBAAkB,EAAE;YAC/C,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC;YAC1B,MAAM,EAAE,IAAI,EAAE,MAAM;SACrB,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;IACb,CAAC;IAED,KAAK,CAAC,WAAW,CAAC,UAAkB,EAAE,OAAe,EAAE,IAA+B;QACpF,MAAM,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,aAAa,EAAE,MAAM,CAAC,OAAO,CAAC,CAAC,EAAE;YAC7E,MAAM,EAAE,QAAQ;YAChB,MAAM,EAAE,IAAI,EAAE,MAAM;SACrB,CAAC,CAAC;IACL,CAAC;IAED,KAAK,CAAC,iBAAiB,CACrB,UAAkB,EAClB,OAAe,EACf,IAA+B;QAE/B,OAAO,SAAS,CAAC,KAAK,IAAI,EAAE,CAC1B,CAAC,MAAM,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,aAAa,EAAE,MAAM,CAAC,OAAO,CAAC,EAAE,QAAQ,CAAC,EAAE,IAAI,CAAC,CAAC,CAAC,IAAI,EAAE,CACxG,CAAC;IACJ,CAAC;IAED,6EAA6E;IAE7E,KAAK,CAAC,OAAO,CACX,UAAkB,EAClB,OAAe,EACf,IAA2F,EAC3F,IAA+B;QAE/B,OAAO,CAAC,MAAM,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,aAAa,EAAE,MAAM,CAAC,OAAO,CAAC,EAAE,SAAS,CAAC,EAAE;YAChG,MAAM,EAAE,MAAM;YACd,OAAO,EAAE,EAAE,cAAc,EAAE,kBAAkB,EAAE;YAC/C,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,IAAI,IAAI,EAAE,CAAC;YAChC,MAAM,EAAE,IAAI,EAAE,MAAM;SACrB,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;IACb,CAAC;IAED,KAAK,CAAC,MAAM,CAAC,KAAa,EAAE,IAA+B;QACzD,OAAO,CAAC,MAAM,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,cAAc,KAAK,EAAE,EAAE;YAC9E,MAAM,EAAE,QAAQ;YAChB,MAAM,EAAE,IAAI,EAAE,MAAM;SACrB,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;IACb,CAAC;IAED,6EAA6E;IAE7E,KAAK,CAAC,QAAQ,CACZ,UAAkB,EAClB,MAA+D,EAC/D,IAA+B;QAE/B,MAAM,EAAE,GAAG,IAAI,eAAe,EAAE,CAAC;QACjC,IAAI,MAAM,EAAE,QAAQ,IAAI,IAAI;YAAE,EAAE,CAAC,GAAG,CAAC,UAAU,EAAE,MAAM,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC;QAC1E,IAAI,MAAM,EAAE,KAAK,IAAI,IAAI;YAAE,EAAE,CAAC,GAAG,CAAC,OAAO,EAAE,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC;QACjE,IAAI,MAAM,EAAE,MAAM,IAAI,IAAI;YAAE,EAAE,CAAC,GAAG,CAAC,QAAQ,EAAE,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC;QACpE,MAAM,MAAM,GAAG,EAAE,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QAC7C,OAAO,CAAC,MAAM,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,WAAW,CAAC,GAAG,MAAM,EAAE,IAAI,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;IAC7F,CAAC;IAED,KAAK,CAAC,MAAM,CAAC,KAAa,EAAE,IAA+B;QACzD,OAAO,SAAS,CAAC,KAAK,IAAI,EAAE,CAC1B,CAAC,MAAM,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,cAAc,KAAK,EAAE,EAAE,IAAI,CAAC,CAAC,CAAC,IAAI,EAAE,CACvF,CAAC;IACJ,CAAC;IAED,KAAK,CAAC,UAAU,CAAC,KAAa,EAAE,IAA+B;QAC7D,OAAO,CAAC,MAAM,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,cAAc,KAAK,UAAU,EAAE,IAAI,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;IACxG,CAAC;IAED,6EAA6E;IAE7E;;;OAGG;IACH,KAAK,CAAC,oBAAoB,CAAC,IAA+B;QACxD,OAAO,CAAC,MAAM,IAAI,CAAC,IAAI,CAAC,OAAO,CAC7B,GAAG,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,aAAa,IAAI,CAAC,SAAS,uBAAuB,EAC3E,IAAI,CACL,CAAC,CAAC,IAAI,EAAE,CAAC;IACZ,CAAC;CACF"}
@@ -0,0 +1,65 @@
1
+ import type { HttpClient } from '../http';
2
+ import type { ContractState } from './clients';
3
+ import type { HubEvent, EngineEvent } from '../types';
4
+ import { type WorkflowEvent } from '../workflowEvents';
5
+ type HubEventCallback = (event: HubEvent) => void;
6
+ type SseErrorCallback = (error: Error) => void;
7
+ export declare class EventsClient {
8
+ private http;
9
+ /** When set, the SSE URL includes `?project_id=<id>` so the server
10
+ * filters to that project's hub events. When unset (no `projectId`
11
+ * on the parent {@link AkribesClient}), the SDK subscribes to the
12
+ * global hub stream and the server scopes events by the token's
13
+ * reachability — used by editors that need cross-project events. */
14
+ private projectId;
15
+ private getToken;
16
+ private contractState?;
17
+ private subscribers;
18
+ private dispose;
19
+ private _onSseError;
20
+ constructor(http: HttpClient,
21
+ /** When set, the SSE URL includes `?project_id=<id>` so the server
22
+ * filters to that project's hub events. When unset (no `projectId`
23
+ * on the parent {@link AkribesClient}), the SDK subscribes to the
24
+ * global hub stream and the server scopes events by the token's
25
+ * reachability — used by editors that need cross-project events. */
26
+ projectId: number | undefined, getToken: () => string | undefined, contractState?: ContractState | undefined);
27
+ /** Register an optional callback to be notified of SSE connection errors.
28
+ * Without this, SSE errors are silently swallowed (the stream auto-reconnects). */
29
+ set onSseError(cb: SseErrorCallback | undefined);
30
+ /** Attach a {@link ContractState} after construction. The parent client
31
+ * initialises the events sub-client before the project-scoped
32
+ * `ClientsClient` (which owns the contract state) exists, so this
33
+ * binding happens post-init. No-op for non-project-scoped clients. */
34
+ setContractState(state: ContractState): void;
35
+ private ensureConnection;
36
+ private removeSubscriber;
37
+ /** Subscribe to all hub events. Returns an unsubscribe function. */
38
+ onAll(callback: HubEventCallback): () => void;
39
+ /** Subscribe to execution events for a specific script. The callback's
40
+ * second argument is the execution_id from the wrapping HubEvent so
41
+ * callers can demultiplex multiple concurrent runs of the same script. */
42
+ onScriptExecution(scriptName: string, callback: (event: EngineEvent, executionId?: string) => void): () => void;
43
+ /** Subscribe to execution events for a specific script, normalised through
44
+ * {@link toWorkflowEvent} so the callback receives the typed
45
+ * {@link WorkflowEvent} variants (`{ kind: 'taskEnd', task, … }`) instead
46
+ * of raw `{ type, payload }` shapes (#1239 — mirrors Python
47
+ * `events.typed_engine_events`).
48
+ *
49
+ * Use this when you want the same ergonomics as `RunStream`'s typed
50
+ * iterator on a free-standing subscription (e.g. attaching to a run
51
+ * started by someone else; multi-tab Studio editors observing the
52
+ * same execution).
53
+ */
54
+ onScriptExecutionTyped(scriptName: string, callback: (event: WorkflowEvent, executionId?: string) => void): () => void;
55
+ /** Subscribe to script version/channel changes. */
56
+ onScriptChange(scriptName: string, callback: (versionId: number, channel?: string) => void): () => void;
57
+ /** Subscribe to schema changes for a specific script.
58
+ * Marks the script as "broken" in the contract state so pre-dispatch
59
+ * validation in run() will throw ScriptSchemaChangedError. */
60
+ onScriptSchemaChange(scriptName: string, callback: (versionId: number, channel?: string) => void): () => void;
61
+ /** Close the SSE connection and remove all subscribers. */
62
+ destroy(): void;
63
+ }
64
+ export {};
65
+ //# sourceMappingURL=events.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"events.d.ts","sourceRoot":"","sources":["../../src/sub/events.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,SAAS,CAAC;AAE1C,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,WAAW,CAAC;AAC/C,OAAO,KAAK,EAAE,QAAQ,EAAE,WAAW,EAAE,MAAM,UAAU,CAAC;AACtD,OAAO,EAAmB,KAAK,aAAa,EAAE,MAAM,mBAAmB,CAAC;AAExE,KAAK,gBAAgB,GAAG,CAAC,KAAK,EAAE,QAAQ,KAAK,IAAI,CAAC;AAClD,KAAK,gBAAgB,GAAG,CAAC,KAAK,EAAE,KAAK,KAAK,IAAI,CAAC;AAE/C,qBAAa,YAAY;IAMrB,OAAO,CAAC,IAAI;IACZ;;;;yEAIqE;IACrE,OAAO,CAAC,SAAS;IACjB,OAAO,CAAC,QAAQ;IAChB,OAAO,CAAC,aAAa,CAAC;IAbxB,OAAO,CAAC,WAAW,CAA+B;IAClD,OAAO,CAAC,OAAO,CAA6B;IAC5C,OAAO,CAAC,WAAW,CAA+B;gBAGxC,IAAI,EAAE,UAAU;IACxB;;;;yEAIqE;IAC7D,SAAS,EAAE,MAAM,GAAG,SAAS,EAC7B,QAAQ,EAAE,MAAM,MAAM,GAAG,SAAS,EAClC,aAAa,CAAC,EAAE,aAAa,YAAA;IAGvC;uFACmF;IACnF,IAAI,UAAU,CAAC,EAAE,EAAE,gBAAgB,GAAG,SAAS,EAE9C;IAED;;;2EAGuE;IACvE,gBAAgB,CAAC,KAAK,EAAE,aAAa;IAIrC,OAAO,CAAC,gBAAgB;IAqCxB,OAAO,CAAC,gBAAgB;IAQxB,oEAAoE;IACpE,KAAK,CAAC,QAAQ,EAAE,gBAAgB,GAAG,MAAM,IAAI;IAM7C;;+EAE2E;IAC3E,iBAAiB,CAAC,UAAU,EAAE,MAAM,EAAE,QAAQ,EAAE,CAAC,KAAK,EAAE,WAAW,EAAE,WAAW,CAAC,EAAE,MAAM,KAAK,IAAI,GAAG,MAAM,IAAI;IAW/G;;;;;;;;;;OAUG;IACH,sBAAsB,CACpB,UAAU,EAAE,MAAM,EAClB,QAAQ,EAAE,CAAC,KAAK,EAAE,aAAa,EAAE,WAAW,CAAC,EAAE,MAAM,KAAK,IAAI,GAC7D,MAAM,IAAI;IAMb,mDAAmD;IACnD,cAAc,CAAC,UAAU,EAAE,MAAM,EAAE,QAAQ,EAAE,CAAC,SAAS,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,MAAM,KAAK,IAAI,GAAG,MAAM,IAAI;IAevG;;kEAE8D;IAC9D,oBAAoB,CAAC,UAAU,EAAE,MAAM,EAAE,QAAQ,EAAE,CAAC,SAAS,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,MAAM,KAAK,IAAI,GAAG,MAAM,IAAI;IAiB7G,2DAA2D;IAC3D,OAAO;CAOR"}
@@ -0,0 +1,154 @@
1
+ import { connectSse } from '../sse';
2
+ import { toWorkflowEvent } from '../workflowEvents';
3
+ export class EventsClient {
4
+ http;
5
+ projectId;
6
+ getToken;
7
+ contractState;
8
+ subscribers = new Set();
9
+ dispose = null;
10
+ _onSseError;
11
+ constructor(http,
12
+ /** When set, the SSE URL includes `?project_id=<id>` so the server
13
+ * filters to that project's hub events. When unset (no `projectId`
14
+ * on the parent {@link AkribesClient}), the SDK subscribes to the
15
+ * global hub stream and the server scopes events by the token's
16
+ * reachability — used by editors that need cross-project events. */
17
+ projectId, getToken, contractState) {
18
+ this.http = http;
19
+ this.projectId = projectId;
20
+ this.getToken = getToken;
21
+ this.contractState = contractState;
22
+ }
23
+ /** Register an optional callback to be notified of SSE connection errors.
24
+ * Without this, SSE errors are silently swallowed (the stream auto-reconnects). */
25
+ set onSseError(cb) {
26
+ this._onSseError = cb;
27
+ }
28
+ /** Attach a {@link ContractState} after construction. The parent client
29
+ * initialises the events sub-client before the project-scoped
30
+ * `ClientsClient` (which owns the contract state) exists, so this
31
+ * binding happens post-init. No-op for non-project-scoped clients. */
32
+ setContractState(state) {
33
+ this.contractState = state;
34
+ }
35
+ ensureConnection() {
36
+ if (this.dispose)
37
+ return;
38
+ // Token is delivered exclusively via the Authorization header passed
39
+ // through `connectSse({ headers })` below. Older revisions appended a
40
+ // `?token=` query string here so EventSource (which can't set headers)
41
+ // would still authenticate; that put long-lived service-token secrets
42
+ // into reverse-proxy access logs and OTel `http.url` span attributes
43
+ // for any backend SDK consumer like puto. `sse.ts` now skips
44
+ // EventSource whenever an Authorization header is present and uses
45
+ // the fetch-fallback streaming SSE path instead.
46
+ const buildUrl = () => {
47
+ const url = new URL(`${this.http.getBaseUrl()}/events`);
48
+ if (this.projectId !== undefined) {
49
+ url.searchParams.set('project_id', this.projectId.toString());
50
+ }
51
+ return url.toString();
52
+ };
53
+ this.dispose = connectSse({
54
+ url: buildUrl,
55
+ headers: { ...this.http.authHeaders(), ...this.http.traceHeaders() },
56
+ onMessage: (msg) => {
57
+ if (msg.event !== 'batch' && msg.event !== '')
58
+ return;
59
+ try {
60
+ const batch = JSON.parse(msg.data);
61
+ for (const evt of batch) {
62
+ for (const cb of this.subscribers)
63
+ cb(evt);
64
+ }
65
+ }
66
+ catch { /* malformed JSON, skip */ }
67
+ },
68
+ onError: (err) => {
69
+ this._onSseError?.(err);
70
+ },
71
+ });
72
+ }
73
+ removeSubscriber(cb) {
74
+ this.subscribers.delete(cb);
75
+ if (this.subscribers.size === 0 && this.dispose) {
76
+ this.dispose();
77
+ this.dispose = null;
78
+ }
79
+ }
80
+ /** Subscribe to all hub events. Returns an unsubscribe function. */
81
+ onAll(callback) {
82
+ this.subscribers.add(callback);
83
+ this.ensureConnection();
84
+ return () => this.removeSubscriber(callback);
85
+ }
86
+ /** Subscribe to execution events for a specific script. The callback's
87
+ * second argument is the execution_id from the wrapping HubEvent so
88
+ * callers can demultiplex multiple concurrent runs of the same script. */
89
+ onScriptExecution(scriptName, callback) {
90
+ const wrapper = (hubEvt) => {
91
+ if (hubEvt.type === 'Execution' && hubEvt.payload.script_name === scriptName) {
92
+ callback(hubEvt.payload.event, hubEvt.payload.execution_id);
93
+ }
94
+ };
95
+ this.subscribers.add(wrapper);
96
+ this.ensureConnection();
97
+ return () => this.removeSubscriber(wrapper);
98
+ }
99
+ /** Subscribe to execution events for a specific script, normalised through
100
+ * {@link toWorkflowEvent} so the callback receives the typed
101
+ * {@link WorkflowEvent} variants (`{ kind: 'taskEnd', task, … }`) instead
102
+ * of raw `{ type, payload }` shapes (#1239 — mirrors Python
103
+ * `events.typed_engine_events`).
104
+ *
105
+ * Use this when you want the same ergonomics as `RunStream`'s typed
106
+ * iterator on a free-standing subscription (e.g. attaching to a run
107
+ * started by someone else; multi-tab Studio editors observing the
108
+ * same execution).
109
+ */
110
+ onScriptExecutionTyped(scriptName, callback) {
111
+ return this.onScriptExecution(scriptName, (raw, executionId) => {
112
+ callback(toWorkflowEvent(raw), executionId);
113
+ });
114
+ }
115
+ /** Subscribe to script version/channel changes. */
116
+ onScriptChange(scriptName, callback) {
117
+ const wrapper = (hubEvt) => {
118
+ if (hubEvt.type === 'Registry' &&
119
+ hubEvt.payload.type === 'ScriptUpdated' &&
120
+ hubEvt.payload.payload.script_name === scriptName) {
121
+ callback(hubEvt.payload.payload.version_id, hubEvt.payload.payload.channel ?? undefined);
122
+ }
123
+ };
124
+ this.subscribers.add(wrapper);
125
+ this.ensureConnection();
126
+ return () => this.removeSubscriber(wrapper);
127
+ }
128
+ /** Subscribe to schema changes for a specific script.
129
+ * Marks the script as "broken" in the contract state so pre-dispatch
130
+ * validation in run() will throw ScriptSchemaChangedError. */
131
+ onScriptSchemaChange(scriptName, callback) {
132
+ const wrapper = (hubEvt) => {
133
+ if (hubEvt.type === 'Registry' &&
134
+ hubEvt.payload.type === 'ScriptUpdated' &&
135
+ hubEvt.payload.payload.script_name === scriptName) {
136
+ // Mark as broken in contract state (if init() was called)
137
+ this.contractState?.brokenScripts.add(scriptName);
138
+ callback(hubEvt.payload.payload.version_id, hubEvt.payload.payload.channel ?? undefined);
139
+ }
140
+ };
141
+ this.subscribers.add(wrapper);
142
+ this.ensureConnection();
143
+ return () => this.removeSubscriber(wrapper);
144
+ }
145
+ /** Close the SSE connection and remove all subscribers. */
146
+ destroy() {
147
+ this.subscribers.clear();
148
+ if (this.dispose) {
149
+ this.dispose();
150
+ this.dispose = null;
151
+ }
152
+ }
153
+ }
154
+ //# sourceMappingURL=events.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"events.js","sourceRoot":"","sources":["../../src/sub/events.ts"],"names":[],"mappings":"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"}