You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
Repository navigation
[Due for payment 2026-03-24] Add reasonAttributes to ActivityIndicator usage sites #83394
As part of #81683, we need to add reasonAttributes to all skeleton components so that Sentry spans carry structured metadata about why a loading indicator is visible. This helps engineers debug infinite skeleton loading states.
Solution
Add reasonAttributes to all usage sites of ActivityIndicator (src/components/ActivityIndicator.tsx).
At each usage site:
Pass a reasonAttributes prop with a context string identifying the parent component (e.g. 'ParentComponent.ChildComponent')
Include relevant boolean state variables that determine the loading state (e.g. isLoading, isImageLoaded, isDownloading)
👋 I checked out sosek108's comment asking for a split. Here's a proposed breakdown of the remaining 51 files that need reasonAttributes added to ActivityIndicator, organized into 7 PRs by domain:
PR 1: Core Shared Components (~11 files)
src/components/FullscreenLoadingIndicator.tsx(has reasonAttributes prop but doesn't forward it to <ActivityIndicator> — needs fix)
8 files already have reasonAttributes properly wired (from PR #82927 and others) and are excluded from this split
FullscreenLoadingIndicator.tsx (PR 1) already accepts reasonAttributes and calls useSkeletonSpan, but doesn't forward it to the inner <ActivityIndicator> — this should be fixed
PRs are grouped by domain so reviewers can focus on one area at a time, and each PR is independently mergeable
Activity
sosek108 commentedon Feb 25, 2026
@MelvinBot There are plenty of files to refactor in this issue. Propose a split so these can be done in smaller chunks in multiple PRs
youssef-lr commentedon Feb 26, 2026
@MelvinBot can you check the comment above
MelvinBot commentedon Feb 26, 2026
👋 I checked out
sosek108's comment asking for a split. Here's a proposed breakdown of the remaining 51 files that needreasonAttributesadded toActivityIndicator, organized into 7 PRs by domain:PR 1: Core Shared Components (~11 files)
src/components/FullscreenLoadingIndicator.tsx(hasreasonAttributesprop but doesn't forward it to<ActivityIndicator>— needs fix)src/components/Button/index.tsxsrc/components/MenuItem.tsxsrc/components/AddressSearch/index.tsx(2 usages)src/components/AddPlaidBankAccount.tsxsrc/components/PlaidLink/index.tsxsrc/components/MapView/MapView.website.tsxsrc/components/AddToWalletButton/index.native.tsxsrc/components/MoneyReportHeader.tsxsrc/components/Domain/CopyableTextField.tsxsrc/components/SidePanel/HelpComponents/HelpContent.tsxPR 2: Charts & Data Visualization (6 files)
src/components/Charts/BarChart/index.tsxsrc/components/Charts/BarChart/BarChartContent.tsxsrc/components/Charts/LineChart/index.tsxsrc/components/Charts/LineChart/LineChartContent.tsxsrc/components/Charts/PieChart/index.tsxsrc/components/Charts/PieChart/PieChartContent.tsxPR 3: Report Actions, Text Input & Attachment Components (6 files)
src/components/ReportActionItem/MoneyReportView.tsxsrc/components/ReportActionItem/MoneyRequestReportPreview/MoneyRequestReportPreviewContent.tsxsrc/components/TextInput/BaseTextInput/implementation/index.tsxsrc/components/TextInput/BaseTextInput/implementation/index.native.tsxsrc/components/Attachments/AttachmentView/DefaultAttachmentView/index.tsxsrc/components/SelectionListWithSections/Search/TransactionGroupListExpanded.tsxPR 4: Workspace Settings Pages (10 files)
src/pages/workspace/categories/WorkspaceCategoriesPage.tsxsrc/pages/workspace/tags/WorkspaceTagsPage.tsxsrc/pages/workspace/tags/WorkspaceViewTagsPage.tsxsrc/pages/workspace/taxes/WorkspaceTaxesPage.tsxsrc/pages/workspace/distanceRates/PolicyDistanceRatesPage.tsxsrc/pages/workspace/perDiem/WorkspacePerDiemPage.tsxsrc/pages/workspace/reports/WorkspaceReportsPage.tsxsrc/pages/workspace/accounting/PolicyAccountingPage.tsxsrc/pages/workspace/accounting/qbd/QuickBooksDesktopSetupPage.tsxsrc/pages/workspace/rules/MerchantRules/PreviewMatchesPage.tsxPR 5: Workspace Company Cards (5 files)
src/pages/workspace/companyCards/addNew/PlaidConnectionStep.tsxsrc/pages/workspace/companyCards/BankConnection/index.tsxsrc/pages/workspace/companyCards/BankConnection/index.native.tsxsrc/pages/workspace/companyCards/assignCard/TransactionStartDateStep.tsxsrc/pages/workspace/companyCards/WorkspaceCompanyCardDetailsPage.tsxPR 6: IOU Request Steps (5 files)
src/pages/iou/request/step/IOURequestStepCategory.tsxsrc/pages/iou/request/step/IOURequestStepDestination.tsxsrc/pages/iou/request/step/IOURequestStepScan/index.tsxsrc/pages/iou/request/step/IOURequestStepScan/index.native.tsxsrc/pages/iou/request/step/IOURequestStepOdometerImage/index.native.tsxPR 7: Settings & Remaining Pages (8 files)
src/pages/settings/Profile/ProfilePage.tsxsrc/pages/settings/Wallet/WalletPage/index.tsxsrc/pages/settings/Wallet/PersonalCardDetailsHeaderMenu.tsxsrc/pages/settings/Security/TwoFactorAuth/CopyCodesPage.tsxsrc/pages/settings/Subscription/SubscriptionPlan/SubscriptionPlanCard.tsxsrc/pages/settings/Rules/ExpenseRulesPage.tsxsrc/pages/ReimbursementAccount/NonUSD/BankInfo/subSteps/BankAccountDetails.tsxsrc/pages/ReimbursementAccount/NonUSD/BankInfo/subSteps/Confirmation.tsxsrc/pages/inbox/report/ListBoundaryLoader.tsxsrc/pages/home/ForYouSection/index.tsxsrc/pages/domain/Saml/SamlConfigurationDetailsSectionContent.tsxNotes:
reasonAttributesproperly wired (from PR #82927 and others) and are excluded from this splitFullscreenLoadingIndicator.tsx(PR 1) already acceptsreasonAttributesand callsuseSkeletonSpan, but doesn't forward it to the inner<ActivityIndicator>— this should be fixedmelvin-bot commentedon Mar 6, 2026
@sosek108 Whoops! This issue is 2 days overdue. Let's get this updated quick!
melvin-bot commentedon Mar 9, 2026
@sosek108 6 days overdue. This is scarier than being forced to listen to Vogon poetry!
melvin-bot commentedon Mar 11, 2026
@sosek108 8 days overdue is a lot. Should this be a Weekly issue? If so, feel free to change it!
melvin-bot commentedon Mar 11, 2026
@sosek108 8 days overdue is a lot. Should this be a Weekly issue? If so, feel free to change it!
30 remaining items
garrettmknight commentedon Mar 25, 2026
$75 approved for @huult
mallenexpensify commentedon Mar 26, 2026
Payment Summary
@mkhutornyi due $75 via NewDot
@hungvu193 due $225 via NewDot
@ShridharGoel due $150 via NewDot
@ChavdaSachin paid $75 via Upwork
@Pujan92 due $75 via NewDot
@jayeshmangwani due $150 via NewDot
@hoangzinh due $150 via NewDot
@situchan , paid ($150 total for the two), summary updated above
@ChavdaSachin can you please accept the job below? Please reply here and tag me once you have.
https://www.upwork.com/jobs/~022036210496494018237
mallenexpensify commentedon Mar 26, 2026
@ChavdaSachin paid, summary updated above. Thx y'all. Closing. If a payment got missed, ping me in Slack with a link to this issue.
twisterdotcom commentedon Mar 26, 2026
@hungvu193 has submitted payment for this report on ND here.
SO: https://stackoverflowteams.com/c/expensify/questions/7582
Zapier Logs
Run ID: 00040eee-ca66-a9d9-c7f0-e6c158fd9794mallenexpensify commentedon Mar 27, 2026
@hoangzinh paid, summary updated above. Sorry I missed ya.
trjExpensify commentedon Mar 30, 2026
approved $150 for @jayeshmangwani
garrettmknight commentedon Mar 31, 2026
$150 approved for @hoangzinh
quinthar commentedon Apr 4, 2026
Approved $75 to @mkhutornyi
JmillsExpensify commentedon Apr 6, 2026
$150 approved for @ShridharGoel
mananjadhav commentedon Apr 13, 2026
@mallenexpensify I missed commenting here.
I reviewed 2 PRs here #84721 and #84398
mallenexpensify commentedon Apr 13, 2026
Payment Summary
Contributor+: @mananjadhav due $225 via NewDot
mananjadhav commentedon Apr 13, 2026
@mallenexpensify Missed this one too #83684
mallenexpensify commentedon Apr 13, 2026
Updated payment summary @mananjadhav
mananjadhav commentedon Apr 13, 2026
Thanks @mallenexpensify