View Issue Details

IDProjectCategoryView StatusLast Update
0002267AJAX/JSBug Report - Interfacepublic2016-03-12 20:04
ReporterHinoe Assigned ToDerIdiot  
PrioritynormalSeverityminorReproducibilityalways
Status resolvedResolutionfixed 
Summary0002267: tagentityrel GUI massedit increases parent weight on every click weightless children; also misbehaves with weighless parent
DescriptionBasically, any change to a weightless child will edit the parent, even when it should not; even when it should, it'll do so in ways that should not happen. Describing it accurately is difficult so please bear with the steps to reproduce.
Steps To ReproducePick four anime with no tags. Emptying the tags of four devint anime also works.
Set "law and order" to 300 on two of them.
One one of the "law and order" @ 300 and on one of the "law and order" unset, set "cops" to 200. Use the text edit to not alter anything.
Now use the GUI to set and unset "police investigation" on all of them several times over.
Notice how the weight to "law and order" is increased every time, until it rolls over. Notice also how the behavior differs depending on whether "cops" is also set.
Repeat with "cops" @ 300. Repeat with "cops" @ 500.
Repeat each of the experiments with the value of "cops" changed up and down during the GUI edit for extra insight.
Now start a new experiment with "propaganda" instead of "law and order", and use its two children in place of "police investigation" and "cops".
Notice how each edit to a child sets or unsets the weightless parent.
Realize that the system copes fairly well with edits to weighted tags, but fails altogether when a weightless child is in place.
Additional InformationI didn't check for weightless parents with weighted children. That sort of behavior shouldn't happen, I'm not aware of any such case, and if it does happen it's wrong data anyway and should be fixed either on parent or on child.
TagsNo tags attached.

Relationships

duplicate of 0002114 closedDerIdiot Tag mass-add-gui glitch re weightless parent tags 

Activities

Hinoe

2016-03-11 21:23

reporter   ~0003728

Still seems broken. Let's use Evangelion to reproduce this: https://devint.anidb.net/perl-bin/animedb.pl?show=addtagentityrel&aid=22 -- but don't ever submit the changes.

On content indicators, click on the plus sign for gore a number of times and check how violence flip-flops from 500 (current) to 600 and back.

Now go to technical aspects and add click once on the plus sign to add CGI and its child 3D CG animation a few times, with the other tag on and off. Go to themes and see suicide under death, and its child group suicide. Freely test poking the child with the parent on either state and poking the parent with the child on either state. See how the child is never touched by changes to the parent (it should be removed when the parent is removed) and the parent is always changed by changes to the child (even when adding the child removes the parent, and even when you're removing the child and the old state (as in, the actually existing tagentityrel, as opposed to the changes done in the GUI) is a set parent). I haven't tested an actually set weightless parent/child combo but going to any character with a number of tags should suffice if you want to test that as well. Or just add tags to one before testing.

Now see rotten world under themes and its child dystopia. Set rotten world to 200, then increase dystopia to 400, then decrease it (don't circle around) back to 0. See how rotten world is decreased not to 200, not to 0, but to 100 (wtf?). Works fine with a parent that is actually set (existing tagentityrel), as tested poking the weights for the children of school life.

I'm sure this explanation is confusing as hell to follow, but sorry, I have no idea how make it less so; all I can say is, poke the tags I indicated and you'll see what I'm talking about.

I think the cleanest solution is to just block increasing child weights until parent weights are sufficiently high, just as you block decreasing parent weights until child weights are sufficiently low, and also doing the same for weightless tags (treat them as 100 weight for that purpose), both for actually set tags (existing rels) and new ones (still not existing rels). I honestly believe there's no other way to sanitize the behavior for every possible case. It makes the user click around more but at least it's highly likely to just work.

Also, probably unrelated but maybe not: note how the system gets confused about what to show regarding the weightless star; sometimes it shows the star when it shouldn't, and then when it should, it always invariably shows the question mark instead. I don't want to even try submitting these changes because fuck knows what I'd be doing with all those question marks around.

Issue History

Date Modified Username Field Change
2015-03-12 15:34 Hinoe New Issue
2016-02-14 04:15 DerIdiot Relationship added duplicate of 0002114
2016-02-19 00:22 DerIdiot Status new => resolved
2016-02-19 00:22 DerIdiot Resolution open => fixed
2016-02-19 00:22 DerIdiot Assigned To => DerIdiot
2016-03-11 21:23 Hinoe Note Added: 0003728
2016-03-11 21:23 Hinoe Status resolved => feedback
2016-03-11 21:23 Hinoe Resolution fixed => reopened
2016-03-12 20:04 DerIdiot Status feedback => resolved
2016-03-12 20:04 DerIdiot Resolution reopened => fixed