lalph 0.3.102 → 0.3.104

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/cli.mjs CHANGED
@@ -178327,6 +178327,10 @@ var IssueSource = class IssueSource extends Service$1()("lalph/IssueSource") {
178327
178327
  ...impl,
178328
178328
  ref: (projectId) => get$6(refs, projectId),
178329
178329
  issues: updateIssues,
178330
+ findById: fnUntraced(function* (projectId, issueId) {
178331
+ const { issues } = yield* get$5(yield* get$6(refs, projectId));
178332
+ return issues.find((issue) => issue.id === issueId) ?? null;
178333
+ }),
178330
178334
  createIssue: (projectId, issue) => pipe$1(impl.createIssue(projectId, issue), tap$1(updateIssues(projectId))),
178331
178335
  updateIssue: (options) => pipe$1(impl.updateIssue(options), tap$1(updateIssues(options.projectId))),
178332
178336
  cancelIssue: (projectId, issueId) => pipe$1(impl.cancelIssue(projectId, issueId), tap$1(updateIssues(projectId)))
@@ -181663,7 +181667,7 @@ var ji = Bt, Ii = Object.assign(Qe, { sync: Bt }), zi = Ut, Bi = Object.assign(e
181663
181667
  });
181664
181668
  Ze.glob = Ze;
181665
181669
  //#endregion
181666
- //#region node_modules/.pnpm/clanka@0.2.31_@effect+ai-openai-compat@4.0.0-beta.37_effect@4.0.0-beta.37__@effect+ai-o_e6618f2236cf2d744a8a10cef6e9a9fd/node_modules/clanka/dist/ApplyPatch.js
181670
+ //#region node_modules/.pnpm/clanka@0.2.33_@effect+ai-openai-compat@4.0.0-beta.37_effect@4.0.0-beta.37__@effect+ai-o_00342e2bfaabab8f086f8b2fc53aa818/node_modules/clanka/dist/ApplyPatch.js
181667
181671
  /**
181668
181672
  * @since 1.0.0
181669
181673
  */
@@ -196536,7 +196540,7 @@ var StreamableHTTPClientTransport = class {
196536
196540
  }
196537
196541
  };
196538
196542
  //#endregion
196539
- //#region node_modules/.pnpm/clanka@0.2.31_@effect+ai-openai-compat@4.0.0-beta.37_effect@4.0.0-beta.37__@effect+ai-o_e6618f2236cf2d744a8a10cef6e9a9fd/node_modules/clanka/dist/McpClient.js
196543
+ //#region node_modules/.pnpm/clanka@0.2.33_@effect+ai-openai-compat@4.0.0-beta.37_effect@4.0.0-beta.37__@effect+ai-o_00342e2bfaabab8f086f8b2fc53aa818/node_modules/clanka/dist/McpClient.js
196540
196544
  /**
196541
196545
  * @since 1.0.0
196542
196546
  */
@@ -196581,7 +196585,7 @@ const layer$13 = effect$1(McpClient, gen(function* () {
196581
196585
  });
196582
196586
  }));
196583
196587
  //#endregion
196584
- //#region node_modules/.pnpm/clanka@0.2.31_@effect+ai-openai-compat@4.0.0-beta.37_effect@4.0.0-beta.37__@effect+ai-o_e6618f2236cf2d744a8a10cef6e9a9fd/node_modules/clanka/dist/ExaSearch.js
196588
+ //#region node_modules/.pnpm/clanka@0.2.33_@effect+ai-openai-compat@4.0.0-beta.37_effect@4.0.0-beta.37__@effect+ai-o_00342e2bfaabab8f086f8b2fc53aa818/node_modules/clanka/dist/ExaSearch.js
196585
196589
  /**
196586
196590
  * @since 1.0.0
196587
196591
  */
@@ -211531,7 +211535,7 @@ var require_lib = /* @__PURE__ */ __commonJSMin$1(((exports) => {
211531
211535
  exports.impl = impl;
211532
211536
  }));
211533
211537
  //#endregion
211534
- //#region node_modules/.pnpm/clanka@0.2.31_@effect+ai-openai-compat@4.0.0-beta.37_effect@4.0.0-beta.37__@effect+ai-o_e6618f2236cf2d744a8a10cef6e9a9fd/node_modules/clanka/dist/WebToMarkdown.js
211538
+ //#region node_modules/.pnpm/clanka@0.2.33_@effect+ai-openai-compat@4.0.0-beta.37_effect@4.0.0-beta.37__@effect+ai-o_00342e2bfaabab8f086f8b2fc53aa818/node_modules/clanka/dist/WebToMarkdown.js
211535
211539
  /**
211536
211540
  * @since 1.0.0
211537
211541
  */
