@tyvm/knowhow 0.0.109-dev.05fe5a0 → 0.0.109-dev.38b1faa

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 (58) hide show
  1. package/package.json +1 -1
  2. package/src/agents/tools/list.ts +2 -2
  3. package/src/chat/CliChatService.ts +1 -1
  4. package/src/chat/modules/SystemModule.ts +2 -2
  5. package/src/clients/anthropic.ts +1 -1
  6. package/src/clients/index.ts +25 -6
  7. package/src/clients/openai.ts +8 -5
  8. package/src/clients/types.ts +29 -6
  9. package/src/clients/withRetry.ts +89 -0
  10. package/src/commands/modules.ts +365 -30
  11. package/src/config.ts +1 -1
  12. package/src/fileSync.ts +20 -12
  13. package/src/hashes.ts +35 -13
  14. package/src/services/MediaProcessorService.ts +4 -2
  15. package/src/services/modules/index.ts +24 -19
  16. package/tests/unit/clients/AIClient.test.ts +446 -0
  17. package/tests/unit/clients/withRetry.test.ts +319 -0
  18. package/tests/unit/commands/github-credentials.test.ts +1 -2
  19. package/ts_build/package.json +1 -1
  20. package/ts_build/src/agents/tools/list.js +2 -2
  21. package/ts_build/src/agents/tools/list.js.map +1 -1
  22. package/ts_build/src/chat/CliChatService.js +1 -1
  23. package/ts_build/src/chat/CliChatService.js.map +1 -1
  24. package/ts_build/src/chat/modules/SystemModule.js +2 -2
  25. package/ts_build/src/chat/modules/SystemModule.js.map +1 -1
  26. package/ts_build/src/clients/anthropic.js +1 -1
  27. package/ts_build/src/clients/anthropic.js.map +1 -1
  28. package/ts_build/src/clients/index.js +7 -6
  29. package/ts_build/src/clients/index.js.map +1 -1
  30. package/ts_build/src/clients/openai.js +4 -4
  31. package/ts_build/src/clients/openai.js.map +1 -1
  32. package/ts_build/src/clients/types.d.ts +12 -6
  33. package/ts_build/src/clients/withRetry.d.ts +2 -0
  34. package/ts_build/src/clients/withRetry.js +60 -0
  35. package/ts_build/src/clients/withRetry.js.map +1 -0
  36. package/ts_build/src/commands/modules.js +297 -17
  37. package/ts_build/src/commands/modules.js.map +1 -1
  38. package/ts_build/src/config.js +1 -1
  39. package/ts_build/src/config.js.map +1 -1
  40. package/ts_build/src/fileSync.d.ts +2 -2
  41. package/ts_build/src/fileSync.js +13 -11
  42. package/ts_build/src/fileSync.js.map +1 -1
  43. package/ts_build/src/hashes.d.ts +2 -2
  44. package/ts_build/src/hashes.js +35 -9
  45. package/ts_build/src/hashes.js.map +1 -1
  46. package/ts_build/src/services/MediaProcessorService.d.ts +2 -1
  47. package/ts_build/src/services/MediaProcessorService.js +3 -1
  48. package/ts_build/src/services/MediaProcessorService.js.map +1 -1
  49. package/ts_build/src/services/modules/index.js +17 -13
  50. package/ts_build/src/services/modules/index.js.map +1 -1
  51. package/ts_build/tests/unit/clients/AIClient.test.d.ts +1 -0
  52. package/ts_build/tests/unit/clients/AIClient.test.js +339 -0
  53. package/ts_build/tests/unit/clients/AIClient.test.js.map +1 -0
  54. package/ts_build/tests/unit/clients/withRetry.test.d.ts +1 -0
  55. package/ts_build/tests/unit/clients/withRetry.test.js +225 -0
  56. package/ts_build/tests/unit/clients/withRetry.test.js.map +1 -0
  57. package/ts_build/tests/unit/commands/github-credentials.test.js +1 -2
  58. package/ts_build/tests/unit/commands/github-credentials.test.js.map +1 -1
@@ -5,8 +5,8 @@ export declare function md5Hash(str: string): Promise<string>;
5
5
  export declare function checkNoFilesChanged(files: string[], promptHash: string, hashes: any): Promise<boolean>;
6
6
  export declare function saveAllFileHashes(files: string[], promptHash: string): Promise<void>;
7
7
  export declare function hasFileChangedSinceUpload(localPath: string, hashes: any): Promise<boolean>;
8
- export declare function saveUploadHash(localPath: string): Promise<void>;
8
+ export declare function saveUploadHash(localPath: string, hashes?: any): Promise<void>;
9
9
  export declare function isLocalFileMatchingDownloadHash(localPath: string, hashes: any): Promise<boolean>;
