@galaxy-stack/ai-coder-core 0.1.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 (197) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +131 -0
  3. package/dist/approval/approval-policy.d.ts +31 -0
  4. package/dist/approval/approval-policy.d.ts.map +1 -0
  5. package/dist/approval/approval-policy.js +179 -0
  6. package/dist/approval/approval-policy.js.map +1 -0
  7. package/dist/approval/index.d.ts +2 -0
  8. package/dist/approval/index.d.ts.map +1 -0
  9. package/dist/approval/index.js +2 -0
  10. package/dist/approval/index.js.map +1 -0
  11. package/dist/context/attachment-types.d.ts +35 -0
  12. package/dist/context/attachment-types.d.ts.map +1 -0
  13. package/dist/context/attachment-types.js +9 -0
  14. package/dist/context/attachment-types.js.map +1 -0
  15. package/dist/context/checkpoint.d.ts +194 -0
  16. package/dist/context/checkpoint.d.ts.map +1 -0
  17. package/dist/context/checkpoint.js +921 -0
  18. package/dist/context/checkpoint.js.map +1 -0
  19. package/dist/context/context-manager.d.ts +153 -0
  20. package/dist/context/context-manager.d.ts.map +1 -0
  21. package/dist/context/context-manager.js +541 -0
  22. package/dist/context/context-manager.js.map +1 -0
  23. package/dist/context/context-profile.d.ts +42 -0
  24. package/dist/context/context-profile.d.ts.map +1 -0
  25. package/dist/context/context-profile.js +102 -0
  26. package/dist/context/context-profile.js.map +1 -0
  27. package/dist/context/index.d.ts +7 -0
  28. package/dist/context/index.d.ts.map +1 -0
  29. package/dist/context/index.js +7 -0
  30. package/dist/context/index.js.map +1 -0
  31. package/dist/context/token-ledger.d.ts +102 -0
  32. package/dist/context/token-ledger.d.ts.map +1 -0
  33. package/dist/context/token-ledger.js +205 -0
  34. package/dist/context/token-ledger.js.map +1 -0
  35. package/dist/context/tool-output.d.ts +46 -0
  36. package/dist/context/tool-output.d.ts.map +1 -0
  37. package/dist/context/tool-output.js +82 -0
  38. package/dist/context/tool-output.js.map +1 -0
  39. package/dist/deterministic-order.d.ts +3 -0
  40. package/dist/deterministic-order.d.ts.map +1 -0
  41. package/dist/deterministic-order.js +5 -0
  42. package/dist/deterministic-order.js.map +1 -0
  43. package/dist/index.d.ts +19 -0
  44. package/dist/index.d.ts.map +1 -0
  45. package/dist/index.js +19 -0
  46. package/dist/index.js.map +1 -0
  47. package/dist/ports/approval-port.d.ts +29 -0
  48. package/dist/ports/approval-port.d.ts.map +1 -0
  49. package/dist/ports/approval-port.js +9 -0
  50. package/dist/ports/approval-port.js.map +1 -0
  51. package/dist/ports/artifact-port.d.ts +66 -0
  52. package/dist/ports/artifact-port.d.ts.map +1 -0
  53. package/dist/ports/artifact-port.js +9 -0
  54. package/dist/ports/artifact-port.js.map +1 -0
  55. package/dist/ports/capability-port.d.ts +62 -0
  56. package/dist/ports/capability-port.d.ts.map +1 -0
  57. package/dist/ports/capability-port.js +9 -0
  58. package/dist/ports/capability-port.js.map +1 -0
  59. package/dist/ports/coding-model-port.d.ts +12 -0
  60. package/dist/ports/coding-model-port.d.ts.map +1 -0
  61. package/dist/ports/coding-model-port.js +9 -0
  62. package/dist/ports/coding-model-port.js.map +1 -0
  63. package/dist/ports/command-port.d.ts +94 -0
  64. package/dist/ports/command-port.d.ts.map +1 -0
  65. package/dist/ports/command-port.js +9 -0
  66. package/dist/ports/command-port.js.map +1 -0
  67. package/dist/ports/execution-context.d.ts +30 -0
  68. package/dist/ports/execution-context.d.ts.map +1 -0
  69. package/dist/ports/execution-context.js +11 -0
  70. package/dist/ports/execution-context.js.map +1 -0
  71. package/dist/ports/git-port.d.ts +27 -0
  72. package/dist/ports/git-port.d.ts.map +1 -0
  73. package/dist/ports/git-port.js +9 -0
  74. package/dist/ports/git-port.js.map +1 -0
  75. package/dist/ports/host-adapter.d.ts +36 -0
  76. package/dist/ports/host-adapter.d.ts.map +1 -0
  77. package/dist/ports/host-adapter.js +9 -0
  78. package/dist/ports/host-adapter.js.map +1 -0
  79. package/dist/ports/index.d.ts +16 -0
  80. package/dist/ports/index.d.ts.map +1 -0
  81. package/dist/ports/index.js +16 -0
  82. package/dist/ports/index.js.map +1 -0
  83. package/dist/ports/pagination.d.ts +17 -0
  84. package/dist/ports/pagination.d.ts.map +1 -0
  85. package/dist/ports/pagination.js +9 -0
  86. package/dist/ports/pagination.js.map +1 -0
  87. package/dist/ports/persistence-port.d.ts +59 -0
  88. package/dist/ports/persistence-port.d.ts.map +1 -0
  89. package/dist/ports/persistence-port.js +9 -0
  90. package/dist/ports/persistence-port.js.map +1 -0
  91. package/dist/ports/port-result.d.ts +29 -0
  92. package/dist/ports/port-result.d.ts.map +1 -0
  93. package/dist/ports/port-result.js +20 -0
  94. package/dist/ports/port-result.js.map +1 -0
  95. package/dist/ports/preview-port.d.ts +27 -0
  96. package/dist/ports/preview-port.d.ts.map +1 -0
  97. package/dist/ports/preview-port.js +9 -0
  98. package/dist/ports/preview-port.js.map +1 -0
  99. package/dist/ports/research-port.d.ts +40 -0
  100. package/dist/ports/research-port.d.ts.map +1 -0
  101. package/dist/ports/research-port.js +9 -0
  102. package/dist/ports/research-port.js.map +1 -0
  103. package/dist/ports/trace-port.d.ts +26 -0
  104. package/dist/ports/trace-port.d.ts.map +1 -0
  105. package/dist/ports/trace-port.js +9 -0
  106. package/dist/ports/trace-port.js.map +1 -0
  107. package/dist/ports/workspace-port.d.ts +126 -0
  108. package/dist/ports/workspace-port.d.ts.map +1 -0
  109. package/dist/ports/workspace-port.js +9 -0
  110. package/dist/ports/workspace-port.js.map +1 -0
  111. package/dist/prompt/index.d.ts +2 -0
  112. package/dist/prompt/index.d.ts.map +1 -0
  113. package/dist/prompt/index.js +2 -0
  114. package/dist/prompt/index.js.map +1 -0
  115. package/dist/prompt/prompt-assembler.d.ts +114 -0
  116. package/dist/prompt/prompt-assembler.d.ts.map +1 -0
  117. package/dist/prompt/prompt-assembler.js +363 -0
  118. package/dist/prompt/prompt-assembler.js.map +1 -0
  119. package/dist/retrieval/evidence.d.ts +41 -0
  120. package/dist/retrieval/evidence.d.ts.map +1 -0
  121. package/dist/retrieval/evidence.js +48 -0
  122. package/dist/retrieval/evidence.js.map +1 -0
  123. package/dist/retrieval/index.d.ts +4 -0
  124. package/dist/retrieval/index.d.ts.map +1 -0
  125. package/dist/retrieval/index.js +4 -0
  126. package/dist/retrieval/index.js.map +1 -0
  127. package/dist/retrieval/lexical-retriever.d.ts +56 -0
  128. package/dist/retrieval/lexical-retriever.d.ts.map +1 -0
  129. package/dist/retrieval/lexical-retriever.js +128 -0
  130. package/dist/retrieval/lexical-retriever.js.map +1 -0
  131. package/dist/retrieval/retrieval-policy.d.ts +25 -0
  132. package/dist/retrieval/retrieval-policy.d.ts.map +1 -0
  133. package/dist/retrieval/retrieval-policy.js +71 -0
  134. package/dist/retrieval/retrieval-policy.js.map +1 -0
  135. package/dist/runtime/completion-gate.d.ts +75 -0
  136. package/dist/runtime/completion-gate.d.ts.map +1 -0
  137. package/dist/runtime/completion-gate.js +114 -0
  138. package/dist/runtime/completion-gate.js.map +1 -0
  139. package/dist/runtime/index.d.ts +7 -0
  140. package/dist/runtime/index.d.ts.map +1 -0
  141. package/dist/runtime/index.js +7 -0
  142. package/dist/runtime/index.js.map +1 -0
  143. package/dist/runtime/run-controller.d.ts +55 -0
  144. package/dist/runtime/run-controller.d.ts.map +1 -0
  145. package/dist/runtime/run-controller.js +2673 -0
  146. package/dist/runtime/run-controller.js.map +1 -0
  147. package/dist/runtime/runtime-error.d.ts +7 -0
  148. package/dist/runtime/runtime-error.d.ts.map +1 -0
  149. package/dist/runtime/runtime-error.js +11 -0
  150. package/dist/runtime/runtime-error.js.map +1 -0
  151. package/dist/runtime/runtime-types.d.ts +303 -0
  152. package/dist/runtime/runtime-types.d.ts.map +1 -0
  153. package/dist/runtime/runtime-types.js +2 -0
  154. package/dist/runtime/runtime-types.js.map +1 -0
  155. package/dist/runtime/state-machine.d.ts +27 -0
  156. package/dist/runtime/state-machine.d.ts.map +1 -0
  157. package/dist/runtime/state-machine.js +68 -0
  158. package/dist/runtime/state-machine.js.map +1 -0
  159. package/dist/runtime/trace-emitter.d.ts +17 -0
  160. package/dist/runtime/trace-emitter.d.ts.map +1 -0
  161. package/dist/runtime/trace-emitter.js +91 -0
  162. package/dist/runtime/trace-emitter.js.map +1 -0
  163. package/dist/tools/coding-messages.d.ts +112 -0
  164. package/dist/tools/coding-messages.d.ts.map +1 -0
  165. package/dist/tools/coding-messages.js +20 -0
  166. package/dist/tools/coding-messages.js.map +1 -0
  167. package/dist/tools/index.d.ts +7 -0
  168. package/dist/tools/index.d.ts.map +1 -0
  169. package/dist/tools/index.js +7 -0
  170. package/dist/tools/index.js.map +1 -0
  171. package/dist/tools/json-schema.d.ts +18 -0
  172. package/dist/tools/json-schema.d.ts.map +1 -0
  173. package/dist/tools/json-schema.js +299 -0
  174. package/dist/tools/json-schema.js.map +1 -0
  175. package/dist/tools/settings-types.d.ts +41 -0
  176. package/dist/tools/settings-types.d.ts.map +1 -0
  177. package/dist/tools/settings-types.js +88 -0
  178. package/dist/tools/settings-types.js.map +1 -0
  179. package/dist/tools/tool-effect-profile.d.ts +44 -0
  180. package/dist/tools/tool-effect-profile.d.ts.map +1 -0
  181. package/dist/tools/tool-effect-profile.js +157 -0
  182. package/dist/tools/tool-effect-profile.js.map +1 -0
  183. package/dist/tools/tool-registry-types.d.ts +72 -0
  184. package/dist/tools/tool-registry-types.d.ts.map +1 -0
  185. package/dist/tools/tool-registry-types.js +9 -0
  186. package/dist/tools/tool-registry-types.js.map +1 -0
  187. package/dist/tools/tool-registry.d.ts +155 -0
  188. package/dist/tools/tool-registry.d.ts.map +1 -0
  189. package/dist/tools/tool-registry.js +599 -0
  190. package/dist/tools/tool-registry.js.map +1 -0
  191. package/dist/tools/tool-registry.schema.json +144 -0
  192. package/docs/ARCHITECTURE.md +259 -0
  193. package/docs/HOST_CONFORMANCE.md +210 -0
  194. package/docs/PROMPT_CONTRACT.md +123 -0
  195. package/docs/TOOL_EFFECT_PROFILE.md +77 -0
  196. package/docs/TOOL_REGISTRY_COMPARISON.md +358 -0
  197. package/package.json +76 -0
