flowcept 0.9.11__tar.gz → 0.9.15__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.
Files changed (218) hide show
  1. {flowcept-0.9.11 → flowcept-0.9.15}/Makefile +1 -0
  2. {flowcept-0.9.11 → flowcept-0.9.15}/PKG-INFO +17 -2
  3. {flowcept-0.9.11 → flowcept-0.9.15}/README.md +16 -1
  4. {flowcept-0.9.11 → flowcept-0.9.15}/docs/conf.py +18 -10
  5. flowcept-0.9.15/docs/img/flowcept-logo-dark.png +0 -0
  6. flowcept-0.9.15/docs/index.rst +49 -0
  7. {flowcept-0.9.11 → flowcept-0.9.15}/docs/prov_storage.rst +5 -0
  8. flowcept-0.9.15/docs/publications/README.md +91 -0
  9. {flowcept-0.9.11 → flowcept-0.9.15}/resources/sample_settings.yaml +1 -1
  10. {flowcept-0.9.11 → flowcept-0.9.15}/src/flowcept/cli.py +1 -1
  11. {flowcept-0.9.11 → flowcept-0.9.15}/src/flowcept/version.py +1 -1
  12. flowcept-0.9.11/docs/img/flowcept-logo-dark.png +0 -0
  13. flowcept-0.9.11/docs/index.rst +0 -29
  14. {flowcept-0.9.11 → flowcept-0.9.15}/.github/workflows/checks.yml +0 -0
  15. {flowcept-0.9.11 → flowcept-0.9.15}/.github/workflows/create-release-n-publish.yml +0 -0
  16. {flowcept-0.9.11 → flowcept-0.9.15}/.github/workflows/run-llm-tests.yml +0 -0
  17. {flowcept-0.9.11 → flowcept-0.9.15}/.github/workflows/run-tests-all-dbs.yml +0 -0
  18. {flowcept-0.9.11 → flowcept-0.9.15}/.github/workflows/run-tests-in-container.yml +0 -0
  19. {flowcept-0.9.11 → flowcept-0.9.15}/.github/workflows/run-tests-kafka.yml +0 -0
  20. {flowcept-0.9.11 → flowcept-0.9.15}/.github/workflows/run-tests-py313.yml +0 -0
  21. {flowcept-0.9.11 → flowcept-0.9.15}/.github/workflows/run-tests-simple.yml +0 -0
  22. {flowcept-0.9.11 → flowcept-0.9.15}/.github/workflows/run-tests.yml +0 -0
  23. {flowcept-0.9.11 → flowcept-0.9.15}/.github/workflows/run_examples.sh +0 -0
  24. {flowcept-0.9.11 → flowcept-0.9.15}/.github/workflows/version_bumper.py +0 -0
  25. {flowcept-0.9.11 → flowcept-0.9.15}/.gitignore +0 -0
  26. {flowcept-0.9.11 → flowcept-0.9.15}/.readthedocs.yaml +0 -0
  27. {flowcept-0.9.11 → flowcept-0.9.15}/CONTRIBUTING.md +0 -0
  28. {flowcept-0.9.11 → flowcept-0.9.15}/LICENSE +0 -0
  29. {flowcept-0.9.11 → flowcept-0.9.15}/deployment/Dockerfile +0 -0
  30. {flowcept-0.9.11 → flowcept-0.9.15}/deployment/compose-grafana.yml +0 -0
  31. {flowcept-0.9.11 → flowcept-0.9.15}/deployment/compose-kafka.yml +0 -0
  32. {flowcept-0.9.11 → flowcept-0.9.15}/deployment/compose-mofka.yml +0 -0
  33. {flowcept-0.9.11 → flowcept-0.9.15}/deployment/compose-mongo.yml +0 -0
  34. {flowcept-0.9.11 → flowcept-0.9.15}/deployment/compose.yml +0 -0
  35. {flowcept-0.9.11 → flowcept-0.9.15}/docs/api-reference.rst +0 -0
  36. {flowcept-0.9.11 → flowcept-0.9.15}/docs/architecture.rst +0 -0
  37. {flowcept-0.9.11 → flowcept-0.9.15}/docs/cli-reference.rst +0 -0
  38. {flowcept-0.9.11 → flowcept-0.9.15}/docs/contributing.rst +0 -0
  39. {flowcept-0.9.11 → flowcept-0.9.15}/docs/img/PROV-AGENT.svg +0 -0
  40. {flowcept-0.9.11 → flowcept-0.9.15}/docs/img/architecture-diagram.png +0 -0
  41. {flowcept-0.9.11 → flowcept-0.9.15}/docs/img/flowcept-logo.png +0 -0
  42. {flowcept-0.9.11 → flowcept-0.9.15}/docs/large_data.rst +0 -0
  43. {flowcept-0.9.11 → flowcept-0.9.15}/docs/prov_capture.rst +0 -0
  44. {flowcept-0.9.11 → flowcept-0.9.15}/docs/prov_query.rst +0 -0
  45. {flowcept-0.9.11 → flowcept-0.9.15}/docs/quick_start.rst +0 -0
  46. {flowcept-0.9.11 → flowcept-0.9.15}/docs/schemas.rst +0 -0
  47. {flowcept-0.9.11 → flowcept-0.9.15}/docs/setup.rst +0 -0
  48. {flowcept-0.9.11 → flowcept-0.9.15}/docs/task_schema.rst +0 -0
  49. {flowcept-0.9.11 → flowcept-0.9.15}/docs/telemetry_capture.rst +0 -0
  50. {flowcept-0.9.11 → flowcept-0.9.15}/docs/workflow_schema.rst +0 -0
  51. {flowcept-0.9.11 → flowcept-0.9.15}/examples/agents/a2a/README.md +0 -0
  52. {flowcept-0.9.11 → flowcept-0.9.15}/examples/agents/a2a/agent1.py +0 -0
  53. {flowcept-0.9.11 → flowcept-0.9.15}/examples/agents/a2a/agent2.py +0 -0
  54. {flowcept-0.9.11 → flowcept-0.9.15}/examples/agents/aec_agent_context_manager.py +0 -0
  55. {flowcept-0.9.11 → flowcept-0.9.15}/examples/agents/aec_agent_mock.py +0 -0
  56. {flowcept-0.9.11 → flowcept-0.9.15}/examples/agents/aec_prompts.py +0 -0
  57. {flowcept-0.9.11 → flowcept-0.9.15}/examples/agents/opt_driver_mock.py +0 -0
  58. {flowcept-0.9.11 → flowcept-0.9.15}/examples/consumers/ping_pong_example.py +0 -0
  59. {flowcept-0.9.11 → flowcept-0.9.15}/examples/consumers/simple_consumer.py +0 -0
  60. {flowcept-0.9.11 → flowcept-0.9.15}/examples/consumers/simple_publisher.py +0 -0
  61. {flowcept-0.9.11 → flowcept-0.9.15}/examples/convergence_loop_example.py +0 -0
  62. {flowcept-0.9.11 → flowcept-0.9.15}/examples/dask_example.py +0 -0
  63. {flowcept-0.9.11 → flowcept-0.9.15}/examples/distributed_consumer_example.py +0 -0
  64. {flowcept-0.9.11 → flowcept-0.9.15}/examples/instrumented_loop_example.py +0 -0
  65. {flowcept-0.9.11 → flowcept-0.9.15}/examples/instrumented_simple_example.py +0 -0
  66. {flowcept-0.9.11 → flowcept-0.9.15}/examples/llm_complex/README.md +0 -0
  67. {flowcept-0.9.11 → flowcept-0.9.15}/examples/llm_complex/custom_provenance_id_mapping.yaml +0 -0
  68. {flowcept-0.9.11 → flowcept-0.9.15}/examples/llm_complex/llm_dataprep.py +0 -0
  69. {flowcept-0.9.11 → flowcept-0.9.15}/examples/llm_complex/llm_main_example.py +0 -0
  70. {flowcept-0.9.11 → flowcept-0.9.15}/examples/llm_complex/llm_model.py +0 -0
  71. {flowcept-0.9.11 → flowcept-0.9.15}/examples/llm_complex/llm_test_runner.py +0 -0
  72. {flowcept-0.9.11 → flowcept-0.9.15}/examples/llm_tutorial/README.md +0 -0
  73. {flowcept-0.9.11 → flowcept-0.9.15}/examples/llm_tutorial/analysis.ipynb +0 -0
  74. {flowcept-0.9.11 → flowcept-0.9.15}/examples/llm_tutorial/llm_dataprep.py +0 -0
  75. {flowcept-0.9.11 → flowcept-0.9.15}/examples/llm_tutorial/llm_model.py +0 -0
  76. {flowcept-0.9.11 → flowcept-0.9.15}/examples/llm_tutorial/llm_train_campaign.py +0 -0
  77. {flowcept-0.9.11 → flowcept-0.9.15}/examples/mlflow_example.py +0 -0
  78. {flowcept-0.9.11 → flowcept-0.9.15}/examples/mqtt_example.py +0 -0
  79. {flowcept-0.9.11 → flowcept-0.9.15}/examples/single_layer_perceptron_example.py +0 -0
  80. {flowcept-0.9.11 → flowcept-0.9.15}/examples/start_here.py +0 -0
  81. {flowcept-0.9.11 → flowcept-0.9.15}/examples/tensorboard_example.py +0 -0
  82. {flowcept-0.9.11 → flowcept-0.9.15}/examples/unmanaged/main.py +0 -0
  83. {flowcept-0.9.11 → flowcept-0.9.15}/examples/unmanaged/simple_task.py +0 -0
  84. {flowcept-0.9.11 → flowcept-0.9.15}/notebooks/analytics.ipynb +0 -0
  85. {flowcept-0.9.11 → flowcept-0.9.15}/notebooks/dask.ipynb +0 -0
  86. {flowcept-0.9.11 → flowcept-0.9.15}/notebooks/dask_from_CLI.ipynb +0 -0
  87. {flowcept-0.9.11 → flowcept-0.9.15}/notebooks/mlflow.ipynb +0 -0
  88. {flowcept-0.9.11 → flowcept-0.9.15}/notebooks/reset_dask_nb_exec_counts.py +0 -0
  89. {flowcept-0.9.11 → flowcept-0.9.15}/notebooks/tensorboard.ipynb +0 -0
  90. {flowcept-0.9.11 → flowcept-0.9.15}/pyproject.toml +0 -0
  91. {flowcept-0.9.11 → flowcept-0.9.15}/resources/mofka/bedrock_setup.sh +0 -0
  92. {flowcept-0.9.11 → flowcept-0.9.15}/resources/mofka/consumer.py +0 -0
  93. {flowcept-0.9.11 → flowcept-0.9.15}/resources/mofka/mofka-requirements.yaml +0 -0
  94. {flowcept-0.9.11 → flowcept-0.9.15}/resources/mofka/mofka_config.json +0 -0
  95. {flowcept-0.9.11 → flowcept-0.9.15}/resources/simple_redis_consumer.py +0 -0
  96. {flowcept-0.9.11 → flowcept-0.9.15}/src/flowcept/__init__.py +0 -0
  97. {flowcept-0.9.11 → flowcept-0.9.15}/src/flowcept/agents/__init__.py +0 -0
  98. {flowcept-0.9.11 → flowcept-0.9.15}/src/flowcept/agents/agent_client.py +0 -0
  99. {flowcept-0.9.11 → flowcept-0.9.15}/src/flowcept/agents/agents_utils.py +0 -0
  100. {flowcept-0.9.11 → flowcept-0.9.15}/src/flowcept/agents/dynamic_schema_tracker.py +0 -0
  101. {flowcept-0.9.11 → flowcept-0.9.15}/src/flowcept/agents/flowcept_agent.py +0 -0
  102. {flowcept-0.9.11 → flowcept-0.9.15}/src/flowcept/agents/flowcept_ctx_manager.py +0 -0
  103. {flowcept-0.9.11 → flowcept-0.9.15}/src/flowcept/agents/gui/__init__.py +0 -0
  104. {flowcept-0.9.11 → flowcept-0.9.15}/src/flowcept/agents/gui/agent_gui.py +0 -0
  105. {flowcept-0.9.11 → flowcept-0.9.15}/src/flowcept/agents/gui/audio_utils.py +0 -0
  106. {flowcept-0.9.11 → flowcept-0.9.15}/src/flowcept/agents/gui/gui_utils.py +0 -0
  107. {flowcept-0.9.11 → flowcept-0.9.15}/src/flowcept/agents/llms/__init__.py +0 -0
  108. {flowcept-0.9.11 → flowcept-0.9.15}/src/flowcept/agents/llms/claude_gcp.py +0 -0
  109. {flowcept-0.9.11 → flowcept-0.9.15}/src/flowcept/agents/llms/gemini25.py +0 -0
  110. {flowcept-0.9.11 → flowcept-0.9.15}/src/flowcept/agents/prompts/__init__.py +0 -0
  111. {flowcept-0.9.11 → flowcept-0.9.15}/src/flowcept/agents/prompts/general_prompts.py +0 -0
  112. {flowcept-0.9.11 → flowcept-0.9.15}/src/flowcept/agents/prompts/in_memory_query_prompts.py +0 -0
  113. {flowcept-0.9.11 → flowcept-0.9.15}/src/flowcept/agents/tools/__init__.py +0 -0
  114. {flowcept-0.9.11 → flowcept-0.9.15}/src/flowcept/agents/tools/general_tools.py +0 -0
  115. {flowcept-0.9.11 → flowcept-0.9.15}/src/flowcept/agents/tools/in_memory_queries/__init__.py +0 -0
  116. {flowcept-0.9.11 → flowcept-0.9.15}/src/flowcept/agents/tools/in_memory_queries/in_memory_queries_tools.py +0 -0
  117. {flowcept-0.9.11 → flowcept-0.9.15}/src/flowcept/agents/tools/in_memory_queries/pandas_agent_utils.py +0 -0
  118. {flowcept-0.9.11 → flowcept-0.9.15}/src/flowcept/analytics/__init__.py +0 -0
  119. {flowcept-0.9.11 → flowcept-0.9.15}/src/flowcept/analytics/analytics_utils.py +0 -0
  120. {flowcept-0.9.11 → flowcept-0.9.15}/src/flowcept/analytics/data_augmentation.py +0 -0
  121. {flowcept-0.9.11 → flowcept-0.9.15}/src/flowcept/analytics/plot.py +0 -0
  122. {flowcept-0.9.11 → flowcept-0.9.15}/src/flowcept/commons/__init__.py +0 -0
  123. {flowcept-0.9.11 → flowcept-0.9.15}/src/flowcept/commons/autoflush_buffer.py +0 -0
  124. {flowcept-0.9.11 → flowcept-0.9.15}/src/flowcept/commons/daos/__init__.py +0 -0
  125. {flowcept-0.9.11 → flowcept-0.9.15}/src/flowcept/commons/daos/docdb_dao/__init__.py +0 -0
  126. {flowcept-0.9.11 → flowcept-0.9.15}/src/flowcept/commons/daos/docdb_dao/docdb_dao_base.py +0 -0
  127. {flowcept-0.9.11 → flowcept-0.9.15}/src/flowcept/commons/daos/docdb_dao/lmdb_dao.py +0 -0
  128. {flowcept-0.9.11 → flowcept-0.9.15}/src/flowcept/commons/daos/docdb_dao/mongodb_dao.py +0 -0
  129. {flowcept-0.9.11 → flowcept-0.9.15}/src/flowcept/commons/daos/keyvalue_dao.py +0 -0
  130. {flowcept-0.9.11 → flowcept-0.9.15}/src/flowcept/commons/daos/mq_dao/__init__.py +0 -0
  131. {flowcept-0.9.11 → flowcept-0.9.15}/src/flowcept/commons/daos/mq_dao/mq_dao_base.py +0 -0
  132. {flowcept-0.9.11 → flowcept-0.9.15}/src/flowcept/commons/daos/mq_dao/mq_dao_kafka.py +0 -0
  133. {flowcept-0.9.11 → flowcept-0.9.15}/src/flowcept/commons/daos/mq_dao/mq_dao_mofka.py +0 -0
  134. {flowcept-0.9.11 → flowcept-0.9.15}/src/flowcept/commons/daos/mq_dao/mq_dao_redis.py +0 -0
  135. {flowcept-0.9.11 → flowcept-0.9.15}/src/flowcept/commons/daos/redis_conn.py +0 -0
  136. {flowcept-0.9.11 → flowcept-0.9.15}/src/flowcept/commons/flowcept_dataclasses/__init__.py +0 -0
  137. {flowcept-0.9.11 → flowcept-0.9.15}/src/flowcept/commons/flowcept_dataclasses/base_settings_dataclasses.py +0 -0
  138. {flowcept-0.9.11 → flowcept-0.9.15}/src/flowcept/commons/flowcept_dataclasses/task_object.py +0 -0
  139. {flowcept-0.9.11 → flowcept-0.9.15}/src/flowcept/commons/flowcept_dataclasses/telemetry.py +0 -0
  140. {flowcept-0.9.11 → flowcept-0.9.15}/src/flowcept/commons/flowcept_dataclasses/workflow_object.py +0 -0
  141. {flowcept-0.9.11 → flowcept-0.9.15}/src/flowcept/commons/flowcept_logger.py +0 -0
  142. {flowcept-0.9.11 → flowcept-0.9.15}/src/flowcept/commons/query_utils.py +0 -0
  143. {flowcept-0.9.11 → flowcept-0.9.15}/src/flowcept/commons/settings_factory.py +0 -0
  144. {flowcept-0.9.11 → flowcept-0.9.15}/src/flowcept/commons/task_data_preprocess.py +0 -0
  145. {flowcept-0.9.11 → flowcept-0.9.15}/src/flowcept/commons/utils.py +0 -0
  146. {flowcept-0.9.11 → flowcept-0.9.15}/src/flowcept/commons/vocabulary.py +0 -0
  147. {flowcept-0.9.11 → flowcept-0.9.15}/src/flowcept/configs.py +0 -0
  148. {flowcept-0.9.11 → flowcept-0.9.15}/src/flowcept/flowcept_api/__init__.py +0 -0
  149. {flowcept-0.9.11 → flowcept-0.9.15}/src/flowcept/flowcept_api/db_api.py +0 -0
  150. {flowcept-0.9.11 → flowcept-0.9.15}/src/flowcept/flowcept_api/flowcept_controller.py +0 -0
  151. {flowcept-0.9.11 → flowcept-0.9.15}/src/flowcept/flowcept_api/task_query_api.py +0 -0
  152. {flowcept-0.9.11 → flowcept-0.9.15}/src/flowcept/flowcept_webserver/__init__.py +0 -0
  153. {flowcept-0.9.11 → flowcept-0.9.15}/src/flowcept/flowcept_webserver/app.py +0 -0
  154. {flowcept-0.9.11 → flowcept-0.9.15}/src/flowcept/flowcept_webserver/resources/__init__.py +0 -0
  155. {flowcept-0.9.11 → flowcept-0.9.15}/src/flowcept/flowcept_webserver/resources/query_rsrc.py +0 -0
  156. {flowcept-0.9.11 → flowcept-0.9.15}/src/flowcept/flowcept_webserver/resources/task_messages_rsrc.py +0 -0
  157. {flowcept-0.9.11 → flowcept-0.9.15}/src/flowcept/flowceptor/__init__.py +0 -0
  158. {flowcept-0.9.11 → flowcept-0.9.15}/src/flowcept/flowceptor/adapters/__init__.py +0 -0
  159. {flowcept-0.9.11 → flowcept-0.9.15}/src/flowcept/flowceptor/adapters/base_interceptor.py +0 -0
  160. {flowcept-0.9.11 → flowcept-0.9.15}/src/flowcept/flowceptor/adapters/brokers/__init__.py +0 -0
  161. {flowcept-0.9.11 → flowcept-0.9.15}/src/flowcept/flowceptor/adapters/brokers/mqtt_interceptor.py +0 -0
  162. {flowcept-0.9.11 → flowcept-0.9.15}/src/flowcept/flowceptor/adapters/dask/__init__.py +0 -0
  163. {flowcept-0.9.11 → flowcept-0.9.15}/src/flowcept/flowceptor/adapters/dask/dask_dataclasses.py +0 -0
  164. {flowcept-0.9.11 → flowcept-0.9.15}/src/flowcept/flowceptor/adapters/dask/dask_interceptor.py +0 -0
  165. {flowcept-0.9.11 → flowcept-0.9.15}/src/flowcept/flowceptor/adapters/dask/dask_plugins.py +0 -0
  166. {flowcept-0.9.11 → flowcept-0.9.15}/src/flowcept/flowceptor/adapters/instrumentation_interceptor.py +0 -0
  167. {flowcept-0.9.11 → flowcept-0.9.15}/src/flowcept/flowceptor/adapters/interceptor_state_manager.py +0 -0
  168. {flowcept-0.9.11 → flowcept-0.9.15}/src/flowcept/flowceptor/adapters/mlflow/__init__.py +0 -0
  169. {flowcept-0.9.11 → flowcept-0.9.15}/src/flowcept/flowceptor/adapters/mlflow/interception_event_handler.py +0 -0
  170. {flowcept-0.9.11 → flowcept-0.9.15}/src/flowcept/flowceptor/adapters/mlflow/mlflow_dao.py +0 -0
  171. {flowcept-0.9.11 → flowcept-0.9.15}/src/flowcept/flowceptor/adapters/mlflow/mlflow_dataclasses.py +0 -0
  172. {flowcept-0.9.11 → flowcept-0.9.15}/src/flowcept/flowceptor/adapters/mlflow/mlflow_interceptor.py +0 -0
  173. {flowcept-0.9.11 → flowcept-0.9.15}/src/flowcept/flowceptor/adapters/tensorboard/__init__.py +0 -0
  174. {flowcept-0.9.11 → flowcept-0.9.15}/src/flowcept/flowceptor/adapters/tensorboard/tensorboard_dataclasses.py +0 -0
  175. {flowcept-0.9.11 → flowcept-0.9.15}/src/flowcept/flowceptor/adapters/tensorboard/tensorboard_interceptor.py +0 -0
  176. {flowcept-0.9.11 → flowcept-0.9.15}/src/flowcept/flowceptor/consumers/__init__.py +0 -0
  177. {flowcept-0.9.11 → flowcept-0.9.15}/src/flowcept/flowceptor/consumers/agent/__init__.py +0 -0
  178. {flowcept-0.9.11 → flowcept-0.9.15}/src/flowcept/flowceptor/consumers/agent/base_agent_context_manager.py +0 -0
  179. {flowcept-0.9.11 → flowcept-0.9.15}/src/flowcept/flowceptor/consumers/base_consumer.py +0 -0
  180. {flowcept-0.9.11 → flowcept-0.9.15}/src/flowcept/flowceptor/consumers/consumer_utils.py +0 -0
  181. {flowcept-0.9.11 → flowcept-0.9.15}/src/flowcept/flowceptor/consumers/document_inserter.py +0 -0
  182. {flowcept-0.9.11 → flowcept-0.9.15}/src/flowcept/flowceptor/telemetry_capture.py +0 -0
  183. {flowcept-0.9.11 → flowcept-0.9.15}/src/flowcept/instrumentation/__init__.py +0 -0
  184. {flowcept-0.9.11 → flowcept-0.9.15}/src/flowcept/instrumentation/flowcept_agent_task.py +0 -0
  185. {flowcept-0.9.11 → flowcept-0.9.15}/src/flowcept/instrumentation/flowcept_decorator.py +0 -0
  186. {flowcept-0.9.11 → flowcept-0.9.15}/src/flowcept/instrumentation/flowcept_loop.py +0 -0
  187. {flowcept-0.9.11 → flowcept-0.9.15}/src/flowcept/instrumentation/flowcept_task.py +0 -0
  188. {flowcept-0.9.11 → flowcept-0.9.15}/src/flowcept/instrumentation/flowcept_torch.py +0 -0
  189. {flowcept-0.9.11 → flowcept-0.9.15}/src/flowcept/instrumentation/task_capture.py +0 -0
  190. {flowcept-0.9.11 → flowcept-0.9.15}/tests/__init__.py +0 -0
  191. {flowcept-0.9.11 → flowcept-0.9.15}/tests/adapters/__init__.py +0 -0
  192. {flowcept-0.9.11 → flowcept-0.9.15}/tests/adapters/dask_test_utils.py +0 -0
  193. {flowcept-0.9.11 → flowcept-0.9.15}/tests/adapters/test_broker.py +0 -0
  194. {flowcept-0.9.11 → flowcept-0.9.15}/tests/adapters/test_dask.py +0 -0
  195. {flowcept-0.9.11 → flowcept-0.9.15}/tests/adapters/test_dask_with_context_mgmt.py +0 -0
  196. {flowcept-0.9.11 → flowcept-0.9.15}/tests/adapters/test_file_observer.py +0 -0
  197. {flowcept-0.9.11 → flowcept-0.9.15}/tests/adapters/test_mlflow.py +0 -0
  198. {flowcept-0.9.11 → flowcept-0.9.15}/tests/adapters/test_tensorboard.py +0 -0
  199. {flowcept-0.9.11 → flowcept-0.9.15}/tests/api/__init__.py +0 -0
  200. {flowcept-0.9.11 → flowcept-0.9.15}/tests/api/db_api_test.py +0 -0
  201. {flowcept-0.9.11 → flowcept-0.9.15}/tests/api/flowcept_api_test.py +0 -0
  202. {flowcept-0.9.11 → flowcept-0.9.15}/tests/api/sample_data.json +0 -0
  203. {flowcept-0.9.11 → flowcept-0.9.15}/tests/api/sample_data_with_telemetry_and_rai.json +0 -0
  204. {flowcept-0.9.11 → flowcept-0.9.15}/tests/api/task_query_api_test.py +0 -0
  205. {flowcept-0.9.11 → flowcept-0.9.15}/tests/doc_db_inserter/__init__.py +0 -0
  206. {flowcept-0.9.11 → flowcept-0.9.15}/tests/doc_db_inserter/doc_db_inserter_test.py +0 -0
  207. {flowcept-0.9.11 → flowcept-0.9.15}/tests/instrumentation_tests/__init__.py +0 -0
  208. {flowcept-0.9.11 → flowcept-0.9.15}/tests/instrumentation_tests/flowcept_explicit_tasks.py +0 -0
  209. {flowcept-0.9.11 → flowcept-0.9.15}/tests/instrumentation_tests/flowcept_loop_test.py +0 -0
  210. {flowcept-0.9.11 → flowcept-0.9.15}/tests/instrumentation_tests/flowcept_task_decorator_test.py +0 -0
  211. {flowcept-0.9.11 → flowcept-0.9.15}/tests/instrumentation_tests/ml_tests/__init__.py +0 -0
  212. {flowcept-0.9.11 → flowcept-0.9.15}/tests/instrumentation_tests/ml_tests/dl_trainer.py +0 -0
  213. {flowcept-0.9.11 → flowcept-0.9.15}/tests/instrumentation_tests/ml_tests/ml_decorator_dask_test.py +0 -0
  214. {flowcept-0.9.11 → flowcept-0.9.15}/tests/instrumentation_tests/ml_tests/ml_decorator_test.py +0 -0
  215. {flowcept-0.9.11 → flowcept-0.9.15}/tests/misc_tests/__init__.py +0 -0
  216. {flowcept-0.9.11 → flowcept-0.9.15}/tests/misc_tests/log_test.py +0 -0
  217. {flowcept-0.9.11 → flowcept-0.9.15}/tests/misc_tests/singleton_test.py +0 -0
  218. {flowcept-0.9.11 → flowcept-0.9.15}/tests/misc_tests/telemetry_test.py +0 -0
