Skip to content

Handle error state for generating transactions correctly#69

Closed
0xnullifier wants to merge 3 commits intomainfrom
utk-handle-error-state-in-transactions
Closed

Handle error state for generating transactions correctly#69
0xnullifier wants to merge 3 commits intomainfrom
utk-handle-error-state-in-transactions

Conversation

@0xnullifier
Copy link
Copy Markdown
Collaborator

No description provided.

@WiktorStarczewski
Copy link
Copy Markdown
Collaborator

Is the intent to silently continue after a single transaction failure? Users won't see any error indication until all transactions finish.

}

mutateTx();
await mutateTx();
Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Is this intentional? It now blocks until the cache is updated before potentially retrying.

transactions.length === 0
) {
new Promise(res => setTimeout(res, 10_000)).then(async () => {
new Promise(res => (timeOutRef.current = setTimeout(res, 10_000))).then(async () => {
Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Should this also check for error state?

@0xnullifier
Copy link
Copy Markdown
Collaborator Author

0xnullifier commented Jan 14, 2026

Is the intent to silently continue after a single transaction failure? Users won't see any error indication until all transactions finish.

I tested this with the consuming note which handles the error state correctly for other than that

I think dapps which send custom transaction will show if transaction fails but we can incorporate something into the UI too. Like a continue other transactions button

@WiktorStarczewski
Copy link
Copy Markdown
Collaborator

Closing as superseded by #193, which rewrote GeneratingTransaction.tsx with a per-stage progress model. The error-gating bug this PR fixed (error icon showing before transactionComplete) no longer applies — the component now uses hasErrors + failedCount driven by getFailedTransactions() polling and correctly gates the failure icon on transactionComplete && hasErrors. The MAX_WAIT_BEFORE_CANCEL change is also no longer relevant: main now has a mobile/desktop split (2min / 30min) in seconds rather than ms.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants