omninode-memory 0.9.3__tar.gz → 0.12.0__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- omninode_memory-0.9.3/.github/workflows/test.yml → omninode_memory-0.12.0/.github/workflows/ci.yml +3 -3
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/.github/workflows/omni-standards-compliance.yml +26 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/.github/workflows/stale-todo-gate.yml +1 -1
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/.github/workflows/todo-audit-on-merge.yml +1 -1
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/CHANGELOG.md +37 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/PKG-INFO +4 -4
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/pyproject.toml +6 -6
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/scripts/validate_ci_precommit_alignment.py +2 -2
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/src/omnimemory/runtime/dispatch_handlers.py +145 -3
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/src/omnimemory/runtime/plugin.py +45 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/src/omnimemory/runtime/wiring.py +5 -0
- omninode_memory-0.12.0/tests/unit/runtime/test_plugin_graph_memory_wiring.py +237 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/tests/unit/runtime/test_wiring.py +1 -1
- omninode_memory-0.12.0/tests/unit/test_dispatch_retrieval_config.py +83 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/tests/unit/test_validate_ci_precommit_alignment.py +9 -9
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/uv.lock +15 -15
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/.claude/architecture-handshake.md +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/.env.example +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/.flake8 +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/.github/ISSUE_TEMPLATE/bug_report.md +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/.github/ISSUE_TEMPLATE/feature_request.md +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/.github/PULL_REQUEST_TEMPLATE.md +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/.github/dependabot.yml +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/.github/required-checks.yaml +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/.github/workflows/auto-tag-on-merge.yml +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/.github/workflows/build-and-push-migrate-image.yml +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/.github/workflows/check-handshake.yml +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/.github/workflows/contract-validation.yml +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/.github/workflows/pre-commit.yml +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/.github/workflows/release-dry-run.yml +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/.github/workflows/release.yml +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/.github/workflows/security-scan.yml +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/.gitignore +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/.markdown-link-check.json +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/.pre-commit-config.yaml +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/.secrets.baseline +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/.serena/memories/project_overview.md +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/.serena/memories/suggested_commands.md +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/.serena/project.yml +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/.yamlfmt +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/AGENT.md +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/CLAUDE.md +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/CODE_OF_CONDUCT.md +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/CONTRIBUTING.md +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/LICENSE +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/README.md +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/SECURITY.md +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/contract.yaml +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/deployment/database/migrations/001_create_subscription_tables.sql +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/deployment/database/migrations/002_create_memories_table.sql +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/deployment/database/migrations/003_create_crawl_state_table.sql +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/deployment/database/migrations/004_create_navigation_sessions_table.sql +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/deployment/database/migrations/005_backfill_null_checksums.sql +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/deployment/database/migrations_pending/004_create_navigation_paths_collection.py +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/deployment/database/migrations_pending/004_create_navigation_sessions_table.sql +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/deployment/database/pending/003_create_crawl_state_table.sql +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/deployment/docker/Dockerfile.migrate +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/docker-compose.prod.yml +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/docker-compose.yml +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/docs/INDEX.md +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/docs/PERFORMANCE_TESTING.md +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/docs/architecture/ARCH_002_KAFKA_ABSTRACTION.md +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/docs/architecture/ONEX_FOUR_NODE_ARCHITECTURE.md +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/docs/ci/CI_MONITORING_GUIDE.md +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/docs/db-split/fk-audit-omn-2069.md +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/docs/environment_variables.md +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/docs/handler_reuse_matrix.md +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/docs/pii_handling.md +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/docs/runtime/RUNTIME_PLUGINS.md +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/docs/stub_protocols.md +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/examples/__init__.py +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/examples/advanced_architecture_demo.py +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/pyrightconfig.json +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/scripts/check_migration_freeze.sh +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/scripts/check_no_hardcoded_bolt.sh +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/scripts/validate_no_transport_imports.py +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/scripts/validation/check_ai_slop.py +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/scripts/validation/check_kafka_no_hardcoded_fallback.sh +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/scripts/validation/validate_enum_casing.py +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/scripts/validation/validate_http_imports.py +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/scripts/validation/validate_kafka_imports.py +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/scripts/validation/validate_model_locations.py +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/scripts/validation/validate_naming.py +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/scripts/validation/validate_no_backward_compatibility.py +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/scripts/validation/validate_pydantic_patterns.py +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/scripts/validation/validate_secrets.py +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/scripts/validation/validate_single_class_per_file.py +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/scripts/validation/validate_spdx_headers.py +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/src/omnimemory/__init__.py +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/src/omnimemory/_compat_imports.py +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/src/omnimemory/audit/__init__.py +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/src/omnimemory/audit/__main__.py +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/src/omnimemory/audit/io_audit.py +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/src/omnimemory/bootstrap.py +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/src/omnimemory/enums/__init__.py +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/src/omnimemory/enums/crawl/__init__.py +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/src/omnimemory/enums/crawl/enum_context_source_type.py +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/src/omnimemory/enums/crawl/enum_crawler_type.py +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/src/omnimemory/enums/crawl/enum_detected_doc_type.py +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/src/omnimemory/enums/enum_attribution_signal_type.py +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/src/omnimemory/enums/enum_context_item_type.py +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/src/omnimemory/enums/enum_data_type.py +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/src/omnimemory/enums/enum_entity_extraction_mode.py +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/src/omnimemory/enums/enum_error_code.py +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/src/omnimemory/enums/enum_intelligence_operation_type.py +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/src/omnimemory/enums/enum_lifecycle_state.py +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/src/omnimemory/enums/enum_memory_operation_type.py +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/src/omnimemory/enums/enum_memory_storage_type.py +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/src/omnimemory/enums/enum_migration_status.py +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/src/omnimemory/enums/enum_node_type.py +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/src/omnimemory/enums/enum_operation_status.py +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/src/omnimemory/enums/enum_priority_level.py +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/src/omnimemory/enums/enum_promotion_tier.py +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/src/omnimemory/enums/enum_semantic_entity_type.py +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/src/omnimemory/enums/enum_severity.py +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/src/omnimemory/enums/enum_subscription_status.py +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/src/omnimemory/enums/enum_trust_level.py +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/src/omnimemory/errors/__init__.py +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/src/omnimemory/errors/embedding_errors.py +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/src/omnimemory/handlers/__init__.py +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/src/omnimemory/handlers/adapters/__init__.py +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/src/omnimemory/handlers/adapters/adapter_embedding_http.py +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/src/omnimemory/handlers/adapters/adapter_graph_memory.py +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/src/omnimemory/handlers/adapters/adapter_intent_graph.py +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/src/omnimemory/handlers/adapters/adapter_rate_limiter.py +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/src/omnimemory/handlers/adapters/adapter_valkey.py +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/src/omnimemory/handlers/adapters/models/__init__.py +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/src/omnimemory/handlers/adapters/models/model_adapter_intent_graph_config.py +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/src/omnimemory/handlers/adapters/models/model_intent_domain.py +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/src/omnimemory/handlers/adapters/models/model_intent_graph_health.py +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/src/omnimemory/handlers/handler_intent.py +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/src/omnimemory/handlers/handler_subscription.py +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/src/omnimemory/handlers/models/__init__.py +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/src/omnimemory/handlers/models/model_handler_intent_config.py +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/src/omnimemory/models/__init__.py +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/src/omnimemory/models/adapters/__init__.py +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/src/omnimemory/models/adapters/model_connections_result.py +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/src/omnimemory/models/adapters/model_filesystem_adapter_config.py +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/src/omnimemory/models/adapters/model_graph_memory_config.py +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/src/omnimemory/models/adapters/model_graph_memory_health.py +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/src/omnimemory/models/adapters/model_memory_connection.py +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/src/omnimemory/models/adapters/model_related_memory.py +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/src/omnimemory/models/adapters/model_related_memory_result.py +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/src/omnimemory/models/config/__init__.py +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/src/omnimemory/models/config/model_doc_source_config.py +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/src/omnimemory/models/config/model_embedding_config.py +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/src/omnimemory/models/config/model_filesystem_config.py +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/src/omnimemory/models/config/model_handler_semantic_compute_config.py +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/src/omnimemory/models/config/model_linear_scope_mapping.py +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/src/omnimemory/models/config/model_memory_service_config.py +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/src/omnimemory/models/config/model_path_scope_mapping.py +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/src/omnimemory/models/config/model_postgres_config.py +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/src/omnimemory/models/config/model_promotion_threshold_set.py +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/src/omnimemory/models/config/model_qdrant_config.py +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/src/omnimemory/models/config/model_rate_limiter_config.py +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/src/omnimemory/models/config/model_scope_mapping_config.py +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/src/omnimemory/models/config/model_semantic_compute_policy_config.py +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/src/omnimemory/models/container/__init__.py +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/src/omnimemory/models/contracts/__init__.py +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/src/omnimemory/models/contracts/mixin_handler_routing.py +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/src/omnimemory/models/contracts/model_contract_compute_extended.py +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/src/omnimemory/models/contracts/model_contract_effect_extended.py +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/src/omnimemory/models/contracts/model_contract_orchestrator_extended.py +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/src/omnimemory/models/contracts/model_contract_reducer_extended.py +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/src/omnimemory/models/core/__init__.py +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/src/omnimemory/models/core/model_memory_context.py +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/src/omnimemory/models/core/model_memory_metadata.py +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/src/omnimemory/models/core/model_memory_parameters.py +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/src/omnimemory/models/core/model_memory_request.py +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/src/omnimemory/models/core/model_memory_response.py +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/src/omnimemory/models/core/model_operation_metadata.py +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/src/omnimemory/models/core/model_processing_metrics.py +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/src/omnimemory/models/core/model_provenance.py +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/src/omnimemory/models/crawl/__init__.py +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/src/omnimemory/models/crawl/model_crawl_state_record.py +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/src/omnimemory/models/crawl/model_crawl_tick_command.py +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/src/omnimemory/models/crawl/model_document_changed_event.py +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/src/omnimemory/models/crawl/model_document_discovered_event.py +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/src/omnimemory/models/crawl/model_document_indexed_event.py +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/src/omnimemory/models/crawl/model_document_indexed_kreuzberg_event.py +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/src/omnimemory/models/crawl/model_document_parse_failed_event.py +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/src/omnimemory/models/crawl/model_document_removed_event.py +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/src/omnimemory/models/crawl/types.py +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/src/omnimemory/models/events/__init__.py +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/src/omnimemory/models/events/model_crawl_tick_command.py +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/src/omnimemory/models/events/model_intent_classified_event.py +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/src/omnimemory/models/foundation/__init__.py +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/src/omnimemory/models/foundation/model_audit_metadata.py +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/src/omnimemory/models/foundation/model_configuration.py +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/src/omnimemory/models/foundation/model_connection_metadata.py +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/src/omnimemory/models/foundation/model_error_details.py +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/src/omnimemory/models/foundation/model_health_metadata.py +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/src/omnimemory/models/foundation/model_health_response.py +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/src/omnimemory/models/foundation/model_memory_data.py +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/src/omnimemory/models/foundation/model_metrics_response.py +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/src/omnimemory/models/foundation/model_migration_progress.py +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/src/omnimemory/models/foundation/model_notes.py +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/src/omnimemory/models/foundation/model_priority.py +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/src/omnimemory/models/foundation/model_progress_summary.py +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/src/omnimemory/models/foundation/model_semver.py +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/src/omnimemory/models/foundation/model_success_metrics.py +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/src/omnimemory/models/foundation/model_system_health.py +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/src/omnimemory/models/foundation/model_tags.py +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/src/omnimemory/models/foundation/model_trust_score.py +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/src/omnimemory/models/foundation/model_typed_collections.py +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/src/omnimemory/models/foundation/model_user.py +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/src/omnimemory/models/intelligence/__init__.py +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/src/omnimemory/models/intelligence/model_intelligence_analysis.py +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/src/omnimemory/models/intelligence/model_pattern_recognition_result.py +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/src/omnimemory/models/intelligence/model_semantic_analysis_result.py +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/src/omnimemory/models/intelligence/model_semantic_entity.py +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/src/omnimemory/models/intelligence/model_semantic_entity_list.py +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/src/omnimemory/models/memory/__init__.py +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/src/omnimemory/models/memory/model_memory_item.py +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/src/omnimemory/models/memory/model_memory_query.py +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/src/omnimemory/models/memory/model_memory_search_result.py +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/src/omnimemory/models/memory/model_memory_storage_config.py +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/src/omnimemory/models/memory/model_similarity_result.py +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/src/omnimemory/models/scoring/__init__.py +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/src/omnimemory/models/scoring/model_context_item_stats.py +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/src/omnimemory/models/scoring/model_context_policy_config.py +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/src/omnimemory/models/scoring/model_promotion_decision.py +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/src/omnimemory/models/service/__init__.py +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/src/omnimemory/models/service/model_service_config.py +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/src/omnimemory/models/service/model_service_health.py +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/src/omnimemory/models/service/model_service_registry.py +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/src/omnimemory/models/subscription/__init__.py +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/src/omnimemory/models/subscription/constants.py +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/src/omnimemory/models/subscription/model_notification_event.py +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/src/omnimemory/models/subscription/model_notification_event_payload.py +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/src/omnimemory/models/subscription/model_subscription.py +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/src/omnimemory/models/utils/__init__.py +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/src/omnimemory/models/utils/model_audit.py +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/src/omnimemory/models/utils/model_circuit_breaker_config.py +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/src/omnimemory/models/utils/model_circuit_breaker_stats_response.py +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/src/omnimemory/models/utils/model_concurrency.py +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/src/omnimemory/models/utils/model_correlation_context.py +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/src/omnimemory/models/utils/model_health_check_config.py +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/src/omnimemory/models/utils/model_health_check_details.py +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/src/omnimemory/models/utils/model_health_check_result.py +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/src/omnimemory/models/utils/model_health_status.py +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/src/omnimemory/models/utils/model_pii_detection_result.py +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/src/omnimemory/models/utils/model_pii_detector_config.py +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/src/omnimemory/models/utils/model_pii_match.py +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/src/omnimemory/models/utils/model_pii_pattern_config.py +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/src/omnimemory/models/utils/model_pii_type.py +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/src/omnimemory/models/utils/model_resource_health_check.py +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/src/omnimemory/models/utils/model_retry_attempt_info.py +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/src/omnimemory/models/utils/model_retry_config.py +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/src/omnimemory/models/utils/model_retry_statistics.py +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/src/omnimemory/models/utils/model_structured_log_entry.py +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/src/omnimemory/models/utils/model_system_health.py +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/src/omnimemory/nodes/__init__.py +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/src/omnimemory/nodes/base.py +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/src/omnimemory/nodes/node_agent_coordinator_orchestrator/__init__.py +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/src/omnimemory/nodes/node_agent_coordinator_orchestrator/contract.yaml +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/src/omnimemory/nodes/node_agent_coordinator_orchestrator/models/__init__.py +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/src/omnimemory/nodes/node_agent_coordinator_orchestrator/models/model_request.py +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/src/omnimemory/nodes/node_agent_coordinator_orchestrator/models/model_response.py +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/src/omnimemory/nodes/node_filesystem_crawler_effect/__init__.py +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/src/omnimemory/nodes/node_filesystem_crawler_effect/contract.yaml +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/src/omnimemory/nodes/node_filesystem_crawler_effect/handler_filesystem_crawler.py +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/src/omnimemory/nodes/node_filesystem_crawler_effect/models/__init__.py +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/src/omnimemory/nodes/node_filesystem_crawler_effect/models/model_filesystem_crawl_result.py +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/src/omnimemory/nodes/node_filesystem_crawler_effect/models/model_filesystem_crawler_config.py +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/src/omnimemory/nodes/node_intent_event_consumer_effect/__init__.py +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/src/omnimemory/nodes/node_intent_event_consumer_effect/contract.yaml +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/src/omnimemory/nodes/node_intent_event_consumer_effect/handler_intent_event_consumer.py +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/src/omnimemory/nodes/node_intent_event_consumer_effect/models/__init__.py +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/src/omnimemory/nodes/node_intent_event_consumer_effect/models/model_consumer_config.py +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/src/omnimemory/nodes/node_intent_event_consumer_effect/models/model_consumer_health.py +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/src/omnimemory/nodes/node_intent_event_consumer_effect/utils/__init__.py +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/src/omnimemory/nodes/node_intent_event_consumer_effect/utils/util_event_mapper.py +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/src/omnimemory/nodes/node_intent_query_effect/__init__.py +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/src/omnimemory/nodes/node_intent_query_effect/contract.yaml +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/src/omnimemory/nodes/node_intent_query_effect/handlers/__init__.py +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/src/omnimemory/nodes/node_intent_query_effect/handlers/handler_intent_query.py +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/src/omnimemory/nodes/node_intent_query_effect/models/__init__.py +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/src/omnimemory/nodes/node_intent_query_effect/models/model_handler_intent_query_config.py +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/src/omnimemory/nodes/node_intent_query_effect/registry/__init__.py +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/src/omnimemory/nodes/node_intent_query_effect/registry/registry_intent_query_effect.py +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/src/omnimemory/nodes/node_intent_query_effect/utils/__init__.py +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/src/omnimemory/nodes/node_intent_query_effect/utils/util_intent_mapping.py +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/src/omnimemory/nodes/node_intent_storage_effect/__init__.py +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/src/omnimemory/nodes/node_intent_storage_effect/adapters/__init__.py +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/src/omnimemory/nodes/node_intent_storage_effect/adapters/adapter_intent_storage.py +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/src/omnimemory/nodes/node_intent_storage_effect/contract.yaml +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/src/omnimemory/nodes/node_intent_storage_effect/models/__init__.py +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/src/omnimemory/nodes/node_intent_storage_effect/models/model_intent_storage_request.py +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/src/omnimemory/nodes/node_intent_storage_effect/models/model_intent_storage_response.py +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/src/omnimemory/nodes/node_kreuzberg_parse_effect/__init__.py +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/src/omnimemory/nodes/node_kreuzberg_parse_effect/clients/__init__.py +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/src/omnimemory/nodes/node_kreuzberg_parse_effect/clients/client_kreuzberg.py +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/src/omnimemory/nodes/node_kreuzberg_parse_effect/contract.yaml +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/src/omnimemory/nodes/node_kreuzberg_parse_effect/handler_kreuzberg_parse.py +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/src/omnimemory/nodes/node_kreuzberg_parse_effect/models/__init__.py +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/src/omnimemory/nodes/node_kreuzberg_parse_effect/models/model_kreuzberg_parse_config.py +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/src/omnimemory/nodes/node_kreuzberg_parse_effect/models/model_kreuzberg_parse_result.py +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/src/omnimemory/nodes/node_memory_consolidator_reducer/__init__.py +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/src/omnimemory/nodes/node_memory_lifecycle_orchestrator/__init__.py +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/src/omnimemory/nodes/node_memory_lifecycle_orchestrator/adapters/__init__.py +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/src/omnimemory/nodes/node_memory_lifecycle_orchestrator/adapters/adapter_postgres_deactivate_memory.py +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/src/omnimemory/nodes/node_memory_lifecycle_orchestrator/adapters/adapter_runtime_tick_memory.py +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/src/omnimemory/nodes/node_memory_lifecycle_orchestrator/contract.yaml +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/src/omnimemory/nodes/node_memory_lifecycle_orchestrator/handlers/__init__.py +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/src/omnimemory/nodes/node_memory_lifecycle_orchestrator/handlers/handler_memory_archive.py +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/src/omnimemory/nodes/node_memory_lifecycle_orchestrator/handlers/handler_memory_expire.py +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/src/omnimemory/nodes/node_memory_lifecycle_orchestrator/handlers/handler_memory_tick.py +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/src/omnimemory/nodes/node_memory_lifecycle_orchestrator/models/__init__.py +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/src/omnimemory/nodes/node_memory_lifecycle_orchestrator/validators/__init__.py +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/src/omnimemory/nodes/node_memory_lifecycle_orchestrator/validators/validator_lifecycle_transition.py +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/src/omnimemory/nodes/node_memory_retrieval_effect/__init__.py +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/src/omnimemory/nodes/node_memory_retrieval_effect/clients/__init__.py +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/src/omnimemory/nodes/node_memory_retrieval_effect/clients/embedding_client.py +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/src/omnimemory/nodes/node_memory_retrieval_effect/contract.yaml +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/src/omnimemory/nodes/node_memory_retrieval_effect/handlers/__init__.py +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/src/omnimemory/nodes/node_memory_retrieval_effect/handlers/handler_db_mock.py +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/src/omnimemory/nodes/node_memory_retrieval_effect/handlers/handler_graph_mock.py +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/src/omnimemory/nodes/node_memory_retrieval_effect/handlers/handler_memory_retrieval.py +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/src/omnimemory/nodes/node_memory_retrieval_effect/handlers/handler_qdrant.py +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/src/omnimemory/nodes/node_memory_retrieval_effect/handlers/handler_qdrant_mock.py +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/src/omnimemory/nodes/node_memory_retrieval_effect/models/__init__.py +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/src/omnimemory/nodes/node_memory_retrieval_effect/models/model_embedding_client_config.py +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/src/omnimemory/nodes/node_memory_retrieval_effect/models/model_handler_db_mock_config.py +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/src/omnimemory/nodes/node_memory_retrieval_effect/models/model_handler_graph_mock_config.py +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/src/omnimemory/nodes/node_memory_retrieval_effect/models/model_handler_memory_retrieval_config.py +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/src/omnimemory/nodes/node_memory_retrieval_effect/models/model_handler_qdrant_config.py +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/src/omnimemory/nodes/node_memory_retrieval_effect/models/model_handler_qdrant_mock_config.py +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/src/omnimemory/nodes/node_memory_retrieval_effect/models/model_memory_retrieval_request.py +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/src/omnimemory/nodes/node_memory_retrieval_effect/models/model_memory_retrieval_response.py +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/src/omnimemory/nodes/node_memory_storage_effect/__init__.py +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/src/omnimemory/nodes/node_memory_storage_effect/adapters/__init__.py +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/src/omnimemory/nodes/node_memory_storage_effect/adapters/adapter_filesystem.py +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/src/omnimemory/nodes/node_memory_storage_effect/contract.yaml +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/src/omnimemory/nodes/node_memory_storage_effect/models/__init__.py +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/src/omnimemory/nodes/node_memory_storage_effect/models/model_memory_storage_request.py +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/src/omnimemory/nodes/node_memory_storage_effect/models/model_memory_storage_response.py +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/src/omnimemory/nodes/node_navigation_history_reducer/__init__.py +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/src/omnimemory/nodes/node_navigation_history_reducer/handlers/__init__.py +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/src/omnimemory/nodes/node_navigation_history_reducer/handlers/handler_navigation_history_reducer.py +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/src/omnimemory/nodes/node_navigation_history_reducer/models/__init__.py +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/src/omnimemory/nodes/node_navigation_history_reducer/models/model_navigation_history_request.py +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/src/omnimemory/nodes/node_navigation_history_reducer/models/model_navigation_history_response.py +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/src/omnimemory/nodes/node_navigation_history_reducer/models/model_navigation_session.py +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/src/omnimemory/nodes/node_navigation_history_reducer/node_navigation_history_reducer.py +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/src/omnimemory/nodes/node_semantic_analyzer_compute/__init__.py +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/src/omnimemory/nodes/node_semantic_analyzer_compute/contract.yaml +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/src/omnimemory/nodes/node_semantic_analyzer_compute/handlers/__init__.py +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/src/omnimemory/nodes/node_semantic_analyzer_compute/handlers/handler_semantic_compute.py +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/src/omnimemory/nodes/node_semantic_analyzer_compute/models/__init__.py +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/src/omnimemory/nodes/node_semantic_analyzer_compute/models/model_semantic_analyzer_compute_request.py +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/src/omnimemory/nodes/node_semantic_analyzer_compute/models/model_semantic_analyzer_compute_response.py +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/src/omnimemory/nodes/node_semantic_analyzer_compute/node_semantic_analyzer_compute.py +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/src/omnimemory/nodes/node_similarity_compute/__init__.py +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/src/omnimemory/nodes/node_similarity_compute/contract.yaml +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/src/omnimemory/nodes/node_similarity_compute/handlers/__init__.py +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/src/omnimemory/nodes/node_similarity_compute/handlers/handler_similarity_compute.py +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/src/omnimemory/nodes/node_similarity_compute/models/__init__.py +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/src/omnimemory/nodes/node_similarity_compute/models/model_handler_similarity_compute_config.py +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/src/omnimemory/nodes/node_similarity_compute/models/model_similarity_compute_request.py +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/src/omnimemory/nodes/node_similarity_compute/models/model_similarity_compute_response.py +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/src/omnimemory/nodes/node_similarity_compute/node_similarity_compute.py +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/src/omnimemory/nodes/node_statistics_reducer/__init__.py +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/src/omnimemory/protocols/__init__.py +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/src/omnimemory/protocols/base_protocols.py +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/src/omnimemory/protocols/data_models.py +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/src/omnimemory/protocols/error_models.py +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/src/omnimemory/protocols/protocol_crawl_state_repository.py +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/src/omnimemory/protocols/protocol_embedding.py +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/src/omnimemory/protocols/protocol_embedding_provider.py +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/src/omnimemory/protocols/protocol_handler_intent.py +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/src/omnimemory/protocols/protocol_intent_graph_adapter.py +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/src/omnimemory/protocols/protocol_secrets_provider.py +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/src/omnimemory/runtime/__init__.py +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/src/omnimemory/runtime/adapters.py +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/src/omnimemory/runtime/contract_topics.py +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/src/omnimemory/runtime/introspection.py +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/src/omnimemory/runtime/message_type_registration.py +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/src/omnimemory/secrets.py +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/src/omnimemory/settings.py +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/src/omnimemory/tools/__init__.py +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/src/omnimemory/tools/contract_linter.py +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/src/omnimemory/tools/stubs/__init__.py +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/src/omnimemory/tools/stubs/contract_validator.py +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/src/omnimemory/utils/__init__.py +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/src/omnimemory/utils/audit_logger.py +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/src/omnimemory/utils/concurrency.py +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/src/omnimemory/utils/db_url.py +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/src/omnimemory/utils/error_sanitizer.py +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/src/omnimemory/utils/handler_constants.py +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/src/omnimemory/utils/health_manager.py +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/src/omnimemory/utils/observability.py +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/src/omnimemory/utils/pii_detector.py +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/src/omnimemory/utils/resource_manager.py +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/src/omnimemory/utils/retry_utils.py +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/tests/__init__.py +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/tests/audit/io_audit_whitelist.yaml +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/tests/audit/transport_import_whitelist.yaml +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/tests/conftest.py +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/tests/handlers/__init__.py +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/tests/handlers/adapters/__init__.py +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/tests/handlers/adapters/test_adapter_embedding_http.py +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/tests/handlers/adapters/test_adapter_embedding_http_integration.py +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/tests/handlers/adapters/test_adapter_graph_memory.py +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/tests/handlers/adapters/test_adapter_graph_memory_integration.py +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/tests/handlers/adapters/test_adapter_intent_graph.py +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/tests/handlers/adapters/test_adapter_rate_limiter.py +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/tests/handlers/test_handler_intent.py +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/tests/handlers/test_handler_semantic_compute.py +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/tests/integration/__init__.py +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/tests/integration/conftest.py +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/tests/integration/nodes/__init__.py +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/tests/integration/nodes/test_kreuzberg_parse_effect.py +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/tests/integration/nodes/test_memory_lifecycle_orchestrator_integration.py +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/tests/integration/nodes/test_navigation_history_reducer_integration.py +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/tests/integration/test_entry_point_discovery.py +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/tests/integration/test_handler_lifecycle_pattern.py +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/tests/integration/test_handler_subscription.py +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/tests/integration/test_node_agent_coordinator.py +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/tests/models/__init__.py +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/tests/models/contracts/__init__.py +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/tests/models/contracts/test_extended_contracts.py +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/tests/models/events/__init__.py +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/tests/models/events/test_model_intent_classified_event.py +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/tests/models/test_frozen_boundary_models.py +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/tests/nodes/__init__.py +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/tests/nodes/node_filesystem_crawler_effect/__init__.py +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/tests/nodes/node_filesystem_crawler_effect/test_handler_filesystem_crawler.py +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/tests/nodes/node_intent_event_consumer_effect/__init__.py +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/tests/nodes/node_intent_event_consumer_effect/test_handler_intent_event_consumer.py +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/tests/nodes/node_intent_event_consumer_effect/test_model_consumer_health.py +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/tests/nodes/node_intent_event_consumer_effect/test_util_event_mapper.py +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/tests/nodes/node_intent_query_effect/__init__.py +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/tests/nodes/node_intent_query_effect/conftest.py +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/tests/nodes/node_intent_query_effect/test_handler_intent_query_integration.py +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/tests/nodes/node_intent_storage_effect/__init__.py +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/tests/nodes/node_intent_storage_effect/test_handler_intent_storage_adapter_integration.py +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/tests/nodes/node_memory_retrieval_effect/__init__.py +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/tests/nodes/node_memory_retrieval_effect/test_memory_retrieval_effect.py +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/tests/nodes/node_memory_storage_effect/__init__.py +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/tests/nodes/node_memory_storage_effect/test_memory_storage_effect.py +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/tests/nodes/node_navigation_history_reducer/__init__.py +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/tests/nodes/node_navigation_history_reducer/test_navigation_history_reducer_unit.py +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/tests/nodes/node_similarity_compute/__init__.py +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/tests/nodes/node_similarity_compute/test_similarity_compute.py +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/tests/test_bootstrap.py +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/tests/test_concurrency.py +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/tests/test_config_models.py +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/tests/test_contract_validation.py +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/tests/test_contract_version.py +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/tests/test_db_url.py +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/tests/test_foundation.py +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/tests/test_health_manager.py +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/tests/test_migration_progress.py +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/tests/test_node_enforcement.py +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/tests/test_node_imports.py +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/tests/test_observability_metrics.py +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/tests/test_performance.py +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/tests/test_resource_manager.py +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/tests/test_secrets_provider.py +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/tests/test_semantic_compute_policy_config.py +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/tests/test_settings.py +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/tests/test_validation_scripts.py +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/tests/unit/__init__.py +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/tests/unit/handlers/__init__.py +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/tests/unit/handlers/adapters/__init__.py +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/tests/unit/handlers/adapters/test_graph_adapter_typing.py +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/tests/unit/handlers/test_subscription_typing.py +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/tests/unit/nodes/__init__.py +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/tests/unit/nodes/test_handler_qdrant.py +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/tests/unit/nodes/test_kreuzberg_parse_effect/__init__.py +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/tests/unit/nodes/test_kreuzberg_parse_effect/test_handler_kreuzberg_parse.py +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/tests/unit/nodes/test_memory_lifecycle_orchestrator/__init__.py +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/tests/unit/nodes/test_memory_lifecycle_orchestrator/test_adapter_postgres_deactivate_memory.py +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/tests/unit/nodes/test_memory_lifecycle_orchestrator/test_adapter_runtime_tick_memory.py +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/tests/unit/nodes/test_memory_lifecycle_orchestrator/test_handler_memory_archive.py +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/tests/unit/nodes/test_memory_lifecycle_orchestrator/test_handler_memory_expire.py +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/tests/unit/nodes/test_memory_lifecycle_orchestrator/test_handler_memory_tick.py +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/tests/unit/nodes/test_memory_lifecycle_orchestrator/test_validator_lifecycle_transition.py +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/tests/unit/nodes/test_model_handler_qdrant_config.py +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/tests/unit/runtime/__init__.py +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/tests/unit/runtime/conftest.py +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/tests/unit/runtime/test_adapters.py +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/tests/unit/runtime/test_contract_topics.py +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/tests/unit/runtime/test_dispatch_handlers.py +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/tests/unit/runtime/test_introspection.py +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/tests/unit/runtime/test_message_type_registration.py +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/tests/unit/runtime/test_plugin.py +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/tests/unit/runtime/test_plugin_memory_validate_handshake.py +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/tests/unit/test_contract_linter.py +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/tests/unit/test_entry_points.py +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/tests/unit/test_handler_subscription_notify_strict.py +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/tests/unit/test_ingestion_models.py +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/tests/unit/test_io_audit.py +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/tests/unit/test_scope_mapping_config.py +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/tests/unit/test_sql_placeholders.py +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/tests/unit/test_validate_kafka_imports.py +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/tests/unit/test_validate_no_transport_imports.py +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/validate_architecture_improvements.py +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/validate_foundation.py +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/validate_foundation_isolated.py +0 -0
- {omninode_memory-0.9.3 → omninode_memory-0.12.0}/validate_foundation_minimal.py +0 -0
omninode_memory-0.9.3/.github/workflows/test.yml → omninode_memory-0.12.0/.github/workflows/ci.yml
RENAMED
|
@@ -1,13 +1,13 @@
|
|
|
1
1
|
# SPDX-FileCopyrightText: 2025 OmniNode.ai Inc.
|
|
2
2
|
# SPDX-License-Identifier: MIT
|
|
3
3
|
|
|
4
|
-
name:
|
|
4
|
+
name: CI
|
|
5
5
|
|
|
6
6
|
on:
|
|
7
7
|
push:
|
|
8
|
-
branches: [main
|
|
8
|
+
branches: [main]
|
|
9
9
|
pull_request:
|
|
10
|
-
branches: [main
|
|
10
|
+
branches: [main]
|
|
11
11
|
merge_group:
|
|
12
12
|
workflow_dispatch:
|
|
13
13
|
|
{omninode_memory-0.9.3 → omninode_memory-0.12.0}/.github/workflows/omni-standards-compliance.yml
RENAMED
|
@@ -50,3 +50,29 @@ jobs:
|
|
|
50
50
|
|
|
51
51
|
- name: Check for Optional/Union usage (PEP 604)
|
|
52
52
|
run: uv run ruff check src/ --select UP007,UP006
|
|
53
|
+
|
|
54
|
+
ci-naming-convention:
|
|
55
|
+
name: CI Naming Convention
|
|
56
|
+
runs-on: ubuntu-latest
|
|
57
|
+
steps:
|
|
58
|
+
- name: Checkout code
|
|
59
|
+
uses: actions/checkout@v6
|
|
60
|
+
|
|
61
|
+
- name: Verify CI workflow naming convention
|
|
62
|
+
run: |
|
|
63
|
+
if [ ! -f .github/workflows/ci.yml ]; then
|
|
64
|
+
echo "::error::Missing .github/workflows/ci.yml"
|
|
65
|
+
exit 1
|
|
66
|
+
fi
|
|
67
|
+
CI_NAME=$(grep -m1 "^name:" .github/workflows/ci.yml | sed "s/name: *//")
|
|
68
|
+
if [ "$CI_NAME" != "CI" ]; then
|
|
69
|
+
echo "::error::ci.yml has name '$CI_NAME' — must be 'CI'"
|
|
70
|
+
exit 1
|
|
71
|
+
fi
|
|
72
|
+
for legacy in test.yml ci.yaml; do
|
|
73
|
+
if [ -f ".github/workflows/$legacy" ]; then
|
|
74
|
+
echo "::error::Legacy workflow .github/workflows/$legacy exists"
|
|
75
|
+
exit 1
|
|
76
|
+
fi
|
|
77
|
+
done
|
|
78
|
+
echo "CI naming convention: PASS"
|
|
@@ -1,3 +1,40 @@
|
|
|
1
|
+
## v0.12.0 (2026-03-25)
|
|
2
|
+
|
|
3
|
+
### Added
|
|
4
|
+
- feat: env-configurable retrieval stubs + wire similarity handler (#199)
|
|
5
|
+
- feat(runtime): wire AdapterGraphMemory initialization in PluginMemory [OMN-6578] (#198)
|
|
6
|
+
|
|
7
|
+
### Changed
|
|
8
|
+
- chore(deps): pin omnibase-core==0.32.0, omnibase-infra==0.27.0 for coordinated release
|
|
9
|
+
- chore(deps): bump omnibase_core to 0.31.0 (#197)
|
|
10
|
+
- chore(ci): rename test.yml -> ci.yml for cross-repo standardization [OMN-6215] (#194)
|
|
11
|
+
- build(deps): bump actions/checkout from 4 to 6 in the actions group (#195)
|
|
12
|
+
|
|
13
|
+
### Fixed
|
|
14
|
+
- fix(deps): update stale omnibase-infra and spi version pins [OMN-6112] (#193)
|
|
15
|
+
|
|
16
|
+
## v0.11.0 (2026-03-24)
|
|
17
|
+
|
|
18
|
+
### Changed
|
|
19
|
+
- chore(deps): bump omnibase_core to 0.30.2 (#192)
|
|
20
|
+
- release: omnimemory v0.11.0 (#196)
|
|
21
|
+
|
|
22
|
+
## v0.9.3 (2026-03-22)
|
|
23
|
+
|
|
24
|
+
### Changed
|
|
25
|
+
- ci: add check-handshake workflow [OMN-5858] (#190)
|
|
26
|
+
- chore: bump omnibase-core to >=0.30.1 [OMN-5812] (#189)
|
|
27
|
+
- chore(deps): bump omnibase_core to 0.30.1 (#188)
|
|
28
|
+
|
|
29
|
+
## v0.9.2 (2026-03-21)
|
|
30
|
+
|
|
31
|
+
### Changed
|
|
32
|
+
- ci: deploy TODO enforcement hooks and workflows OMN-5694, OMN-5695 (#186)
|
|
33
|
+
- chore: remove canceled TODO for OMN-1589 (pyright strictness) [OMN-5690] (#185)
|
|
34
|
+
|
|
35
|
+
### Fixed
|
|
36
|
+
- fix: restructure omnimemory root contract with top-level fields [OMN-5703] (#184)
|
|
37
|
+
|
|
1
38
|
## v0.9.1 (2026-03-20)
|
|
2
39
|
|
|
3
40
|
### Changed
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: omninode-memory
|
|
3
|
-
Version: 0.
|
|
3
|
+
Version: 0.12.0
|
|
4
4
|
Summary: OmniNode document ingestion and semantic retrieval
|
|
5
5
|
Project-URL: Homepage, https://github.com/OmniNode-ai/omnimemory
|
|
6
6
|
Project-URL: Repository, https://github.com/OmniNode-ai/omnimemory
|
|
@@ -20,9 +20,9 @@ Requires-Dist: cachetools<8.0.0,>=6.2.4
|
|
|
20
20
|
Requires-Dist: fastapi<1.0.0,>=0.120.1
|
|
21
21
|
Requires-Dist: httpx<1.0.0,>=0.28.0
|
|
22
22
|
Requires-Dist: mcp<2.0.0,>=1.8.0
|
|
23
|
-
Requires-Dist: omnibase-core
|
|
24
|
-
Requires-Dist: omnibase-infra==0.
|
|
25
|
-
Requires-Dist: omnibase-spi
|
|
23
|
+
Requires-Dist: omnibase-core==0.32.0
|
|
24
|
+
Requires-Dist: omnibase-infra==0.27.0
|
|
25
|
+
Requires-Dist: omnibase-spi>=0.19.1
|
|
26
26
|
Requires-Dist: pinecone-client<7.0.0,>=4.1.0
|
|
27
27
|
Requires-Dist: psutil<8.0.0,>=7.0.0
|
|
28
28
|
Requires-Dist: psycopg2-binary<3.0.0,>=2.9.10
|
|
@@ -7,7 +7,7 @@ build-backend = "hatchling.build"
|
|
|
7
7
|
|
|
8
8
|
[project]
|
|
9
9
|
name = "omninode-memory"
|
|
10
|
-
version = "0.
|
|
10
|
+
version = "0.12.0"
|
|
11
11
|
description = "OmniNode document ingestion and semantic retrieval"
|
|
12
12
|
readme = "README.md"
|
|
13
13
|
requires-python = ">=3.12,<3.14"
|
|
@@ -59,9 +59,9 @@ dependencies = [
|
|
|
59
59
|
"pyyaml>=6.0.2,<7.0.0",
|
|
60
60
|
|
|
61
61
|
# ONEX dependencies - versioned releases from PyPI
|
|
62
|
-
"omnibase-core
|
|
63
|
-
"omnibase-spi
|
|
64
|
-
"omnibase-infra==0.
|
|
62
|
+
"omnibase-core==0.32.0",
|
|
63
|
+
"omnibase-spi>=0.19.1",
|
|
64
|
+
"omnibase-infra==0.27.0",
|
|
65
65
|
|
|
66
66
|
# Logging and monitoring
|
|
67
67
|
# Version ^23.3.0 required for compatibility with omnibase-infra (requires ^23.2.0)
|
|
@@ -363,6 +363,6 @@ markers = [
|
|
|
363
363
|
[tool.uv]
|
|
364
364
|
# Override omnibase-infra's transitive pins on core/spi so our direct pins win.
|
|
365
365
|
override-dependencies = [
|
|
366
|
-
"omnibase-core
|
|
367
|
-
"omnibase-spi
|
|
366
|
+
"omnibase-core==0.32.0",
|
|
367
|
+
"omnibase-spi>=0.19.1",
|
|
368
368
|
]
|
|
@@ -4,7 +4,7 @@
|
|
|
4
4
|
|
|
5
5
|
"""Validate alignment between CI workflow jobs and pre-commit hooks.
|
|
6
6
|
|
|
7
|
-
This script ensures that the CI workflow (.github/workflows/
|
|
7
|
+
This script ensures that the CI workflow (.github/workflows/ci.yml) and
|
|
8
8
|
pre-commit configuration (.pre-commit-config.yaml) stay synchronized.
|
|
9
9
|
|
|
10
10
|
It checks:
|
|
@@ -117,7 +117,7 @@ def main() -> int:
|
|
|
117
117
|
verbose = "--verbose" in sys.argv or "-v" in sys.argv
|
|
118
118
|
|
|
119
119
|
precommit_path = Path(".pre-commit-config.yaml")
|
|
120
|
-
ci_path = Path(".github/workflows/
|
|
120
|
+
ci_path = Path(".github/workflows/ci.yml")
|
|
121
121
|
required_checks_path = Path(".github/required-checks.yaml")
|
|
122
122
|
|
|
123
123
|
precommit_content = load_file(precommit_path)
|
{omninode_memory-0.9.3 → omninode_memory-0.12.0}/src/omnimemory/runtime/dispatch_handlers.py
RENAMED
|
@@ -30,6 +30,7 @@ import contextlib
|
|
|
30
30
|
import inspect
|
|
31
31
|
import json
|
|
32
32
|
import logging
|
|
33
|
+
import os
|
|
33
34
|
from collections.abc import Awaitable, Callable
|
|
34
35
|
from typing import TYPE_CHECKING, Protocol, cast, runtime_checkable
|
|
35
36
|
from uuid import UUID, uuid4
|
|
@@ -46,6 +47,10 @@ if TYPE_CHECKING:
|
|
|
46
47
|
ProtocolHandlerContext,
|
|
47
48
|
)
|
|
48
49
|
|
|
50
|
+
from omnimemory.nodes.node_memory_retrieval_effect.models import (
|
|
51
|
+
ModelHandlerMemoryRetrievalConfig,
|
|
52
|
+
)
|
|
53
|
+
|
|
49
54
|
logger = logging.getLogger(__name__)
|
|
50
55
|
|
|
51
56
|
# =============================================================================
|
|
@@ -118,6 +123,9 @@ DISPATCH_ALIAS_MEMORY_RETRIEVAL_REQUESTED = (
|
|
|
118
123
|
)
|
|
119
124
|
"""Dispatch-compatible alias for memory-retrieval-requested command topic."""
|
|
120
125
|
|
|
126
|
+
DISPATCH_ALIAS_GRAPH_MEMORY = "onex.commands.omnimemory.graph-memory-query.v1"
|
|
127
|
+
"""Dispatch-compatible alias for graph memory query/mutation operations (OMN-6578)."""
|
|
128
|
+
|
|
121
129
|
|
|
122
130
|
# =============================================================================
|
|
123
131
|
# Bridge Handler: Intent Classified Event
|
|
@@ -392,6 +400,47 @@ def create_lifecycle_dispatch_handler(
|
|
|
392
400
|
# =============================================================================
|
|
393
401
|
|
|
394
402
|
|
|
403
|
+
def build_retrieval_config_from_env() -> ( # stub-ok: references stub_handlers field name — fully implemented
|
|
404
|
+
ModelHandlerMemoryRetrievalConfig
|
|
405
|
+
):
|
|
406
|
+
"""Build retrieval config from environment variables.
|
|
407
|
+
|
|
408
|
+
Reads ``OMNIMEMORY_USE_STUB_HANDLERS`` (default ``"true"``). When the
|
|
409
|
+
value is anything other than ``"false"`` (case-insensitive, whitespace
|
|
410
|
+
stripped), in-memory test doubles are used. Otherwise a
|
|
411
|
+
``ModelHandlerQdrantConfig`` is constructed from ``QDRANT_HOST``,
|
|
412
|
+
``QDRANT_PORT``, and ``LLM_EMBEDDING_URL``.
|
|
413
|
+
|
|
414
|
+
Returns:
|
|
415
|
+
Fully-populated retrieval config ready for ``HandlerMemoryRetrieval``.
|
|
416
|
+
"""
|
|
417
|
+
from omnimemory.nodes.node_memory_retrieval_effect.models import (
|
|
418
|
+
ModelHandlerMemoryRetrievalConfig,
|
|
419
|
+
)
|
|
420
|
+
from omnimemory.nodes.node_memory_retrieval_effect.models.model_handler_qdrant_config import (
|
|
421
|
+
ModelHandlerQdrantConfig,
|
|
422
|
+
)
|
|
423
|
+
|
|
424
|
+
use_stubs = (
|
|
425
|
+
os.getenv("OMNIMEMORY_USE_STUB_HANDLERS", "true").strip().lower() != "false"
|
|
426
|
+
)
|
|
427
|
+
qdrant_config = (
|
|
428
|
+
None
|
|
429
|
+
if use_stubs
|
|
430
|
+
else ModelHandlerQdrantConfig(
|
|
431
|
+
qdrant_host=os.getenv("QDRANT_HOST", "localhost"),
|
|
432
|
+
qdrant_port=int(os.getenv("QDRANT_PORT", "6333")),
|
|
433
|
+
embedding_server_url=os.getenv(
|
|
434
|
+
"LLM_EMBEDDING_URL", "http://localhost:8100"
|
|
435
|
+
),
|
|
436
|
+
)
|
|
437
|
+
)
|
|
438
|
+
return ModelHandlerMemoryRetrievalConfig(
|
|
439
|
+
use_stub_handlers=use_stubs,
|
|
440
|
+
qdrant_config=qdrant_config,
|
|
441
|
+
)
|
|
442
|
+
|
|
443
|
+
|
|
395
444
|
def create_memory_retrieval_dispatch_handler( # stub-ok: references stub_handlers field name — fully implemented
|
|
396
445
|
*,
|
|
397
446
|
correlation_id: UUID | None = None,
|
|
@@ -417,7 +466,6 @@ def create_memory_retrieval_dispatch_handler( # stub-ok: references stub_handle
|
|
|
417
466
|
HandlerMemoryRetrieval,
|
|
418
467
|
)
|
|
419
468
|
from omnimemory.nodes.node_memory_retrieval_effect.models import (
|
|
420
|
-
ModelHandlerMemoryRetrievalConfig,
|
|
421
469
|
ModelMemoryRetrievalRequest,
|
|
422
470
|
)
|
|
423
471
|
|
|
@@ -426,7 +474,7 @@ def create_memory_retrieval_dispatch_handler( # stub-ok: references stub_handle
|
|
|
426
474
|
async def _get_retrieval_handler() -> HandlerMemoryRetrieval:
|
|
427
475
|
nonlocal _retrieval_handler
|
|
428
476
|
if _retrieval_handler is None:
|
|
429
|
-
config =
|
|
477
|
+
config = build_retrieval_config_from_env()
|
|
430
478
|
_retrieval_handler = HandlerMemoryRetrieval(config)
|
|
431
479
|
await _retrieval_handler.initialize()
|
|
432
480
|
return _retrieval_handler
|
|
@@ -488,6 +536,70 @@ def create_memory_retrieval_dispatch_handler( # stub-ok: references stub_handle
|
|
|
488
536
|
return _handle
|
|
489
537
|
|
|
490
538
|
|
|
539
|
+
# =============================================================================
|
|
540
|
+
# Bridge Handler: Graph Memory Adapter (OMN-6578)
|
|
541
|
+
# =============================================================================
|
|
542
|
+
|
|
543
|
+
|
|
544
|
+
def _create_graph_memory_dispatch_handler(
|
|
545
|
+
*,
|
|
546
|
+
adapter: object,
|
|
547
|
+
) -> Callable[
|
|
548
|
+
[ModelEventEnvelope[object], ProtocolHandlerContext],
|
|
549
|
+
Awaitable[str],
|
|
550
|
+
]:
|
|
551
|
+
"""Create a dispatch engine handler for graph memory operations.
|
|
552
|
+
|
|
553
|
+
Returns an async handler function compatible with MessageDispatchEngine's
|
|
554
|
+
handler signature. The handler delegates to the ``AdapterGraphMemory``
|
|
555
|
+
instance passed as *adapter*.
|
|
556
|
+
|
|
557
|
+
Args:
|
|
558
|
+
adapter: An ``AdapterGraphMemory`` instance (typed as ``object`` to
|
|
559
|
+
avoid importing the adapter at module level).
|
|
560
|
+
|
|
561
|
+
Returns:
|
|
562
|
+
Async handler function with signature (envelope, context) -> str.
|
|
563
|
+
"""
|
|
564
|
+
|
|
565
|
+
async def _handle(
|
|
566
|
+
envelope: ModelEventEnvelope[object],
|
|
567
|
+
context: ProtocolHandlerContext,
|
|
568
|
+
) -> str:
|
|
569
|
+
"""Bridge handler: envelope -> AdapterGraphMemory operation."""
|
|
570
|
+
ctx_correlation_id = getattr(context, "correlation_id", None) or uuid4()
|
|
571
|
+
|
|
572
|
+
payload = envelope.payload
|
|
573
|
+
if not isinstance(payload, dict):
|
|
574
|
+
msg = (
|
|
575
|
+
f"Unexpected payload type {type(payload).__name__} "
|
|
576
|
+
f"for graph-memory command "
|
|
577
|
+
f"(correlation_id={ctx_correlation_id})"
|
|
578
|
+
)
|
|
579
|
+
logger.warning(msg)
|
|
580
|
+
raise ValueError(msg)
|
|
581
|
+
|
|
582
|
+
logger.info(
|
|
583
|
+
"Dispatching graph-memory command via MessageDispatchEngine "
|
|
584
|
+
"(correlation_id=%s)",
|
|
585
|
+
ctx_correlation_id,
|
|
586
|
+
)
|
|
587
|
+
|
|
588
|
+
# The adapter operation is determined by the payload content.
|
|
589
|
+
# For now, this is a placeholder that logs receipt; the full
|
|
590
|
+
# operation routing will be wired by downstream tasks.
|
|
591
|
+
operation = payload.get("operation", "unknown")
|
|
592
|
+
logger.info(
|
|
593
|
+
"Graph memory command received (operation=%s, correlation_id=%s)",
|
|
594
|
+
operation,
|
|
595
|
+
ctx_correlation_id,
|
|
596
|
+
)
|
|
597
|
+
|
|
598
|
+
return ""
|
|
599
|
+
|
|
600
|
+
return _handle
|
|
601
|
+
|
|
602
|
+
|
|
491
603
|
# =============================================================================
|
|
492
604
|
# Dispatch Engine Factory
|
|
493
605
|
# =============================================================================
|
|
@@ -501,17 +613,19 @@ def create_memory_dispatch_engine(
|
|
|
501
613
|
| Callable[[str, dict[str, object]], None]
|
|
502
614
|
| None = None,
|
|
503
615
|
publish_topics: dict[str, str] | None = None,
|
|
616
|
+
graph_memory_adapter: object | None = None,
|
|
504
617
|
) -> MessageDispatchEngine:
|
|
505
618
|
"""Create and configure a MessageDispatchEngine for OmniMemory domain.
|
|
506
619
|
|
|
507
620
|
Creates the engine, registers all omnimemory domain handlers and routes,
|
|
508
621
|
and freezes it. The engine is ready for dispatch after this call.
|
|
509
622
|
|
|
510
|
-
Registers 4 handlers covering 6 routes:
|
|
623
|
+
Registers 4+ handlers covering 6+ routes:
|
|
511
624
|
1. intent-classified handler (1 route: intent-classified.v1 events)
|
|
512
625
|
2. intent-query handler (1 route: intent-query-requested.v1 commands)
|
|
513
626
|
3. memory-retrieval handler (1 route: memory-retrieval-requested.v1 -- fail-fast)
|
|
514
627
|
4. lifecycle handler (3 routes: runtime-tick, archive, expire -- fail-fast)
|
|
628
|
+
5. graph-memory handler (optional, 1 route: graph query/mutation -- OMN-6578)
|
|
515
629
|
|
|
516
630
|
Args:
|
|
517
631
|
intent_consumer: REQUIRED intent event consumer handler.
|
|
@@ -521,6 +635,9 @@ def create_memory_dispatch_engine(
|
|
|
521
635
|
publish_topics: Optional mapping of handler name to publish topic.
|
|
522
636
|
Keys: "intent_query". Values: full topic strings from contract
|
|
523
637
|
event_bus.publish_topics.
|
|
638
|
+
graph_memory_adapter: Optional AdapterGraphMemory instance. When
|
|
639
|
+
provided the adapter is registered as a handler for graph query
|
|
640
|
+
and mutation operations (OMN-6578).
|
|
524
641
|
|
|
525
642
|
Returns:
|
|
526
643
|
Frozen MessageDispatchEngine ready for dispatch.
|
|
@@ -650,6 +767,31 @@ def create_memory_dispatch_engine(
|
|
|
650
767
|
)
|
|
651
768
|
)
|
|
652
769
|
|
|
770
|
+
# --- Handler 5 (optional): graph memory adapter (OMN-6578) ---
|
|
771
|
+
if graph_memory_adapter is not None:
|
|
772
|
+
graph_memory_handler = _create_graph_memory_dispatch_handler(
|
|
773
|
+
adapter=graph_memory_adapter,
|
|
774
|
+
)
|
|
775
|
+
engine.register_handler(
|
|
776
|
+
handler_id="memory-graph-memory-handler",
|
|
777
|
+
handler=graph_memory_handler,
|
|
778
|
+
category=EnumMessageCategory.COMMAND,
|
|
779
|
+
node_kind=EnumNodeKind.EFFECT,
|
|
780
|
+
message_types=None,
|
|
781
|
+
)
|
|
782
|
+
engine.register_route(
|
|
783
|
+
ModelDispatchRoute(
|
|
784
|
+
route_id="memory-graph-memory-route",
|
|
785
|
+
topic_pattern=DISPATCH_ALIAS_GRAPH_MEMORY,
|
|
786
|
+
message_category=EnumMessageCategory.COMMAND,
|
|
787
|
+
handler_id="memory-graph-memory-handler",
|
|
788
|
+
description=(
|
|
789
|
+
"Routes graph memory queries/mutations to "
|
|
790
|
+
"AdapterGraphMemory (OMN-6578)."
|
|
791
|
+
),
|
|
792
|
+
)
|
|
793
|
+
)
|
|
794
|
+
|
|
653
795
|
engine.freeze()
|
|
654
796
|
|
|
655
797
|
logger.info(
|
|
@@ -74,6 +74,7 @@ if TYPE_CHECKING:
|
|
|
74
74
|
from omnibase_core.runtime.runtime_message_dispatch import MessageDispatchEngine
|
|
75
75
|
from omnibase_infra.runtime.registry import RegistryMessageType
|
|
76
76
|
|
|
77
|
+
from omnimemory.handlers.adapters.adapter_graph_memory import AdapterGraphMemory
|
|
77
78
|
from omnimemory.runtime.introspection import MemoryNodeIntrospectionProxy
|
|
78
79
|
|
|
79
80
|
from omnibase_infra.runtime.models.model_handshake_result import ModelHandshakeResult
|
|
@@ -173,6 +174,7 @@ class PluginMemory:
|
|
|
173
174
|
self._event_bus: ProtocolEventBus | None = None
|
|
174
175
|
self._introspection_nodes: list[str] = []
|
|
175
176
|
self._introspection_proxies: list[MemoryNodeIntrospectionProxy] = []
|
|
177
|
+
self._graph_memory_adapter: AdapterGraphMemory | None = None
|
|
176
178
|
|
|
177
179
|
@property
|
|
178
180
|
def message_type_registry(self) -> RegistryMessageType | None:
|
|
@@ -456,11 +458,54 @@ class PluginMemory:
|
|
|
456
458
|
collect_publish_topics_for_dispatch,
|
|
457
459
|
)
|
|
458
460
|
|
|
461
|
+
# Graph memory adapter — connects to Memgraph (OMN-6578).
|
|
462
|
+
# ModelGraphMemoryConfig has no host/port fields; connection
|
|
463
|
+
# details are passed to initialize(connection_uri=...).
|
|
464
|
+
graph_memory_adapter = None
|
|
465
|
+
memgraph_host = os.environ.get("OMNIMEMORY_MEMGRAPH_HOST")
|
|
466
|
+
if memgraph_host:
|
|
467
|
+
from omnimemory.handlers.adapters.adapter_graph_memory import (
|
|
468
|
+
AdapterGraphMemory,
|
|
469
|
+
)
|
|
470
|
+
from omnimemory.models.adapters.model_graph_memory_config import (
|
|
471
|
+
ModelGraphMemoryConfig,
|
|
472
|
+
)
|
|
473
|
+
|
|
474
|
+
memgraph_port = int(os.environ.get("OMNIMEMORY_MEMGRAPH_PORT", "7687"))
|
|
475
|
+
graph_config = ModelGraphMemoryConfig()
|
|
476
|
+
graph_memory_adapter = AdapterGraphMemory(config=graph_config)
|
|
477
|
+
connection_uri = f"bolt://{memgraph_host}:{memgraph_port}"
|
|
478
|
+
|
|
479
|
+
# Probe TCP before attempting full bolt handshake to provide
|
|
480
|
+
# a clearer error message if Memgraph is unreachable.
|
|
481
|
+
reachable = await _probe_tcp_reachable(memgraph_host, memgraph_port)
|
|
482
|
+
if reachable:
|
|
483
|
+
await graph_memory_adapter.initialize(
|
|
484
|
+
connection_uri=connection_uri, auth=None
|
|
485
|
+
)
|
|
486
|
+
logger.info(
|
|
487
|
+
"Graph memory adapter initialized (uri=%s, correlation_id=%s)",
|
|
488
|
+
connection_uri,
|
|
489
|
+
correlation_id,
|
|
490
|
+
)
|
|
491
|
+
self._graph_memory_adapter = graph_memory_adapter
|
|
492
|
+
else:
|
|
493
|
+
logger.warning(
|
|
494
|
+
"Memgraph unreachable at %s:%d — graph memory "
|
|
495
|
+
"adapter will not be registered "
|
|
496
|
+
"(correlation_id=%s)",
|
|
497
|
+
memgraph_host,
|
|
498
|
+
memgraph_port,
|
|
499
|
+
correlation_id,
|
|
500
|
+
)
|
|
501
|
+
graph_memory_adapter = None
|
|
502
|
+
|
|
459
503
|
self._dispatch_engine = create_memory_dispatch_engine(
|
|
460
504
|
intent_consumer=intent_consumer,
|
|
461
505
|
intent_query_handler=intent_query_handler,
|
|
462
506
|
publish_callback=publish_callback,
|
|
463
507
|
publish_topics=publish_topics,
|
|
508
|
+
graph_memory_adapter=graph_memory_adapter,
|
|
464
509
|
)
|
|
465
510
|
|
|
466
511
|
# Store event_bus reference for introspection publishing.
|
|
@@ -55,6 +55,11 @@ _HANDLER_SPECS: list[tuple[str, str, bool]] = [
|
|
|
55
55
|
"HandlerSubscription",
|
|
56
56
|
False, # Requires ModelONEXContainer
|
|
57
57
|
),
|
|
58
|
+
(
|
|
59
|
+
"omnimemory.nodes.node_similarity_compute.handlers.handler_similarity_compute",
|
|
60
|
+
"HandlerSimilarityCompute",
|
|
61
|
+
False, # Requires ModelONEXContainer — verify-only
|
|
62
|
+
),
|
|
58
63
|
]
|
|
59
64
|
|
|
60
65
|
|