Skip to content

[No QA] Docs updates for E/A#86864 Merchant Rule behavior when applied tag is deleted - #100743

Merged
stephanieelliott merged 1 commit into
mainfrom
claude/docsMerchantRuleDeletedTag
Sep 16, 2026
Merged

stephanieelliott merged 1 commit into
mainfrom
claude/docsMerchantRuleDeletedTag

Conversation

@MelvinBot

@MelvinBot MelvinBot commented Sep 9, 2026 •

Copy link
Copy Markdown
Contributor

Explanation of Change

Help site follow-up for #86864, which changed how a Merchant Rule behaves when the tag it applies is deleted from the workspace. After that PR, the rule keeps its stored tag value but the deleted tag is no longer shown in the rule summary or the rule edit page, and matching expenses no longer get a system message with an empty tag. That PR also filters the tag options in a rule so only tags valid under the already-selected parent levels are listed.

docs/articles/new-expensify/workspaces/Workspace-Merchant-Rules.md:

  • Added a behavior bullet under How Merchant Rules are applied: deleting a tag stops that one update, while the rule's other updates still apply.
  • Added the deleted tag to the list of reasons in Why didn't my Merchant Rule apply?.
  • Added the FAQ What happens to a Merchant Rule when the tag it applies is deleted?, covering what admins see in the rule summary and the rule's Tag field, and how to set a tag again.
  • Added the FAQ Why don't all of my tags appear when I select Tag in a Merchant Rule?, covering disabled tags and multi-level tag filtering.
  • Corrected the save step to the exact UI label, Save rule (the article had "Save Rule").
  • Added keywords for the deleted tag searches.

Written against docs/HELPSITE_NAMING_CONVENTIONS.md, docs/HELP_AUTHORING_GUIDELINES.md, and docs/TEMPLATE.md: one workflow per article, task-based ## headings, no new # headings, bolded UI labels in Sentence case, and a relative cross-link.

UI labels (Merchant section, Add merchant rule, Save rule, Tag) were checked against the strings in src/languages/en.ts.

Fixed Issues

$ #82690
PROPOSAL:

Docs follow-up for #86864.

Tests

This PR changes help site markdown only, with no product code changes, so there is nothing to test in the app. Verify the rendered article instead:

  1. Open the HelpDot preview link posted by OSBotify on this PR.
  2. Go to Merchant Rules and verify the article renders with no broken markdown, and that the table of contents lists the two new FAQ headings.
  3. Verify the new FAQ What happens to a Merchant Rule when the tag it applies is deleted? describes the behavior shipped in fix: System message with no tag is shown #86864.
  4. Verify the new FAQ Why don't all of my tags appear when I select Tag in a Merchant Rule? describes disabled tags and multi-level tag filtering.
  5. Verify the relative link in the deleted tag FAQ opens Create and manage expense tags.
  • Verify that no errors appear in the JS console

Offline tests

N/A - help site markdown only.

QA Steps

N/A - help site markdown only, so this PR is titled [No QA].

  • 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 comments were added to code that is not self explanatory
    • I verified that any new or modified comments were clear, correct English, and explained "why" the code was doing something instead of only explaining "what" the code was doing.
    • I verified 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 (in order to get marketing approval, ask the Bug Zero team member to add the Waiting for copy label to the issue)
  • If a new code pattern is added I verified it was agreed to be used by multiple Expensify engineers
  • I followed the guidelines as stated in the Review Guidelines
  • I tested other components that can be impacted by my changes (i.e. if the PR modifies a shared library or component like Avatar, I verified the components using Avatar are working as expected)
  • If a new CSS style is added I verified that:
    • A similar style doesn't already exist
    • The style can't be created with an existing StyleUtils function (i.e. StyleUtils.getBackgroundAndBorderStyle(theme.componentBG))
  • If new assets were added or existing ones were modified, I verified that:
    • The assets are optimized and compressed (for SVG files, run npm run compress-svg)
    • The assets load correctly across all supported platforms.
  • If the PR modifies code that runs when editing or sending messages, I tested and verified there is no unexpected behavior for all supported markdown - URLs, single line code, code blocks, quotes, headings, bold, strikethrough, and italic.
  • If the PR modifies a generic component, I tested and verified that those changes do not break usages of that component in the rest of the App (i.e. if a shared library or component like Avatar is modified, I verified that Avatar is working as expected in all cases)
  • If the PR modifies a component related to any of the existing Storybook stories, I tested and verified all stories for that component are still working as expected.
  • If the PR modifies a component or page that can be accessed by a direct deeplink, I verified that the code functions as expected when the deeplink is used - from a logged in and logged out account.
  • If the PR modifies the UI (e.g. new buttons, new UI components, changing the padding/spacing/sizing, moving components, etc) or modifies the form input styles:
    • I verified that all the inputs inside a form are aligned with each other.
    • I added Design label and/or tagged @Expensify/design so the design team can review the changes.
  • I added unit tests for any new feature or bug fix in this PR to help automatically prevent regressions in this user flow.
  • 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

