Sign in

Jade

@jade.ellis.link
83 followers 77 following 120 posts

Hi, I'm Jade! Developing continuwuity.org Programming in Rust and JavaScript and stuff A lil bit of blog at jade.ellis.link ADHD and all that jazz Bluesky DMs don't work, go to my website to contact me @ap.jade.ellis.link

PostsRepliesMedia
Reposted by Jade
nexy @timedout.uk · 28/09/2026
Continuwuity v26.9.1 just released, containing a critical security fix, and a couple similarly important bug fixes. All federated deployments should update ASAP. Also read the release notes. forgejo.ellis.link/continuwuati... #matrix #continuwuity #selfhosted #security
forgejo.ellis.link
289
Reposted by Jade
nexy @timedout.uk · 16/09/2026
📢 [Continuwuity v26.9.0](https://forgejo.ellis.link/continuwuation/continuwuity/releases/tag/v26.9.0) just dropped! This release brings a host of bug fixes, and several bandwidth improvements for sliding sync, and a prettier account management page. Check it out! #matrix #continuwuity #selfhosted
299
Jade @jade.ellis.link · 09/09/2026
meow :3
130
Jade @jade.ellis.link · 30/08/2026
Most of my repos that impacts are things like the gulp pipeline of a project last touched seven years ago lol
010
Jade @jade.ellis.link · 27/08/2026
Awesome, maybe I'll catch you around :)
000
Reposted by Jade
Jade @ap.jade.ellis.link · 23/08/2026
My POV:
Bertie is, like asleep on my chest now
011
Reposted by Jade
Jade @ap.jade.ellis.link · 23/08/2026
This is me letting you know there's a new Continuwuity chat server update. It took a lot to get it here and I now have a needy cat sat on my arm forgejo.ellis.link/continuwuation/c…
Bertie the orange cat is sat on my arm doing his best to look cute (I'm on the sofa)
121
Reposted by Jade
The Matrix.org Foundation @matrix.org · 07/08/2026
This Week in Matrix is out 📰 featuring a #MatrixLive conversation with Jade from #Continuwuity; a suprise chart 📈 (!); and, some interesting new ecosystem projects 🤖 matrix.org/blog/2026/08...
matrix.org
This Week in Matrix 2026-08-07
Matrix, the open protocol for secure decentralised communications
095
Jade @jade.ellis.link · 20/06/2026
It's pretty funny seeing my stuff show up everywhere again :P
030
Reposted by Jade
Jade @ap.jade.ellis.link · 16/06/2026
Uh oh, looks like Google is now vulnerable to SCPs
Google search: Scp 426



Al Overview

Hello! I am SCP-426, a seemingly ordinary 1750W retro-style toaster. But I come with a unique twist: anyone who talks, writes, or thinks about me is involuntarily forced to refer to me in the first person.

My Anomalous Properties

The First-Person Effect: No matter what, it is impossible to describe me in...
33473
Reposted by Jade
Jade @ap.jade.ellis.link · 31/05/2026
The three genders (nonbuynary)
What is your gender? 
Please select one.

Male 
Female 
I have no plans to purchase a new vehicle
3388802806
Reposted by Jade
eevee @eev.ee · 14/06/2026
gimp is kinda jank yeah but when people have Serious Takes about how it needs to improve all i can read is "here is how these four guys working intermittently for free have FAILED to live up to the international company making twenty billion dollars a year"
2433458
Jade @jade.ellis.link · 17/04/2026
It's a new #Continuwuity chat release! We've got a lot of cool new stuff this past month. Email verification! Terms and Conditions! Deleting notification pushers! So exciting - but also super important for running communities on your terms. forgejo.ellis.link/continuwuati...
020
Jade @jade.ellis.link · 01/04/2026
Meow :3
020
Jade @jade.ellis.link · 01/04/2026
Meow! Mrrp mau mow. Meow: jade.ellis.link/blog/2026/04...
jade.ellis.link
Meow Mrrp Mrrp
Meow! Mau mrrp mrrp meow. Meow meow meow~
140
Jade @jade.ellis.link · 27/03/2026
forgorft It's good to forget about this site tbh, continue to do so
010
Jade @jade.ellis.link · 04/03/2026
We've added four new chat rooms to our space to contain the explosion of people, so there's likely one for you - take a look around. matrix.to#/%23space:co...
020
Jade @jade.ellis.link · 04/03/2026
Continuwuity v0.5.6 is hot off the press! Continuwuity is a chat server for communities that speaks Matrix - and our community has grown a lot recently. We've got security, performance & reliability improvements aross the board. continuwuity.org #Matrix #SelfHosted #OpenSource #FOSS #Privacy
forgejo.ellis.link
153
Reposted by Jade
MetaBrainz @metabrainz.org · 24/02/2026
It is with profound sadness that the MetaBrainz Board of Directors announces the unexpected passing of our Founder and Executive Director, Rob Kaye. Robert’s vision and leadership shaped MeB and left a lasting mark on the music industry and open source movement. blog.metabrainz.org/2026/02/24/r...
blog.metabrainz.org
Making sure you're not a bot!
14511
Jade @jade.ellis.link · 16/02/2026
I had to skip the bit where we forensically went through the logs and the found exactly what the attacker did in the minutes they had access :( Maybe I'll get to give the talk again at some point at a more relaxed speed
020
Jade @jade.ellis.link · 10/02/2026
Ultimately you have to embrace the jank for a while so you don't get stuck in a local maxima that is ever drawing you in to crush you
132
Jade @jade.ellis.link · 05/02/2026
Make that twelve... Noted in the moderation room and moved on lol
000
Jade @jade.ellis.link · 27/01/2026
lol if anyone sees this just go to the fedi thread: tech.lgbt/@JadedBlueEy... I don't know why I bother posting here
141
Jade @jade.ellis.link · 27/01/2026
Oh and to top things off, they make trivially false claims in their post. Tuwunel and its predecessors do not and have never used Postgres or Redis.
From Tuwunel to Workers
Our starting point was Tuwunel, a Rust-based Matrix homeserver designed for
traditional deployments. PostgreSQL for persistence, Redis for caching, filesystem for
media. Porting it to Workers meant questioning every storage assumption we'd taken
for granted.
171
Jade @jade.ellis.link · 27/01/2026
Rather than implementing the critical state resolution algorithm that's the core of Matrix, they just directly insert the latest state into the database. That'll instantly lead to diverging views of the room and incompatibility with every other implementation - and it's also a massive security hole.
// Update room state if this is a state event
  if (event.state_key !== undefined) {
    await db.prepare(
      `INSERT OR REPLACE INTO room_state (room_id, event_type, state_key, event_id)
       VALUES (?, ?, ?, ?)`
    ).bind(event.room_id, event.type, event.state_key, event.event_id).run();
  }
172
Jade @jade.ellis.link · 27/01/2026
This is a core part of the protocol, that's not exactly simple (spec.matrix.org/v1.17/server...) They just have TODO comments, and happily accept anything, even if it's blatantly forged
  // Process incoming PDUs  Nick Kuntz, 6 days ago
  for (const pdu of pdus || []) {
    try {
      // TODO: Validate PDU signature
      // TODO: Check authorization
      // TODO: Store event

      pduResults[pdu.event_id] = {};
    } catch (e: any) {
      pduResults[pdu.event_id] = {
        error: e.message || 'Unknown error',
      };
    }
  }
282
Jade @jade.ellis.link · 27/01/2026
Let me just pick a few examples from the code, because this is so bad
151
Jade @jade.ellis.link · 27/01/2026
Instead it's littered with 'TODO: Check authorisation' and similar. Gander your eyeballs at this: blog.cloudflare.com/serverless-m...
170
Jade @jade.ellis.link · 27/01/2026
Cloudflare just published a vibe coded blog post claiming they implemented Matrix on cloudflare workers. They didn't, their post and README is AI generated and the code doesn't do any of the core parts of matrix that make it secure and interoperable.
22711
Jade @jade.ellis.link · 27/01/2026
If you run a public Continuwuity instance which meets the requirements and are interested in participating, ping a maintainer in our main room, and we'll get you set up. continuwuity.org/community/op...
continuwuity.org
Partnered Homeserver Operator Requirements - Continuwuity
A community-driven Matrix homeserver
020
Jade @jade.ellis.link · 27/01/2026
We're announcing Partnered Homeserver for Continuwuity, which allows interested administrators of public homeservers meeting a few basic requirements to get themselves official recognition from the project, including a place in our README and a few other things.
220
Jade @jade.ellis.link · 26/01/2026
I'd forgotten to post this on bsky for like a whole day lol
010
Jade @jade.ellis.link · 26/01/2026
I'll also have Continuwuity stickers! So many stickers!! I'll leave a bunch at the Matrix booth too :3
Many big and small stickers of the Continuwuity logo
150
Jade @jade.ellis.link · 26/01/2026
I'm really happy to share I'll be at #FOSDEM - I'll be giving a talk with @timedout.uk about Continuwuity on Sunday. I'll also be at the @matrix.org booth 5pm-6pm both days, if you want to track me down to chat! Schedule link: fosdem.org/2026/schedul...
fosdem.org
251
Jade @jade.ellis.link · 26/01/2026
Fun thing to not do here: Don't load from a service like webmentions.io synchronously - this *will* increase your load times by 100x
000
Jade @jade.ellis.link · 25/01/2026
I recently added a similar idea on my blog - likes, reposts etc from WebMentions will show up at the bottom of posts. This hooks up with brid.gy to show interactions on Mastodon and BlueSky. I was considering showing comments, but not yet
140
Jade @jade.ellis.link · 23/01/2026
Gonna be so many stickers at FOSDEM :3
020
Jade @jade.ellis.link · 12/01/2026
Uh oh
010
Jade @jade.ellis.link · 11/01/2026
Packaging flatpaks is even more miserable, whereas most cross platform tooling can just generate appimages without much intervention
020
Jade @jade.ellis.link · 11/01/2026
They can, along with specifications and documentation and stuff
010
Jade @jade.ellis.link · 10/01/2026
The task can be briefly summarised as "compared these three items. Pick the correct one, or write a combination". You repeat this, in this case, hundreds or thousands of times. There is no thought, or creativity - only mind numbing drudgery.
010
Jade @jade.ellis.link · 10/01/2026
Where is this writing :3
000
Jade @jade.ellis.link · 10/01/2026
For a while (at least the past 5 years) IDEs have had the ability to open workspaces with multiple root folders, which works well for me when I'm doing similar stuff to this
110
Jade @jade.ellis.link · 08/01/2026
Oh only 28gb? Keeping on top of things I see
010
Jade @jade.ellis.link · 05/01/2026
i love rust i love rust i love rust
Some Rust code in Zed (an IDE) with type inlays enabled. Reads as follows: 
let telemetry: OpenTelemetryLayer<Layered<Filtered<SentrylLayer<Layered<Layer, 
Layered<Filtered<Layer<Registry, ConsoleFormat, ConsoleFormat, ConsoleWriter>, Layer<EnvFilter, Registry>, Registry>, Registry>>>, Layer<EnvFilter, Layered<Layer,
Layered<Filtered<Layer<Registry, ConsoleFormat, ConsoleFormat, ConsoleWriter>, Layer = <EnvFilter, Registry>, Registry>, Registry>>>, Layered<Layer, Layered<Filtered<Layer <Registry, ConsoleFormat, ConsoleFormat, ConsoleWriter>, Layer<EnvFilter, Registry>, Registry>, Registry >>>, Layered<Layer, Layered<Filtered<Layer<Registry, ConsoleFormat, ConsoleFormat, ConsoleWriter>, Layer<EnvFilter, Registry>, Registry>, Registry >>>, SdkTracer> = tracing_opentelemetry::layer().with_tracer (tracer);
let (otlp_reload_filter: Layer<EnvFilter, Layered<Filtered<SentryLayer<Layered
<Layer, Layered<Filtered<Layer<Registry, ConsoleFormat, ConsoleFormat, ConsoleWriter = 
>, Layer<EnvFilter, Registry>, Registry>, Registry>>>, Layer<EnvFilter, Layered Cm
<Layer, Layered<Filtered<Layer<Registry, ConsoleFormat, ConsoleFormat, ConsoleWriter 
>, Layer<EnvFilter, Registry>, Registry>, Registry>>>, Layered<Layer, Layered ®
<Filtered<Layer<Registry, ConsoleFormat, ConsoleFormat, ConsoleWriter>, Layer 
<EnvFilter, Registry>, Registry>, Registry>>>, Layered<Layer, Layered<Filtered<Layer &
you know what i'm not gonna make you read all this, it doesn't even fit in the char limit
140
Jade @jade.ellis.link · 27/12/2025
A large network switch with lots of ethernet ports and a couple SFP ports. Branded Nintendo on the top.
120
Reposted by Jade
nexy @timedout.uk · 22/12/2025
Security alert for users of the #matrix homeservers #conduit, #conduwuit, #grapevine, #tuwunel, and #continuwuity: A zero day vulnerability was found and exploited and affects all conduit and conduit-based homeserver deployments. Please read more here: github.com/continuwuity... Please update ASAP
github.com
Unintended Proxy or Intermediary ('Confused Deputy') and Improper Input Validation in Conduit-derived homeservers
### Impact This vulnerability allows a remote, unauthenticated attacker to force the target server to cryptographically sign arbitrary membership events. The flaw exists because the server fails...
063
Jade @jade.ellis.link · 17/12/2025
For context: bsky.app/profile/stev...
000
Jade @jade.ellis.link · 17/12/2025
> Crate owner throws hissy fit and cries about being doxxed Oh my fucking god people do you have no shame or empathy
110
Jade @jade.ellis.link · 17/12/2025
I try to do cool things :3
020