A timer on one message, not just the conversation (§6.17) #42

Merged
paulhitt merged 1 commits from feat/per-message-timers into main 2026-09-02 19:59:51 +00:00
paulhitt commented 2026-09-02 11:23:29 +00:00 (Migrated from gitlab.com)

The rule that keeps this from making the product worse: the shorter
timer always wins. Without it a sender could defeat the recipient's
conversation timer by putting a long secs on every message — turning a
setting the recipient chose, on their own device, into something the
other party overrules.

pruneExpired returned early when the CONVERSATION had no timer, so a
timed message in an untimed thread would have been kept for ever — the
feature working on the sending phone and doing nothing on the receiving
one. Pruning is per message now.

Content.text returns raw bytes with no envelope when it has nothing
to carry, so the timer had to join that decision or it would be dropped
and the message would live for ever.

The sender's own copy expires too: a timer that only cleared the
recipient's phone would leave the message with the person who set it.

Refs paulhitt/flamenet-messenger-ios#29

Co-Authored-By: Claude Opus 4.8 noreply@anthropic.com

The rule that keeps this from making the product worse: the shorter timer always wins. Without it a sender could defeat the recipient's conversation timer by putting a long secs on every message — turning a setting the recipient chose, on their own device, into something the other party overrules. pruneExpired returned early when the CONVERSATION had no timer, so a timed message in an untimed thread would have been kept for ever — the feature working on the sending phone and doing nothing on the receiving one. Pruning is per message now. Content.text returns raw bytes with no envelope when it has nothing to carry, so the timer had to join that decision or it would be dropped and the message would live for ever. The sender's own copy expires too: a timer that only cleared the recipient's phone would leave the message with the person who set it. Refs paulhitt/flamenet-messenger-ios#29 Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
paulhitt commented 2026-09-02 11:23:29 +00:00 (Migrated from gitlab.com)

assigned to @paulhitt

assigned to @paulhitt
paulhitt commented 2026-09-02 19:59:39 +00:00 (Migrated from gitlab.com)

added 23 commits

  • b76743e4...1fa70b58 - 22 commits from branch main
  • ddb82b87 - A timer on one message, not just the conversation (§6.17)

Compare with previous version

added 23 commits <ul><li>b76743e4...1fa70b58 - 22 commits from branch <code>main</code></li><li>ddb82b87 - A timer on one message, not just the conversation (§6.17)</li></ul> [Compare with previous version](/paulhitt/flamenet-messenger-android/-/merge_requests/15/diffs?diff_id=2000755778&start_sha=b76743e462b7cbadc65ac85c5b02aaa2b92ba46c)
paulhitt commented 2026-09-02 19:59:52 +00:00 (Migrated from gitlab.com)

mentioned in commit 5a0a061a34

mentioned in commit 5a0a061a34f5555feb21ac3d64a12413eebf5224
paulhitt (Migrated from gitlab.com) merged commit 5a0a061a34 into main 2026-09-02 19:59:52 +00:00
paulhitt commented 2026-09-09 19:01:54 +00:00 (Migrated from gitlab.com)

changed the description

changed the description
Sign in to join this conversation.