Repository navigation
improvement(search): lead an overflowing Jira all-terms match with issues whose summary holds every term - #9111
Conversation
…sues whose summary holds every term
|
The latest updates on your projects. Learn more about Vercel for GitHub. |
[Medium impact] The PR appears safe to merge, with a non-blocking gap in the promised half-term title boost. Findings
SummaryAdds a summary-first page for overflowing plain Jira searches.
|
|
@cubic-dev-ai review this PR |
@waleedlatif1 I have started the AI code review. It will take a few minutes to complete. |
| if (!text || input.native || order || input.textMatch === 'any' || !exact.next) return exact | ||
| try { | ||
| const titled = await searchIssues(jiraSummaryClause(text)) | ||
| if (!titled.documents.length) return exact |
There was a problem hiding this comment.
Half-term title boost is missing
For queries with three or more terms, an empty summary search returns exact immediately. The PR description promises that issues whose summary holds at least half the terms should lead in this case, but this branch only tries the every-term search. Users still get the original newest-first page.
Add the half-term summary fallback while preserving the original all-terms requirement.
* revert(search): restore the v0.9.23 Jira text search Reverts the Jira summary tiers (#9111, #9115, #9121, #9129). A plain Jira search again returns the all-terms text match in Jira's order, as in v0.9.23. The stemmedTerms helper stays; cross-source ranking uses it. * chore(search): stop exporting stemmedTerms now only text-match uses it
Summary
text ~query with more matches than fit on one page comes back newest-created first, so on a large Jira the page is whatever was filed most recently with the words anywhere (often bot tickets whose logs contain every word)summary ~) and lead the page with them, then the rest of the all-terms page (a title boost, as field boosting does in Lucene/Elasticsearch); mirrors the Confluence overflow rule from improvement(search): rank an overflowing Confluence all-terms match with relevance search #9001Type of Change
Testing
atlassian.test.ts: 10 new cases (summary-first page, half-the-terms fallback, two-term queries kept to every term, no summary hits, refusal/timeout fallback, cancellation, one-page match, date/native/any-term untouched); each guard reverted and its test went redChecklist
test-auditauthoring gate)