Skip to content

feat: idea extraction from tracked researchers (#881) - #889

Merged
rysweet merged 1 commit into
mainfrom
fix-881-ideas
Apr 18, 2026
Merged

feat: idea extraction from tracked researchers (#881)#889
rysweet merged 1 commit into
mainfrom
fix-881-ideas

Conversation

@rysweet

@rysweet rysweet commented Apr 18, 2026

Copy link
Copy Markdown
Owner

Closes #881

Changes

Adds automated idea extraction from tracked researcher activity (building on PR #874's activity polling).

New module: src/research_tracker/idea_extraction.rs

  • Queries cognitive memory for dev-activity: facts
  • Identifies promising ideas via keyword signal matching (40+ research-relevant keywords)
  • Deduplicates proposals by normalized title
  • Generates research: issue proposals with title, body, and rationale

OODA integration

  • New ActionKind::ExtractIdeas variant in decide phase
  • Maps __extract_ideas__ priority to the new action kind
  • Dispatch handler in simple_actions.rs

Exports

  • IdeaProposal, ExtractionResult, extract_ideas, summarize_extraction re-exported from lib

Tests

  • 16 unit tests covering extraction, deduplication, keyword matching, helpers
  • 1 new decide-phase mapping test
  • All pass with cargo check, cargo clippy -- -D warnings, cargo fmt --check

Add idea_extraction module to research_tracker that:
- Queries cognitive memory for recent developer-activity facts
- Identifies promising ideas via keyword signal matching
- Generates deduplicated research: issue proposals with title, body, rationale
- Integrates with OODA decide phase as ExtractIdeas action kind

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
@rysweet
rysweet merged commit c390ae4 into main Apr 18, 2026
1 of 5 checks passed
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.

feat: analyzer to incorporate tracked-researcher activity into roadmap

2 participants