After thinking about it for a while I got to two solutions:
Proposal 1: Thread syntax (using subject)
Each post have an implicit and an *optional* explicit root reference:
- Implicit (no action needed, all data required are already there)
- URL + timestamp
- Explicit (subject required)
- Identity (client generated)
- External reference
- Random value
We then add include a "root" subject in each post for generating explicit theads:
1.
[ROOT_ID] (REPLY_ID): simpler with no need of prefixes2.
(root:ROOT_ID) (reply:REPLY_ID): more complex but could allow expansions-
(rt:ROOT_ID) (re:REPLY_ID): same but with a compact version-
($ROOT_ID) (>REPLY_ID): same but with a single charactersEach post can have both references, like the current hash approach the reference can be treated as a simple string and don't have a real meaning.
Using a custom reference this way allows a client to decide how to generate them:
- Identity: can be a content hash or signature or anything else, without enforcing how it is generated we can upgrade the algorithm/length freely
- External references: can be provided from another system (Eg.
7e073bd345, *yarnsocial/yarn* latest commit)- Random value: like a UUID (Eg.
9a0c34ed-d11e-447e-9257-0a0f57ef6e07)Proposal 2: Threaded mentions (featuring zvava)
Inspired by @zvava's solution it could be simplified into:
#<nick url#timestamp> or #<url#timestamp>It can be shown like a mentions or hidden like a subject.
If we're using thinking of using a counter in the client, I think there's no point in avoiding the timestamp anymore.*
captura de tela do Reclame Aqui do Rei do Sticker
The single plum that my plum tree gave us in 2025.
Páginas da revista sobre a Noite de Processing no Garoa Hacker Clube
Reprodução de páginas da revista onde aparecem alguns dos meus desenhos e o começo da entrevista.