fix(confluence): retry transient attachment metadata 500s and skip a failing parent instead of aborting the sync - #8443
Conversation
…failing parent instead of aborting the sync
|
The latest updates on your projects. Learn more about Vercel for GitHub. |
|
… scopes, including attachments
|
@cubic-dev-ai review this PR |
@waleedlatif1 I have started the AI code review. It will take a few minutes to complete. |
There was a problem hiding this comment.
All reported issues were addressed across 3 files
Reply with feedback, questions, or to request a fix.
Fix all with cubic | Re-trigger cubic
|
@cubic-dev-ai review this PR |
@waleedlatif1 I have started the AI code review. It will take a few minutes to complete. |
|
@cubic-dev-ai review this PR |
@waleedlatif1 I have started the AI code review. It will take a few minutes to complete. |
Summary
fetcher+retryConditionhooks (same pattern as Coda / Google Workspace), scoped to the Confluence connector; sharedisRetryableErroris unchangedatl-traceid/x-arequestidresponse headers for every 5xx attempt so failures can be traced with Atlassian support; the error body is never read or logged, so a stalled body cannot consume the retry budgetprovider_unavailable), so sync diagnostics classify them instead of reporting none; the error message is unchangedconfluenceConnectorMeta.serviceAccountScopes, includingread:attachment:confluence, and how to replace a token that is missing scopesType of Change
Testing
connectors/confluence/attachments.test.ts: transient 500 retried (including one whose body never finishes), isolated persistent failures skipped with deletions held, consecutive 500/503 fail the sync, trace ids logged but never the bodyconnectors/confluence/+lib/knowledge/connectors/suites,bun run type-check,bun run lint,bun run check:audits,docs-manifest:checkChecklist
test-auditauthoring gate)