Rc release improvements#123
Merged
Merged
Conversation
* spawned judge agent as a non blocking task with state tracking
abnegate
approved these changes
Jul 13, 2026
…-release-improvements
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Commits getting merged for testing + few fixes on top of them
commit bb37977 (HEAD -> rc-release-improvements, origin/rc-release-improvements)
Merge: 010f95a 956efbe
Author: ArnabChatterjee20k arnabchatterjee.ac.2@gmail.com
Date: Mon Jul 13 16:01:23 2026 +0530
commit 010f95a
Merge: f2ccee4 198a208
Author: ArnabChatterjee20k arnabchatterjee.ac.2@gmail.com
Date: Mon Jul 13 16:01:12 2026 +0530
commit f2ccee4
Merge: 8b22f2e 1545cc5
Author: ArnabChatterjee20k arnabchatterjee.ac.2@gmail.com
Date: Mon Jul 13 16:01:02 2026 +0530
commit 8b22f2e
Merge: 2ca8a48 90d345c
Author: ArnabChatterjee20k arnabchatterjee.ac.2@gmail.com
Date: Mon Jul 13 16:00:58 2026 +0530
Greptile Summary
This PR merges four feature branches into
rc-release-improvements, primarily converting the synchronousassess_retrievalcall into a fire-and-forgetspawn_retrieval_judge, adding retrieval-quality tracking to the QA (answer_question_issue) path, and fixingqa_agent/agentselection for the relevance judge.assess_retrieval(async, blocking) is replaced byspawn_retrieval_judge(synchronous,tokio::spawnfire-and-forget), adding timeline events forRetrievalScoringStarted/Completed/Failedand a free-functionrecord_scoring_eventfor use inside the detached task where&selfis unavailable.answer_question_issuenow acceptsattempt_id, records code-search and discord retrieval-usage rows, and spawns the relevance judge — mirroring the fix pipeline's existing behaviour.qa_agent.clone().unwrap_or_else(|| agent.clone()), so a configured cheaper QA model is used instead of always falling back to the main agent.Confidence Score: 5/5
Safe to merge — changes are additive, the detached-judge refactor is well-scoped, and edge cases (LLM unavailable, zero-score results, empty item lists) are all handled.
The retrieval judge is now correctly fire-and-forget, QA-path tracking mirrors the fix pipeline exactly, and the qa_agent selection follows the same unwrap_or_else pattern already used elsewhere in the processor. No correctness regressions were found in any of the three changed files.
No files require special attention.
Important Files Changed
Sequence Diagram
%%{init: {'theme': 'neutral'}}%% sequenceDiagram participant P as IssueProcessor participant T as Tracker participant J as spawn_retrieval_judge participant LLM as LLM / QA Agent P->>T: record_timeline_event(RetrievalScoringStarted) P->>J: tokio::spawn (fire-and-forget) Note over P: returns immediately — no longer blocks PR notification P->>T: record outcome / notify Slack / update PR par Inside detached task alt "use_llm = true" J->>LLM: spawn_blocking score_chunk_relevance (sequential) LLM-->>J: scores else "use_llm = false" J->>LLM: for_each_concurrent score_chunk_relevance_via_agent LLM-->>J: scores end J->>T: set_retrieval_quality (per chunk) J->>T: record_scoring_event(RetrievalScoringCompleted / Failed) end%%{init: {'theme': 'base', 'themeVariables': {"darkMode": true, "background": "#0d1117", "primaryColor": "#21262d", "primaryTextColor": "#e6edf3", "primaryBorderColor": "#8b949e", "lineColor": "#8b949e", "textColor": "#e6edf3", "edgeLabelBackground": "#161b22", "actorBkg": "#21262d", "actorBorder": "#8b949e", "actorTextColor": "#e6edf3", "actorLineColor": "#8b949e", "signalColor": "#8b949e", "signalTextColor": "#e6edf3", "noteBkgColor": "#373320", "noteBorderColor": "#d4a72c", "noteTextColor": "#f0e6c0", "labelBoxBkgColor": "#21262d", "labelBoxBorderColor": "#8b949e", "labelTextColor": "#e6edf3", "loopTextColor": "#e6edf3", "activationBkgColor": "#30363d", "activationBorderColor": "#8b949e"}}}%% sequenceDiagram participant P as IssueProcessor participant T as Tracker participant J as spawn_retrieval_judge participant LLM as LLM / QA Agent P->>T: record_timeline_event(RetrievalScoringStarted) P->>J: tokio::spawn (fire-and-forget) Note over P: returns immediately — no longer blocks PR notification P->>T: record outcome / notify Slack / update PR par Inside detached task alt "use_llm = true" J->>LLM: spawn_blocking score_chunk_relevance (sequential) LLM-->>J: scores else "use_llm = false" J->>LLM: for_each_concurrent score_chunk_relevance_via_agent LLM-->>J: scores end J->>T: set_retrieval_quality (per chunk) J->>T: record_scoring_event(RetrievalScoringCompleted / Failed) endReviews (7): Last reviewed commit: "Merge remote-tracking branch 'origin/rc-..." | Re-trigger Greptile