Skip to content

feat(mcp): FFF Epic #222 closure - multi_grep, frecency, cursor pagination#820

Merged
AlexMikhalev merged 18 commits intomainfrom
feat/fff-epic-222
Apr 17, 2026
Merged

feat(mcp): FFF Epic #222 closure - multi_grep, frecency, cursor pagination#820
AlexMikhalev merged 18 commits intomainfrom
feat/fff-epic-222

Conversation

@AlexMikhalev
Copy link
Copy Markdown
Contributor

Summary

Test plan

  • All 1287 workspace lib tests pass
  • Clippy clean
  • Pre-commit hooks pass (fmt, check, clippy, build, tests, UBS)
  • Existing test_find_files.rs tests updated for new grep_files signature
  • CI green

…r pagination

- Add terraphim_multi_grep MCP tool: OR-pattern search using Aho-Corasick
  with KG path-score ordering and constraint filtering
- Wire SharedFrecency via FFF_FRECENCY_PATH env var for LMDB-backed
  persistent access-frequency scoring
- Add cursor-based pagination to terraphim_grep and terraphim_multi_grep
  using base64-encoded file_offset cursors
- Update test_find_files.rs for new grep_files signature (cursor param)
- Clean compile, clippy-clean, all existing tests pass

Refs #222
Fixes Rust 1.95 clippy unnecessary_sort_by lint on CI.
Fixes Rust 1.95 clippy unnecessary_sort_by lint on CI.
Fixes Rust 1.95 clippy unnecessary_sort_by lint on CI.
Fixes Rust 1.95 clippy unnecessary_sort_by lint on CI.
…position

- Replace explicit counter loops with enumerate() in examples
- Remove useless into_iter() in extend() call
- Allow collapsible_match lint in task validation
- Replace explicit counter loops with enumerate()
- Allow useless_vec for vec! in for-loop bindings
- Remove unused next_id variable
…legraph examples

- sort_by -> sort_by_key in session-analyzer main.rs
- Allow useless_vec in knowledge_graph_role_demo example
- sort_by -> sort_by_key for Copy-type comparisons
- Allow collapsible_match and unnecessary_sort_by for non-Copy types
- sort_by -> sort_by_key for Copy-type comparisons
- Allow collapsible_match and unnecessary_sort_by for complex closures
- registry.rs: replace sort_by with sort_by_key
- validation.rs: collapse if into match guards
- handler.rs: allow unnecessary_sort_by for non-Copy rank
- service.rs: allow unnecessary_sort_by for tuple field sort
- routing.rs: collapse if into match guards
- markdown_parser.rs: replace explicit counter with enumerate
- capture.rs: allow unnecessary_sort_by for captured_at and score
- main.rs: allow unnecessary_sort_by for pos and rank sorting
…calls

Batch fix for Rust 1.95 clippy lint across 11 files:
- terraphim-session-analyzer, terraphim_agent, terraphim_agent_evolution
- terraphim_automata, terraphim_sessions, terraphim_tinyclaw
- terraphim_usage
@AlexMikhalev AlexMikhalev merged commit 0cae8f7 into main Apr 17, 2026
40 of 41 checks passed
@AlexMikhalev AlexMikhalev deleted the feat/fff-epic-222 branch April 17, 2026 14:30
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