@@ -214670,7 +214674,7 @@ function isEmptyParamsRecord(indexSignature) {
214670
214674
  return indexSignature.parameter === string$3 && isNever(indexSignature.type);
214671
214675
  }
214672
214676
  //#endregion
214673
- //#region node_modules/.pnpm/clanka@0.2.31_@effect+ai-openai-compat@4.0.0-beta.37_effect@4.0.0-beta.37__@effect+ai-o_e6618f2236cf2d744a8a10cef6e9a9fd/node_modules/clanka/dist/SemanticSearch/Service.js
214677
+ //#region node_modules/.pnpm/clanka@0.2.33_@effect+ai-openai-compat@4.0.0-beta.37_effect@4.0.0-beta.37__@effect+ai-o_00342e2bfaabab8f086f8b2fc53aa818/node_modules/clanka/dist/SemanticSearch/Service.js
214674
214678
  /**
214675
214679
  * @since 1.0.0
214676
214680
  */
@@ -214696,7 +214700,7 @@ const maybeRemoveFile = (path) => serviceOption(SemanticSearch).pipe(flatMap$4(m
214696
214700
  onSome: (service) => service.removeFile(path)
214697
214701
  })));
214698
214702
  //#endregion
214699
- //#region node_modules/.pnpm/clanka@0.2.31_@effect+ai-openai-compat@4.0.0-beta.37_effect@4.0.0-beta.37__@effect+ai-o_e6618f2236cf2d744a8a10cef6e9a9fd/node_modules/clanka/dist/AgentTools.js
214703
+ //#region node_modules/.pnpm/clanka@0.2.33_@effect+ai-openai-compat@4.0.0-beta.37_effect@4.0.0-beta.37__@effect+ai-o_00342e2bfaabab8f086f8b2fc53aa818/node_modules/clanka/dist/AgentTools.js
214700
214704
  /**
214701
214705
  * @since 1.0.0
214702
214706
  */
