iris-vector-graph 1.63.4__tar.gz → 1.63.6__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.
- {iris_vector_graph-1.63.4 → iris_vector_graph-1.63.6}/PKG-INFO +5 -1
- {iris_vector_graph-1.63.4 → iris_vector_graph-1.63.6}/README.md +4 -0
- {iris_vector_graph-1.63.4 → iris_vector_graph-1.63.6}/iris_src/src/Graph/KG/NKGAccel.cls +99 -14
- {iris_vector_graph-1.63.4 → iris_vector_graph-1.63.6}/iris_vector_graph/engine.py +16 -7
- {iris_vector_graph-1.63.4 → iris_vector_graph-1.63.6}/iris_vector_graph/status.py +19 -0
- {iris_vector_graph-1.63.4 → iris_vector_graph-1.63.6}/pyproject.toml +1 -1
- {iris_vector_graph-1.63.4 → iris_vector_graph-1.63.6}/.gitignore +0 -0
- {iris_vector_graph-1.63.4 → iris_vector_graph-1.63.6}/LICENSE +0 -0
- {iris_vector_graph-1.63.4 → iris_vector_graph-1.63.6}/examples/demo_biomedical.py +0 -0
- {iris_vector_graph-1.63.4 → iris_vector_graph-1.63.6}/examples/demo_fraud_detection.py +0 -0
- {iris_vector_graph-1.63.4 → iris_vector_graph-1.63.6}/examples/demo_fraud_detection_sql.py +0 -0
- {iris_vector_graph-1.63.4 → iris_vector_graph-1.63.6}/examples/demo_utils.py +0 -0
- {iris_vector_graph-1.63.4 → iris_vector_graph-1.63.6}/examples/demo_working_system.py +0 -0
- {iris_vector_graph-1.63.4 → iris_vector_graph-1.63.6}/examples/domains/__init__.py +0 -0
- {iris_vector_graph-1.63.4 → iris_vector_graph-1.63.6}/examples/domains/biomedical/__init__.py +0 -0
- {iris_vector_graph-1.63.4 → iris_vector_graph-1.63.6}/examples/domains/biomedical/loaders.py +0 -0
- {iris_vector_graph-1.63.4 → iris_vector_graph-1.63.6}/examples/domains/biomedical/resolver.py +0 -0
- {iris_vector_graph-1.63.4 → iris_vector_graph-1.63.6}/examples/domains/biomedical/types.py +0 -0
- {iris_vector_graph-1.63.4 → iris_vector_graph-1.63.6}/examples/domains/biomedical_legacy/__init__.py +0 -0
- {iris_vector_graph-1.63.4 → iris_vector_graph-1.63.6}/examples/domains/biomedical_legacy/biomedical_engine.py +0 -0
- {iris_vector_graph-1.63.4 → iris_vector_graph-1.63.6}/examples/domains/biomedical_legacy/biomedical_schema.py +0 -0
- {iris_vector_graph-1.63.4 → iris_vector_graph-1.63.6}/examples/domains/biomedical_legacy/legacy_wrapper.py +0 -0
- {iris_vector_graph-1.63.4 → iris_vector_graph-1.63.6}/examples/domains/fraud/__init__.py +0 -0
- {iris_vector_graph-1.63.4 → iris_vector_graph-1.63.6}/examples/domains/fraud/loaders.py +0 -0
- {iris_vector_graph-1.63.4 → iris_vector_graph-1.63.6}/examples/domains/fraud/resolver.py +0 -0
- {iris_vector_graph-1.63.4 → iris_vector_graph-1.63.6}/examples/domains/fraud/types.py +0 -0
- {iris_vector_graph-1.63.4 → iris_vector_graph-1.63.6}/examples/graphQL.http +0 -0
- {iris_vector_graph-1.63.4 → iris_vector_graph-1.63.6}/examples/hybrid_vector_graph_query.cypher +0 -0
- {iris_vector_graph-1.63.4 → iris_vector_graph-1.63.6}/examples/rest.http +0 -0
- {iris_vector_graph-1.63.4 → iris_vector_graph-1.63.6}/iris_src/src/Graph/KG/Algorithms.cls +0 -0
- {iris_vector_graph-1.63.4 → iris_vector_graph-1.63.6}/iris_src/src/Graph/KG/ArnoAccel.cls +0 -0
- {iris_vector_graph-1.63.4 → iris_vector_graph-1.63.6}/iris_src/src/Graph/KG/BM25Index.cls +0 -0
- {iris_vector_graph-1.63.4 → iris_vector_graph-1.63.6}/iris_src/src/Graph/KG/BenchFormat.cls +0 -0
- {iris_vector_graph-1.63.4 → iris_vector_graph-1.63.6}/iris_src/src/Graph/KG/BenchSeeder.cls +0 -0
- {iris_vector_graph-1.63.4 → iris_vector_graph-1.63.6}/iris_src/src/Graph/KG/Benchmark.cls +0 -0
- {iris_vector_graph-1.63.4 → iris_vector_graph-1.63.6}/iris_src/src/Graph/KG/Edge.cls +0 -0
- {iris_vector_graph-1.63.4 → iris_vector_graph-1.63.6}/iris_src/src/Graph/KG/EdgeScan.cls +0 -0
- {iris_vector_graph-1.63.4 → iris_vector_graph-1.63.6}/iris_src/src/Graph/KG/GraphIndex.cls +0 -0
- {iris_vector_graph-1.63.4 → iris_vector_graph-1.63.6}/iris_src/src/Graph/KG/IVFIndex.cls +0 -0
- {iris_vector_graph-1.63.4 → iris_vector_graph-1.63.6}/iris_src/src/Graph/KG/Loader.cls +0 -0
- {iris_vector_graph-1.63.4 → iris_vector_graph-1.63.6}/iris_src/src/Graph/KG/MCPService.cls +0 -0
- {iris_vector_graph-1.63.4 → iris_vector_graph-1.63.6}/iris_src/src/Graph/KG/MCPToolSet.cls +0 -0
- {iris_vector_graph-1.63.4 → iris_vector_graph-1.63.6}/iris_src/src/Graph/KG/MCPTools.cls +0 -0
- {iris_vector_graph-1.63.4 → iris_vector_graph-1.63.6}/iris_src/src/Graph/KG/Meta.cls +0 -0
- {iris_vector_graph-1.63.4 → iris_vector_graph-1.63.6}/iris_src/src/Graph/KG/PLAIDSearch.cls +0 -0
- {iris_vector_graph-1.63.4 → iris_vector_graph-1.63.6}/iris_src/src/Graph/KG/PageRank.cls +0 -0
- {iris_vector_graph-1.63.4 → iris_vector_graph-1.63.6}/iris_src/src/Graph/KG/PyOps.cls +0 -0
- {iris_vector_graph-1.63.4 → iris_vector_graph-1.63.6}/iris_src/src/Graph/KG/Service.cls +0 -0
- {iris_vector_graph-1.63.4 → iris_vector_graph-1.63.6}/iris_src/src/Graph/KG/Snapshot.cls +0 -0
- {iris_vector_graph-1.63.4 → iris_vector_graph-1.63.6}/iris_src/src/Graph/KG/Subgraph.cls +0 -0
- {iris_vector_graph-1.63.4 → iris_vector_graph-1.63.6}/iris_src/src/Graph/KG/TemporalIndex.cls +0 -0
- {iris_vector_graph-1.63.4 → iris_vector_graph-1.63.6}/iris_src/src/Graph/KG/TestEdge.cls +0 -0
- {iris_vector_graph-1.63.4 → iris_vector_graph-1.63.6}/iris_src/src/Graph/KG/Traversal.cls +0 -0
- {iris_vector_graph-1.63.4 → iris_vector_graph-1.63.6}/iris_src/src/Graph/KG/VecIndex.cls +0 -0
- {iris_vector_graph-1.63.4 → iris_vector_graph-1.63.6}/iris_src/src/PageRankEmbedded.cls +0 -0
- {iris_vector_graph-1.63.4 → iris_vector_graph-1.63.6}/iris_src/src/User.Exec.cls +0 -0
- {iris_vector_graph-1.63.4 → iris_vector_graph-1.63.6}/iris_src/src/iris/vector/graph/GraphOperators.cls +0 -0
- {iris_vector_graph-1.63.4 → iris_vector_graph-1.63.6}/iris_vector_graph/__init__.py +0 -0
- {iris_vector_graph-1.63.4 → iris_vector_graph-1.63.6}/iris_vector_graph/bolt_server.py +0 -0
- {iris_vector_graph-1.63.4 → iris_vector_graph-1.63.6}/iris_vector_graph/bulk_loader.py +0 -0
- {iris_vector_graph-1.63.4 → iris_vector_graph-1.63.6}/iris_vector_graph/capabilities.py +0 -0
- {iris_vector_graph-1.63.4 → iris_vector_graph-1.63.6}/iris_vector_graph/cypher/__init__.py +0 -0
- {iris_vector_graph-1.63.4 → iris_vector_graph-1.63.6}/iris_vector_graph/cypher/algorithms/__init__.py +0 -0
- {iris_vector_graph-1.63.4 → iris_vector_graph-1.63.6}/iris_vector_graph/cypher/algorithms/paths.py +0 -0
- {iris_vector_graph-1.63.4 → iris_vector_graph-1.63.6}/iris_vector_graph/cypher/ast.py +0 -0
- {iris_vector_graph-1.63.4 → iris_vector_graph-1.63.6}/iris_vector_graph/cypher/lexer.py +0 -0
- {iris_vector_graph-1.63.4 → iris_vector_graph-1.63.6}/iris_vector_graph/cypher/parser.py +0 -0
- {iris_vector_graph-1.63.4 → iris_vector_graph-1.63.6}/iris_vector_graph/cypher/translator.py +0 -0
- {iris_vector_graph-1.63.4 → iris_vector_graph-1.63.6}/iris_vector_graph/cypher_api.py +0 -0
- {iris_vector_graph-1.63.4 → iris_vector_graph-1.63.6}/iris_vector_graph/embedded.py +0 -0
- {iris_vector_graph-1.63.4 → iris_vector_graph-1.63.6}/iris_vector_graph/fusion.py +0 -0
- {iris_vector_graph-1.63.4 → iris_vector_graph-1.63.6}/iris_vector_graph/gql/__init__.py +0 -0
- {iris_vector_graph-1.63.4 → iris_vector_graph-1.63.6}/iris_vector_graph/gql/constants.py +0 -0
- {iris_vector_graph-1.63.4 → iris_vector_graph-1.63.6}/iris_vector_graph/gql/engine.py +0 -0
- {iris_vector_graph-1.63.4 → iris_vector_graph-1.63.6}/iris_vector_graph/gql/pooling.py +0 -0
- {iris_vector_graph-1.63.4 → iris_vector_graph-1.63.6}/iris_vector_graph/gql/resolvers.py +0 -0
- {iris_vector_graph-1.63.4 → iris_vector_graph-1.63.6}/iris_vector_graph/gql/schema.py +0 -0
- {iris_vector_graph-1.63.4 → iris_vector_graph-1.63.6}/iris_vector_graph/models.py +0 -0
- {iris_vector_graph-1.63.4 → iris_vector_graph-1.63.6}/iris_vector_graph/operators.py +0 -0
- {iris_vector_graph-1.63.4 → iris_vector_graph-1.63.6}/iris_vector_graph/py.typed +0 -0
- {iris_vector_graph-1.63.4 → iris_vector_graph-1.63.6}/iris_vector_graph/schema.py +0 -0
- {iris_vector_graph-1.63.4 → iris_vector_graph-1.63.6}/iris_vector_graph/security.py +0 -0
- {iris_vector_graph-1.63.4 → iris_vector_graph-1.63.6}/iris_vector_graph/text_search.py +0 -0
- {iris_vector_graph-1.63.4 → iris_vector_graph-1.63.6}/iris_vector_graph/utils.py +0 -0
- {iris_vector_graph-1.63.4 → iris_vector_graph-1.63.6}/iris_vector_graph/vector_utils.py +0 -0
- {iris_vector_graph-1.63.4 → iris_vector_graph-1.63.6}/sql/fhir_bridges.sql +0 -0
- {iris_vector_graph-1.63.4 → iris_vector_graph-1.63.6}/sql/fraud_sample_data.sql +0 -0
- {iris_vector_graph-1.63.4 → iris_vector_graph-1.63.6}/sql/globals_schema.sql +0 -0
- {iris_vector_graph-1.63.4 → iris_vector_graph-1.63.6}/sql/graph_path_globals.sql +0 -0
- {iris_vector_graph-1.63.4 → iris_vector_graph-1.63.6}/sql/graph_walk_tvf.sql +0 -0
- {iris_vector_graph-1.63.4 → iris_vector_graph-1.63.6}/sql/migrations/000_base_schema_iris.sql +0 -0
- {iris_vector_graph-1.63.4 → iris_vector_graph-1.63.6}/sql/migrations/001_add_nodepk_table.sql +0 -0
- {iris_vector_graph-1.63.4 → iris_vector_graph-1.63.6}/sql/migrations/001_rollback_nodepk.sql +0 -0
- {iris_vector_graph-1.63.4 → iris_vector_graph-1.63.6}/sql/migrations/002_add_fk_constraints.sql +0 -0
- {iris_vector_graph-1.63.4 → iris_vector_graph-1.63.6}/sql/operators.sql +0 -0
- {iris_vector_graph-1.63.4 → iris_vector_graph-1.63.6}/sql/operators_fixed.sql +0 -0
- {iris_vector_graph-1.63.4 → iris_vector_graph-1.63.6}/sql/procedures/kg_PageRank.sql +0 -0
- {iris_vector_graph-1.63.4 → iris_vector_graph-1.63.6}/sql/rdf_reifications.sql +0 -0
- {iris_vector_graph-1.63.4 → iris_vector_graph-1.63.6}/sql/schema.sql +0 -0
- {iris_vector_graph-1.63.4 → iris_vector_graph-1.63.6}/tests/TESTING.md +0 -0
- {iris_vector_graph-1.63.4 → iris_vector_graph-1.63.6}/tests/benchmark_parser.py +0 -0
- {iris_vector_graph-1.63.4 → iris_vector_graph-1.63.6}/tests/benchmarks/benchmark_neo4j.py +0 -0
- {iris_vector_graph-1.63.4 → iris_vector_graph-1.63.6}/tests/benchmarks/bfs_benchmark.py +0 -0
- {iris_vector_graph-1.63.4 → iris_vector_graph-1.63.6}/tests/benchmarks/establish_baseline.py +0 -0
- {iris_vector_graph-1.63.4 → iris_vector_graph-1.63.6}/tests/benchmarks/graph_gen.py +0 -0
- {iris_vector_graph-1.63.4 → iris_vector_graph-1.63.6}/tests/benchmarks/iris_baseline_run.py +0 -0
- {iris_vector_graph-1.63.4 → iris_vector_graph-1.63.6}/tests/benchmarks/iris_os_run.py +0 -0
- {iris_vector_graph-1.63.4 → iris_vector_graph-1.63.6}/tests/benchmarks/load_neo4j.py +0 -0
- {iris_vector_graph-1.63.4 → iris_vector_graph-1.63.6}/tests/benchmarks/synthetic_baseline.csv +0 -0
- {iris_vector_graph-1.63.4 → iris_vector_graph-1.63.6}/tests/conftest.py +0 -0
- {iris_vector_graph-1.63.4 → iris_vector_graph-1.63.6}/tests/contract/__init__.py +0 -0
- {iris_vector_graph-1.63.4 → iris_vector_graph-1.63.6}/tests/contract/test_cypher_api.py +0 -0
- {iris_vector_graph-1.63.4 → iris_vector_graph-1.63.6}/tests/contract/test_cypher_api_errors.py +0 -0
- {iris_vector_graph-1.63.4 → iris_vector_graph-1.63.6}/tests/contract/test_graphql_queries.py +0 -0
- {iris_vector_graph-1.63.4 → iris_vector_graph-1.63.6}/tests/contract/test_graphql_schema.py +0 -0
- {iris_vector_graph-1.63.4 → iris_vector_graph-1.63.6}/tests/contract/test_ppr_api.py +0 -0
- {iris_vector_graph-1.63.4 → iris_vector_graph-1.63.6}/tests/curl_suite.sh +0 -0
- {iris_vector_graph-1.63.4 → iris_vector_graph-1.63.6}/tests/e2e/__init__.py +0 -0
- {iris_vector_graph-1.63.4 → iris_vector_graph-1.63.6}/tests/e2e/conftest.py +0 -0
- {iris_vector_graph-1.63.4 → iris_vector_graph-1.63.6}/tests/e2e/test_biomedical_demo.py +0 -0
- {iris_vector_graph-1.63.4 → iris_vector_graph-1.63.6}/tests/e2e/test_biomedical_ui.py +0 -0
- {iris_vector_graph-1.63.4 → iris_vector_graph-1.63.6}/tests/e2e/test_cypher_coerce_e2e.py +0 -0
- {iris_vector_graph-1.63.4 → iris_vector_graph-1.63.6}/tests/e2e/test_cypher_sprints_e2e.py +0 -0
- {iris_vector_graph-1.63.4 → iris_vector_graph-1.63.6}/tests/e2e/test_cypher_vector_search.py +0 -0
- {iris_vector_graph-1.63.4 → iris_vector_graph-1.63.6}/tests/e2e/test_fhir_bridges_e2e.py +0 -0
- {iris_vector_graph-1.63.4 → iris_vector_graph-1.63.6}/tests/e2e/test_fraud_demo.py +0 -0
- {iris_vector_graph-1.63.4 → iris_vector_graph-1.63.6}/tests/e2e/test_fraud_ui.py +0 -0
- {iris_vector_graph-1.63.4 → iris_vector_graph-1.63.6}/tests/e2e/test_gql_autogen_startup.py +0 -0
- {iris_vector_graph-1.63.4 → iris_vector_graph-1.63.6}/tests/e2e/test_gql_cypher_passthrough.py +0 -0
- {iris_vector_graph-1.63.4 → iris_vector_graph-1.63.6}/tests/e2e/test_gql_node_queries.py +0 -0
- {iris_vector_graph-1.63.4 → iris_vector_graph-1.63.6}/tests/e2e/test_gql_semantic_search.py +0 -0
- {iris_vector_graph-1.63.4 → iris_vector_graph-1.63.6}/tests/e2e/test_gql_traversal.py +0 -0
- {iris_vector_graph-1.63.4 → iris_vector_graph-1.63.6}/tests/e2e/test_graph_kernels_e2e.py +0 -0
- {iris_vector_graph-1.63.4 → iris_vector_graph-1.63.6}/tests/e2e/test_hla_kg_e2e.py +0 -0
- {iris_vector_graph-1.63.4 → iris_vector_graph-1.63.6}/tests/e2e/test_multi_query_engine_platform.py +0 -0
- {iris_vector_graph-1.63.4 → iris_vector_graph-1.63.6}/tests/e2e/test_named_paths_e2e.py +0 -0
- {iris_vector_graph-1.63.4 → iris_vector_graph-1.63.6}/tests/e2e/test_nkg_index_e2e.py +0 -0
- {iris_vector_graph-1.63.4 → iris_vector_graph-1.63.6}/tests/e2e/test_operator_wiring_e2e.py +0 -0
- {iris_vector_graph-1.63.4 → iris_vector_graph-1.63.6}/tests/e2e/test_plaid_search_e2e.py +0 -0
- {iris_vector_graph-1.63.4 → iris_vector_graph-1.63.6}/tests/e2e/test_ppr_cls_fast_path.py +0 -0
- {iris_vector_graph-1.63.4 → iris_vector_graph-1.63.6}/tests/e2e/test_ppr_guided_e2e.py +0 -0
- {iris_vector_graph-1.63.4 → iris_vector_graph-1.63.6}/tests/e2e/test_procedure_installation.py +0 -0
- {iris_vector_graph-1.63.4 → iris_vector_graph-1.63.6}/tests/e2e/test_reification_e2e.py +0 -0
- {iris_vector_graph-1.63.4 → iris_vector_graph-1.63.6}/tests/e2e/test_schema_procedures_e2e.py +0 -0
- {iris_vector_graph-1.63.4 → iris_vector_graph-1.63.6}/tests/e2e/test_subgraph_e2e.py +0 -0
- {iris_vector_graph-1.63.4 → iris_vector_graph-1.63.6}/tests/e2e/test_subquery_call_e2e.py +0 -0
- {iris_vector_graph-1.63.4 → iris_vector_graph-1.63.6}/tests/e2e/test_vecindex_e2e.py +0 -0
- {iris_vector_graph-1.63.4 → iris_vector_graph-1.63.6}/tests/integration/__init__.py +0 -0
- {iris_vector_graph-1.63.4 → iris_vector_graph-1.63.6}/tests/integration/conftest.py +0 -0
- {iris_vector_graph-1.63.4 → iris_vector_graph-1.63.6}/tests/integration/gql/__init__.py +0 -0
- {iris_vector_graph-1.63.4 → iris_vector_graph-1.63.6}/tests/integration/gql/test_graphql_mutations.py +0 -0
- {iris_vector_graph-1.63.4 → iris_vector_graph-1.63.6}/tests/integration/gql/test_graphql_nested_queries.py +0 -0
- {iris_vector_graph-1.63.4 → iris_vector_graph-1.63.6}/tests/integration/gql/test_graphql_queries.py +0 -0
- {iris_vector_graph-1.63.4 → iris_vector_graph-1.63.6}/tests/integration/gql/test_graphql_vector_search.py +0 -0
- {iris_vector_graph-1.63.4 → iris_vector_graph-1.63.6}/tests/integration/test_bidirectional_ppr.py +0 -0
- {iris_vector_graph-1.63.4 → iris_vector_graph-1.63.6}/tests/integration/test_cls_layer.py +0 -0
- {iris_vector_graph-1.63.4 → iris_vector_graph-1.63.6}/tests/integration/test_cypher_advanced.py +0 -0
- {iris_vector_graph-1.63.4 → iris_vector_graph-1.63.6}/tests/integration/test_cypher_enhancements.py +0 -0
- {iris_vector_graph-1.63.4 → iris_vector_graph-1.63.6}/tests/integration/test_cypher_multi_type.py +0 -0
- {iris_vector_graph-1.63.4 → iris_vector_graph-1.63.6}/tests/integration/test_cypher_rd.py +0 -0
- {iris_vector_graph-1.63.4 → iris_vector_graph-1.63.6}/tests/integration/test_cypher_rel_vars.py +0 -0
- {iris_vector_graph-1.63.4 → iris_vector_graph-1.63.6}/tests/integration/test_cypher_single_type.py +0 -0
- {iris_vector_graph-1.63.4 → iris_vector_graph-1.63.6}/tests/integration/test_cypher_untyped.py +0 -0
- {iris_vector_graph-1.63.4 → iris_vector_graph-1.63.6}/tests/integration/test_cypher_vector_search.py +0 -0
- {iris_vector_graph-1.63.4 → iris_vector_graph-1.63.6}/tests/integration/test_embeddings_api.py +0 -0
- {iris_vector_graph-1.63.4 → iris_vector_graph-1.63.6}/tests/integration/test_fastapi_graphql.py +0 -0
- {iris_vector_graph-1.63.4 → iris_vector_graph-1.63.6}/tests/integration/test_fhir_bridges_integration.py +0 -0
- {iris_vector_graph-1.63.4 → iris_vector_graph-1.63.6}/tests/integration/test_named_paths_integration.py +0 -0
- {iris_vector_graph-1.63.4 → iris_vector_graph-1.63.6}/tests/integration/test_nodepk_advanced_benchmarks.py +0 -0
- {iris_vector_graph-1.63.4 → iris_vector_graph-1.63.6}/tests/integration/test_nodepk_constraints.py +0 -0
- {iris_vector_graph-1.63.4 → iris_vector_graph-1.63.6}/tests/integration/test_nodepk_graph_analytics.py +0 -0
- {iris_vector_graph-1.63.4 → iris_vector_graph-1.63.6}/tests/integration/test_nodepk_migration.py +0 -0
- {iris_vector_graph-1.63.4 → iris_vector_graph-1.63.6}/tests/integration/test_nodepk_performance.py +0 -0
- {iris_vector_graph-1.63.4 → iris_vector_graph-1.63.6}/tests/integration/test_nodepk_production_scale.py +0 -0
- {iris_vector_graph-1.63.4 → iris_vector_graph-1.63.6}/tests/integration/test_objectscript_classes.py +0 -0
- {iris_vector_graph-1.63.4 → iris_vector_graph-1.63.6}/tests/integration/test_pagerank_sql_optimization.py +0 -0
- {iris_vector_graph-1.63.4 → iris_vector_graph-1.63.6}/tests/integration/test_reification_integration.py +0 -0
- {iris_vector_graph-1.63.4 → iris_vector_graph-1.63.6}/tests/integration/test_schema_migration.py +0 -0
- {iris_vector_graph-1.63.4 → iris_vector_graph-1.63.6}/tests/integration/test_stored_procedure_install.py +0 -0
- {iris_vector_graph-1.63.4 → iris_vector_graph-1.63.6}/tests/integration/test_subquery_call_integration.py +0 -0
- {iris_vector_graph-1.63.4 → iris_vector_graph-1.63.6}/tests/performance/conftest.py +0 -0
- {iris_vector_graph-1.63.4 → iris_vector_graph-1.63.6}/tests/performance/scale_benchmark.py +0 -0
- {iris_vector_graph-1.63.4 → iris_vector_graph-1.63.6}/tests/performance/test_ppr_stress.py +0 -0
- {iris_vector_graph-1.63.4 → iris_vector_graph-1.63.6}/tests/performance/test_stress_v1_5.py +0 -0
- {iris_vector_graph-1.63.4 → iris_vector_graph-1.63.6}/tests/python/run_all_tests.py +0 -0
- {iris_vector_graph-1.63.4 → iris_vector_graph-1.63.6}/tests/python/test_iris_rest_api.py +0 -0
- {iris_vector_graph-1.63.4 → iris_vector_graph-1.63.6}/tests/python/test_networkx_loader.py +0 -0
- {iris_vector_graph-1.63.4 → iris_vector_graph-1.63.6}/tests/python/test_performance_benchmarks.py +0 -0
- {iris_vector_graph-1.63.4 → iris_vector_graph-1.63.6}/tests/python/test_pyops_vector_conversion.py +0 -0
- {iris_vector_graph-1.63.4 → iris_vector_graph-1.63.6}/tests/python/test_python_operators.py +0 -0
- {iris_vector_graph-1.63.4 → iris_vector_graph-1.63.6}/tests/python/test_python_sdk.py +0 -0
- {iris_vector_graph-1.63.4 → iris_vector_graph-1.63.6}/tests/python/test_schema_validation.py +0 -0
- {iris_vector_graph-1.63.4 → iris_vector_graph-1.63.6}/tests/python/test_sql_queries.py +0 -0
- {iris_vector_graph-1.63.4 → iris_vector_graph-1.63.6}/tests/python/test_vector_functions.py +0 -0
- {iris_vector_graph-1.63.4 → iris_vector_graph-1.63.6}/tests/unit/cypher/__init__.py +0 -0
- {iris_vector_graph-1.63.4 → iris_vector_graph-1.63.6}/tests/unit/cypher/test_lexer.py +0 -0
- {iris_vector_graph-1.63.4 → iris_vector_graph-1.63.6}/tests/unit/cypher/test_lexer_advanced.py +0 -0
- {iris_vector_graph-1.63.4 → iris_vector_graph-1.63.6}/tests/unit/cypher/test_parser.py +0 -0
- {iris_vector_graph-1.63.4 → iris_vector_graph-1.63.6}/tests/unit/cypher/test_parser_advanced.py +0 -0
- {iris_vector_graph-1.63.4 → iris_vector_graph-1.63.6}/tests/unit/test_batch_mutations.py +0 -0
- {iris_vector_graph-1.63.4 → iris_vector_graph-1.63.6}/tests/unit/test_bfs_arno.py +0 -0
- {iris_vector_graph-1.63.4 → iris_vector_graph-1.63.6}/tests/unit/test_bm25_index.py +0 -0
- {iris_vector_graph-1.63.4 → iris_vector_graph-1.63.6}/tests/unit/test_bolt_server.py +0 -0
- {iris_vector_graph-1.63.4 → iris_vector_graph-1.63.6}/tests/unit/test_cls_deployment.py +0 -0
- {iris_vector_graph-1.63.4 → iris_vector_graph-1.63.6}/tests/unit/test_cypher_benchmark.py +0 -0
- {iris_vector_graph-1.63.4 → iris_vector_graph-1.63.6}/tests/unit/test_cypher_benchmark_scale.py +0 -0
- {iris_vector_graph-1.63.4 → iris_vector_graph-1.63.6}/tests/unit/test_cypher_case_when.py +0 -0
- {iris_vector_graph-1.63.4 → iris_vector_graph-1.63.6}/tests/unit/test_cypher_e2e_new_features.py +0 -0
- {iris_vector_graph-1.63.4 → iris_vector_graph-1.63.6}/tests/unit/test_cypher_functions.py +0 -0
- {iris_vector_graph-1.63.4 → iris_vector_graph-1.63.6}/tests/unit/test_cypher_parser.py +0 -0
- {iris_vector_graph-1.63.4 → iris_vector_graph-1.63.6}/tests/unit/test_cypher_posos_bugs.py +0 -0
- {iris_vector_graph-1.63.4 → iris_vector_graph-1.63.6}/tests/unit/test_cypher_procedures.py +0 -0
- {iris_vector_graph-1.63.4 → iris_vector_graph-1.63.6}/tests/unit/test_cypher_translator.py +0 -0
- {iris_vector_graph-1.63.4 → iris_vector_graph-1.63.6}/tests/unit/test_cypher_union_exists.py +0 -0
- {iris_vector_graph-1.63.4 → iris_vector_graph-1.63.6}/tests/unit/test_cypher_var_length.py +0 -0
- {iris_vector_graph-1.63.4 → iris_vector_graph-1.63.6}/tests/unit/test_cypher_vector_search.py +0 -0
- {iris_vector_graph-1.63.4 → iris_vector_graph-1.63.6}/tests/unit/test_edge_embeddings.py +0 -0
- {iris_vector_graph-1.63.4 → iris_vector_graph-1.63.6}/tests/unit/test_edgeprop_ndjson.py +0 -0
- {iris_vector_graph-1.63.4 → iris_vector_graph-1.63.6}/tests/unit/test_embedded.py +0 -0
- {iris_vector_graph-1.63.4 → iris_vector_graph-1.63.6}/tests/unit/test_engine_dimension_fix.py +0 -0
- {iris_vector_graph-1.63.4 → iris_vector_graph-1.63.6}/tests/unit/test_engine_embeddings.py +0 -0
- {iris_vector_graph-1.63.4 → iris_vector_graph-1.63.6}/tests/unit/test_engine_status.py +0 -0
- {iris_vector_graph-1.63.4 → iris_vector_graph-1.63.6}/tests/unit/test_fhir_bridges.py +0 -0
- {iris_vector_graph-1.63.4 → iris_vector_graph-1.63.6}/tests/unit/test_get_nodes.py +0 -0
- {iris_vector_graph-1.63.4 → iris_vector_graph-1.63.6}/tests/unit/test_graph_kernels.py +0 -0
- {iris_vector_graph-1.63.4 → iris_vector_graph-1.63.6}/tests/unit/test_graphql_dataloader.py +0 -0
- {iris_vector_graph-1.63.4 → iris_vector_graph-1.63.6}/tests/unit/test_ingest_formats.py +0 -0
- {iris_vector_graph-1.63.4 → iris_vector_graph-1.63.6}/tests/unit/test_ivf_index.py +0 -0
- {iris_vector_graph-1.63.4 → iris_vector_graph-1.63.6}/tests/unit/test_named_graphs.py +0 -0
- {iris_vector_graph-1.63.4 → iris_vector_graph-1.63.6}/tests/unit/test_named_paths.py +0 -0
- {iris_vector_graph-1.63.4 → iris_vector_graph-1.63.6}/tests/unit/test_operators_wiring.py +0 -0
- {iris_vector_graph-1.63.4 → iris_vector_graph-1.63.6}/tests/unit/test_plaid_search.py +0 -0
- {iris_vector_graph-1.63.4 → iris_vector_graph-1.63.6}/tests/unit/test_ppr_guided_subgraph.py +0 -0
- {iris_vector_graph-1.63.4 → iris_vector_graph-1.63.6}/tests/unit/test_reification.py +0 -0
- {iris_vector_graph-1.63.4 → iris_vector_graph-1.63.6}/tests/unit/test_schema_init.py +0 -0
- {iris_vector_graph-1.63.4 → iris_vector_graph-1.63.6}/tests/unit/test_schema_procedures.py +0 -0
- {iris_vector_graph-1.63.4 → iris_vector_graph-1.63.6}/tests/unit/test_shortest_path.py +0 -0
- {iris_vector_graph-1.63.4 → iris_vector_graph-1.63.6}/tests/unit/test_snapshot.py +0 -0
- {iris_vector_graph-1.63.4 → iris_vector_graph-1.63.6}/tests/unit/test_sql_splitter.py +0 -0
- {iris_vector_graph-1.63.4 → iris_vector_graph-1.63.6}/tests/unit/test_sql_table_bridge.py +0 -0
- {iris_vector_graph-1.63.4 → iris_vector_graph-1.63.6}/tests/unit/test_subgraph.py +0 -0
- {iris_vector_graph-1.63.4 → iris_vector_graph-1.63.6}/tests/unit/test_subquery_call.py +0 -0
- {iris_vector_graph-1.63.4 → iris_vector_graph-1.63.6}/tests/unit/test_temporal_cypher.py +0 -0
- {iris_vector_graph-1.63.4 → iris_vector_graph-1.63.6}/tests/unit/test_temporal_edges.py +0 -0
- {iris_vector_graph-1.63.4 → iris_vector_graph-1.63.6}/tests/unit/test_unified_edge_store.py +0 -0
- {iris_vector_graph-1.63.4 → iris_vector_graph-1.63.6}/tests/unit/test_weighted_shortest_path.py +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: iris-vector-graph
|
|
3
|
-
Version: 1.63.
|
|
3
|
+
Version: 1.63.6
|
|
4
4
|
Summary: Transactional Graph + Vector retrieval system for InterSystems IRIS with hybrid search, openCypher, and GraphQL APIs
|
|
5
5
|
Project-URL: Homepage, https://github.com/intersystems-community/iris-vector-graph
|
|
6
6
|
Project-URL: Documentation, https://github.com/intersystems-community/iris-vector-graph/tree/main/docs
|
|
@@ -692,6 +692,10 @@ anchors = engine.get_kg_anchors(icd_codes=["J18.0", "E11.9"])
|
|
|
692
692
|
|
|
693
693
|
## Changelog
|
|
694
694
|
|
|
695
|
+
### v1.63.5 (2026-04-26)
|
|
696
|
+
- fix: `NKGAccel.BFSJson` per-seed adjacency export — `ExportAdjacencyFromSeed()` exports only the subgraph reachable from the seed node (not the full 299K-edge graph). Fixes `<MAXSTRING>` on Mindwalk-scale graphs, enabling Arno-accelerated multi-hop BFS. Adjacency string now scales with BFS result size (~10KB per seed instead of >3.5MB full graph). Handles outbound + inbound edges for undirected BFS.
|
|
697
|
+
|
|
698
|
+
|
|
695
699
|
### v1.63.4 (2026-04-26)
|
|
696
700
|
- chore: merge 080-engine-status to main; NKGAccel.cls added to iris_src from arno upstream
|
|
697
701
|
|
|
@@ -620,6 +620,10 @@ anchors = engine.get_kg_anchors(icd_codes=["J18.0", "E11.9"])
|
|
|
620
620
|
|
|
621
621
|
## Changelog
|
|
622
622
|
|
|
623
|
+
### v1.63.5 (2026-04-26)
|
|
624
|
+
- fix: `NKGAccel.BFSJson` per-seed adjacency export — `ExportAdjacencyFromSeed()` exports only the subgraph reachable from the seed node (not the full 299K-edge graph). Fixes `<MAXSTRING>` on Mindwalk-scale graphs, enabling Arno-accelerated multi-hop BFS. Adjacency string now scales with BFS result size (~10KB per seed instead of >3.5MB full graph). Handles outbound + inbound edges for undirected BFS.
|
|
625
|
+
|
|
626
|
+
|
|
623
627
|
### v1.63.4 (2026-04-26)
|
|
624
628
|
- chore: merge 080-engine-status to main; NKGAccel.cls added to iris_src from arno upstream
|
|
625
629
|
|
|
@@ -450,7 +450,7 @@ ClassMethod RandomWalkJson(seedId As %String, walkLength As %Integer = 20, numWa
|
|
|
450
450
|
Return result
|
|
451
451
|
}
|
|
452
452
|
|
|
453
|
-
ClassMethod BFSJson(seed As %String, predicatesJson As %String = "[]", maxHops As %Integer = 3, maxResults As %Integer = 0) As %String
|
|
453
|
+
ClassMethod BFSJson(seed As %String, predicatesJson As %String = "[]", maxHops As %Integer = 3, maxResults As %Integer = 0) As %String
|
|
454
454
|
{
|
|
455
455
|
Set dllPath = $Get(^||NKGAccel("libPath"), "/usr/irissys/mgr/libarno_callout.so")
|
|
456
456
|
If '$Data(^||NKGAccel("bfs_fn")) {
|
|
@@ -466,25 +466,110 @@ ClassMethod BFSJson(seed As %String, predicatesJson As %String = "[]", maxHops A
|
|
|
466
466
|
If fnid = 0 {
|
|
467
467
|
Return ##class(Graph.KG.Traversal).BFSFastJson(seed, predicatesJson, maxHops, "")
|
|
468
468
|
}
|
|
469
|
-
|
|
470
|
-
|
|
471
|
-
|
|
472
|
-
|
|
473
|
-
For i = 1:1:nChunks {
|
|
474
|
-
Set adjStr = adjStr _ ^||adjWP(i)
|
|
475
|
-
If $Length(adjStr) > 3500000 {
|
|
476
|
-
Kill ^||adjWP
|
|
477
|
-
Return ##class(Graph.KG.Traversal).BFSFastJson(seed, predicatesJson, maxHops, "")
|
|
478
|
-
}
|
|
479
|
-
}
|
|
480
|
-
Kill ^||adjWP
|
|
481
|
-
}
|
|
469
|
+
|
|
470
|
+
// Per-seed export: only export the subgraph reachable from seed (bounded by maxHops+1)
|
|
471
|
+
// This keeps adjStr small even on 300K+ edge graphs
|
|
472
|
+
Set adjStr = ..ExportAdjacencyFromSeed(seed, maxHops + 1, predicatesJson)
|
|
482
473
|
If $Length(adjStr) = 0 {
|
|
483
474
|
Return ##class(Graph.KG.Traversal).BFSFastJson(seed, predicatesJson, maxHops, "")
|
|
484
475
|
}
|
|
485
476
|
Return $ZF(-5, dllid, fnid, adjStr, seed, predicatesJson, maxHops, maxResults)
|
|
486
477
|
}
|
|
487
478
|
|
|
479
|
+
ClassMethod ExportAdjacencyFromSeed(seed As %String, maxHops As %Integer = 4, predicatesJson As %String = "[]") As %String [ Private ]
|
|
480
|
+
{
|
|
481
|
+
Set seedIdx = $Get(^NKG("$NI", seed), "")
|
|
482
|
+
If seedIdx = "" Return ""
|
|
483
|
+
|
|
484
|
+
Set preds = ""
|
|
485
|
+
If predicatesJson '= "[]" && (predicatesJson '= "") {
|
|
486
|
+
Try { Set preds = ##class(%DynamicArray).%FromJSON(predicatesJson) } Catch { Set preds = "" }
|
|
487
|
+
}
|
|
488
|
+
|
|
489
|
+
// BFS to collect reachable node indices within maxHops
|
|
490
|
+
Kill ^||seedBFS
|
|
491
|
+
Set ^||seedBFS("frontier", seedIdx) = ""
|
|
492
|
+
Set ^||seedBFS("seen", seedIdx) = ""
|
|
493
|
+
|
|
494
|
+
For hop = 1:1:maxHops {
|
|
495
|
+
Kill ^||seedBFS("nextFrontier")
|
|
496
|
+
Set s = ""
|
|
497
|
+
For {
|
|
498
|
+
Set s = $Order(^||seedBFS("frontier", s))
|
|
499
|
+
Quit:s=""
|
|
500
|
+
Set pred = ""
|
|
501
|
+
For {
|
|
502
|
+
Set pred = $Order(^NKG(-1, s, pred))
|
|
503
|
+
Quit:pred=""
|
|
504
|
+
If $IsObject(preds) {
|
|
505
|
+
Set allowed = 0
|
|
506
|
+
Set predStr = $Get(^NKG("$LS", -pred - 1), "")
|
|
507
|
+
For pi = 0:1:preds.%Size()-1 {
|
|
508
|
+
If preds.%Get(pi) = predStr { Set allowed = 1 Quit }
|
|
509
|
+
}
|
|
510
|
+
If 'allowed Continue
|
|
511
|
+
}
|
|
512
|
+
Set dst = ""
|
|
513
|
+
For {
|
|
514
|
+
Set dst = $Order(^NKG(-1, s, pred, dst))
|
|
515
|
+
Quit:dst=""
|
|
516
|
+
Set ^||seedBFS("nodes", s) = ""
|
|
517
|
+
Set ^||seedBFS("nodes", dst) = ""
|
|
518
|
+
If '$Data(^||seedBFS("seen", dst)) {
|
|
519
|
+
Set ^||seedBFS("seen", dst) = ""
|
|
520
|
+
Set ^||seedBFS("nextFrontier", dst) = ""
|
|
521
|
+
}
|
|
522
|
+
}
|
|
523
|
+
}
|
|
524
|
+
// Inbound traversal for undirected
|
|
525
|
+
Set pred = ""
|
|
526
|
+
For {
|
|
527
|
+
Set pred = $Order(^NKG(-2, s, pred))
|
|
528
|
+
Quit:pred=""
|
|
529
|
+
Set dst = ""
|
|
530
|
+
For {
|
|
531
|
+
Set dst = $Order(^NKG(-2, s, pred, dst))
|
|
532
|
+
Quit:dst=""
|
|
533
|
+
Set ^||seedBFS("nodes", s) = ""
|
|
534
|
+
Set ^||seedBFS("nodes", dst) = ""
|
|
535
|
+
If '$Data(^||seedBFS("seen", dst)) {
|
|
536
|
+
Set ^||seedBFS("seen", dst) = ""
|
|
537
|
+
Set ^||seedBFS("nextFrontier", dst) = ""
|
|
538
|
+
}
|
|
539
|
+
}
|
|
540
|
+
}
|
|
541
|
+
}
|
|
542
|
+
If '$Data(^||seedBFS("nextFrontier")) Quit
|
|
543
|
+
Merge ^||seedBFS("frontier") = ^||seedBFS("nextFrontier")
|
|
544
|
+
Kill ^||seedBFS("nextFrontier")
|
|
545
|
+
}
|
|
546
|
+
|
|
547
|
+
// Export only edges between collected nodes
|
|
548
|
+
Set result = ""
|
|
549
|
+
Set nodeIdx = ""
|
|
550
|
+
For {
|
|
551
|
+
Set nodeIdx = $Order(^||seedBFS("nodes", nodeIdx))
|
|
552
|
+
Quit:nodeIdx=""
|
|
553
|
+
Set srcStr = $Get(^NKG("$ND", nodeIdx), nodeIdx)
|
|
554
|
+
Set pred = ""
|
|
555
|
+
For {
|
|
556
|
+
Set pred = $Order(^NKG(-1, nodeIdx, pred))
|
|
557
|
+
Quit:pred=""
|
|
558
|
+
Set predStr = $Get(^NKG("$LS", -pred - 1), pred)
|
|
559
|
+
Set dst = ""
|
|
560
|
+
For {
|
|
561
|
+
Set dst = $Order(^NKG(-1, nodeIdx, pred, dst))
|
|
562
|
+
Quit:dst=""
|
|
563
|
+
If '$Data(^||seedBFS("nodes", dst)) Continue
|
|
564
|
+
Set dstStr = $Get(^NKG("$ND", dst), dst)
|
|
565
|
+
Set result = result _ srcStr _ $Char(31) _ predStr _ $Char(31) _ dstStr _ $Char(10)
|
|
566
|
+
}
|
|
567
|
+
}
|
|
568
|
+
}
|
|
569
|
+
Kill ^||seedBFS
|
|
570
|
+
Return result
|
|
571
|
+
}
|
|
572
|
+
|
|
488
573
|
ClassMethod ExportAdjacencyWithPreds() As %String [ Private ]
|
|
489
574
|
{
|
|
490
575
|
Set result = "", chunk = "", chunkNum = 0
|
|
@@ -2099,13 +2099,7 @@ class IRISGraphEngine:
|
|
|
2099
2099
|
except Exception:
|
|
2100
2100
|
errors.append(f"^KG probe failed: {e}")
|
|
2101
2101
|
|
|
2102
|
-
|
|
2103
|
-
kg_populated=kg_populated,
|
|
2104
|
-
kg_edge_count=kg_count,
|
|
2105
|
-
kg_edge_count_capped=kg_capped,
|
|
2106
|
-
nkg_populated=nkg_populated,
|
|
2107
|
-
)
|
|
2108
|
-
|
|
2102
|
+
kg_predicates_consistent = True
|
|
2109
2103
|
if kg_populated and tables.edges > 0:
|
|
2110
2104
|
try:
|
|
2111
2105
|
native = self._iris_obj()
|
|
@@ -2128,6 +2122,7 @@ class IRISGraphEngine:
|
|
|
2128
2122
|
)
|
|
2129
2123
|
row = cursor.fetchone()
|
|
2130
2124
|
if row and int(row[0]) == 0:
|
|
2125
|
+
kg_predicates_consistent = False
|
|
2131
2126
|
errors.append(
|
|
2132
2127
|
f"^KG predicate mismatch: ^KG has '{kg_pred[:60]}' "
|
|
2133
2128
|
f"but rdf_edges has no matching p — "
|
|
@@ -2137,6 +2132,15 @@ class IRISGraphEngine:
|
|
|
2137
2132
|
except Exception:
|
|
2138
2133
|
pass
|
|
2139
2134
|
|
|
2135
|
+
adjacency = AdjacencyStatus(
|
|
2136
|
+
kg_populated=kg_populated,
|
|
2137
|
+
kg_edge_count=kg_count,
|
|
2138
|
+
kg_edge_count_capped=kg_capped,
|
|
2139
|
+
nkg_populated=nkg_populated,
|
|
2140
|
+
kg_predicates_consistent=kg_predicates_consistent,
|
|
2141
|
+
bfs_path="none",
|
|
2142
|
+
)
|
|
2143
|
+
|
|
2140
2144
|
os_classes = []
|
|
2141
2145
|
os_deployed = self.capabilities.objectscript_deployed
|
|
2142
2146
|
_known_classes = [
|
|
@@ -2185,6 +2189,11 @@ class IRISGraphEngine:
|
|
|
2185
2189
|
plaid_indexes=plaid,
|
|
2186
2190
|
)
|
|
2187
2191
|
|
|
2192
|
+
if arno.loaded and arno.capabilities.get("bfs") and adjacency.nkg_populated:
|
|
2193
|
+
adjacency.bfs_path = "arno"
|
|
2194
|
+
elif objectscript.deployed and adjacency.kg_populated:
|
|
2195
|
+
adjacency.bfs_path = "objectscript"
|
|
2196
|
+
|
|
2188
2197
|
probe_ms = (_time.perf_counter() - t0) * 1000
|
|
2189
2198
|
return EngineStatus(
|
|
2190
2199
|
tables=tables,
|
|
@@ -20,6 +20,8 @@ class AdjacencyStatus:
|
|
|
20
20
|
kg_edge_count: int = 0
|
|
21
21
|
kg_edge_count_capped: bool = False
|
|
22
22
|
nkg_populated: bool = False
|
|
23
|
+
kg_predicates_consistent: bool = True
|
|
24
|
+
bfs_path: str = "none"
|
|
23
25
|
|
|
24
26
|
|
|
25
27
|
@dataclass
|
|
@@ -57,6 +59,14 @@ class EngineStatus:
|
|
|
57
59
|
def ready_for_bfs(self) -> bool:
|
|
58
60
|
return self.adjacency.kg_populated and self.tables.edges > 0
|
|
59
61
|
|
|
62
|
+
@property
|
|
63
|
+
def ready_for_multihop_bfs(self) -> bool:
|
|
64
|
+
if not self.ready_for_bfs:
|
|
65
|
+
return False
|
|
66
|
+
if not self.adjacency.kg_predicates_consistent:
|
|
67
|
+
return False
|
|
68
|
+
return self.adjacency.bfs_path in ("arno", "objectscript")
|
|
69
|
+
|
|
60
70
|
@property
|
|
61
71
|
def ready_for_vector_search(self) -> bool:
|
|
62
72
|
return self.tables.node_embeddings > 0
|
|
@@ -95,6 +105,15 @@ class EngineStatus:
|
|
|
95
105
|
f" {tick(self.adjacency.nkg_populated)} ^NKG (Arno integer index)",
|
|
96
106
|
]
|
|
97
107
|
|
|
108
|
+
bfs_sym = "✓" if self.adjacency.bfs_path in ("arno", "objectscript") else "✗"
|
|
109
|
+
lines.append(f" {bfs_sym} BFS path: {self.adjacency.bfs_path}")
|
|
110
|
+
|
|
111
|
+
if not self.adjacency.kg_predicates_consistent and self.adjacency.kg_populated:
|
|
112
|
+
lines.append(
|
|
113
|
+
" ⚠ ^KG predicate mismatch — stale from different data snapshot. "
|
|
114
|
+
"Run BuildKG() after reloading graph data."
|
|
115
|
+
)
|
|
116
|
+
|
|
98
117
|
if not self.adjacency.kg_populated and self.tables.edges > 0:
|
|
99
118
|
lines.append(
|
|
100
119
|
" ⚠ ^KG empty but edges exist — "
|
|
@@ -4,7 +4,7 @@ build-backend = "hatchling.build"
|
|
|
4
4
|
|
|
5
5
|
[project]
|
|
6
6
|
name = "iris-vector-graph"
|
|
7
|
-
version = "1.63.
|
|
7
|
+
version = "1.63.6"
|
|
8
8
|
description = "Transactional Graph + Vector retrieval system for InterSystems IRIS with hybrid search, openCypher, and GraphQL APIs"
|
|
9
9
|
readme = "README.md"
|
|
10
10
|
license = "MIT"
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{iris_vector_graph-1.63.4 → iris_vector_graph-1.63.6}/examples/domains/biomedical/__init__.py
RENAMED
|
File without changes
|
{iris_vector_graph-1.63.4 → iris_vector_graph-1.63.6}/examples/domains/biomedical/loaders.py
RENAMED
|
File without changes
|
{iris_vector_graph-1.63.4 → iris_vector_graph-1.63.6}/examples/domains/biomedical/resolver.py
RENAMED
|
File without changes
|
|
File without changes
|
{iris_vector_graph-1.63.4 → iris_vector_graph-1.63.6}/examples/domains/biomedical_legacy/__init__.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{iris_vector_graph-1.63.4 → iris_vector_graph-1.63.6}/examples/hybrid_vector_graph_query.cypher
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{iris_vector_graph-1.63.4 → iris_vector_graph-1.63.6}/iris_src/src/Graph/KG/TemporalIndex.cls
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{iris_vector_graph-1.63.4 → iris_vector_graph-1.63.6}/iris_vector_graph/cypher/algorithms/paths.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{iris_vector_graph-1.63.4 → iris_vector_graph-1.63.6}/iris_vector_graph/cypher/translator.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{iris_vector_graph-1.63.4 → iris_vector_graph-1.63.6}/sql/migrations/000_base_schema_iris.sql
RENAMED
|
File without changes
|
{iris_vector_graph-1.63.4 → iris_vector_graph-1.63.6}/sql/migrations/001_add_nodepk_table.sql
RENAMED
|
File without changes
|
{iris_vector_graph-1.63.4 → iris_vector_graph-1.63.6}/sql/migrations/001_rollback_nodepk.sql
RENAMED
|
File without changes
|
{iris_vector_graph-1.63.4 → iris_vector_graph-1.63.6}/sql/migrations/002_add_fk_constraints.sql
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{iris_vector_graph-1.63.4 → iris_vector_graph-1.63.6}/tests/benchmarks/establish_baseline.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{iris_vector_graph-1.63.4 → iris_vector_graph-1.63.6}/tests/benchmarks/synthetic_baseline.csv
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{iris_vector_graph-1.63.4 → iris_vector_graph-1.63.6}/tests/contract/test_cypher_api_errors.py
RENAMED
|
File without changes
|
{iris_vector_graph-1.63.4 → iris_vector_graph-1.63.6}/tests/contract/test_graphql_queries.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{iris_vector_graph-1.63.4 → iris_vector_graph-1.63.6}/tests/e2e/test_cypher_vector_search.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{iris_vector_graph-1.63.4 → iris_vector_graph-1.63.6}/tests/e2e/test_gql_cypher_passthrough.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{iris_vector_graph-1.63.4 → iris_vector_graph-1.63.6}/tests/e2e/test_multi_query_engine_platform.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|