Android: Native
Android: mWeb Chrome
iOS: Native
iOS: mWeb Safari
MacOS: Chrome / Safari

Follow-up to #86864.

Co-authored-by: truph01 <truph01@users.noreply.github.com>
@MelvinBot
MelvinBot requested a review from a team September 9, 2026 19:53
@MelvinBot MelvinBot added the HelpDot Apply this label if the issue relates to ExpensifyHelp label Sep 9, 2026
@MelvinBot MelvinBot mentioned this pull request Sep 9, 2026
52 tasks done
@github-actions github-actions Bot changed the title Docs updates for E/A#86864 Merchant Rule behavior when applied tag is deleted [No QA] Docs updates for E/A#86864 Merchant Rule behavior when applied tag is deleted Sep 9, 2026
@OSBotify

OSBotify commented Sep 9, 2026

Copy link
Copy Markdown
Contributor

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

Updated articles:

@truph01

truph01 commented Sep 15, 2026

Copy link
Copy Markdown
Contributor

@MelvinBot Mark this PR as ready

@MelvinBot
MelvinBot marked this pull request as ready for review September 15, 2026 08:45
@melvin-bot

melvin-bot Bot commented Sep 15, 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 @jliexpensify

@melvin-bot
melvin-bot Bot requested review from brunovjk, jliexpensify and truph01 and removed request for a team September 15, 2026 08:45
@melvin-bot

melvin-bot Bot commented Sep 15, 2026

Copy link
Copy Markdown

@brunovjk @truph01 @jliexpensify One of you needs to 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]

@MelvinBot

Copy link
Copy Markdown
Contributor Author

🤖 Marked ready for review — Expensify/pullerbear and stephanieelliott are on it.

I also cleaned up the body before flipping it, since it still carried the placeholders written for you:

  • Tests — replaced the // TODO with the HelpDot preview steps (render check, both new FAQ headings, and the relative link to Create and manage expense tags). This PR is markdown only, so there's nothing to exercise in the app. Rewrite these if you'd rather review it differently; I did not check any author-checklist boxes on your behalf.
  • QA Steps — set to N/A, since the title already carries [No QA].
  • Explanation of Change — dropped the note asking you to re-confirm the UI labels. I verified them against the code instead: addRule: 'Add merchant rule' at src/languages/en.ts:8275 and saveRule: 'Save rule' at src/languages/en.ts:8290, which confirms the Save rule correction in the diff.

One thing to know: Check independent approval is red and will stay red until a reviewer approves. Every other check passes.

- In the **Merchant** section of the **Rules** page, the rule summary no longer lists the tag update.
- When you open the rule, the **Tag** field is empty.

To have the rule set a tag again, open the rule, select a value in the **Tag** field, then select **Save rule**. If you recreate a tag with the same name, the rule applies that tag again. Learn how to [create and manage expense tags](/articles/new-expensify/workspaces/Create-and-manage-expense-tags).

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.

Step formatting: This recovery flow ("open the rule, select a value in the Tag field, then select Save rule") is a sequential procedure written as inline prose. Per HELP_AUTHORING_GUIDELINES.md Section 4/5, procedural instructions should be sequential numbered steps. Consider converting to a numbered list and keeping the cross-link in a separate explanatory sentence after the steps (Section 7 discourages links inside numbered steps).

