بنقرة واحدة
conversation-history-tail-pagination
Prevent refresh regressions by paging conversation history from newest entries
التثبيت باستخدام Codex أو Claude انسخ هذا Prompt والصقه في Codex أو Claude أو مساعد آخر ليراجع صفحة Skill ويثبّتها لك.
القائمة
Prevent refresh regressions by paging conversation history from newest entries
التثبيت باستخدام Codex أو Claude انسخ هذا Prompt والصقه في Codex أو Claude أو مساعد آخر ليراجع صفحة Skill ويثبّتها لك.
استنادا إلى تصنيف SOC المهني
Keep prompt template behavior consistent across CLI and cron by reusing one resolver pipeline.
Prevent gateway projects from taking compile-time dependencies on extension assemblies.
Standard collaboration protocol for all squad agents
Fast session investigation using BotNexus Probe CLI (preferred) or Python helper scripts. Use when debugging session state, resuming issues, message routing, checking what sessions exist for an agent, reviewing gateway logs for errors, or correlating events across logs/sessions/traces.
Use when creating GitHub issues, opening worktrees, naming branches, or managing the full lifecycle of a work item on sytone/botnexus. Enforces consistent issue titles, label application, worktree creation, branch naming, PR linking, and cleanup. Triggers on: "create an issue", "open a worktree", "start work on", "file a bug", "add an issue for", "new feature issue", "track this as an issue".
Design spec lifecycle management — creating, reviewing, transitioning, and archiving specs in docs/planning/
| name | conversation-history-tail-pagination |
| description | Prevent refresh regressions by paging conversation history from newest entries |
| domain | gateway-runtime |
| confidence | high |
| source | runtime incident: Quill refresh dropped latest turns when history exceeded page size |
When chat UIs request only one history page on load (for example limit=200, offset=0), oldest-first pagination can hide recent turns in long conversations. Users perceive this as missing history after refresh.
offset as distance from newest entry.offset=0 returns latest page.Even when selecting from the tail, return entries oldest → newest inside the page so rendering remains natural.
If offset >= totalCount, return an empty page with the original totalCount.
var take = Math.Min(limit, totalCount - offset);
var startIndex = Math.Max(0, totalCount - offset - take);
var page = allEntries.Skip(startIndex).Take(take).ToList();
Skip(offset).Take(limit) for refresh endpoints.totalCount, which prevents deterministic paging behavior.