HomePhabricator

Treat Owners paths like "/src/backend" and "/src/backend/" identically

Description

Treat Owners paths like "/src/backend" and "/src/backend/" identically

Summary:
Depends on D19183. Ref T11015. Currently, adding a trailing slash works great and omitting it mysteriously doesn't work.

Store a normalized version with an unconditional trailing slash for the lookup logic to operate on, and a separate display version which tracks what the user actually typed.

Test Plan:

  • Entered "/src/main.c", "/src/main.c/", saw them de-duplicate.
  • Entered "/src/main.c", saw it stay that way in the UI but appear as "/src/main.c/" internally.
  • Added a rule for "/src/applications/owners" (no slash), created a revision touching paths in that directory, saw Owners fire for it.
  • Changed the display value of a path only ("/src/main.c" to "/src/main.c/"), saw the update reflected in the UI without any beahvioral change.

Maniphest Tasks: T11015

Differential Revision: https://secure.phabricator.com/D19184