Skip to content

fix(memory,hooks): add structural pagination and canonical Ruflo resolution - #3083

Draft
stuinfla wants to merge 3 commits into
ruvnet:mainfrom
stuinfla:fix/memory-list-pagination-20260822
Draft

fix(memory,hooks): add structural pagination and canonical Ruflo resolution#3083
stuinfla wants to merge 3 commits into
ruvnet:mainfrom
stuinfla:fix/memory-list-pagination-20260822

Conversation

@stuinfla

Copy link
Copy Markdown

Summary

  • add validated memory list --offset pagination and opt-in JSON --page-info metadata (total, nextOffset, hasMore)
  • fail closed when pagination reports rows remaining but returns no progress
  • make plugin hooks prefer the canonical global ~/.npm-global/bin/ruflo, then PATH, without downloading a private npx copy
  • update the ruflo-core contract and plugin patch version to describe the enforced hook behavior

Why

Cross-session continuity needs a structural way to enumerate every AgentDB row; a fixed first-page listing can silently omit older checkpoints. Hook invocations also must not create a second Ruflo installation whose behavior can diverge from the globally managed CLI.

Verification

Base: 3c99b1c84a25948c42a163253bac6effed5fbbbb
Head: fd42708592df971500f75fb9882c0bd44faf7014

  • pnpm exec vitest run v3/@claude-flow/cli/__tests__/memory-list-pagination-structural.test.ts — 7/7 passed
  • bash plugins/ruflo-core/scripts/smoke.sh — 11/11 passed
  • node plugins/ruflo-core/scripts/test-hooks.mjs "node $PWD/v3/@claude-flow/cli/bin/cli.js" — 26/26 passed
  • git diff --check origin/main...HEAD — passed
  • Gitleaks over the exact three-commit range — no leaks found

Scope boundaries

  • no global Ruflo installation was changed
  • no npm package was published
  • no release or tag was created
  • no merge is requested or performed by this automation

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

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant