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.0.tar.gz (557.8 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.0-py3-none-any.whl (746.1 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: omniintelligence-0.2.0.tar.gz
  • Upload date:
  • Size: 557.8 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.0.tar.gz
Algorithm Hash digest
SHA256 56ea7f702a510d67a827ce3df7d539d54126a89a46425b8653bde83311a26038
MD5 696000fcb7833a65b9d5a5ae2fad35be
BLAKE2b-256 715beb13d601846e90c0852f9dd9e803b096245cb3a7ce1aeba1008d3cbb6b5c

See more details on using hashes here.

File details

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

File metadata

  • Download URL: omniintelligence-0.2.0-py3-none-any.whl
  • Upload date:
  • Size: 746.1 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.0-py3-none-any.whl
Algorithm Hash digest
SHA256 eb0b378553d7d6e355ab85f0be6a32c6a1db9bfafdd5c0c5ba6720282161f019
MD5 688239601b56914677d42633be69bee1
BLAKE2b-256 c8ca65b0d27f26ead5040e7285d2d4497fa4d1ddc8b930331ba81095440e27a9

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