Negative balance settings used in combination with one another should interact differently
Bug #1479110 reported by
Kathy Lussier
This bug affects 1 person
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
Evergreen |
Fix Released
|
Medium
|
Unassigned |
Bug Description
Evergreen version: master
With the current "prohibit negative balances" code, if a library wants to only allow negative balances for 30 days after payment is made, they must enable the "Prohibit Negative Balances" setting and then set the interval setting to 30 days.
I think most users will think "prohibit" means prohibit in all cases and that the interval settings would be used when the negative balances weren't prohibited. It would be more intuitive if the interval settings worked when the prohibit settings were either Unset or set to "false."
In either case, we should probably provide some guidance on what needs to be done in the description for the interval settings.
Changed in evergreen: | |
assignee: | nobody → Kathy Lussier (klussier) |
Changed in evergreen: | |
milestone: | none → 2.9-beta |
Changed in evergreen: | |
assignee: | nobody → Jason Stephenson (jstephenson) |
Changed in evergreen: | |
assignee: | Jason Stephenson (jstephenson) → nobody |
Changed in evergreen: | |
status: | Fix Committed → Fix Released |
To post a comment you must log in.
I've looked this over, and I think it is more or less a two line change. I plan to go ahead and push a branch soon, but I'm not sure we really want to go that way. IMHO, it potentially makes it equally confusing from the opposite perspective (i.e. setting the prohibit setting to 'false' to try and stop the behavior, but it doesn't).
The real problem is that Evergreen doesn't have a decent way to manage settings. It isn't practical to treat every setting as fully independent (and we don't), but they sure look that way in our rudimentary interface. I think the goal of having one or just a few 'master' switches for optional features is sensible and desirable from the code side, but does get confusing from the setting interface side.
Does anyone have good thoughts on how to generally make clear "these switches enable behavior x" while "these switches tweak/modify behavior x"? I think that is the idea behind the current setup. Ideally they'd all be in a nice single configuration dialog for the feature, but we're far away from that.