A consent-first public archive — only messages members chose to publish. Searchable and permanent.
Cinderella: what shipped, and what is next A technical update since the last one. She has a proper help command. Ask in any phrasing, in English or German, or send /help. The capability list is generated from the active intent catalog rather than written by hand, so disabling a plugin removes it from the help text automatically and a new plugin appears without anyone editing anything. help consent and help prices give topic detail. Building that surfaced a resolver collision worth mentioning: help consent was resolving to a price lookup, because help reads as a plausible asset ticker and scored higher than the help intent. Fixed by forcing an instruction that literally begins with help to the help intent, rather than weakening the price resolver and causing a different problem elsewhere. The consent wording now states the terms before you agree, not after. Three properties, all in the prompt: publication is forward only, so nothing you said before opting in is ever included. It stays public until you take it back. And taking it back is final, all at once, with no way to restore it afterwards. Opting in again later starts fresh from that moment. That last property was not previously stated, and it is the one people would not expect. Your questions are archived alongside her answers. Until recently, any message the interaction layer processed as an instruction was never stored at all, so the public archive showed her answers with the questions missing. She appeared to be answering nobody. Question and answer are now treated as a pair: an answer is published only if its question is, and revoking removes both halves. Consent commands themselves stay out, since they are plumbing rather than conversation. Price lookups, on a plugin framework. Ask her what something is worth, or convert between two assets, in natural language. Three data providers behind one interface with automatic failover, attribution bound to whichever provider actually answered, and symbol-to-asset mappings resolved once and then pinned permanently rather than re-resolved on every request. That pinning matters more than it sounds. Provider search rankings shift, so re-resolving each time means the same question can quietly return a different token's price on a later day. One case in particular: Ethereum HEX and PulseChain HEX share an identical contract address, because PulseChain is a state fork. An address-only lookup returns a roughly 2.4x wrong price with no error at all. The plugin framework is the more durable part. A disabled plugin does not merely go quiet, it leaves the intent catalog entirely, so nothing can resolve to a capability that is switched off. Published images are stripped of metadata. Every image served from the public archive comes from a derivative with EXIF, IPTC and XMP removed. Phone photos routinely carry GPS coordinates and device serial numbers, and consenting to publish your words is not consenting to publish your home coordinates. The gate fails closed: a file that cannot be stripped is withheld rather than published unstripped. What is next Choosing what revocation does. Rather than a single irreversible action, you will pick: hide, which takes your words out of the public archive but keeps them so you can restore them later, or delete, which removes them for good. Deleting will require typing the word itself, so a reflexive yes cannot erase an archive. Alongside that, evidence holds. Content reported as illegal is held from destruction until it has been reviewed. The important detail is the separation: a hold prevents destruction, never hiding. You can always take your content out of public view immediately, with no review and no delay. Only the physical deletion waits. Reports are anonymous, so without that separation anyone could make someone else's content permanently undeletable simply by reporting it. Video links will play in the stream, with a design constraint worth stating: nothing loads from any third party until you click. The thumbnail is fetched once server-side and served from our own domain, so opening the archive produces no requests to external services at all. Alongside it, a consent banner with separate categories, where rejecting is exactly as easy as accepting. And a private channel. Right now everything she says is said in front of everyone, which is wrong for anything personal. Asking about your own archived content should not announce it to the room, and choosing whether to hide or delete should not be negotiated in public. That work includes a way to prove a private conversation belongs to a specific group member, because she must never change anyone's consent on the strength of an unverified message.
🤞
We're switching the group over to manual approval for now, because far too many fakes are coming in here at the moment.
Depends on who's sitting behind it. There is no such thing as 100 percent security. But let me give you a good tip: in the security industry, things aren't measured by features or by marketing, but by how expensive it is to extract the data with the right criminal forensics. And if anyone is of the opinion that this doesn't work with various protocols, then maybe they should spend a bit more time looking into deep packet inspection and network traffic, because the answer they'll find is going to surprise them ;)
but even if you hand over the metadata and all the server logs to the authorities, they still won't get through the SMP protocol, right?
However, one also has to bear in mind here that this is handled differently depending on the country. The baseline is always EU law, and accordingly the operator must also build in notices, privacy policies, and the right to be forgotten. But we'll point that out in detail and document it thoroughly.
Right, now we're going to integrate the next self-contained feature, so that you can not only withdraw your publications but also destroy them, cryptographically. And before the stupid question comes up: if an image gets reported or flagged by the filter, it will no longer be destroyed, because at that point the matter is out of our hands.
cinderella-video-368.mp4
Honestly, I'm going to do what the others do now. I'm going to focus mainly on the Matrix network from here on, because the community support there gets praised, unlike with other concepts ...
Yeah, the moderation panel with the history is definitely missing here.
Look, I've been on the internet for 35 years and I was one of the first to produce and sell chat templates internationally, and I have honestly never seen a single Cinderella in a chat to this day. So the risk is fairly theoretical. And of course the welcome message explains how things work here. That said, it would be great if SimpleX added proper content moderation tools at some point. It's simply not built in yet, and I think it's about time. With that in place, I could reserve the name so only team members can use it, and, more importantly, bots could actually be labelled as bots instead of showing up as regular members or admins. For one-to-one conversations this is a different story, of course, there it hardly matters. But anyone who offers groups should also offer proper moderation to go with them. It's extremely important at that scale.
📜 I keep 165 of your messages. 62 of them shine publicly, the rest rest quietly here with me.
Cinderella, what do you have on me for your tally?
Media handling: metadata, originals, and what comes next Some technical notes on what we have been building. Metadata stripping is live. Every image published to the public archive is now served from a derivative with EXIF, IPTC and XMP removed. That matters because phone photos routinely carry GPS coordinates, camera serial numbers and timestamps. Consenting to publish your words is not consenting to publish your home coordinates. We audited all 57 captured files before building it and found no EXIF anywhere, because the SimpleX client re-encodes images before sending. That is somebody else's client behaviour, it can change in any release, and it was never a guarantee we were in a position to make. So we built the control regardless. The gate fails closed: if a file cannot be stripped, it is withheld rather than published unstripped. Four videos currently fall into that category because container-level stripping needs tooling we have not installed yet, and they are recorded as unstripped rather than assumed clean. Public media URLs are opaque identifiers, not filenames. Original filenames never appear in a URL, a page, a feed, a sitemap or structured data. Next: encrypted originals and hash-based screening. This is the harder part, and it is worth explaining why. We plan to screen every received image against databases of known child abuse material. The important detail is what that is not. No human reviews content, and no general-purpose AI analyses it. The only operation is a cryptographic comparison against hashes of known material, which returns a match or no match without anything being looked at. The complication is what happens on a match. The correct response is not deletion. A hash match is a signal, not evidence, and investigators need the unmodified original file to act on it. So the platform has to retain material it is not permitted to examine. That means originals held encrypted at rest, segregated, unreachable in normal operation, and released only through a defined legal process. That custody requirement, rather than the detection itself, is why this is uncommon among small providers. The large messaging platforms have run this for years. Direct access to the established hash-matching services has historically been out of reach for operators our size, though intermediaries have since made it accessible. Screening runs on every received image regardless of consent, because security and publication are separate questions. A file that is never published is still a file we received. Publication remains consent-gated as it always has been. To be clear about the current state: the storage architecture is being built now, no detection provider is connected, and nothing is transmitted anywhere. Hash matching also detects known material only, not new material. We will say it is active when it is active, and not before.
Could you please start posting the bugs on GitHub? You're driving me crazy. There are no metadata in those images, and we stripped them again on top of that, so it's simply not possible 🥱
wrong :)))
nope this is cindy numbering
Could well be, but I've been getting some strange values coming in that I haven't quite figured out myself yet. Furthermore, the bug in the stream isn't the image upload but the automatic refresh with a certain image format, which in turn supports my theory, because if they were all encoded the same way, that shouldn't happen. We'll keep an eye on it.
You know, I think the thing about the metadata isn't right at all. I mean, the images do get re-encoded and renumbered. But as I said, I still haven't fully understood the process, because this damn SMP network has had extreme upload problems and performance problems for about two weeks now. Even in this small group it sometimes takes me up to 5 minutes for a message to come through.
Try your luck again. We loaded in the last three briefings yesterday, so normally the error should have been fixed. And I'm guessing you were just still on the old version because the page hadn't been refreshed. Check again.
this is bad!!!!
something apparently broke in the process. I'll debug it in a moment and see what's going on there.
hmmmmmmmmmmmmmmmmmmmm
hmmmmmmmmmmmmmmmmmmmm
bug: nomore pictures in the community stream
let me check
☕
But we can play quiz games, completely anonymously. That's something too, isn't it?! Right then, good night for real now.
Purely technically speaking, no problem at all. But that would break the security chain, and the protection of the SMP protocol would be broken immediately. Up to now, every data record is only linked to an individual UUID. But the moment you go onto the site, browse around there, and possibly touch content that belongs to you, the protection is gone instantly and your IP can be verified directly. And that's exactly what we don't want. Keyword: tracking in advertising 😉
haha