@@ -215099,7 +215103,7 @@ const AgentToolHandlers = AgentToolHandlersNoDeps.pipe(provide$3([layer$12, laye
215099
215103
  AgentToolHandlersNoDeps.pipe(provide$3([mock(ExaSearch)({}), mock(WebToMarkdown)({})]));
215100
215104
  var ApplyPatchError = class extends TaggedClass$2("ApplyPatchError") {};
215101
215105
  //#endregion
215102
- //#region node_modules/.pnpm/clanka@0.2.31_@effect+ai-openai-compat@4.0.0-beta.37_effect@4.0.0-beta.37__@effect+ai-o_e6618f2236cf2d744a8a10cef6e9a9fd/node_modules/clanka/dist/TypeBuilder.js
215106
+ //#region node_modules/.pnpm/clanka@0.2.33_@effect+ai-openai-compat@4.0.0-beta.37_effect@4.0.0-beta.37__@effect+ai-o_00342e2bfaabab8f086f8b2fc53aa818/node_modules/clanka/dist/TypeBuilder.js
215103
215107
  const resolveDocumentation = resolveAt("documentation");
215104
215108
  const identifierPattern = /^[$A-Z_a-z][$0-9A-Z_a-z]*$/u;
215105
215109
  const Precedence = {
@@ -215372,7 +215376,7 @@ const render = (schema, options) => {
215372
215376
  return printNode({ text: documentation === void 0 ? rendered.text : `${renderJsDoc(documentation, 0, printerOptions)}${printerOptions.newLine}${rendered.text}` }, printerOptions);
215373
215377
  };
215374
215378
  //#endregion
215375
- //#region node_modules/.pnpm/clanka@0.2.31_@effect+ai-openai-compat@4.0.0-beta.37_effect@4.0.0-beta.37__@effect+ai-o_e6618f2236cf2d744a8a10cef6e9a9fd/node_modules/clanka/dist/ToolkitRenderer.js
215379
+ //#region node_modules/.pnpm/clanka@0.2.33_@effect+ai-openai-compat@4.0.0-beta.37_effect@4.0.0-beta.37__@effect+ai-o_00342e2bfaabab8f086f8b2fc53aa818/node_modules/clanka/dist/ToolkitRenderer.js
215376
215380
  /**
215377
215381
  * @since 1.0.0
215378
215382
  */
@@ -215394,7 +215398,7 @@ declare function ${name}(${params}): Promise<${render(tool.successSchema)}>`);
215394
215398
  }) });
215395
215399
  };
215396
215400
  //#endregion
215397
- //#region node_modules/.pnpm/clanka@0.2.31_@effect+ai-openai-compat@4.0.0-beta.37_effect@4.0.0-beta.37__@effect+ai-o_e6618f2236cf2d744a8a10cef6e9a9fd/node_modules/clanka/dist/ScriptPreprocessing.js
215401
+ //#region node_modules/.pnpm/clanka@0.2.33_@effect+ai-openai-compat@4.0.0-beta.37_effect@4.0.0-beta.37__@effect+ai-o_00342e2bfaabab8f086f8b2fc53aa818/node_modules/clanka/dist/ScriptPreprocessing.js
215398
215402
  const callTemplateTargets = ["applyPatch", "taskComplete"];
215399
215403
  const objectPropertyTargets = [{
215400
215404
  functionName: "writeFile",
@@ -215583,6 +215587,66 @@ const normalizePatchEscapedQuotes = (text) => text.includes("*** Begin Patch") ?
215583
215587
  return `"${content}"`;
215584
215588
  }) : text;
215585
215589
  const normalizeNonPatchEscapedTemplateMarkers = (text) => text.replace(/\\{2,}(?=`|\$\{)/g, "\\").replace(/(^|\s)\\+(?=\.[A-Za-z0-9_-]+\/)/g, "$1");
215590
+ const findStringLiteralEnd = (text, start, delimiter) => {
215591
+ for (let index = start + 1; index < text.length; index++) if (text[index] === delimiter && !isEscaped(text, index)) return index;
215592
+ return -1;
215593
+ };
215594
+ const findInterpolationExpressionEnd = (text, openBrace) => {
215595
+ let depth = 1;
215596
+ let cursor = openBrace + 1;
215597
+ while (cursor < text.length) {
215598
+ const char = text[cursor];
215599
+ if (char === "\"" || char === "'") {
215600
+ const stringEnd = findStringLiteralEnd(text, cursor, char);
215601
+ if (stringEnd === -1) return -1;
215602
+ cursor = stringEnd + 1;
215603
+ continue;
215604
+ }
215605
+ if (char === "`") {
215606
+ const templateEnd = findTemplateLiteralEnd(text, cursor);
215607
+ if (templateEnd === -1) return -1;
215608
+ cursor = templateEnd + 1;
215609
+ continue;
215610
+ }
215611
+ if (char === "{") {
215612
+ depth++;
215613
+ cursor++;
215614
+ continue;
215615
+ }
215616
+ if (char === "}") {
215617
+ depth--;
215618
+ if (depth === 0) return cursor;
215619
+ cursor++;
215620
+ continue;
215621
+ }
215622
+ cursor++;
215623
+ }
215624
+ return -1;
215625
+ };
215626
+ const findTemplateLiteralEnd = (text, start) => {
215627
+ let cursor = start + 1;
215628
+ while (cursor < text.length) {
215629
+ const char = text[cursor];
215630
+ if (char === "`" && !isEscaped(text, cursor)) return cursor;
215631
+ if (char === "$" && text[cursor + 1] === "{" && !isEscaped(text, cursor)) {
215632
+ const interpolationEnd = findInterpolationExpressionEnd(text, cursor + 1);
215633
+ if (interpolationEnd === -1) return -1;
215634
+ cursor = interpolationEnd + 1;
215635
+ continue;
215636
+ }
215637
+ cursor++;
215638
+ }
215639
+ return -1;
215640
+ };
215641
+ const findLiteralInterpolationEnd = (text, start) => {
215642
+ const expressionStart = skipWhitespace(text, start + 2);
215643
+ const delimiter = text[expressionStart];
215644
+ if (delimiter !== "\"" && delimiter !== "'" && delimiter !== "`") return -1;
215645
+ const literalEnd = delimiter === "`" ? findTemplateLiteralEnd(text, expressionStart) : findStringLiteralEnd(text, expressionStart, delimiter);
215646
+ if (literalEnd === -1) return -1;
215647
+ const expressionEnd = skipWhitespace(text, literalEnd + 1);
215648
+ return text[expressionEnd] === "}" ? expressionEnd : -1;
215649
+ };
215586
215650
  const escapeTemplateLiteralContent = (text) => {
215587
215651
  const patchNormalized = normalizePatchEscapedQuotes(text);
215588
215652
  const isPatchContent = patchNormalized.includes("*** Begin Patch");
@@ -215604,6 +215668,12 @@ const escapeTemplateLiteralContent = (text) => {
215604
215668
  continue;
215605
215669
  }
215606
215670
  if (char === "$" && normalized[index + 1] === "{" && !isEscaped(normalized, index)) {
215671
+ const literalInterpolationEnd = findLiteralInterpolationEnd(normalized, index);
215672
+ if (literalInterpolationEnd !== -1) {
215673
+ out += normalized.slice(index, literalInterpolationEnd + 1);
215674
+ index = literalInterpolationEnd;
215675
+ continue;
215676
+ }
215607
215677
  out += "\\$";
215608
215678
  continue;
215609
215679
  }
@@ -215873,7 +215943,7 @@ const rewriteAssignedTargets = (script) => {
215873
215943
  };
215874
215944
  const preprocessScript = (script) => rewriteAssignedTargets(rewriteDirectTemplates(script));
215875
215945
  //#endregion
215876
- //#region node_modules/.pnpm/clanka@0.2.31_@effect+ai-openai-compat@4.0.0-beta.37_effect@4.0.0-beta.37__@effect+ai-o_e6618f2236cf2d744a8a10cef6e9a9fd/node_modules/clanka/dist/AgentExecutor.js
215946
+ //#region node_modules/.pnpm/clanka@0.2.33_@effect+ai-openai-compat@4.0.0-beta.37_effect@4.0.0-beta.37__@effect+ai-o_00342e2bfaabab8f086f8b2fc53aa818/node_modules/clanka/dist/AgentExecutor.js
215877
215947
  /**
215878
215948
  * @since 1.0.0
215879
215949
  */
@@ -216058,7 +216128,7 @@ var QueueWriteStream = class extends Writable {
216058
216128
  }
216059
216129
  };
216060
216130
  //#endregion
216061
- //#region node_modules/.pnpm/clanka@0.2.31_@effect+ai-openai-compat@4.0.0-beta.37_effect@4.0.0-beta.37__@effect+ai-o_e6618f2236cf2d744a8a10cef6e9a9fd/node_modules/clanka/dist/ScriptExtraction.js
216131
+ //#region node_modules/.pnpm/clanka@0.2.33_@effect+ai-openai-compat@4.0.0-beta.37_effect@4.0.0-beta.37__@effect+ai-o_00342e2bfaabab8f086f8b2fc53aa818/node_modules/clanka/dist/ScriptExtraction.js
216062
216132
  const stripWrappingCodeFence = (script) => {
216063
216133
  const lines = script.split(/\r?\n/);
216064
216134
  if (lines.length < 2) return script;
@@ -217607,7 +217677,7 @@ const applySpanTransformer = (transformer, response, options) => {
217607
217677
  });
217608
217678
  };
217609
217679
  //#endregion
217610
- //#region node_modules/.pnpm/clanka@0.2.31_@effect+ai-openai-compat@4.0.0-beta.37_effect@4.0.0-beta.37__@effect+ai-o_e6618f2236cf2d744a8a10cef6e9a9fd/node_modules/clanka/dist/Agent.js
217680
+ //#region node_modules/.pnpm/clanka@0.2.33_@effect+ai-openai-compat@4.0.0-beta.37_effect@4.0.0-beta.37__@effect+ai-o_00342e2bfaabab8f086f8b2fc53aa818/node_modules/clanka/dist/Agent.js
217611
217681
  /**
217612
217682
  * @since 1.0.0
217613
217683
  */
@@ -217888,9 +217958,9 @@ ${content}
217888
217958
  });
