Skip to content

[Rules Engine Release 2] [App] Support expense defaults for more than just merchants #102277

Open

Description

@JS00001

Now that we've migrated fully to the new rules engine, we will start supporting more filters for setting defaults, and more fields that are able to be set.

We can refer to this issue: #102273 for the shape of each rule.

Below is a mockup of the state that we want to get the expense defaults view into:

Image
Issue OwnerCurrent Issue Owner: @situchan

Activity

  1. melvin-bot commented on Sep 28, 2026

    @melvin-bot

    @situchan Uh oh! This issue is overdue by 2 days. Don't forget to update your issues!

  2. changed the title [-][Rules Engine Release 1] Support more expense default options[/-] [+][Rules Engine Release 1] Support complex expense defaults[/+] on Sep 30, 2026
  3. melvin-bot commented on Sep 30, 2026

    @melvin-bot

    @situchan Eep! 4 days overdue now. Issues have feelings too...

  4. changed the title [-][Rules Engine Release 1] Support complex expense defaults[/-] [+][Rules Engine Release 1] [App] Support complex expense defaults[/+] on Sep 30, 2026
  5. changed the title [-][Rules Engine Release 1] [App] Support complex expense defaults[/-] [+][Rules Engine Release 2] [App] Support complex expense defaults[/+] on Sep 30, 2026
  6. melvin-bot commented on Oct 2, 2026

    @melvin-bot

    @situchan Still overdue 6 days?! Let's take care of this!

  7. melvin-bot commented on Oct 3, 2026

    @melvin-bot

    @situchan Still overdue 6 days?! Let's take care of this!

  8. 7 remaining items

  9. JS00001 commented on Oct 12, 2026

    @JS00001
    ContributorAuthor

    This is in progress

  10. melvin-bot commented on Oct 12, 2026

    @melvin-bot

    @situchan Huh... This is 4 days overdue. Who can take care of this?

  11. twisterdotcom commented on Oct 13, 2026

    @twisterdotcom
    Contributor

    @JS00001 for this:

          "left": "tag",
           "operator": "eq" | "contains",
    

    When it's multi-level tags, will we separate for every tag level, so it's:

          "left": "ntag1",
           "operator": "eq" | "contains",
    

    Or is it just checking the entire tag string?

  12. JS00001 commented on Oct 13, 2026

    @JS00001
    ContributorAuthor

    We would do the same thing as search, where they can select multiple tags, which will be OR'd with one another. These will match any tag in the list of tag1:tag2:tag3

  13. Krishna2323 commented on Oct 14, 2026

    @Krishna2323
    Contributor

    @JS00001 Two things in the mockup that I couldn't pin down from the spec.

    Merchant type: It's under "Then apply the following defaults", but today it's a condition. Merchant type rules map an MCC group to a default category via policy.mccGroup, and the table renders them as "Merchant type is X". mcc is also a search filter key. Should this move to the match section as an mcc filter? And should those MCC group rules migrate to rules_ as part of this, or stay where they are?

    Amount: I'm assuming this means {"name": "Set", "field": "amount", "value": <number in cents>}. Let me know if the field name or units should be different.

  14. melvin-bot commented on Oct 14, 2026

    @melvin-bot

    @situchan Still overdue 6 days?! Let's take care of this!

  15. JS00001 commented on Oct 15, 2026

    @JS00001
    ContributorAuthor

    @Krishna2323 sorry, for this one, lets not worry about merchant type as an action.

    As for amount, if we want the amount to be $30.00, we'd set the amount value to -3000 (which is cents)

  16. Krishna2323 commented on Oct 15, 2026

    @Krishna2323
    Contributor

    I’ve created a draft PR branched off the SetRule/DeleteRule reapply PR: #104155

  17. JS00001 commented on Oct 16, 2026

    @JS00001
    ContributorAuthor

    Nice, thanks, I'll test that one today locally

  18. melvin-bot commented on Oct 16, 2026

    @melvin-bot

    @situchan 8 days overdue is a lot. Should this be a Weekly issue? If so, feel free to change it!

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

Metadata

Metadata

Labels

ReviewingHas a PR in reviewSkip PaymentSkips all the payment process steps for an issue. Use it for fixed-price projects.WeeklyKSv2

Type

No type

Projects

No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions