Skip to content

Add shared/global contributor blacklist (#1425)#1531

Open
tmimmanuel wants to merge 3 commits into
JSONbored:mainfrom
tmimmanuel:fix-1425-shared-contributor-blacklist
Open

Add shared/global contributor blacklist (#1425)#1531
tmimmanuel wants to merge 3 commits into
JSONbored:mainfrom
tmimmanuel:fix-1425-shared-contributor-blacklist

Conversation

@tmimmanuel

Copy link
Copy Markdown

Summary

  • Added shared/global contributor blacklist persistence via new migration-backed singleton table global_contributor_blacklist and DB read/write APIs.
  • Wired global blacklist into repository settings resolution so effective settings are .gittensory.yml/DB + shared/global list.
  • Added focused unit coverage for DB round-trip, resolution merge behavior, and a self-tune path regression guard.

Validation

  • npm run db:migrations:check
  • npm run typecheck
  • npm test -- test/unit/contributor-blacklist.test.ts test/unit/focus-manifest.test.ts test/unit/selftune-readback.test.ts
  • npm run test:unit

Closes #1425

@tmimmanuel tmimmanuel requested a review from JSONbored as a code owner June 26, 2026 15:30
@dosubot dosubot Bot added the size:M This PR changes 30-99 lines, ignoring generated files. label Jun 26, 2026
@codecov

codecov Bot commented Jun 26, 2026

Copy link
Copy Markdown

Codecov Report

✅ All modified and coverable lines are covered by tests.
✅ Project coverage is 95.37%. Comparing base (b5d575e) to head (5768d7f).
⚠️ Report is 6 commits behind head on main.
✅ All tests successful. No failed tests found.

Additional details and impacted files
@@           Coverage Diff           @@
##             main    #1531   +/-   ##
=======================================
  Coverage   95.37%   95.37%           
=======================================
  Files         199      199           
  Lines       21546    21557   +11     
  Branches     7791     7795    +4     
=======================================
+ Hits        20550    20561   +11     
  Misses        416      416           
  Partials      580      580           
Files with missing lines Coverage Δ
src/db/repositories.ts 96.14% <100.00%> (+0.02%) ⬆️
src/settings/repository-settings.ts 100.00% <100.00%> (ø)
src/signals/focus-manifest.ts 98.19% <100.00%> (+<0.01%) ⬆️
🚀 New features to boost your workflow:
  • 📦 JS Bundle Analysis: Save yourself from yourself by tracking and limiting bundle sizes in JS merges.

@superagent-security

Copy link
Copy Markdown

Superagent didn't find any vulnerabilities or security issues in this PR.

@JSONbored JSONbored added the gittensor:bug Gittensor-scored bug fix - worth 0.5x multiplier. label Jun 26, 2026
@gittensory-orb

gittensory-orb Bot commented Jun 27, 2026

Copy link
Copy Markdown

Caution

🟥🟥🟥🟥🟥🟥🟥🟥🟥🟥🟥🟥

🛑 Gittensory review — blocked

7 files · 1 AI reviewers · no blockers · readiness 55/100 · CI failing · blocked

🛑 Blocked

CI checks failing

  • validate
  • lint
Signal Result Evidence
Code review ✅ No blockers 1 reviewers, synthesized
Linked issue ✅ Linked #1425
Related work ⚠️ 2 scoped overlaps Top overlaps are listed below; lower-confidence bulk is hidden.
Review load ❌ 8/20 Readiness component derived from cached public PR metadata and labels; size label size:M.
Validation evidence ❌ 5/25 Cached preflight status is hold.
Open PR queue ❌ 3/10 48 open PR(s), 9 likely reviewable, 39 unlinked.
Contributor context ✅ Confirmed Gittensor contributor tmimmanuel; Gittensor profile; 31 PR(s), 35 issue(s).
Gate result ✅ Passing No configured blocker found.
Nits — 1 non-blocking
  • Repository config was not parsed
Review context
Contributor next steps
  • Review top overlaps.
  • Add scope summary.
  • Fix blocker.
  • Expect slower review.
  • Refresh registry data or choose a registered active repo.
  • Check active issues and PRs before submitting.
Signal definitions
  • Related work = same linked issue, overlapping active PRs, or title/path similarity.
  • Review load = cached public PR metadata such as size labels, changed paths, and preflight status.
  • Open PR queue = repo-wide review pressure; it is not a PR quality failure.
  • Contributor context = public GitHub/Gittensor identity context; non-Gittensor status is not a blocker.

🟩 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.

  • Re-run Gittensory review

@gittensory-orb gittensory-orb Bot added the gittensor Gittensor contributor context label Jun 27, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

gittensor:bug Gittensor-scored bug fix - worth 0.5x multiplier. gittensor Gittensor contributor context size:M This PR changes 30-99 lines, ignoring generated files.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

feat(anti-abuse): configurable contributor blacklist — auto-label + auto-close banned logins

2 participants