sparkecoder 0.1.127 → 0.1.128

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 (106) hide show
  1. package/dist/cli.js +42 -2
  2. package/dist/cli.js.map +1 -1
  3. package/dist/index.js +42 -2
  4. package/dist/index.js.map +1 -1
  5. package/dist/server/index.js +42 -2
  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/(main)/session/[id]/page_client-reference-manifest.js +1 -1
  13. package/web/.next/standalone/web/.next/server/app/_global-error.html +2 -2
  14. package/web/.next/standalone/web/.next/server/app/_global-error.rsc +1 -1
  15. package/web/.next/standalone/web/.next/server/app/_global-error.segments/__PAGE__.segment.rsc +1 -1
  16. package/web/.next/standalone/web/.next/server/app/_global-error.segments/_full.segment.rsc +1 -1
  17. package/web/.next/standalone/web/.next/server/app/_global-error.segments/_head.segment.rsc +1 -1
  18. package/web/.next/standalone/web/.next/server/app/_global-error.segments/_index.segment.rsc +1 -1
  19. package/web/.next/standalone/web/.next/server/app/_global-error.segments/_tree.segment.rsc +1 -1
  20. package/web/.next/standalone/web/.next/server/app/_not-found.html +1 -1
  21. package/web/.next/standalone/web/.next/server/app/_not-found.rsc +1 -1
  22. package/web/.next/standalone/web/.next/server/app/_not-found.segments/_full.segment.rsc +1 -1
  23. package/web/.next/standalone/web/.next/server/app/_not-found.segments/_head.segment.rsc +1 -1
  24. package/web/.next/standalone/web/.next/server/app/_not-found.segments/_index.segment.rsc +1 -1
  25. package/web/.next/standalone/web/.next/server/app/_not-found.segments/_not-found/__PAGE__.segment.rsc +1 -1
  26. package/web/.next/standalone/web/.next/server/app/_not-found.segments/_not-found.segment.rsc +1 -1
  27. package/web/.next/standalone/web/.next/server/app/_not-found.segments/_tree.segment.rsc +1 -1
  28. package/web/.next/standalone/web/.next/server/app/agents.html +1 -1
  29. package/web/.next/standalone/web/.next/server/app/agents.rsc +1 -1
  30. package/web/.next/standalone/web/.next/server/app/agents.segments/!KG1haW4p/agents/__PAGE__.segment.rsc +1 -1
  31. package/web/.next/standalone/web/.next/server/app/agents.segments/!KG1haW4p/agents.segment.rsc +1 -1
  32. package/web/.next/standalone/web/.next/server/app/agents.segments/!KG1haW4p.segment.rsc +1 -1
  33. package/web/.next/standalone/web/.next/server/app/agents.segments/_full.segment.rsc +1 -1
  34. package/web/.next/standalone/web/.next/server/app/agents.segments/_head.segment.rsc +1 -1
  35. package/web/.next/standalone/web/.next/server/app/agents.segments/_index.segment.rsc +1 -1
  36. package/web/.next/standalone/web/.next/server/app/agents.segments/_tree.segment.rsc +1 -1
  37. package/web/.next/standalone/web/.next/server/app/docs/installation.html +2 -2
  38. package/web/.next/standalone/web/.next/server/app/docs/installation.rsc +1 -1
  39. package/web/.next/standalone/web/.next/server/app/docs/installation.segments/_full.segment.rsc +1 -1
  40. package/web/.next/standalone/web/.next/server/app/docs/installation.segments/_head.segment.rsc +1 -1
  41. package/web/.next/standalone/web/.next/server/app/docs/installation.segments/_index.segment.rsc +1 -1
  42. package/web/.next/standalone/web/.next/server/app/docs/installation.segments/_tree.segment.rsc +1 -1
  43. package/web/.next/standalone/web/.next/server/app/docs/installation.segments/docs/installation/__PAGE__.segment.rsc +1 -1
  44. package/web/.next/standalone/web/.next/server/app/docs/installation.segments/docs/installation.segment.rsc +1 -1
  45. package/web/.next/standalone/web/.next/server/app/docs/installation.segments/docs.segment.rsc +1 -1
  46. package/web/.next/standalone/web/.next/server/app/docs/skills.html +2 -2
  47. package/web/.next/standalone/web/.next/server/app/docs/skills.rsc +1 -1
  48. package/web/.next/standalone/web/.next/server/app/docs/skills.segments/_full.segment.rsc +1 -1
  49. package/web/.next/standalone/web/.next/server/app/docs/skills.segments/_head.segment.rsc +1 -1
  50. package/web/.next/standalone/web/.next/server/app/docs/skills.segments/_index.segment.rsc +1 -1
  51. package/web/.next/standalone/web/.next/server/app/docs/skills.segments/_tree.segment.rsc +1 -1
  52. package/web/.next/standalone/web/.next/server/app/docs/skills.segments/docs/skills/__PAGE__.segment.rsc +1 -1
  53. package/web/.next/standalone/web/.next/server/app/docs/skills.segments/docs/skills.segment.rsc +1 -1
  54. package/web/.next/standalone/web/.next/server/app/docs/skills.segments/docs.segment.rsc +1 -1
  55. package/web/.next/standalone/web/.next/server/app/docs/tools.html +2 -2
  56. package/web/.next/standalone/web/.next/server/app/docs/tools.rsc +1 -1
  57. package/web/.next/standalone/web/.next/server/app/docs/tools.segments/_full.segment.rsc +1 -1
  58. package/web/.next/standalone/web/.next/server/app/docs/tools.segments/_head.segment.rsc +1 -1
  59. package/web/.next/standalone/web/.next/server/app/docs/tools.segments/_index.segment.rsc +1 -1
  60. package/web/.next/standalone/web/.next/server/app/docs/tools.segments/_tree.segment.rsc +1 -1
  61. package/web/.next/standalone/web/.next/server/app/docs/tools.segments/docs/tools/__PAGE__.segment.rsc +1 -1
  62. package/web/.next/standalone/web/.next/server/app/docs/tools.segments/docs/tools.segment.rsc +1 -1
  63. package/web/.next/standalone/web/.next/server/app/docs/tools.segments/docs.segment.rsc +1 -1
  64. package/web/.next/standalone/web/.next/server/app/docs.html +2 -2
  65. package/web/.next/standalone/web/.next/server/app/docs.rsc +1 -1
  66. package/web/.next/standalone/web/.next/server/app/docs.segments/_full.segment.rsc +1 -1
  67. package/web/.next/standalone/web/.next/server/app/docs.segments/_head.segment.rsc +1 -1
  68. package/web/.next/standalone/web/.next/server/app/docs.segments/_index.segment.rsc +1 -1
  69. package/web/.next/standalone/web/.next/server/app/docs.segments/_tree.segment.rsc +1 -1
  70. package/web/.next/standalone/web/.next/server/app/docs.segments/docs/__PAGE__.segment.rsc +1 -1
  71. package/web/.next/standalone/web/.next/server/app/docs.segments/docs.segment.rsc +1 -1
  72. package/web/.next/standalone/web/.next/server/app/index.html +1 -1
  73. package/web/.next/standalone/web/.next/server/app/index.rsc +1 -1
  74. package/web/.next/standalone/web/.next/server/app/index.segments/!KG1haW4p/__PAGE__.segment.rsc +1 -1
  75. package/web/.next/standalone/web/.next/server/app/index.segments/!KG1haW4p.segment.rsc +1 -1
  76. package/web/.next/standalone/web/.next/server/app/index.segments/_full.segment.rsc +1 -1
  77. package/web/.next/standalone/web/.next/server/app/index.segments/_head.segment.rsc +1 -1
  78. package/web/.next/standalone/web/.next/server/app/index.segments/_index.segment.rsc +1 -1
  79. package/web/.next/standalone/web/.next/server/app/index.segments/_tree.segment.rsc +1 -1
  80. package/web/.next/standalone/web/.next/server/app/settings.html +1 -1
  81. package/web/.next/standalone/web/.next/server/app/settings.rsc +1 -1
  82. package/web/.next/standalone/web/.next/server/app/settings.segments/!KG1haW4p/settings/__PAGE__.segment.rsc +1 -1
  83. package/web/.next/standalone/web/.next/server/app/settings.segments/!KG1haW4p/settings.segment.rsc +1 -1
  84. package/web/.next/standalone/web/.next/server/app/settings.segments/!KG1haW4p.segment.rsc +1 -1
  85. package/web/.next/standalone/web/.next/server/app/settings.segments/_full.segment.rsc +1 -1
  86. package/web/.next/standalone/web/.next/server/app/settings.segments/_head.segment.rsc +1 -1
  87. package/web/.next/standalone/web/.next/server/app/settings.segments/_index.segment.rsc +1 -1
  88. package/web/.next/standalone/web/.next/server/app/settings.segments/_tree.segment.rsc +1 -1
  89. package/web/.next/standalone/web/.next/server/chunks/ssr/[root-of-the-server]__e5911ea8._.js +1 -1
  90. package/web/.next/standalone/web/.next/server/pages/404.html +1 -1
  91. package/web/.next/standalone/web/.next/server/pages/500.html +2 -2
  92. package/web/.next/standalone/web/.next/server/server-reference-manifest.js +1 -1
  93. package/web/.next/standalone/web/.next/server/server-reference-manifest.json +1 -1
  94. package/web/.next/standalone/web/.next/static/chunks/{4d95c15f712c9e06.js → 3f50fe2a802aa800.js} +1 -1
  95. package/web/.next/standalone/web/.next/static/static/chunks/{4d95c15f712c9e06.js → 3f50fe2a802aa800.js} +1 -1
  96. package/web/.next/standalone/web/src/components/chat-interface.tsx +59 -7
  97. package/web/.next/static/chunks/{4d95c15f712c9e06.js → 3f50fe2a802aa800.js} +1 -1
  98. /package/web/.next/standalone/web/.next/static/{l63ZK5juWEj8lzzuVVSpx → nLC9shTGqDJLbL_Arw25S}/_buildManifest.js +0 -0
  99. /package/web/.next/standalone/web/.next/static/{l63ZK5juWEj8lzzuVVSpx → nLC9shTGqDJLbL_Arw25S}/_clientMiddlewareManifest.json +0 -0
  100. /package/web/.next/standalone/web/.next/static/{l63ZK5juWEj8lzzuVVSpx → nLC9shTGqDJLbL_Arw25S}/_ssgManifest.js +0 -0
  101. /package/web/.next/standalone/web/.next/static/static/{l63ZK5juWEj8lzzuVVSpx → nLC9shTGqDJLbL_Arw25S}/_buildManifest.js +0 -0
  102. /package/web/.next/standalone/web/.next/static/static/{l63ZK5juWEj8lzzuVVSpx → nLC9shTGqDJLbL_Arw25S}/_clientMiddlewareManifest.json +0 -0
  103. /package/web/.next/standalone/web/.next/static/static/{l63ZK5juWEj8lzzuVVSpx → nLC9shTGqDJLbL_Arw25S}/_ssgManifest.js +0 -0
  104. /package/web/.next/static/{l63ZK5juWEj8lzzuVVSpx → nLC9shTGqDJLbL_Arw25S}/_buildManifest.js +0 -0
  105. /package/web/.next/static/{l63ZK5juWEj8lzzuVVSpx → nLC9shTGqDJLbL_Arw25S}/_clientMiddlewareManifest.json +0 -0
  106. /package/web/.next/static/{l63ZK5juWEj8lzzuVVSpx → nLC9shTGqDJLbL_Arw25S}/_ssgManifest.js +0 -0