217889
217959
  });
217890
217960
  const retryPolicy = exponential(100, 1.5).pipe(either(spaced(5e3)), jittered);
217891
- const defaultSystem = (options) => `You are a world-class software engineer: precise, rigorous, thoughtful, and relentlessly careful. You fully understand the task, verify assumptions, and produce minimal, correct, maintainable solutions. You make no mistakes.
217961
+ const defaultSystem = (options) => `You are a world-class software engineer: precise, rigorous, thoughtful, and efficient. You fully understand the task, verify assumptions, and produce minimal, correct, maintainable solutions. You make no mistakes.
217892
217962
 
217893
- - **Fully read and understand your task** before proceeding.
217963
+ - Fully read and understand your task before proceeding.
217894
217964
  - Only add comments when necessary.
217895
217965
 
217896
217966
  ${options.toolInstructions}
@@ -217900,6 +217970,7 @@ ${options.agentsMd}
217900
217970
  const generateSystemTools = (capabilities, conversationMode) => `**YOU ONLY HAVE ACCESS TO ONE TOOL** "execute", to run javascript code to do your work.
217901
217971
 
217902
217972
  - Use \`console.log\` to print any output you need.
217973
+ - Errors are automatically logged to the console, so if you don't need the success output avoid using console.log.
217903
217974
  - Top level await is supported - no need to wrap with async functions.${capabilities.supportsSearch ? `
