I've been thinking about this a lot.

npub1m4ny6hjqzepn4rxknuq94c2gpqzr29ufkkw7ttcxyak7v43n6vvsajc2jl
hex
b5acc8b8ca6ed8c23387120147190e726db473c23edb6b993ce9a98fbd4d3629nevent
nevent1qqstttxghr9xakxzxwr3yq28ry88ymd5w0prakmtny7wn2v0h4xnv2gprpmhxue69uhhyetvv9ujuem4d36kwatvw5hx6mm9qgsd6ejdteqpvse63ntf7qz6u9yqspp4z7ymt8094urzwm0x2ceaxxgjdfmucKind-1 (TextNote)
↳ 回复 事件不存在
fab0a6210fc51ea0d68b2b1d08b20a56249820fbe23085aa2bebc7bdc04ab914...
I've been thinking about this a lot.
On #aitherboard, I let the user "edit" any event (even if they did not sign it) by just pressing a button. I create a clone of the event and discard the unique identifiers (event ID, timestamp, signature), allow them to edit kind, tags, and content, and then add new unique identifiers and publish. Relays then suppress, mark, or delete the original event (if it is replacement), or they simply return both the original and clone.
If it were a mutation, like in an RDB, I could change the content and it would overwrite in place (same record). But this creates a new record. Nostr effectively does only the CRD parts of CRUD. No update, only replace.
原始 JSON
{
"kind": 1,
"id": "b5acc8b8ca6ed8c23387120147190e726db473c23edb6b993ce9a98fbd4d3629",
"pubkey": "dd664d5e4016433a8cd69f005ae1480804351789b59de5af06276de65633d319",
"created_at": 1773466700,
"tags": [
[
"e",
"fab0a6210fc51ea0d68b2b1d08b20a56249820fbe23085aa2bebc7bdc04ab914"
],
[
"p",
"70122128273bdc07af9be7725fa5c4bc0fc146866bec38d44360dc4bc6cc18b9"
],
[
"client",
"aitherboard"
],
[
"t",
"aitherboard"
]
],
"content": "I've been thinking about this a lot.\n\nOn #aitherboard, I let the user \"edit\" any event (even if they did not sign it) by just pressing a button. I create a clone of the event and discard the unique identifiers (event ID, timestamp, signature), allow them to edit kind, tags, and content, and then add new unique identifiers and publish. Relays then suppress, mark, or delete the original event (if it is replacement), or they simply return both the original and clone.\n\nIf it were a mutation, like in an RDB, I could change the content and it would overwrite in place (same record). But this creates a new record. Nostr effectively does only the CRD parts of CRUD. No update, only replace.",
"sig": "0254f6588d11d32437b577cd1c8998afc4a9e44a45201d153d1fac42d9e976ede4a72915fd6fc99944751392971f26af6ef497201ad62241b49ec6a4f53753f8"
}