Three P2 findings from LibreChat-AI#16875 on the resolver output pin in client/src/Providers/__tests__/themeCache.spec.ts, deferred by the owner at head c972bfb.
The pin is a tripwire for resolver output changes without an epoch bump, not a proof of every validator change. Prefer deriving the candidate set from the validator definitions (enum literals and joint rules) over growing a hand list.
Three P2 findings from LibreChat-AI#16875 on the resolver output pin in
client/src/Providers/__tests__/themeCache.spec.ts, deferred by the owner at head c972bfb.ACCEPTEDmap by token before hashing, so reorderingappearanceValidatorsdoes not ask for an unneeded epoch bump: 🧬 test: Pin Built-In Theme Output to the Cache Epoch LibreChat-AI/LibreChat#16875 (comment)fieldFillStyle: 'transparent',labelFontWeight: 'inherit') inAPPEARANCE_CANDIDATES, so tightening one of them changes the digest: 🧬 test: Pin Built-In Theme Output to the Cache Epoch LibreChat-AI/LibreChat#16875 (comment)switchWidthwithswitchHeight), so a tightening that rejects a formerly valid pair changes the digest: 🧬 test: Pin Built-In Theme Output to the Cache Epoch LibreChat-AI/LibreChat#16875 (comment)The pin is a tripwire for resolver output changes without an epoch bump, not a proof of every validator change. Prefer deriving the candidate set from the validator definitions (enum literals and joint rules) over growing a hand list.