9.4.99-2
Expensify/App9.4.99-2Sep 30, 2026by github-actions[bot]
Upgrading?
AI Summary
This release prioritizes web performance improvements using React Compiler and Brotli compression, alongside data integrity fixes for accounting integrations and transaction utilities.
Key Highlights
- Web Performance: Uses OXC React Compiler for Jest and compresses web bundles with Brotli.
- Accounting: Added XERO45 export error article and Auto-categorize new expenses workspace setting.
- Refactoring: Moved transaction utility functions out of TransactionUtils/index.ts.
- Data Integrity: Fixed bulk-edit tag deselect clearing untouched tag levels and added lock icons for GL codes.
New Features
- Show Reject action to workspace admins, not just the report manager.
- Add Sign out escape hatch to required 2FA overlay.
- Add Auto-categorize new expenses workspace setting to let strict admins disable auto-categorization.
- Use floating RHP style on web.
Full Release Notes
## What's Changed * [No QA] Update help docs for Release 1: Greenhouse and Classic Parity by @MelvinBot in https://github.com/Expensify/App/pull/102428 * [No QA] Add XERO45 export error article by @jjcoffee in https://github.com/Expensify/App/pull/102255 * [No QA] Update PERFORMANCE.md by @mallenexpensify in https://github.com/Expensify/App/pull/102450 * Hide Request limit increase from admins when the settlement account is connected with Plaid by @allgandalf in https://github.com/Expensify/App/pull/101657 * Update websocket-driver to 0.7.5 by @MelvinBot in https://github.com/Expensify/App/pull/102417 * [No QA] Docs updates for E/A#101080 clarify distance rate behavior when moving expenses between workspaces by @MelvinBot in https://github.com/Expensify/App/pull/101619 * [No QA] Add files via upload by @stephanieelliott in https://github.com/Expensify/App/pull/102499 * [Refactor] Move buildOptimisticTransaction and getUpdatedTransaction out of TransactionUtils/index.ts by @MelvinBot in https://github.com/Expensify/App/pull/102398 * [No QA] Normalize detected timezone before returning it by @iwiznia in https://github.com/Expensify/App/pull/102439 * Docs updates for E/A#102019 USD beneficial owners enter last four SSN digits by @MelvinBot in https://github.com/Expensify/App/pull/102301 * [No QA] Add DynamicReportDetailsPage perf test by @sosek108 in https://github.com/Expensify/App/pull/102401 * [Payment due @brunovjk] Fix empty notification preferences in admin rooms by @fedirjh in https://github.com/Expensify/App/pull/101664 * [No QA] Docs updates for E/A#102242 Add Tag column to personal card spreadsheet import by @MelvinBot in https://github.com/Expensify/App/pull/102465 * feat: use floating RHP style on web by @BartekObudzinski in https://github.com/Expensify/App/pull/101093 * `MenuItem` decomposition - html value by @war-in in https://github.com/Expensify/App/pull/102170 * [No QA] Rename title from 'Expensify Help' to 'ExpensifyHelp' by @stephanieelliott in https://github.com/Expensify/App/pull/102497 * Keep table search and filters fixed while columns scroll horizontally by @war-in in https://github.com/Expensify/App/pull/101564 * [No QA] Use the OXC React Compiler for Jest by @elirangoshen in https://github.com/Expensify/App/pull/102081 * [Payment due @mkhutornyi] Tell non-Control workspaces that auto-pay approved reports requires the Control plan by @NicolasBonet in https://github.com/Expensify/App/pull/102338 * Queue CompleteGuidedSetup when offline during web onboarding by @MelvinBot in https://github.com/Expensify/App/pull/102344 * [Payment due @hoangzinh] Handle Default workflow changes correctly by @Gonals in https://github.com/Expensify/App/pull/102189 * Group agent rule suggestions under collapsible help-article sections by @yuwenmemon in https://github.com/Expensify/App/pull/102244 * fix Onboarding - Accounting tiles show 1 column after rotating to portrait by @mkhutornyi in https://github.com/Expensify/App/pull/102486 * Add a server selection page (part 2/5) by @sharabai in https://github.com/Expensify/App/pull/100209 * Update the global RBR and GBR text colors by @marufsharifi in https://github.com/Expensify/App/pull/101735 * refactor: extract transaction selection and pending expense hooks, finish wiring by @sosek108 in https://github.com/Expensify/App/pull/101202 * Stop Search from firing twice on cached revisit by @TMisiukiewicz in https://github.com/Expensify/App/pull/102409 * [Payment due @huult] Display SearchForReports results in proper tiers order by @carlosmiceli in https://github.com/Expensify/App/pull/94362 * fix: show lock icon on tag GL code field when connected to accounting by @neerajbachani in https://github.com/Expensify/App/pull/102501 * Remove TranslateLocal in `src/libs/OptionsListUtils/searchMatchUtils.ts` by @parasharrajat in https://github.com/Expensify/App/pull/102362 * [Payment due @truph01] Add Auto-categorize new expenses workspace setting to let strict admins disable auto-categorization" by @dukenv0307 in https://github.com/Expensify/App/pull/100248 * [No QA] Fix SearchAutocompleteList typecheck after merge race by @carlosmiceli in https://github.com/Expensify/App/pull/102567 * Show Reject action to workspace admins, not just the report manager by @dukenv0307 in https://github.com/Expensify/App/pull/101503 * Add Sign out escape hatch to required 2FA overlay by @neerajbachani in https://github.com/Expensify/App/pull/100077 * Fix bulk-edit tag deselect clearing untouched tag levels by @dilshodmackbook-sketch in https://github.com/Expensify/App/pull/101460 * [Payment due @eh2077] Properly add members back to default workflow when removed from other workflows by @Gonals in https://github.com/Expensify/App/pull/102527 * Gate the Search optimistic watch key on a pending write by @mukhrr in https://github.com/Expensify/App/pull/102505 * Remove unsafe assertions from useGeographicalStateAndCountryFromRoute by @KJ21-ENG in https://github.com/Expensify/App/pull/100001 * [No QA] Compress web bundles with Brotli by @collectioneur in https://github.com/Expensify/App/pull/101730 * refactor: remove unsafe assertions from deployment tooling, Airship mocks, and FlatList by @KJ21-ENG in https://github.com/Expensify/App/pull/98877 * Show a reconnect warning when the QBO refresh token is about to expire by @KioCoan in https://github.com/Expensify/App/pull/101273 * [No QA] Update ChatGPT MCP help article to say plugin instead of connector by @MelvinBot in https://github.com/Expensify/App/pull/102449 * [No QA] Docs updates for E/A#99516 Book travel now available from Search by @MelvinBot in https://github.com/Expensify/App/pull/100223 * [cp staging] Fix bulk action bar blocker by @JS00001 in https://github.com/Expensify/App/pull/102582 * Resolve the member's own policy role when checking room member removal by @MelvinBot in https://github.com/Expensify/App/pull/101643 * Refresh Home data with OpenHomePage by @blimpich in https://github.com/Expensify/App/pull/102341 * Expense - Scan and per diem confirm page does not use dropdown-style rows by @thelullabyy in https://github.com/Expensify/App/pull/102580 * Move pre-selected item to top on Workflows pickers (day-of-month & payer) by @marufsharifi in https://github.com/Expensify/App/pull/101313 * [No QA] Align Greenhouse help article with HelpDot authoring rules by @MelvinBot in https://github.com/Expensify/App/pull/102536 * Revert "[Payment due @Krishna2323] Add NetSuite split exports by posting period toggle" by @Julesssss in https://github.com/Expensify/App/pull/102588 **Full Changelog**: https://github.com/Expensify/App/compare/9.4.98-0...9.4.99-2
Related Repositories
openclaw/openclaw★ 392,714
The AI that really does things. Any OS. Any Platform. The lobster way. 🦞
nilbuild/developer-roadmap★ 370,084
Interactive roadmaps, guides and other educational content to help developers grow in their careers.
morluto/rea★ 359,101
Reverse engineer anything with agents, from app behavior down to native binaries.
anomalyco/opencode★ 219,792
The open source coding agent.
n8n-io/n8n★ 208,269
Fair-code workflow automation platform with native AI capabilities. Combine visual building with custom code, self-host or cloud, 400+ integrations.