217904
217975
  - PREFER USING the "search" function over "rg", unless you are targeting specific files or patterns.` : ""}
217905
217976
  - Do as much work as possible in a single script, using \`Promise.all\` to run multiple functions in parallel.
@@ -229113,7 +229184,7 @@ const transformToolCallParams = /* @__PURE__ */ fnUntraced(function* (tools, too
229113
229184
  })));
229114
229185
  });
229115
229186
  //#endregion
229116
- //#region node_modules/.pnpm/clanka@0.2.31_@effect+ai-openai-compat@4.0.0-beta.37_effect@4.0.0-beta.37__@effect+ai-o_e6618f2236cf2d744a8a10cef6e9a9fd/node_modules/clanka/dist/CodexAuth.js
229187
+ //#region node_modules/.pnpm/clanka@0.2.33_@effect+ai-openai-compat@4.0.0-beta.37_effect@4.0.0-beta.37__@effect+ai-o_00342e2bfaabab8f086f8b2fc53aa818/node_modules/clanka/dist/CodexAuth.js
229117
229188
  /**
229118
229189
  * @since 1.0.0
229119
229190
  */
@@ -229333,7 +229404,7 @@ var CodexAuth = class CodexAuth extends Service$1()("clanka/CodexAuth") {
229333
229404
  static layerClient = this.layerClientNoDeps.pipe(provide$3(CodexAuth.layer));
229334
229405
  };
229335
229406
  //#endregion
229336
- //#region node_modules/.pnpm/clanka@0.2.31_@effect+ai-openai-compat@4.0.0-beta.37_effect@4.0.0-beta.37__@effect+ai-o_e6618f2236cf2d744a8a10cef6e9a9fd/node_modules/clanka/dist/Codex.js
229407
+ //#region node_modules/.pnpm/clanka@0.2.33_@effect+ai-openai-compat@4.0.0-beta.37_effect@4.0.0-beta.37__@effect+ai-o_00342e2bfaabab8f086f8b2fc53aa818/node_modules/clanka/dist/Codex.js
229337
229408
  /**
229338
229409
  * @since 1.0.0
229339
229410
  */
@@ -229359,7 +229430,7 @@ const layerModel = (model, options) => layer$7({
229359
229430
  }
229360
229431
  }).pipe(merge$6(AgentModelConfig.layer({ systemPromptTransform: (system, effect) => withConfigOverride(effect, { instructions: system }) })));
229361
229432
  //#endregion
229362
- //#region node_modules/.pnpm/clanka@0.2.31_@effect+ai-openai-compat@4.0.0-beta.37_effect@4.0.0-beta.37__@effect+ai-o_e6618f2236cf2d744a8a10cef6e9a9fd/node_modules/clanka/dist/CodeChunker.js
229433
+ //#region node_modules/.pnpm/clanka@0.2.33_@effect+ai-openai-compat@4.0.0-beta.37_effect@4.0.0-beta.37__@effect+ai-o_00342e2bfaabab8f086f8b2fc53aa818/node_modules/clanka/dist/CodeChunker.js
229363
229434
  /**
229364
229435
  * @since 1.0.0
229365
229436
  */
@@ -231119,7 +231190,7 @@ const getUsageDetailNumber = (details, field) => {
231119
231190
  return typeof value === "number" ? value : void 0;
231120
231191
  };
231121
231192
  //#endregion
231122
- //#region node_modules/.pnpm/clanka@0.2.31_@effect+ai-openai-compat@4.0.0-beta.37_effect@4.0.0-beta.37__@effect+ai-o_e6618f2236cf2d744a8a10cef6e9a9fd/node_modules/clanka/dist/CopilotAuth.js
231193
+ //#region node_modules/.pnpm/clanka@0.2.33_@effect+ai-openai-compat@4.0.0-beta.37_effect@4.0.0-beta.37__@effect+ai-o_00342e2bfaabab8f086f8b2fc53aa818/node_modules/clanka/dist/CopilotAuth.js
231123
231194
  /**
231124
231195
  * @since 1.0.0
231125
231196
  */
@@ -231310,7 +231381,7 @@ var GithubCopilotAuth = class GithubCopilotAuth extends Service$1()("clanka/Gith
231310
231381
  static layerClient = this.layerClientNoDeps.pipe(provide$3(GithubCopilotAuth.layer));
231311
231382
  };
231312
231383
  //#endregion
231313
- //#region node_modules/.pnpm/clanka@0.2.31_@effect+ai-openai-compat@4.0.0-beta.37_effect@4.0.0-beta.37__@effect+ai-o_e6618f2236cf2d744a8a10cef6e9a9fd/node_modules/clanka/dist/Copilot.js
231384
+ //#region node_modules/.pnpm/clanka@0.2.33_@effect+ai-openai-compat@4.0.0-beta.37_effect@4.0.0-beta.37__@effect+ai-o_00342e2bfaabab8f086f8b2fc53aa818/node_modules/clanka/dist/Copilot.js
231314
231385
  /**
231315
231386
  * @since 1.0.0
231316
231387
  */
@@ -231730,7 +231801,7 @@ Object.defineProperties(createChalk.prototype, styles);
231730
231801
  const chalk = createChalk();
231731
231802
  createChalk({ level: stderrColor ? stderrColor.level : 0 });
231732
231803
  //#endregion
231733
- //#region node_modules/.pnpm/clanka@0.2.31_@effect+ai-openai-compat@4.0.0-beta.37_effect@4.0.0-beta.37__@effect+ai-o_e6618f2236cf2d744a8a10cef6e9a9fd/node_modules/clanka/dist/OutputFormatter.js
231804
+ //#region node_modules/.pnpm/clanka@0.2.33_@effect+ai-openai-compat@4.0.0-beta.37_effect@4.0.0-beta.37__@effect+ai-o_00342e2bfaabab8f086f8b2fc53aa818/node_modules/clanka/dist/OutputFormatter.js
231734
231805
  /**
231735
231806
  * @since 1.0.0
231736
231807
  */
@@ -232438,7 +232509,7 @@ select * from ${sql(options.tableName)} where ${sql(idColumn)} = LAST_INSERT_ID(
232438
232509
  };
232439
232510
  });
232440
232511
  //#endregion
232441
- //#region node_modules/.pnpm/clanka@0.2.31_@effect+ai-openai-compat@4.0.0-beta.37_effect@4.0.0-beta.37__@effect+ai-o_e6618f2236cf2d744a8a10cef6e9a9fd/node_modules/clanka/dist/ChunkRepo.js
232512
+ //#region node_modules/.pnpm/clanka@0.2.33_@effect+ai-openai-compat@4.0.0-beta.37_effect@4.0.0-beta.37__@effect+ai-o_00342e2bfaabab8f086f8b2fc53aa818/node_modules/clanka/dist/ChunkRepo.js
232442
232513
  /**
232443
232514
  * @since 1.0.0
232444
232515
  * @category Models
@@ -232704,7 +232775,7 @@ const run$1 = /* @__PURE__ */ make$25({});
232704
232775
  */
232705
232776
  const layer$1 = (options) => effectDiscard(run$1(options));
232706
232777
  //#endregion
232707
- //#region node_modules/.pnpm/clanka@0.2.31_@effect+ai-openai-compat@4.0.0-beta.37_effect@4.0.0-beta.37__@effect+ai-o_e6618f2236cf2d744a8a10cef6e9a9fd/node_modules/clanka/dist/internal/sqlite-vector.js
232778
+ //#region node_modules/.pnpm/clanka@0.2.33_@effect+ai-openai-compat@4.0.0-beta.37_effect@4.0.0-beta.37__@effect+ai-o_00342e2bfaabab8f086f8b2fc53aa818/node_modules/clanka/dist/internal/sqlite-vector.js
232708
232779
  /**
232709
232780
  * Binary extension for each platform
232710
232781
  */
@@ -232821,7 +232892,7 @@ function getExtensionPath() {
232821
232892
  throw new ExtensionNotFoundError(`SQLite Vector extension not found for platform: ${getCurrentPlatform()}\n\nThe platform-specific package "${getPlatformPackageName()}" is not installed.\nThis usually happens when:\n 1. Your platform is not supported\n 2. npm failed to install optional dependencies\n 3. You're installing with --no-optional flag\n\nTry running: npm install --force`);
