Skip to main content

omnibase_compat

omnibase_compat is the thin shared structural package for cross-repo enums, wire DTOs, event envelopes, concurrency helpers, and compatibility primitives.

It has zero OmniNode upstream runtime dependencies. Runtime dependencies are limited to third-party structural support packages listed in pyproject.toml.

CI Python 3.12+

Who Uses It

Use this package when two or more OmniNode repos need to share stable structural types without creating an import cycle through omnibase_core, omnibase_spi, or omnibase_infra.

Common consumers include dashboard, intelligence, memory, market, infrastructure, and governance repos that need shared event envelopes, status enums, routing DTOs, or transitional compatibility shims.

What This Repo Owns

  • Cross-repo structural DTOs and wire models
  • Minimal event envelopes intended for cross-repo transport compatibility
  • Minimal enum copies with explicit source provenance
  • Concurrency and environment primitives that do not depend on OmniNode runtime packages
  • Experimental artifacts with ticket and review milestone metadata
  • Temporary migration shims with COMPAT_MIGRATION_TARGET and COMPAT_REMOVAL_DATE

What This Repo Does Not Own

  • Runtime execution, node behavior, validators, and implementation helpers. Those belong in omnibase_core.
  • Protocol interfaces that implementations satisfy. Those belong in omnibase_spi.
  • Concrete infrastructure, clients, storage, registration operations, or runtime host behavior. Those belong in omnibase_infra.
  • Domain-specific workflow ownership. That belongs in the relevant domain repo, such as omnimarket, omnimemory, or omniintelligence.

Install

uv add omnibase-compat

For local development:

uv sync --dev --frozen

Usage

from omnibase_compat.enums.enum_message_category import EnumMessageCategory
from omnibase_compat.enums.enum_node_kind import EnumNodeKind
from omnibase_compat.models.event_envelope import EventEnvelopeV1Minimal

Import from explicit submodules. Treat package-root exports as convenience exports only, not the stable compatibility surface.

Dependency Boundary

omnibase_compat must not import these packages at runtime:

  • omnibase_core
  • omnibase_spi
  • omnibase_infra

CI enforces this with:

uv run python scripts/validate_no_upstream_deps.py

Do not add omnibase_core only to make documentation validation convenient. Docs validation should run through standalone CI tooling or from the repo that owns the validator entrypoint. If this repo adopts onex-validate-links, it must remain dev-only tooling and must not change runtime dependencies.

Role vs omnibase_spi

Layer Purpose
omnibase_spi Protocols and abstract interfaces that service implementations must satisfy
omnibase_compat Shared enums, wire DTOs, event envelopes, and structural types across repo boundaries

Rule of thumb: protocols go in omnibase_spi; structural data that crosses repo boundaries goes in omnibase_compat.

Common Workflows

uv run python scripts/validate_no_upstream_deps.py
uv run python scripts/check_compat_retention.py
uv run ruff check src/
uv run mypy src/omnibase_compat --strict
uv run pytest -m unit --tb=short
uv build

Release workflow:

git tag vX.Y.Z
git push origin vX.Y.Z

The tag must match [project].version in pyproject.toml. See Release Workflow for the full runbook.

Key Features

  • Zero dependency on omnibase_core, omnibase_spi, or omnibase_infra (CI-enforced)
  • Experimental artifact registry with lifecycle governance (ticket + review_milestone required)
  • Provenance-tracked enum seeding from upstream canonical sources
  • Strict mypy + ruff + AST-based import validation

Docs

License

See LICENSE.

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

omnibase_compat-0.5.6.tar.gz (166.2 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

omnibase_compat-0.5.6-py3-none-any.whl (116.9 kB view details)

Uploaded Python 3

File details

Details for the file omnibase_compat-0.5.6.tar.gz.

File metadata

  • Download URL: omnibase_compat-0.5.6.tar.gz
  • Upload date:
  • Size: 166.2 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.11.28 {"installer":{"name":"uv","version":"0.11.28","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for omnibase_compat-0.5.6.tar.gz
Algorithm Hash digest
SHA256 c26670bdbac2a59e574752097e613837f702a860c473e3e414f0b2155e0e06bc
MD5 4afe1571e72c59da280b89acb596e6d1
BLAKE2b-256 b5383e9290a351e052614107bc98dcedbe06208cda734096df6afb41135ae3da

See more details on using hashes here.

File details

Details for the file omnibase_compat-0.5.6-py3-none-any.whl.

File metadata

  • Download URL: omnibase_compat-0.5.6-py3-none-any.whl
  • Upload date:
  • Size: 116.9 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.11.28 {"installer":{"name":"uv","version":"0.11.28","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for omnibase_compat-0.5.6-py3-none-any.whl
Algorithm Hash digest
SHA256 ede963de6323e26bdc597e24bb981f80b6b3d7758b88a3104d9b24f3c02131b2
MD5 8b4f3032b275b98032d76e6b95ccd389
BLAKE2b-256 fe9df0eb5f864bf82df2e0dec89b3c22e91fc3f9080c3ec747f41601e80f826c

See more details on using hashes here.

Release history Release notifications | RSS feed

0.5.7

2 files

This release

0.5.6 This release

2 files

0.5.5

2 files

0.5.0

2 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