omniintelligence 0.1.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.
- omniintelligence-0.1.0/PKG-INFO +197 -0
- omniintelligence-0.1.0/README.md +176 -0
- omniintelligence-0.1.0/pyproject.toml +281 -0
- omniintelligence-0.1.0/src/omniintelligence/__init__.py +43 -0
- omniintelligence-0.1.0/src/omniintelligence/_legacy/__init__.py +56 -0
- omniintelligence-0.1.0/src/omniintelligence/_legacy/events/__init__.py +41 -0
- omniintelligence-0.1.0/src/omniintelligence/_legacy/events/publisher/__init__.py +34 -0
- omniintelligence-0.1.0/src/omniintelligence/_legacy/events/publisher/event_publisher.py +871 -0
- omniintelligence-0.1.0/src/omniintelligence/_legacy/utils/__init__.py +47 -0
- omniintelligence-0.1.0/src/omniintelligence/_legacy/utils/log_sanitizer.py +57 -0
- omniintelligence-0.1.0/src/omniintelligence/audit/README.md +835 -0
- omniintelligence-0.1.0/src/omniintelligence/audit/__init__.py +38 -0
- omniintelligence-0.1.0/src/omniintelligence/audit/__main__.py +497 -0
- omniintelligence-0.1.0/src/omniintelligence/audit/io_audit.py +1625 -0
- omniintelligence-0.1.0/src/omniintelligence/constants.py +168 -0
- omniintelligence-0.1.0/src/omniintelligence/enums/__init__.py +51 -0
- omniintelligence-0.1.0/src/omniintelligence/enums/enum_code_analysis.py +80 -0
- omniintelligence-0.1.0/src/omniintelligence/enums/enum_domain_taxonomy.py +66 -0
- omniintelligence-0.1.0/src/omniintelligence/enums/enum_entity.py +56 -0
- omniintelligence-0.1.0/src/omniintelligence/enums/enum_fsm.py +39 -0
- omniintelligence-0.1.0/src/omniintelligence/enums/enum_injection.py +137 -0
- omniintelligence-0.1.0/src/omniintelligence/enums/enum_operation.py +101 -0
- omniintelligence-0.1.0/src/omniintelligence/enums/enum_pattern_lifecycle.py +47 -0
- omniintelligence-0.1.0/src/omniintelligence/handlers/__init__.py +19 -0
- omniintelligence-0.1.0/src/omniintelligence/handlers/handler_compile_pattern.py +163 -0
- omniintelligence-0.1.0/src/omniintelligence/models/MIGRATION.md +439 -0
- omniintelligence-0.1.0/src/omniintelligence/models/__init__.py +83 -0
- omniintelligence-0.1.0/src/omniintelligence/models/domain/__init__.py +9 -0
- omniintelligence-0.1.0/src/omniintelligence/models/domain/model_gate_snapshot.py +74 -0
- omniintelligence-0.1.0/src/omniintelligence/models/events/__init__.py +42 -0
- omniintelligence-0.1.0/src/omniintelligence/models/events/model_code_analysis_completed.py +76 -0
- omniintelligence-0.1.0/src/omniintelligence/models/events/model_code_analysis_failed.py +62 -0
- omniintelligence-0.1.0/src/omniintelligence/models/events/model_code_analysis_request.py +59 -0
- omniintelligence-0.1.0/src/omniintelligence/models/events/model_pattern_discovered_event.py +76 -0
- omniintelligence-0.1.0/src/omniintelligence/models/events/model_pattern_lifecycle_event.py +65 -0
- omniintelligence-0.1.0/src/omniintelligence/models/model_entity.py +285 -0
- omniintelligence-0.1.0/src/omniintelligence/models/model_intelligence_input.py +302 -0
- omniintelligence-0.1.0/src/omniintelligence/models/model_intelligence_output.py +202 -0
- omniintelligence-0.1.0/src/omniintelligence/models/model_search_result.py +205 -0
- omniintelligence-0.1.0/src/omniintelligence/models/repository/__init__.py +31 -0
- omniintelligence-0.1.0/src/omniintelligence/models/repository/model_learned_pattern_row.py +161 -0
- omniintelligence-0.1.0/src/omniintelligence/models/repository/model_pattern_for_injection.py +76 -0
- omniintelligence-0.1.0/src/omniintelligence/models/repository/model_pattern_summary.py +60 -0
- omniintelligence-0.1.0/src/omniintelligence/models/repository/model_scalar_results.py +90 -0
- omniintelligence-0.1.0/src/omniintelligence/nodes/__init__.py +226 -0
- omniintelligence-0.1.0/src/omniintelligence/nodes/node_claude_hook_event_effect/__init__.py +94 -0
- omniintelligence-0.1.0/src/omniintelligence/nodes/node_claude_hook_event_effect/contract.yaml +338 -0
- omniintelligence-0.1.0/src/omniintelligence/nodes/node_claude_hook_event_effect/handlers/__init__.py +24 -0
- omniintelligence-0.1.0/src/omniintelligence/nodes/node_claude_hook_event_effect/handlers/handler_claude_event.py +555 -0
- omniintelligence-0.1.0/src/omniintelligence/nodes/node_claude_hook_event_effect/models/__init__.py +34 -0
- omniintelligence-0.1.0/src/omniintelligence/nodes/node_claude_hook_event_effect/models/model_input.py +26 -0
- omniintelligence-0.1.0/src/omniintelligence/nodes/node_claude_hook_event_effect/models/model_output.py +165 -0
- omniintelligence-0.1.0/src/omniintelligence/nodes/node_claude_hook_event_effect/node.py +80 -0
- omniintelligence-0.1.0/src/omniintelligence/nodes/node_claude_hook_event_effect/registry/__init__.py +12 -0
- omniintelligence-0.1.0/src/omniintelligence/nodes/node_claude_hook_event_effect/registry/registry_claude_hook_event_effect.py +215 -0
- omniintelligence-0.1.0/src/omniintelligence/nodes/node_execution_trace_parser_compute/__init__.py +7 -0
- omniintelligence-0.1.0/src/omniintelligence/nodes/node_execution_trace_parser_compute/contract.yaml +88 -0
- omniintelligence-0.1.0/src/omniintelligence/nodes/node_execution_trace_parser_compute/handlers/__init__.py +74 -0
- omniintelligence-0.1.0/src/omniintelligence/nodes/node_execution_trace_parser_compute/handlers/exceptions.py +33 -0
- omniintelligence-0.1.0/src/omniintelligence/nodes/node_execution_trace_parser_compute/handlers/handler_compute.py +449 -0
- omniintelligence-0.1.0/src/omniintelligence/nodes/node_execution_trace_parser_compute/handlers/handler_event_extraction.py +319 -0
- omniintelligence-0.1.0/src/omniintelligence/nodes/node_execution_trace_parser_compute/handlers/handler_trace_parsing.py +454 -0
- omniintelligence-0.1.0/src/omniintelligence/nodes/node_execution_trace_parser_compute/handlers/protocols.py +133 -0
- omniintelligence-0.1.0/src/omniintelligence/nodes/node_execution_trace_parser_compute/models/__init__.py +28 -0
- omniintelligence-0.1.0/src/omniintelligence/nodes/node_execution_trace_parser_compute/models/model_trace_parsing_input.py +87 -0
- omniintelligence-0.1.0/src/omniintelligence/nodes/node_execution_trace_parser_compute/models/model_trace_parsing_output.py +177 -0
- omniintelligence-0.1.0/src/omniintelligence/nodes/node_execution_trace_parser_compute/node.py +61 -0
- omniintelligence-0.1.0/src/omniintelligence/nodes/node_intelligence_orchestrator/__init__.py +7 -0
- omniintelligence-0.1.0/src/omniintelligence/nodes/node_intelligence_orchestrator/contract.yaml +228 -0
- omniintelligence-0.1.0/src/omniintelligence/nodes/node_intelligence_orchestrator/handlers/__init__.py +17 -0
- omniintelligence-0.1.0/src/omniintelligence/nodes/node_intelligence_orchestrator/handlers/handler_receive_intent.py +152 -0
- omniintelligence-0.1.0/src/omniintelligence/nodes/node_intelligence_orchestrator/models/__init__.py +31 -0
- omniintelligence-0.1.0/src/omniintelligence/nodes/node_intelligence_orchestrator/models/model_intent_receipt.py +70 -0
- omniintelligence-0.1.0/src/omniintelligence/nodes/node_intelligence_orchestrator/models/model_orchestrator_input.py +109 -0
- omniintelligence-0.1.0/src/omniintelligence/nodes/node_intelligence_orchestrator/models/model_orchestrator_output.py +123 -0
- omniintelligence-0.1.0/src/omniintelligence/nodes/node_intelligence_orchestrator/node.py +68 -0
- omniintelligence-0.1.0/src/omniintelligence/nodes/node_intelligence_reducer/__init__.py +7 -0
- omniintelligence-0.1.0/src/omniintelligence/nodes/node_intelligence_reducer/contract.yaml +590 -0
- omniintelligence-0.1.0/src/omniintelligence/nodes/node_intelligence_reducer/handlers/__init__.py +50 -0
- omniintelligence-0.1.0/src/omniintelligence/nodes/node_intelligence_reducer/handlers/handler_pattern_lifecycle.py +416 -0
- omniintelligence-0.1.0/src/omniintelligence/nodes/node_intelligence_reducer/handlers/handler_process.py +139 -0
- omniintelligence-0.1.0/src/omniintelligence/nodes/node_intelligence_reducer/models/__init__.py +56 -0
- omniintelligence-0.1.0/src/omniintelligence/nodes/node_intelligence_reducer/models/model_intelligence_state.py +85 -0
- omniintelligence-0.1.0/src/omniintelligence/nodes/node_intelligence_reducer/models/model_pattern_lifecycle_reducer_input.py +52 -0
- omniintelligence-0.1.0/src/omniintelligence/nodes/node_intelligence_reducer/models/model_payload_update_pattern_status.py +64 -0
- omniintelligence-0.1.0/src/omniintelligence/nodes/node_intelligence_reducer/models/model_reducer_input.py +402 -0
- omniintelligence-0.1.0/src/omniintelligence/nodes/node_intelligence_reducer/models/model_reducer_output.py +194 -0
- omniintelligence-0.1.0/src/omniintelligence/nodes/node_intelligence_reducer/node.py +90 -0
- omniintelligence-0.1.0/src/omniintelligence/nodes/node_intelligence_reducer/node_tests/__init__.py +10 -0
- omniintelligence-0.1.0/src/omniintelligence/nodes/node_intelligence_reducer/node_tests/conftest.py +143 -0
- omniintelligence-0.1.0/src/omniintelligence/nodes/node_intelligence_reducer/node_tests/test_handler_pattern_lifecycle.py +1478 -0
- omniintelligence-0.1.0/src/omniintelligence/nodes/node_intelligence_reducer/node_tests/test_node_pattern_lifecycle_integration.py +1106 -0
- omniintelligence-0.1.0/src/omniintelligence/nodes/node_intent_classifier_compute/__init__.py +7 -0
- omniintelligence-0.1.0/src/omniintelligence/nodes/node_intent_classifier_compute/contract.yaml +230 -0
- omniintelligence-0.1.0/src/omniintelligence/nodes/node_intent_classifier_compute/handlers/__init__.py +115 -0
- omniintelligence-0.1.0/src/omniintelligence/nodes/node_intent_classifier_compute/handlers/exceptions.py +121 -0
- omniintelligence-0.1.0/src/omniintelligence/nodes/node_intent_classifier_compute/handlers/handler_intent_classification.py +883 -0
- omniintelligence-0.1.0/src/omniintelligence/nodes/node_intent_classifier_compute/handlers/handler_langextract.py +879 -0
- omniintelligence-0.1.0/src/omniintelligence/nodes/node_intent_classifier_compute/models/__init__.py +31 -0
- omniintelligence-0.1.0/src/omniintelligence/nodes/node_intent_classifier_compute/models/model_config.py +266 -0
- omniintelligence-0.1.0/src/omniintelligence/nodes/node_intent_classifier_compute/models/model_intent_classification_input.py +76 -0
- omniintelligence-0.1.0/src/omniintelligence/nodes/node_intent_classifier_compute/models/model_intent_classification_output.py +94 -0
- omniintelligence-0.1.0/src/omniintelligence/nodes/node_intent_classifier_compute/node.py +58 -0
- omniintelligence-0.1.0/src/omniintelligence/nodes/node_pattern_assembler_orchestrator/__init__.py +7 -0
- omniintelligence-0.1.0/src/omniintelligence/nodes/node_pattern_assembler_orchestrator/contract.yaml +171 -0
- omniintelligence-0.1.0/src/omniintelligence/nodes/node_pattern_assembler_orchestrator/handlers/__init__.py +65 -0
- omniintelligence-0.1.0/src/omniintelligence/nodes/node_pattern_assembler_orchestrator/handlers/_timing.py +29 -0
- omniintelligence-0.1.0/src/omniintelligence/nodes/node_pattern_assembler_orchestrator/handlers/exceptions.py +141 -0
- omniintelligence-0.1.0/src/omniintelligence/nodes/node_pattern_assembler_orchestrator/handlers/handler_orchestrate.py +385 -0
- omniintelligence-0.1.0/src/omniintelligence/nodes/node_pattern_assembler_orchestrator/handlers/handler_pattern_assembly.py +527 -0
- omniintelligence-0.1.0/src/omniintelligence/nodes/node_pattern_assembler_orchestrator/handlers/handler_workflow_coordination.py +694 -0
- omniintelligence-0.1.0/src/omniintelligence/nodes/node_pattern_assembler_orchestrator/handlers/protocols.py +191 -0
- omniintelligence-0.1.0/src/omniintelligence/nodes/node_pattern_assembler_orchestrator/models/__init__.py +31 -0
- omniintelligence-0.1.0/src/omniintelligence/nodes/node_pattern_assembler_orchestrator/models/error_codes.py +102 -0
- omniintelligence-0.1.0/src/omniintelligence/nodes/node_pattern_assembler_orchestrator/models/model_pattern_assembly_input.py +157 -0
- omniintelligence-0.1.0/src/omniintelligence/nodes/node_pattern_assembler_orchestrator/models/model_pattern_assembly_output.py +120 -0
- omniintelligence-0.1.0/src/omniintelligence/nodes/node_pattern_assembler_orchestrator/node.py +67 -0
- omniintelligence-0.1.0/src/omniintelligence/nodes/node_pattern_demotion_effect/__init__.py +127 -0
- omniintelligence-0.1.0/src/omniintelligence/nodes/node_pattern_demotion_effect/contract.yaml +334 -0
- omniintelligence-0.1.0/src/omniintelligence/nodes/node_pattern_demotion_effect/handlers/__init__.py +70 -0
- omniintelligence-0.1.0/src/omniintelligence/nodes/node_pattern_demotion_effect/handlers/handler_demotion.py +1181 -0
- omniintelligence-0.1.0/src/omniintelligence/nodes/node_pattern_demotion_effect/introspection.py +201 -0
- omniintelligence-0.1.0/src/omniintelligence/nodes/node_pattern_demotion_effect/models/__init__.py +29 -0
- omniintelligence-0.1.0/src/omniintelligence/nodes/node_pattern_demotion_effect/models/model_demotion_request.py +64 -0
- omniintelligence-0.1.0/src/omniintelligence/nodes/node_pattern_demotion_effect/models/model_demotion_result.py +242 -0
- omniintelligence-0.1.0/src/omniintelligence/nodes/node_pattern_demotion_effect/node.py +97 -0
- omniintelligence-0.1.0/src/omniintelligence/nodes/node_pattern_demotion_effect/node_tests/__init__.py +3 -0
- omniintelligence-0.1.0/src/omniintelligence/nodes/node_pattern_demotion_effect/node_tests/test_demotion.py +2750 -0
- omniintelligence-0.1.0/src/omniintelligence/nodes/node_pattern_demotion_effect/registry/__init__.py +14 -0
- omniintelligence-0.1.0/src/omniintelligence/nodes/node_pattern_demotion_effect/registry/registry_pattern_demotion_effect.py +292 -0
- omniintelligence-0.1.0/src/omniintelligence/nodes/node_pattern_extraction_compute/__init__.py +15 -0
- omniintelligence-0.1.0/src/omniintelligence/nodes/node_pattern_extraction_compute/contract.yaml +230 -0
- omniintelligence-0.1.0/src/omniintelligence/nodes/node_pattern_extraction_compute/handlers/__init__.py +149 -0
- omniintelligence-0.1.0/src/omniintelligence/nodes/node_pattern_extraction_compute/handlers/exceptions.py +89 -0
- omniintelligence-0.1.0/src/omniintelligence/nodes/node_pattern_extraction_compute/handlers/handler_architecture_patterns.py +278 -0
- omniintelligence-0.1.0/src/omniintelligence/nodes/node_pattern_extraction_compute/handlers/handler_converters.py +195 -0
- omniintelligence-0.1.0/src/omniintelligence/nodes/node_pattern_extraction_compute/handlers/handler_error_patterns.py +226 -0
- omniintelligence-0.1.0/src/omniintelligence/nodes/node_pattern_extraction_compute/handlers/handler_extract_all_patterns.py +341 -0
- omniintelligence-0.1.0/src/omniintelligence/nodes/node_pattern_extraction_compute/handlers/handler_file_patterns.py +223 -0
- omniintelligence-0.1.0/src/omniintelligence/nodes/node_pattern_extraction_compute/handlers/handler_identity.py +105 -0
- omniintelligence-0.1.0/src/omniintelligence/nodes/node_pattern_extraction_compute/handlers/handler_merge.py +108 -0
- omniintelligence-0.1.0/src/omniintelligence/nodes/node_pattern_extraction_compute/handlers/handler_tool_failure_patterns.py +1104 -0
- omniintelligence-0.1.0/src/omniintelligence/nodes/node_pattern_extraction_compute/handlers/handler_tool_patterns.py +322 -0
- omniintelligence-0.1.0/src/omniintelligence/nodes/node_pattern_extraction_compute/handlers/protocols.py +637 -0
- omniintelligence-0.1.0/src/omniintelligence/nodes/node_pattern_extraction_compute/handlers/utils.py +39 -0
- omniintelligence-0.1.0/src/omniintelligence/nodes/node_pattern_extraction_compute/introspection.py +196 -0
- omniintelligence-0.1.0/src/omniintelligence/nodes/node_pattern_extraction_compute/models/__init__.py +35 -0
- omniintelligence-0.1.0/src/omniintelligence/nodes/node_pattern_extraction_compute/models/enum_insight_type.py +35 -0
- omniintelligence-0.1.0/src/omniintelligence/nodes/node_pattern_extraction_compute/models/model_input.py +182 -0
- omniintelligence-0.1.0/src/omniintelligence/nodes/node_pattern_extraction_compute/models/model_insight.py +93 -0
- omniintelligence-0.1.0/src/omniintelligence/nodes/node_pattern_extraction_compute/models/model_output.py +121 -0
- omniintelligence-0.1.0/src/omniintelligence/nodes/node_pattern_extraction_compute/node.py +49 -0
- omniintelligence-0.1.0/src/omniintelligence/nodes/node_pattern_feedback_effect/__init__.py +44 -0
- omniintelligence-0.1.0/src/omniintelligence/nodes/node_pattern_feedback_effect/contract.yaml +207 -0
- omniintelligence-0.1.0/src/omniintelligence/nodes/node_pattern_feedback_effect/handlers/__init__.py +83 -0
- omniintelligence-0.1.0/src/omniintelligence/nodes/node_pattern_feedback_effect/handlers/handler_attribution_binder.py +538 -0
- omniintelligence-0.1.0/src/omniintelligence/nodes/node_pattern_feedback_effect/handlers/handler_session_outcome.py +740 -0
- omniintelligence-0.1.0/src/omniintelligence/nodes/node_pattern_feedback_effect/handlers/heuristics.py +221 -0
- omniintelligence-0.1.0/src/omniintelligence/nodes/node_pattern_feedback_effect/models/__init__.py +25 -0
- omniintelligence-0.1.0/src/omniintelligence/nodes/node_pattern_feedback_effect/models/model_input.py +21 -0
- omniintelligence-0.1.0/src/omniintelligence/nodes/node_pattern_feedback_effect/models/model_output.py +80 -0
- omniintelligence-0.1.0/src/omniintelligence/nodes/node_pattern_feedback_effect/node.py +83 -0
- omniintelligence-0.1.0/src/omniintelligence/nodes/node_pattern_feedback_effect/py.typed +0 -0
- omniintelligence-0.1.0/src/omniintelligence/nodes/node_pattern_feedback_effect/registry/__init__.py +12 -0
- omniintelligence-0.1.0/src/omniintelligence/nodes/node_pattern_feedback_effect/registry/registry_pattern_feedback_effect.py +204 -0
- omniintelligence-0.1.0/src/omniintelligence/nodes/node_pattern_learning_compute/__init__.py +44 -0
- omniintelligence-0.1.0/src/omniintelligence/nodes/node_pattern_learning_compute/contract.yaml +107 -0
- omniintelligence-0.1.0/src/omniintelligence/nodes/node_pattern_learning_compute/handlers/__init__.py +131 -0
- omniintelligence-0.1.0/src/omniintelligence/nodes/node_pattern_learning_compute/handlers/exceptions.py +55 -0
- omniintelligence-0.1.0/src/omniintelligence/nodes/node_pattern_learning_compute/handlers/handler_confidence_scoring.py +167 -0
- omniintelligence-0.1.0/src/omniintelligence/nodes/node_pattern_learning_compute/handlers/handler_deduplication.py +405 -0
- omniintelligence-0.1.0/src/omniintelligence/nodes/node_pattern_learning_compute/handlers/handler_feature_extraction.py +627 -0
- omniintelligence-0.1.0/src/omniintelligence/nodes/node_pattern_learning_compute/handlers/handler_pattern_clustering.py +705 -0
- omniintelligence-0.1.0/src/omniintelligence/nodes/node_pattern_learning_compute/handlers/handler_pattern_learning.py +955 -0
- omniintelligence-0.1.0/src/omniintelligence/nodes/node_pattern_learning_compute/handlers/presets.py +187 -0
- omniintelligence-0.1.0/src/omniintelligence/nodes/node_pattern_learning_compute/handlers/protocols.py +354 -0
- omniintelligence-0.1.0/src/omniintelligence/nodes/node_pattern_learning_compute/handlers/replay.py +85 -0
- omniintelligence-0.1.0/src/omniintelligence/nodes/node_pattern_learning_compute/handlers/union_find.py +242 -0
- omniintelligence-0.1.0/src/omniintelligence/nodes/node_pattern_learning_compute/handlers/utils.py +317 -0
- omniintelligence-0.1.0/src/omniintelligence/nodes/node_pattern_learning_compute/introspection.py +191 -0
- omniintelligence-0.1.0/src/omniintelligence/nodes/node_pattern_learning_compute/models/__init__.py +33 -0
- omniintelligence-0.1.0/src/omniintelligence/nodes/node_pattern_learning_compute/models/model_pattern_learning_input.py +90 -0
- omniintelligence-0.1.0/src/omniintelligence/nodes/node_pattern_learning_compute/models/model_pattern_learning_output.py +145 -0
- omniintelligence-0.1.0/src/omniintelligence/nodes/node_pattern_learning_compute/node.py +66 -0
- omniintelligence-0.1.0/src/omniintelligence/nodes/node_pattern_lifecycle_effect/__init__.py +86 -0
- omniintelligence-0.1.0/src/omniintelligence/nodes/node_pattern_lifecycle_effect/contract.yaml +228 -0
- omniintelligence-0.1.0/src/omniintelligence/nodes/node_pattern_lifecycle_effect/handlers/__init__.py +19 -0
- omniintelligence-0.1.0/src/omniintelligence/nodes/node_pattern_lifecycle_effect/handlers/handler_transition.py +929 -0
- omniintelligence-0.1.0/src/omniintelligence/nodes/node_pattern_lifecycle_effect/models/__init__.py +18 -0
- omniintelligence-0.1.0/src/omniintelligence/nodes/node_pattern_lifecycle_effect/models/model_transition_result.py +141 -0
- omniintelligence-0.1.0/src/omniintelligence/nodes/node_pattern_lifecycle_effect/node.py +107 -0
- omniintelligence-0.1.0/src/omniintelligence/nodes/node_pattern_lifecycle_effect/node_tests/__init__.py +16 -0
- omniintelligence-0.1.0/src/omniintelligence/nodes/node_pattern_lifecycle_effect/node_tests/conftest.py +375 -0
- omniintelligence-0.1.0/src/omniintelligence/nodes/node_pattern_lifecycle_effect/node_tests/test_handler_transition.py +1537 -0
- omniintelligence-0.1.0/src/omniintelligence/nodes/node_pattern_lifecycle_effect/registry/__init__.py +16 -0
- omniintelligence-0.1.0/src/omniintelligence/nodes/node_pattern_lifecycle_effect/registry/registry.py +264 -0
- omniintelligence-0.1.0/src/omniintelligence/nodes/node_pattern_matching_compute/__init__.py +7 -0
- omniintelligence-0.1.0/src/omniintelligence/nodes/node_pattern_matching_compute/contract.yaml +110 -0
- omniintelligence-0.1.0/src/omniintelligence/nodes/node_pattern_matching_compute/handlers/__init__.py +77 -0
- omniintelligence-0.1.0/src/omniintelligence/nodes/node_pattern_matching_compute/handlers/exceptions.py +56 -0
- omniintelligence-0.1.0/src/omniintelligence/nodes/node_pattern_matching_compute/handlers/handler_compute.py +401 -0
- omniintelligence-0.1.0/src/omniintelligence/nodes/node_pattern_matching_compute/handlers/handler_pattern_matching.py +494 -0
- omniintelligence-0.1.0/src/omniintelligence/nodes/node_pattern_matching_compute/handlers/protocols.py +183 -0
- omniintelligence-0.1.0/src/omniintelligence/nodes/node_pattern_matching_compute/models/__init__.py +25 -0
- omniintelligence-0.1.0/src/omniintelligence/nodes/node_pattern_matching_compute/models/model_pattern_matching_input.py +215 -0
- omniintelligence-0.1.0/src/omniintelligence/nodes/node_pattern_matching_compute/models/model_pattern_matching_output.py +286 -0
- omniintelligence-0.1.0/src/omniintelligence/nodes/node_pattern_matching_compute/node.py +56 -0
- omniintelligence-0.1.0/src/omniintelligence/nodes/node_pattern_promotion_effect/__init__.py +120 -0
- omniintelligence-0.1.0/src/omniintelligence/nodes/node_pattern_promotion_effect/contract.yaml +366 -0
- omniintelligence-0.1.0/src/omniintelligence/nodes/node_pattern_promotion_effect/handlers/__init__.py +76 -0
- omniintelligence-0.1.0/src/omniintelligence/nodes/node_pattern_promotion_effect/handlers/handler_auto_promote.py +569 -0
- omniintelligence-0.1.0/src/omniintelligence/nodes/node_pattern_promotion_effect/handlers/handler_promotion.py +799 -0
- omniintelligence-0.1.0/src/omniintelligence/nodes/node_pattern_promotion_effect/introspection.py +201 -0
- omniintelligence-0.1.0/src/omniintelligence/nodes/node_pattern_promotion_effect/models/__init__.py +28 -0
- omniintelligence-0.1.0/src/omniintelligence/nodes/node_pattern_promotion_effect/models/model_promotion_request.py +46 -0
- omniintelligence-0.1.0/src/omniintelligence/nodes/node_pattern_promotion_effect/models/model_promotion_result.py +149 -0
- omniintelligence-0.1.0/src/omniintelligence/nodes/node_pattern_promotion_effect/node.py +102 -0
- omniintelligence-0.1.0/src/omniintelligence/nodes/node_pattern_promotion_effect/node_tests/__init__.py +25 -0
- omniintelligence-0.1.0/src/omniintelligence/nodes/node_pattern_promotion_effect/node_tests/test_promotion.py +2403 -0
- omniintelligence-0.1.0/src/omniintelligence/nodes/node_pattern_promotion_effect/registry/__init__.py +15 -0
- omniintelligence-0.1.0/src/omniintelligence/nodes/node_pattern_promotion_effect/registry/registry_pattern_promotion_effect.py +295 -0
- omniintelligence-0.1.0/src/omniintelligence/nodes/node_pattern_storage_effect/__init__.py +132 -0
- omniintelligence-0.1.0/src/omniintelligence/nodes/node_pattern_storage_effect/constants.py +256 -0
- omniintelligence-0.1.0/src/omniintelligence/nodes/node_pattern_storage_effect/contract.yaml +383 -0
- omniintelligence-0.1.0/src/omniintelligence/nodes/node_pattern_storage_effect/contract_loader.py +544 -0
- omniintelligence-0.1.0/src/omniintelligence/nodes/node_pattern_storage_effect/handlers/__init__.py +178 -0
- omniintelligence-0.1.0/src/omniintelligence/nodes/node_pattern_storage_effect/handlers/handler_consume_discovered.py +215 -0
- omniintelligence-0.1.0/src/omniintelligence/nodes/node_pattern_storage_effect/handlers/handler_pattern_storage.py +651 -0
- omniintelligence-0.1.0/src/omniintelligence/nodes/node_pattern_storage_effect/handlers/handler_promote_pattern.py +588 -0
- omniintelligence-0.1.0/src/omniintelligence/nodes/node_pattern_storage_effect/handlers/handler_store_pattern.py +923 -0
- omniintelligence-0.1.0/src/omniintelligence/nodes/node_pattern_storage_effect/introspection.py +205 -0
- omniintelligence-0.1.0/src/omniintelligence/nodes/node_pattern_storage_effect/models/__init__.py +46 -0
- omniintelligence-0.1.0/src/omniintelligence/nodes/node_pattern_storage_effect/models/model_pattern_state.py +57 -0
- omniintelligence-0.1.0/src/omniintelligence/nodes/node_pattern_storage_effect/models/model_pattern_storage_input.py +189 -0
- omniintelligence-0.1.0/src/omniintelligence/nodes/node_pattern_storage_effect/models/model_pattern_storage_output.py +273 -0
- omniintelligence-0.1.0/src/omniintelligence/nodes/node_pattern_storage_effect/node.py +100 -0
- omniintelligence-0.1.0/src/omniintelligence/nodes/node_pattern_storage_effect/node_tests/__init__.py +15 -0
- omniintelligence-0.1.0/src/omniintelligence/nodes/node_pattern_storage_effect/node_tests/conftest.py +169 -0
- omniintelligence-0.1.0/src/omniintelligence/nodes/node_pattern_storage_effect/node_tests/test_governance_invariants.py +674 -0
- omniintelligence-0.1.0/src/omniintelligence/nodes/node_pattern_storage_effect/node_tests/test_idempotency.py +1075 -0
- omniintelligence-0.1.0/src/omniintelligence/nodes/node_pattern_storage_effect/node_tests/test_state_transitions.py +764 -0
- omniintelligence-0.1.0/src/omniintelligence/nodes/node_quality_scoring_compute/__init__.py +7 -0
- omniintelligence-0.1.0/src/omniintelligence/nodes/node_quality_scoring_compute/contract.yaml +109 -0
- omniintelligence-0.1.0/src/omniintelligence/nodes/node_quality_scoring_compute/handlers/__init__.py +135 -0
- omniintelligence-0.1.0/src/omniintelligence/nodes/node_quality_scoring_compute/handlers/enum_onex_strictness_level.py +63 -0
- omniintelligence-0.1.0/src/omniintelligence/nodes/node_quality_scoring_compute/handlers/exceptions.py +44 -0
- omniintelligence-0.1.0/src/omniintelligence/nodes/node_quality_scoring_compute/handlers/handler_compute.py +360 -0
- omniintelligence-0.1.0/src/omniintelligence/nodes/node_quality_scoring_compute/handlers/handler_quality_scoring.py +1397 -0
- omniintelligence-0.1.0/src/omniintelligence/nodes/node_quality_scoring_compute/handlers/presets.py +214 -0
- omniintelligence-0.1.0/src/omniintelligence/nodes/node_quality_scoring_compute/handlers/protocols.py +114 -0
- omniintelligence-0.1.0/src/omniintelligence/nodes/node_quality_scoring_compute/models/__init__.py +21 -0
- omniintelligence-0.1.0/src/omniintelligence/nodes/node_quality_scoring_compute/models/model_quality_scoring_input.py +168 -0
- omniintelligence-0.1.0/src/omniintelligence/nodes/node_quality_scoring_compute/models/model_quality_scoring_output.py +153 -0
- omniintelligence-0.1.0/src/omniintelligence/nodes/node_quality_scoring_compute/node.py +44 -0
- omniintelligence-0.1.0/src/omniintelligence/nodes/node_semantic_analysis_compute/__init__.py +7 -0
- omniintelligence-0.1.0/src/omniintelligence/nodes/node_semantic_analysis_compute/contract.yaml +83 -0
- omniintelligence-0.1.0/src/omniintelligence/nodes/node_semantic_analysis_compute/handlers/__init__.py +103 -0
- omniintelligence-0.1.0/src/omniintelligence/nodes/node_semantic_analysis_compute/handlers/exceptions.py +65 -0
- omniintelligence-0.1.0/src/omniintelligence/nodes/node_semantic_analysis_compute/handlers/handler_compute_semantic_analysis.py +186 -0
- omniintelligence-0.1.0/src/omniintelligence/nodes/node_semantic_analysis_compute/handlers/handler_semantic_analysis.py +1219 -0
- omniintelligence-0.1.0/src/omniintelligence/nodes/node_semantic_analysis_compute/handlers/protocols.py +352 -0
- omniintelligence-0.1.0/src/omniintelligence/nodes/node_semantic_analysis_compute/models/__init__.py +35 -0
- omniintelligence-0.1.0/src/omniintelligence/nodes/node_semantic_analysis_compute/models/enums.py +41 -0
- omniintelligence-0.1.0/src/omniintelligence/nodes/node_semantic_analysis_compute/models/model_semantic_analysis_input.py +66 -0
- omniintelligence-0.1.0/src/omniintelligence/nodes/node_semantic_analysis_compute/models/model_semantic_analysis_output.py +145 -0
- omniintelligence-0.1.0/src/omniintelligence/nodes/node_semantic_analysis_compute/models/model_semantic_entity.py +57 -0
- omniintelligence-0.1.0/src/omniintelligence/nodes/node_semantic_analysis_compute/models/model_semantic_relation.py +57 -0
- omniintelligence-0.1.0/src/omniintelligence/nodes/node_semantic_analysis_compute/node.py +56 -0
- omniintelligence-0.1.0/src/omniintelligence/nodes/node_success_criteria_matcher_compute/__init__.py +7 -0
- omniintelligence-0.1.0/src/omniintelligence/nodes/node_success_criteria_matcher_compute/contract.yaml +87 -0
- omniintelligence-0.1.0/src/omniintelligence/nodes/node_success_criteria_matcher_compute/handlers/__init__.py +110 -0
- omniintelligence-0.1.0/src/omniintelligence/nodes/node_success_criteria_matcher_compute/handlers/exceptions.py +39 -0
- omniintelligence-0.1.0/src/omniintelligence/nodes/node_success_criteria_matcher_compute/handlers/handler_compute.py +360 -0
- omniintelligence-0.1.0/src/omniintelligence/nodes/node_success_criteria_matcher_compute/handlers/handler_criteria_matching.py +699 -0
- omniintelligence-0.1.0/src/omniintelligence/nodes/node_success_criteria_matcher_compute/handlers/protocols.py +246 -0
- omniintelligence-0.1.0/src/omniintelligence/nodes/node_success_criteria_matcher_compute/models/__init__.py +19 -0
- omniintelligence-0.1.0/src/omniintelligence/nodes/node_success_criteria_matcher_compute/models/model_success_criteria_input.py +93 -0
- omniintelligence-0.1.0/src/omniintelligence/nodes/node_success_criteria_matcher_compute/models/model_success_criteria_output.py +71 -0
- omniintelligence-0.1.0/src/omniintelligence/nodes/node_success_criteria_matcher_compute/node.py +44 -0
- omniintelligence-0.1.0/src/omniintelligence/protocols/__init__.py +78 -0
- omniintelligence-0.1.0/src/omniintelligence/repositories/__init__.py +29 -0
- omniintelligence-0.1.0/src/omniintelligence/repositories/adapter_pattern_store.py +632 -0
- omniintelligence-0.1.0/src/omniintelligence/repositories/learned_patterns.repository.yaml +930 -0
- omniintelligence-0.1.0/src/omniintelligence/runtime/__init__.py +62 -0
- omniintelligence-0.1.0/src/omniintelligence/runtime/adapters.py +292 -0
- omniintelligence-0.1.0/src/omniintelligence/runtime/contract_topics.py +242 -0
- omniintelligence-0.1.0/src/omniintelligence/runtime/contracts/__init__.py +6 -0
- omniintelligence-0.1.0/src/omniintelligence/runtime/contracts/runtime_config.yaml +205 -0
- omniintelligence-0.1.0/src/omniintelligence/runtime/dispatch_handlers.py +878 -0
- omniintelligence-0.1.0/src/omniintelligence/runtime/message_type_registration.py +232 -0
- omniintelligence-0.1.0/src/omniintelligence/runtime/model_runtime_config.py +764 -0
- omniintelligence-0.1.0/src/omniintelligence/runtime/plugin.py +766 -0
- omniintelligence-0.1.0/src/omniintelligence/runtime/stub_launcher.py +155 -0
- omniintelligence-0.1.0/src/omniintelligence/runtime/wiring.py +142 -0
- omniintelligence-0.1.0/src/omniintelligence/testing/__init__.py +30 -0
- omniintelligence-0.1.0/src/omniintelligence/testing/mock_pattern_store.py +602 -0
- omniintelligence-0.1.0/src/omniintelligence/tools/README.md +557 -0
- omniintelligence-0.1.0/src/omniintelligence/tools/__init__.py +36 -0
- omniintelligence-0.1.0/src/omniintelligence/tools/contract_linter.py +1765 -0
- omniintelligence-0.1.0/src/omniintelligence/tools/stubs/__init__.py +19 -0
- omniintelligence-0.1.0/src/omniintelligence/tools/stubs/contract_validator.py +367 -0
- omniintelligence-0.1.0/src/omniintelligence/utils/__init__.py +39 -0
- omniintelligence-0.1.0/src/omniintelligence/utils/db_url.py +53 -0
- omniintelligence-0.1.0/src/omniintelligence/utils/injection_safety.py +125 -0
- omniintelligence-0.1.0/src/omniintelligence/utils/log_sanitizer.py +492 -0
- omniintelligence-0.1.0/src/omniintelligence/utils/util_token_counter.py +43 -0
|
@@ -0,0 +1,197 @@
|
|
|
1
|
+
Metadata-Version: 2.4
|
|
2
|
+
Name: omniintelligence
|
|
3
|
+
Version: 0.1.0
|
|
4
|
+
Summary: Intelligence, indexing, and pattern services as first-class Omninode nodes
|
|
5
|
+
Author: OmniNode Team
|
|
6
|
+
Author-email: team@omninode.ai
|
|
7
|
+
Requires-Python: >=3.12,<4.0
|
|
8
|
+
Classifier: Programming Language :: Python :: 3
|
|
9
|
+
Classifier: Programming Language :: Python :: 3.12
|
|
10
|
+
Classifier: Programming Language :: Python :: 3.13
|
|
11
|
+
Classifier: Programming Language :: Python :: 3.14
|
|
12
|
+
Requires-Dist: confluent-kafka (>=2.6.0)
|
|
13
|
+
Requires-Dist: httpx (>=0.28.1)
|
|
14
|
+
Requires-Dist: pydantic (>=2.9.0)
|
|
15
|
+
Requires-Dist: pydantic-settings (>=2.6.0)
|
|
16
|
+
Requires-Dist: python-dotenv (>=1.0.0)
|
|
17
|
+
Requires-Dist: pyyaml (>=6.0)
|
|
18
|
+
Requires-Dist: tenacity (>=8.2.0)
|
|
19
|
+
Description-Content-Type: text/markdown
|
|
20
|
+
|
|
21
|
+
# OmniIntelligence
|
|
22
|
+
|
|
23
|
+
Intelligence, indexing, and pattern services as first-class Omninode nodes.
|
|
24
|
+
|
|
25
|
+
## Overview
|
|
26
|
+
|
|
27
|
+
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.
|
|
28
|
+
|
|
29
|
+
## Architecture
|
|
30
|
+
|
|
31
|
+
The system is decomposed into specialized ONEX nodes:
|
|
32
|
+
|
|
33
|
+
### Orchestrator Nodes
|
|
34
|
+
- **intelligence_orchestrator** - Coordinates ingestion, enrichment, vectorization, and persistence pipelines
|
|
35
|
+
|
|
36
|
+
### Reducer Nodes
|
|
37
|
+
- **ingestion_reducer** - Manages ingestion FSM, state transitions, and lease management
|
|
38
|
+
|
|
39
|
+
### Compute Nodes
|
|
40
|
+
- **vectorization_compute** - Encapsulates embedding generation, scoring, and fallback models
|
|
41
|
+
- **pattern_learning_compute** - Pattern enrichment and learning operations
|
|
42
|
+
|
|
43
|
+
### Effect Nodes
|
|
44
|
+
- **ingestion_effect** - Handles Kafka/Qdrant/PostgreSQL side effects
|
|
45
|
+
- **intelligence_api_effect** - Provides HTTP/Kafka façade for intelligence APIs
|
|
46
|
+
|
|
47
|
+
## Project Structure
|
|
48
|
+
|
|
49
|
+
```
|
|
50
|
+
omniintelligence/
|
|
51
|
+
├── src/
|
|
52
|
+
│ └── omniintelligence/
|
|
53
|
+
│ ├── nodes/ # ONEX nodes
|
|
54
|
+
│ │ ├── intelligence_orchestrator/
|
|
55
|
+
│ │ ├── ingestion_reducer/
|
|
56
|
+
│ │ ├── ingestion_effect/
|
|
57
|
+
│ │ ├── vectorization_compute/
|
|
58
|
+
│ │ ├── pattern_learning_compute/
|
|
59
|
+
│ │ └── intelligence_api_effect/
|
|
60
|
+
│ ├── adapters/ # External adapters (HTTP, etc.)
|
|
61
|
+
│ ├── shared/ # Shared models and utilities
|
|
62
|
+
│ └── utils/ # Common utilities
|
|
63
|
+
├── tests/
|
|
64
|
+
│ ├── unit/ # Unit tests
|
|
65
|
+
│ ├── integration/ # Integration tests
|
|
66
|
+
│ ├── fixtures/ # Test fixtures
|
|
67
|
+
│ └── contracts/ # Contract validation tests
|
|
68
|
+
├── scripts/ # Automation scripts
|
|
69
|
+
├── deployment/ # Deployment manifests
|
|
70
|
+
├── config/ # Configuration files
|
|
71
|
+
├── docs/ # Documentation
|
|
72
|
+
│ └── migrations/ # Migration guides
|
|
73
|
+
└── migration_sources/ # Legacy source reference
|
|
74
|
+
└── omniarchon/ # Original omniarchon codebase
|
|
75
|
+
```
|
|
76
|
+
|
|
77
|
+
## Setup
|
|
78
|
+
|
|
79
|
+
### Prerequisites
|
|
80
|
+
|
|
81
|
+
- Python 3.12+
|
|
82
|
+
- Poetry or uv for dependency management
|
|
83
|
+
- Docker for local infrastructure (Kafka, Qdrant, PostgreSQL, Memgraph)
|
|
84
|
+
|
|
85
|
+
### Installation
|
|
86
|
+
|
|
87
|
+
```bash
|
|
88
|
+
# Install core dependencies
|
|
89
|
+
uv sync --group core
|
|
90
|
+
|
|
91
|
+
# Install development dependencies
|
|
92
|
+
uv sync --group dev
|
|
93
|
+
|
|
94
|
+
# Install all dependencies (development + testing)
|
|
95
|
+
uv sync --group all
|
|
96
|
+
```
|
|
97
|
+
|
|
98
|
+
### ONEX Ecosystem Dependencies
|
|
99
|
+
|
|
100
|
+
The `omnibase-*` packages are **published to PyPI** and will be installed automatically:
|
|
101
|
+
|
|
102
|
+
- **omnibase-core** (>=0.8.0) - ONEX node base classes, error handling, validation
|
|
103
|
+
- **omnibase-spi** (>=0.5.0) - Service Provider Interface protocols
|
|
104
|
+
- **omnibase-infra** (>=0.2.1) - Infrastructure handlers (Kafka, Qdrant, PostgreSQL)
|
|
105
|
+
|
|
106
|
+
**What omnibase-infra provides**:
|
|
107
|
+
- `QdrantVectorHandler` - Vector database operations
|
|
108
|
+
- `KafkaEventBus` - Event bus implementation
|
|
109
|
+
- `BaseRuntimeHostProcess` - Process lifecycle management
|
|
110
|
+
- Handler implementations for PostgreSQL, Memgraph, etc.
|
|
111
|
+
|
|
112
|
+
**For local development with unpublished versions** (optional):
|
|
113
|
+
|
|
114
|
+
```bash
|
|
115
|
+
# Install a local checkout for development
|
|
116
|
+
uv pip install -e /path/to/your/omnibase_infra
|
|
117
|
+
|
|
118
|
+
# Or for Poetry users, update pyproject.toml:
|
|
119
|
+
# omnibase-infra = {path = "../omnibase_infra", develop = true}
|
|
120
|
+
```
|
|
121
|
+
|
|
122
|
+
### Running Tests
|
|
123
|
+
|
|
124
|
+
```bash
|
|
125
|
+
# Run unit tests
|
|
126
|
+
pytest tests/unit
|
|
127
|
+
|
|
128
|
+
# Run integration tests (requires infrastructure)
|
|
129
|
+
pytest tests/integration
|
|
130
|
+
|
|
131
|
+
# Run all tests
|
|
132
|
+
pytest
|
|
133
|
+
|
|
134
|
+
# Run with coverage
|
|
135
|
+
pytest --cov=src/omniintelligence --cov-report=html
|
|
136
|
+
```
|
|
137
|
+
|
|
138
|
+
## Development
|
|
139
|
+
|
|
140
|
+
### Node Development Pattern
|
|
141
|
+
|
|
142
|
+
Each node follows the canonical ONEX structure:
|
|
143
|
+
|
|
144
|
+
```
|
|
145
|
+
node_name/
|
|
146
|
+
├── v1_0_0/ # Versioned implementation
|
|
147
|
+
│ ├── contracts/ # YAML contract definitions
|
|
148
|
+
│ ├── models/ # Pydantic models
|
|
149
|
+
│ ├── node.py # Main node implementation
|
|
150
|
+
│ ├── introspection.py # Introspection support
|
|
151
|
+
│ ├── scenarios/ # Integration test scenarios
|
|
152
|
+
│ └── node_tests/ # Node-specific tests
|
|
153
|
+
└── __init__.py
|
|
154
|
+
```
|
|
155
|
+
|
|
156
|
+
### Code Quality
|
|
157
|
+
|
|
158
|
+
```bash
|
|
159
|
+
# Format code
|
|
160
|
+
black src tests
|
|
161
|
+
isort src tests
|
|
162
|
+
|
|
163
|
+
# Lint
|
|
164
|
+
ruff check src tests
|
|
165
|
+
|
|
166
|
+
# Type check
|
|
167
|
+
mypy src
|
|
168
|
+
```
|
|
169
|
+
|
|
170
|
+
## Migration from OmniArchon
|
|
171
|
+
|
|
172
|
+
This project is a migration from the legacy `omniarchon` system. See:
|
|
173
|
+
- [Migration Guide](docs/migrations/omniarchon_to_omniintelligence.md)
|
|
174
|
+
- [Legacy Sources](migration_sources/omniarchon/)
|
|
175
|
+
|
|
176
|
+
## Documentation
|
|
177
|
+
|
|
178
|
+
- [Architecture Overview](docs/migrations/omniarchon_to_omniintelligence.md#4-service-decomposition)
|
|
179
|
+
- [Node Stack Blueprint](docs/migrations/omniarchon_to_omniintelligence.md#5-node-stack-blueprint)
|
|
180
|
+
- [Migration Steps](docs/migrations/omniarchon_to_omniintelligence.md#6-migration-steps)
|
|
181
|
+
- [Testing Strategy](docs/migrations/omniarchon_to_omniintelligence.md#7-testing--validation)
|
|
182
|
+
|
|
183
|
+
## Migration Freeze
|
|
184
|
+
|
|
185
|
+
A schema freeze is currently active for this repository as part of the DB-per-repo refactor ([OMN-2055](https://linear.app/omninode/issue/OMN-2055)). While `.migration_freeze` exists at the repo root, **no new migrations may be added** to `deployment/database/migrations/`.
|
|
186
|
+
|
|
187
|
+
**Allowed during freeze:**
|
|
188
|
+
- Migration moves (reorg between repos)
|
|
189
|
+
- Ownership fixes (table transfers)
|
|
190
|
+
- Rollback bug fixes (DB-SPLIT-01 refactor phase)
|
|
191
|
+
|
|
192
|
+
**To lift the freeze:** remove `.migration_freeze` once DB boundary work for omniintelligence is complete.
|
|
193
|
+
|
|
194
|
+
## License
|
|
195
|
+
|
|
196
|
+
Copyright © 2024 OmniNode Team
|
|
197
|
+
|
|
@@ -0,0 +1,176 @@
|
|
|
1
|
+
# OmniIntelligence
|
|
2
|
+
|
|
3
|
+
Intelligence, indexing, and pattern services as first-class Omninode nodes.
|
|
4
|
+
|
|
5
|
+
## Overview
|
|
6
|
+
|
|
7
|
+
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.
|
|
8
|
+
|
|
9
|
+
## Architecture
|
|
10
|
+
|
|
11
|
+
The system is decomposed into specialized ONEX nodes:
|
|
12
|
+
|
|
13
|
+
### Orchestrator Nodes
|
|
14
|
+
- **intelligence_orchestrator** - Coordinates ingestion, enrichment, vectorization, and persistence pipelines
|
|
15
|
+
|
|
16
|
+
### Reducer Nodes
|
|
17
|
+
- **ingestion_reducer** - Manages ingestion FSM, state transitions, and lease management
|
|
18
|
+
|
|
19
|
+
### Compute Nodes
|
|
20
|
+
- **vectorization_compute** - Encapsulates embedding generation, scoring, and fallback models
|
|
21
|
+
- **pattern_learning_compute** - Pattern enrichment and learning operations
|
|
22
|
+
|
|
23
|
+
### Effect Nodes
|
|
24
|
+
- **ingestion_effect** - Handles Kafka/Qdrant/PostgreSQL side effects
|
|
25
|
+
- **intelligence_api_effect** - Provides HTTP/Kafka façade for intelligence APIs
|
|
26
|
+
|
|
27
|
+
## Project Structure
|
|
28
|
+
|
|
29
|
+
```
|
|
30
|
+
omniintelligence/
|
|
31
|
+
├── src/
|
|
32
|
+
│ └── omniintelligence/
|
|
33
|
+
│ ├── nodes/ # ONEX nodes
|
|
34
|
+
│ │ ├── intelligence_orchestrator/
|
|
35
|
+
│ │ ├── ingestion_reducer/
|
|
36
|
+
│ │ ├── ingestion_effect/
|
|
37
|
+
│ │ ├── vectorization_compute/
|
|
38
|
+
│ │ ├── pattern_learning_compute/
|
|
39
|
+
│ │ └── intelligence_api_effect/
|
|
40
|
+
│ ├── adapters/ # External adapters (HTTP, etc.)
|
|
41
|
+
│ ├── shared/ # Shared models and utilities
|
|
42
|
+
│ └── utils/ # Common utilities
|
|
43
|
+
├── tests/
|
|
44
|
+
│ ├── unit/ # Unit tests
|
|
45
|
+
│ ├── integration/ # Integration tests
|
|
46
|
+
│ ├── fixtures/ # Test fixtures
|
|
47
|
+
│ └── contracts/ # Contract validation tests
|
|
48
|
+
├── scripts/ # Automation scripts
|
|
49
|
+
├── deployment/ # Deployment manifests
|
|
50
|
+
├── config/ # Configuration files
|
|
51
|
+
├── docs/ # Documentation
|
|
52
|
+
│ └── migrations/ # Migration guides
|
|
53
|
+
└── migration_sources/ # Legacy source reference
|
|
54
|
+
└── omniarchon/ # Original omniarchon codebase
|
|
55
|
+
```
|
|
56
|
+
|
|
57
|
+
## Setup
|
|
58
|
+
|
|
59
|
+
### Prerequisites
|
|
60
|
+
|
|
61
|
+
- Python 3.12+
|
|
62
|
+
- Poetry or uv for dependency management
|
|
63
|
+
- Docker for local infrastructure (Kafka, Qdrant, PostgreSQL, Memgraph)
|
|
64
|
+
|
|
65
|
+
### Installation
|
|
66
|
+
|
|
67
|
+
```bash
|
|
68
|
+
# Install core dependencies
|
|
69
|
+
uv sync --group core
|
|
70
|
+
|
|
71
|
+
# Install development dependencies
|
|
72
|
+
uv sync --group dev
|
|
73
|
+
|
|
74
|
+
# Install all dependencies (development + testing)
|
|
75
|
+
uv sync --group all
|
|
76
|
+
```
|
|
77
|
+
|
|
78
|
+
### ONEX Ecosystem Dependencies
|
|
79
|
+
|
|
80
|
+
The `omnibase-*` packages are **published to PyPI** and will be installed automatically:
|
|
81
|
+
|
|
82
|
+
- **omnibase-core** (>=0.8.0) - ONEX node base classes, error handling, validation
|
|
83
|
+
- **omnibase-spi** (>=0.5.0) - Service Provider Interface protocols
|
|
84
|
+
- **omnibase-infra** (>=0.2.1) - Infrastructure handlers (Kafka, Qdrant, PostgreSQL)
|
|
85
|
+
|
|
86
|
+
**What omnibase-infra provides**:
|
|
87
|
+
- `QdrantVectorHandler` - Vector database operations
|
|
88
|
+
- `KafkaEventBus` - Event bus implementation
|
|
89
|
+
- `BaseRuntimeHostProcess` - Process lifecycle management
|
|
90
|
+
- Handler implementations for PostgreSQL, Memgraph, etc.
|
|
91
|
+
|
|
92
|
+
**For local development with unpublished versions** (optional):
|
|
93
|
+
|
|
94
|
+
```bash
|
|
95
|
+
# Install a local checkout for development
|
|
96
|
+
uv pip install -e /path/to/your/omnibase_infra
|
|
97
|
+
|
|
98
|
+
# Or for Poetry users, update pyproject.toml:
|
|
99
|
+
# omnibase-infra = {path = "../omnibase_infra", develop = true}
|
|
100
|
+
```
|
|
101
|
+
|
|
102
|
+
### Running Tests
|
|
103
|
+
|
|
104
|
+
```bash
|
|
105
|
+
# Run unit tests
|
|
106
|
+
pytest tests/unit
|
|
107
|
+
|
|
108
|
+
# Run integration tests (requires infrastructure)
|
|
109
|
+
pytest tests/integration
|
|
110
|
+
|
|
111
|
+
# Run all tests
|
|
112
|
+
pytest
|
|
113
|
+
|
|
114
|
+
# Run with coverage
|
|
115
|
+
pytest --cov=src/omniintelligence --cov-report=html
|
|
116
|
+
```
|
|
117
|
+
|
|
118
|
+
## Development
|
|
119
|
+
|
|
120
|
+
### Node Development Pattern
|
|
121
|
+
|
|
122
|
+
Each node follows the canonical ONEX structure:
|
|
123
|
+
|
|
124
|
+
```
|
|
125
|
+
node_name/
|
|
126
|
+
├── v1_0_0/ # Versioned implementation
|
|
127
|
+
│ ├── contracts/ # YAML contract definitions
|
|
128
|
+
│ ├── models/ # Pydantic models
|
|
129
|
+
│ ├── node.py # Main node implementation
|
|
130
|
+
│ ├── introspection.py # Introspection support
|
|
131
|
+
│ ├── scenarios/ # Integration test scenarios
|
|
132
|
+
│ └── node_tests/ # Node-specific tests
|
|
133
|
+
└── __init__.py
|
|
134
|
+
```
|
|
135
|
+
|
|
136
|
+
### Code Quality
|
|
137
|
+
|
|
138
|
+
```bash
|
|
139
|
+
# Format code
|
|
140
|
+
black src tests
|
|
141
|
+
isort src tests
|
|
142
|
+
|
|
143
|
+
# Lint
|
|
144
|
+
ruff check src tests
|
|
145
|
+
|
|
146
|
+
# Type check
|
|
147
|
+
mypy src
|
|
148
|
+
```
|
|
149
|
+
|
|
150
|
+
## Migration from OmniArchon
|
|
151
|
+
|
|
152
|
+
This project is a migration from the legacy `omniarchon` system. See:
|
|
153
|
+
- [Migration Guide](docs/migrations/omniarchon_to_omniintelligence.md)
|
|
154
|
+
- [Legacy Sources](migration_sources/omniarchon/)
|
|
155
|
+
|
|
156
|
+
## Documentation
|
|
157
|
+
|
|
158
|
+
- [Architecture Overview](docs/migrations/omniarchon_to_omniintelligence.md#4-service-decomposition)
|
|
159
|
+
- [Node Stack Blueprint](docs/migrations/omniarchon_to_omniintelligence.md#5-node-stack-blueprint)
|
|
160
|
+
- [Migration Steps](docs/migrations/omniarchon_to_omniintelligence.md#6-migration-steps)
|
|
161
|
+
- [Testing Strategy](docs/migrations/omniarchon_to_omniintelligence.md#7-testing--validation)
|
|
162
|
+
|
|
163
|
+
## Migration Freeze
|
|
164
|
+
|
|
165
|
+
A schema freeze is currently active for this repository as part of the DB-per-repo refactor ([OMN-2055](https://linear.app/omninode/issue/OMN-2055)). While `.migration_freeze` exists at the repo root, **no new migrations may be added** to `deployment/database/migrations/`.
|
|
166
|
+
|
|
167
|
+
**Allowed during freeze:**
|
|
168
|
+
- Migration moves (reorg between repos)
|
|
169
|
+
- Ownership fixes (table transfers)
|
|
170
|
+
- Rollback bug fixes (DB-SPLIT-01 refactor phase)
|
|
171
|
+
|
|
172
|
+
**To lift the freeze:** remove `.migration_freeze` once DB boundary work for omniintelligence is complete.
|
|
173
|
+
|
|
174
|
+
## License
|
|
175
|
+
|
|
176
|
+
Copyright © 2024 OmniNode Team
|
|
@@ -0,0 +1,281 @@
|
|
|
1
|
+
[build-system]
|
|
2
|
+
requires = ["poetry-core"]
|
|
3
|
+
build-backend = "poetry.core.masonry.api"
|
|
4
|
+
|
|
5
|
+
# =============================================================================
|
|
6
|
+
# DEPENDENCY MANAGEMENT NOTES
|
|
7
|
+
# =============================================================================
|
|
8
|
+
# This project supports both Poetry and uv/PEP 621 dependency management.
|
|
9
|
+
#
|
|
10
|
+
# EDITABLE INSTALLS & uv.lock:
|
|
11
|
+
# Editable installs (pip install -e .) bypass uv.lock resolution.
|
|
12
|
+
# To verify reproducibility after editable install changes:
|
|
13
|
+
# 1. Remove uv.lock: rm uv.lock
|
|
14
|
+
# 2. Regenerate: uv lock
|
|
15
|
+
# 3. Verify sync: uv sync --group dev
|
|
16
|
+
# =============================================================================
|
|
17
|
+
|
|
18
|
+
[tool.poetry]
|
|
19
|
+
# Metadata defined in [project] section below (PEP 621 standard)
|
|
20
|
+
# Only Poetry-specific settings (like packages) go here
|
|
21
|
+
packages = [{include = "omniintelligence", from = "src"}]
|
|
22
|
+
|
|
23
|
+
[tool.poetry.dependencies]
|
|
24
|
+
python = ">=3.12,<4.0"
|
|
25
|
+
# Versions aligned with [project.dependencies] for consistency
|
|
26
|
+
pydantic = ">=2.9.0"
|
|
27
|
+
pydantic-settings = ">=2.6.0"
|
|
28
|
+
httpx = ">=0.28.1"
|
|
29
|
+
tenacity = ">=8.2.0"
|
|
30
|
+
confluent-kafka = ">=2.6.0"
|
|
31
|
+
pyyaml = ">=6.0"
|
|
32
|
+
python-dotenv = ">=1.0.0"
|
|
33
|
+
|
|
34
|
+
[tool.poetry.group.dev.dependencies]
|
|
35
|
+
# Versions aligned with [dependency-groups].dev for consistency
|
|
36
|
+
pytest = ">=8.0.0"
|
|
37
|
+
pytest-asyncio = ">=0.24.0"
|
|
38
|
+
pytest-cov = ">=6.2.1"
|
|
39
|
+
pytest-mock = ">=3.12.0"
|
|
40
|
+
pytest-timeout = ">=2.3.0"
|
|
41
|
+
pytest-xdist = ">=3.5.0"
|
|
42
|
+
ruff = ">=0.12.5"
|
|
43
|
+
mypy = ">=1.17.0"
|
|
44
|
+
types-PyYAML = ">=6.0.0"
|
|
45
|
+
requests = ">=2.31.0"
|
|
46
|
+
factory-boy = ">=3.3.0"
|
|
47
|
+
pre-commit = ">=4.5.0"
|
|
48
|
+
|
|
49
|
+
[tool.poetry.group.core.dependencies]
|
|
50
|
+
# ONEX private ecosystem dependencies (NOT on public PyPI)
|
|
51
|
+
# Installed via editable installs from sibling repos or private registry.
|
|
52
|
+
# Version constraints use caret syntax: ^0.9.10 = >=0.9.10,<0.10.0
|
|
53
|
+
omnibase-core = "^0.16.0"
|
|
54
|
+
omnibase-spi = "^0.7.0"
|
|
55
|
+
omnibase-infra = "^0.6.0"
|
|
56
|
+
# Core runtime dependencies (also in base [tool.poetry.dependencies] for minimal installs)
|
|
57
|
+
# Included here for self-contained --only core installs
|
|
58
|
+
pydantic = ">=2.9.0"
|
|
59
|
+
pydantic-settings = ">=2.6.0"
|
|
60
|
+
httpx = ">=0.28.1"
|
|
61
|
+
pyyaml = ">=6.0"
|
|
62
|
+
python-dotenv = ">=1.0.0"
|
|
63
|
+
tenacity = ">=8.2.0"
|
|
64
|
+
confluent-kafka = ">=2.6.0"
|
|
65
|
+
# Web framework for API endpoints
|
|
66
|
+
fastapi = ">=0.104.0"
|
|
67
|
+
uvicorn = ">=0.24.0"
|
|
68
|
+
python-multipart = ">=0.0.20"
|
|
69
|
+
# Event bus (Kafka/Redpanda)
|
|
70
|
+
aiokafka = ">=0.10.0"
|
|
71
|
+
# Vector database
|
|
72
|
+
qdrant-client = ">=1.15.1"
|
|
73
|
+
# Graph database
|
|
74
|
+
neo4j = ">=5.28.2"
|
|
75
|
+
# PostgreSQL
|
|
76
|
+
asyncpg = ">=0.29.0"
|
|
77
|
+
# Document processing
|
|
78
|
+
pypdf2 = ">=3.0.1"
|
|
79
|
+
pdfplumber = ">=0.11.6"
|
|
80
|
+
python-docx = ">=1.1.2"
|
|
81
|
+
markdown = ">=3.8"
|
|
82
|
+
# AI/ML
|
|
83
|
+
openai = ">=1.71.0"
|
|
84
|
+
sentence-transformers = ">=4.1.0"
|
|
85
|
+
torch = ">=2.0.0"
|
|
86
|
+
transformers = ">=4.30.0"
|
|
87
|
+
tiktoken = ">=0.5.0"
|
|
88
|
+
# Utilities
|
|
89
|
+
cachetools = ">=5.3.0"
|
|
90
|
+
redis = {extras = ["hiredis"], version = ">=5.0.0"}
|
|
91
|
+
# Logging and monitoring
|
|
92
|
+
logfire = ">=0.30.0"
|
|
93
|
+
structlog = ">=23.1.0"
|
|
94
|
+
prometheus-client = ">=0.19.0"
|
|
95
|
+
psutil = ">=5.9.0"
|
|
96
|
+
|
|
97
|
+
[tool.poetry.plugins."onex.domain_plugins"]
|
|
98
|
+
intelligence = "omniintelligence.runtime.plugin:PluginIntelligence"
|
|
99
|
+
|
|
100
|
+
[project]
|
|
101
|
+
name = "omniintelligence"
|
|
102
|
+
version = "0.1.0"
|
|
103
|
+
description = "Intelligence, indexing, and pattern services as first-class Omninode nodes"
|
|
104
|
+
authors = [{name = "OmniNode Team", email = "team@omninode.ai"}]
|
|
105
|
+
readme = "README.md"
|
|
106
|
+
requires-python = ">=3.12,<4.0"
|
|
107
|
+
# Versions aligned with [tool.poetry.dependencies] for consistency
|
|
108
|
+
dependencies = [
|
|
109
|
+
"httpx>=0.28.1",
|
|
110
|
+
"pyyaml>=6.0",
|
|
111
|
+
"pydantic>=2.9.0",
|
|
112
|
+
"pydantic-settings>=2.6.0",
|
|
113
|
+
"python-dotenv>=1.0.0",
|
|
114
|
+
"confluent-kafka>=2.6.0",
|
|
115
|
+
"tenacity>=8.2.0",
|
|
116
|
+
]
|
|
117
|
+
|
|
118
|
+
[project.entry-points."onex.domain_plugins"]
|
|
119
|
+
intelligence = "omniintelligence.runtime.plugin:PluginIntelligence"
|
|
120
|
+
|
|
121
|
+
[dependency-groups]
|
|
122
|
+
# Development dependencies for linting and testing
|
|
123
|
+
# Versions aligned with [tool.poetry.group.dev.dependencies] for consistency
|
|
124
|
+
dev = [
|
|
125
|
+
"mypy>=1.17.0",
|
|
126
|
+
"types-PyYAML>=6.0.0",
|
|
127
|
+
"pytest>=8.0.0",
|
|
128
|
+
"pytest-asyncio>=0.24.0",
|
|
129
|
+
"pytest-mock>=3.12.0",
|
|
130
|
+
"pytest-timeout>=2.3.0",
|
|
131
|
+
"pytest-cov>=6.2.1",
|
|
132
|
+
"pytest-xdist>=3.5.0",
|
|
133
|
+
"ruff>=0.12.5",
|
|
134
|
+
"requests>=2.31.0",
|
|
135
|
+
"factory-boy>=3.3.0",
|
|
136
|
+
"pre-commit>=4.5.0",
|
|
137
|
+
]
|
|
138
|
+
|
|
139
|
+
# Core node system dependencies
|
|
140
|
+
# Version constraints aligned with [tool.poetry.group.core.dependencies] caret syntax:
|
|
141
|
+
# ^0.16.0 = >=0.16.0,<0.17.0 (compatible releases within 0.16.x)
|
|
142
|
+
# ^0.7.0 = >=0.7.0,<0.8.0 (compatible releases within 0.7.x)
|
|
143
|
+
# ^0.6.0 = >=0.6.0,<0.7.0 (compatible releases within 0.6.x)
|
|
144
|
+
core = [
|
|
145
|
+
# ONEX private ecosystem dependencies (NOT on public PyPI)
|
|
146
|
+
# Installed via editable installs from sibling repos or private registry.
|
|
147
|
+
# Version bounds match Poetry caret syntax above.
|
|
148
|
+
"omnibase-core>=0.16.0,<0.17.0",
|
|
149
|
+
"omnibase-spi>=0.7.0,<0.8.0",
|
|
150
|
+
"omnibase-infra>=0.6.0,<0.7.0",
|
|
151
|
+
# Web framework for API endpoints
|
|
152
|
+
"fastapi>=0.104.0",
|
|
153
|
+
"uvicorn>=0.24.0",
|
|
154
|
+
"python-multipart>=0.0.20",
|
|
155
|
+
# Event bus (Kafka/Redpanda)
|
|
156
|
+
"aiokafka>=0.10.0",
|
|
157
|
+
"confluent-kafka>=2.6.0",
|
|
158
|
+
# Vector database
|
|
159
|
+
"qdrant-client>=1.15.1",
|
|
160
|
+
# Graph database
|
|
161
|
+
"neo4j>=5.28.2",
|
|
162
|
+
# PostgreSQL
|
|
163
|
+
"asyncpg>=0.29.0",
|
|
164
|
+
# Document processing
|
|
165
|
+
"pypdf2>=3.0.1",
|
|
166
|
+
"pdfplumber>=0.11.6",
|
|
167
|
+
"python-docx>=1.1.2",
|
|
168
|
+
"markdown>=3.8",
|
|
169
|
+
# AI/ML
|
|
170
|
+
"openai>=1.71.0",
|
|
171
|
+
"sentence-transformers>=4.1.0",
|
|
172
|
+
"torch>=2.0.0",
|
|
173
|
+
"transformers>=4.30.0",
|
|
174
|
+
"tiktoken>=0.5.0",
|
|
175
|
+
# Utilities
|
|
176
|
+
"tenacity>=8.2.0",
|
|
177
|
+
"cachetools>=5.3.0",
|
|
178
|
+
"redis[hiredis]>=5.0.0",
|
|
179
|
+
# Logging and monitoring
|
|
180
|
+
"logfire>=0.30.0",
|
|
181
|
+
"structlog>=23.1.0",
|
|
182
|
+
"prometheus-client>=0.19.0",
|
|
183
|
+
"psutil>=5.9.0",
|
|
184
|
+
]
|
|
185
|
+
|
|
186
|
+
# All dependencies for development and testing
|
|
187
|
+
# Uses include-group (PEP 735) to compose from core and dev groups
|
|
188
|
+
# This eliminates duplication and prevents version drift between groups
|
|
189
|
+
all = [
|
|
190
|
+
{include-group = "core"},
|
|
191
|
+
{include-group = "dev"},
|
|
192
|
+
]
|
|
193
|
+
|
|
194
|
+
[tool.ruff]
|
|
195
|
+
line-length = 88
|
|
196
|
+
target-version = "py312"
|
|
197
|
+
|
|
198
|
+
[tool.ruff.lint]
|
|
199
|
+
select = [
|
|
200
|
+
"E", # pycodestyle errors
|
|
201
|
+
"F", # pyflakes
|
|
202
|
+
"I", # isort (import sorting)
|
|
203
|
+
"W", # pycodestyle warnings
|
|
204
|
+
"N", # pep8-naming
|
|
205
|
+
"UP", # pyupgrade
|
|
206
|
+
"B", # flake8-bugbear
|
|
207
|
+
"C4", # flake8-comprehensions
|
|
208
|
+
"SIM", # flake8-simplify
|
|
209
|
+
"ARG", # flake8-unused-arguments
|
|
210
|
+
"RUF", # Ruff-specific rules
|
|
211
|
+
]
|
|
212
|
+
ignore = [
|
|
213
|
+
"S101", # Allow assert statements in tests
|
|
214
|
+
"E501", # Allow line length violations (line length handled by ruff format)
|
|
215
|
+
"E402", # Allow imports not at top (tests need sys.path setup, legacy emits warnings)
|
|
216
|
+
"B904", # Allow raise without from in exception handlers
|
|
217
|
+
"B019", # Allow lru_cache on methods (used carefully for singleton patterns)
|
|
218
|
+
"B007", # Allow unused loop control variables
|
|
219
|
+
"N812", # Allow lowercase imported as non-lowercase
|
|
220
|
+
"N815", # Allow mixedCase variables
|
|
221
|
+
"N806", # Allow non-lowercase variable in function
|
|
222
|
+
"N805", # Allow cls as first argument
|
|
223
|
+
"UP007", # Allow Union syntax
|
|
224
|
+
"UP042", # Allow (str, Enum) inheritance (20 existing classes, migrate to StrEnum later)
|
|
225
|
+
"SIM117", # Allow nested with statements
|
|
226
|
+
"SIM102", # Allow nested if statements (sometimes clearer than combining)
|
|
227
|
+
"SIM103", # Allow explicit if/else returns (sometimes clearer)
|
|
228
|
+
"B008", # Allow function call defaults
|
|
229
|
+
"F841", # Allow unused variables
|
|
230
|
+
"ARG002", # Allow unused method arguments (common in test fixtures)
|
|
231
|
+
"RUF012", # Allow mutable class attributes
|
|
232
|
+
"RUF022", # Allow unsorted __all__ (manual ordering preferred for readability)
|
|
233
|
+
"RUF043", # Allow unescaped regex patterns in pytest.raises match (intentional regex)
|
|
234
|
+
"RUF059", # Allow unused unpacked variables (common in tests for tuple unpacking)
|
|
235
|
+
]
|
|
236
|
+
|
|
237
|
+
[tool.ruff.lint.per-file-ignores]
|
|
238
|
+
# AST visitor methods must use PascalCase (visit_Import, visit_Call, etc.)
|
|
239
|
+
"src/omniintelligence/audit/io_audit.py" = ["N802"]
|
|
240
|
+
"tests/unit/test_node_purity.py" = ["N802"]
|
|
241
|
+
# BaseHTTPRequestHandler requires do_GET method name
|
|
242
|
+
"src/omniintelligence/runtime/stub_launcher.py" = ["N802"]
|
|
243
|
+
# __init__.py files re-export for public API
|
|
244
|
+
"src/omniintelligence/tools/__init__.py" = ["F401"]
|
|
245
|
+
# Test intentionally catches broad exceptions for validation error testing
|
|
246
|
+
"tests/nodes/pattern_extraction_compute/test_handlers.py" = ["B017"]
|
|
247
|
+
|
|
248
|
+
[tool.ruff.format]
|
|
249
|
+
quote-style = "double"
|
|
250
|
+
indent-style = "space"
|
|
251
|
+
skip-magic-trailing-comma = false
|
|
252
|
+
line-ending = "auto"
|
|
253
|
+
|
|
254
|
+
[tool.mypy]
|
|
255
|
+
python_version = "3.12"
|
|
256
|
+
warn_return_any = true
|
|
257
|
+
warn_unused_configs = true
|
|
258
|
+
disallow_untyped_defs = false
|
|
259
|
+
disallow_any_unimported = false
|
|
260
|
+
no_implicit_optional = true
|
|
261
|
+
warn_redundant_casts = true
|
|
262
|
+
warn_unused_ignores = true
|
|
263
|
+
warn_no_return = true
|
|
264
|
+
check_untyped_defs = true
|
|
265
|
+
ignore_missing_imports = true
|
|
266
|
+
|
|
267
|
+
[tool.pytest.ini_options]
|
|
268
|
+
minversion = "8.0"
|
|
269
|
+
testpaths = ["tests", "src/omniintelligence/nodes"]
|
|
270
|
+
python_files = ["test_*.py", "*_test.py"]
|
|
271
|
+
python_classes = ["Test*"]
|
|
272
|
+
python_functions = ["test_*"]
|
|
273
|
+
asyncio_mode = "auto"
|
|
274
|
+
addopts = "-v --tb=short"
|
|
275
|
+
markers = [
|
|
276
|
+
"slow: marks tests as slow (deselect with '-m \"not slow\"')",
|
|
277
|
+
"integration: marks tests as integration tests",
|
|
278
|
+
"performance: marks tests as performance benchmarks",
|
|
279
|
+
"unit: marks tests as unit tests",
|
|
280
|
+
"audit: marks tests as I/O audit enforcement tests",
|
|
281
|
+
]
|
|
@@ -0,0 +1,43 @@
|
|
|
1
|
+
"""OmniIntelligence - ONEX-compliant intelligence nodes.
|
|
2
|
+
|
|
3
|
+
This package provides code quality analysis and intelligence operations
|
|
4
|
+
as first-class ONEX nodes.
|
|
5
|
+
|
|
6
|
+
Quick Start - Quality Scoring:
|
|
7
|
+
>>> from omniintelligence import score_code_quality, OnexStrictnessLevel
|
|
8
|
+
>>> result = score_code_quality(
|
|
9
|
+
... content="class Model(BaseModel): x: int",
|
|
10
|
+
... language="python",
|
|
11
|
+
... preset=OnexStrictnessLevel.STRICT,
|
|
12
|
+
... )
|
|
13
|
+
>>> result["success"]
|
|
14
|
+
True
|
|
15
|
+
>>> result["quality_score"] # 0.0 to 1.0
|
|
16
|
+
0.65
|
|
17
|
+
"""
|
|
18
|
+
|
|
19
|
+
from omniintelligence.nodes.node_quality_scoring_compute.handlers import (
|
|
20
|
+
DEFAULT_WEIGHTS,
|
|
21
|
+
DimensionScores,
|
|
22
|
+
OnexStrictnessLevel,
|
|
23
|
+
QualityScoringComputeError,
|
|
24
|
+
QualityScoringResult,
|
|
25
|
+
QualityScoringValidationError,
|
|
26
|
+
score_code_quality,
|
|
27
|
+
)
|
|
28
|
+
|
|
29
|
+
__version__ = "0.1.0"
|
|
30
|
+
|
|
31
|
+
__all__ = [
|
|
32
|
+
# Configuration
|
|
33
|
+
"DEFAULT_WEIGHTS",
|
|
34
|
+
"DimensionScores",
|
|
35
|
+
"OnexStrictnessLevel",
|
|
36
|
+
"QualityScoringComputeError",
|
|
37
|
+
# Types
|
|
38
|
+
"QualityScoringResult",
|
|
39
|
+
# Exceptions
|
|
40
|
+
"QualityScoringValidationError",
|
|
41
|
+
# Main API
|
|
42
|
+
"score_code_quality",
|
|
43
|
+
]
|