Skip to main content

omninode

OmniMarket

CI Python 3.12+ License: MIT

OmniMarket is the portable ONEX (OmniNode eXecution) workflow package registry — the consolidation target for all OmniNode automation logic. It ships 407 contract-backed node entry points covering build loops, PR lifecycle management, sweeps, projections, ledger, memory orchestration, session management, and diagnostics. Platform wrappers invoke Market nodes for execution, but never own the business logic themselves.

Every node is a self-contained package with a contract.yaml declaring its handler bindings, input/output models, subscribed and published topics, FSM transitions, and terminal event. The runtime loads those contracts to wire event-bus subscriptions and inject handler dependencies — handlers never hardcode topic strings or construct their own collaborators.

Archetype Purity Description
compute Pure Stateless transformation. No I/O side effects.
reducer Pure FSM state transition. Emits next-state events.
effect Effectful Performs external I/O (API calls, file writes, deployments).
orchestrator Effectful Composes sub-handlers via FSM. Owns in-process state.

Documentation

Architecture, guides, and reference documentation for this repo live in the OmniNode knowledge base, not in this repository:

Governance policy and operator runbooks are not part of this repository.

Repository Layout

omnimarket/
├── src/omnimarket/
│   ├── nodes/                  # All node packages (node_<name>/)
│   ├── events/                 # Shared event models (ledger, envelopes)
│   ├── models/                 # Cross-node shared Pydantic models
│   ├── protocols/              # Shared protocol interfaces
│   ├── projection/             # Projection helpers and base classes
│   ├── routing/                # Event routing and dispatch
│   ├── intelligence/           # LLM and inference abstractions
│   ├── inference/              # Model selection and endpoint routing
│   ├── classifiers/            # Shared classification logic
│   ├── cli/                    # CLI entry points
│   ├── config/                 # Configuration models and loaders
│   ├── configs/                # Configuration files and overlays
│   ├── data/                   # Static data assets
│   ├── registry/               # Node registry helpers
│   ├── enums/                  # Shared enumerations
│   ├── adapters/               # Adapter templates for external platforms
│   ├── runtime/                # Runtime version handshake utilities
│   ├── logging/                # Structured logging helpers
│   └── experiments/            # Experimental sub-projects (ADK eval, etc.)
├── tests/                      # Golden-chain and contract tests
├── scripts/
│   ├── ci/                     # CI gate scripts (runtime sweep, metadata check)
│   ├── validation/             # Additional validation scripts (leaked literals, contract overlay boundary, topic lint)
│   ├── generate_node.py        # Node scaffold generator
│   ├── generate_adapters.py    # Adapter output generator
│   └── lint_no_hardcoded_topics.py
├── docs/                       # Non-prose artifacts only: brand assets, OCC
│                               # work-tracking contracts, generated evidence
│                               # and audit data. Prose lives in the knowledge
│                               # base (see Documentation above).
├── pyproject.toml
└── CLAUDE.md

A node package is src/omnimarket/nodes/node_<name>/ with contract.yaml, metadata.yaml, and handlers/; orchestrators add protocols/, and nodes may add models/ and node-local tests/. Nodes are discovered through the onex.nodes entry-point group in pyproject.toml — the runtime iterates those entry points, loads each contract.yaml, and wires subscriptions automatically.

Adding a Node

uv run python scripts/generate_node.py --name node_<name> --type compute

Then register the entry point in pyproject.toml under [project.entry-points."onex.nodes"], add a golden-chain test at tests/test_golden_chain_<name>.py proving the contract over EventBusInmemory, and run the validation gates below. The full pattern — contract fields, metadata fields, harness requirements, and the canary nodes to copy from — is in the knowledge base pages linked above.

Common Commands

# Install dependencies
uv sync --all-extras

# Run tests (excluding Kafka-dependent tests)
uv run pytest tests/ -v --tb=short -m "not kafka"

# Unit tests only
uv run pytest tests/ -v -m unit

# Lint and format
uv run ruff check src/ tests/
uv run ruff format --check src/ tests/

# Type-check
uv run mypy src/omnimarket/ --strict

# CI gates
uv run python -m omnimarket.nodes.node_runtime_sweep --import-check
uv run python scripts/ci/check_node_metadata_dependencies.py

Test markers: unit (isolated), integration (multi-component), slow (>1s), kafka (requires a running broker).

