Skip to content

perf(reference_picker): implement incremental parsing#335

Merged
sudo-tee merged 5 commits intomainfrom
perf/rendering-performance
Mar 20, 2026
Merged

perf(reference_picker): implement incremental parsing#335
sudo-tee merged 5 commits intomainfrom
perf/rendering-performance

Conversation

@sudo-tee
Copy link
Owner

This PR is to address some performance issues in the rendering of large sessions

Copy link
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

This PR targets performance in the reference picker flow by switching reference_picker.parse_references() to an incremental, per-message cache and updating unit/replay fixtures accordingly. It also updates the reference struct fields (e.g., col instead of column) and adjusts picker collection logic to source references from the parse cache.

Changes:

  • Implement incremental parsing + caching for code references keyed by message_id.
  • Update reference struct fields and navigation behavior (including missing-file warnings).
  • Update/replace unit tests and large replay expected JSON fixtures to match new output.

Reviewed changes

Copilot reviewed 13 out of 14 changed files in this pull request and generated 5 comments.

File Description
lua/opencode/ui/reference_picker.lua Reworks parsing into an incremental cached scanner; updates picker collection + navigation.
tests/unit/reference_picker_spec.lua Updates assertions and adds tests for caching/incremental behavior + picker collection from cache.
tests/data/*.expected.json Refreshes replay fixture outputs (mostly formatting/serialization changes).
.claude/settings.local.json Adds local Claude permissions configuration.

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

@sudo-tee sudo-tee changed the title perf(reference_picker): improve reference_picker by incremental parsing perf(reference_picker): implement incremental parsing Mar 20, 2026
@sudo-tee sudo-tee merged commit 0147670 into main Mar 20, 2026
10 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.

2 participants