@@ -46,6 +46,7 @@ clean:
46
46
  @find . -type f -name "*nohup*" -exec sh -c 'rm -f "$$@" 2>/dev/null || true' sh {} +
47
47
  @sh -c 'sphinx-build -M clean docs docs/_build > /dev/null 2>&1 || true'
48
48
  @sh -c 'rm -f docs/generated/* 2>/dev/null || true'
49
+ @sh -c 'rm -f docs/_build/* 2>/dev/null || true'
49
50
 
50
51
  # Build the HTML documentation using Sphinx
51
52
  .PHONY: docs
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: flowcept
3
- Version: 0.9.11
3
+ Version: 0.9.15
4
4
  Summary: Capture and query workflow provenance data using data observability
5
5
  Author: Oak Ridge National Laboratory
6
6
  License-Expression: MIT
@@ -149,11 +149,16 @@ Description-Content-Type: text/markdown
149
149
 
150
150
  <p align="center">
151
151
  <picture>
152
+ <!-- Dark theme -->
153
+ <source srcset="./docs/img/flowcept-logo-dark.png" media="(prefers-color-scheme: dark)" />
154
+ <!-- Light theme -->
155
+ <source srcset="./docs/img/flowcept-logo.png" media="(prefers-color-scheme: light)" />
156
+ <!-- Fallback -->
152
157
  <img src="./docs/img/flowcept-logo.png" alt="Flowcept Logo" width="200"/>
