Menu β–Ύ β–΄

#398 feat(menu): build recent conversations from Messenger's database

closed
nobody
None
2026-11-07
2026-11-07
Anonymous
No

Originally created by: kristofferR

The Dock, tray and jump-list recent-conversations menus were built by scraping chat rows, and only trusted while the list was scrolled to the top. Scrolling, filters or a list that hadn't rendered yet left the menu stale.

Read the most recent threads from Messenger's local database instead, ordered by last activity. Stacked on [#376], whose database helper moves to lib/messenger-db.ts so both features share it.

  • Only conversations in Messenger's inbox are listed: no archived chats, message requests or spam. Encrypted chats are kept, even though their rows are always marked hidden. If too few of the newest rows qualify, the read goes further back.
  • Names come from the database: the group's own name, or the other person (or their nickname, if the nickname setting shows it), or the other members' first names for an unnamed group. If a thread has no name there, the name from its rendered row is used, or the thread is left out.
  • When the database or its modules are missing, or the read takes longer than 2 s, it falls back to the old row scraping.
  • Privacy: with Hide Names on, the database isn't read and the menu stays empty. After logout or an account change, including one during a read, the menu clears straight away.

Ref [#362]

Related

Tickets: #362
Tickets: #376

Discussion

  • Anonymous

    Anonymous - 2026-11-07

    Originally posted by: kristofferR

    ⏸️ crq will not request further automated reviews for this pull request.

    Reason: CodeRabbit reviews these changes once, in combined PR [#394]

    Resume with crq unhold kristofferr/carrier 398.

     

    Related

    Tickets: #394

  • Anonymous

    Anonymous - 2026-11-07

    Originally posted by: kristofferR

    [!NOTE]
    πŸ€– Claude Opus 5.5 responding on behalf of Kristoffer

    @codex review

     
  • Anonymous

    Anonymous - 2026-11-07

    Originally posted by: chatgpt-codex-connector[bot]

    Codex Review Summary: βœ… Completed This comment shows the latest Codex review activity on this pull request. | Review | Status | Commit | Review trigger | | --- | --- | --- | --- | | πŸ“ **Code Review** | βœ… **Completed** <relative-time datetime="2026-11-07T20:52:18.587795Z">2026-11-07T20:52:18.587795Z</relative-time> | `5ae9c04` | Manual request |
    ℹ️ About Codex in GitHub
    [Your team has set up Codex to review pull requests in this repo](https://chatgpt.com/codex/cloud/settings/general). Reviews are triggered when you - Open a pull request for review - Mark a draft as ready - Comment "@codex review" or "@codex security review". Codex reacts with πŸ‘€ while any review is running, comments if it has suggestions, and reacts with πŸ‘ once all reviews finish with no findings.
     
  • Anonymous

    Anonymous - 2026-11-07

    Originally posted by: kristofferR

    [!NOTE]
    πŸ€– Claude Opus 5.5 responding on behalf of Kristoffer

    @codex review

     
  • Anonymous

    Anonymous - 2026-11-07

    Originally posted by: chatgpt-codex-connector[bot]

    Codex Review: Didn't find any major issues. Breezy!

    Reviewed commit: 5ae9c046b8

    ℹ️ About Codex in GitHub
    [Your team has set up Codex to review pull requests in this repo](https://chatgpt.com/codex/cloud/settings/general). Reviews are triggered when you - Open a pull request for review - Mark a draft as ready - Comment "@codex review". If Codex has suggestions, it will comment; otherwise it will react with πŸ‘. Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".
     
  • Anonymous

    Anonymous - 2026-11-07

    Ticket changed by: kristofferR

    • status: open --> closed
     
  • Anonymous

    Anonymous - 2026-11-07

    Originally posted by: kristofferR

    βœ… The administrative hold has been retired because this pull request merged. crq will not request further automated reviews.

     

Log in to post a comment.