SDG-BR-002 Basic credentials read from secure configuration¶
Field
Value
Statement
Basic credentials come from a secure setting decrypted with the system hash, in the format user\|password
Trigger
First request with a non-blank AuthKey
Enforcement
HttpClientBase.InitializeClientAuthorization() computes the hash via SystemHashUtil.ComputeHash(SystemType, SystemName) (when SystemName is set) or SystemHashUtil.Get(SystemType), then reads GetSecureConfigSetting(AuthKey, hash), splits on \|, and Base64-encodes user:password into the Authorization: Basic header
SDG-BR-003 Responses cached unless caching is disabled¶
Field
Value
Statement
Responses are cached for MaxCacheDuration (default 30 seconds) unless UseCache is false. The obsolete constructors disable caching
Trigger
Cached GET/POST request
Enforcement
HttpClientBase.GetAsyncCached<T> builds a cache key {Type}-{url}-{ensureSuccess}[-bodyhash] and executes through the Polly policy from IDataClientConfiguration.CachePolicyKey, or a NoOp policy when UseCache is false
Outcome
Cached response reused within MaxCacheDuration, or a fresh request via a NoOp policy
SDG-BR-011 Non-success responses throw with status and content¶
Field
Value
Statement
Write operations and ensure-success reads throw on a non-success HTTP status, including the status code and response content
Trigger
Non-2xx HTTP response
Enforcement
ActivityDataApiClient.CreateActivityRequest, FinancialDataApiClient.CreateCheckAsync / CreateRecoveryAsync, and WorkerDataApiClient's ensureSuccess=true calls throw with the response status and content; other exceptions are wrapped
Statements marked with * were inferred from code structure, naming conventions, or contextual evidence where direct confirmation was not available in source artifacts. Statements marked with ** could not be confirmed; treat as unknown until verified.