cleanyour.tv · Bot
maintainer-bot
Every pull request here is reviewed by an open-source bot that runs on 0G Private Computer.
MIT licensed
01Why it exists
- 963pull requests since the repo opened on 17 Oct706 merged · 68 open
- 451people sent them
- 174waiting at once, at the peak21 Oct
- 1maintainer to read them all
251 on the busiest day, 20 Oct. Each one can disable system packages on someone’s TV or touch a launcher that has to stay small.
02How it decides
- 1FactsNo modelFolders, protected packages, conflicts with main, size, strings per locale, new permissions or network use.
- 2DecideClaude Opus 5.5The repo's written rules, a checklist for this kind of PR and the maintainer's past decisions on the most similar PRs.
- 3CriticClaude Sonnet 5Before a code or judgement-call merge: the strongest rule-backed reason not to merge?
- 4Second opinionGLM-5.3-flashA cheaper model on every PR. If it points another way, the maintainer decides.
- 5Hard rulesNo modelDeterministic rules always win, and can only make a verdict more cautious.
- One commentA suggestion, or “needs maintainer”.
- Abstains when unsure. Below its confidence bar, or when the second opinion disagrees, the PR goes to the maintainer.
- Some PRs always go to the maintainer. Safety rules and PROMPT.md, workflows, protected packages: no model call at all.
- Unchanged pushes cost nothing. A rebase or a main merge re-runs the facts and rules on the earlier review, without a model call.
The right model for each step
Depth where it matters, speed and cost where it doesn’t. Claude Opus 5.5, Claude Sonnet 5 and GLM-5.3-flash all run on 0G Private Computer, through one router key.
- Claude Opus 5.5 on 0G PCdecides4.7¢ a call
- Claude Sonnet 5 on 0G PCcritic, only before a merge1.8¢ a call
- GLM-5.3-flash on 0G PCsecond opinion, every PR0.3¢ a call
Cost per call in the v4 backtest: 206 calls for $9.60, 33 calls for $0.60, 167 calls for $0.43.
03What it suggests
Merged here
- mergeCorrect, in scope, nothing to change.
- merge with fixMergeable after one small fix, spelled out.
- reworkWorth having. One clear ask first.
- closeA duplicate, superseded or against the base rules. Kindly.
A better home
- showcaseA big or different idea: your fork plus a SHOWCASE.md row.
- add-onCan be its own small app under addons/.
- themeA new look that a themes/ folder can carry.
The maintainer
- needs maintainerSafety, scope or taste, or the bot is unsure.
It never merges or closes by itself. Phase 1 only suggests: one comment and a few labels. Gathin approves every decision.
04Results, v3 → v4
- Decided without the maintainer
15%31%24 of 162 → 52 of 166 PRs - Right when it decides
92%85%**optimistic, see how we measured - Launcher PRs decided
023of 100. Its 11 launcher merges were all right. - Wrong merges
22v4: #787 and #794, both sent back for changes - Cost per PR~$0.05$0 to re-check an unchanged push
- Reviews run536successful runs since 21 Oct; 343 PRs carry its review
How we measured
A time-split backtest on the maintainer’s real decisions: 219 PRs decided on 21 and 22 Oct. Thresholds were tuned on the 53 decided on 21 Oct, then the bot ran once on the 166 decided on 22 Oct, each PR as it looked at the time, with only earlier decisions as memory. The v3 numbers are the reviews v3 actually posted.
Read 85% as optimistic: one guard was added after seeing the test (without it, 37% decided at 71% right), and the policy was written from the same days’ decisions. The full report.
05Where it goes
- Phase 1LiveSuggestOne comment and a few labels on every PR since 21 Oct.
- Phase 2Built/approve queueA daily queue issue. One /approve, and the bot merges, fixes, thanks and closes as suggested.
- Phase 3NextAutomatic for proven classesOnly kinds of PR with a long, clean record, such as TV lists.
- GoalLaterAny repoA standalone bot any busy repo can use: its rules, its past decisions.
The code, the rules and the reports are on GitHub, MIT licensed. Also: the FAQ, press, add-ons and CleanYourTV on GitHub.