feat(scoring): wire valid-issue token floor into lifecycle and preview (#808) - #1700
feat(scoring): wire valid-issue token floor into lifecycle and preview (#808)#1700bohdansolovie wants to merge 1 commit into
Conversation
JSONbored#808) Rebase of closed JSONbored#1617 onto current main. Apply MIN_TOKEN_SCORE_FOR_VALID_ISSUE to linked-issue previews, lifecycle classification, outcome history, score breakdown, and OpenAPI surfaces while preserving merged open-issue breakdown copy. Co-authored-by: Cursor <cursoragent@cursor.com>
Codecov Report✅ All modified and coverable lines are covered by tests. Additional details and impacted files@@ Coverage Diff @@
## main #1700 +/- ##
=======================================
Coverage 95.58% 95.59%
=======================================
Files 204 204
Lines 22295 22337 +42
Branches 8053 8076 +23
=======================================
+ Hits 21310 21352 +42
Misses 408 408
Partials 577 577
🚀 New features to boost your workflow:
|
|
Warning 🟨🟨🟨🟨🟨🟨🟨🟨🟨🟨🟨🟨 ⏸️ Gittensory review — held for maintainer review
⏸️ Held for maintainer review — This is a first-time contribution to this repo, so the gate stays advisory rather than blocking. The findings remain visible, and the gate will apply normally once this author has merge history here. Review summary Blockers
Concerns raised — review before merging
Nits — 6 non-blocking
Review context
Contributor next steps
Signal definitions
Review detailsGenerated from public PR metadata and the diff. Advisory only; deterministic signals remain authoritative. The change correctly threads the new valid-issue token floor through preview schemas and adds lifecycle support, but two user-facing paths are now wrong on reachable inputs. The lifecycle token lookup is keyed too coarsely for GitHub PR numbers, and the score breakdown treats a non-applicable gate as if the source change passed the floor. Blockers
Nits (5)
🟩 Safe / merged · 🟦 Advisory · 🟨 Held for review · 🟥 Blocked / closed 💰 Earn for open-source contributions like this. Gittensor lets GitHub contributors earn for the work they already do — register to start earning →. Checked by Gittensory, a quiet PR intelligence layer for OSS maintainers.
|
JSONbored
left a comment
There was a problem hiding this comment.
See review comments for things that need to be fixed before resubmitting.
Summary
Rebases #1617 onto current
mainafter #1284 (contributor validity floors) and #1453 (open-issue breakdown) landed.Wires
MIN_TOKEN_SCORE_FOR_VALID_ISSUE(#808) into contributor-facing scoring and issue-discovery lifecycle:validIssueTokenFloor/validIssueTokenGatePassedand a context blocker (valid_issue_token_floor) when linked-issue mode is active and planned source tokens are below the upstream floor.valid_solved→solvedwhen the official solver PR's GittensortokenScoreis below the floor; outcome history uses the same classifier path.solverTokenScoreIndexFromGittensorindexes official PR token scores from the Gittensor snapshot embedded in contributor profiles.validIssueTokenGate,mergedHistoryMultiplier, andissueDiscoveryHistoryMultiplierexplanations (keeps main's existingopenIssueMultipliercopy from feat(scoring): explain the open-issue spam gate in the score breakdown #1453).Fixes #808 (partial — valid-issue token floor; other #808 gates already merged via #1284 / #1453).
Test plan
npx vitest run test/unit/scoring.test.ts test/unit/signals.test.ts test/unit/score-breakdown.test.tsvalid_issue_token_floorwhensourceTokenScoreis below floor in linked-issue modevalid_solvedwhen solver PRtokenScoreis below floorsolverTokenScoreIndexFromGittensormaps official PR rowsvalidIssueTokenGatecomponentnpm run ui:openapi:check