bethylamine / soupcan Goto Github PK
View Code? Open in Web Editor NEWA cross-browser extension for Twitter to bring @WhatIsAWomanBot features into your browser.
License: GNU General Public License v3.0
A cross-browser extension for Twitter to bring @WhatIsAWomanBot features into your browser.
License: GNU General Public License v3.0
Browser Chrome on a Mac, Soupcan Version 0.5:
Additional finding, when I copy paste the Lthorra Fuxfell top name, the copied text looks like this: "Lthorra Fuxxfell"
Accidentally double clicked "send report" and it sent two reports. It's not a big issue but it should disable the button on the first click.
If a red/orange user's display name starts with a @
, the report reason isn't shown and the wiaw-area-label-*
class isn't applied to their tweets.
Examples:
Doesn't seem to happen with verified users:
For example recent retweets from these users:
A "view my appeals" button either under the "moderate reports" in the dialogue in which the latter appears or on the moderate reports page where such a niche feature would be much more tidily placed.
Something to do if the report queue is ever cleared. :p
EDIT: I appreciate that appeals don't prevent users and other moderators re-reporting.
EDIT: To be clear that's account which that moderator appealed, not accounts they marked as transphobes later appealed by another moderator.
I keep misclicking the appeal button lately, might be good to have a confirmation, and possibly even a reason field like for reports.
Yeah; English might not be the most widely spoken language.
(1) I suppose this could be another action: "Account tweets in {langauge drop down}" tooltip something like "Recommend review by moderator fluent in account's language."
(1a) Resulting in the report getting a coloured highlight and a note added that moderators not fluent in the selected language should avoid the report.
I appealed the account (AT M///axim///eH/aes) which prompted me to write this. Their reported tweet was deleted.
If a successful report is made via the report-shinigami endpoint, it should clear existing reports for that user from the moderation queue.
Clicking the "Send Report" button seems to jump back to the top of the page instead of preserving the current position.
In case a mistake was made
currently the browser plugin only supports english, we want to add german as first foreign language
If "Mask media from red users" is enabled and you hover a video from a user marked as a transphobe, controls don't appear and you can't unmute/pause/seek the video.
If you right-click on someone's avatar to report them, and they're actively in a Twitter Space when you do so, you get the "Invalid report target!" error message.
I don't have clear reproduction steps for this, but today database updates started failing to save for me and I was seeing "QUOTA_BYTES quota exceeded" in the extension's error logs. New additions to the database went back to unmarked whenever I reloaded the page, and it only applied the red color a few seconds later when it triggered a database update again, having noticed that the previous update didn't save. Uninstalling and reinstalling the extension seems to have fixed it for now. I'm not sure why this happened, maybe old database files weren't cleared?
In case this helps, extension files before and after the reinstall:
Before
/Users/alexia/Library/Application Support/Google/Chrome/Default/IndexedDB/chrome-extension_jpngllakigjopdffdidfpdempffpchmi_0.indexeddb.leveldb
/Users/alexia/Library/Application Support/Google/Chrome/Default/IndexedDB/chrome-extension_jpngllakigjopdffdidfpdempffpchmi_0.indexeddb.leveldb/LOCK
/Users/alexia/Library/Application Support/Google/Chrome/Default/IndexedDB/chrome-extension_jpngllakigjopdffdidfpdempffpchmi_0.indexeddb.leveldb/LOG
/Users/alexia/Library/Application Support/Google/Chrome/Default/IndexedDB/chrome-extension_jpngllakigjopdffdidfpdempffpchmi_0.indexeddb.leveldb/LOG.old
/Users/alexia/Library/Application Support/Google/Chrome/Default/Local Extension Settings/jpngllakigjopdffdidfpdempffpchmi
/Users/alexia/Library/Application Support/Google/Chrome/Default/Local Extension Settings/jpngllakigjopdffdidfpdempffpchmi/000189.ldb
/Users/alexia/Library/Application Support/Google/Chrome/Default/Local Extension Settings/jpngllakigjopdffdidfpdempffpchmi/MANIFEST-000001
/Users/alexia/Library/Application Support/Google/Chrome/Default/Local Extension Settings/jpngllakigjopdffdidfpdempffpchmi/LOCK
/Users/alexia/Library/Application Support/Google/Chrome/Default/Local Extension Settings/jpngllakigjopdffdidfpdempffpchmi/000005.ldb
/Users/alexia/Library/Application Support/Google/Chrome/Default/Local Extension Settings/jpngllakigjopdffdidfpdempffpchmi/000157.ldb
/Users/alexia/Library/Application Support/Google/Chrome/Default/Local Extension Settings/jpngllakigjopdffdidfpdempffpchmi/CURRENT
/Users/alexia/Library/Application Support/Google/Chrome/Default/Local Extension Settings/jpngllakigjopdffdidfpdempffpchmi/000191.ldb
/Users/alexia/Library/Application Support/Google/Chrome/Default/Local Extension Settings/jpngllakigjopdffdidfpdempffpchmi/000185.ldb
/Users/alexia/Library/Application Support/Google/Chrome/Default/Local Extension Settings/jpngllakigjopdffdidfpdempffpchmi/LOG
/Users/alexia/Library/Application Support/Google/Chrome/Default/Local Extension Settings/jpngllakigjopdffdidfpdempffpchmi/000187.ldb
/Users/alexia/Library/Application Support/Google/Chrome/Default/Local Extension Settings/jpngllakigjopdffdidfpdempffpchmi/000190.log
/Users/alexia/Library/Application Support/Google/Chrome/Default/Local Extension Settings/jpngllakigjopdffdidfpdempffpchmi/LOG.old
After
/Users/alexia/Library/Application Support/Google/Chrome/Default/Local Extension Settings/jpngllakigjopdffdidfpdempffpchmi
/Users/alexia/Library/Application Support/Google/Chrome/Default/Local Extension Settings/jpngllakigjopdffdidfpdempffpchmi/MANIFEST-000001
/Users/alexia/Library/Application Support/Google/Chrome/Default/Local Extension Settings/jpngllakigjopdffdidfpdempffpchmi/LOCK
/Users/alexia/Library/Application Support/Google/Chrome/Default/Local Extension Settings/jpngllakigjopdffdidfpdempffpchmi/000007.ldb
/Users/alexia/Library/Application Support/Google/Chrome/Default/Local Extension Settings/jpngllakigjopdffdidfpdempffpchmi/000005.ldb
/Users/alexia/Library/Application Support/Google/Chrome/Default/Local Extension Settings/jpngllakigjopdffdidfpdempffpchmi/000009.ldb
/Users/alexia/Library/Application Support/Google/Chrome/Default/Local Extension Settings/jpngllakigjopdffdidfpdempffpchmi/CURRENT
/Users/alexia/Library/Application Support/Google/Chrome/Default/Local Extension Settings/jpngllakigjopdffdidfpdempffpchmi/LOG
/Users/alexia/Library/Application Support/Google/Chrome/Default/Local Extension Settings/jpngllakigjopdffdidfpdempffpchmi/000008.log
Give the option to deboost known transphobe's tweets to the "Show more replies" section the same as other low quality or spammy content
On my iPhone if I change the options, they don't save (opening options against shows them all reverted back to default.)
I was trying to enable hiding ads and it wasn't working, then I realized the options weren't sticking.
Setup page, options page, moderation page, etc. all need localization applied to them too. In this case, just by moving the English text out into localization messages like the rest of the localized messages.
If an unmarked user quotes a red/yellow user, sometimes the quoted tweet's contents are not masked, for example here:
https://twitter.com/DrLoupis/status/1653647614900838400/retweets/with_comments
It also never seems to apply the full masking to quoted tweets, only media masking, but even that doesn't work sometimes.
A feature I would enjoy is a feature that auto blocks marked users similar to how Blue Blocker does it
Feature that masks anti-trans memes and pictures that are used for shock/hatred value regardless of who posted it.
And activating the plugin does nothing yet either, so it's impossible to get to Update DB, moderation, re-run setup..
Could be made more friendly on iOS
I would suggest a collapsible navbar menu like on my company website (code) as well as adjusting the drop-down menus sizing and placement. For development and testing work, instead of Safari on iOS you could use Chrome desktop dev tools and mobile screen options there.
Where a moderator has spent time reviewing an account and would not have another moderator waste their time while there were unreviewed entries in the queue.
For accounts where the the user of the account doesn't appear to like trans or LGBT people very much but that after between 5 to 10 or more minutes of analysis the only transphobia is through inferrence on their replies when read with context to the tweet chain those replies reside in.
Accounts [not exclusively for accounts which meet this following definition] where there is SPORADIC transphobia in RT and/or their likes, but their replies and original tweets/QT do not explicitely cause harm - might be trolling, but not transphobia when applied inferrence is absent.
(1) I would propose a button "Inconclusive" under actions with the tooltip along the lines of "Inconclusive after 5-10 minutes of account analysis by moderator - 'I can't appeal, but won't approve' ".
(2) This button would flag the report with a highlight colour, lets say very faded out yellow or orange, indicative that a moderator reviewed the report plus user account and concluded they could neither appeal nor approve.
(2a) In effect saying to other moderators "re-review this account ONLY after the report queue is up to date".
(3) The name of the moderator would be shown in the "Who reported" list. "{mod name} Inconclusive review. [-25%] {timestamp}"
(3a) The named moderator's trust 100 would NOT be attached to the report.
(4) a negative trust modifier would be applied to the report at -25%.
(4a) Allowing community user reports to remain relevant but placing a marginally higher burden.
(4b) Existing reporters would not lose trust.
Don't forget this is for accounts that the moderator couldn't appeal but WON'T leave in the queue to WASTE other moderator time.
(5) The only potential issue I see is if another moderator wants to disagree and the sum of their 100% trust and any other reporters doesn't reach 125%.
(5a) Perhaps the report should add weight to the first moderator's indecision and if another moderator reports the user the report remains yellow until, the report reaches 125%.
The main purpose of this proposal is to preserve the value of moderator review time. If a moderator spends 5-10 minutes on an account but cannot appeal, delete or validate. Their time still has value.
Now, one might ask, is this just a crutch for an inexperienced moderator? Could be.
I'm confident in the appeals I've issued but I've also returned about 6 reports to the mod queue with no action because they were on their way to violation but just not there yet.
That act of not being able to decide hurts the whole process. I'm CONFIDENT that if appealed those accounts would get back onto the mod queue in the future, but I also do NOT see enough to flag them and I feel the reporting user is correctly asserting but isn't justified.
The TOS makes it clear that, like SE, being mean (whilst non-dehumanisng) to/about/of trans people isn't enough.
I just reported an account where I was on the fence (I've since found ample solid justification) where I found a group of tweets in which they had repeatedly posted FTM surgical outcomes as photographed in the operating room.
I then tried to re-report that same tweet with a gore related content warning. The first report got through the mod queue without apparently updating when I re-opened the queue a couple of times.
It appears that duplicate reports of the same tweet by the same moderator are discarded?
The account reported was [with basic obfuscation] AT Mi//ke//Aca/nad//ian.
Below "Delete report".
They are all in English since they are defined server-side
In the moderation queue, pressing "delete report" seems to have no effect. The report stays in the queue, and I tested it with a report from me as a moderator, it still went through and got marked in the database as well, so I had to appeal it instead.
Example account where this happened: @viafication
Using perceptual hashing would make the database much smaller (~16 bytes per image) and more robust. Example python implementation: https://github.com/JohannesBuchner/imagehash, explanation: https://www.hackerfactor.com/blog/index.php?/archives/432-Looks-Like-It.html. dhash
would be the easiest to implement in JavaScript, I can post a code snippet it you wish, let me know!
I try to change the extension's settings so it differentiates markings (so I can see which users are in both Shinigami Eyes and Soupcan or either one of them), but it resets back to default upon refreshing the settings page.
When I report an account as a transphobe and then switch to another account, e.g. from the "You might like" sidebar, the color seems to stick around on the new account, and when trying to report it it says "[previous account's username] is already souped". The "[Reported by you]" note is not there, however. A reload fixes it.
I haven't figured out precisely when/why this happens yet, but it seems like orange labels disappear after a while, even though the report goes through fine, and the users get marked as red about an hour later. Sometimes they also reappear and then disappear again on certain users.
Sometimes "who to follow" doesn't show up, e.g. if I have the user blocked, or if they're private (even though I follow them). This also makes the transphobe counter not show up.
For orange (locally reported) users, only media is masked, even with "Completely mask all content from red users".
If I'm viewing the profile of a blocked account, the display name/username doesn't become a link until I click "view tweets".
Suggested this in a DM to Beth, but for the "transphobe counter" feature when you look at who someone follows, I'd suggest adding a drop-down list that lists all of the accounts marked as transphobic that that person follows. Not sure who else does this, but I just scroll down as far as I can (seems Twitter is limiting this lately, not sure if intentional) and it'd help to distinguish someone who follows transphobes known for other things (e.g. Musk, Rowling, Jeremy Clarkson) than like a bunch of people primarily known for being TERFs or chuds (e.g. Matt Walsh, Raichik, Posie Parker).
I know existing entries can't be automatically migrated because they're hashed, but it may be worth storing user IDs instead of usernames going forward to avoid labels disappearing because of a username change.
Loading the extension on any firefox based browsers are giving a error like this:
There was an error during the temporary add-on installation.
Error details
background.service_worker is currently disabled
I believe it's because firefox does not use background.service_worker but instead background.scripts
Hi the 3.0.1 version has significant performance improvement for phash (and added crop resistant hash)
It should prefill the tweet that's quoting it, not the tweet being quoted.
Example: https://twitter.com/marley_morrison/status/1641163445272813568
Useful as on desktop you have to manually construct a search to look through tweets of a user. And judging if someone is transphobic is most easily done by checking their tweets using gender-related keywords.
Would be nice not to need to focus the report reason textbox when it comes up so you can start typing/copy paste straight into it
If a user is in appealed state and I report them, the report goes through the queue as normal but the user gets stuck in "appealed" state in the database.
Example account where this happened: @entrappt
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.