Skip to content

[No QA] Update help docs for Release 1: Date-based mileage rates#94257

Merged
VictoriaExpensify merged 4 commits into
mainfrom
claude-dateBasedMileageRatesR1
Jul 9, 2026
Merged

[No QA] Update help docs for Release 1: Date-based mileage rates#94257
VictoriaExpensify merged 4 commits into
mainfrom
claude-dateBasedMileageRatesR1

Conversation

@MelvinBot

Copy link
Copy Markdown
Contributor

Explanation of Change

Help site updates for Release 1: Date-based mileage rates of the Date-bound mileage rates project. Release 1 lets admins set optional start/end dates on distance rates so Expensify automatically applies the rate matching an expense's date, and flags a violation when a manually selected rate doesn't match.

This PR documents that behavior in the two relevant New Expensify help articles:

  • docs/articles/new-expensify/workspaces/Set-distance-rates.md (admin-facing)
    • Added an optional Start date / End date step when adding a rate.
    • Added a step to update effective dates when editing a rate.
    • Added a new section explaining how Expensify selects a rate when multiple rates exist, including the date-mismatch violation.
  • docs/articles/new-expensify/reports-and-expenses/Distance-Expenses.md (member-facing)
    • Noted that when a workspace has multiple dated rates, the rate matching the expense date is applied automatically.
    • Updated the "Can I update the Distance expense unit or rate?" FAQ to explain the date-mismatch violation.

Fixed Issues

$ https://github.com/Expensify/Expensify/issues/639702
PROPOSAL:

Tests

// TODO: The human co-author must fill out the tests you ran before marking this PR as "ready for review".
// This is a docs-only change. Please review the rendered help articles for accuracy against the current Expensify UI (exact field/label names, start/end date behavior, and violation wording).

  • Verify that no errors appear in the JS console

Offline tests

N/A — documentation-only change.

QA Steps

// TODO: The human co-author must fill out the QA tests you ran before marking this PR as "ready for review".

  • Verify that no errors appear in the JS console

PR Author Checklist

  • I linked the correct issue in the ### Fixed Issues section above
  • I wrote clear testing steps that cover the changes made in this PR
    • I added steps for local testing in the Tests section
    • I added steps for the expected offline behavior in the Offline steps section
    • I added steps for Staging and/or Production testing in the QA steps section
    • I added steps to cover failure scenarios (i.e. verify an input displays the correct error message if the entered data is not correct)
    • I turned off my network connection and tested it while offline to ensure it matches the expected behavior (i.e. verify the default avatar icon is displayed if app is offline)
    • I tested this PR with a High Traffic account against the staging or production API to ensure there are no regressions (e.g. long loading states that impact usability).
  • I included screenshots or videos for tests on all platforms
  • I ran the tests on all platforms & verified they passed on:
    • Android: Native
    • Android: mWeb Chrome
    • iOS: Native
    • iOS: mWeb Safari
    • MacOS: Chrome / Safari
  • I verified there are no console errors (if there's a console error not related to the PR, report it or open an issue for it to be fixed)
  • I followed proper code patterns (see Reviewing the code)
  • I verified that any copy / text that was added to the app is grammatically correct in English. It adheres to proper capitalization guidelines (note: only the first word of header/labels should be capitalized), and is either coming verbatim from figma or has been approved by marketing
  • I followed the guidelines as stated in the Review Guidelines
  • If the main branch was merged into this PR after a review, I tested again and verified the outcome was still expected according to the Test steps.

Screenshots/Videos

N/A — documentation-only change.

Co-authored-by: Stephanie Elliott <stephanieelliott@users.noreply.github.com>
@MelvinBot MelvinBot requested a review from a team June 23, 2026 02:59
@github-actions github-actions Bot changed the title Update help docs for Release 1: Date-based mileage rates [No QA] Update help docs for Release 1: Date-based mileage rates Jun 23, 2026
@OSBotify

This comment has been minimized.

@stephanieelliott stephanieelliott added the HelpDot Apply this label if the issue relates to ExpensifyHelp label Jun 23, 2026
@stephanieelliott stephanieelliott changed the title [No QA] Update help docs for Release 1: Date-based mileage rates [No QA] [Hold for feature] Update help docs for Release 1: Date-based mileage rates Jun 29, 2026
@stephanieelliott

Copy link
Copy Markdown
Contributor

Content was drafted based on the design doc - will test this and take off hold once the feature hits staging.

@JmillsExpensify JmillsExpensify left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

Nice, thank you! Both look great to me.

@stephanieelliott stephanieelliott marked this pull request as ready for review July 9, 2026 01:59
@stephanieelliott stephanieelliott self-requested a review as a code owner July 9, 2026 01:59
@melvin-bot

melvin-bot Bot commented Jul 9, 2026

Copy link
Copy Markdown

Concierge reviewer checklist:

  • I have verified the accuracy of the article
    • The article is within a hub that makes sense, and the navigation is correct
    • All processes, screenshots, and examples align with current product behavior.
    • All links within the doc have been verified for correct destination and functionality.
  • I have verified the readability of the article
    • The article's language is clear, concise, and free of jargon.
    • The grammar, spelling, and punctuation are correct.
    • The article contains at least one image, or that an image is not necessary
  • I have verified the formatting of the article
    • The article has consistent formatting (headings, bullet points, etc.) with other HelpDot articles and that aligns with the HelpDot formatting standards.
    • The article has proper text spacing and breaks for readability.
  • I have verified the article has the appropriate tone and style
    • The article's tone is professional, friendly, and suitable for the target audience.
    • The article's tone, terminology, and voice are consistent throughout.
  • I have verified the overall quality of the article
    • The article is not missing any information, nor does it contain redundant information.
    • The article fully addresses user needs.
  • I have verified that all requested improvements have been addressed

For more detailed instructions on completing this checklist, see How do I review a HelpDot PR as a Concierge Team member?

cc @Kel-Expensify

@melvin-bot melvin-bot Bot requested review from Kel-Expensify and removed request for a team July 9, 2026 01:59
@melvin-bot

melvin-bot Bot commented Jul 9, 2026

Copy link
Copy Markdown

@Kel-Expensify 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]