@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: 053ffe87e5

ℹ️ 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 don't all of my tags appear when I select Tag in a Merchant Rule?

The **Tag** field lists only the tags the rule can apply. Disabled tags are hidden, and on a workspace with multi-level tags, each level lists only the tags available under the levels you already selected.

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

P2 Badge Clarify that a selected disabled tag remains visible

When an existing Merchant Rule already uses a tag that is later disabled, the tag is not hidden: AddTagPage.tsx skips a disabled option only when tag.name !== formTag, preserving the currently selected disabled tag, and the rule summary also treats a tag as present without checking enabled. The blanket statement that disabled tags are hidden therefore gives admins the wrong expectation for this scenario; document the selected-tag exception.

Useful? React with 👍 / 👎.

@github-actions

Copy link
Copy Markdown
Contributor

HelpDot Documentation Review

Overall Assessment
This PR is a focused follow-up to Expensify/App PR 86864, documenting how a Merchant Rule behaves when the tag it applies is deleted from the workspace. The changes to docs/articles/new-expensify/workspaces/Workspace-Merchant-Rules.md add one behavior bullet, one troubleshooting reason, two new FAQ entries, updated keywords, and a UI-label correction. All additions are well-scoped, stay within the single-article workflow, and align closely with the governance files.

Scores Summary

  • Readability: 9/10 - New content is concise, scannable, and action-oriented. The FAQ answers use short sentences and a clear bullet list for the two places admins see the change.
  • AI Readiness: 9/10 - Both new FAQ headings are question-word based and feature-specific ('What happens to a Merchant Rule when the tag it applies is deleted?' and 'Why don't all of my tags appear when I select Tag in a Merchant Rule?'). No new top-level headings introduced; internalScope and keywords are present and expanded with realistic deleted-tag search phrases.
  • Style Compliance: 9/10 - UI labels (Merchant, Rules, Tag, Save rule) are bolded in Sentence case matching the UI. The 'Save Rule' to 'Save rule' fix is a correct naming-convention improvement. Cross-link is relative with descriptive anchor text.

Key Findings

  • Corrected step 7 from Select Save Rule to Click Save rule, bringing casing in line with HELPSITE_NAMING_CONVENTIONS.md.
  • Both new FAQ headings follow the task and question-based rules in HELP_AUTHORING_GUIDELINES.md Section 2 and are added as second-level headings under the existing FAQ section (no new top-level headings).
  • The relative cross-link to 'Create and manage expense tags' uses descriptive anchor text and is placed in an explanatory sentence, not inside a numbered step.
  • Minor: step 7 now uses Click while adjacent steps 5 and 6 use Select. Both verbs are permitted, but consider aligning verb choice across steps for consistency.

Recommendations

  • Optional: standardize the action verb (Select vs Click) across the numbered steps for visual consistency. This is a nit and not a blocker.
  • No other changes required; the additions are compliant and ready.

Files Reviewed

  • docs/articles/new-expensify/workspaces/Workspace-Merchant-Rules.md - Compliant. Minor optional verb-consistency nit noted.

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

@jliexpensify jliexpensify 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.

Looks fine to me, reads well.

@stephanieelliott
stephanieelliott merged commit a7905a0 into main Sep 16, 2026
21 of 24 checks passed
@stephanieelliott
stephanieelliott deleted the claude/docsMerchantRuleDeletedTag branch September 16, 2026 08:36
@OSBotify

Copy link
Copy Markdown
Contributor

🚀 Deployed to staging by https://github.com/stephanieelliott in version: 9.4.81-0 🚀

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

@OSBotify

Copy link
Copy Markdown
Contributor

🚀 Deployed to production by https://github.com/luacmartins in version: 9.4.81-1 🚀

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

1 similar comment
@OSBotify

Copy link
Copy Markdown
Contributor

🚀 Deployed to production by https://github.com/luacmartins in version: 9.4.81-1 🚀

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

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