feat(signals): wire test coverage classification across contributor surfaces - #2680
Conversation
…urfaces Extend test-evidence with fixture-path detection and a shared coverage summary, then surface weak/adequate/strong classification in local workspace intelligence, slop assessments, the contributor open-PR monitor, and the OpenAPI contract. Co-authored-by: Cursor <cursoragent@cursor.com>
Codecov Report❌ Patch coverage is
Additional details and impacted files@@ Coverage Diff @@
## main #2680 +/- ##
==========================================
- Coverage 96.10% 96.10% -0.01%
==========================================
Files 237 237
Lines 26542 26585 +43
Branches 9625 9640 +15
==========================================
+ Hits 25509 25549 +40
Misses 424 424
- Partials 609 612 +3
🚀 New features to boost your workflow:
|
|
Caution 🟥🟥🟥🟥🟥🟥🟥🟥🟥🟥🟥🟥 🛑 Gittensory review result - reject/close recommendedReview updated: 2026-07-03 05:20:10 UTC
🛑 Suggested Action - Reject/Close
Review summary Blockers
Nits — 5 non-blocking
Why this is blocked
CI checks failing
Review context
Contributor next steps
Signal definitions
🟩 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.
Merge conflicts + review blockers.
This branch has conflicts that must be resolved
Use the [web editor](https://github.com/JSONbored/gittensory/pull/2680/conflicts) or the command line to resolve conflicts before continuing.
test/unit/test-evidence.test.ts
…ubmissions (JSONbored#2586) * fix(review): stop the surface lane from auto-closing clean registry submissions Two bugs in the registry surface-review lane were closing structurally clean registry submissions: 1. classifyRegistryPrScope already approves a genuine debut-provider companion file riding alongside an entry submission (isAllowed matches providerFilePattern), but runSurfaceReview threw that away and routed any companion file straight to manual review. It now validates the companion via the spec's assessProviderEntry and combines it with the entry's own assessment: merge only when both sides are clean, close if either is invalid. artifactPattern companions (generated build output) are still allowed as-is with no validation attempted. The entry/base/companion fetches run concurrently instead of sequentially. 2. A duplicate_pr_risk finding (severity "warning") escalated into a hard blocker by duplicatePrGateMode: "block" was able to singlehandedly override a clean, deterministic surface-lane merge and force the whole PR closed via applySurfaceGate's unconditional union. It now downgrades to a neutral hold instead, mirroring the existing AI-judgment-only carve-out, and the held check-run's title/summary name the actual reason. This is scoped to exactly duplicate_pr_risk (not every warning-severity finding), since missing_linked_issue / self_authored_linked_issue / manifest_linked_issue_required / manifest_missing_tests are also warning-severity but block-mode-escalatable via their own independent maintainer-configured gate and must still close outright when a maintainer opts into that. Both were confirmed live against JSONbored/metagraphed: PR JSONbored#2654 (an entry + debut-provider companion) and PR JSONbored#2680 (a provider-only resubmission sharing JSONbored#2654's linked issue) now resolve to merge and a held-for-review neutral hold respectively, instead of reject/close. * fix(review): confirm a provider companion is actually a debut before merging it classifyRegistryPrScope identifies a companion by file path alone (providerFilePattern), which only proves the file is shaped like a provider submission, not that it's a genuine debut (a brand-new provider, not an edit to one already registered). runSurfaceReview now also fetches the companion's base content and only runs it through the debut-provider merge/close flow when base is absent; a companion that already exists at base routes to manual instead, since editing an existing, unrelated provider record alongside an entry submission is a more sensitive shape that needs a human. The entry and both companion refs are still fetched in one concurrent round-trip.
Summary
test-evidencewith fixture/mock path detection and a sharedbuildTestCoverageSummary()(strong / adequate / weak / absent).testCoverageon local workspace intelligence and add a newweak_test_coverageslop signal (info-level, weight 10 — does not block alone).openapi.json.Scope
feat(signals): …).linkedIssuePolicyispreferred; self-evident contributor-intelligence feature.Validation
git diff --checknpm run typechecknpm run ui:openapi(OpenAPI contract updated)npm run test:ci— CI on GitHub ActionsSafety
missing_tests).