Compare commits

...

2 Commits

Author SHA1 Message Date
eff7d90f43 v2.0.2 2025-11-08 00:48:31 +11:00
db5524f8ce fix: resolve issue with sealing task on inngest (#2146)
Currently on inngest the sealing task fails during decoration stating
that it can not find the step "xxx"

My running theory is that this was due to it being a
Promise.all(map(...)) even though that isn't explicitly disallowed.

This change turns it into a for loop collecting promises to be awaited
after the fact.

Local inngest testing looks promising.
2025-11-08 00:48:13 +11:00
4 changed files with 31 additions and 26 deletions

View File

@ -106,5 +106,5 @@
"vite-plugin-babel-macros": "^1.0.6", "vite-plugin-babel-macros": "^1.0.6",
"vite-tsconfig-paths": "^5.1.4" "vite-tsconfig-paths": "^5.1.4"
}, },
"version": "2.0.1" "version": "2.0.2"
} }

6
package-lock.json generated
View File

@ -1,12 +1,12 @@
{ {
"name": "@documenso/root", "name": "@documenso/root",
"version": "2.0.1", "version": "2.0.2",
"lockfileVersion": 3, "lockfileVersion": 3,
"requires": true, "requires": true,
"packages": { "packages": {
"": { "": {
"name": "@documenso/root", "name": "@documenso/root",
"version": "2.0.1", "version": "2.0.2",
"workspaces": [ "workspaces": [
"apps/*", "apps/*",
"packages/*" "packages/*"
@ -100,7 +100,7 @@
}, },
"apps/remix": { "apps/remix": {
"name": "@documenso/remix", "name": "@documenso/remix",
"version": "2.0.1", "version": "2.0.2",
"dependencies": { "dependencies": {
"@cantoo/pdf-lib": "^2.5.2", "@cantoo/pdf-lib": "^2.5.2",
"@documenso/api": "*", "@documenso/api": "*",

View File

@ -1,6 +1,6 @@
{ {
"private": true, "private": true,
"version": "2.0.1", "version": "2.0.2",
"scripts": { "scripts": {
"build": "turbo run build", "build": "turbo run build",
"dev": "turbo run dev --filter=@documenso/remix", "dev": "turbo run dev --filter=@documenso/remix",

View File

@ -189,29 +189,34 @@ export const run = async ({
settings, settings,
}); });
const newDocumentData = await Promise.all( const decoratePromises: Array<Promise<{ oldDocumentDataId: string; newDocumentDataId: string }>> =
envelopeItems.map(async (envelopeItem) => [];
io.runTask(`decorate-${envelopeItem.id}`, async () => {
const envelopeItemFields = envelope.envelopeItems.find(
(item) => item.id === envelopeItem.id,
)?.field;
if (!envelopeItemFields) { for (const envelopeItem of envelopeItems) {
throw new Error(`Envelope item fields not found for envelope item ${envelopeItem.id}`); const task = io.runTask(`decorate-${envelopeItem.id}`, async () => {
} const envelopeItemFields = envelope.envelopeItems.find(
(item) => item.id === envelopeItem.id,
)?.field;
return decorateAndSignPdf({ if (!envelopeItemFields) {
envelope, throw new Error(`Envelope item fields not found for envelope item ${envelopeItem.id}`);
envelopeItem, }
envelopeItemFields,
isRejected, return decorateAndSignPdf({
rejectionReason, envelope,
certificateData, envelopeItem,
auditLogData, envelopeItemFields,
}); isRejected,
}), rejectionReason,
), certificateData,
); auditLogData,
});
});
decoratePromises.push(task);
}
const newDocumentData = await Promise.all(decoratePromises);
const postHog = PostHogServerClient(); const postHog = PostHogServerClient();