Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Post changes are confusing because of tag relations #623

Open
faucetlol opened this issue Mar 12, 2024 · 3 comments
Open

Post changes are confusing because of tag relations #623

faucetlol opened this issue Mar 12, 2024 · 3 comments

Comments

@faucetlol
Copy link
Contributor

faucetlol commented Mar 12, 2024

Long-known, but it seems like nobody's ever created an issue about this. It's a frequent cause of confusion, even among more experienced users, and is something that should eventually be addressed.

It makes tag changes painfully difficult to read, which is detrimental to patrolling recent tag changes for vandalism, which two tags did I actually add to the post below?

image

Creating post versions when tag relations are created is obviously not a feasible option, that will just flood the post changes database with junk data, but there must be a better solution than what we currently have.

See also

@DonovanDMC
Copy link
Member

I don't think there really is a better solution beyond either what we have now, or creating post versions when AIBUR are approved
Doing that naively would make an edit for every single entry on a BUR

In theory if the ids of every single edited post could be known after a BUR was done, you could do a superficial change (like adding a space to the tag string) to their tag strings to forcefully create a post version for the one approving the BUR

@Deer-Spangle
Copy link

Deer-Spangle commented Mar 13, 2024

In theory if the ids of every single edited post could be known after a BUR was done, you could do a superficial change (like adding a space to the tag string) to their tag strings to forcefully create a post version for the one approving the BUR

Isn't that literally what @faucetlol specifically warned against in the initial post?

Creating post versions when tag relations are created is obviously not a feasible option, that will just flood the post changes database with junk data

--

I have perhaps some dumb/naiive questions but might be handy for background for others:
Am I right that the tags displayed on a post is stored independently from the tag version history? Hence the issue here that they de-sync when relations are created.
In which case, couldn't additional fields be added to the post versions records which say which were automatically added as opposed to the manually changed ones, and then the UI could display them differently or even as separate virtual 'post version' entries in the table?
Even if it stored the before and after of each post version's tag list, then it would allow working out which were added manually (the difference between before and after) and which were done automatically (the difference between before and the previous version's after)
That would expand the size of the records, but wouldn't dramatically expand the number of post version entries in the database or anything, so wouldn't be nearly the same performance hit

I might be way off track, but hopefully a helpful perspective?

@faucetlol
Copy link
Contributor Author

I don't think there really is a better solution beyond either what we have now, or creating post versions when AIBUR are approved

Well there's definitely a better way, it's just a matter of how difficult it will be to implement properly with what we've currently got. Maybe retrospectively fixing all the old changes is a lost cause, but making future edits more readable is a good enough achievement in itself.

A better solution could look something like this:
image
(compare to image in OP)

At first I thought it might be as easy as just omitting the implied tag from the added_tags field in the database if it already existed on the post but that field doesn't actually seem to be used for anything visually at all, the diff actually seems to just be calculated by the actual difference in the tags fields. It makes me wonder why added_tags and removed_tags fields are even there, I'm yet to actually take the time to properly have a look at the code.


Somewhat related: At some point Danbooru changed their post versions to only show the actual diffs (example) but I have no idea if they're still experiencing the same problem with AIBURs.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants