Ori Sky

Ori Sky

@ori.mx

they/kit | excitable cat, pianist, software engineer, vr lover, D&D DM, Twitch streamer, speedrunner creator of https://safebadge.ori.mx also creator of firin_bot on Twitch

97 followers31 following130 posts

Pinned

I’ve updated Safe Badge to 0.2.0! Update the extension in Chrome/Edge to get it. Also Firefox is in review :3 Bear in mind you may need to re-enable it as it now requires permission on the dashboard subdomain in order to show the badge on raid targets. Reminder: safebadge.ori.mx Changelog below:

safebadge.orisafebadge.ori

Sorry for vagueposting earlier. As I’m typing idk how much detail I’ll go into, we’ll see, maybe open up more another time. But I feel like I NEED to share this, after trying to cope with unresolved trauma for years at this point. CW: abuse, manipulation, mention of sex stuff, suicide (big CW)

View full thread

Like one of my problems is recently their birthday popped up on my phone. I haven’t removed them. I feel like I can’t without any sort of closure. It just feels wrong, and I feel guilty for considering it. But their birthday popping up just brought back all my memories of what it was like back then.

I remembered another thing. I was in a brief light relationship (again online) with someone in like 2017 and the person mentioned above kinda reacted really badly because I hadn’t asked them first, and hadn’t talked to them about it. They made me promise they were still the most important to me. :/

Sorry for vagueposting earlier. As I’m typing idk how much detail I’ll go into, we’ll see, maybe open up more another time. But I feel like I NEED to share this, after trying to cope with unresolved trauma for years at this point. CW: abuse, manipulation, mention of sex stuff, suicide (big CW)

View full thread

I don’t know if I’ll find a way to reconcile these feelings, I’ve been trying now for 5.5 years. I cared for them a lot. And I had a dependence on them. I can’t deny that everything about my life has improved so much since they stopped responding, but I can’t get rid of guilt from that feeling.

Kinda feel sick after typing all of this. I did it on my phone because I don’t feel like getting up so um. It took me longer to type it so I had to think about it for longer lol.

Sorry for vagueposting earlier. As I’m typing idk how much detail I’ll go into, we’ll see, maybe open up more another time. But I feel like I NEED to share this, after trying to cope with unresolved trauma for years at this point. CW: abuse, manipulation, mention of sex stuff, suicide (big CW)

View full thread

In March 2021 they’d been really sparse and they told me their mental state was really sparse too. I sent them a photo of my hair dye on March 31 and they never responded. I’ve never heard from them since, and their accounts have been deleted from inactivity or manually before that time.

The worst part is I don’t have any closure at all. I assume they did go through with suicide at that time, but I’ve tried to find out and I never will. And also, I feel incredibly guilty a lot when I think about this, because. And I feel guilty even saying it now. My life is 100x better now.

Sorry for vagueposting earlier. As I’m typing idk how much detail I’ll go into, we’ll see, maybe open up more another time. But I feel like I NEED to share this, after trying to cope with unresolved trauma for years at this point. CW: abuse, manipulation, mention of sex stuff, suicide (big CW)

View full thread

Fast forward to like 2021. They were pushing me to come visit them and they were using the promise I’d made years ago to guilt trip me into it. I was trying my best to find excuses like money issues still (which was true thanks adhd). They would get really angry at me and force me to reassure them.

Reassurance would become a sort of ritual where I had to repeat things they asked me to say, in extremely precise detail, like sometimes 20-30 times in a row. One time it was 50. I pointed it out afterwards and they told me it had to happen again now i’d pointed it out.

Sorry for vagueposting earlier. As I’m typing idk how much detail I’ll go into, we’ll see, maybe open up more another time. But I feel like I NEED to share this, after trying to cope with unresolved trauma for years at this point. CW: abuse, manipulation, mention of sex stuff, suicide (big CW)

View full thread

They’d been suicidal in the past and now they were becoming more so again, not being able to get a job anywhere despite trying. I still cared a lot for them so I stayed friends with them to keep them emotionally attached at least to something. Maybe this was bad idk.

They tried in like 2020 at some point to commit suicide. They couldn’t go through with it but I sat talking over text beforehand, both of us emotional, I was trying hard to convince them not to and they were making me feel guilty for trying to do so. I guess because they’d made up their mind.

Sorry for vagueposting earlier. As I’m typing idk how much detail I’ll go into, we’ll see, maybe open up more another time. But I feel like I NEED to share this, after trying to cope with unresolved trauma for years at this point. CW: abuse, manipulation, mention of sex stuff, suicide (big CW)

View full thread

A while after this we broke up, which had already happened a few times as threats but finally I kinda forced it to happen for real. As part of that, they made me promise nothing would change and that it wouldn’t mean anything was different.

Fast forward to like 2019, guess what nothing was different at this point. Still so much arguing every single day. It was just part of my life now tbh. I also felt like I couldn’t cut them off because they were becoming more emotionally unstable.

Sorry for vagueposting earlier. As I’m typing idk how much detail I’ll go into, we’ll see, maybe open up more another time. But I feel like I NEED to share this, after trying to cope with unresolved trauma for years at this point. CW: abuse, manipulation, mention of sex stuff, suicide (big CW)

View full thread

They got really annoyed at me being hesitant, so I tried to find excuses that would avoid needing to visit them. Like, problems with spending too much money, which became even more of a problem as a result lol. They kinda made me promise to when I had enough money, and to save up for it.

They also kinda. Pressured me to agree to try sexual stuff with them when we met up. This made me even more nervous. Without TMI, we had done stuff over text but I wasn’t sure if I was asexual irl at this point in time. I told them this and they really pressed me to “at least just try it and see”.

Sorry for vagueposting earlier. As I’m typing idk how much detail I’ll go into, we’ll see, maybe open up more another time. But I feel like I NEED to share this, after trying to cope with unresolved trauma for years at this point. CW: abuse, manipulation, mention of sex stuff, suicide (big CW)

View full thread

If I tried to argue back or talk about things bothering me, it’d not be worth it in the end because I knew it’d just end up with me apologising. This was like 2016 or something by this point.

We had been talking about meeting up with me visiting them. I was honestly really nervous and this was a thing where I probably felt nervous about actually confronting how I feel about them, and looking back on it, I obviously didn’t realize this at the time but it’s kinda obvious now.

Sorry for vagueposting earlier. As I’m typing idk how much detail I’ll go into, we’ll see, maybe open up more another time. But I feel like I NEED to share this, after trying to cope with unresolved trauma for years at this point. CW: abuse, manipulation, mention of sex stuff, suicide (big CW)

View full thread

Over time they would get annoyed at certain behaviours I had so I adapted myself to try and improve. This didn’t really help and I would get angry at them at times too. Over time we would argue a LOT — every day at times, which was horrendous for my mental health. They were lovely in between though.

I just learned to deal with it, and even though it got worse and worse, I was kinda in a situation where I felt like I depended on them for some mental stability at times. They would require us to resolve things before I’d go to bed, which would almost always be me apologising for things.

Sorry for vagueposting earlier. As I’m typing idk how much detail I’ll go into, we’ll see, maybe open up more another time. But I feel like I NEED to share this, after trying to cope with unresolved trauma for years at this point. CW: abuse, manipulation, mention of sex stuff, suicide (big CW)

About a decade ago, I was in what became an abusive long-distance relationship. It started in 2013 or 2014, can’t remember precisely, but this was like my first proper relationship and I didn’t really know how to handle these things tbh. We liked each other but it happened quite fast to be honest.

Mm thinking about a bunch of stuff. Sorry I’m being intentionally vague but I don’t know if I even want to share it yet. I’m just coming to some long-needed realizations about ways in which I’ve been treated in the past, and realizing I probably got really lucky.

Maybe I’ll share at some point. It’s just kinda personal. But I guess it’s probably healthy to acknowledge these things, especially if it’s like stuff I’ve not fully worked through internally?

Mm I consider myself to be pretty reasonable at piano. However, I’m watching people FAR better than me play vgm on YouTube and I’m wondering if I’ll ever get that far. Maybe actually learning some sheet music would help. Idk

Finished my Lingo 2 run at UKSG. I was really happy at getting to showcase it, especially since the run was so short (10m). I also wore my new hoodie, it has like cute ears on the hood and it’s also super soft and layers really really well with my Mew tshirt too :3

I may have miscalculated how much Safe Badge is actually costing me for the month. I have no idea how I messed up so monumentally but What I previously calculated: $36 What it will actually cost: $1

At some point I should probably deal with the 27 unread emails dating back to 2025 :3

I’ll probably need to do some of the stuff I’ve been putting off for Safe Badge soon (like client-side caching). Sick atm but I noticed it’s eaten through my free allowance for the month already lol. Probably means it’ll end up costing about $40 for the month if it continues at the same rate.

Took my fursuit out for the first time. I should have done this way way way sooner. I had so much fun and made some new frens I think too??

Eepy. I’m gonna see if I can add client-side caching for safe badge at some point so it can remember who’s had one of the tags on their stream. Maybe tomorrow but we’ll see

Safe Badge 0.2.1 is now available on Firefox and should be available on Chrome soon (awaiting review)! Changelog below.

View full thread

Bug fixes: * Fixed badge behaving incorrectly for lots of shared chat / guest streamer scenarios. * Fixed badge positioning in various places. * Fixed badge not displaying in sidebar. * Fixed sidebar padding acting weirdly. It's now consistent!

Safe Badge 0.2.1 is now available on Firefox and should be available on Chrome soon (awaiting review)! Changelog below.

New features: * Now displays badge on front page carousel. * Now displays badge beside guest streamers on channel pages. * Now grants badge for the OptedOutOfGenAI tag. * Now fetches stream title through GraphQL for extra evidence.

Something I'm quite proud of that might not be immediately obvious. When viewing a streamer using shared chat in the Twitch sidebar, they only get a Safe Badge if their entire group should have the badge. If one guest does not have the badge, the sidebar doesn't either, preventing any AI training.

I guess thinking about it, I could maaybe represent this a bit better. Right now it might be confusing if someone's badge disappears. Maybe I could have it display a different colored icon or something. (yellow? but I want to keep color blindness in mind obviously)

Also, regarding the Safe Badge confirmation button seemingly requesting email addr, I've addressed this but I want to address it more thoroughly. The weakest permission I can request is "openid". This is designed specifically for authenticating users with a strong guarantee.

View full thread

Okay it sounds like omitting the scope shouuuld be fine. One of the admins in the Twitch developer Discord server suggested this so I might just do that. It’ll avoid confusion in the long run.

Alright, Safe Badge no longer requires any OAuth permission scopes from the streamer. I'm a bit uneasy doing this as it's against the Twitch API documentation, but Twitch will no longer claim that it'll get your email addr, profile pic, etc. It wouldn't get those anyway, but, it's a lot clearer now.

Also, sorry for the delay on the Firefox version of the extension. Nothing I can do other than wait.

Also, regarding the Safe Badge confirmation button seemingly requesting email addr, I've addressed this but I want to address it more thoroughly. The weakest permission I can request is "openid". This is designed specifically for authenticating users with a strong guarantee.

View full thread

I could omit the openid scope but this is bad for two reasons. 1. Twitch OAuth requires at least one scope. Not using a scope is undocumented and could break at any time. 2. OpenID gives a signed ID token based on the random nonce, allowing for slightly stronger authentication of the user.

Also, regarding the Safe Badge confirmation button seemingly requesting email addr, I've addressed this but I want to address it more thoroughly. The weakest permission I can request is "openid". This is designed specifically for authenticating users with a strong guarantee.

Safe Badge's OAuth URL looks like this (split up): https: //auth.twitch.tv/authorize ?response_type=code &client_id=9lfupp0yvz1ymn2mk5st0747lpto9x &redirect_uri=https%3A%2F%2Fsafebadge.ori.mx%2Fauth%2Ftwitch%2Fcallback &scope=openid &state={random} &nonce={random}

As described by Twitch's OpenID documentation (dev.twitch.tv/docs/authent...), the OAuth application does not receive email addr, profile pic, preferred username, etc, unless the OAuth URL explicitly includes "claims" as a query parameter with a JSON-encoded object that includes "email", etc.