Page MenuHomePhabricator

Don't mark subscribes/mentions as "Lock Overridden"

Authored by epriestley on May 10 2019, 6:48 PM.



See PHI1209. When a task is in "Hard Lock" mode, it's still possible to apply some changes to it. Notably:

  • You can subscribe/unsubscribe.
  • You can mention it on another object.
  • You can add a relationship from some other object to it (e.g., select it as a "Parent Task" for some other task).

Currently, these types of edits will show a "Lock Overridden" timeline emblem icon. However, they should not: you didn't override a lock to make these changes, they just bypass locks.

For now, special case these cases (self subscribe/unsubscribe + inverse edge edits) so they don't get the little icon, since I think this list is exhaustive today.

Some day we should modularize this, but we'd need code like this anyway (since TYPE_SUBSCRIBE is not modular yet), and this seems unlikely to cause problems even if it's a bit rough.

Test Plan
  • Hard-locked a task.
    • Subscribed/unsubscribed, mentioned, relationship'd it as a non-author. No timeline emblems.
  • Soft-locked a task.
    • Subscribed/unsubscribed, mentioned, relationship'd it, no timeline emblems.
    • Clicked "Edit", answered "yes" to the override prompt, edited it. Got a timeline emblem.
  • Added some comments and stuff to a normal non-locked task, no emblems.

Diff Detail

rP Phabricator
Automatic diff as part of commit; lint not applicable.
Automatic diff as part of commit; unit tests not applicable.

Event Timeline

epriestley created this revision.May 10 2019, 6:48 PM
epriestley requested review of this revision.May 10 2019, 6:50 PM
amckinley accepted this revision.May 14 2019, 2:50 PM
amckinley added inline comments.

"test if"

This revision is now accepted and ready to land.May 14 2019, 2:50 PM
This revision was automatically updated to reflect the committed changes.