Files
lobehub__lobehub/patches/@upstash__qstash.patch
Arvin Xu e1bc7e1bd6 🐛 fix: harden Goal acceptance runtime (#18670)
* 🧪 test: bootstrap local device gateway

* 🐛 fix: preserve goal acceptance contracts

* ♻️ refactor: keep goal criteria domain neutral

* 🐛 fix: collect hetero acceptance evidence server-side

* 🐛 fix: detect hetero evidence by provider

* 🐛 fix: require self-contained goal evidence

* 📝 docs: bound long-running health probes

* 🐛 fix: pin installable UI dependency

* 🐛 fix: pin installable UI in desktop workspace

* ⬆️ chore: unpin repaired UI dependency

* 🐛 fix: charge stale work before recovery

---------

Co-authored-by: Arvin Xu <arvin.x@lobehub.com>
2026-08-26 13:38:36 +08:00

37 lines
1.4 KiB
Diff

diff --git a/chunk-JYPXGFWX.mjs b/chunk-JYPXGFWX.mjs
--- a/chunk-JYPXGFWX.mjs
+++ b/chunk-JYPXGFWX.mjs
@@ -1526,6 +1526,20 @@ var HttpClient = class {
}
if (response.status < 200 || response.status >= 300) {
const body = await response.text();
+ // Debug aid: log non-2xx responses to trace publish failures (e.g., 400) with context
+ try {
+ console.error(
+ "[upstash-qstash] request failed",
+ JSON.stringify({
+ status: response.status,
+ url: response.url,
+ headers: Object.fromEntries(response.headers.entries()),
+ body
+ })
+ );
+ } catch {
+ // ignore logging failures to preserve original throw path
+ }
throw new QstashError(
body.length > 0 ? body : `Error: status=${response.status}`,
response.status
@@ -2797,8 +2811,10 @@ var AutoExecutor = class _AutoExecutor {
if (error instanceof QStashWorkflowAbort) {
throw error;
}
+
+ const errorMessage = error instanceof Error ? error.message : typeof error === "object" ? JSON.stringify(error) : String(error);
throw new QStashWorkflowError(
- `Error submitting steps to QStash in partial parallel step execution: ${error}`
+ `Error submitting steps to QStash in partial parallel step execution: ${errorMessage}`
);
}
break;