10
- export declare function saveDownloadHash(localPath: string): Promise<void>;
10
+ export declare function saveDownloadHash(localPath: string, hashes?: any): Promise<void>;
11
11
  export declare function computeSHA256Base64(filePath: string): string;
12
12
  export declare function isLocalFileMatchingRemote(localPath: string, remoteChecksumSHA256: string | null): boolean;
@@ -52,11 +52,31 @@ const crypto = __importStar(require("crypto"));
52
52
  const utils_1 = require("./utils");
53
53
  const conversion_1 = require("./conversion");
54
54
  async function getHashes() {
55
- const hashes = JSON.parse(await (0, utils_1.readFile)(".knowhow/.hashes.json", "utf8"));
56
- return hashes;
55
+ try {
56
+ const hashes = JSON.parse(await (0, utils_1.readFile)(".knowhow/.hashes.json", "utf8"));
57
+ return hashes;
58
+ }
59
+ catch (err) {
60
+ if (err.code === "ENOENT") {
61
+ return {};
62
+ }
63
+ throw err;
64
+ }
57
65
  }
58
66
  async function saveHashes(hashes) {
59
- await (0, utils_1.writeFile)(".knowhow/.hashes.json", JSON.stringify(hashes, null, 2));
67
+ const target = ".knowhow/.hashes.json";
68
+ const tmp = `${target}.tmp.${process.pid}`;
69
+ try {
70
+ fs_1.default.writeFileSync(tmp, JSON.stringify(hashes, null, 2));
71
+ fs_1.default.renameSync(tmp, target);
72
+ }
73
+ catch (err) {
74
+ try {
75
+ fs_1.default.unlinkSync(tmp);
76
+ }
77
+ catch (_) { }
78
+ throw err;
79
+ }
60
80
  }
