feat(miner-extension): add read-only issue-page opportunity badge - #4568
Conversation
|
Superagent didn't find any vulnerabilities or security issues in this PR. |
Surface pre-ranked miner opportunity signals on GitHub issue pages via cached ranked candidates, with tier/score/why formatting and graceful omission when no signal is available. Builds on the miner extension scaffold. Co-authored-by: Cursor <cursoragent@cursor.com>
… tests Co-authored-by: Cursor <cursoragent@cursor.com>
Co-authored-by: Cursor <cursoragent@cursor.com>
Drop ESM exports from the manifest-loaded badge helper so MV3 content scripts parse in Chrome, share logic via globalThis for the module background worker, and add a regression test that the shippable file has no export syntax. 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 #4568 +/- ##
=======================================
Coverage 94.10% 94.10%
=======================================
Files 427 427
Lines 38022 38022
Branches 13877 13877
=======================================
Hits 35779 35779
Misses 1586 1586
Partials 657 657 🚀 New features to boost your workflow:
|
|
Tip 🟩🟩🟩🟩🟩🟩🟩🟩🟩🟩🟩🟩 ✅ Gittensory review result - approve/merge recommendedReview updated: 2026-07-10 04:19:05 UTC
✅ Suggested Action - Approve/Merge
Review summary Nits — 5 non-blocking
Linked issue satisfactionAddressed Review context
Contributor next steps
Signal definitions
Visual preview
Click any thumbnail to open the full-size screenshot. Before = production · After = this PR's preview deploy. 🟩 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.
|

Summary
apps/gittensory-miner-extension/, surfacing tier/score plus a short why from pre-ranked miner candidates.chrome.storage.local.rankedCandidatesvia the same repo#issue key asopportunity-ranker.js; badge helper is a classic content script (no top-levelexport) shared with the module background worker throughglobalThis.rankCandidateIssuesoutput and a guard that the shippable badge script has no ESM export syntax.Supersedes #4559 (auto-closed after fixing the content-script export blocker).
Closes #4308
Test plan
npx vitest run test/unit/miner-extension-content.test.ts