LICENSE
README.md
pyproject.toml
docs/release/PYPI_DESC.md
src/sovara/__init__.py
src/sovara.egg-info/PKG-INFO
src/sovara.egg-info/SOURCES.txt
src/sovara.egg-info/dependency_links.txt
src/sovara.egg-info/entry_points.txt
src/sovara.egg-info/requires.txt
src/sovara.egg-info/top_level.txt
src/sovara/assets/SKILL.md
src/sovara/assets/__init__.py
src/sovara/assets/default_runs.sqlite
src/sovara/assets/web_app/favicon-colour.png
src/sovara/assets/web_app/favicon.png
src/sovara/assets/web_app/index.html
src/sovara/assets/web_app/marketplace_icon.png
src/sovara/assets/web_app/assets/AnnotationRoute-CE3twxG9.js
src/sovara/assets/web_app/assets/AnnotationRoute-voBIuZUX.css
src/sovara/assets/web_app/assets/AttachmentPreview-CFrNMdfC.css
src/sovara/assets/web_app/assets/AttachmentPreview-plYzPaRE.js
src/sovara/assets/web_app/assets/DocumentPreviewModal-BFdSPROi.js
src/sovara/assets/web_app/assets/KaTeX_AMS-Regular-BQhdFMY1.woff2
src/sovara/assets/web_app/assets/KaTeX_AMS-Regular-DMm9YOAa.woff
src/sovara/assets/web_app/assets/KaTeX_AMS-Regular-DRggAlZN.ttf
src/sovara/assets/web_app/assets/KaTeX_Caligraphic-Bold-ATXxdsX0.ttf
src/sovara/assets/web_app/assets/KaTeX_Caligraphic-Bold-BEiXGLvX.woff
src/sovara/assets/web_app/assets/KaTeX_Caligraphic-Bold-Dq_IR9rO.woff2
src/sovara/assets/web_app/assets/KaTeX_Caligraphic-Regular-CTRA-rTL.woff
src/sovara/assets/web_app/assets/KaTeX_Caligraphic-Regular-Di6jR-x-.woff2
src/sovara/assets/web_app/assets/KaTeX_Caligraphic-Regular-wX97UBjC.ttf
src/sovara/assets/web_app/assets/KaTeX_Fraktur-Bold-BdnERNNW.ttf
src/sovara/assets/web_app/assets/KaTeX_Fraktur-Bold-BsDP51OF.woff
src/sovara/assets/web_app/assets/KaTeX_Fraktur-Bold-CL6g_b3V.woff2
src/sovara/assets/web_app/assets/KaTeX_Fraktur-Regular-CB_wures.ttf
src/sovara/assets/web_app/assets/KaTeX_Fraktur-Regular-CTYiF6lA.woff2
src/sovara/assets/web_app/assets/KaTeX_Fraktur-Regular-Dxdc4cR9.woff
src/sovara/assets/web_app/assets/KaTeX_Main-Bold-Cx986IdX.woff2
src/sovara/assets/web_app/assets/KaTeX_Main-Bold-Jm3AIy58.woff
src/sovara/assets/web_app/assets/KaTeX_Main-Bold-waoOVXN0.ttf
src/sovara/assets/web_app/assets/KaTeX_Main-BoldItalic-DxDJ3AOS.woff2
src/sovara/assets/web_app/assets/KaTeX_Main-BoldItalic-DzxPMmG6.ttf
src/sovara/assets/web_app/assets/KaTeX_Main-BoldItalic-SpSLRI95.woff
src/sovara/assets/web_app/assets/KaTeX_Main-Italic-3WenGoN9.ttf
src/sovara/assets/web_app/assets/KaTeX_Main-Italic-BMLOBm91.woff
src/sovara/assets/web_app/assets/KaTeX_Main-Italic-NWA7e6Wa.woff2
src/sovara/assets/web_app/assets/KaTeX_Main-Regular-B22Nviop.woff2
src/sovara/assets/web_app/assets/KaTeX_Main-Regular-Dr94JaBh.woff
src/sovara/assets/web_app/assets/KaTeX_Main-Regular-ypZvNtVU.ttf
src/sovara/assets/web_app/assets/KaTeX_Math-BoldItalic-B3XSjfu4.ttf
src/sovara/assets/web_app/assets/KaTeX_Math-BoldItalic-CZnvNsCZ.woff2
src/sovara/assets/web_app/assets/KaTeX_Math-BoldItalic-iY-2wyZ7.woff
src/sovara/assets/web_app/assets/KaTeX_Math-Italic-DA0__PXp.woff
src/sovara/assets/web_app/assets/KaTeX_Math-Italic-flOr_0UB.ttf
src/sovara/assets/web_app/assets/KaTeX_Math-Italic-t53AETM-.woff2
src/sovara/assets/web_app/assets/KaTeX_SansSerif-Bold-CFMepnvq.ttf
src/sovara/assets/web_app/assets/KaTeX_SansSerif-Bold-D1sUS0GD.woff2
src/sovara/assets/web_app/assets/KaTeX_SansSerif-Bold-DbIhKOiC.woff
src/sovara/assets/web_app/assets/KaTeX_SansSerif-Italic-C3H0VqGB.woff2
src/sovara/assets/web_app/assets/KaTeX_SansSerif-Italic-DN2j7dab.woff
src/sovara/assets/web_app/assets/KaTeX_SansSerif-Italic-YYjJ1zSn.ttf
src/sovara/assets/web_app/assets/KaTeX_SansSerif-Regular-BNo7hRIc.ttf
src/sovara/assets/web_app/assets/KaTeX_SansSerif-Regular-CS6fqUqJ.woff
src/sovara/assets/web_app/assets/KaTeX_SansSerif-Regular-DDBCnlJ7.woff2
src/sovara/assets/web_app/assets/KaTeX_Script-Regular-C5JkGWo-.ttf
src/sovara/assets/web_app/assets/KaTeX_Script-Regular-D3wIWfF6.woff2
src/sovara/assets/web_app/assets/KaTeX_Script-Regular-D5yQViql.woff
src/sovara/assets/web_app/assets/KaTeX_Size1-Regular-C195tn64.woff
src/sovara/assets/web_app/assets/KaTeX_Size1-Regular-Dbsnue_I.ttf
src/sovara/assets/web_app/assets/KaTeX_Size1-Regular-mCD8mA8B.woff2
src/sovara/assets/web_app/assets/KaTeX_Size2-Regular-B7gKUWhC.ttf
src/sovara/assets/web_app/assets/KaTeX_Size2-Regular-Dy4dx90m.woff2
src/sovara/assets/web_app/assets/KaTeX_Size2-Regular-oD1tc_U0.woff
src/sovara/assets/web_app/assets/KaTeX_Size3-Regular-CTq5MqoE.woff
src/sovara/assets/web_app/assets/KaTeX_Size3-Regular-DgpXs0kz.ttf
src/sovara/assets/web_app/assets/KaTeX_Size4-Regular-BF-4gkZK.woff
src/sovara/assets/web_app/assets/KaTeX_Size4-Regular-DWFBv043.ttf
src/sovara/assets/web_app/assets/KaTeX_Size4-Regular-Dl5lxZxV.woff2
src/sovara/assets/web_app/assets/KaTeX_Typewriter-Regular-C0xS9mPB.woff
src/sovara/assets/web_app/assets/KaTeX_Typewriter-Regular-CO6r4hn1.woff2
src/sovara/assets/web_app/assets/KaTeX_Typewriter-Regular-D3Ib7_Hf.ttf
src/sovara/assets/web_app/assets/LayoutBreadcrumb-DQfjpJp6.js
src/sovara/assets/web_app/assets/LayoutBreadcrumb-Di8BFf6J.css
src/sovara/assets/web_app/assets/OrgRoute-C6PvXMBj.js
src/sovara/assets/web_app/assets/OrgRoute-Syy1k3se.css
src/sovara/assets/web_app/assets/PriorsRoute-BFKg8GE_.css
src/sovara/assets/web_app/assets/PriorsRoute-CvQs_UGM.js
src/sovara/assets/web_app/assets/ProjectRoute-C3Jzk4jL.css
src/sovara/assets/web_app/assets/ProjectRoute-CrWY3I2q.js
src/sovara/assets/web_app/assets/ProjectRunsRoute-BWJaCbdU.js
src/sovara/assets/web_app/assets/RunRoute-Bf1i1Jzu.js
src/sovara/assets/web_app/assets/RunTabsHeader-BFdSaCHq.js
src/sovara/assets/web_app/assets/RunTabsHeader-CCiRiliL.css
src/sovara/assets/web_app/assets/SettingsRoute-CaCQ4pWX.js
src/sovara/assets/web_app/assets/api-BHNyGAe0.js
src/sovara/assets/web_app/assets/arrow_lr-ByI2ndPB.png
src/sovara/assets/web_app/assets/arrow_spiral_tr_bl-XHIpf338.png
src/sovara/assets/web_app/assets/codicon-BYm2YbZ6.ttf
src/sovara/assets/web_app/assets/eye-BRRCRKsr.js
src/sovara/assets/web_app/assets/index-CaNmZMjl.css
src/sovara/assets/web_app/assets/index-FFvomyuN.js
src/sovara/assets/web_app/assets/pdf.worker.min-qwK7q_zL.mjs
src/sovara/assets/web_app/assets/plus-StJOlCLf.js
src/sovara/assets/web_app/assets/prismTheme-DRzlLkhr.js
src/sovara/assets/web_app/assets/projectRuns-B4uZ9L5w.js
src/sovara/assets/web_app/assets/projectRuns-D7mGuqzb.css
src/sovara/assets/web_app/assets/settings-Br0my5v3.js
src/sovara/assets/web_app/assets/settings-CZdC8p_Y.css
src/sovara/assets/web_app/assets/sovara_favicon_colour-BrB8E1K-.png
src/sovara/assets/web_app/assets/sovara_full_logo_dark_green-DUVlz28Y.svg
src/sovara/assets/web_app/assets/sovara_full_logo_light_green-CZc0oGc4.svg
src/sovara/assets/web_app/assets/tierState-DObTMUxC.js
src/sovara/assets/web_app/assets/tiny-invariant-BCXflckp.js
src/sovara/assets/web_app/assets/trash-2-BiGQZCMf.js
src/sovara/assets/web_app/assets/useRunViewLayout-D1NwHTvJ.css
src/sovara/assets/web_app/assets/useRunViewLayout-Db3uX16H.js
src/sovara/assets/web_app/assets/value-BlJoDf9S.js
src/sovara/cli/__init__.py
src/sovara/cli/so_claude.py
src/sovara/cli/so_config.py
src/sovara/cli/so_record.py
src/sovara/cli/so_server.py
src/sovara/cli/so_tool.py
src/sovara/common/__init__.py
src/sovara/common/annotations.py
src/sovara/common/config.py
src/sovara/common/constants.py
src/sovara/common/custom_metrics.py
src/sovara/common/edit_io_exclude_patterns.json
src/sovara/common/endpoint_patterns.json
src/sovara/common/lifecycle.py
src/sovara/common/log_redaction.py
src/sovara/common/logger.py
src/sovara/common/node_naming.py
src/sovara/common/priors_block.py
src/sovara/common/priors_block_guidance.json
src/sovara/common/project.py
src/sovara/common/run_logs.py
src/sovara/common/runtime.py
src/sovara/common/user.py
src/sovara/common/utils.py
src/sovara/runner/__init__.py
src/sovara/runner/agent_runner.py
src/sovara/runner/claude_code_runner.py
src/sovara/runner/context_manager.py
src/sovara/runner/priors.py
src/sovara/runner/public.py
src/sovara/runner/request_mutation.py
src/sovara/runner/run_log_capture.py
src/sovara/runner/runtime_client.py
src/sovara/runner/monkey_patching/__init__.py
src/sovara/runner/monkey_patching/api_parser.py
src/sovara/runner/monkey_patching/apply_monkey_patches.py
src/sovara/runner/monkey_patching/async_streaming.py
src/sovara/runner/monkey_patching/endpoint_whitelist.py
src/sovara/runner/monkey_patching/patching_utils.py
src/sovara/runner/monkey_patching/to_show_filters.py
src/sovara/runner/monkey_patching/tool_trace_utils.py
src/sovara/runner/monkey_patching/api_parsers/__init__.py
src/sovara/runner/monkey_patching/api_parsers/aiohttp_api_parser.py
src/sovara/runner/monkey_patching/api_parsers/claude_code_messages_api_parser.py
src/sovara/runner/monkey_patching/api_parsers/httpx_api_parser.py
src/sovara/runner/monkey_patching/api_parsers/mcp_api_parser.py
src/sovara/runner/monkey_patching/api_parsers/requests_api_parser.py
src/sovara/runner/monkey_patching/api_parsers/sse_utils.py
src/sovara/runner/monkey_patching/api_parsers/urllib3_api_parser.py
src/sovara/runner/monkey_patching/patches/__init__.py
src/sovara/runner/monkey_patching/patches/adk_patch.py
src/sovara/runner/monkey_patching/patches/aiohttp_patch.py
src/sovara/runner/monkey_patching/patches/claude_sdk_patch.py
src/sovara/runner/monkey_patching/patches/httpx_patch.py
src/sovara/runner/monkey_patching/patches/langchain_patch.py
src/sovara/runner/monkey_patching/patches/mcp_patches.py
src/sovara/runner/monkey_patching/patches/openai_agents_patch.py
src/sovara/runner/monkey_patching/patches/requests_patch.py
src/sovara/runner/monkey_patching/patches/urllib3_patch.py
src/sovara/server/__init__.py
src/sovara/server/app.py
src/sovara/server/claude_proxy_utils.py
src/sovara/server/graph_models.py
src/sovara/server/llm_backend.py
src/sovara/server/llm_provider_catalog.py
src/sovara/server/llm_settings.py
src/sovara/server/llm_settings_verification.py
src/sovara/server/package_version.py
src/sovara/server/prior_display.py
src/sovara/server/priors_pipeline.py
src/sovara/server/priors_scope.py
src/sovara/server/recording.py
src/sovara/server/runtime_preparation.py
src/sovara/server/state.py
src/sovara/server/third_party_model_catalog.py
src/sovara/server/web_app_assets.py
src/sovara/server/annotation_backend/__init__.py
src/sovara/server/annotation_backend/annotation.py
src/sovara/server/annotation_backend/annotation_focus.py
src/sovara/server/annotation_backend/chunk_index.py
src/sovara/server/annotation_backend/classifier.py
src/sovara/server/annotation_backend/close_traces.py
src/sovara/server/annotation_backend/distance_index.py
src/sovara/server/annotation_backend/screening_summary.py
src/sovara/server/annotation_backend/utils.py
src/sovara/server/annotation_backend/annotation_agent/__init__.py
src/sovara/server/annotation_backend/annotation_agent/agent.py
src/sovara/server/annotation_backend/annotation_agent/models.py
src/sovara/server/annotation_backend/annotation_agent/prompts.py
src/sovara/server/annotation_backend/annotation_agent/tools.py
src/sovara/server/annotation_backend/annotation_agent/trace_store.py
src/sovara/server/base_agent/__init__.py
src/sovara/server/base_agent/agent.py
src/sovara/server/base_agent/cancel.py
src/sovara/server/base_agent/compaction.py
src/sovara/server/base_agent/content_blocks.py
src/sovara/server/base_agent/content_utils.py
src/sovara/server/base_agent/llm_settings.py
src/sovara/server/base_agent/prompts.py
src/sovara/server/base_agent/step_content_view.py
src/sovara/server/base_agent/step_ids.py
src/sovara/server/base_agent/trace.py
src/sovara/server/base_agent/tools/__init__.py
src/sovara/server/base_agent/tools/annotation.py
src/sovara/server/base_agent/tools/applied_priors.py
src/sovara/server/base_agent/tools/ask_step.py
src/sovara/server/base_agent/tools/content_unit.py
src/sovara/server/base_agent/tools/graph.py
src/sovara/server/base_agent/tools/ids.py
src/sovara/server/base_agent/tools/priors.py
src/sovara/server/base_agent/tools/registry.py
src/sovara/server/base_agent/tools/run_logs.py
src/sovara/server/base_agent/tools/step_overview.py
src/sovara/server/base_agent/tools/step_snapshot.py
src/sovara/server/base_agent/tools/trace.py
src/sovara/server/base_agent/tools/trace_search.py
src/sovara/server/base_agent/tools/trace_summary.py
src/sovara/server/database/__init__.py
src/sovara/server/database/_shared.py
src/sovara/server/database/annotations.py
src/sovara/server/database/backend_protocol.py
src/sovara/server/database/blob_storage.py
src/sovara/server/database/llm_calls.py
src/sovara/server/database/manager.py
src/sovara/server/database/prior_models.py
src/sovara/server/database/prior_record.py
src/sovara/server/database/priors.py
src/sovara/server/database/projects.py
src/sovara/server/database/runs.py
src/sovara/server/database/users.py
src/sovara/server/database/mongodb/__init__.py
src/sovara/server/database/mongodb/backend.py
src/sovara/server/database/mongodb/connection.py
src/sovara/server/database/mongodb/prior_embeddings.py
src/sovara/server/database/postgresql/__init__.py
src/sovara/server/database/postgresql/backend.py
src/sovara/server/database/postgresql/connection.py
src/sovara/server/database/postgresql/schema.py
src/sovara/server/database/sqlite/__init__.py
src/sovara/server/database/sqlite/annotations.py
src/sovara/server/database/sqlite/backend.py
src/sovara/server/database/sqlite/bootstrap.py
src/sovara/server/database/sqlite/connection.py
src/sovara/server/database/sqlite/demo_quota.py
src/sovara/server/database/sqlite/llm_calls.py
src/sovara/server/database/sqlite/prior_embeddings.py
src/sovara/server/database/sqlite/prior_records.py
src/sovara/server/database/sqlite/priors.py
src/sovara/server/database/sqlite/projects.py
src/sovara/server/database/sqlite/runs.py
src/sovara/server/database/sqlite/schema.py
src/sovara/server/database/sqlite/users.py
src/sovara/server/graph_analysis/inference_server.py
src/sovara/server/graph_analysis/trace_chat/__init__.py
src/sovara/server/graph_analysis/trace_chat/main.py
src/sovara/server/graph_analysis/trace_chat/prompts.py
src/sovara/server/handlers/__init__.py
src/sovara/server/handlers/cli_handlers.py
src/sovara/server/handlers/handler_utils.py
src/sovara/server/handlers/runner_handlers.py
src/sovara/server/handlers/ui_handlers.py
src/sovara/server/priors_backend/__init__.py
src/sovara/server/priors_backend/constants.py
src/sovara/server/priors_backend/embeddings.py
src/sovara/server/priors_backend/llm_client.py
src/sovara/server/priors_backend/logger.py
src/sovara/server/priors_backend/path_utils.py
src/sovara/server/priors_backend/retrieval_service.py
src/sovara/server/priors_backend/routes.py
src/sovara/server/priors_backend/storage.py
src/sovara/server/priors_backend/llm/__init__.py
src/sovara/server/priors_backend/llm/folder_rebalancer.py
src/sovara/server/priors_backend/llm/lesson_restructurer.py
src/sovara/server/priors_backend/llm/lesson_retriever.py
src/sovara/server/priors_backend/llm/lesson_summarizer.py
src/sovara/server/priors_backend/llm/lesson_validator.py
src/sovara/server/priors_backend/llm/prior_content_polisher.py
src/sovara/server/priors_backend/llm/prior_metadata_suggester.py
src/sovara/server/priors_backend/llm/prior_quality.py
src/sovara/server/priors_backend/tools/adjudication.py
src/sovara/server/priors_backend/tools/bm25_search.py
src/sovara/server/priors_backend/tools/dense_search.py
src/sovara/server/priors_backend/tools/folder_groups.py
src/sovara/server/priors_backend/tools/keyword_search.py
src/sovara/server/priors_backend/tools/parallel_search.py
src/sovara/server/priors_backend/tools/preprocess_context.py
src/sovara/server/priors_backend/tools/rerank.py
src/sovara/server/priors_backend/tools/utils.py
src/sovara/server/routes/__init__.py
src/sovara/server/routes/claude_proxy.py
src/sovara/server/routes/events.py
src/sovara/server/routes/internal.py
src/sovara/server/routes/runner.py
src/sovara/server/routes/ui.py
src/sovara/server/routes/ui_common.py
src/sovara/server/routes/ui_projects.py
src/sovara/server/routes/ui_runs.py
src/sovara/server/routes/ui_trace_chat.py
src/sovara/server/services/__init__.py
src/sovara/server/services/annotation_evaluation_service.py
src/sovara/server/services/annotation_focus_service.py
src/sovara/server/services/annotation_service.py
src/sovara/server/services/demo_run_limit.py
src/sovara/server/services/embedding_sources.py
src/sovara/server/services/llm_call_embeddings.py
src/sovara/server/services/session_io_summary.py
src/sovara/server/services/trace_chat_service.py
tests/test_graph_payloads.py