61
81
  async function md5Hash(str) {
62
82
  return crypto.createHash("md5").update(str).digest("hex");
@@ -106,15 +126,18 @@ async function hasFileChangedSinceUpload(localPath, hashes) {
106
126
  const currentHash = crypto.createHash("md5").update(content).digest("hex");
107
127
  return hashes[localPath]?.[UPLOAD_KEY] !== currentHash;
108
128
  }
109
- async function saveUploadHash(localPath) {
110
- const hashes = await getHashes();
129
+ async function saveUploadHash(localPath, hashes) {
130
+ const standalone = !hashes;
131
+ if (standalone)
132
+ hashes = await getHashes();
111
133
  const content = fs_1.default.readFileSync(localPath);
112
134
  const currentHash = crypto.createHash("md5").update(content).digest("hex");
113
135
  if (!hashes[localPath]) {
114
136
  hashes[localPath] = { fileHash: currentHash, promptHash: "" };
115
137
  }
116
138
  hashes[localPath][UPLOAD_KEY] = currentHash;
117
- await saveHashes(hashes);
139
+ if (standalone)
140
+ await saveHashes(hashes);
118
141
  }
119
142
  async function isLocalFileMatchingDownloadHash(localPath, hashes) {
120
143
  if (!fs_1.default.existsSync(localPath))
@@ -126,15 +149,18 @@ async function isLocalFileMatchingDownloadHash(localPath, hashes) {
126
149
  const currentHash = crypto.createHash("sha256").update(content).digest("base64");
127
150
  return storedHash === currentHash;
128
151
  }
129
- async function saveDownloadHash(localPath) {
130
- const hashes = await getHashes();
152
+ async function saveDownloadHash(localPath, hashes) {
153
+ const standalone = !hashes;
154
+ if (standalone)
155
+ hashes = await getHashes();
131
156
  const content = fs_1.default.readFileSync(localPath);
132
157
  const currentHash = crypto.createHash("sha256").update(content).digest("base64");
133
158
  if (!hashes[localPath]) {
134
159
  hashes[localPath] = { fileHash: currentHash, promptHash: "" };
135
160
  }
136
161
  hashes[localPath][DOWNLOAD_KEY] = currentHash;
137
- await saveHashes(hashes);
162
+ if (standalone)
163
+ await saveHashes(hashes);
138
164
  }
139
165
  function computeSHA256Base64(filePath) {
140
166
  const content = fs_1.default.readFileSync(filePath);
@@ -1 +1 @@
1
- {"version":3,"file":"hashes.js","sourceRoot":"","sources":["../../src/hashes.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAMA,8BAGC;AAED,gCAEC;AAED,0BAEC;AAED,kDAiCC;AAED,8CAiBC;AAUD,8DAQC;AAKD,wCASC;AAMD,0EAUC;AAMD,4CASC;AAKD,kDAGC;AAMD,8DAQC;AA5JD,4CAAoB;AACpB,+CAAiC;AAEjC,mCAA8C;AAC9C,6CAA6C;AAEtC,KAAK,UAAU,SAAS;IAC7B,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,IAAA,gBAAQ,EAAC,uBAAuB,EAAE,MAAM,CAAC,CAAC,CAAC;IAC3E,OAAO,MAAgB,CAAC;AAC1B,CAAC;AAEM,KAAK,UAAU,UAAU,CAAC,MAAW;IAC1C,MAAM,IAAA,iBAAS,EAAC,uBAAuB,EAAE,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC;AAC5E,CAAC;AAEM,KAAK,UAAU,OAAO,CAAC,GAAW;IACvC,OAAO,MAAM,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;AAC5D,CAAC;AAEM,KAAK,UAAU,mBAAmB,CACvC,KAAe,EACf,UAAkB,EAClB,MAAW;IAEX,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;QACzB,IAAI,CAAC,YAAE,CAAC,UAAU,CAAC,IAAI,CAAC,EAAE,CAAC;YACzB,OAAO,KAAK,CAAC;QACf,CAAC;QAGD,MAAM,WAAW,GAAG,MAAM,IAAA,0BAAa,EAAC,IAAI,CAAC,CAAC;QAC9C,MAAM,QAAQ,GAAG,MAAM,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;QAE5E,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC;YAClB,OAAO,KAAK,CAAC;QACf,CAAC;QAED,IACE,MAAM,CAAC,IAAI,CAAC,CAAC,UAAU,KAAK,UAAU;YACtC,MAAM,CAAC,IAAI,CAAC,CAAC,QAAQ,KAAK,QAAQ,EAClC,CAAC;YACD,OAAO,IAAI,CAAC;QACd,CAAC;QAED,IAAI,MAAM,CAAC,IAAI,CAAC,CAAC,UAAU,CAAC,KAAK,QAAQ,EAAE,CAAC;YAC1C,OAAO,IAAI,CAAC;QACd,CAAC;QAED,OAAO,KAAK,CAAC;IACf,CAAC;IAED,OAAO,IAAI,CAAC;AACd,CAAC;AAEM,KAAK,UAAU,iBAAiB,CAAC,KAAe,EAAE,UAAkB;IACzE,MAAM,MAAM,GAAG,MAAM,SAAS,EAAE,CAAC;IAEjC,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;QACzB,MAAM,WAAW,GAAG,MAAM,IAAA,0BAAa,EAAC,IAAI,CAAC,CAAC;QAC9C,MAAM,QAAQ,GAAG,MAAM,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;QAE5E,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC;YAClB,MAAM,CAAC,IAAI,CAAC,GAAG;gBACb,QAAQ;gBACR,UAAU;aACX,CAAC;QACJ,CAAC;QACD,MAAM,CAAC,IAAI,CAAC,CAAC,UAAU,CAAC,GAAG,QAAQ,CAAC;IACtC,CAAC;IAED,MAAM,UAAU,CAAC,MAAM,CAAC,CAAC;AAC3B,CAAC;AAED,MAAM,UAAU,GAAG,QAAQ,CAAC;AAE5B,MAAM,YAAY,GAAG,UAAU,CAAC;AAMzB,KAAK,UAAU,yBAAyB,CAC7C,SAAiB,EACjB,MAAW;IAEX,IAAI,CAAC,YAAE,CAAC,UAAU,CAAC,SAAS,CAAC;QAAE,OAAO,IAAI,CAAC;IAC3C,MAAM,OAAO,GAAG,YAAE,CAAC,YAAY,CAAC,SAAS,CAAC,CAAC;IAC3C,MAAM,WAAW,GAAG,MAAM,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;IAC3E,OAAO,MAAM,CAAC,SAAS,CAAC,EAAE,CAAC,UAAU,CAAC,KAAK,WAAW,CAAC;AACzD,CAAC;AAKM,KAAK,UAAU,cAAc,CAAC,SAAiB;IACpD,MAAM,MAAM,GAAG,MAAM,SAAS,EAAE,CAAC;IACjC,MAAM,OAAO,GAAG,YAAE,CAAC,YAAY,CAAC,SAAS,CAAC,CAAC;IAC3C,MAAM,WAAW,GAAG,MAAM,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;IAC3E,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,EAAE,CAAC;QACvB,MAAM,CAAC,SAAS,CAAC,GAAG,EAAE,QAAQ,EAAE,WAAW,EAAE,UAAU,EAAE,EAAE,EAAE,CAAC;IAChE,CAAC;IACD,MAAM,CAAC,SAAS,CAAC,CAAC,UAAU,CAAC,GAAG,WAAW,CAAC;IAC5C,MAAM,UAAU,CAAC,MAAM,CAAC,CAAC;AAC3B,CAAC;AAMM,KAAK,UAAU,+BAA+B,CACnD,SAAiB,EACjB,MAAW;IAEX,IAAI,CAAC,YAAE,CAAC,UAAU,CAAC,SAAS,CAAC;QAAE,OAAO,KAAK,CAAC;IAC5C,MAAM,UAAU,GAAG,MAAM,CAAC,SAAS,CAAC,EAAE,CAAC,YAAY,CAAC,CAAC;IACrD,IAAI,CAAC,UAAU;QAAE,OAAO,KAAK,CAAC;IAC9B,MAAM,OAAO,GAAG,YAAE,CAAC,YAAY,CAAC,SAAS,CAAC,CAAC;IAC3C,MAAM,WAAW,GAAG,MAAM,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;IACjF,OAAO,UAAU,KAAK,WAAW,CAAC;AACpC,CAAC;AAMM,KAAK,UAAU,gBAAgB,CAAC,SAAiB;IACtD,MAAM,MAAM,GAAG,MAAM,SAAS,EAAE,CAAC;IACjC,MAAM,OAAO,GAAG,YAAE,CAAC,YAAY,CAAC,SAAS,CAAC,CAAC;IAC3C,MAAM,WAAW,GAAG,MAAM,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;IACjF,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,EAAE,CAAC;QACvB,MAAM,CAAC,SAAS,CAAC,GAAG,EAAE,QAAQ,EAAE,WAAW,EAAE,UAAU,EAAE,EAAE,EAAE,CAAC;IAChE,CAAC;IACD,MAAM,CAAC,SAAS,CAAC,CAAC,YAAY,CAAC,GAAG,WAAW,CAAC;IAC9C,MAAM,UAAU,CAAC,MAAM,CAAC,CAAC;AAC3B,CAAC;AAKD,SAAgB,mBAAmB,CAAC,QAAgB;IAClD,MAAM,OAAO,GAAG,YAAE,CAAC,YAAY,CAAC,QAAQ,CAAC,CAAC;IAC1C,OAAO,MAAM,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;AACtE,CAAC;AAMD,SAAgB,yBAAyB,CACvC,SAAiB,EACjB,oBAAmC;IAEnC,IAAI,CAAC,oBAAoB;QAAE,OAAO,KAAK,CAAC;IACxC,IAAI,CAAC,YAAE,CAAC,UAAU,CAAC,SAAS,CAAC;QAAE,OAAO,KAAK,CAAC;IAC5C,MAAM,aAAa,GAAG,mBAAmB,CAAC,SAAS,CAAC,CAAC;IACrD,OAAO,aAAa,KAAK,oBAAoB,CAAC;AAChD,CAAC"}
1
+ {"version":3,"file":"hashes.js","sourceRoot":"","sources":["../../src/hashes.ts"],"names":[],"mappings":"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"}
@@ -1,3 +1,4 @@
1
+ import { AIClient } from "../clients";
1
2
  export interface TranscriptChunk {
2
3
  chunkPath: string;
3
4
  text: string;
@@ -11,7 +12,7 @@ export interface KeyframeInfo {
11
12
  }
12
13
  export declare class MediaProcessorService {
13
14
  private clients;
14
- constructor(clients: any);
15
+ constructor(clients: AIClient);
15
16
  chunk(filePath: string, outputDir: string, CHUNK_LENGTH_SECONDS?: number, reuseExistingChunks?: boolean): Promise<string[]>;
16
17
  streamTranscription(files: string[], outputPath: string, reusePreviousTranscript?: boolean): AsyncGenerator<TranscriptChunk>;
17
18
  transcribeChunks(files: string[], outputPath: string, reusePreviousTranscript?: boolean): Promise<string[]>;
@@ -39,6 +39,7 @@ const path = __importStar(require("path"));
39
39
  const child_process_1 = require("child_process");
40
40
  const util_1 = require("util");
41
41
  const utils_1 = require("../utils");
42
+ const types_1 = require("../types");
42
43
  const execPromise = (0, util_1.promisify)(child_process_1.exec);
43
44
  async function execAsync(command) {
44
45
  const { stdout, stderr } = await execPromise(command);
@@ -209,8 +210,9 @@ class MediaProcessorService {
209
210
  });
210
211
  const image = `data:image/jpeg;base64,${base64}`;
211
212
  return this.clients.createCompletion("openai", {
212
- model: "gpt-4o",
213
+ model: types_1.Models.openai.GPT_54_Nano,
213
214
  max_tokens: 2500,
215
+ timeout: 20000,
214
216
  messages: [
215
217
  {
216
218
  role: "user",
@@ -1 +1 @@
1
- {"version":3,"file":"MediaProcessorService.js","sourceRoot":"","sources":["../../../src/services/MediaProcessorService.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"MediaProcessorService.js","sourceRoot":"","sources":["../../../src/services/MediaProcessorService.ts"],"names":[],"mappings":"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"}
@@ -52,14 +52,10 @@ class ModulesService {
52
52
  context = { ...(await this.getDefaultContext()) };
53
53
  }
54
54
  const allModulePaths = config.modules;
55
- const cwdPaths = require.resolve
56
- ? require.resolve.paths?.("") || []
57
- : [];
58
55
  const resolvePaths = [
59
56
  path.join(process.cwd(), ".knowhow", "node_modules"),
60
57
  path.join(os.homedir(), ".knowhow", "node_modules"),
61
58
  path.join(process.cwd(), "node_modules"),
62
- ...cwdPaths,
63
59
  ];
64
60
  for (const modulePath of allModulePaths) {
65
61
  let resolvedPath;
@@ -74,15 +70,23 @@ class ModulesService {
74
70
  resolvedPath = modulePath;
75
71
  }
76
72
  }
77
- const rawModule = require(resolvedPath);
78
- const importedModule = (rawModule.default || rawModule);
79
- context.Events?.log("ModulesService", `🔌 Loading module: ${modulePath} (resolved: ${resolvedPath})`);
80
- await importedModule.init({
81
- config,
82
- cwd: process.cwd(),
83
- context: context,
84
- });
85
- context.Events?.log("ModulesService", `✅ Module initialized: ${modulePath} (tools: ${importedModule.tools.length}, agents: ${importedModule.agents.length}, plugins: ${importedModule.plugins.length}, clients: ${importedModule.clients.length})`);
73
+ let importedModule;
74
+ try {
75
+ const rawModule = require(resolvedPath);
76
+ importedModule = (rawModule.default || rawModule);
77
+ context.Events?.log("ModulesService", `🔌 Loading module: ${modulePath} (resolved: ${resolvedPath})`);
78
+ await importedModule.init({
79
+ config,
80
+ cwd: process.cwd(),
81
+ context: context,
82
+ });
83
+ context.Events?.log("ModulesService", `✅ Module initialized: ${modulePath} (tools: ${importedModule.tools.length}, agents: ${importedModule.agents.length}, plugins: ${importedModule.plugins.length}, clients: ${importedModule.clients.length})`);
84
+ }
85
+ catch (err) {
86
+ process.stderr.write(`\n⚠️ Failed to load module "${modulePath}": ${err.message}\n` +
87
+ ` Run "knowhow modules setup --global" or "knowhow modules install ${modulePath} --global" to fix this.\n\n`);
88
+ continue;
89
+ }
86
90
  if (context.Agents) {
87
91
  for (const agent of importedModule.agents) {
88
92
  context.Agents.registerAgent(agent);
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/services/modules/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/services/modules/index.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1 @@
1
+ export {};
@@ -0,0 +1,339 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ jest.mock("../../../src/config", () => ({
4
+ getConfig: jest.fn().mockResolvedValue({ modules: [] }),
5
+ getGlobalConfig: jest.fn().mockResolvedValue({ modules: [] }),
6
+ getConfigSync: jest.fn().mockReturnValue({}),
7
+ }));
8
+ jest.mock("../../../src/services/KnowhowClient", () => ({
9
+ loadKnowhowJwt: jest.fn().mockReturnValue(null),
10
+ KNOWHOW_API_URL: "https://mock.local",
11
+ }));
12
+ const index_1 = require("../../../src/clients/index");
13
+ const mockCompletion = () => ({
14
+ choices: [{ message: { role: "assistant", content: "hello" } }],
15
+ model: "mock-model",
16
+ usage: { prompt_tokens: 10, completion_tokens: 5 },
17
+ });
18
+ const mockImage = () => ({
19
+ created: Date.now(),
20
+ data: [{ url: "https://mock.local/image.png" }],
21
+ });
22
+ const mockEmbedding = () => ({
23
+ data: [{ object: "embedding", embedding: [0.1, 0.2], index: 0 }],
24
+ model: "mock-embed",
25
+ usage: { prompt_tokens: 5, total_tokens: 5 },
26
+ });
27
+ const mockAudio = () => ({
28
+ audio: Buffer.from("fake-audio"),
29
+ format: "mp3",
30
+ });
31
+ function setupClient(overrides = {}) {
32
+ const mockGenericClient = {
33
+ setKey: jest.fn(),
34
+ createChatCompletion: jest
35
+ .fn()
36
+ .mockResolvedValue(mockCompletion()),
37
+ createEmbedding: jest.fn().mockResolvedValue(mockEmbedding()),
38
+ createImageGeneration: jest.fn().mockResolvedValue(mockImage()),
39
+ createAudioGeneration: jest.fn().mockResolvedValue(mockAudio()),
40
+ createAudioTranscription: jest
41
+ .fn()
42
+ .mockResolvedValue({ text: "transcribed" }),
43
+ createVideoGeneration: jest.fn().mockResolvedValue({
44
+ created: Date.now(),
45
+ data: [{ url: "https://mock.local/video.mp4" }],
46
+ }),
47
+ getModels: jest.fn().mockResolvedValue([]),
48
+ ...overrides,
49
+ };
50
+ const aiClient = new index_1.AIClient();
51
+ aiClient.registerClient("mock", mockGenericClient);
52
+ aiClient.registerModels("mock", ["mock-model", "mock-embed"]);
53
+ return { aiClient, mockGenericClient };
54
+ }
55
+ describe("AIClient — retry / timeout / AbortSignal", () => {
56
+ afterEach(() => {
57
+ jest.useRealTimers();
58
+ });
59
+ describe("createCompletion", () => {
60
+ it("returns a completion on success", async () => {
61
+ const { aiClient } = setupClient();
62
+ const result = await aiClient.createCompletion("mock", {
63
+ model: "mock-model",
64
+ messages: [{ role: "user", content: "hi" }],
65
+ });
66
+ expect(result.choices[0].message.content).toBe("hello");
67
+ });
68
+ it("forwards the AbortSignal to createChatCompletion", async () => {
69
+ const { aiClient, mockGenericClient } = setupClient();
70
+ const controller = new AbortController();
71
+ await aiClient.createCompletion("mock", {
72
+ model: "mock-model",
73
+ messages: [],
74
+ signal: controller.signal,
75
+ });
76
+ const callArgs = mockGenericClient.createChatCompletion
77
+ .mock.calls[0][0];
78
+ expect(callArgs.signal).toBeInstanceOf(AbortSignal);
79
+ });
80
+ it("retries on 429 and succeeds", async () => {
81
+ jest.useFakeTimers();
82
+ const { aiClient, mockGenericClient } = setupClient({
83
+ createChatCompletion: jest
84
+ .fn()
85
+ .mockRejectedValueOnce(new Error("429 rate limited"))
86
+ .mockResolvedValueOnce(mockCompletion()),
87
+ });
88
+ const promise = aiClient.createCompletion("mock", {
89
+ model: "mock-model",
90
+ messages: [],
91
+ maxRetries: 2,
92
+ backoffMs: 50,
93
+ });
94
+ await jest.runAllTimersAsync();
95
+ const result = await promise;
96
+ expect(result.choices[0].message.content).toBe("hello");
97
+ expect(mockGenericClient.createChatCompletion).toHaveBeenCalledTimes(2);
98
+ });
99
+ it("aborts immediately when external signal is pre-aborted", async () => {
100
+ const controller = new AbortController();
101
+ controller.abort();
102
+ const { aiClient, mockGenericClient } = setupClient();
103
+ await expect(aiClient.createCompletion("mock", {
104
+ model: "mock-model",
105
+ messages: [],
106
+ signal: controller.signal,
107
+ })).rejects.toMatchObject({ name: "AbortError" });
108
+ expect(mockGenericClient.createChatCompletion).not.toHaveBeenCalled();
109
+ });
110
+ it("cancels in-flight request when external signal is aborted", async () => {
111
+ const controller = new AbortController();
112
+ const { aiClient, mockGenericClient } = setupClient({
113
+ createChatCompletion: jest.fn().mockImplementation((opts) => {
114
+ return new Promise((_, reject) => {
115
+ opts.signal?.addEventListener("abort", () => reject(opts.signal.reason));
116
+ });
117
+ }),
118
+ });
119
+ const promise = aiClient.createCompletion("mock", {
120
+ model: "mock-model",
121
+ messages: [],
122
+ signal: controller.signal,
123
+ });
124
+ setImmediate(() => controller.abort(new DOMException("User cancelled", "AbortError")));
125
+ await expect(promise).rejects.toMatchObject({ name: "AbortError" });
126
+ expect(mockGenericClient.createChatCompletion).toHaveBeenCalledTimes(1);
127
+ });
128
+ it("times out per-attempt and retries", async () => {
129
+ jest.useFakeTimers();
130
+ const { aiClient, mockGenericClient } = setupClient({
131
+ createChatCompletion: jest
132
+ .fn()
133
+ .mockImplementationOnce((opts) => {
134
+ return new Promise((_, reject) => {
135
+ opts.signal?.addEventListener("abort", () => reject(opts.signal.reason));
136
+ });
137
+ })
138
+ .mockResolvedValueOnce(mockCompletion()),
139
+ });
140
+ const promise = aiClient.createCompletion("mock", {
141
+ model: "mock-model",
142
+ messages: [],
143
+ timeout: 1000,
144
+ maxRetries: 2,
145
+ backoffMs: 10,
146
+ });
147
+ await jest.runAllTimersAsync();
148
+ const result = await promise;
149
+ expect(result.choices[0].message.content).toBe("hello");
150
+ expect(mockGenericClient.createChatCompletion).toHaveBeenCalledTimes(2);
151
+ });
152
+ });
153
+ describe("createEmbedding", () => {
154
+ it("forwards the AbortSignal to createEmbedding on the client", async () => {
155
+ const { aiClient, mockGenericClient } = setupClient();
156
+ const controller = new AbortController();
157
+ await aiClient.createEmbedding("mock", {
158
+ input: "test text",
159
+ model: "mock-embed",
160
+ signal: controller.signal,
161
+ });
162
+ const callArgs = mockGenericClient.createEmbedding.mock
163
+ .calls[0][0];
164
+ expect(callArgs.signal).toBeInstanceOf(AbortSignal);
165
+ });
166
+ it("retries on 500 and succeeds", async () => {
167
+ jest.useFakeTimers();
168
+ const { aiClient, mockGenericClient } = setupClient({
169
+ createEmbedding: jest
170
+ .fn()
171
+ .mockRejectedValueOnce(new Error("500 Internal Server Error"))
172
+ .mockResolvedValueOnce(mockEmbedding()),
173
+ });
174
+ const promise = aiClient.createEmbedding("mock", {
175
+ input: "test",
176
+ model: "mock-embed",
177
+ maxRetries: 2,
178
+ backoffMs: 50,
179
+ });
180
+ await jest.runAllTimersAsync();
181
+ const result = await promise;
182
+ expect(result.data[0].embedding).toEqual([0.1, 0.2]);
183
+ expect(mockGenericClient.createEmbedding).toHaveBeenCalledTimes(2);
184
+ });
185
+ });
186
+ describe("createImageGeneration", () => {
187
+ it("forwards the AbortSignal to createImageGeneration on the client", async () => {
188
+ const { aiClient, mockGenericClient } = setupClient();
189
+ const controller = new AbortController();
190
+ await aiClient.createImageGeneration("mock", {
191
+ model: "mock-model",
192
+ prompt: "a cat",
193
+ signal: controller.signal,
194
+ });
195
+ const callArgs = mockGenericClient.createImageGeneration
196
+ .mock.calls[0][0];
197
+ expect(callArgs.signal).toBeInstanceOf(AbortSignal);
198
+ });
199
+ it("retries on 429 and succeeds", async () => {
200
+ jest.useFakeTimers();
201
+ const { aiClient, mockGenericClient } = setupClient({
202
+ createImageGeneration: jest
203
+ .fn()
204
+ .mockRejectedValueOnce(new Error("429 Too Many Requests"))
205
+ .mockResolvedValueOnce(mockImage()),
206
+ });
207
+ const promise = aiClient.createImageGeneration("mock", {
208
+ model: "mock-model",
209
+ prompt: "a cat",
210
+ maxRetries: 2,
211
+ backoffMs: 50,
212
+ });
213
+ await jest.runAllTimersAsync();
214
+ const result = await promise;
215
+ expect(result.data[0].url).toBe("https://mock.local/image.png");
216
+ expect(mockGenericClient.createImageGeneration).toHaveBeenCalledTimes(2);
217
+ });
218
+ it("aborts when external signal fires mid-request", async () => {
219
+ const controller = new AbortController();
220
+ const { aiClient, mockGenericClient } = setupClient({
221
+ createImageGeneration: jest.fn().mockImplementation((opts) => {
222
+ return new Promise((_, reject) => {
223
+ opts.signal?.addEventListener("abort", () => reject(opts.signal.reason));
224
+ });
225
+ }),
226
+ });
227
+ const promise = aiClient.createImageGeneration("mock", {
228
+ model: "mock-model",
229
+ prompt: "a cat",
230
+ signal: controller.signal,
231
+ });
232
+ setImmediate(() => controller.abort(new DOMException("User cancelled", "AbortError")));
233
+ await expect(promise).rejects.toMatchObject({ name: "AbortError" });
234
+ expect(mockGenericClient.createImageGeneration).toHaveBeenCalledTimes(1);
235
+ });
236
+ });
237
+ describe("createAudioGeneration", () => {
238
+ it("forwards the AbortSignal to createAudioGeneration on the client", async () => {
239
+ const { aiClient, mockGenericClient } = setupClient();
240
+ const controller = new AbortController();
241
+ await aiClient.createAudioGeneration("mock", {
242
+ model: "mock-model",
243
+ input: "Hello world",
244
+ voice: "alloy",
245
+ signal: controller.signal,
246
+ });
247
+ const callArgs = mockGenericClient.createAudioGeneration
248
+ .mock.calls[0][0];
249
+ expect(callArgs.signal).toBeInstanceOf(AbortSignal);
250
+ });
251
+ it("retries on ECONNRESET and succeeds", async () => {
252
+ jest.useFakeTimers();
253
+ const { aiClient, mockGenericClient } = setupClient({
254
+ createAudioGeneration: jest
255
+ .fn()
256
+ .mockRejectedValueOnce(new Error("ECONNRESET"))
257
+ .mockResolvedValueOnce(mockAudio()),
258
+ });
259
+ const promise = aiClient.createAudioGeneration("mock", {
260
+ model: "mock-model",
261
+ input: "Hello",
262
+ voice: "alloy",
263
+ maxRetries: 2,
264
+ backoffMs: 50,
265
+ });
266
+ await jest.runAllTimersAsync();
267
+ const result = await promise;
268
+ expect(result.format).toBe("mp3");
269
+ expect(mockGenericClient.createAudioGeneration).toHaveBeenCalledTimes(2);
270
+ });
271
+ });
272
+ describe("createVideoGeneration", () => {
273
+ it("forwards the AbortSignal to createVideoGeneration on the client", async () => {
274
+ const { aiClient, mockGenericClient } = setupClient();
275
+ const controller = new AbortController();
276
+ await aiClient.createVideoGeneration("mock", {
277
+ model: "mock-model",
278
+ prompt: "a sunset",
279
+ signal: controller.signal,
280
+ });
281
+ const callArgs = mockGenericClient.createVideoGeneration
282
+ .mock.calls[0][0];
283
+ expect(callArgs.signal).toBeInstanceOf(AbortSignal);
284
+ });
285
+ it("retries on 503 and succeeds", async () => {
286
+ jest.useFakeTimers();
287
+ const { aiClient, mockGenericClient } = setupClient({
288
+ createVideoGeneration: jest
289
+ .fn()
290
+ .mockRejectedValueOnce(new Error("503 Service Unavailable"))
291
+ .mockResolvedValueOnce({
292
+ created: Date.now(),
293
+ data: [{ url: "https://mock.local/video.mp4" }],
294
+ }),
295
+ });
296
+ const promise = aiClient.createVideoGeneration("mock", {
297
+ model: "mock-model",
298
+ prompt: "a sunset",
299
+ maxRetries: 2,
300
+ backoffMs: 50,
301
+ });
302
+ await jest.runAllTimersAsync();
303
+ const result = await promise;
304
+ expect(result.data[0].url).toBe("https://mock.local/video.mp4");
305
+ expect(mockGenericClient.createVideoGeneration).toHaveBeenCalledTimes(2);
306
+ });
307
+ });
308
+ describe("createAudioTranscription", () => {
309
+ it("forwards the AbortSignal to createAudioTranscription on the client", async () => {
310
+ const { aiClient, mockGenericClient } = setupClient();
311
+ const controller = new AbortController();
312
+ await aiClient.createAudioTranscription("mock", {
313
+ file: Buffer.from("fake-audio"),
314
+ signal: controller.signal,
315
+ });
316
+ const callArgs = mockGenericClient.createAudioTranscription.mock.calls[0][0];
317
+ expect(callArgs.signal).toBeInstanceOf(AbortSignal);
318
+ });
319
+ it("retries on timeout error and succeeds", async () => {
320
+ jest.useFakeTimers();
321
+ const { aiClient, mockGenericClient } = setupClient({
322
+ createAudioTranscription: jest
323
+ .fn()
324
+ .mockRejectedValueOnce(new Error("timeout"))
325
+ .mockResolvedValueOnce({ text: "hello world" }),
326
+ });
327
+ const promise = aiClient.createAudioTranscription("mock", {
328
+ file: Buffer.from("fake-audio"),
329
+ maxRetries: 2,
330
+ backoffMs: 50,
331
+ });
332
+ await jest.runAllTimersAsync();
333
+ const result = await promise;
334
+ expect(result.text).toBe("hello world");
335
+ expect(mockGenericClient.createAudioTranscription).toHaveBeenCalledTimes(2);
336
+ });
337
+ });
338
+ });
339
+ //# sourceMappingURL=AIClient.test.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"AIClient.test.js","sourceRoot":"","sources":["../../../../tests/unit/clients/AIClient.test.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1 @@
1
+ export {};