Repository navigation
feat(admin): expose selector member set-aside state in pool visibility - #15240
Merged
diegosouzapw merged 1 commit intoOct 2, 2026
Merged
diegosouzapw merged 1 commit into
diegosouzapw merged 1 commit into
Conversation
maxmad64bis
force-pushed
the
feat/pool-member-setaside
branch
from
September 30, 2026 21:51
2949bc5 to
988a793
Compare
maxmad64bis
marked this pull request as ready for review
September 30, 2026 22:07
This was referenced Sep 30, 2026
diegosouzapw
merged commit Oct 2, 2026
2065c1f
into
cheaper-inference:release/v3.8.52
24 of 25 checks passed
Collaborator
|
Thanks @maxmad64bis — merged into |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
Extends the admin pool visibility route so each pool member also reports per-selector-member set-aside state as
memberSetAside: [{ member, avoided, setAside: { kind, since, endsAt, streak } | null }](proof:src/app/api/admin/proxy-pool-visibility/route.ts+30/−6,toMemberViewgains anowparameter frozen once per request and propagated to all four time reads).The state comes from two new read-only helpers —
snapshotMemberSetAside(entryKey, member, nowMs?)reusesreadMemberState, theREFUSAL_KINDSloop, theREFUSAL_POLICIEScurve and the sharedProxySetAsideSnapshottype, whilelistEntryMembers(entryKey)enumerates member names from composite memory keys only, never throwing (proof:open-sse/utils/proxyRefusalMemory.ts+60 lines, zero new types).The read path triggers no probe of any kind: no
fetch(, noPUT, nogetGroupMembers/switchSelectorcall — enumeration and snapshots are served from process memory alone, and healthy members report an explicitsetAside: nullrather than an ambiguous absence (proof: route grep forfetch(,getGroupMembers,switchSelector,includeSecrets: truereturns zero hits; zero-probe test extended to bangetGroupMembers).Related Issues
Follow-up (extension) of #14754, which introduced the entry-level set-aside view in this same route; this PR adds the per-selector-member level underneath it.
Validation
npm run lintEvidence (
proxyRefusalMemory.ts+60/−0, route +30/−6, tests +170/−0, no existing test modified): two read-only helpers (member snapshot reusing the shared backoff curve; key-enumeration that never throws), onenowfrozen per request across all four time reads, five snapshot/listing cases plus one route case (avoided: truewithsince < endsAtvsavoided: falsewithsetAside: null).Tests Added Or Updated
tests/unit/proxy-pool-visibility.test.ts(+170/−0, separatetestcases,finallyreset): five snapshot/listing cases plus one route case, covering miss, hit, expiry, multi-kindseqrule, guards, and both route states.Coverage Notes
open-sse/andsrc/: both new helpers are covered by the five snapshot/listing cases, and the route mapping (ISO formatting, explicitnull, frozennow) is covered by the route case.Reviewer Notes
memberSetAsideis memory insertion order and is not stable across restarts or post-purge reinsertion (documented in the helper JSDoc); no sorting applied in this route.changelog.d/features/15240-selector-member-set-aside-visibility.md.