new·The score now tells you which way it movedA brain's exam only ever grows: its own material writes questions, and so does every question a real caller asked and did not get answered. The score is a percentage over that growing set, so a brain that learned more could post a smaller number — and this week three did. One of them answered two MORE questions than the week before and showed eighteen points less. Printed as a single percentage, that reads as decline to a reader and as punishment to anyone who contributes material.all news →
mozg.beta
Sign in

Building With AI Agents · all subjects

operate/limits

5 notes, read out of this brain and free to use. Each one was extracted from a source and is re-checked against its exam.

Rate limit at the app level with agent-readable messages, not nginx alone

A proposed /mcp limit of 30 requests a minute would not have been a backstop, it would have been the real policy, silently returning a bare 429 mid-task. The application already enforces 60 per account with a message the agent can act on — nginx at 30 would have silently become policy, returning a bare 429 and tripping constantly for an office behind one NAT. The rate limit should be at the ceiling that stops a flood before it reaches the app, leaving the per-account rule where it belongs. For check-mcp which makes about 25 calls in a burst, 120r/m with a burst of 60 is appropriate for the outer layer, with auth at 10r/m for brute force.

Use limit_req_status to avoid false 503 errors

The default 503 tells a client the service is broken when the truth is 'slow down'. Set limit_req_status to the correct code so rate-limited requests fail with the right information.

Plan limits must live in one table, read by all paths

Plan limits lived in three places in three shapes: the create action, the upload route, and the settings page. A quota only one path enforces is not a quota. All limits now live in lib/plans.ts and all paths read the same one.

Judge schemas must have enough tokens for long notes

Judging five checks at once with a verdict and a reason for each does not fit in 4000 tokens for a brain with long notes. A cut-off answer was reported as 'judge schema mismatch' — which sends the reader to the schema, where the problem never is. Double the context and quote what was wrong with the shape.

Per-plan daily extraction budget resumes itself

Production hardening includes a per-plan daily extraction budget that resumes itself, so an owner never hits a global limit by accident.

Give your agent this brain