What This Repo Owns

  • onex.nodes entry points for contract-backed workflow nodes.
  • Node package directories under src/omnimarket/nodes/node_*.
  • contract.yaml and metadata.yaml files defining node interfaces, capabilities, dependencies, and runtime expectations.
  • Handler logic for compute, reducer, effect, and orchestrator nodes.
  • Adapter templates for external platform integrations.
  • Golden-chain tests and metadata checks proving node contracts with an in-memory event bus.
  • Shared Market primitives (projection, inference, routing, intelligence, ledger, and metadata helpers) that prevent cross-node reach-in.

What This Repo Does Not Own

  • Platform-specific UX prompts, slash-command presentation, editor rules, or user-facing skill copy — those belong in the wrapper repo for that platform.

  • Concrete infrastructure services (Kafka, Postgres, Docker, secrets) — those belong to the runtime/infrastructure layer.

  • Core ONEX primitives (RuntimeLocal, EventBusInmemory, envelope types, shared validators) — those belong to omnibase_core and compatibility packages.

  • Governance policy and documentation evidence — those belong to onex_change_control.

  • Memory persistence semantics and storage adapters — Market may host runnable memory workflow nodes, but the memory domain is owned by the memory repo.

  • Prose documentation — it belongs in the knowledge base (see Documentation).

  • Contributing

  • License

Metadata

Release files for omnimarket 0.4.274

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

Source distribution (sdist)

Source distribution for omnimarket 0.4.274
File Size Uploaded
omnimarket-0.4.274.tar.gz 15.0 MB Details

Built distribution (wheel)

Table of built distributions (wheels) for omnimarket 0.4.274
File Interpreter ABI Platform
omnimarket-0.4.274-py3-none-any.whl Python 3 none any Details

Total release size: 24.0 MB

Release files / omnimarket-0.4.274.tar.gz

Download URL omnimarket-0.4.274.tar.gz
Size 15.0 MB
Tags Source
SHA-256 checksum
How to use checksums
7e3e9f25585f8c1dd06608d8206f0f5f8ccebabcb0228c247253c160d2cb0e35
BLAKE2b-256 checksum
How to use checksums
52e9288e187e8f08566c7c82135ffb06a43dcbfdb60fc418980edbb898958c8d
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via uv/0.12.21 {"installer":{"name":"uv","version":"0.12.21","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}

Release files / omnimarket-0.4.274-py3-none-any.whl

Download URL omnimarket-0.4.274-py3-none-any.whl
Size 9.0 MB
Tags Python 3
SHA-256 checksum
How to use checksums
31633c60034510d8d8ec70ae1703f40483d0f7e63b3f44e7d359a7fb5e0da7df
BLAKE2b-256 checksum
How to use checksums
c9d14a4224c69b68daced4280eecd101e813b5c5a40b5655fab86ebdb77b6128
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via uv/0.12.21 {"installer":{"name":"uv","version":"0.12.21","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}

Release history Release notifications | RSS feed

This release

0.4.274 This release

2 release files

0.4.99

2 release files

0.4.98

2 release files

0.4.97

2 release files

0.4.96

2 release files

0.4.95

2 release files

0.4.94

2 release files

0.4.92

2 release files

0.4.90

2 release files

0.4.89

2 release files

0.4.87

2 release files

0.4.86

2 release files

0.4.85

2 release files

0.4.84

2 release files

0.4.83

2 release files

0.4.82

2 release files

0.4.81

2 release files

0.4.80

2 release files

0.4.79

2 release files

0.4.78

2 release files

0.4.77

2 release files

0.4.76

2 release files

0.4.75

2 release files

0.4.74

2 release files

0.4.73

2 release files

0.4.72

2 release files

0.4.71

2 release files

0.4.70

2 release files

0.4.69

2 release files

0.4.68

2 release files

0.4.67

2 release files

0.4.66

2 release files

0.4.65

2 release files

0.4.64

2 release files

0.4.63

2 release files

0.4.62

2 release files

0.4.61

2 release files

0.4.60

2 release files

0.4.59

2 release files

0.4.58

2 release files

0.4.57

2 release files

0.4.56

2 release files

0.4.54

2 release files

0.4.53

2 release files

0.4.52

2 release files

0.4.51

2 release files

0.4.50

2 release files

0.4.49

2 release files

0.4.48

2 release files

0.4.47

2 release files

0.4.12

2 release files

0.4.11

2 release files

0.4.10

2 release files

0.4.9

2 release files

0.4.8

2 release files

0.4.7

2 release files

0.4.6

2 release files

0.4.5

2 release files

0.4.3

2 release files

0.4.2

2 release files

0.4.1

2 release files

0.4.0

2 release files

0.3.1

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