package/dist/index.js CHANGED
@@ -14091,6 +14091,46 @@ import { zValidator as zValidator5 } from "@hono/zod-validator";
14091
14091
  import { z as z20 } from "zod";
14092
14092
  import { nanoid as nanoid12 } from "nanoid";
14093
14093
  init_questions();
14094
+
14095
+ // src/utils/format-error.ts
14096
+ function formatError(err, maxLength = 2e3) {
14097
+ if (err == null) return "Unknown error";
14098
+ if (err instanceof Error) {
14099
+ const msg = err.message;
14100
+ if (typeof msg === "string" && msg.length > 0) return truncate(msg, maxLength);
14101
+ if (err.name) return truncate(err.name, maxLength);
14102
+ return truncate(String(err), maxLength);
14103
+ }
14104
+ if (typeof err === "string") return truncate(err || "Unknown error", maxLength);
14105
+ if (typeof err === "number" || typeof err === "boolean" || typeof err === "bigint") {
14106
+ return String(err);
14107
+ }
14108
+ if (typeof err === "object") {
14109
+ const e = err;
14110
+ if (typeof e.message === "string" && e.message.length > 0) return truncate(e.message, maxLength);
14111
+ if (typeof e.error === "string" && e.error.length > 0) return truncate(e.error, maxLength);
14112
+ if (typeof e.reason === "string" && e.reason.length > 0) return truncate(e.reason, maxLength);
14113
+ if (typeof e.toString === "function") {
14114
+ try {
14115
+ const s = e.toString();
14116
+ if (s && s !== "[object Object]") return truncate(s, maxLength);
14117
+ } catch {
14118
+ }
14119
+ }
14120
+ try {
14121
+ return truncate(JSON.stringify(err), maxLength);
14122
+ } catch {
14123
+ return "[unserializable error]";
14124
+ }
14125
+ }
14126
+ return truncate(String(err), maxLength);
14127
+ }
14128
+ function truncate(s, max) {
14129
+ if (s.length <= max) return s;
14130
+ return s.slice(0, max) + `\u2026 (truncated, ${s.length} total chars)`;
14131
+ }
14132
+
14133
+ // src/server/routes/tasks.ts
14094
14134
  var tasks = new Hono5();
14095
14135
  var taskAbortControllers = /* @__PURE__ */ new Map();
14096
14136
  var createTaskSchema = z20.object({
@@ -14203,8 +14243,8 @@ tasks.post(
14203
14243
  console.log(`[TASK] Task ${taskId} was cancelled`);
14204
14244
  await writeSSE(JSON.stringify({ type: "abort" }));
14205
14245
  } else {
14206
- console.error(`[TASK] Error in task ${taskId}:`, err.message);
14207
- const errorMsg = err.message || "Unknown error";
14246
+ const errorMsg = formatError(err);
14247
+ console.error(`[TASK] Error in task ${taskId}:`, errorMsg);
14208
14248
  await writeSSE(JSON.stringify({ type: "error", errorText: errorMsg }));
14209
14249
  const failedTask = {
14210
14250
  ...taskConfig,