dirac-lang 0.1.93 → 0.1.95

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.
@@ -2,8 +2,8 @@ import {
2
2
  SessionServer,
3
3
  getSocketPath,
4
4
  isSessionRunning
5
- } from "./chunk-NEANEMFG.js";
6
- import "./chunk-SYFYHKKI.js";
5
+ } from "./chunk-IFBJYN2F.js";
6
+ import "./chunk-NUNYBLVJ.js";
7
7
  import "./chunk-ECAW4X46.js";
8
8
  import "./chunk-SLGJRZ3P.js";
9
9
  import "./chunk-HRHAMPOB.js";
@@ -1,6 +1,6 @@
1
1
  import {
2
2
  integrate
3
- } from "./chunk-SYFYHKKI.js";
3
+ } from "./chunk-NUNYBLVJ.js";
4
4
  import {
5
5
  DiracParser
6
6
  } from "./chunk-HRHAMPOB.js";
@@ -1,6 +1,6 @@
1
1
  import {
2
2
  integrate
3
- } from "./chunk-SYFYHKKI.js";
3
+ } from "./chunk-NUNYBLVJ.js";
4
4
  import {
5
5
  DiracParser
6
6
  } from "./chunk-HRHAMPOB.js";
@@ -487,12 +487,12 @@ async function executeIf(session, element) {
487
487
  const condition = await evaluatePredicate(session, conditionElement);
488
488
  if (condition) {
489
489
  if (thenElement) {
490
- const { integrateChildren: integrateChildren2 } = await import("./interpreter-YOKUG27J.js");
490
+ const { integrateChildren: integrateChildren2 } = await import("./interpreter-WNHDVVDD.js");
491
491
  await integrateChildren2(session, thenElement);
492
492
  }
493
493
  } else {
494
494
  if (elseElement) {
495
- const { integrateChildren: integrateChildren2 } = await import("./interpreter-YOKUG27J.js");
495
+ const { integrateChildren: integrateChildren2 } = await import("./interpreter-WNHDVVDD.js");
496
496
  await integrateChildren2(session, elseElement);
497
497
  }
498
498
  }
@@ -505,7 +505,7 @@ async function evaluatePredicate(session, predicateElement) {
505
505
  return await evaluateCondition(session, predicateElement);
506
506
  }
507
507
  const outputLengthBefore = session.output.length;
508
- const { integrate: integrate2 } = await import("./interpreter-YOKUG27J.js");
508
+ const { integrate: integrate2 } = await import("./interpreter-WNHDVVDD.js");
509
509
  await integrate2(session, predicateElement);
510
510
  const newOutputChunks = session.output.slice(outputLengthBefore);
511
511
  const result = newOutputChunks.join("").trim();
@@ -528,11 +528,11 @@ async function evaluateCondition(session, condElement) {
528
528
  }
529
529
  const outputLengthBefore = session.output.length;
530
530
  const args = [];
531
- const { integrate: integrate2 } = await import("./interpreter-YOKUG27J.js");
531
+ const { integrate: integrate2 } = await import("./interpreter-WNHDVVDD.js");
532
532
  for (const child of condElement.children) {
533
533
  if (child.tag.toLowerCase() === "arg") {
534
534
  const argOutputStart = session.output.length;
535
- const { integrateChildren: integrateChildren2 } = await import("./interpreter-YOKUG27J.js");
535
+ const { integrateChildren: integrateChildren2 } = await import("./interpreter-WNHDVVDD.js");
536
536
  await integrateChildren2(session, child);
537
537
  const newChunks = session.output.slice(argOutputStart);
538
538
  const argValue = newChunks.join("");
@@ -722,6 +722,37 @@ function serializeElement(element, prompt) {
722
722
  serialize(element);
723
723
  return lines.join("\n");
724
724
  }
725
+ function serializeSimple(el, indent, lines) {
726
+ if (el.text && !el.tag) {
727
+ const trimmed = el.text.trim();
728
+ if (trimmed) {
729
+ lines.push(indent + trimmed);
730
+ }
731
+ return;
732
+ }
733
+ if (!el.tag) return;
734
+ let tag = `${indent}<${el.tag}`;
735
+ if (el.attributes) {
736
+ for (const [key, value] of Object.entries(el.attributes)) {
737
+ tag += ` ${key}="${value.replace(/"/g, "&quot;")}"`;
738
+ }
739
+ }
740
+ if (!el.children || el.children.length === 0) {
741
+ if (el.text) {
742
+ lines.push(tag + ">");
743
+ lines.push(indent + " " + el.text);
744
+ lines.push(`${indent}</${el.tag}>`);
745
+ } else {
746
+ lines.push(tag + " />");
747
+ }
748
+ } else {
749
+ lines.push(tag + ">");
750
+ for (const child of el.children) {
751
+ serializeSimple(child, indent + " ", lines);
752
+ }
753
+ lines.push(`${indent}</${el.tag}>`);
754
+ }
755
+ }
725
756
  async function executeLLM(session, element) {
726
757
  if (!session.llmClient) {
727
758
  throw new Error("<llm> tag requires LLM configuration. Set LLM_PROVIDER (ollama/anthropic/openai/custom) and appropriate API keys in environment or config.yml");
@@ -1021,7 +1052,8 @@ ${result}
1021
1052
  const autocorrect = element.attributes["autocorrect"] === "true";
1022
1053
  const maxRetries = parseInt(element.attributes["max-retries"] || "0", 10);
1023
1054
  const feedbackMode = element.attributes["feedback"] === "true";
1024
- console.error(`[LLM] Execute mode - validate: ${validateTags}, autocorrect: ${autocorrect}, feedback: ${feedbackMode}, debug: ${session.debug}`);
1055
+ const confirmCorrections = element.attributes["confirm-corrections"] === "true";
1056
+ console.error(`[LLM] Execute mode - validate: ${validateTags}, autocorrect: ${autocorrect}, feedback: ${feedbackMode}, confirm-corrections: ${confirmCorrections}, debug: ${session.debug}`);
1025
1057
  const maxIterationsAttr = substituteAttribute(session, element.attributes["max-iterations"] || "3");
1026
1058
  const maxIterations = parseInt(maxIterationsAttr, 10);
1027
1059
  const replaceTick = element.attributes["replace-tick"] === "true";
@@ -1163,13 +1195,80 @@ ${result}
1163
1195
  ${validation.errorMessages.join("\n")}`);
1164
1196
  }
1165
1197
  if (correctionMessages.length > 0 && feedbackMode) {
1166
- const correctionFeedback = `System: Auto-corrections applied:
1167
- ${correctionMessages.join("\n")}`;
1168
- dialogHistory.push({ role: "user", content: correctionFeedback });
1169
- if (contextVar) {
1170
- setVariable(session, contextVar, JSON.stringify(dialogHistory), true);
1171
- } else if (saveDialog) {
1172
- setVariable(session, "__llm_dialog__", JSON.stringify(dialogHistory), true);
1198
+ const correctedCodeLines = [];
1199
+ for (const child of dynamicAST.children) {
1200
+ if (child.tag && child.tag !== "DIRAC-ROOT") {
1201
+ serializeSimple(child, "", correctedCodeLines);
1202
+ }
1203
+ }
1204
+ const correctedCode = correctedCodeLines.join("\n");
1205
+ if (confirmCorrections) {
1206
+ const correctionFeedback = `System: Your submitted code had errors and was auto-corrected:
1207
+ ${correctionMessages.join("\n")}
1208
+
1209
+ Corrected code:
1210
+ \`\`\`xml
1211
+ ${correctedCode}
1212
+ \`\`\`
1213
+
1214
+ If you resubmit this corrected code, I will execute it for you. Please review and resubmit the corrected code, or provide a different solution.`;
1215
+ dialogHistory.push({ role: "user", content: correctionFeedback });
1216
+ if (contextVar) {
1217
+ setVariable(session, contextVar, JSON.stringify(dialogHistory), true);
1218
+ } else if (saveDialog) {
1219
+ setVariable(session, "__llm_dialog__", JSON.stringify(dialogHistory), true);
1220
+ }
1221
+ console.error("[LLM] Corrections made - waiting for LLM confirmation (not executing yet)");
1222
+ if (isOpenAI) {
1223
+ const response = await llmClient.chat.completions.create({
1224
+ model,
1225
+ max_tokens: maxTokens,
1226
+ temperature,
1227
+ messages: dialogHistory
1228
+ });
1229
+ result = response.choices[0]?.message?.content || "";
1230
+ } else if (isOllama) {
1231
+ const ollamaPrompt = dialogHistory.map((m) => `${m.role.charAt(0).toUpperCase() + m.role.slice(1)}: ${m.content}`).join("\n");
1232
+ result = await llmClient.complete(ollamaPrompt, {
1233
+ model,
1234
+ temperature,
1235
+ max_tokens: maxTokens
1236
+ });
1237
+ } else if (isCustom) {
1238
+ const customPrompt = dialogHistory.map((m) => `${m.role}: ${m.content}`).join("\n");
1239
+ result = await llmClient.complete(customPrompt, {
1240
+ model,
1241
+ temperature,
1242
+ max_tokens: maxTokens,
1243
+ messages: dialogHistory
1244
+ });
1245
+ } else {
1246
+ result = await callAnthropic(llmClient, model, maxTokens, temperature, dialogHistory);
1247
+ }
1248
+ dialogHistory.push({ role: "assistant", content: result });
1249
+ if (contextVar) {
1250
+ setVariable(session, contextVar, JSON.stringify(dialogHistory), true);
1251
+ } else if (saveDialog) {
1252
+ setVariable(session, "__llm_dialog__", JSON.stringify(dialogHistory), true);
1253
+ }
1254
+ console.error(`[LLM] LLM confirmation response:
1255
+ ${result}
1256
+ `);
1257
+ continue;
1258
+ } else {
1259
+ const correctionFeedback = `System: Auto-corrections applied:
1260
+ ${correctionMessages.join("\n")}
1261
+
1262
+ Actual code executed:
1263
+ \`\`\`xml
1264
+ ${correctedCode}
1265
+ \`\`\``;
1266
+ dialogHistory.push({ role: "user", content: correctionFeedback });
1267
+ if (contextVar) {
1268
+ setVariable(session, contextVar, JSON.stringify(dialogHistory), true);
1269
+ } else if (saveDialog) {
1270
+ setVariable(session, "__llm_dialog__", JSON.stringify(dialogHistory), true);
1271
+ }
1173
1272
  }
1174
1273
  }
1175
1274
  }
@@ -1828,7 +1927,7 @@ async function executeTagCheck(session, element) {
1828
1927
  const executeTag = correctedTag || tagName;
1829
1928
  console.error(`[tag-check] Executing <${executeTag}/> as all checks passed and execute=true.`);
1830
1929
  const elementToExecute = correctedTag ? { ...child, tag: correctedTag } : child;
1831
- const { integrate: integrate2 } = await import("./interpreter-YOKUG27J.js");
1930
+ const { integrate: integrate2 } = await import("./interpreter-WNHDVVDD.js");
1832
1931
  await integrate2(session, elementToExecute);
1833
1932
  }
1834
1933
  }
@@ -1837,7 +1936,7 @@ async function executeTagCheck(session, element) {
1837
1936
  // src/tags/throw.ts
1838
1937
  async function executeThrow(session, element) {
1839
1938
  const exceptionName = element.attributes?.name || "exception";
1840
- const { integrateChildren: integrateChildren2 } = await import("./interpreter-YOKUG27J.js");
1939
+ const { integrateChildren: integrateChildren2 } = await import("./interpreter-WNHDVVDD.js");
1841
1940
  const exceptionDom = {
1842
1941
  tag: "exception-content",
1843
1942
  attributes: { name: exceptionName },
@@ -1850,7 +1949,7 @@ async function executeThrow(session, element) {
1850
1949
  // src/tags/try.ts
1851
1950
  async function executeTry(session, element) {
1852
1951
  setExceptionBoundary(session);
1853
- const { integrateChildren: integrateChildren2 } = await import("./interpreter-YOKUG27J.js");
1952
+ const { integrateChildren: integrateChildren2 } = await import("./interpreter-WNHDVVDD.js");
1854
1953
  await integrateChildren2(session, element);
1855
1954
  unsetExceptionBoundary(session);
1856
1955
  }
@@ -1860,7 +1959,7 @@ async function executeCatch(session, element) {
1860
1959
  const exceptionName = element.attributes?.name || "exception";
1861
1960
  const caughtCount = lookupException(session, exceptionName);
1862
1961
  if (caughtCount > 0) {
1863
- const { integrateChildren: integrateChildren2 } = await import("./interpreter-YOKUG27J.js");
1962
+ const { integrateChildren: integrateChildren2 } = await import("./interpreter-WNHDVVDD.js");
1864
1963
  await integrateChildren2(session, element);
1865
1964
  }
1866
1965
  flushCurrentException(session);
@@ -1869,7 +1968,7 @@ async function executeCatch(session, element) {
1869
1968
  // src/tags/exception.ts
1870
1969
  async function executeException(session, element) {
1871
1970
  const exceptions = getCurrentExceptions(session);
1872
- const { integrateChildren: integrateChildren2 } = await import("./interpreter-YOKUG27J.js");
1971
+ const { integrateChildren: integrateChildren2 } = await import("./interpreter-WNHDVVDD.js");
1873
1972
  for (const exceptionDom of exceptions) {
1874
1973
  await integrateChildren2(session, exceptionDom);
1875
1974
  }
@@ -2070,7 +2169,7 @@ async function executeLoadContext(session, element) {
2070
2169
  query = element.text.trim();
2071
2170
  }
2072
2171
  if (!query && element.children.length > 0) {
2073
- const { integrate: integrate2 } = await import("./interpreter-YOKUG27J.js");
2172
+ const { integrate: integrate2 } = await import("./interpreter-WNHDVVDD.js");
2074
2173
  const beforeOutput = session.output.length;
2075
2174
  for (const child of element.children) {
2076
2175
  await integrate2(session, child);
@@ -2914,7 +3013,7 @@ async function executeForeach(session, element) {
2914
3013
  const parser2 = new DiracParser2();
2915
3014
  try {
2916
3015
  const fromElement = parser2.parse(fromAttr);
2917
- const { integrate: integrate2 } = await import("./interpreter-YOKUG27J.js");
3016
+ const { integrate: integrate2 } = await import("./interpreter-WNHDVVDD.js");
2918
3017
  await integrate2(session, fromElement);
2919
3018
  } catch (e) {
2920
3019
  session.output = savedOutput;
package/dist/cli.js CHANGED
@@ -1,10 +1,10 @@
1
1
  #!/usr/bin/env node
2
2
  import {
3
3
  execute
4
- } from "./chunk-YP5V45VU.js";
4
+ } from "./chunk-LGFNVEHY.js";
5
5
  import {
6
6
  BraKetParser
7
- } from "./chunk-SYFYHKKI.js";
7
+ } from "./chunk-NUNYBLVJ.js";
8
8
  import "./chunk-ECAW4X46.js";
9
9
  import "./chunk-SLGJRZ3P.js";
10
10
  import "./chunk-HRHAMPOB.js";
@@ -16,7 +16,7 @@ import "dotenv/config";
16
16
  // package.json
17
17
  var package_default = {
18
18
  name: "dirac-lang",
19
- version: "0.1.93",
19
+ version: "0.1.94",
20
20
  description: "LLM-Augmented Declarative Execution",
21
21
  type: "module",
22
22
  main: "dist/index.js",
@@ -150,7 +150,7 @@ async function main() {
150
150
  const args = process.argv.slice(2);
151
151
  const calledAs = process.argv[1];
152
152
  if (calledAs && calledAs.endsWith("/dish")) {
153
- const { DiracShell } = await import("./shell-IYJJWIQR.js");
153
+ const { DiracShell } = await import("./shell-SUNLGPOM.js");
154
154
  const shellConfig = loadShellConfig(args);
155
155
  const shell = new DiracShell(shellConfig);
156
156
  await shell.start();
@@ -199,11 +199,11 @@ async function main() {
199
199
  if (args[0] === "agent") {
200
200
  const subcommand = args[1];
201
201
  if (subcommand === "daemon") {
202
- const { runAgentDaemon } = await import("./agent-AQDM6UOR.js");
202
+ const { runAgentDaemon } = await import("./agent-SVKTURXE.js");
203
203
  await runAgentDaemon();
204
204
  return;
205
205
  }
206
- const { AgentCLI } = await import("./agent-AQDM6UOR.js");
206
+ const { AgentCLI } = await import("./agent-SVKTURXE.js");
207
207
  const agent = new AgentCLI();
208
208
  switch (subcommand) {
209
209
  case "start":
@@ -230,8 +230,8 @@ async function main() {
230
230
  return;
231
231
  }
232
232
  if (args[0] === "shell") {
233
- const { DiracShell } = await import("./shell-IYJJWIQR.js");
234
- const { SessionServer, isSessionRunning, getSocketPath } = await import("./session-server-36HQWVKN.js");
233
+ const { DiracShell } = await import("./shell-SUNLGPOM.js");
234
+ const { SessionServer, isSessionRunning, getSocketPath } = await import("./session-server-GPITH5QY.js");
235
235
  const { SessionClient } = await import("./session-client-3VTC5MLO.js");
236
236
  const daemonMode = args.includes("--daemon") || args.includes("-d");
237
237
  const agentMode = args.includes("--agent") || args.includes("-a");
@@ -277,7 +277,7 @@ async function main() {
277
277
  return;
278
278
  }
279
279
  if (args[0] === "daemon") {
280
- const { SessionServer } = await import("./session-server-36HQWVKN.js");
280
+ const { SessionServer } = await import("./session-server-GPITH5QY.js");
281
281
  const server = new SessionServer();
282
282
  await server.start();
283
283
  console.log("Session daemon started");
@@ -3,7 +3,7 @@ import {
3
3
  listCronJobs,
4
4
  stopAllCronJobs,
5
5
  stopCronJob
6
- } from "./chunk-SYFYHKKI.js";
6
+ } from "./chunk-NUNYBLVJ.js";
7
7
  import "./chunk-ECAW4X46.js";
8
8
  import "./chunk-SLGJRZ3P.js";
9
9
  import "./chunk-HRHAMPOB.js";
package/dist/index.js CHANGED
@@ -2,10 +2,10 @@ import {
2
2
  createLLMAdapter,
3
3
  execute,
4
4
  executeUserCommand
5
- } from "./chunk-YP5V45VU.js";
5
+ } from "./chunk-LGFNVEHY.js";
6
6
  import {
7
7
  integrate
8
- } from "./chunk-SYFYHKKI.js";
8
+ } from "./chunk-NUNYBLVJ.js";
9
9
  import "./chunk-ECAW4X46.js";
10
10
  import "./chunk-SLGJRZ3P.js";
11
11
  import {
@@ -1,7 +1,7 @@
1
1
  import {
2
2
  integrate,
3
3
  integrateChildren
4
- } from "./chunk-SYFYHKKI.js";
4
+ } from "./chunk-NUNYBLVJ.js";
5
5
  import "./chunk-ECAW4X46.js";
6
6
  import "./chunk-SLGJRZ3P.js";
7
7
  import "./chunk-HRHAMPOB.js";
@@ -3,7 +3,7 @@ import {
3
3
  cancelScheduledRun,
4
4
  executeRunAt,
5
5
  listScheduledRuns
6
- } from "./chunk-SYFYHKKI.js";
6
+ } from "./chunk-NUNYBLVJ.js";
7
7
  import "./chunk-ECAW4X46.js";
8
8
  import "./chunk-SLGJRZ3P.js";
9
9
  import "./chunk-HRHAMPOB.js";
@@ -3,7 +3,7 @@ import {
3
3
  listScheduledTasks,
4
4
  stopAllScheduledTasks,
5
5
  stopScheduledTask
6
- } from "./chunk-SYFYHKKI.js";
6
+ } from "./chunk-NUNYBLVJ.js";
7
7
  import "./chunk-ECAW4X46.js";
8
8
  import "./chunk-SLGJRZ3P.js";
9
9
  import "./chunk-HRHAMPOB.js";
@@ -2,8 +2,8 @@ import {
2
2
  SessionServer,
3
3
  getSocketPath,
4
4
  isSessionRunning
5
- } from "./chunk-NEANEMFG.js";
6
- import "./chunk-SYFYHKKI.js";
5
+ } from "./chunk-IFBJYN2F.js";
6
+ import "./chunk-NUNYBLVJ.js";
7
7
  import "./chunk-ECAW4X46.js";
8
8
  import "./chunk-SLGJRZ3P.js";
9
9
  import "./chunk-HRHAMPOB.js";
@@ -2,7 +2,7 @@
2
2
  import {
3
3
  BraKetParser,
4
4
  integrate
5
- } from "./chunk-SYFYHKKI.js";
5
+ } from "./chunk-NUNYBLVJ.js";
6
6
  import "./chunk-ECAW4X46.js";
7
7
  import "./chunk-SLGJRZ3P.js";
8
8
  import {
@@ -358,7 +358,7 @@ var DiracShell = class {
358
358
  if (this.client) {
359
359
  this.client.disconnect();
360
360
  }
361
- import("./schedule-MOPMQZXD.js").then(({ stopAllScheduledTasks }) => {
361
+ import("./schedule-JY54UROJ.js").then(({ stopAllScheduledTasks }) => {
362
362
  stopAllScheduledTasks();
363
363
  console.log("\nGoodbye!");
364
364
  process.exit(0);
@@ -763,7 +763,7 @@ Examples:
763
763
  break;
764
764
  case "tasks":
765
765
  try {
766
- const { listScheduledTasks } = await import("./schedule-MOPMQZXD.js");
766
+ const { listScheduledTasks } = await import("./schedule-JY54UROJ.js");
767
767
  const tasks = listScheduledTasks();
768
768
  if (tasks.length === 0) {
769
769
  console.log("No scheduled tasks running.");
@@ -782,7 +782,7 @@ Examples:
782
782
  console.log("Usage: :stop <task-name>");
783
783
  } else {
784
784
  try {
785
- const { stopScheduledTask } = await import("./schedule-MOPMQZXD.js");
785
+ const { stopScheduledTask } = await import("./schedule-JY54UROJ.js");
786
786
  const taskName = args[0];
787
787
  const stopped = stopScheduledTask(taskName);
788
788
  if (stopped) {
@@ -797,7 +797,7 @@ Examples:
797
797
  break;
798
798
  case "stopall":
799
799
  try {
800
- const { stopAllScheduledTasks } = await import("./schedule-MOPMQZXD.js");
800
+ const { stopAllScheduledTasks } = await import("./schedule-JY54UROJ.js");
801
801
  stopAllScheduledTasks();
802
802
  console.log("All scheduled tasks stopped.");
803
803
  } catch (error) {
@@ -806,7 +806,7 @@ Examples:
806
806
  break;
807
807
  case "crons":
808
808
  try {
809
- const { listCronJobs } = await import("./cron-XEF6QGZQ.js");
809
+ const { listCronJobs } = await import("./cron-YIBSPTLT.js");
810
810
  const jobs = listCronJobs();
811
811
  if (jobs.length === 0) {
812
812
  console.log("No cron jobs running.");
@@ -826,7 +826,7 @@ Examples:
826
826
  console.log("Usage: :stopcron <job-name>");
827
827
  } else {
828
828
  try {
829
- const { stopCronJob } = await import("./cron-XEF6QGZQ.js");
829
+ const { stopCronJob } = await import("./cron-YIBSPTLT.js");
830
830
  const jobName = args[0];
831
831
  const stopped = stopCronJob(jobName);
832
832
  if (stopped) {
@@ -841,7 +841,7 @@ Examples:
841
841
  break;
842
842
  case "stopallcrons":
843
843
  try {
844
- const { stopAllCronJobs } = await import("./cron-XEF6QGZQ.js");
844
+ const { stopAllCronJobs } = await import("./cron-YIBSPTLT.js");
845
845
  stopAllCronJobs();
846
846
  console.log("All cron jobs stopped.");
847
847
  } catch (error) {
@@ -850,7 +850,7 @@ Examples:
850
850
  break;
851
851
  case "scheduled":
852
852
  try {
853
- const { listScheduledRuns } = await import("./run-at-TYMEPTBO.js");
853
+ const { listScheduledRuns } = await import("./run-at-H7RN6DOD.js");
854
854
  const runs = listScheduledRuns();
855
855
  if (runs.length === 0) {
856
856
  console.log("No scheduled runs pending.");
@@ -870,7 +870,7 @@ Examples:
870
870
  console.log("Usage: :cancel <run-name>");
871
871
  } else {
872
872
  try {
873
- const { cancelScheduledRun } = await import("./run-at-TYMEPTBO.js");
873
+ const { cancelScheduledRun } = await import("./run-at-H7RN6DOD.js");
874
874
  const runName = args[0];
875
875
  const cancelled = cancelScheduledRun(runName);
876
876
  if (cancelled) {
@@ -885,7 +885,7 @@ Examples:
885
885
  break;
886
886
  case "cancelall":
887
887
  try {
888
- const { cancelAllScheduledRuns } = await import("./run-at-TYMEPTBO.js");
888
+ const { cancelAllScheduledRuns } = await import("./run-at-H7RN6DOD.js");
889
889
  cancelAllScheduledRuns();
890
890
  console.log("All scheduled runs cancelled.");
891
891
  } catch (error) {
@@ -1,6 +1,6 @@
1
1
  import {
2
2
  integrate
3
- } from "./chunk-SYFYHKKI.js";
3
+ } from "./chunk-NUNYBLVJ.js";
4
4
  import "./chunk-ECAW4X46.js";
5
5
  import "./chunk-SLGJRZ3P.js";
6
6
  import {
package/lib/ai.di CHANGED
@@ -32,7 +32,7 @@
32
32
 
33
33
 
34
34
 
35
- <llm execute="true" save-dialog="true" show="boundary" feedback="true" validate="true" autocorrect="true">
35
+ <llm execute="true" save-dialog="true" show="boundary" feedback="true" validate="true" autocorrect="true" confirm-corrections="true">
36
36
 
37
37
 
38
38
 
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "dirac-lang",
3
- "version": "0.1.93",
3
+ "version": "0.1.95",
4
4
  "description": "LLM-Augmented Declarative Execution",
5
5
  "type": "module",
6
6
  "main": "dist/index.js",