User avatar
Jade @JadedBlueEyes@tech.lgbt
6mo
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. Instead it's littered with 'TODO: Check authorisation' and similar

blog.cloudflare.com/serverless-matrix-homeserver-workers/
2
1
1
0
User avatar
Jade @JadedBlueEyes@tech.lgbt
6mo
Let me just pick a few examples from the code, because this is so bad
1
0
1
0
User avatar
Jade @JadedBlueEyes@tech.lgbt
6mo
This is a core part of the protocol, that's not exactly simple (spec.matrix.org/v1.17/server-server-api/#authorization-rules)

They just have TODO comments, and happily accept anything, even if it's blatantly forged
1
0
1
0
User avatar
Jade @JadedBlueEyes@tech.lgbt
6mo
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.
1
0
1
0
User avatar
Jade @JadedBlueEyes@tech.lgbt
6mo
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.
1
0
1
0
User avatar
Jade @JadedBlueEyes@tech.lgbt
6mo
Honestly this is almost insulting to me, as someone who has spent a nontrivial amount of effort developing a Matrix homeserver, with how low effort it is. And what’s the point? Marketing? I’m not gonna be trusting anything Cloudflare after this.
1
0
1
0
User avatar
Jade @JadedBlueEyes@tech.lgbt
6mo
The pricing comparisons are stupid, by the way, too - a bunch of us in the matrix chatrooms got out how many HTTP requests per day we were serving and the per-request cost of Workers would be more expensive than dedicated VPSs - not even counting CPU time or storage costs!
1
0
1
0
User avatar
Jade @JadedBlueEyes@tech.lgbt
6mo
For those of you that don't know, I develop continuwuity.org - a Rust based Matrix homeserver that actually works, and that you can run on a Raspberry Pi, rather than someone else's centralized cloud infrastructure
1
0
0
0
User avatar
Jade @JadedBlueEyes@tech.lgbt
6mo
I'm also giving a talk about some of the actual work that goes into building this software in a few days at FOSDEM, if you want to learn more:

tech.lgbt/@JadedBlueEyes/115956965835059690
1
0
0
0
User avatar
Jade @JadedBlueEyes@tech.lgbt
6mo
Oh look, they’re trying to cover up what they did too

github.com/nkuntz1934/matrix-workers/commit/2d3969dd5e795caa3641d0e237e2b52ca0502463

Archive link for posterity:

web.archive.org/web/*/https://github.com/nkuntz1934/matrix-workers/commit/2d3969dd5e795caa3641d0e237e2b52ca0502463
2
0
0
0
User avatar
Jade @JadedBlueEyes@tech.lgbt
6mo
For those coming in now, they updated the blog post to include a disclaimer. Original post:
archive.is/AbxU5
1
0
0
0
User avatar
Jade @JadedBlueEyes@tech.lgbt
6mo
U-turn in the readme, too, and an employee trying to do damage control on lobsters too
1
0
0
0
User avatar
Jade @JadedBlueEyes@tech.lgbt
6mo
lobste.rs/s/csxfc6/cloudflare_claimed_they_implemented#c_gychiy

Quoting from one of my chat rooms:
Distributed protocols get extra complex once cryptography and security get in the mix and without a domain expert
authentication isn't "extra complex", you literally removed signature checking. and hashes. And fucking authentication.
ensure this handles the myriad of edge cases that regularly plague Matrix implementations
YOU REMOVED. AUTHENTICATION. THIS ISN'T SOME WEIRD EDGE CASE WITH STATE RESETS. YOU REMOVED AUTHENTICATION AND VALIDATION.
1
0
0
0
User avatar
Jade @JadedBlueEyes@tech.lgbt
6mo
I swear every iteration of the blogpost is somehow worse. No, your starting point wasn’t Synapse either. Your starting point was the claude opus chatbox
1
0
0
0
User avatar
walnut 🌱 @walnut@thesoftestpaws.net
6mo
@JadedBlueEyes
They probably asked claude or chatgpt or whatever the name of the latest slop machine that's just gpt with a different initial prompt is to fix the blogpost, too.
0
0
4
0