---

# How Expensify Selects a Rate When Multiple Rates Exist

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

Structure violation (multiple # headings): Per HELP_AUTHORING_GUIDELINES.md Section 4, an article may have exactly one # heading (the title), plus an optional # FAQ — no other # headings. This adds a second # section heading. Demote it to ## (e.g. ## How Expensify selects a rate when multiple rates exist).

Heading case/task-based violation: Headings must use sentence case and be task-based. Use ## How Expensify selects a rate when multiple rates exist instead of Title Case.

@github-actions

github-actions Bot commented Jul 9, 2026

Copy link
Copy Markdown
Contributor

HelpDot Documentation Review

Overall Assessment

This PR documents Release 1 of date-based mileage rates across two New Expensify articles: Set-distance-rates.md (admin) and Distance-Expenses.md (member). The added copy is accurate, benefit-focused, and clearly explains the new Start date/End date behavior and the informational date-mismatch violation. The prose quality is strong, but one structural rule in the admin article needs correction before merge.

Scores Summary

  • Readability: 9/10 - Added sentences are clear, concise, and scannable. Steps are sequential and action-oriented. The "This is informational and does not block submission" clarification is a nice touch that pre-empts user confusion.
  • AI Readiness: 6/10 - Added copy uses full feature names and realistic search phrasing, but the new admin section is introduced as a second # (H1) heading (# How Expensify Selects a Rate When Multiple Rates Exist). Per HELP_AUTHORING_GUIDELINES.md Section 4, an article may contain exactly one # title plus an optional # FAQ and nothing else — all other sections must be ##. This must be demoted to ##.
  • Style Compliance: 8/10 - Button/field names (Add Rate, Save, Delete, Start date, End date) are correctly bolded and match sentence case. The new H1 uses Title Case (How Expensify Selects a Rate When Multiple Rates Exist), which is inconsistent with the task-based sentence-style headings used elsewhere in the file (e.g., ## How to add Distance rates).

Key Findings

  • Must fix: The new admin section # How Expensify Selects a Rate When Multiple Rates Exist is a second H1. Demote it to ## How Expensify selects a rate when multiple rates exist and drop the --- horizontal rule above it (the single-H1 rule is the primary violation). Update the in-article anchor link accordingly.
  • Positive: Both additions correctly reuse the exact UI labels Start date / End date and consistently frame the violation as informational and non-blocking, which matches the described product behavior.
  • Positive: The member-facing FAQ update and the admin cross-reference are well scoped and reinforce the primary workflow without over-linking.
  • Minor: Heading casing — align the new heading to sentence case to match the rest of the article and the naming conventions.

Recommendations

  • Convert the new # heading to ## and rephrase to sentence case; verify the anchor #how-expensify-selects-a-rate-when-multiple-rates-exist still resolves after the change.
  • Optionally tighten the long member-facing bullet in Distance-Expenses.md (the sentence ending "...so you don't need to pick the right one manually") for parallel phrasing with the admin article.

Files Reviewed

  • docs/articles/new-expensify/workspaces/Set-distance-rates.md - Content accurate; needs the second-H1 fix and heading-casing correction.
  • docs/articles/new-expensify/reports-and-expenses/Distance-Expenses.md - Clean; additions comply with guidelines.

Note: Detailed line-by-line feedback has been provided as inline comments.

Comment thread docs/articles/new-expensify/workspaces/Set-distance-rates.md Outdated
Comment thread docs/articles/new-expensify/workspaces/Set-distance-rates.md Outdated

@chatgpt-codex-connector chatgpt-codex-connector Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

💡 Codex Review

Here are some automated review suggestions for this pull request.

Reviewed commit: 665fa80d7c

ℹ️ 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".

Comment thread docs/articles/new-expensify/workspaces/Set-distance-rates.md Outdated
@OSBotify

This comment has been minimized.

@OSBotify

This comment has been minimized.

Correct typo in 'distance' and update heading format.
@stephanieelliott stephanieelliott removed the request for review from Kel-Expensify July 9, 2026 02:20
@OSBotify

OSBotify commented Jul 9, 2026

Copy link
Copy Markdown
Contributor

A preview of your ExpensifyHelp changes have been deployed to https://08b1de25.helpdot.pages.dev ⚡️

Updated articles:

@MelvinBot

Copy link
Copy Markdown
Contributor Author

✅ All checks are now passing — the failure was transient and unrelated to this PR's changes.

What happened: The only failing check was validateSchemas. This PR is docs-only (it touches just Distance-Expenses.md and Set-distance-rates.md), so it changes no workflow or action files. The failure came from the check downloading the github-workflow.json JSON schema from schemastore.org and getting a corrupted/truncated response:

error: /tmp/.../github-workflow.json: Unexpected non-whitespace character after JSON at position 3 (line 1 column 4)
💥 Some actions and/or workflows are invalid

That's an environmental/network flake in the schema download step, not a problem with any file in the branch.

Resolution: A subsequent commit on the branch (9454f28) re-ran the check, which now passes. No code change was needed. The PR is green.

@stephanieelliott stephanieelliott changed the title [No QA] [Hold for feature] Update help docs for Release 1: Date-based mileage rates [No QA] Update help docs for Release 1: Date-based mileage rates Jul 9, 2026
@VictoriaExpensify VictoriaExpensify merged commit 86ac9fa into main Jul 9, 2026
16 checks passed
@VictoriaExpensify VictoriaExpensify deleted the claude-dateBasedMileageRatesR1 branch July 9, 2026 02:37
@OSBotify

OSBotify commented Jul 9, 2026

Copy link
Copy Markdown
Contributor

🚀 Deployed to staging by https://github.com/VictoriaExpensify in version: 9.4.32-0 🚀

platform result
🕸 web 🕸 success ✅
🤖 android 🤖 success ✅
🍎 iOS 🍎 success ✅

@OSBotify

Copy link
Copy Markdown
Contributor

🚀 Deployed to production by https://github.com/grgia in version: 9.4.32-3 🚀

platform result
🕸 web 🕸 success ✅
🤖 android 🤖 success ✅
🍎 iOS 🍎 success ✅

Bundle Size Analysis (Sentry):

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

Labels

HelpDot Apply this label if the issue relates to ExpensifyHelp

Projects

None yet

Development

Successfully merging this pull request may close these issues.

5 participants