sparkecoder 0.1.63 → 0.1.64

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 (82) hide show
  1. package/dist/cli.js +51 -20
  2. package/dist/cli.js.map +1 -1
  3. package/dist/index.js +51 -20
  4. package/dist/index.js.map +1 -1
  5. package/dist/server/index.js +51 -20
  6. package/dist/server/index.js.map +1 -1
  7. package/package.json +1 -1
  8. package/web/.next/BUILD_ID +1 -1
  9. package/web/.next/standalone/web/.next/BUILD_ID +1 -1
  10. package/web/.next/standalone/web/.next/build-manifest.json +2 -2
  11. package/web/.next/standalone/web/.next/prerender-manifest.json +3 -3
  12. package/web/.next/standalone/web/.next/server/app/_global-error.html +2 -2
  13. package/web/.next/standalone/web/.next/server/app/_global-error.rsc +1 -1
  14. package/web/.next/standalone/web/.next/server/app/_global-error.segments/__PAGE__.segment.rsc +1 -1
  15. package/web/.next/standalone/web/.next/server/app/_global-error.segments/_full.segment.rsc +1 -1
  16. package/web/.next/standalone/web/.next/server/app/_global-error.segments/_head.segment.rsc +1 -1
  17. package/web/.next/standalone/web/.next/server/app/_global-error.segments/_index.segment.rsc +1 -1
  18. package/web/.next/standalone/web/.next/server/app/_global-error.segments/_tree.segment.rsc +1 -1
  19. package/web/.next/standalone/web/.next/server/app/_not-found.html +1 -1
  20. package/web/.next/standalone/web/.next/server/app/_not-found.rsc +1 -1
  21. package/web/.next/standalone/web/.next/server/app/_not-found.segments/_full.segment.rsc +1 -1
  22. package/web/.next/standalone/web/.next/server/app/_not-found.segments/_head.segment.rsc +1 -1
  23. package/web/.next/standalone/web/.next/server/app/_not-found.segments/_index.segment.rsc +1 -1
  24. package/web/.next/standalone/web/.next/server/app/_not-found.segments/_not-found/__PAGE__.segment.rsc +1 -1
  25. package/web/.next/standalone/web/.next/server/app/_not-found.segments/_not-found.segment.rsc +1 -1
  26. package/web/.next/standalone/web/.next/server/app/_not-found.segments/_tree.segment.rsc +1 -1
  27. package/web/.next/standalone/web/.next/server/app/docs/installation.html +2 -2
  28. package/web/.next/standalone/web/.next/server/app/docs/installation.rsc +1 -1
  29. package/web/.next/standalone/web/.next/server/app/docs/installation.segments/_full.segment.rsc +1 -1
  30. package/web/.next/standalone/web/.next/server/app/docs/installation.segments/_head.segment.rsc +1 -1
  31. package/web/.next/standalone/web/.next/server/app/docs/installation.segments/_index.segment.rsc +1 -1
  32. package/web/.next/standalone/web/.next/server/app/docs/installation.segments/_tree.segment.rsc +1 -1
  33. package/web/.next/standalone/web/.next/server/app/docs/installation.segments/docs/installation/__PAGE__.segment.rsc +1 -1
  34. package/web/.next/standalone/web/.next/server/app/docs/installation.segments/docs/installation.segment.rsc +1 -1
  35. package/web/.next/standalone/web/.next/server/app/docs/installation.segments/docs.segment.rsc +1 -1
  36. package/web/.next/standalone/web/.next/server/app/docs/skills.html +2 -2
  37. package/web/.next/standalone/web/.next/server/app/docs/skills.rsc +1 -1
  38. package/web/.next/standalone/web/.next/server/app/docs/skills.segments/_full.segment.rsc +1 -1
  39. package/web/.next/standalone/web/.next/server/app/docs/skills.segments/_head.segment.rsc +1 -1
  40. package/web/.next/standalone/web/.next/server/app/docs/skills.segments/_index.segment.rsc +1 -1
  41. package/web/.next/standalone/web/.next/server/app/docs/skills.segments/_tree.segment.rsc +1 -1
  42. package/web/.next/standalone/web/.next/server/app/docs/skills.segments/docs/skills/__PAGE__.segment.rsc +1 -1
  43. package/web/.next/standalone/web/.next/server/app/docs/skills.segments/docs/skills.segment.rsc +1 -1
  44. package/web/.next/standalone/web/.next/server/app/docs/skills.segments/docs.segment.rsc +1 -1
  45. package/web/.next/standalone/web/.next/server/app/docs/tools.html +2 -2
  46. package/web/.next/standalone/web/.next/server/app/docs/tools.rsc +1 -1
  47. package/web/.next/standalone/web/.next/server/app/docs/tools.segments/_full.segment.rsc +1 -1
  48. package/web/.next/standalone/web/.next/server/app/docs/tools.segments/_head.segment.rsc +1 -1
  49. package/web/.next/standalone/web/.next/server/app/docs/tools.segments/_index.segment.rsc +1 -1
  50. package/web/.next/standalone/web/.next/server/app/docs/tools.segments/_tree.segment.rsc +1 -1
  51. package/web/.next/standalone/web/.next/server/app/docs/tools.segments/docs/tools/__PAGE__.segment.rsc +1 -1
  52. package/web/.next/standalone/web/.next/server/app/docs/tools.segments/docs/tools.segment.rsc +1 -1
  53. package/web/.next/standalone/web/.next/server/app/docs/tools.segments/docs.segment.rsc +1 -1
  54. package/web/.next/standalone/web/.next/server/app/docs.html +2 -2
  55. package/web/.next/standalone/web/.next/server/app/docs.rsc +1 -1
  56. package/web/.next/standalone/web/.next/server/app/docs.segments/_full.segment.rsc +1 -1
  57. package/web/.next/standalone/web/.next/server/app/docs.segments/_head.segment.rsc +1 -1
  58. package/web/.next/standalone/web/.next/server/app/docs.segments/_index.segment.rsc +1 -1
  59. package/web/.next/standalone/web/.next/server/app/docs.segments/_tree.segment.rsc +1 -1
  60. package/web/.next/standalone/web/.next/server/app/docs.segments/docs/__PAGE__.segment.rsc +1 -1
  61. package/web/.next/standalone/web/.next/server/app/docs.segments/docs.segment.rsc +1 -1
  62. package/web/.next/standalone/web/.next/server/app/index.html +1 -1
  63. package/web/.next/standalone/web/.next/server/app/index.rsc +1 -1
  64. package/web/.next/standalone/web/.next/server/app/index.segments/!KG1haW4p/__PAGE__.segment.rsc +1 -1
  65. package/web/.next/standalone/web/.next/server/app/index.segments/!KG1haW4p.segment.rsc +1 -1
  66. package/web/.next/standalone/web/.next/server/app/index.segments/_full.segment.rsc +1 -1
  67. package/web/.next/standalone/web/.next/server/app/index.segments/_head.segment.rsc +1 -1
  68. package/web/.next/standalone/web/.next/server/app/index.segments/_index.segment.rsc +1 -1
  69. package/web/.next/standalone/web/.next/server/app/index.segments/_tree.segment.rsc +1 -1
  70. package/web/.next/standalone/web/.next/server/pages/404.html +1 -1
  71. package/web/.next/standalone/web/.next/server/pages/500.html +2 -2
  72. package/web/.next/standalone/web/.next/server/server-reference-manifest.js +1 -1
  73. package/web/.next/standalone/web/.next/server/server-reference-manifest.json +1 -1
  74. /package/web/.next/standalone/web/.next/static/{Xc8ztiG5d6CHUNHm_1G8b → 9M2ys377uFtNH8BEy1_vL}/_buildManifest.js +0 -0
  75. /package/web/.next/standalone/web/.next/static/{Xc8ztiG5d6CHUNHm_1G8b → 9M2ys377uFtNH8BEy1_vL}/_clientMiddlewareManifest.json +0 -0
  76. /package/web/.next/standalone/web/.next/static/{Xc8ztiG5d6CHUNHm_1G8b → 9M2ys377uFtNH8BEy1_vL}/_ssgManifest.js +0 -0
  77. /package/web/.next/standalone/web/.next/static/static/{Xc8ztiG5d6CHUNHm_1G8b → 9M2ys377uFtNH8BEy1_vL}/_buildManifest.js +0 -0
  78. /package/web/.next/standalone/web/.next/static/static/{Xc8ztiG5d6CHUNHm_1G8b → 9M2ys377uFtNH8BEy1_vL}/_clientMiddlewareManifest.json +0 -0
  79. /package/web/.next/standalone/web/.next/static/static/{Xc8ztiG5d6CHUNHm_1G8b → 9M2ys377uFtNH8BEy1_vL}/_ssgManifest.js +0 -0
  80. /package/web/.next/static/{Xc8ztiG5d6CHUNHm_1G8b → 9M2ys377uFtNH8BEy1_vL}/_buildManifest.js +0 -0
  81. /package/web/.next/static/{Xc8ztiG5d6CHUNHm_1G8b → 9M2ys377uFtNH8BEy1_vL}/_clientMiddlewareManifest.json +0 -0
  82. /package/web/.next/static/{Xc8ztiG5d6CHUNHm_1G8b → 9M2ys377uFtNH8BEy1_vL}/_ssgManifest.js +0 -0