232822
232893
  }
232823
232894
  //#endregion
232824
- //#region node_modules/.pnpm/clanka@0.2.31_@effect+ai-openai-compat@4.0.0-beta.37_effect@4.0.0-beta.37__@effect+ai-o_e6618f2236cf2d744a8a10cef6e9a9fd/node_modules/clanka/dist/Sqlite.js
232895
+ //#region node_modules/.pnpm/clanka@0.2.33_@effect+ai-openai-compat@4.0.0-beta.37_effect@4.0.0-beta.37__@effect+ai-o_00342e2bfaabab8f086f8b2fc53aa818/node_modules/clanka/dist/Sqlite.js
232825
232896
  /**
232826
232897
  * @since 1.0.0
232827
232898
  */
@@ -232849,7 +232920,7 @@ const SqliteLayer = (database) => layer$1({ loader: fromRecord({ "0001_create_ch
232849
232920
  yield* fs.makeDirectory(directory, { recursive: true });
232850
232921
  }))));
232851
232922
  //#endregion
232852
- //#region node_modules/.pnpm/clanka@0.2.31_@effect+ai-openai-compat@4.0.0-beta.37_effect@4.0.0-beta.37__@effect+ai-o_e6618f2236cf2d744a8a10cef6e9a9fd/node_modules/clanka/dist/SemanticSearch.js
232923
+ //#region node_modules/.pnpm/clanka@0.2.33_@effect+ai-openai-compat@4.0.0-beta.37_effect@4.0.0-beta.37__@effect+ai-o_00342e2bfaabab8f086f8b2fc53aa818/node_modules/clanka/dist/SemanticSearch.js
232853
232924
  /**
232854
232925
  * @since 1.0.0
232855
232926
  */
