ccflow models for HTTP
ccflow-http provides public, domain-neutral HTTP callable models for ccflow workflows. It should own request configuration, auth strategies, request templating, pagination, response parsing, timeout handling, retry/rate-limit integration, and HTTP result metadata.
It should not contain provider-specific endpoint catalogs. Domain packages can configure or subclass these generic models for particular APIs.
- Implemented:
HTTPConfig,HTTPAuth,HTTPContext,HTTPRequestContext,HTTPRequest,HTTPRetryPolicy,HTTPResponseResult, compatibilityHTTPResult,HTTPModel, templated path/query/header rendering, request explanation throughbuild_request, no-auth/bearer/API-key/basic auth helpers, JSON/text/bytes/CSV/gzip response parsing, HTTP status retry classification overccflowretry semantics, accepted error statuses returned as results instead of exceptions, retry event summaries on HTTP results,ccflow-etlExecutionPolicyrequest spacing,next_url/cursor/page/offset pagination, rate-limit header capture, redaction of secret query values (including the configuredapi_key_queryparameter) fromhttpx2request logs, request dumps, result URLs, retry events, and errors,HTTPDownloadModelfor streaming a response to a local file with size and SHA-256,HTTPArtifactCaptureModelfor storing a dated download plus a manifest through accflow-etlfile writer, and mockedhttpx2transport tests. - Partial: the shared execution policy is currently consumed inside
HTTPModelfor sequential request spacing; broader evaluator-level concurrency coordination still belongs in evaluator integrations. - Missing: broader integration examples and provider-specific subclasses/configs in downstream packages.
- Depends on
ccflowfor callable model, context, and result interfaces. - Depends on
ccflowretry policy semantics andccflow-etlexecution policy models. - Must not depend on finance packages or application-specific packages.
Default tests should use mocked httpx2 transports or local fixtures. They should not require live network calls or provider credentials.
Note
This library was generated using copier from the Base Python Project Template repository.