@@ -0,0 +1 @@
1
+ {"version":3,"file":"runtime-types.d.ts","sourceRoot":"","sources":["../../src/runtime/runtime-types.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=runtime-types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"runtime-types.js","sourceRoot":"","sources":["../../src/runtime/runtime-types.ts"],"names":[],"mappings":""}
@@ -0,0 +1,27 @@
1
+ export type AiCoderRunState = "cancelled" | "completed" | "compacting" | "created" | "executing" | "failed" | "inspecting" | "paused" | "planning" | "preparing" | "resuming" | "reviewing" | "validating" | "waiting_approval";
2
+ export type AiCoderTerminalRunState = Extract<AiCoderRunState, "cancelled" | "completed" | "failed" | "paused">;
3
+ export type AiCoderStateTransition = Readonly<{
4
+ from: AiCoderRunState;
5
+ reason: string;
6
+ sequence: number;
7
+ timestamp: string;
8
+ to: AiCoderRunState;
9
+ }>;
10
+ export declare class AiCoderInvalidStateTransitionError extends Error {
11
+ readonly from: AiCoderRunState;
12
+ readonly to: AiCoderRunState;
13
+ constructor(from: AiCoderRunState, to: AiCoderRunState);
14
+ }
15
+ export declare function canTransitionAiCoderRun(from: AiCoderRunState, to: AiCoderRunState): boolean;
16
+ export declare function isAiCoderTerminalState(state: AiCoderRunState): state is AiCoderTerminalRunState;
17
+ export declare class AiCoderRunStateMachine {
18
+ private stateValue;
19
+ private readonly now;
20
+ private readonly historyValue;
21
+ private sequence;
22
+ constructor(stateValue?: AiCoderRunState, now?: () => string);
23
+ get state(): AiCoderRunState;
24
+ get history(): readonly AiCoderStateTransition[];
25
+ transition(to: AiCoderRunState, reason: string): AiCoderStateTransition | null;
26
+ }
27
+ //# sourceMappingURL=state-machine.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"state-machine.d.ts","sourceRoot":"","sources":["../../src/runtime/state-machine.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,eAAe,GACvB,WAAW,GACX,WAAW,GACX,YAAY,GACZ,SAAS,GACT,WAAW,GACX,QAAQ,GACR,YAAY,GACZ,QAAQ,GACR,UAAU,GACV,WAAW,GACX,UAAU,GACV,WAAW,GACX,YAAY,GACZ,kBAAkB,CAAC;AAEvB,MAAM,MAAM,uBAAuB,GAAG,OAAO,CAAC,eAAe,EAAE,WAAW,GAAG,WAAW,GAAG,QAAQ,GAAG,QAAQ,CAAC,CAAC;AAuBhH,MAAM,MAAM,sBAAsB,GAAG,QAAQ,CAAC;IAC5C,IAAI,EAAE,eAAe,CAAC;IACtB,MAAM,EAAE,MAAM,CAAC;IACf,QAAQ,EAAE,MAAM,CAAC;IACjB,SAAS,EAAE,MAAM,CAAC;IAClB,EAAE,EAAE,eAAe,CAAC;CACrB,CAAC,CAAC;AAEH,qBAAa,kCAAmC,SAAQ,KAAK;IAC/C,QAAQ,CAAC,IAAI,EAAE,eAAe;IAAE,QAAQ,CAAC,EAAE,EAAE,eAAe;gBAAnD,IAAI,EAAE,eAAe,EAAW,EAAE,EAAE,eAAe;CAIzE;AAED,wBAAgB,uBAAuB,CAAC,IAAI,EAAE,eAAe,EAAE,EAAE,EAAE,eAAe,GAAG,OAAO,CAE3F;AAED,wBAAgB,sBAAsB,CAAC,KAAK,EAAE,eAAe,GAAG,KAAK,IAAI,uBAAuB,CAE/F;AAED,qBAAa,sBAAsB;IAK/B,OAAO,CAAC,UAAU;IAClB,OAAO,CAAC,QAAQ,CAAC,GAAG;IALtB,OAAO,CAAC,QAAQ,CAAC,YAAY,CAAgC;IAC7D,OAAO,CAAC,QAAQ,CAAK;gBAGX,UAAU,GAAE,eAA2B,EAC9B,GAAG,GAAE,MAAM,MAAuC;IAGrE,IAAI,KAAK,IAAI,eAAe,CAE3B;IAED,IAAI,OAAO,IAAI,SAAS,sBAAsB,EAAE,CAE/C;IAED,UAAU,CAAC,EAAE,EAAE,eAAe,EAAE,MAAM,EAAE,MAAM,GAAG,sBAAsB,GAAG,IAAI;CAc/E"}
@@ -0,0 +1,68 @@
1
+ const states = (...values) => Object.freeze(values);
2
+ const OPERATIONAL = Object.freeze(["inspecting", "planning", "executing", "validating", "reviewing"]);
3
+ const INTERRUPTIBLE = Object.freeze(["waiting_approval", "compacting", "paused", "failed", "cancelled"]);
4
+ const TRANSITIONS = Object.freeze({
5
+ cancelled: Object.freeze([]),
6
+ completed: Object.freeze([]),
7
+ compacting: states(...OPERATIONAL, "waiting_approval", "failed", "cancelled", "paused"),
8
+ created: states("preparing", "cancelled"),
9
+ executing: states(...OPERATIONAL, ...INTERRUPTIBLE),
10
+ failed: Object.freeze([]),
11
+ inspecting: states(...OPERATIONAL, ...INTERRUPTIBLE),
12
+ paused: Object.freeze([]),
13
+ planning: states(...OPERATIONAL, ...INTERRUPTIBLE),
14
+ preparing: states("inspecting", "planning", "executing", "reviewing", "resuming", "paused", "failed", "cancelled"),
15
+ resuming: states("inspecting", "planning", "executing", "validating", "reviewing", "paused", "failed", "cancelled"),
16
+ reviewing: states(...OPERATIONAL, "completed", ...INTERRUPTIBLE),
17
+ validating: states(...OPERATIONAL, ...INTERRUPTIBLE),
18
+ waiting_approval: states(...OPERATIONAL, "compacting", "paused", "failed", "cancelled"),
19
+ });
20
+ export class AiCoderInvalidStateTransitionError extends Error {
21
+ from;
22
+ to;
23
+ constructor(from, to) {
24
+ super(`Invalid AI Coder state transition: ${from} -> ${to}.`);
25
+ this.from = from;
26
+ this.to = to;
27
+ this.name = "AiCoderInvalidStateTransitionError";
28
+ }
29
+ }
30
+ export function canTransitionAiCoderRun(from, to) {
31
+ return TRANSITIONS[from].includes(to);
32
+ }
33
+ export function isAiCoderTerminalState(state) {
34
+ return state === "cancelled" || state === "completed" || state === "failed" || state === "paused";
35
+ }
36
+ export class AiCoderRunStateMachine {
37
+ stateValue;
38
+ now;
39
+ historyValue = [];
40
+ sequence = 0;
41
+ constructor(stateValue = "created", now = () => new Date().toISOString()) {
42
+ this.stateValue = stateValue;
43
+ this.now = now;
44
+ }
45
+ get state() {
46
+ return this.stateValue;
47
+ }
48
+ get history() {
49
+ return Object.freeze([...this.historyValue]);
50
+ }
51
+ transition(to, reason) {
52
+ if (to === this.stateValue)
53
+ return null;
54
+ if (!canTransitionAiCoderRun(this.stateValue, to))
55
+ throw new AiCoderInvalidStateTransitionError(this.stateValue, to);
56
+ const transition = Object.freeze({
57
+ from: this.stateValue,
58
+ reason,
59
+ sequence: this.sequence += 1,
60
+ timestamp: this.now(),
61
+ to,
62
+ });
63
+ this.stateValue = to;
64
+ this.historyValue.push(transition);
65
+ return transition;
66
+ }
67
+ }
68
+ //# sourceMappingURL=state-machine.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"state-machine.js","sourceRoot":"","sources":["../../src/runtime/state-machine.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,17 @@
1
+ import type { RunExecutionContext } from "../ports/execution-context.js";
2
+ import type { TraceEventKind, TracePort } from "../ports/trace-port.js";
3
+ export declare class AiCoderTraceEmitter {
4
+ private readonly port;
5
+ private readonly context;
6
+ private readonly timestamp;
7
+ private readonly executionId;
8
+ private sequence;
9
+ private healthyValue;
10
+ private finalizedValue;
11
+ constructor(port: TracePort | undefined, context: RunExecutionContext, timestamp: () => string, executionId: string);
12
+ get healthy(): boolean;
13
+ get finalized(): boolean;
14
+ emit(kind: TraceEventKind, payload: Readonly<Record<string, unknown>>): Promise<void>;
15
+ flush(): Promise<void>;
16
+ }
17
+ //# sourceMappingURL=trace-emitter.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"trace-emitter.d.ts","sourceRoot":"","sources":["../../src/runtime/trace-emitter.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,+BAA+B,CAAC;AACzE,OAAO,KAAK,EAAE,cAAc,EAAE,SAAS,EAAE,MAAM,wBAAwB,CAAC;AAExE,qBAAa,mBAAmB;IAM5B,OAAO,CAAC,QAAQ,CAAC,IAAI;IACrB,OAAO,CAAC,QAAQ,CAAC,OAAO;IACxB,OAAO,CAAC,QAAQ,CAAC,SAAS;IAC1B,OAAO,CAAC,QAAQ,CAAC,WAAW;IAR9B,OAAO,CAAC,QAAQ,CAAK;IACrB,OAAO,CAAC,YAAY,CAAQ;IAC5B,OAAO,CAAC,cAAc,CAAS;gBAGZ,IAAI,EAAE,SAAS,GAAG,SAAS,EAC3B,OAAO,EAAE,mBAAmB,EAC5B,SAAS,EAAE,MAAM,MAAM,EACvB,WAAW,EAAE,MAAM;IAGtC,IAAI,OAAO,IAAI,OAAO,CAErB;IAED,IAAI,SAAS,IAAI,OAAO,CAEvB;IAEK,IAAI,CAAC,IAAI,EAAE,cAAc,EAAE,OAAO,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC;IAqCrF,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;CA8B7B"}
@@ -0,0 +1,91 @@
1
+ export class AiCoderTraceEmitter {
2
+ port;
3
+ context;
4
+ timestamp;
5
+ executionId;
6
+ sequence = 0;
7
+ healthyValue = true;
8
+ finalizedValue = false;
9
+ constructor(port, context, timestamp, executionId) {
10
+ this.port = port;
11
+ this.context = context;
12
+ this.timestamp = timestamp;
13
+ this.executionId = executionId;
14
+ }
15
+ get healthy() {
16
+ return this.healthyValue;
17
+ }
18
+ get finalized() {
19
+ return !this.port || (this.healthyValue && this.finalizedValue);
20
+ }
21
+ async emit(kind, payload) {
22
+ if (!this.port)
23
+ return;
24
+ this.finalizedValue = false;
25
+ const sequence = this.sequence += 1;
26
+ try {
27
+ const pending = this.port.emit(Object.freeze({
28
+ eventId: `${this.context.runId}:${this.executionId}:${sequence}`,
29
+ executionId: this.executionId,
30
+ kind,
31
+ payload,
32
+ runId: this.context.runId,
33
+ sequence,
34
+ taskId: this.context.taskId,
35
+ timestamp: this.timestamp(),
36
+ }), this.context);
37
+ const result = await new Promise((resolve, reject) => {
38
+ let settled = false;
39
+ const finish = (action) => {
40
+ if (settled)
41
+ return;
42
+ settled = true;
43
+ this.context.signal.removeEventListener("abort", aborted);
44
+ action();
45
+ };
46
+ const aborted = () => finish(() => reject(this.context.signal.reason));
47
+ this.context.signal.addEventListener("abort", aborted, { once: true });
48
+ pending.then((value) => finish(() => resolve(value)), (error) => finish(() => reject(error)));
49
+ if (this.context.signal.aborted)
50
+ aborted();
51
+ });
52
+ if (!result.ok)
53
+ this.healthyValue = false;
54
+ }
55
+ catch {
56
+ this.healthyValue = false;
57
+ }
58
+ }
59
+ async flush() {
60
+ if (!this.port) {
61
+ this.finalizedValue = true;
62
+ return;
63
+ }
64
+ try {
65
+ const pending = this.port.flush(this.context);
66
+ const result = await new Promise((resolve, reject) => {
67
+ let settled = false;
68
+ const finish = (action) => {
69
+ if (settled)
70
+ return;
71
+ settled = true;
72
+ this.context.signal.removeEventListener("abort", aborted);
73
+ action();
74
+ };
75
+ const aborted = () => finish(() => reject(this.context.signal.reason));
76
+ this.context.signal.addEventListener("abort", aborted, { once: true });
77
+ pending.then((value) => finish(() => resolve(value)), (error) => finish(() => reject(error)));
78
+ if (this.context.signal.aborted)
79
+ aborted();
80
+ });
81
+ if (!result.ok)
82
+ this.healthyValue = false;
83
+ this.finalizedValue = result.ok && this.healthyValue;
84
+ }
85
+ catch {
86
+ this.healthyValue = false;
87
+ this.finalizedValue = false;
88
+ }
89
+ }
90
+ }
91
+ //# sourceMappingURL=trace-emitter.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"trace-emitter.js","sourceRoot":"","sources":["../../src/runtime/trace-emitter.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,112 @@
1
+ /**
2
+ * @author Bùi Trọng Hiếu
3
+ * @email kevinbui210191@gmail.com
4
+ * @create date 2026-08-21
5
+ * @modify date 2026-08-28
6
+ * @desc Provider-neutral streaming model adapter and correlated message protocol.
7
+ */
8
+ import type { AiCoderAttachment } from "../context/attachment-types.js";
9
+ import type { ModelCapabilities, ModelIdentity } from "../ports/capability-port.js";
10
+ import type { RunExecutionContext } from "../ports/execution-context.js";
11
+ import type { PortResult } from "../ports/port-result.js";
12
+ export type CodingToolCall = Readonly<{
13
+ arguments: Readonly<Record<string, unknown>>;
14
+ name: string;
15
+ toolCallId: string;
16
+ }>;
17
+ export type CodingSystemMessage = Readonly<{
18
+ content: string;
19
+ role: "system";
20
+ }>;
21
+ export type CodingUserMessage = Readonly<{
22
+ content: string;
23
+ role: "user";
24
+ }>;
25
+ export type CodingAssistantMessage = Readonly<{
26
+ content: string;
27
+ role: "assistant";
28
+ thinking?: string;
29
+ toolCalls?: readonly CodingToolCall[];
30
+ }>;
31
+ /** `toolCallId` is mandatory so parallel and same-name calls remain unambiguous. */
32
+ export type CodingToolResultMessage = Readonly<{
33
+ content: string;
34
+ role: "tool";
35
+ toolCallId: string;
36
+ toolName: string;
37
+ }>;
38
+ export type CodingMessage = CodingSystemMessage | CodingUserMessage | CodingAssistantMessage | CodingToolResultMessage;
39
+ export type CodingToolDefinition = Readonly<{
40
+ function: Readonly<{
41
+ description: string;
42
+ name: string;
43
+ parameters: Readonly<Record<string, unknown>>;
44
+ }>;
45
+ type: "function";
46
+ }>;
47
+ export type CodingRoundRequest = Readonly<{
48
+ attachments?: readonly AiCoderAttachment[];
49
+ maxOutputTokens?: number;
50
+ messages: readonly CodingMessage[];
51
+ preserveThinking: boolean;
52
+ temperature?: number;
53
+ think: boolean;
54
+ tools: readonly CodingToolDefinition[];
55
+ }>;
56
+ export type CodingTokenCountInput = Readonly<{
57
+ attachments?: readonly AiCoderAttachment[];
58
+ messages: readonly CodingMessage[];
59
+ tools?: readonly CodingToolDefinition[];
60
+ }>;
61
+ export type CodingTokenCount = Readonly<{
62
+ exact: boolean;
63
+ source: "provider" | "tokenizer" | "estimate";
64
+ tokens: number;
65
+ }>;
66
+ export type CodingTokenUsage = Readonly<{
67
+ cachedInputTokens?: number;
68
+ inputTokens?: number;
69
+ outputTokens?: number;
70
+ reasoningTokens?: number;
71
+ totalTokens?: number;
72
+ }>;
73
+ export declare class CodingProviderError extends Error {
74
+ readonly code: "AUTHENTICATION" | "CANCELED" | "CAPABILITY_MISMATCH" | "CONTEXT_WINDOW_EXCEEDED" | "MALFORMED_STREAM" | "PROVIDER_ERROR" | "RATE_LIMITED" | "TIMEOUT";
75
+ readonly retryable: boolean;
76
+ readonly retryMode: "same_request" | "without_thinking";
77
+ constructor(code: "AUTHENTICATION" | "CANCELED" | "CAPABILITY_MISMATCH" | "CONTEXT_WINDOW_EXCEEDED" | "MALFORMED_STREAM" | "PROVIDER_ERROR" | "RATE_LIMITED" | "TIMEOUT", message: string, retryable?: boolean, retryMode?: "same_request" | "without_thinking");
78
+ }
79
+ export type CodingRoundEvent = Readonly<{
80
+ type: "started";
81
+ }> | Readonly<{
82
+ delta: string;
83
+ type: "thinking";
84
+ }> | Readonly<{
85
+ delta: string;
86
+ type: "content";
87
+ }> | Readonly<{
88
+ call: CodingToolCall;
89
+ type: "tool_call";
90
+ }> | Readonly<{
91
+ type: "usage";
92
+ usage: CodingTokenUsage;
93
+ }> | Readonly<{
94
+ content: string;
95
+ identity: ModelIdentity;
96
+ stopReason: "completed" | "tool_calls" | "length" | "unknown";
97
+ thinking: string;
98
+ type: "done";
99
+ usage?: CodingTokenUsage;
100
+ }> | Readonly<{
101
+ error: CodingProviderError;
102
+ type: "error";
103
+ }> | Readonly<{
104
+ type: "canceled";
105
+ }>;
106
+ export interface CodingModelAdapter {
107
+ readonly identity: ModelIdentity;
108
+ capabilities(context: RunExecutionContext): Promise<PortResult<ModelCapabilities>>;
109
+ countTokens(input: CodingTokenCountInput, context: RunExecutionContext): Promise<PortResult<CodingTokenCount>>;
110
+ streamRound(request: CodingRoundRequest, context: RunExecutionContext): AsyncIterable<CodingRoundEvent>;
111
+ }
112
+ //# sourceMappingURL=coding-messages.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"coding-messages.d.ts","sourceRoot":"","sources":["../../src/tools/coding-messages.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,20 @@
1
+ /**
2
+ * @author Bùi Trọng Hiếu
3
+ * @email kevinbui210191@gmail.com
4
+ * @create date 2026-08-21
5
+ * @modify date 2026-08-28
6
+ * @desc Provider-neutral streaming model adapter and correlated message protocol.
7
+ */
8
+ export class CodingProviderError extends Error {
9
+ code;
10
+ retryable;
11
+ retryMode;
12
+ constructor(code, message, retryable = false, retryMode = "same_request") {
13
+ super(message);
14
+ this.code = code;
15
+ this.retryable = retryable;
16
+ this.retryMode = retryMode;
17
+ this.name = "CodingProviderError";
18
+ }
19
+ }
20
+ //# sourceMappingURL=coding-messages.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"coding-messages.js","sourceRoot":"","sources":["../../src/tools/coding-messages.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAsFH,MAAM,OAAO,mBAAoB,SAAQ,KAAK;IAEjC;IAUA;IACA;IAZX,YACW,IAQI,EACb,OAAe,EACN,YAAY,KAAK,EACjB,YAAiD,cAAc;QAExE,KAAK,CAAC,OAAO,CAAC,CAAC;QAbN,SAAI,GAAJ,IAAI,CAQA;QAEJ,cAAS,GAAT,SAAS,CAAQ;QACjB,cAAS,GAAT,SAAS,CAAsD;QAGxE,IAAI,CAAC,IAAI,GAAG,qBAAqB,CAAC;IACpC,CAAC;CACF"}
@@ -0,0 +1,7 @@
1
+ export * from "./coding-messages.js";
2
+ export * from "./json-schema.js";
3
+ export * from "./settings-types.js";
4
+ export * from "./tool-effect-profile.js";
5
+ export * from "./tool-registry-types.js";
6
+ export * from "./tool-registry.js";
7
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/tools/index.ts"],"names":[],"mappings":"AAAA,cAAc,sBAAsB,CAAC;AACrC,cAAc,kBAAkB,CAAC;AACjC,cAAc,qBAAqB,CAAC;AACpC,cAAc,0BAA0B,CAAC;AACzC,cAAc,0BAA0B,CAAC;AACzC,cAAc,oBAAoB,CAAC"}
@@ -0,0 +1,7 @@
1
+ export * from "./coding-messages.js";
2
+ export * from "./json-schema.js";
3
+ export * from "./settings-types.js";
4
+ export * from "./tool-effect-profile.js";
5
+ export * from "./tool-registry-types.js";
6
+ export * from "./tool-registry.js";
7
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/tools/index.ts"],"names":[],"mappings":"AAAA,cAAc,sBAAsB,CAAC;AACrC,cAAc,kBAAkB,CAAC;AACjC,cAAc,qBAAqB,CAAC;AACpC,cAAc,0BAA0B,CAAC;AACzC,cAAc,0BAA0B,CAAC;AACzC,cAAc,oBAAoB,CAAC"}
@@ -0,0 +1,18 @@
1
+ /**
2
+ * @author Bùi Trọng Hiếu
3
+ * @email kevinbui210191@gmail.com
4
+ * @create date 2026-08-21
5
+ * @modify date 2026-08-28
6
+ * @desc Deterministic validator for the JSON Schema subset accepted by AI Coder tools.
7
+ */
8
+ export type AiCoderJsonSchema = Readonly<Record<string, unknown>>;
9
+ export type SchemaValidationResult = Readonly<{
10
+ errors: readonly string[];
11
+ valid: boolean;
12
+ }>;
13
+ /** Validates that a schema itself belongs to the deterministic subset supported by this runtime. */
14
+ export declare function validateAiCoderJsonSchemaDefinition(schema: unknown): SchemaValidationResult;
15
+ export declare function assertAiCoderJsonSchemaDefinition(schema: unknown, label: string): asserts schema is AiCoderJsonSchema;
16
+ export declare function validateAiCoderJsonSchema(schema: AiCoderJsonSchema, value: unknown): SchemaValidationResult;
17
+ export declare function assertAiCoderJsonSchema(schema: AiCoderJsonSchema, value: unknown, label: string): void;
18
+ //# sourceMappingURL=json-schema.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"json-schema.d.ts","sourceRoot":"","sources":["../../src/tools/json-schema.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAIH,MAAM,MAAM,iBAAiB,GAAG,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CAAC;AAElE,MAAM,MAAM,sBAAsB,GAAG,QAAQ,CAAC;IAC5C,MAAM,EAAE,SAAS,MAAM,EAAE,CAAC;IAC1B,KAAK,EAAE,OAAO,CAAC;CAChB,CAAC,CAAC;AAsPH,oGAAoG;AACpG,wBAAgB,mCAAmC,CAAC,MAAM,EAAE,OAAO,GAAG,sBAAsB,CAK3F;AAED,wBAAgB,iCAAiC,CAAC,MAAM,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,IAAI,iBAAiB,CAGrH;AAED,wBAAgB,yBAAyB,CAAC,MAAM,EAAE,iBAAiB,EAAE,KAAK,EAAE,OAAO,GAAG,sBAAsB,CAM3G;AAED,wBAAgB,uBAAuB,CAAC,MAAM,EAAE,iBAAiB,EAAE,KAAK,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,QAG/F"}