Skip to content

perf(sessions): find matching checkpoints without sorting#96956

Closed
ly-wang19 wants to merge 1 commit into
openclaw:mainfrom
ly-wang19:codex/high-quality-algo-6
Closed

perf(sessions): find matching checkpoints without sorting#96956
ly-wang19 wants to merge 1 commit into
openclaw:mainfrom
ly-wang19:codex/high-quality-algo-6

Conversation

@ly-wang19

Copy link
Copy Markdown
Contributor

What Problem This Solves

Branching or restoring from a compaction checkpoint only needs the newest checkpoint with the requested id, but the accessor copied and sorted the entire checkpoint array before finding that id. Sessions with many retained compaction checkpoints paid avoidable allocation and O(n log n) work.

Why This Change Was Made

This replaces the full copy/sort/find path with a single scan that tracks the newest checkpoint matching the trimmed requested id. It keeps the previous newest-match behavior while ignoring newer checkpoints with other ids.

User Impact

Checkpoint branch/restore operations do less work for sessions with long compaction histories. The selected checkpoint, persistence behavior, and missing-checkpoint handling remain unchanged.

Evidence

  • node scripts/run-vitest.mjs src/config/sessions/session-accessor.test.ts
  • .agents/skills/autoreview/scripts/autoreview --mode branch --base origin/main --parallel-tests "node scripts/run-vitest.mjs src/config/sessions/session-accessor.test.ts"
  • git diff --check

@openclaw-barnacle openclaw-barnacle Bot added size: S r: too-many-prs Auto-close: author has more than twenty active PRs. labels Jun 26, 2026
@openclaw-barnacle

Copy link
Copy Markdown

Closing this PR because the author has more than 20 active PRs in this repo. Please reduce the active PR queue and reopen or resubmit once it is back under the limit. You can close your own PRs to get back under the limit.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

r: too-many-prs Auto-close: author has more than twenty active PRs. size: S

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant