This release is a pre-release and may not be stable for production use.
adcp-reporting-storage
PostgreSQL and object-storage implementations of the AdCP Reliable Reporting stores, maintained in the adcp-client-python repository and versioned on its own line.
adcp defines the store protocols, the
in-memory stores, the producer, the get_reporting_status handlers, the
reconciliation logic and the row encoding. This distribution implements those
protocols durably:
| What | Where |
|---|---|
| Core ledger, reconciliation, materializer, receipt, feed, projection and production stores over PostgreSQL | adcp_reporting_storage.ledger.pg, .ledger.delivery_pg, .materializer.pg, .receipts.pg, .feed.pg, .projection.pg, .production.pg |
| Notification, status and activity queues over PostgreSQL | adcp_reporting_storage.outbox.pg, .outbox.status_pg, .outbox.status_activity_pg |
| Chunked revision row storage, with filesystem, Google Cloud Storage, Amazon S3 and Azure Blob providers | adcp_reporting_storage.ledger.row_storage* |
| The host change feed, period retirement, row migration and retention | adcp_reporting_storage.ledger.change_feed, .period_retirement, .row_migration, .row_retention |
| Durable inline source staging and seals, buyer submission intents | adcp_reporting_storage.inline_storage, .submissions.pg |
| Caller-ownership migration helpers | adcp_reporting_storage.migration |
The adapter-first ReliableReportingService over a borrowed pool |
adcp_reporting_storage.service |
Every public name is also importable from the top-level package, lazily:
from psycopg_pool import AsyncConnectionPool
from adcp.reporting.ledger import ProducerOfferings, ReportingProducer
from adcp_reporting_storage import PgReportingLedgerStore, ReportingRowStorageOptionsV1
async with AsyncConnectionPool(dsn, min_size=2, max_size=10) as pool:
store = PgReportingLedgerStore(
pool=pool,
row_storage=ReportingRowStorageOptionsV1(deployment_namespace="prod-us"),
)
await store.create_schema()
producer = ReportingProducer(source=..., offerings=ProducerOfferings(...), store=store)
await producer.run_worker()
Install
pip install "adcp-reporting-storage[pg]" # PostgreSQL stores (psycopg)
pip install "adcp-reporting-storage[pg,gcs]" # + rows on Google Cloud Storage
pip install "adcp-reporting-storage[pg,s3]" # + rows on Amazon S3
pip install "adcp-reporting-storage[pg,azure]" # + rows on Azure Blob Storage
adcp is a dependency and is installed with it. The cloud providers take a
client you build; the extras only pin the client libraries.
Compatibility
This package implements the protocols of one adcp major and imports a few
private helpers of adcp.reporting to do so (adcp.reporting.ledger._record_rows,
_delivery_state, status_snapshot). Its dependency range is therefore one
major (adcp>=9.0.0,<10), and a new adcp major means a new release here.
adcp never imports this package; a test in the main repository enforces that.
Versioning
0.x: breaking changes may land in a minor release, each with a migration note in
CHANGELOG.md. The package reaches 1.0 when the storage layout
shared with the JavaScript SDK (@adcp/reporting-storage) is declared stable.
Documentation
The guides live in the repository: Reliable Reporting service, row storage, ledger migrations, caller-ownership migration, and the migration note for the 9.0 split.
Metadata
Release files for adcp-reporting-storage 0.1.0b1
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | Provenance | |
|---|---|---|---|---|
| adcp_reporting_storage-0.1.0b1.tar.gz | 285.4 kB | With provenance | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| adcp_reporting_storage-0.1.0b1-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 609.0 kB
Release files / adcp_reporting_storage-0.1.0b1.tar.gz
| Download URL | adcp_reporting_storage-0.1.0b1.tar.gz |
|---|---|
| Size | 285.4 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
3571e4d56820d3360940b860bb1114ed995a4eb30a678ae40e559ab6d320848a
|
|
BLAKE2b-256 checksum How to use checksums |
4d663dd0f5ace585164bd97182b42f56d56dbd8a53b36c92a8ff4a1059734a72
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/6.1.0 CPython/3.13.7
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Oct 24, 2026.
Transparency logRelease files / adcp_reporting_storage-0.1.0b1-py3-none-any.whl
| Download URL | adcp_reporting_storage-0.1.0b1-py3-none-any.whl |
|---|---|
| Size | 323.6 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
a47a0e0e552966504a97d3e483acc6aa59ed06d254e62ff929b7a8f5eda35333
|
|
BLAKE2b-256 checksum How to use checksums |
144d3667f39fcde9329e5099eecedfa401817f219dbe37d308798790714668bc
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/6.1.0 CPython/3.13.7
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Oct 24, 2026.
Transparency logSecurity for adcp-reporting-storage 0.1.0b1
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
Full provenance
All 2 files in this release have been uploaded with provenance metadata.
Attestation for adcp_reporting_storage-0.1.0b1.tar.gz
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Oct 24, 2026.
Transparency logA note on package security
PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.
To learn more about protecting yourself from malicious actors, visit our package security documentation.