@@ -233278,15 +233349,6 @@ const LinearIssueSource = effect$1(IssueSource, gen(function* () {
233278
233349
  autoMergeLabelId: settings.autoMergeLabelId
233279
233350
  });
233280
233351
  }),
233281
- findById: fnUntraced(function* (projectId, issueId) {
233282
- const settings = yield* get$8(projectSettings, projectId);
233283
- return (yield* issues({
233284
- projectId: settings.project.id,
233285
- labelId: settings.labelId,
233286
- teamId: settings.teamId,
233287
- autoMergeLabelId: settings.autoMergeLabelId
233288
- })).find((issue) => issue.id === issueId) ?? null;
233289
- }),
233290
233352
  createIssue: fnUntraced(function* (projectId, issue) {
233291
233353
  const { teamId, labelId, autoMergeLabelId, project } = yield* get$8(projectSettings, projectId);
233292
233354
  const created = yield* linear.use((c) => c.createIssue({
@@ -240115,9 +240177,6 @@ const GithubIssueSource = effect$1(IssueSource, gen(function* () {
240115
240177
  issues: fnUntraced(function* (projectId) {
240116
240178
  return yield* issues(yield* get$8(projectSettings, projectId));
240117
240179
  }),
240118
- findById: fnUntraced(function* (projectId, issueId) {
240119
- return (yield* issues(yield* get$8(projectSettings, projectId))).find((issue) => issue.id === issueId) ?? null;
240120
- }),
240121
240180
  createIssue: fnUntraced(function* (projectId, issue) {
240122
240181
  const { labelFilter, autoMergeLabelName } = yield* get$8(projectSettings, projectId);
240123
240182
  const created = yield* createIssue({
@@ -242268,7 +242327,6 @@ const taskUpdateSteer = fnUntraced(function* (options) {
242268
242327
  }
242269
242328
  if (!issue.isChangedComparedTo(current)) return failVoid;
242270
242329
  current = issue;
242271
- console.log("issue change", issues._tag);
242272
242330
  if (issues._tag === "Internal") return failVoid;
242273
242331
  return succeed$8(`The task has been updated by the user. Here is the latest information:
242274
242332
 
@@ -242562,7 +242620,7 @@ const commandEdit = make$60("edit").pipe(withDescription("Open the selected proj
242562
242620
  const commandSource = make$60("source").pipe(withDescription("Select the issue source to use (e.g. GitHub Issues or Linear). This applies to all projects."), withHandler(() => selectIssueSource), provide(Settings.layer));
242563
242621
  //#endregion
242564
242622
  //#region package.json
242565
- var version = "0.3.102";
242623
+ var version = "0.3.104";
242566
242624
  //#endregion
242567
242625
  //#region src/Tracing.ts
242568
242626
  const TracingLayer = unwrap$3(gen(function* () {
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "lalph",
3
3
  "type": "module",
4
- "version": "0.3.102",
4
+ "version": "0.3.104",
5
5
  "publishConfig": {
6
6
  "access": "public"
7
7
  },
@@ -45,7 +45,7 @@
45
45
  "@octokit/plugin-rest-endpoint-methods": "^17.0.0",
46
46
  "@octokit/types": "^16.0.0",
47
47
  "@typescript/native-preview": "7.0.0-dev.20260322.1",
48
- "clanka": "^0.2.31",
48
+ "clanka": "^0.2.33",
49
49
  "concurrently": "^9.2.1",
50
50
  "effect": "4.0.0-beta.37",
51
51
  "husky": "^9.1.7",
package/src/Github.ts CHANGED
@@ -492,11 +492,6 @@ export const GithubIssueSource = Layer.effect(
492
492
  const settings = yield* Cache.get(projectSettings, projectId)
493
493
  return yield* issues(settings)
494
494
  }),
495
- findById: Effect.fnUntraced(function* (projectId, issueId) {
496
- const settings = yield* Cache.get(projectSettings, projectId)
497
- const projectIssues = yield* issues(settings)
498
- return projectIssues.find((issue) => issue.id === issueId) ?? null
499
- }),
500
495
  createIssue: Effect.fnUntraced(
501
496
  function* (projectId, issue) {
502
497
  const { labelFilter, autoMergeLabelName } = yield* Cache.get(
@@ -92,7 +92,7 @@ export class IssueSource extends ServiceMap.Service<
92
92
  ) => Effect.Effect<void, IssueSourceError>
93
93
  }
94
94
  >()("lalph/IssueSource") {
95
- static make(impl: Omit<IssueSource["Service"], "ref">) {
95
+ static make(impl: Omit<IssueSource["Service"], "ref" | "findById">) {
96
96
  return Effect.gen(function* () {
97
97
  const refs = yield* ScopedCache.make({
98
98
  lookup: Effect.fnUntraced(function* (projectId: ProjectId) {
@@ -143,6 +143,11 @@ export class IssueSource extends ServiceMap.Service<
143
143
  ...impl,
144
144
  ref: (projectId) => ScopedCache.get(refs, projectId),
145
145
  issues: updateIssues,
146
+ findById: Effect.fnUntraced(function* (projectId, issueId) {
147
+ const ref = yield* ScopedCache.get(refs, projectId)
148
+ const { issues } = yield* SubscriptionRef.get(ref)
149
+ return issues.find((issue) => issue.id === issueId) ?? null
150
+ }),
146
151
  createIssue: (projectId, issue) =>
147
152
  pipe(
148
153
  impl.createIssue(projectId, issue),
package/src/Linear.ts CHANGED
@@ -339,16 +339,6 @@ export const LinearIssueSource = Layer.effect(
339
339
  autoMergeLabelId: settings.autoMergeLabelId,
340
340
  })
341
341
  }),
342
- findById: Effect.fnUntraced(function* (projectId, issueId) {
343
- const settings = yield* Cache.get(projectSettings, projectId)
344
- const projectIssues = yield* issues({
345
- projectId: settings.project.id,
346
- labelId: settings.labelId,
347
- teamId: settings.teamId,
348
- autoMergeLabelId: settings.autoMergeLabelId,
349
- })
350
- return projectIssues.find((issue) => issue.id === issueId) ?? null
351
- }),
352
342
  createIssue: Effect.fnUntraced(
353
343
  function* (projectId, issue) {
354
344
  const { teamId, labelId, autoMergeLabelId, project } =
@@ -857,7 +857,6 @@ const taskUpdateSteer = Effect.fnUntraced(function* (options: {
857
857
  return Result.failVoid
858
858
  }
859
859
  current = issue
860
- console.log("issue change", issues._tag)
861
860
  if (issues._tag === "Internal") {
862
861
  return Result.failVoid
863
862
  }