Skip to main content

Meridian Storage OCI

meridian-storage-oci is the Meridian V1 Object Adapter for an OCI Distribution 1.1 registry. Its stable Adapter id is oci-distribution. It implements streaming blob upload and download, digest verification, OCI image manifests for non-container artifacts, exact versions, range reads, bounded maintenance inventory, policy-aware deletion, resumable multipart upload, capability probes, and logical migration helpers behind the released meridian-storage-object-common==1.0.2 contract.

This repository publishes exactly one Python distribution. Provider endpoints, repository names, credentials, upload locations, tags, and manifest digests are private binding state and never appear in consumer Object results or errors.

Install

python -m pip install meridian-storage-oci==1.0.3

Python 3.12 or newer is required.

Composition-root use

Consumers continue to call meridian.catalog("object"). Platform composition creates one adapter per Object Resource binding:

from meridian_storage import ResourceRef
from meridian_storage.adapters.oci import (
    AnonymousCredentials,
    OciDistributionAdapter,
    OciDistributionBinding,
)

binding = OciDistributionBinding(
    resource=ResourceRef("object", "assets", "releases"),
    endpoint="https://registry.example.com",
    repository="meridian/releases",
    credentials=AnonymousCredentials(),
    conditional_create_mode="registry-enforced",
    deletion_enabled=True,
)
adapter = OciDistributionAdapter(binding)

The binding belongs to Platform/Vangu IaC. Application code must not construct this adapter, persist its physical identifiers, or receive its configuration.

OCI representation

Each logical Object id owns a deterministic anchor manifest. Every immutable Object version is an OCI image manifest whose subject is that anchor, whose config blob contains the exact portable Object metadata, and whose single layer is the Object payload. Immutable version tags are derived from hashes of the logical id and content digest. A private latest tag provides digest-less lookup; it is never a consumer release-channel API.

The Adapter records retention intent and enforces retainUntil before delete. It does not claim WORM or regulatory certification. Registry-side immutable-tag and retention enforcement are advertised only when the deployment explicitly declares those verified controls.

Verification

uv sync --all-extras
uv run ruff format --check src tests scripts
uv run ruff check src tests scripts
uv run mypy src
uv run pytest
uv run python scripts/verify_contracts.py
uv build

The integration suite uses the official Distribution reference registry. Set MERIDIAN_OCI_TEST_ENDPOINT and MERIDIAN_OCI_TEST_REPOSITORY to run it against another genuine OCI-compatible registry. Owner-managed registry variants are an explicit gate; mocks are used only for deterministic transport unit tests and are never reported as real-service acceptance.

See architecture, configuration, conformance, and migration.

License

Copyright 2026 Meridian contributors. Licensed under Apache License 2.0; see LICENSE and NOTICE.

Release 1.1.0 separates registry software provenance from the Distribution 1.1.1 protocol and consumes the public Core 1.1.0-compatible dependency closure. See configuration and the gate inventory and exact registry selections.

Metadata

Release files for meridian-storage-oci 1.1.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for meridian-storage-oci 1.1.0
File Size Uploaded
meridian_storage_oci-1.1.0.tar.gz 31.6 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for meridian-storage-oci 1.1.0
File Interpreter ABI Platform
meridian_storage_oci-1.1.0-py3-none-any.whl Python 3 none any Details

Total release size: 74.0 kB

Release files / meridian_storage_oci-1.1.0.tar.gz

Download URL meridian_storage_oci-1.1.0.tar.gz
Size 31.6 kB
Tags Source
SHA-256 checksum
How to use checksums
3840dcb96c0fc49272ce66f2508843a0de0e77555450e0c4988fb92bb2218c53
BLAKE2b-256 checksum
How to use checksums
963453970830e8d47a5a46221ef4d74dfb173cbb3722f374bda829bf85799e50
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

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 Sep 8, 2026.

Transparency log

Release files / meridian_storage_oci-1.1.0-py3-none-any.whl

Download URL meridian_storage_oci-1.1.0-py3-none-any.whl
Size 42.4 kB
Tags Python 3
SHA-256 checksum
How to use checksums
6ef2aab16cb05c4cb90862675cf10080e49d9edfb9707661dc73ad6c2de46dfb
BLAKE2b-256 checksum
How to use checksums
5204607ba7f8dd01667d519855bc5630c3d3c399d1b3adf22ca0bc73f53f694d
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

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 Sep 8, 2026.

Transparency log

Release history Release notifications | RSS feed

This release

1.1.0 This release

2 release files

1.0.3

2 release files

1.0.2

2 release files

1.0.1

2 release files

1.0.0

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page