3.1 KiB
3.1 KiB
ADDED Requirements
Requirement: ZAI findings produce keycheck candidates
The scanner SHALL create ZAI keycheck candidates for detector-qualified zai-..., compatible sk-..., and bounded dotted ZAI/Zhipu key forms.
Scenario: Existing ZaiGLM detector finding
- WHEN the
ZaiGLMcustom detector emits a bounded API credential - THEN candidate extraction SHALL preserve its finding attribution and route it to ZAI or the ambiguous resolver according to persisted provider evidence
Requirement: ZAI validation proves generation availability
The ZAI checker SHALL authenticate with a model-list request and SHALL require a bounded one-token glm-5.2 generation probe before classifying a credential as valid and alive.
Scenario: Global ZAI credential
- WHEN the global ZAI
/modelsendpoint accepts the credential and the bounded generation probe succeeds - THEN the checker SHALL record a valid authenticated ZAI result with bounded model and probe metadata
Scenario: China Zhipu credential
- WHEN the global endpoint rejects a credential but the configured China endpoint accepts it and its bounded generation probe succeeds
- THEN the checker SHALL record the credential as ZAI with the successful endpoint region
Scenario: Model listing succeeds but generation is unavailable
- WHEN
/modelsauthenticates the credential but the generation probe reports quota, balance, permission, transient, or inconclusive failure - THEN the checker SHALL preserve the authenticated ZAI match but SHALL NOT classify the credential as valid or write it to the alive set
Scenario: Model listing omits GLM 5.2
- WHEN
/modelsauthenticates the credential but does not advertiseglm-5.2 - THEN the checker SHALL still probe the fixed
glm-5.2target and SHALL NOT substitute another model
Requirement: ZAI responses are classified by protocol evidence
The checker SHALL classify HTTP status and documented ZAI business error codes without treating inconclusive failures as invalid credentials.
Scenario: Authentication rejected
- WHEN ZAI returns HTTP 401 or an authentication-failure business code
- THEN the attempt SHALL be classified as a definitive provider mismatch or dead direct credential
Scenario: Authenticated balance or plan restriction
- WHEN ZAI returns a provider-specific balance, usage-plan, or permission response during model listing or the generation probe
- THEN the attempt SHALL be marked as belonging to ZAI with the corresponding limited, no-balance, or restricted status
Scenario: Network or server failure
- WHEN the request fails in transit or ZAI returns a server error
- THEN the checker SHALL classify the attempt as retryable rather than dead
Requirement: ZAI participates in normal runtime accounting
The ZAI checker SHALL use the existing PostgreSQL lease, result, current-state, projection, and summary infrastructure.
Scenario: Scheduled ZAI work exists
- WHEN the unified keycheck scheduler detects claimable ZAI candidates
- THEN it SHALL launch the ZAI checker with the same authority and bounded-slice controls used for other providers