Commit Graph
2226 Commits
Author SHA1 Message Date
evgeny 4966600d52 Localize desktop interaction errors 2026-10-06 22:21:13 +02:00
evgeny 6686dd1815 Translate desktop poll and reaction controls 2026-10-06 22:21:13 +02:00
evgeny 8dc7595e46 Preserve Android feedback state and supplementary Unicode characters 2026-10-06 22:15:44 +02:00
evgeny 1d05ff34c6 Connect Android poll screens and localize interaction controls 2026-10-06 22:15:04 +02:00
evgeny 44e0b7849e Add Android poll voting, results and message reaction components 2026-10-06 22:14:29 +02:00
evgeny 0a615913eb Drive Android feedback commands and live updates through the core thread 2026-10-06 21:45:59 +02:00
evgeny 8f8c8c267f Add typed poll and reaction states to Android message models 2026-10-06 21:45:59 +02:00
evgeny 2c31e3fe03 Expose UTF-8 feedback commands and full message identities on Android 2026-10-06 21:43:21 +02:00
evgeny 39e94fdfd3 Add message reaction menus and distinguish own reactions 2026-10-06 21:39:14 +02:00
evgeny cf869770fb Add desktop poll creation, voting and live result dialogs 2026-10-06 21:39:13 +02:00
evgeny ebc96712a2 Track feedback by message identity in desktop UI 2026-10-06 21:36:43 +02:00
evgeny c1048686d1 Route feedback state and command results to the desktop thread 2026-10-06 21:34:38 +02:00
evgeny 0a05a2095e Read stable message identities and decode escaped text in desktop 2026-10-06 21:34:38 +02:00
evgeny e068fe5d3a Test poll codecs, voting rules and delayed source messages 2026-10-06 21:31:20 +02:00
evgeny da2c13dcf1 Add CLI poll creation, voting and emoji reaction commands 2026-10-06 21:26:37 +02:00
evgeny f99a8c1da2 Expose polls and reactions through headless control safely 2026-10-06 21:26:37 +02:00
evgeny ef476bf4e2 Use canonical reaction and answer payloads in feedback tests 2026-10-06 21:24:53 +02:00
evgeny 48d7f2b21b Build poll modules and adapt media insertion callbacks 2026-10-06 21:24:53 +02:00
evgeny 17444b8c8a Evaluate delayed answers after their source message arrives 2026-10-06 21:24:14 +02:00
evgeny 60b4870549 Pass stable identities to insertion callbacks and bound signed bodies 2026-10-06 21:24:13 +02:00
evgeny 865e4cda59 Log delayed answer validation and keep JSON percentages locale independent 2026-10-06 21:23:37 +02:00
evgeny e6db9fef60 Validate feedback data and provide poll command snapshots 2026-10-06 21:23:37 +02:00
evgeny 0af35630d1 Expose full message data and stable identities in listings 2026-10-06 21:17:24 +02:00
evgeny a4ca31f406 Return submitted message identity and encode JSON safely 2026-10-06 21:17:24 +02:00
evgeny d0aa60fe1a Define canonical poll, answer and reaction formats 2026-10-06 21:15:57 +02:00
evgeny d40f58d79a Add message identities and plan the remaining feedback work 2026-10-06 21:12:53 +02:00
evgeny 8676893d59 Record feedback implementation milestone and remaining work 2026-10-06 20:17:48 +02:00
evgeny 04ff801531 Document Merkle v3 and signed feedback state contracts 2026-10-06 20:11:25 +02:00
evgeny 6437bf780b Include feedback source in the core library source list 2026-10-06 20:09:48 +02:00
evgeny 4f4e63bb0b Test feedback signatures, versions, cancellation and atomic pages 2026-10-06 20:08:53 +02:00
evgeny f6cc3b6e53 Make feedback roots depend on signed state and validate rebuilt keys 2026-10-06 20:07:44 +02:00
evgeny 982e5a06ab Integrate feedback tables with channel and sync lifecycle 2026-10-06 20:06:39 +02:00
evgeny 8121f93d2e Build feedback model and expose committed state events 2026-10-06 20:06:38 +02:00
evgeny 641a8318a8 Add signed versioned feedback storage and Merkle adapter 2026-10-06 20:05:18 +02:00
evgeny 864a250eea Preserve input cursor when member page outputs alias it 2026-10-06 20:02:41 +02:00
evgeny 49dc837df2 Correct all member dataset arguments in callers 2026-10-06 19:59:43 +02:00
evgeny f0314ab51c Test dataset isolation and colliding cursor prefixes 2026-10-06 19:59:00 +02:00
evgeny f6bfd36a6c Include dataset identity in Merkle diagnostics 2026-10-06 19:57:58 +02:00
evgeny 894b24698e Update Merkle integration tests and channel index cleanup 2026-10-06 19:57:25 +02:00
evgeny 5e146f20bc Adapt member sync and protocol tests to dataset cursors 2026-10-06 19:56:52 +02:00
evgeny 539bfd6db9 Extend Merkle sessions with datasets and full record cursors 2026-10-06 19:56:17 +02:00
evgeny 27fd9ee62d Share avatar metadata downloads and cancel closed desktop galleries 2026-10-06 19:48:24 +02:00
evgeny 6bd6ea540c Cancel avatar transfers after their last Android viewer closes 2026-10-06 19:48:24 +02:00
evgeny 7e5b60aa10 Include WebP runtime dependencies and avatar test painter 2026-10-06 19:48:24 +02:00
evgeny 7d71b08def Validate avatar object types and distinguish original downloads 2026-10-06 19:46:59 +02:00
evgeny a221452cb6 Correct Kotlin types in avatar catalog and crop coordinates 2026-10-06 19:46:59 +02:00
evgeny 863441c418 Test Android avatar catalog pagination and updated member snapshots 2026-10-06 19:45:19 +02:00
evgeny ab22277e7b Test avatar originals, selected lossy crops and storage limits 2026-10-06 19:44:56 +02:00
evgeny 32eaf9df04 Translate Android avatar crop and empty-gallery states 2026-10-06 19:43:51 +02:00
evgeny af6cd31e71 Open Android avatar galleries with originals and five previews 2026-10-06 19:43:27 +02:00