HomePhabricator

Improve rendering of "default value changed" custom form transactions to at…

Description

Improve rendering of "default value changed" custom form transactions to at least have all the information

Summary:
Ref T13319. Currently, transactions about changes to a default form value use a raw internal key for the affected field and don't show the actual value change.

An ideal implementation will likely require us to specialize a great deal of rendering, but we can do much better than we currently do without too much work:

  • Try to pull the actual EditField object for the key so we can getLabel() it and get a human-readable label (like Visible To instead of policy.view).
  • Add a "(Show Changes)" action that dumps the raw values as more-or-less JSON, so you can at least figure out what happened if you're sophisticated enough.

Test Plan:
Before:

Screen Shot 2019-06-19 at 12.52.24 PM.png (367×566 px, 67 KB)

After:

Screen Shot 2019-06-19 at 1.22.49 PM.png (364×647 px, 83 KB)

The quality of "Show Details" varies a lot. For some fields, like "Description", it's pretty good:

Screen Shot 2019-06-19 at 1.23.39 PM.png (211×844 px, 19 KB)

For others, like "Assigned To", it's better than nothing but pretty technical:

Screen Shot 2019-06-19 at 1.27.00 PM.png (233×846 px, 17 KB)

Reviewers: amckinley

Reviewed By: amckinley

Maniphest Tasks: T13319

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