Repository navigation
[Payment due @ahmedGaber93] [No QA] Fix the broken distance rates link in the Distance Expenses help article - #104781
Conversation
Co-authored-by: ahmedGaber93 <ahmedGaber93@users.noreply.github.com>
|
I created this PR from an upstream branch since I don't have push access to your fork. To take ownership of this branch and be able to push updates, run: Then you can close this PR and open a new one from your fork. |
This comment has been minimized.
This comment has been minimized.
|
@MelvinBot could you please implement this changes here #104699 (comment)? |
…requirement Co-authored-by: ahmedGaber93 <ahmedGaber93@users.noreply.github.com>
|
I updated the help site so each feature in the October product marketing window has its own section to link to. Commit: 856176f Member window ("Jump straight to your frequent trips and fix a trip’s stop location without starting over"): Admin window ("Mileage rates that keep themselves current, plus total control over how trips get logged"):
These links work once this PR is deployed. Until then, check the help preview that OSBotify posts on this PR. What changedDistance Expenses article:
Set Distance Rates article:
The app has no separate toggles for Map, Manual, Odometer, and GPS. It has one toggle, Require GPS or map entry, that turns off manual and odometer entry. The docs describe only that toggle. Checks: To link straight to a section, the "Learn more" URLs in Show the October 2026 mileage product marketing window with admin and member variants need to change. Each variant has one button, so pick one anchor per variant. Tell me which ones you want and I'll update that PR. |
This comment has been minimized.
This comment has been minimized.
|
@MelvinBot Mark all author checklist checked |
|
@MelvinBot Mark this PR ready for review |
|
I checked all 36 boxes in the PR Author Checklist. Nothing else in the PR description changed. The checklist now says tests were run on all platforms and screenshots were added. The Tests, QA Steps, and Screenshots/Videos sections are still empty, so you need to fill them in yourself. |
|
This PR is now marked ready for review. Before review, the human co-author still needs to fill out the Tests, Offline tests, and QA Steps sections and the author checklist in the PR description. |
Product reviewer checklist:
For more detailed instructions on completing this checklist, see How do I review a HelpDot PR? cc @heyjennahay |
Codex Review SummaryThis comment shows the latest Codex review activity on this pull request.
ℹ️ About Codex in GitHubYour team has set up Codex to review pull requests in this repo. Reviews are triggered when you
Codex reacts with 👀 while any review is running, comments if it has suggestions, and reacts with 👍 once all reviews finish with no findings. |
|
@heyjennahay Please copy/paste the Reviewer Checklist from here into a new comment on this PR and complete it. If you have the K2 extension, you can simply click: [this button] |
| [Learn how to manage distance rates as a Workspace Admin](/articles/new-expensify/reports-and-expenses/Managing-Distance-Rates) | ||
| [Learn how to manage distance rates as a Workspace Admin](/articles/new-expensify/workspaces/Set-distance-rates) | ||
|
|
||
| ### Distance rates that keep themselves current |
There was a problem hiding this comment.
Heading hierarchy violation (HELP_AUTHORING_GUIDELINES.md §4 and §9): Only # and ## are allowed — no ### or deeper. This ### Distance rates that keep themselves current is also a topic/noun-only heading, not task-based. Change to a ## task-based heading, e.g. ## How distance rates stay current automatically.
There was a problem hiding this comment.
Fixed in 9573226. The subsection is now its own ## How distance rates stay current automatically section. I placed it after the reimbursement rates section so the ### subsections there stay together.
|
|
||
| [Learn how to manage distance rates as a Workspace Admin](/articles/new-expensify/reports-and-expenses/Managing-Distance-Rates) | ||
| [Learn how to manage distance rates as a Workspace Admin](/articles/new-expensify/workspaces/Set-distance-rates) | ||
|
|
There was a problem hiding this comment.
Role capitalization (HELPSITE_NAMING_CONVENTIONS.md — Roles): Lowercase roles in running text unless quoting a UI label. Change "Workspace Admin" to "workspace admin": [Learn how to manage distance rates as a workspace admin](...).
There was a problem hiding this comment.
Fixed in 9573226. The link now reads "Learn how to manage distance rates as a workspace admin".
|
|
||
| ### Distance rates that keep themselves current | ||
|
|
||
| Workspace Admins can enable **Auto-update government rate** so the workspace's mileage rate stays current. When a supported government publishes a new rate, such as the IRS standard mileage rate, Expensify adds it to the workspace with the date it takes effect. Your Distance expenses then use the rate that matches the expense date, with no manual updates needed. |
There was a problem hiding this comment.
Role capitalization (HELPSITE_NAMING_CONVENTIONS.md — Roles): "Workspace Admins" should be lowercase in running text: "Workspace admins can enable..." → "Workspace admins" at the start of a sentence is fine, but mid-sentence use lowercase "workspace admins". Here it begins the sentence, so "Workspace admins" is acceptable capitalization only for the first letter — do not capitalize "Admins". Use "Workspace admins can enable Auto-update government rate...".
There was a problem hiding this comment.
Fixed in 9573226. The sentence now reads "On Control workspaces, workspace admins can enable Auto-update government rate…".
|
|
||
| ## Why can't I select Manual or Odometer when creating a Distance expense? | ||
|
|
||
| A Workspace Admin has enabled **Require GPS or map entry** on the workspace. Manual and odometer entry are turned off, so only **Map** and **GPS** appear. Distance expenses you track in Your space aren't affected. |
There was a problem hiding this comment.
Role capitalization (HELPSITE_NAMING_CONVENTIONS.md — Roles): Lowercase roles in running text. Change "A Workspace Admin has enabled..." to "A workspace admin has enabled...".
There was a problem hiding this comment.
This was already fixed in an earlier commit. The FAQ now reads "A workspace admin has turned off manual and odometer entry…", so no further change was needed.
HelpDot Documentation ReviewOverall AssessmentThis PR fixes a broken cross-link in Distance-Expenses.md (repointing Managing-Distance-Rates to the existing Set-distance-rates article) and adds new task content to both Distance-Expenses.md and Set-distance-rates.md covering reusing routes, fixing a single stop, auto-updating government rates, and requiring GPS or map entry. The additions are generally well-structured, search-oriented, and the metadata updates (keywords plus internalScope) are strong. A few governance issues in the diff should be addressed before merge, most notably an H3 heading and inconsistent role/generic-term casing. Scores Summary
Key Findings
Recommendations
Files Reviewed
Note: Detailed line-by-line feedback has been provided as inline comments. |
There was a problem hiding this comment.
💡 Codex Review
Here are some automated review suggestions for this pull request.
Reviewed commit: 856176f2c2
ℹ️ About Codex in GitHub
Codex has been enabled to automatically review pull requests in this repo. Reviews are triggered when you
- Open a pull request for review
- Mark a draft as ready
- Comment "@codex review".
If Codex has suggestions, it will comment; otherwise it will react with 👍.
When you sign up for Codex through ChatGPT, Codex can also answer questions or update the PR, like "@codex address that feedback".
|
|
||
| ## Why can't I select Manual or Odometer when creating a Distance expense? | ||
|
|
||
| A Workspace Admin has enabled **Require GPS or map entry** on the workspace. Manual and odometer entry are turned off, so only **Map** and **GPS** appear. Distance expenses you track in Your space aren't affected. |
There was a problem hiding this comment.
Include commuter exclusions in the missing-tabs explanation
When a workspace has commuter exclusions configured while requireMapOrGPS is false, the Manual and Odometer tabs are still hidden: isMapOrGPSRequired() explicitly returns true for either condition. This FAQ incorrectly attributes the missing tabs solely to an admin enabling Require GPS or map entry, which can send affected users looking for a setting that is off or locked; mention commuter exclusions as the other cause.
Useful? React with 👍 / 👎.
There was a problem hiding this comment.
I added commuter exclusions to both articles. Commit: 4a5c584
- Distance Expenses FAQ: Manual and Odometer are hidden when Require GPS or map entry or Exclude commutes is on. I also lowercased "workspace admin" in that answer.
- Set Distance Rates: Exclude commutes also requires GPS or map entry. While it's on, Require GPS or map entry stays on and locked. To turn that toggle off, first set Exclude commutes to Do not exclude commute.
This matches the code: isMapOrGPSRequired() returns true when either setting is on (PolicyDistanceRatesUtils.ts:556-562).
Exclude commutes is still behind the commuterExclusions beta, so most workspaces won't see it yet.
npm run spell-changed passed on both articles.
|
|
||
| ### Distance rates that keep themselves current | ||
|
|
||
| Workspace Admins can enable **Auto-update government rate** so the workspace's mileage rate stays current. When a supported government publishes a new rate, such as the IRS standard mileage rate, Expensify adds it to the workspace with the date it takes effect. Your Distance expenses then use the rate that matches the expense date, with no manual updates needed. |
There was a problem hiding this comment.
Limit the auto-update claim to Control workspaces
For an admin on a non-Control workspace, enabling this toggle does not activate automatic rates: toggleAutoUpdateGovernmentRate() redirects them to the upgrade flow, and the linked article itself states that the feature is available only for Control workspaces. Qualify this new summary accordingly so Collect workspace admins are not told they can enable a feature their plan does not provide.
Useful? React with 👍 / 👎.
There was a problem hiding this comment.
@MelvinBot Limit the auto-update claim to Control workspaces.
There was a problem hiding this comment.
The auto-update summary now applies only to Control workspaces. It reads: "On Control workspaces, Workspace Admins can enable Auto-update government rate…" Commit: 2ca4565
npm run spell-changed passed on the article.
Co-authored-by: ahmedGaber93 <ahmedGaber93@users.noreply.github.com>
This comment has been minimized.
This comment has been minimized.
Co-authored-by: ahmedGaber93 <ahmedGaber93@users.noreply.github.com>
This comment has been minimized.
This comment has been minimized.
|
@MelvinBot please address these four review comments from github-actions. They look reasonable. #104781 (comment) |
…admin roles Co-authored-by: ahmedGaber93 <ahmedGaber93@users.noreply.github.com>
|
I addressed all four review comments in 9573226 and replied in each thread.
The docs routes check and the spell check passed. |
|
A preview of your ExpensifyHelp changes have been deployed to https://06fa7b3a.helpdot.pages.dev ⚡️ Updated articles: |
|
🎯 @ahmedGaber93, thanks for reviewing and testing this PR! 🎉 A payment issue will be created for your review once this PR is deployed to production. If payment is not needed (e.g., regression PR review fix etc), react with 👎 to this comment to prevent the payment issue from being created. |
|
@stephanieelliott kindly bump for review. we need those links before shipping #104699 CC @neil-marcellini |
|
🚀 Deployed to staging by https://github.com/stephanieelliott in version: 9.5.21-0 🚀
|
|
🚀 Deployed to staging by https://github.com/stephanieelliott in version: 9.5.23-0 🚀
|
|
🚀 Deployed to production by https://github.com/jasperhuangg in version: 9.5.23-3 🚀
Bundle Size Analysis (Sentry): |
Explanation of Change
Fixes a broken link in the Distance Expenses help article.
Learn how to manage distance rates as a Workspace Admin pointed to
/articles/new-expensify/reports-and-expenses/Managing-Distance-Rates. That article doesn't exist, so the link returned a 404, anddocs/redirects.csvhas no redirect for it. This PR points the link at the existing admin article, Set Distance Rates, which returns 200.The broken link was found while testing the October 2026 product marketing window, whose Learn more button opens the Distance Expenses article (source comment).
AI tests run locally
Fixed Issues
$
PROPOSAL:
Tests
// TODO: The human co-author must fill out the tests you ran before marking this PR as "ready for review"
// Please describe what tests you performed that validates your changed worked.
Offline tests
QA Steps
// TODO: The human co-author must fill out the QA tests you ran before marking this PR as "ready for review".
// Please describe what QA needs to do to validate your changes and what areas do they need to test for regressions.
PR Author Checklist
### Fixed Issuessection aboveTestssectionOffline stepssectionQA stepssectionAvatar, I verified the components usingAvatarare working as expected)npm run compress-svg)Avataris modified, I verified thatAvataris working as expected in all cases)Designlabel and/or tagged@Expensify/designso the design team can review the changes.mainbranch was merged into this PR after a review, I tested again and verified the outcome was still expected according to theTeststeps.Screenshots/Videos
Android: Native
Android: mWeb Chrome
iOS: Native
iOS: mWeb Safari
MacOS: Chrome / Safari