Skip to main content

Intelligence, indexing, and pattern services as first-class Omninode nodes

Project description

OmniIntelligence

Intelligence, indexing, and pattern services as first-class Omninode nodes.

Overview

OmniIntelligence is a rebuild of the legacy omniarchon intelligence platform, transformed into a set of canonical ONEX nodes following the Omninode architecture patterns. This migration preserves contract-driven ingestion, vector search, and intelligence APIs while aligning with canonical node standards.

Architecture

The system is decomposed into specialized ONEX nodes:

Orchestrator Nodes

  • intelligence_orchestrator - Coordinates ingestion, enrichment, vectorization, and persistence pipelines

Reducer Nodes

  • ingestion_reducer - Manages ingestion FSM, state transitions, and lease management

Compute Nodes

  • vectorization_compute - Encapsulates embedding generation, scoring, and fallback models
  • pattern_learning_compute - Pattern enrichment and learning operations

Effect Nodes

  • ingestion_effect - Handles Kafka/Qdrant/PostgreSQL side effects
  • intelligence_api_effect - Provides HTTP/Kafka façade for intelligence APIs

Project Structure

omniintelligence/
├── src/
│   └── omniintelligence/
│       ├── nodes/                    # ONEX nodes
│       │   ├── intelligence_orchestrator/
│       │   ├── ingestion_reducer/
│       │   ├── ingestion_effect/
│       │   ├── vectorization_compute/
│       │   ├── pattern_learning_compute/
│       │   └── intelligence_api_effect/
│       ├── adapters/                 # External adapters (HTTP, etc.)
│       ├── shared/                   # Shared models and utilities
│       └── utils/                    # Common utilities
├── tests/
│   ├── unit/                         # Unit tests
│   ├── integration/                  # Integration tests
│   ├── fixtures/                     # Test fixtures
│   └── contracts/                    # Contract validation tests
├── scripts/                          # Automation scripts
├── deployment/                       # Deployment manifests
├── config/                           # Configuration files
├── docs/                             # Documentation
│   └── migrations/                   # Migration guides
└── migration_sources/                # Legacy source reference
    └── omniarchon/                   # Original omniarchon codebase

Setup

Prerequisites

  • Python 3.12+
  • Poetry or uv for dependency management
  • Docker for local infrastructure (Kafka, Qdrant, PostgreSQL, Memgraph)

Installation

# Install core dependencies
uv sync --group core

# Install development dependencies
uv sync --group dev

# Install all dependencies (development + testing)
uv sync --group all

ONEX Ecosystem Dependencies

The omnibase-* packages are published to PyPI and will be installed automatically:

  • omnibase-core (>=0.8.0) - ONEX node base classes, error handling, validation
  • omnibase-spi (>=0.5.0) - Service Provider Interface protocols
  • omnibase-infra (>=0.2.1) - Infrastructure handlers (Kafka, Qdrant, PostgreSQL)

What omnibase-infra provides:

  • QdrantVectorHandler - Vector database operations
  • KafkaEventBus - Event bus implementation
  • BaseRuntimeHostProcess - Process lifecycle management
  • Handler implementations for PostgreSQL, Memgraph, etc.

For local development with unpublished versions (optional):

# Install a local checkout for development
uv pip install -e /path/to/your/omnibase_infra

# Or for Poetry users, update pyproject.toml:
# omnibase-infra = {path = "../omnibase_infra", develop = true}

Running Tests

# Run unit tests
pytest tests/unit

# Run integration tests (requires infrastructure)
pytest tests/integration

# Run all tests
pytest

# Run with coverage
pytest --cov=src/omniintelligence --cov-report=html

Development

Node Development Pattern

Each node follows the canonical ONEX structure:

node_name/
├── v1_0_0/                          # Versioned implementation
│   ├── contracts/                   # YAML contract definitions
│   ├── models/                      # Pydantic models
│   ├── node.py                      # Main node implementation
│   ├── introspection.py            # Introspection support
│   ├── scenarios/                   # Integration test scenarios
│   └── node_tests/                  # Node-specific tests
└── __init__.py

Code Quality

# Format code
black src tests
isort src tests

# Lint
ruff check src tests

# Type check
mypy src

Migration from OmniArchon

This project is a migration from the legacy omniarchon system. See:

Documentation

Migration Freeze

A schema freeze is currently active for this repository as part of the DB-per-repo refactor (OMN-2055). While .migration_freeze exists at the repo root, no new migrations may be added to deployment/database/migrations/.

Allowed during freeze:

  • Migration moves (reorg between repos)
  • Ownership fixes (table transfers)
  • Rollback bug fixes (DB-SPLIT-01 refactor phase)

To lift the freeze: remove .migration_freeze once DB boundary work for omniintelligence is complete.

License

Copyright © 2024 OmniNode Team

Project details


Download files

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

Source Distribution

omniintelligence-0.2.2.tar.gz (560.7 kB view details)

Uploaded Source

Built Distribution

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

omniintelligence-0.2.2-py3-none-any.whl (748.7 kB view details)

Uploaded Python 3

File details

Details for the file omniintelligence-0.2.2.tar.gz.

File metadata

  • Download URL: omniintelligence-0.2.2.tar.gz
  • Upload date:
  • Size: 560.7 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/2.2.1 CPython/3.12.12 Darwin/24.6.0

File hashes

Hashes for omniintelligence-0.2.2.tar.gz
Algorithm Hash digest
SHA256 7ca35da1b8b559b43f403cdb6ab1bfed2e319c1bebe45a19c5c66cd7f2b148a5
MD5 3803aca126803de93f10449077682b90
BLAKE2b-256 887c6c38fb00a0659a812868be2f22d804dc08fc8c570ff83008db74efc28bc9

See more details on using hashes here.

File details

Details for the file omniintelligence-0.2.2-py3-none-any.whl.

File metadata

  • Download URL: omniintelligence-0.2.2-py3-none-any.whl
  • Upload date:
  • Size: 748.7 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/2.2.1 CPython/3.12.12 Darwin/24.6.0

File hashes

Hashes for omniintelligence-0.2.2-py3-none-any.whl
Algorithm Hash digest
SHA256 9f2851cfa45e3431b0b419ad96a919840eede2808a62f48c97d38244ab679d11
MD5 ef9794586ab824ec138e239cac962979
BLAKE2b-256 98cb1552dc8ea517ee6443d3b855c164582b483458b366bafb7b71abf4d92469

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page