Page MenuHomePhabricator

When computing the "Subscribers" policy, use materialized membership
ClosedPublic

Authored by epriestley on Mar 13 2018, 3:27 PM.
Tags
None
Referenced Files
Unknown Object (File)
Mon, Nov 25, 2:38 AM
Unknown Object (File)
Thu, Nov 21, 9:34 AM
Unknown Object (File)
Thu, Nov 21, 6:25 AM
Unknown Object (File)
Sun, Nov 10, 8:46 PM
Unknown Object (File)
Thu, Nov 7, 3:24 PM
Unknown Object (File)
Thu, Nov 7, 2:10 PM
Unknown Object (File)
Thu, Nov 7, 2:09 PM
Unknown Object (File)
Thu, Nov 7, 2:09 PM
Subscribers
None

Details

Summary

Fixes T13104. The "Subscribers" policy implementation still uses older logic to query project membership and misses parent projects and milestones which a user is a member of.

Instead of doing an edge query for explicit membership, use a project query to find all projects the viewer belongs to.

Test Plan
  • Created a parent project A.
  • Created a subproject B.
  • As Bailey, created a task with "Visible To: Bailey, Subscribers".
  • Added parent project A as a task subscriber.

Then:

  • As Alice, verified I could not see the task.
  • As Alice, joined subproject B.
    • Before patch: still unable to see the task.
    • After patch: can see the task.
  • Removed parent project A as a subscriber, verified I could no longer see the task.

Diff Detail

Repository
rP Phabricator
Lint
Lint Not Applicable
Unit
Tests Not Applicable

Event Timeline

This revision was not accepted when it landed; it landed in state Needs Review.Mar 13 2018, 3:28 PM
epriestley requested review of this revision.
This revision was automatically updated to reflect the committed changes.