feat(pool): no machine-wide width - 128 passes per available account
Jorijn: "there is no need to do a global cap anymore, the cap should be 128 per available account". `--concurrency` no longer defaults to 128: the limits are each OAuth account's 128 (and the local login's), every driver's counted, an API seat's own REVIEW_GATES_API_CONCURRENCY, and free memory. `--concurrency N` still caps the machine when given; a value below 1 is a usage error. The dump's args.concurrency is null then. The board's driver settings read `128 per account`, which every driver's `seats` shows as that driver's width, and the `seats` header says a width is that driver's cap. The Scheduler test runs 300 passes on two accounts: 256 at once, 128 each. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
parent
c28307601b
commit
61ee4602f4
12 changed files with 98 additions and 19 deletions
|
|
@ -103,8 +103,9 @@ side (`slots.*`). Each instrument is shared in its own way:
|
|||
at what they were admitted at, and the budget's free memory is the
|
||||
reading from before they ran (`Board::MemoryBase`) — "nothing in flight"
|
||||
means nothing on the machine; their passes count in each seat's
|
||||
projection and in an API key's slots; and `--concurrency` is the
|
||||
machine's width, every driver's passes counted. A driver waiting on
|
||||
projection, in an account's 128 and in an API key's slots; and
|
||||
`--concurrency`, when given, is the machine's width, every driver's
|
||||
passes counted. A driver waiting on
|
||||
what another holds re-checks every 30 s. A driver that died is swept by
|
||||
its lifetime lock under the board's `drivers/`, a pass by its deadline. A
|
||||
driver takes its passes with it however it ends: each pass runs under a
|
||||
|
|
@ -241,8 +242,13 @@ therefore the hash: re-freeze with `--replace` into the same dir
|
|||
| 4 | the owner | approves this exact hash, then the push happens |
|
||||
|
||||
Every lens runs on Opus 5.5 at effort `xhigh` (`--effort` overrides).
|
||||
`--concurrency` is 128 by default (2026-10-15), the width of the machine:
|
||||
two drivers running at once share it (2026-10-31, the board). One full run
|
||||
There is no width of the machine by default (2026-10-31, Jorijn: "there is
|
||||
no need to do a global cap anymore, the cap should be 128 per available
|
||||
account"): every OAuth account takes at most 128 passes at once, every
|
||||
driver's counted (`REVIEW_GATES_OAUTH_CONCURRENCY`), an API seat its
|
||||
`REVIEW_GATES_API_CONCURRENCY`, and free memory the rest; `--concurrency N`
|
||||
still caps the machine when given (it was 128 by default from 2026-10-15,
|
||||
the width two drivers running at once shared). One full run
|
||||
per hash: a second on the same hash is refused while the first is live
|
||||
(`State::RunLock`; a test run takes a run number of its own), and no two
|
||||
drivers share a scratch dir. `flatpak run net.catcrafts.CrafterReview seats` shows the
|
||||
|
|
@ -583,4 +589,6 @@ repository.
|
|||
account takes at most 128 passes at once (every run measured with 149 or
|
||||
more in flight on one account drew usage-limit rejections); a 'concurrents' rejection backs the seat off for seconds,
|
||||
not until a window's reset; `seats` shows `no limit` in such an account's
|
||||
5-hour column.
|
||||
5-hour column. Then (Jorijn: "there is no need to do a global cap anymore,
|
||||
the cap should be 128 per available account") the machine-wide width
|
||||
went: `--concurrency` caps only when given.
|
||||
|
|
|
|||
Loading…
Reference in a new issue