fix(metagraphed): gittensory-consume-metagraphed - #762
Conversation
|
Note Gittensory Gate skippedPR closed before full evaluation. No late first comment was created.
💰 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. |
|
Superagent didn't find any vulnerabilities or security issues in this PR. |
|
gittensory · advisory review Reviewed 1 changed file(s) — two independent AI reviewers. Changed files: Suggested action: 🛠️ Request changes. (reviewers split: request changes / merge) Address the suggestions below before merging. Reviewer A · Suggestions
Worth double-checking
Reviewer B · Suggestions
Worth double-checking
|
Codecov Report✅ All modified and coverable lines are covered by tests. Additional details and impacted files@@ Coverage Diff @@
## main #762 +/- ##
=======================================
Coverage 96.59% 96.59%
=======================================
Files 91 91
Lines 13646 13646
Branches 4975 4975
=======================================
Hits 13182 13182
Misses 97 97
Partials 367 367 ☔ View full report in Codecov by Harness. 🚀 New features to boost your workflow:
|
JSONbored
left a comment
There was a problem hiding this comment.
PR #762 — fix(metagraphed): gittensory-consume-metagraphed
Verdict: MERGE
Resolves issue #697: FULLY
CI: All required checks green (validate, test 1/2, workers, mcp, ui, lint, security, codecov patch+project). gittensory/Context gates neutral = informational.
Highlights:
- Clean layering: pure detector/finding core (src/signals/subnet-claim.ts, no network) + HTTP client (src/services/metagraphed.ts), wired into both PR and issue webhook paths.
- Fail-open & advisory-only: 404 -> not_found finding; non-2xx/timeout/parse error -> unavailable -> NO finding; AbortSignal.timeout caps the request so a slow upstream can't stall the webhook.
- Dormant unless METAGRAPHED_API_URL is set; netuid regex dedups per netuid and bounds <=1023 to avoid matching years/PR numbers. Tests assert public-safe wording.
Concerns / required changes:
- Unrelated package-lock.json churn (wrangler/miniflare/workerd bump, drops rosie-skills) — scope creep on an XS feature; appears to be an upstream-sync artifact.
- Detection runs on title+body only, not changed code paths — matches the issue's wording but a claim only in code won't be caught.
Completeness vs issue: Fully satisfies #697 — a PR/issue claiming a non-existent/unhealthy subnet produces an advisory, public-safe finding; advisory-first, dormant by default, exercised directly by a test.
|
@JSONbored I have mixed with other issue. I would like to contribute here, Could you reopen this PR? |
Summary
This PR implements metagraphed consumption for gittensory, enabling validation of Bittensor subnet/netuid integration claims in pull requests and issues. When a contribution claims to integrate a specific subnet (e.g., "integrates subnet 42" or "uses SN74"), gittensory now validates that claim against the metagraphed API to verify:
The feature operates in ADVISORY mode only — validation failures surface as warning-level findings in the advisory gate, never blocking contributions. This implements roadmap item roadmap: contribution quality & adoption wave #525 and resolves issue gittensory consumes metagraphed: validate subnet/netuid claims as gate evidence #697.
The integration is fail-open by design: metagraphed outages, timeouts, or unexpected responses map to "unavailable" status and produce no findings, ensuring external service health never disrupts the contribution flow.
Related Issue
Closes: #697
Change Type
Select all that apply:
Real Behavior Proof
Detection Examples
The subnet claim detector matches common phrasings:
Validation Flow
METAGRAPHED_API_URL/subnets/{netuid}subnet_claim_not_foundfindingsubnet_claim_unhealthyfinding