Nothing calls Kick's /api/v2/channels/<slug>/messages, and getBacklog (rpc/methods.rs:125-180) has no Kick branch. A channel shows only what this client saw live, so opening one for the first time — or after a restart — is a blank log until somebody speaks.
Discord has catch_up_channel/extend_history and Matrix has /messages backfill; Kick and IRC have neither.
Done looks like: fetch the recent messages on join, and page backwards on scroll the way Discord's extend_history does.
Nothing calls Kick's `/api/v2/channels/<slug>/messages`, and `getBacklog` (`rpc/methods.rs:125-180`) has no Kick branch. A channel shows only what this client saw live, so opening one for the first time — or after a restart — is a blank log until somebody speaks.
Discord has `catch_up_channel`/`extend_history` and Matrix has `/messages` backfill; Kick and IRC have neither.
**Done looks like:** fetch the recent messages on join, and page backwards on scroll the way Discord's `extend_history` does.
GET /api/v2/channels/<id>/messages, keyed by the numeric channel id — the same path with a handle answers 500, which is the kind of difference only found by trying it. Returns newest-first with a cursor.
Fetched on join and backgrounded, so a channel's first live messages are not held up behind it, and recorded oldest-first with Kick's own message ids so a reconnect — which joins again — recognises what it already has rather than duplicating it.
Scrolling up pages by cursor, continuing from where the last page stopped. Not by timestamp: the endpoint is cursor-based and asking by time would re-fetch the same page forever.
Verified against your 29 channels: the live ones fill immediately, and the three that still show empty genuinely have no history — Kick returns messages: [] with a cursor for damandan, checked directly. So an empty channel is now Kick having nothing rather than moho not asking.
Finished — https://git.salastil.com/Salastil/nobilis/commit/0cd38df
`GET /api/v2/channels/<id>/messages`, keyed by the **numeric channel id** — the same path with a handle answers 500, which is the kind of difference only found by trying it. Returns newest-first with a cursor.
Fetched on join and backgrounded, so a channel's first live messages are not held up behind it, and recorded oldest-first with Kick's own message ids so a reconnect — which joins again — recognises what it already has rather than duplicating it.
Scrolling up pages by **cursor**, continuing from where the last page stopped. Not by timestamp: the endpoint is cursor-based and asking by time would re-fetch the same page forever.
Verified against your 29 channels: the live ones fill immediately, and the three that still show empty genuinely have no history — Kick returns `messages: []` with a cursor for `damandan`, checked directly. So an empty channel is now Kick having nothing rather than moho not asking.
Blocking a user prevents them from interacting with repositories, such as opening or commenting on pull requests or issues. Learn more about blocking a user.
Nothing calls Kick's
/api/v2/channels/<slug>/messages, andgetBacklog(rpc/methods.rs:125-180) has no Kick branch. A channel shows only what this client saw live, so opening one for the first time — or after a restart — is a blank log until somebody speaks.Discord has
catch_up_channel/extend_historyand Matrix has/messagesbackfill; Kick and IRC have neither.Done looks like: fetch the recent messages on join, and page backwards on scroll the way Discord's
extend_historydoes.Finished — https://git.salastil.com/Salastil/nobilis/commit/0cd38df
GET /api/v2/channels/<id>/messages, keyed by the numeric channel id — the same path with a handle answers 500, which is the kind of difference only found by trying it. Returns newest-first with a cursor.Fetched on join and backgrounded, so a channel's first live messages are not held up behind it, and recorded oldest-first with Kick's own message ids so a reconnect — which joins again — recognises what it already has rather than duplicating it.
Scrolling up pages by cursor, continuing from where the last page stopped. Not by timestamp: the endpoint is cursor-based and asking by time would re-fetch the same page forever.
Verified against your 29 channels: the live ones fill immediately, and the three that still show empty genuinely have no history — Kick returns
messages: []with a cursor fordamandan, checked directly. So an empty channel is now Kick having nothing rather than moho not asking.