Question: should the Model Pool's judge go free, or be skipped, while the OpenRouter balance is low?
I maintainer di solito rispondono entro 1 giorno
Nessuno ha ancora preso questa issue.
Valutazione
- Difficoltà
- 5/5
- Tempo stimato
- Più di una settimana
- Idoneità per principianti
- 35/100
- Tipo di issue
- Funzionalità
- Chiarezza
- Abbastanza chiara
- Stato di attività
- Attiva
- Stack tecnologico
- go
- Ambito
- ai-infra-agents, cli, documentation
Direzione di ricerca
Read internal/credits/credits.go for LowCreditsUSD and Reading.Low, then inspect Candidates in internal/pool/judge/judge.go and the judge loop in cmd/codeaf/poolrecord.go. Review the low-credit guidance in internal/manual/chat/openrouter-credits.md and models-and-costs.md. Done requires a maintainer decision among the three options, matching behavior, and documentation that explains what happens to judges when credit is low.
Scritto dal modello di indicizzazione a partire dal testo della issue.
Descrizione
A question for a ruling, not a defect. Nothing here behaves differently from how it was written. #1440 made a new situation possible, and nobody has decided how the Model Pool's judge should behave in it.
What is true today
- #1440 (merged into
devasf101ad2e7) reads the OpenRouter balance. When the account is known to be low (credits.LowCreditsUSD, $0.50 or less remaining), every crew tier the person has not written a model for goes to a free model, so a near-zero account keeps working on free models. - After a task lands, the Model Pool records it and asks a judge model to score the seats that ran it (
cmd/codeaf/poolrecord.go, the loop that callsjudge.Judge). It asks up tojudgeTriescandidates in turn. - The judge is never free.
judge.Candidatesininternal/pool/judge/judge.goleaves out every row whose prompt and completion prices sum to zero, and every id ending in:free. Its comment gives the reason: a free row is rate-limited and answers with a 429 when a judge most needs an answer.
Together: on an account codeaf itself knows is almost out of credit, the task's own work runs on free models, but the judge pass after it still picks the cheapest paid model that qualifies. That call spends from the balance #1440 is trying to protect. When the balance is nearly empty, the call is also likely to fail with a 402 that nobody sees, and the pool then records a failed judge attempt instead of scores.
The options
- A free judge while the balance is low. Drop the free-row exclusion when the reading says
Low, and accept 429s. A judge that fails costs nothing, and the pool already records a failed judge as such. - Skip the judge pass while the balance is low. The landing is recorded unjudged, with a reason such as
balance low. Nothing is spent, and the pool loses those scores. - Keep it paid. The scores are worth the cents. If so, the manual should say that a judge call is paid even when the crew has gone free, and the low-credit notice should not imply that everything is now free.
Whichever is chosen, the words a person reads about low credit (internal/manual/chat/openrouter-credits.md and models-and-cost.md) should say what the judge does.
Where
internal/pool/judge/judge.go:Candidates. Search forA free row is a rate-limited.cmd/codeaf/poolrecord.go: the judge loop. Search forjudge.Candidates(models(), seats, judge.DefaultFloor).internal/credits/credits.go:LowCreditsUSDandReading.Low.
Raised while merging #1440 into santos/dev2 for #1410.
- Lingua principale
- Go
- Stelle
- 115
- Fork
- 14
- Merge medio
- 9h 35m
- PR unite (30g)
- 752
Preparare l'ambiente
Non abbiamo ancora controllato i file di configurazione di questo progetto. Parti dal suo README e consulta la nostra guida al primo contributo per i passaggi generali.
Come iniziare
- Leggi tutta la issue e poi la guida ai contributi del progetto.
- Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
- Fai un fork del repository e lavora su un branch.
- Apri una pull request che faccia riferimento al numero della issue.
Altre issue di Agent-Field/CodeAF
-
area:chat bug sev:papercut
Difficoltà 2/5 1-3 ore Idoneità per principianti 86/100
Agent-Field/CodeAF#1592 ·
I maintainer di solito rispondono entro 1 giorno
-
area:headless bug sev:critical
Difficoltà 2/5 1-3 ore Idoneità per principianti 88/100
Agent-Field/CodeAF#1566 ·
I maintainer di solito rispondono entro 1 giorno
-
area:chat bug sev:critical
Difficoltà 2/5 1-3 ore Idoneità per principianti 82/100
Agent-Field/CodeAF#1548 · 1 commento ·
I maintainer di solito rispondono entro 1 giorno
-
area:chat feature
Difficoltà 2/5 1-3 ore Idoneità per principianti 88/100
Agent-Field/CodeAF#1510 ·
I maintainer di solito rispondono entro 1 giorno
-
area:tests bug
Difficoltà 2/5 1-3 ore Idoneità per principianti 82/100
Agent-Field/CodeAF#1489 ·
I maintainer di solito rispondono entro 1 giorno
Tutte le issue di Agent-Field/CodeAF
Issue simili
-
bug needs triage
Difficoltà 2/5 1-3 ore Idoneità per principianti 78/100
I maintainer di solito rispondono entro 1 giorno
-
bug P2 reliability
Difficoltà 2/5 1-3 ore Idoneità per principianti 88/100
afreidah/s3-orchestrator#1564 ·
I maintainer di solito rispondono entro 1 giorno
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 84/100
blinklabs-io/gouroboros#2577 ·
I maintainer di solito rispondono entro 1 giorno
-
agentic-workflows
Difficoltà 2/5 1-3 ore Idoneità per principianti 68/100
I maintainer di solito rispondono entro 1 giorno
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 88/100
I maintainer di solito rispondono entro 1 giorno