@@ -1617,6 +1617,34 @@ var init_semantic_search = __esm({
1617
1617
  }
1618
1618
  });
1619
1619
 
1620
+ // src/utils/webhook.ts
1621
+ var webhook_exports = {};
1622
+ __export(webhook_exports, {
1623
+ sendWebhook: () => sendWebhook
1624
+ });
1625
+ async function sendWebhook(url, event) {
1626
+ try {
1627
+ const controller = new AbortController();
1628
+ const timeout = setTimeout(() => controller.abort(), 5e3);
1629
+ await fetch(url, {
1630
+ method: "POST",
1631
+ headers: {
1632
+ "Content-Type": "application/json",
1633
+ "X-SparkECoder-Event": event.type
1634
+ },
1635
+ body: JSON.stringify(event),
1636
+ signal: controller.signal
1637
+ });
1638
+ clearTimeout(timeout);
1639
+ } catch {
1640
+ }
1641
+ }
1642
+ var init_webhook = __esm({
1643
+ "src/utils/webhook.ts"() {
1644
+ "use strict";
1645
+ }
1646
+ });
1647
+
1620
1648
  // src/server/index.ts
1621
1649
  import "dotenv/config";
1622
1650
  import { Hono as Hono6 } from "hono";
@@ -5857,26 +5885,8 @@ ${this.summary}`
5857
5885
  }
5858
5886
  };
5859
5887
 
5860
- // src/utils/webhook.ts
5861
- async function sendWebhook(url, event) {
5862
- try {
5863
- const controller = new AbortController();
5864
- const timeout = setTimeout(() => controller.abort(), 5e3);
5865
- await fetch(url, {
5866
- method: "POST",
5867
- headers: {
5868
- "Content-Type": "application/json",
5869
- "X-SparkECoder-Event": event.type
5870
- },
5871
- body: JSON.stringify(event),
5872
- signal: controller.signal
5873
- });
5874
- clearTimeout(timeout);
5875
- } catch {
5876
- }
5877
- }
5878
-
5879
5888
  // src/agent/index.ts
5889
+ init_webhook();
5880
5890
  var approvalResolvers = /* @__PURE__ */ new Map();
5881
5891
  var Agent = class _Agent {
5882
5892
  session;
@@ -8613,10 +8623,11 @@ tasks.post(
8613
8623
  console.log(`[TASK] Task ${taskId} was cancelled`);
8614
8624
  } else {
8615
8625
  console.error(`[TASK] Error in task ${taskId}:`, err.message);
8626
+ const errorMsg = err.message || "Unknown error";
8616
8627
  const failedTask = {
8617
8628
  ...taskConfig,
8618
8629
  status: "failed",
8619
- error: err.message || "Unknown error"
8630
+ error: errorMsg
8620
8631
  };
8621
8632
  await sessionQueries.update(taskId, {
8622
8633
  config: {
@@ -8624,6 +8635,16 @@ tasks.post(
8624
8635
  task: failedTask
8625
8636
  }
8626
8637
  });
8638
+ if (taskConfig.webhookUrl) {
8639
+ const { sendWebhook: sendWebhook2 } = await Promise.resolve().then(() => (init_webhook(), webhook_exports));
8640
+ sendWebhook2(taskConfig.webhookUrl, {
8641
+ type: "task.failed",
8642
+ taskId,
8643
+ sessionId: taskId,
8644
+ timestamp: (/* @__PURE__ */ new Date()).toISOString(),
8645
+ data: { status: "failed", error: errorMsg }
8646
+ });
8647
+ }
8627
8648
  }
8628
8649
  } finally {
8629
8650
  taskAbortControllers.delete(taskId);
@@ -8680,6 +8701,16 @@ tasks.post("/:id/cancel", async (c) => {
8680
8701
  await sessionQueries.update(id, {
8681
8702
  config: { ...session.config, task: cancelledTask }
8682
8703
  });
8704
+ if (task.webhookUrl) {
8705
+ const { sendWebhook: sendWebhook2 } = await Promise.resolve().then(() => (init_webhook(), webhook_exports));
8706
+ sendWebhook2(task.webhookUrl, {
8707
+ type: "task.failed",
8708
+ taskId: id,
8709
+ sessionId: id,
8710
+ timestamp: (/* @__PURE__ */ new Date()).toISOString(),
8711
+ data: { status: "failed", error: "Task cancelled by user" }
8712
+ });
8713
+ }
8683
8714
  return c.json({ taskId: id, status: "failed", error: "Task cancelled by user" });
8684
8715
  });
8685
8716
  var tasks_default = tasks;