Dandelion is a fair source project. View the code on Github
Commits on Sep 19, 2026
| e531d5f |
Cover carousel tagging after the event and cohost removal so those carousel id callbacks are tested. |
| 3539c12 |
Sync event carousel ids on tag and cohost changes so the hourly job no longer rebuilds every live event. |
| 447918d |
Pull destroyed carousel ids from events immediately so the hourly refresh does not scan every live event. |
| 621ea86 |
Parenthesize the conversations map in the messaging test so RuboCop does not treat the block as belonging to assert_equal. |
| 6a530a4 |
Add messaging tests and rename the tray badge to unchecked_messages? so it is not confused with per-conversation unread. |
| a71ff8b |
Drop deleted counterparties before limiting conversations so inbox pages stay full. |
| adc3bf7 |
Keep pagelet pagination in the refresh URL so inbox More is not reset by the next poll. |
| 0e9d486 |
Only bump a message receipt when it is behind the latest inbound message so thread polls do not rewrite the page. |
| e2acde0 |
Group conversations in Mongo so the inbox does not walk every message in Ruby. |
| f11e319 |
Share one message bubble partial and helper so incoming and reply no longer duplicate the same markup. |
| f47c528 |
Stop using Mongoid .or so OR clauses stay inside the existing filter instead of widening it. |
| 7e7e981 |
Give messages a between scope, other_party, and conversations so the views stop rewriting the same queries. |
| 8b2dddf |
Keep a gutter around message bubbles so long unbroken text cannot sit flush to the edge. |
| 8df420f |
Hide the message thread until it is pinned to the latest message so load no longer flashes from the top. |
| 5c0adc4 |
Give the message thread a native full-height layout and skip pagelet rewrites when nothing changed. |
| cb4d244 |
Show navbar notifications and messages in a modal on small screens so the lists stay readable. |
Commits on Sep 18, 2026
| ea7997e |
Drop blank PayPal error details so OAuth messages don't include a stray colon. |
| 252541e |
Fold leftover agent notes into one Everything else section. |
| 05896e9 |
Drop the Codex sandbox note from the agent test instructions. |
| d20af1c |
Keep Mongoid conventions in the Mongo section of the agent notes. |