153
158
  </picture>
154
159
  </p>
155
- <h3 align="center">Lightweight Distributed Workflow Provenance</h3>
156
160
 
161
+ <h3 align="center">Lightweight Distributed Workflow Provenance</h3>
157
162
 
158
163
 
159
164
  ---
@@ -162,6 +167,7 @@ Flowcept captures and queries workflow provenance at runtime with minimal code c
162
167
 
163
168
  ---
164
169
 
170
+
165
171
  [![Documentation](https://img.shields.io/badge/docs-readthedocs.io-green.svg)](https://flowcept.readthedocs.io/)
166
172
  [![Build](https://github.com/ORNL/flowcept/actions/workflows/create-release-n-publish.yml/badge.svg)](https://github.com/ORNL/flowcept/actions/workflows/create-release-n-publish.yml)
167
173
  [![PyPI](https://badge.fury.io/py/flowcept.svg)](https://pypi.org/project/flowcept)
@@ -169,6 +175,15 @@ Flowcept captures and queries workflow provenance at runtime with minimal code c
169
175
  [![Code Formatting](https://github.com/ORNL/flowcept/actions/workflows/checks.yml/badge.svg?branch=dev)](https://github.com/ORNL/flowcept/actions/workflows/checks.yml)
170
176
  [![License: MIT](https://img.shields.io/github/license/ORNL/flowcept)](LICENSE)
171
177
 
178
+
179
+
180
+
181
+ <h4 align="center">
182
+ <a href="https://flowcept.readthedocs.io/">Documentation</a> &#8226;
183
+ <a href="./docs/publications">Publications</a>
184
+ </h4>
185
+
186
+
172
187
  ---
173
188
 
174
189
  # Quickstart
@@ -1,10 +1,15 @@
1
1
  <p align="center">
2
2
  <picture>
3
+ <!-- Dark theme -->
4
+ <source srcset="./docs/img/flowcept-logo-dark.png" media="(prefers-color-scheme: dark)" />
5
+ <!-- Light theme -->
6
+ <source srcset="./docs/img/flowcept-logo.png" media="(prefers-color-scheme: light)" />
7
+ <!-- Fallback -->
3
8
  <img src="./docs/img/flowcept-logo.png" alt="Flowcept Logo" width="200"/>
4
9
  </picture>
5
10
  </p>
6
- <h3 align="center">Lightweight Distributed Workflow Provenance</h3>
7
11
 
12
+ <h3 align="center">Lightweight Distributed Workflow Provenance</h3>
8
13
 
9
14
 
10
15
  ---
@@ -13,6 +18,7 @@ Flowcept captures and queries workflow provenance at runtime with minimal code c
13
18
 
14
19
  ---
15
20
 
21
+
16
22
  [![Documentation](https://img.shields.io/badge/docs-readthedocs.io-green.svg)](https://flowcept.readthedocs.io/)
17
23
  [![Build](https://github.com/ORNL/flowcept/actions/workflows/create-release-n-publish.yml/badge.svg)](https://github.com/ORNL/flowcept/actions/workflows/create-release-n-publish.yml)
18
24
  [![PyPI](https://badge.fury.io/py/flowcept.svg)](https://pypi.org/project/flowcept)
@@ -20,6 +26,15 @@ Flowcept captures and queries workflow provenance at runtime with minimal code c
20
26
  [![Code Formatting](https://github.com/ORNL/flowcept/actions/workflows/checks.yml/badge.svg?branch=dev)](https://github.com/ORNL/flowcept/actions/workflows/checks.yml)
21
27
  [![License: MIT](https://img.shields.io/github/license/ORNL/flowcept)](LICENSE)
22
28
 
29
+
30
+
31
+
32
+ <h4 align="center">
33
+ <a href="https://flowcept.readthedocs.io/">Documentation</a> &#8226;
34
+ <a href="./docs/publications">Publications</a>
35
+ </h4>
36
+
37
+
23
38
  ---
24
39
 
25
40
  # Quickstart
@@ -1,31 +1,39 @@
1
1
  # Configuration file for the Sphinx documentation builder.
2
2
  #
3
- # For the full list of built-in configuration values, see the documentation:
4
3
  # https://www.sphinx-doc.org/en/master/usage/configuration.html
5
4
 
6
5
  # -- Project information -----------------------------------------------------
7
- # https://www.sphinx-doc.org/en/master/usage/configuration.html#project-information
8
-
9
6
  project = "Flowcept"
10
7
  copyright = "Oak Ridge National Lab"
11
8
  author = "Oak Ridge National Lab"
12
9
 
13
10
  # -- General configuration ---------------------------------------------------
14
- # https://www.sphinx-doc.org/en/master/usage/configuration.html#general-configuration
15
-
16
11
  extensions = [
17
12
  "sphinx.ext.autodoc",
18
13
  "sphinx.ext.autosummary",
19
14
  ]
20
-
21
15
  autosummary_generate = True
22
16
  templates_path = ["_templates"]
23
17
  exclude_patterns = ["_build", "Thumbs.db", ".DS_Store"]
24
18
 
25
- # -- Options for HTML output -------------------------------------------------
26
- # https://www.sphinx-doc.org/en/master/usage/configuration.html#options-for-html-output
27
-
19
+ # -- HTML output -------------------------------------------------------------
28
20
  html_theme = "furo"
29
21
  html_title = "Flowcept"
22
+
23
+ # Keep using your existing 'img' folder as the static path so you don't have to move files.
24
+ # Sphinx will treat everything inside 'img/' as static assets.
30
25
  html_static_path = ["img"]
31
- html_logo = "img/flowcept-logo.png"
26
+
27
+ # Furo supports automatic dark/light logo switching.
28
+ # IMPORTANT: Paths below are relative to the *root* of each static path ('img' here),
29
+ # so do NOT prefix with 'img/'.
30
+ html_theme_options = {
31
+ "light_logo": "flowcept-logo.png",
32
+ "dark_logo": "flowcept-logo-dark.png",
33
+ # Optional extras:
34
+ "sidebar_hide_name": True,
35
+ # "light_css_variables": {},
36
+ # "dark_css_variables": {},
37
+ }
38
+
39
+ # html_logo = "img/flowcept-logo.png
@@ -0,0 +1,49 @@
1
+ Flowcept
2
+ ========
3
+
4
+ .. raw:: html
5
+
6
+ <style>
7
+ /* Show/hide logos based on Furo's theme attribute */
8
+ .logo-light { display: inline; }
9
+ .logo-dark { display: none; }
10
+
11
+ html[data-theme="dark"] .logo-light { display: none; }
12
+ html[data-theme="dark"] .logo-dark { display: inline; }
13
+
14
+ /* When Furo is in 'auto', follow the OS preference */
15
+ html[data-theme="auto"] .logo-light { display: inline; }
16
+ html[data-theme="auto"] .logo-dark { display: none; }
17
+ @media (prefers-color-scheme: dark) {
18
+ html[data-theme="auto"] .logo-light { display: none; }
19
+ html[data-theme="auto"] .logo-dark { display: inline; }
20
+ }
21
+ </style>
22
+
23
+ <p align="center">
24
+ <!-- Keep both images in the DOM and toggle via CSS -->
25
+ <img src="_static/flowcept-logo.png" alt="Flowcept Logo" width="200" class="logo-light">
26
+ <img src="_static/flowcept-logo-dark.png" alt="Flowcept Logo (Dark)" width="200" class="logo-dark">
27
+ </p>
28
+
29
+ .. image:: https://img.shields.io/badge/GitHub-Flowcept-black?logo=github&logoColor=white
30
+ :target: https://github.com/ORNL/flowcept
31
+ :alt: GitHub
32
+ :align: center
33
+ :width: 120px
34
+
35
+ .. toctree::
36
+ :maxdepth: 2
37
+ :caption: Contents:
38
+
39
+ quick_start
40
+ architecture
41
+ setup
42
+ prov_capture
43
+ telemetry_capture
44
+ prov_storage
45
+ prov_query
46
+ schemas
47
+ contributing
48
+ cli-reference
49
+ api-reference
@@ -70,6 +70,7 @@ Dump the buffer (during or at the end of a run):
70
70
  f.dump_buffer() # uses settings path
71
71
  f.dump_buffer("my_buffer.jsonl") # custom path
72
72
 
73
+
73
74
  Read the buffer file later (as list or DataFrame):
74
75
 
75
76
  .. code-block:: python
@@ -85,6 +86,7 @@ Read the buffer file later (as list or DataFrame):
85
86
  # 3) DataFrame with dotted columns (normalized)
86
87
  df_norm = Flowcept.read_buffer_file("flowcept_buffer.jsonl", return_df=True, normalize_df=True)
87
88
 
89
+
88
90
  Delete a buffer file if needed:
89
91
 
90
92
  .. code-block:: python
@@ -93,6 +95,7 @@ Delete a buffer file if needed:
93
95
  Flowcept.delete_buffer_file() # deletes default path from settings
94
96
  Flowcept.delete_buffer_file("my_buffer.jsonl")
95
97
 
98
+
96
99
  .. note::
97
100
 
98
101
  The file-based method is **best suited for offline mode** or small, centralized runs.
@@ -104,6 +107,7 @@ Delete a buffer file if needed:
104
107
  captured provenance into a single database automatically.
105
108
  Alternatively, implement a **custom consumer** to centralize message ingestion and
106
109
  enable real-time analysis.
110
+
107
111
  See also
108
112
  ^^^^^^^^
109
113
 
@@ -169,6 +173,7 @@ This can serve as a template for building custom provenance consumers.
169
173
  consumer = MyConsumer()
170
174
  consumer.start(daemon=False)
171
175
 
176
+
172
177
  **Notes**:
173
178
 
174
179
  - See also: `Explicit publish example <file:///Users/rsr/Documents/GDrive/ORNL/dev/flowcept/docs/_build/html/prov_capture.html#custom-task-creation-fully-customizable>`_
@@ -0,0 +1,91 @@
1
+
2
+ ### Flowcept Papers
3
+
4
+ Bibtex is available below.
5
+
6
+ ---
7
+
8
+ **Towards Lightweight Data Integration using Multi-workflow Provenance and Data Observability**
9
+ R. Souza, T. J. Skluzacek, S. R. Wilkinson, M. Ziatdinov, and R. Ferreira da Silva,
10
+ *IEEE International Conference on e-Science*, Limassol, Cyprus, 2023.
11
+ doi: [10.1109/e-Science58273.2023.10254822](https://doi.org/10.1109/e-Science58273.2023.10254822)
12
+ PDF: https://arxiv.org/pdf/2308.09004.pdf
13
+
14
+ ---
15
+
16
+ **PROV-AGENT: Unified Provenance for Tracking AI Agent Interactions in Agentic Workflows**
17
+ R. Souza, A. Gueroudji, S. DeWitt, D. Rosendo, T. Ghosal, R. Ross, P. Balaprakash, and R. Ferreira da Silva,
18
+ *IEEE International Conference on e-Science*, Chicago, USA., 2025.
19
+ Publisher: IEEE.
20
+ PDF: https://arxiv.org/pdf/2508.02866
21
+
22
+ ---
23
+
24
+ **Workflow Provenance in the Computing Continuum for Responsible, Trustworthy, and Energy-Efficient AI**
25
+ R. Souza, S. Caino-Lores, M. Coletti, T. J. Skluzacek, A. Costan, F. Suter, M. Mattoso, and R. Ferreira da Silva,
26
+ *IEEE International Conference on e-Science*, Osaka, Japan, 2024.
27
+ doi: [10.1109/e-Science62913.2024.10678731](https://doi.org/10.1109/e-Science62913.2024.10678731)
28
+ PDF: https://hal.science/hal-04902079v1/document
29
+
30
+ ---
31
+
32
+ **LLM Agents for Interactive Workflow Provenance: Reference Architecture and Evaluation Methodology**
33
+ R. Souza, T. Poteet, B. Etz, D. Rosendo, A. Gueroudji, W. Shin, P. Balaprakash, and R. Ferreira da Silva,
34
+ *Workflows in Support of Large-Scale Science (WORKS) co-located with the ACM/IEEE International Conference for High Performance Computing, Networking, Storage, and Analysis (SC)*, St. Louis, USA, 2025.
35
+ doi: [10.1145/3731599.3767582](https://doi.org/10.1145/3731599.3767582)
36
+
37
+ ### Bixtex
38
+
39
+ ```
40
+ @inproceedings{souza2023towards,
41
+ title={Towards Lightweight Data Integration using Multi-workflow Provenance and Data Observability},
42
+ author={Souza, Renan and Skluzacek, Tyler J and Wilkinson, Sean R and Ziatdinov, Maxim and da Silva, Rafael Ferreira},
43
+ booktitle={IEEE International Conference on e-Science},
44
+ doi={10.1109/e-Science58273.2023.10254822},
45
+ url={https://doi.org/10.1109/e-Science58273.2023.10254822},
46
+ pdf={https://arxiv.org/pdf/2308.09004.pdf},
47
+ year={2023},
48
+ abstract={Modern large-scale scientific discovery requires multidisciplinary collaboration across diverse computing facilities, including High Performance Computing (HPC) machines and the Edge-to-Cloud continuum. Integrated data analysis plays a crucial role in scientific discovery, especially in the current AI era, by enabling Responsible AI development, FAIR, Reproducibility, and User Steering. However, the heterogeneous nature of science poses challenges such as dealing with multiple supporting tools, cross-facility environments, and efficient HPC execution. Building on data observability, adapter system design, and provenance, we propose MIDA: an approach for lightweight runtime Multi-workflow Integrated Data Analysis. MIDA defines data observability strategies and adaptability methods for various parallel systems and machine learning tools. With observability, it intercepts the dataflows in the background without requiring instrumentation while integrating domain, provenance, and telemetry data at runtime into a unified database ready for user steering queries. We conduct experiments showing end-to-end multi-workflow analysis integrating data from Dask and MLFlow in a real distributed deep learning use case for materials science that runs on multiple environments with up to 276 GPUs in parallel. We show near-zero overhead running up to 100,000 tasks on 1,680 CPU cores on the Summit supercomputer.}
49
+ }
50
+
51
+ ```
52
+
53
+ ```latex
54
+ @inproceedings{souza_prov_agent_2025,
55
+ author = {Renan Souza and Amal Gueroudji and Stephen DeWitt and Daniel Rosendo and Tirthankar Ghosal and Robert Ross and Prasanna Balaprakash and Rafael Ferreira da Silva},
56
+ title = {PROV-AGENT: Unified Provenance for Tracking {AI} Agent Interactions in Agentic Workflows},
57
+ booktitle = {IEEE International Conference on e-Science},
58
+ year = {2025},
59
+ pdf = {https://arxiv.org/pdf/2508.02866},
60
+ publisher = {IEEE},
61
+ keywords = {Workflows, Agentic Workflows, Provenance, Lineage, Responsible AI, LLM, Agentic AI},
62
+ abstract = {Large Language Models (LLMs) and other foundation models are increasingly used as the core of AI agents. In agentic workflows, these agents plan tasks, interact with humans and peers, and influence scientific outcomes across federated and heterogeneous environments. However, agents can hallucinate or reason incorrectly, propagating errors when one agent's output becomes another's input. Thus, assuring that agents' actions are transparent, traceable, reproducible, and reliable is critical to assess hallucination risks and mitigate their workflow impacts. While provenance techniques have long supported these principles, existing methods fail to capture and relate agent-centric metadata such as prompts, responses, and decisions with the broader workflow context and downstream outcomes. In this paper, we introduce PROV-AGENT, a provenance model that extends W3C PROV and leverages the Model Context Protocol (MCP) and data observability to integrate agent interactions into end-to-end workflow provenance. Our contributions include: (1) a provenance model tailored for agentic workflows, (2) a near real-time, open-source system for capturing agentic provenance, and (3) a cross-facility evaluation spanning edge, cloud, and HPC environments, demonstrating support for critical provenance queries and agent reliability analysis.}
63
+ }
64
+ ```
65
+
66
+ ```latex
67
+ @inproceedings{souza_rtai_2024,
68
+ author = {Renan Souza and Silvina Caino-Lores and Mark Coletti and Tyler J. Skluzacek and Alexandru Costan and Frederic Suter and Marta Mattoso and Rafael Ferreira da Silva},
69
+ title = {Workflow Provenance in the Computing Continuum for Responsible, Trustworthy, and Energy-Efficient {AI}},
70
+ booktitle = {IEEE International Conference on e-Science},
71
+ year = {2024},
72
+ location = {Osaka, Japan},
73
+ doi = {https://doi.org/10.1109/e-Science62913.2024.10678731},
74
+ pdf = {https://hal.science/hal-04902079v1/document},
75
+ publisher = {IEEE},
76
+ keywords = {Artificial Intelligence, Provenance, Machine Learning, AI workflows, ML workflows, Responsible AI, Trustworthy AI, Reproducibility, AI Lifecycle, Energy-efficient AI},
77
+ abstract = {As Artificial Intelligence (AI) becomes more pervasive in our society, it is crucial to develop, deploy, and assess Responsible and Trustworthy AI (RTAI) models, i.e., those that consider not only accuracy but also other aspects, such as explainability, fairness, and energy efficiency. Workflow provenance data have historically enabled critical capabilities towards RTAI. Provenance data derivation paths contribute to responsible workflows through transparency in tracking artifacts and resource consumption. Provenance data are well-known for their trustworthiness, helping explainability, reproducibility, and accountability. However, there are complex challenges to achieving RTAI, which are further complicated by the heterogeneous infrastructure in the computing continuum (Edge-Cloud-HPC) used to develop and deploy models. As a result, a significant research and development gap remains between workflow provenance data management and RTAI. In this paper, we present a vision of the pivotal role of workflow provenance in supporting RTAI and discuss related challenges. We present a schematic view of the relationship between RTAI and provenance, and highlight open research directions.}
78
+ }
79
+ ```
80
+
81
+ ```latex
82
+ @inproceedings{souza_llm_agents_works_sc25,
83
+ title = {{LLM} Agents for Interactive Workflow Provenance: Reference Architecture and Evaluation Methodology},
84
+ author = {Souza, Renan and Poteet, Timothy and Etz, Brian and Rosendo, Daniel and Gueroudji, Amal and others},
85
+ booktitle = {Workflows in Support of Large-Scale Science ({WORKS}) co-located with the {ACM}/{IEEE} International Conference for High Performance Computing, Networking, Storage, and Analysis ({SC})},
86
+ year = {2025},
87
+ address = {St Louis, MO, USA},
88
+ doi = {10.1145/3731599.3767582},
89
+ keywords = {scientific workflows, provenance, LLM agents, Large language models, AI agents, agentic workflows, agentic provenance}
90
+ }
91
+ ```
@@ -1,4 +1,4 @@
1
- flowcept_version: 0.9.11 # Version of the Flowcept package. This setting file is compatible with this version.
1
+ flowcept_version: 0.9.15 # Version of the Flowcept package. This setting file is compatible with this version.
2
2
 
3
3
  project:
4
4
  debug: true # Toggle debug mode. This will add a property `debug: true` to all saved data, making it easier to retrieve/delete them later.
@@ -66,7 +66,7 @@ def init_settings(full: bool = False):
66
66
  settings_path_env = os.getenv("FLOWCEPT_SETTINGS_PATH", None)
67
67
  if settings_path_env is not None:
68
68
  print(f"FLOWCEPT_SETTINGS_PATH environment variable is set to {settings_path_env}.")
69
- dest_path = settings_path_env
69
+ dest_path = Path(settings_path_env)
70
70
  else:
71
71
  dest_path = Path(os.path.join(configs._SETTINGS_DIR, "settings.yaml"))
72
72
 
@@ -4,4 +4,4 @@
4
4
  # The expected format is: <Major>.<Minor>.<Patch>
5
5
  # This file is supposed to be automatically modified by the CI Bot.
6
6
  # See .github/workflows/version_bumper.py
7
- __version__ = "0.9.11"
7
+ __version__ = "0.9.15"
@@ -1,29 +0,0 @@
1
- Flowcept
2
- ========
3
-
4
- .. image:: img/flowcept-logo.png
5
- :alt: Flowcept Logo
6
- :align: center
7
- :width: 200px
8
-
9
- .. image:: https://img.shields.io/badge/GitHub-Flowcept-black?logo=github&logoColor=white
10
- :target: https://github.com/ORNL/flowcept
11
- :alt: GitHub
12
- :align: center
13
- :width: 120px
14
-
15
- .. toctree::
16
- :maxdepth: 2
17
- :caption: Contents:
18
-
19
- quick_start
20
- architecture
21
- setup
22
- prov_capture
23
- telemetry_capture
24
- prov_storage
25
- prov_query
26
- schemas
27
- contributing
28
- cli-reference
29
- api-reference
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