aria-code 0.165.0__tar.gz → 0.166.0__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (1000) hide show
  1. {aria_code-0.165.0/src/aria_code.egg-info → aria_code-0.166.0}/PKG-INFO +40 -7
  2. {aria_code-0.165.0 → aria_code-0.166.0}/README.md +5 -1
  3. {aria_code-0.165.0 → aria_code-0.166.0}/pyproject.toml +45 -15
  4. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/_version.py +2 -2
  5. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/apps/cli/commands/core_cmds.py +18 -0
  6. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/apps/cli/commands/ui_cmds.py +4 -4
  7. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/apps/cli/providers/runtime_bridge.py +2 -0
  8. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/aria_daemon.py +44 -19
  9. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/aria_feishu_bot.py +1 -1
  10. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/clients/market_data_client.py +11 -2
  11. aria_code-0.166.0/src/aria_code/computer_use_server.py +276 -0
  12. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/doctor.py +4 -4
  13. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/evals/harness.py +165 -10
  14. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/evals/runner.py +51 -0
  15. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/evals/scorecard.py +6 -3
  16. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/evals/summary.py +4 -0
  17. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/mcp_client.py +70 -9
  18. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/packages/aria_mcp/config.py +46 -0
  19. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/packages/aria_mcp/server.py +11 -4
  20. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/packages/aria_sdk/client.py +5 -1
  21. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/runtime/acceptance.py +60 -2
  22. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/runtime/agent_loop.py +18 -27
  23. aria_code-0.166.0/src/aria_code/runtime/research_bundle.py +105 -0
  24. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/runtime/run_store.py +47 -0
  25. aria_code-0.166.0/src/aria_code/runtime/scoped_runs.py +113 -0
  26. aria_code-0.166.0/src/aria_code/runtime/task_brief.py +46 -0
  27. aria_code-0.166.0/src/aria_code/runtime/task_outcome.py +33 -0
  28. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/runtime/tool_executor.py +7 -4
  29. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/tools/computer_use_tools.py +52 -47
  30. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/tools/file_analysis_tools.py +8 -13
  31. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/tools/local_finance_tools.py +7 -0
  32. {aria_code-0.165.0 → aria_code-0.166.0/src/aria_code.egg-info}/PKG-INFO +40 -7
  33. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code.egg-info/SOURCES.txt +16 -10
  34. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code.egg-info/entry_points.txt +1 -0
  35. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code.egg-info/requires.txt +44 -7
  36. aria_code-0.166.0/tests/test_acceptance_revisions.py +185 -0
  37. {aria_code-0.165.0 → aria_code-0.166.0}/tests/test_analyze_file_tool.py +2 -3
  38. {aria_code-0.165.0 → aria_code-0.166.0}/tests/test_aria_mcp_server.py +22 -0
  39. aria_code-0.166.0/tests/test_computer_use_browser_integration.py +74 -0
  40. aria_code-0.166.0/tests/test_computer_use_service.py +292 -0
  41. {aria_code-0.165.0 → aria_code-0.166.0}/tests/test_container_entrypoint.py +3 -3
  42. {aria_code-0.165.0 → aria_code-0.166.0}/tests/test_container_entrypoints.py +45 -0
  43. aria_code-0.166.0/tests/test_daemon_webhook_auth.py +98 -0
  44. {aria_code-0.165.0 → aria_code-0.166.0}/tests/test_eval_task_bank.py +1 -1
  45. {aria_code-0.165.0 → aria_code-0.166.0}/tests/test_evals_harness.py +206 -0
  46. aria_code-0.166.0/tests/test_financial_service_mcp.py +118 -0
  47. {aria_code-0.165.0 → aria_code-0.166.0}/tests/test_mcp_circuit.py +100 -3
  48. {aria_code-0.165.0 → aria_code-0.166.0}/tests/test_mcp_client.py +3 -0
  49. {aria_code-0.165.0 → aria_code-0.166.0}/tests/test_native_app.py +27 -17
  50. {aria_code-0.165.0 → aria_code-0.166.0}/tests/test_operations_suite.py +1 -1
  51. aria_code-0.166.0/tests/test_optional_finance.py +99 -0
  52. aria_code-0.166.0/tests/test_relay_client_credentials.py +42 -0
  53. {aria_code-0.165.0 → aria_code-0.166.0}/tests/test_relay_contract.py +111 -55
  54. aria_code-0.166.0/tests/test_relay_sends_for_clients.py +96 -0
  55. aria_code-0.166.0/tests/test_research_bundle.py +114 -0
  56. aria_code-0.166.0/tests/test_scoped_runs.py +131 -0
  57. aria_code-0.166.0/tests/test_sdk_task_outcome.py +36 -0
  58. aria_code-0.166.0/tests/test_task_brief.py +138 -0
  59. aria_code-0.166.0/tests/test_task_outcome.py +37 -0
  60. {aria_code-0.165.0 → aria_code-0.166.0}/tests/test_vscode_mcp.py +0 -11
  61. aria_code-0.165.0/src/aria_code/aria_relay_server.py +0 -701
  62. aria_code-0.165.0/src/aria_code/relay_store.py +0 -194
  63. aria_code-0.165.0/src/aria_code/runtime/crash_report.py +0 -174
  64. aria_code-0.165.0/src/aria_code/utils/vscode_uri.py +0 -37
  65. aria_code-0.165.0/src/aria_code/workspace_context.py +0 -233
  66. aria_code-0.165.0/tests/test_crash_report.py +0 -98
  67. aria_code-0.165.0/tests/test_relay_client_credentials.py +0 -161
  68. aria_code-0.165.0/tests/test_relay_event_verification.py +0 -126
  69. aria_code-0.165.0/tests/test_relay_reliability.py +0 -221
  70. aria_code-0.165.0/tests/test_relay_sends_for_clients.py +0 -271
  71. aria_code-0.165.0/tests/test_relay_store.py +0 -177
  72. aria_code-0.165.0/tests/test_workspace_context.py +0 -92
  73. {aria_code-0.165.0 → aria_code-0.166.0}/LICENSE +0 -0
  74. {aria_code-0.165.0 → aria_code-0.166.0}/NOTICE +0 -0
  75. {aria_code-0.165.0 → aria_code-0.166.0}/setup.cfg +0 -0
  76. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/__init__.py +0 -0
  77. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/account_memory.py +0 -0
  78. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/account_session.py +0 -0
  79. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/adk_apps/__init__.py +0 -0
  80. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/adk_apps/aria_code_review/__init__.py +0 -0
  81. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/adk_apps/aria_code_review/agent.py +0 -0
  82. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/adk_apps/aria_research/__init__.py +0 -0
  83. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/adk_apps/aria_research/agent.py +0 -0
  84. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/agents/__init__.py +0 -0
  85. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/agents/base.py +0 -0
  86. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/agents/code_review.py +0 -0
  87. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/agents/deep/__init__.py +0 -0
  88. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/agents/deep/calibration_loop.py +0 -0
  89. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/agents/deep/critic.py +0 -0
  90. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/agents/deep/deepen.py +0 -0
  91. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/agents/deep/models.py +0 -0
  92. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/agents/deep/pipeline.py +0 -0
  93. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/agents/deep/quant_fusion.py +0 -0
  94. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/agents/deep/themes.py +0 -0
  95. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/agents/deep/tiers.py +0 -0
  96. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/agents/engineering/__init__.py +0 -0
  97. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/agents/engineering/coder.py +0 -0
  98. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/agents/engineering/tester.py +0 -0
  99. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/agents/financial/__init__.py +0 -0
  100. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/agents/financial/cashflow_burn.py +0 -0
  101. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/agents/financial/catalyst.py +0 -0
  102. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/agents/financial/corporate_finance.py +0 -0
  103. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/agents/financial/debate.py +0 -0
  104. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/agents/financial/earnings.py +0 -0
  105. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/agents/financial/fundamental.py +0 -0
  106. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/agents/financial/macro.py +0 -0
  107. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/agents/financial/news.py +0 -0
  108. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/agents/financial/risk.py +0 -0
  109. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/agents/financial/sector.py +0 -0
  110. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/agents/financial/strategist.py +0 -0
  111. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/agents/financial/stripe_revenue.py +0 -0
  112. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/agents/financial/synthesis.py +0 -0
  113. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/agents/financial/technical.py +0 -0
  114. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/agents/orchestrator.py +0 -0
  115. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/agents/portfolio_agent.py +0 -0
  116. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/agents/realty/__init__.py +0 -0
  117. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/agents/realty/asset_diagnosis.py +0 -0
  118. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/agents/realty/business_match.py +0 -0
  119. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/agents/realty/cashflow_verify.py +0 -0
  120. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/agents/realty/contract_rules.py +0 -0
  121. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/agents/realty/energy_anomaly.py +0 -0
  122. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/agents/realty/exit_settlement.py +0 -0
  123. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/agents/realty/fulfillment_risk.py +0 -0
  124. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/agents/realty/ops_optimize.py +0 -0
  125. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/agents/realty/revenue_share.py +0 -0
  126. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/agents/registry.py +0 -0
  127. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/agents/signal_scheme.py +0 -0
  128. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/agents/sports/__init__.py +0 -0
  129. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/agents/sports/football_agent.py +0 -0
  130. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/agents/supervisor.py +0 -0
  131. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/agents/team.py +0 -0
  132. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/agents/video/__init__.py +0 -0
  133. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/agents/video/director.py +0 -0
  134. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/agents/video/qa_agent.py +0 -0
  135. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/agents/video/script_doctor.py +0 -0
  136. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/agents/warehouse/__init__.py +0 -0
  137. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/agents/warehouse/contracts.py +0 -0
  138. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/agents/warehouse/dashboard.py +0 -0
  139. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/agents/warehouse/fulfillment_leadtime.py +0 -0
  140. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/agents/warehouse/inbound_exceptions.py +0 -0
  141. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/agents/warehouse/inventory_health.py +0 -0
  142. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/agents/warehouse/local_run.py +0 -0
  143. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/agents/warehouse/local_snapshot.py +0 -0
  144. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/agents/warehouse/logistics_cost.py +0 -0
  145. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/agents/warehouse/logistics_sync.py +0 -0
  146. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/agents/warehouse/navigation.schema.json +0 -0
  147. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/agents/warehouse/task_agent.py +0 -0
  148. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/agents/warehouse/workflow.py +0 -0
  149. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/aliyun_data_client.py +0 -0
  150. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/apps/README.md +0 -0
  151. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/apps/__init__.py +0 -0
  152. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/apps/channels/README.md +0 -0
  153. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/apps/channels/__init__.py +0 -0
  154. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/apps/channels/approvals.py +0 -0
  155. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/apps/channels/conversation.py +0 -0
  156. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/apps/channels/digest.py +0 -0
  157. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/apps/channels/intake.py +0 -0
  158. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/apps/channels/registry.py +0 -0
  159. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/apps/channels/tradingview.py +0 -0
  160. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/apps/cli/README.md +0 -0
  161. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/apps/cli/__init__.py +0 -0
  162. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/apps/cli/_optional.py +0 -0
  163. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/apps/cli/app_server.py +0 -0
  164. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/apps/cli/auto_update.py +0 -0
  165. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/apps/cli/bootstrap.py +0 -0
  166. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/apps/cli/broker_render.py +0 -0
  167. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/apps/cli/chat_turn.py +0 -0
  168. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/apps/cli/cloud_models.py +0 -0
  169. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/apps/cli/codegen_paths.py +0 -0
  170. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/apps/cli/commands/__init__.py +0 -0
  171. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/apps/cli/commands/_business_render.py +0 -0
  172. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/apps/cli/commands/_ui.py +0 -0
  173. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/apps/cli/commands/analysis_cmds.py +0 -0
  174. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/apps/cli/commands/ashare_prediction_cmds.py +0 -0
  175. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/apps/cli/commands/auth_cmds.py +0 -0
  176. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/apps/cli/commands/backtest_cmds.py +0 -0
  177. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/apps/cli/commands/broker_cmds.py +0 -0
  178. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/apps/cli/commands/business_workflow_cmds.py +0 -0
  179. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/apps/cli/commands/canvas_cmds.py +0 -0
  180. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/apps/cli/commands/catalog.py +0 -0
  181. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/apps/cli/commands/data_cmds.py +0 -0
  182. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/apps/cli/commands/diagnostic_cmds.py +0 -0
  183. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/apps/cli/commands/diagnostic_ops_cmds.py +0 -0
  184. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/apps/cli/commands/engineering_cmds.py +0 -0
  185. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/apps/cli/commands/file_cmds.py +0 -0
  186. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/apps/cli/commands/finance_service_cmds.py +0 -0
  187. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/apps/cli/commands/fx_commodity_cmds.py +0 -0
  188. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/apps/cli/commands/market.py +0 -0
  189. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/apps/cli/commands/market_cmds.py +0 -0
  190. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/apps/cli/commands/market_context.py +0 -0
  191. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/apps/cli/commands/market_render.py +0 -0
  192. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/apps/cli/commands/model_cmds.py +0 -0
  193. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/apps/cli/commands/ops_cmds.py +0 -0
  194. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/apps/cli/commands/orchestrator_cmds.py +0 -0
  195. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/apps/cli/commands/pdf_export_cmds.py +0 -0
  196. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/apps/cli/commands/portfolio_cmds.py +0 -0
  197. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/apps/cli/commands/report.py +0 -0
  198. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/apps/cli/commands/scaffold_templates.py +0 -0
  199. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/apps/cli/commands/session_cmds.py +0 -0
  200. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/apps/cli/commands/session_ux_cmds.py +0 -0
  201. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/apps/cli/commands/team.py +0 -0
  202. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/apps/cli/commands/team_render.py +0 -0
  203. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/apps/cli/commands/warehouse_cmds.py +0 -0
  204. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/apps/cli/commands/workflow_cmds.py +0 -0
  205. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/apps/cli/commands/workspace_cmds.py +0 -0
  206. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/apps/cli/config_paths.py +0 -0
  207. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/apps/cli/config_store.py +0 -0
  208. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/apps/cli/constants.py +0 -0
  209. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/apps/cli/context.py +0 -0
  210. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/apps/cli/conversation_policy.py +0 -0
  211. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/apps/cli/deterministic.py +0 -0
  212. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/apps/cli/direct.py +0 -0
  213. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/apps/cli/earnings_view.py +0 -0
  214. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/apps/cli/endpoint_migration.py +0 -0
  215. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/apps/cli/exec_events.py +0 -0
  216. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/apps/cli/file_references.py +0 -0
  217. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/apps/cli/finance_service_catalog.py +0 -0
  218. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/apps/cli/football_reports.py +0 -0
  219. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/apps/cli/github_app_auth.py +0 -0
  220. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/apps/cli/google_login.py +0 -0
  221. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/apps/cli/handlers/__init__.py +0 -0
  222. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/apps/cli/handlers/broker_handlers.py +0 -0
  223. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/apps/cli/handlers/chart_handlers.py +0 -0
  224. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/apps/cli/handlers/market_handlers.py +0 -0
  225. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/apps/cli/handlers/realty_handlers.py +0 -0
  226. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/apps/cli/handlers/sports_handlers.py +0 -0
  227. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/apps/cli/handlers/strategy_advice.py +0 -0
  228. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/apps/cli/headless.py +0 -0
  229. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/apps/cli/helpers.py +0 -0
  230. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/apps/cli/hooks.py +0 -0
  231. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/apps/cli/i18n.py +0 -0
  232. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/apps/cli/intent.py +0 -0
  233. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/apps/cli/intent_router.py +0 -0
  234. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/apps/cli/intent_shadow.py +0 -0
  235. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/apps/cli/intent_signals.py +0 -0
  236. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/apps/cli/lifecycle_hooks.py +0 -0
  237. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/apps/cli/local_tool_schemas.py +0 -0
  238. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/apps/cli/main.py +0 -0
  239. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/apps/cli/market_hours.py +0 -0
  240. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/apps/cli/market_metadata.py +0 -0
  241. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/apps/cli/market_universe.py +0 -0
  242. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/apps/cli/message_processing.py +0 -0
  243. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/apps/cli/mixin_binding.py +0 -0
  244. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/apps/cli/model_catalog.py +0 -0
  245. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/apps/cli/model_probe.py +0 -0
  246. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/apps/cli/model_retirement.py +0 -0
  247. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/apps/cli/native_branding.py +0 -0
  248. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/apps/cli/native_bridge.py +0 -0
  249. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/apps/cli/native_entry.py +0 -0
  250. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/apps/cli/pdf_report.py +0 -0
  251. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/apps/cli/plan_mode.py +0 -0
  252. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/apps/cli/plotly_html.py +0 -0
  253. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/apps/cli/prediction_feedback.py +0 -0
  254. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/apps/cli/preflight.py +0 -0
  255. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/apps/cli/project_aria.py +0 -0
  256. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/apps/cli/prompt_assembly.py +0 -0
  257. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/apps/cli/prompts/__init__.py +0 -0
  258. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/apps/cli/prompts/coding.py +0 -0
  259. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/apps/cli/prompts/select.py +0 -0
  260. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/apps/cli/prompts/system_prompts.py +0 -0
  261. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/apps/cli/prompts/ui.py +0 -0
  262. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/apps/cli/provider_endpoints.py +0 -0
  263. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/apps/cli/provider_keys.py +0 -0
  264. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/apps/cli/providers/__init__.py +0 -0
  265. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/apps/cli/providers/base.py +0 -0
  266. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/apps/cli/providers/chat_routing.py +0 -0
  267. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/apps/cli/providers/collaboration.py +0 -0
  268. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/apps/cli/providers/llm/__init__.py +0 -0
  269. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/apps/cli/providers/llm/offline_responses.py +0 -0
  270. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/apps/cli/providers/llm/ollama_stream.py +0 -0
  271. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/apps/cli/providers/llm/response_cache.py +0 -0
  272. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/apps/cli/providers/llm/sse_stream.py +0 -0
  273. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/apps/cli/providers/vertexai_stream.py +0 -0
  274. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/apps/cli/release_download.py +0 -0
  275. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/apps/cli/review_runner.py +0 -0
  276. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/apps/cli/runtime_consumer.py +0 -0
  277. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/apps/cli/sandbox.py +0 -0
  278. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/apps/cli/session_export.py +0 -0
  279. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/apps/cli/session_jsonl.py +0 -0
  280. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/apps/cli/session_refresh.py +0 -0
  281. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/apps/cli/session_store.py +0 -0
  282. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/apps/cli/skills_catalog.py +0 -0
  283. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/apps/cli/task_isolation.py +0 -0
  284. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/apps/cli/terminal_chrome.py +0 -0
  285. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/apps/cli/todo_tracker.py +0 -0
  286. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/apps/cli/tool_executor.py +0 -0
  287. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/apps/cli/tool_registry.py +0 -0
  288. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/apps/cli/tool_scope.py +0 -0
  289. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/apps/cli/tools/__init__.py +0 -0
  290. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/apps/cli/tools/context.py +0 -0
  291. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/apps/cli/tools/file_tools.py +0 -0
  292. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/apps/cli/tools/market_tools.py +0 -0
  293. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/apps/cli/tools/notebook_tools.py +0 -0
  294. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/apps/cli/tools/system_tools.py +0 -0
  295. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/apps/cli/tools/write_tools.py +0 -0
  296. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/apps/cli/tradingview_bridge.py +0 -0
  297. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/apps/cli/transactions.py +0 -0
  298. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/apps/cli/turn_planning.py +0 -0
  299. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/apps/cli/update_check.py +0 -0
  300. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/apps/cli/updater.py +0 -0
  301. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/apps/cli/utils/__init__.py +0 -0
  302. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/apps/cli/utils/market_detect.py +0 -0
  303. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/apps/cli/web_login.py +0 -0
  304. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/apps/cli/workflow_runner.py +0 -0
  305. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/apps/cli/workspace_route.py +0 -0
  306. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/apps/daemon/README.md +0 -0
  307. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/apps/vscode/README.md +0 -0
  308. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/apps/vscode/package.json +0 -0
  309. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/aria_cli.py +0 -0
  310. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/aria_mcp_server.py +0 -0
  311. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/aria_relay_client.py +0 -0
  312. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/aria_telegram_bot.py +0 -0
  313. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/ariarc.py +0 -0
  314. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/artifacts.py +0 -0
  315. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/backtest_engine.py +0 -0
  316. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/backtest_report.py +0 -0
  317. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/brokers/__init__.py +0 -0
  318. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/brokers/automation.py +0 -0
  319. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/brokers/base.py +0 -0
  320. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/brokers/capabilities.py +0 -0
  321. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/brokers/cn/__init__.py +0 -0
  322. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/brokers/cn/easytrader_broker.py +0 -0
  323. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/brokers/cn/futu_broker.py +0 -0
  324. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/brokers/cn/longbridge_broker.py +0 -0
  325. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/brokers/cn/tiger_broker.py +0 -0
  326. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/brokers/cn/xtquant_broker.py +0 -0
  327. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/brokers/config.py +0 -0
  328. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/brokers/intl/__init__.py +0 -0
  329. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/brokers/intl/alpaca_broker.py +0 -0
  330. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/brokers/intl/ibkr_broker.py +0 -0
  331. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/brokers/intl/trading212_broker.py +0 -0
  332. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/brokers/intl/webull_broker.py +0 -0
  333. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/brokers/paper_broker.py +0 -0
  334. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/brokers/planning.py +0 -0
  335. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/brokers/registry.py +0 -0
  336. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/brokers/trading.py +0 -0
  337. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/canva_client.py +0 -0
  338. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/change_store.py +0 -0
  339. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/clients/__init__.py +0 -0
  340. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/clients/aliyun_data_client.py +0 -0
  341. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/clients/aria_relay_client.py +0 -0
  342. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/clients/canva_client.py +0 -0
  343. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/clients/figma_client.py +0 -0
  344. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/clients/football_data_client.py +0 -0
  345. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/clients/kling_video_client.py +0 -0
  346. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/clients/openai_image_client.py +0 -0
  347. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/clients/runway_video_client.py +0 -0
  348. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/clients/warehouse_erp_client.py +0 -0
  349. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/cloud_memory.py +0 -0
  350. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/command_safety.py +0 -0
  351. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/computer_use_tools.py +0 -0
  352. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/dashboard_generator.py +0 -0
  353. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/data_analysis_tools.py +0 -0
  354. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/data_cleaner.py +0 -0
  355. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/data_service.py +0 -0
  356. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/datasources/__init__.py +0 -0
  357. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/datasources/base.py +0 -0
  358. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/datasources/router.py +0 -0
  359. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/datasources/sec_statements.py +0 -0
  360. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/datasources/sources/__init__.py +0 -0
  361. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/datasources/sources/akshare_source.py +0 -0
  362. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/datasources/sources/alpha_vantage_source.py +0 -0
  363. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/datasources/sources/edgar_source.py +0 -0
  364. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/datasources/sources/finnhub_source.py +0 -0
  365. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/datasources/sources/fred_source.py +0 -0
  366. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/datasources/sources/tushare_source.py +0 -0
  367. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/datasources/sources/web_scraper_source.py +0 -0
  368. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/datasources/sources/world_bank_source.py +0 -0
  369. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/datasources/sources/yfinance_source.py +0 -0
  370. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/domain/__init__.py +0 -0
  371. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/domain/backtest_engine.py +0 -0
  372. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/domain/backtest_report.py +0 -0
  373. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/domain/finance_formulas.py +0 -0
  374. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/domain/performance_stats.py +0 -0
  375. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/domain/portfolio_ledger.py +0 -0
  376. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/domain/strategy_vault.py +0 -0
  377. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/evals/__init__.py +0 -0
  378. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/evals/behavior.py +0 -0
  379. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/evals/gap.py +0 -0
  380. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/evals/review_probe.py +0 -0
  381. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/external_agent_runner.py +0 -0
  382. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/figma_client.py +0 -0
  383. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/file_analysis_tools.py +0 -0
  384. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/finance_formulas.py +0 -0
  385. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/football_data_client.py +0 -0
  386. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/image_gen_tools.py +0 -0
  387. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/intent_classifier.py +0 -0
  388. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/kling_video_client.py +0 -0
  389. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/licensing.py +0 -0
  390. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/local_finance_tools.py +0 -0
  391. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/local_image_provider.py +0 -0
  392. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/local_llm_provider.py +0 -0
  393. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/macro_tools.py +0 -0
  394. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/markdown_pdf.py +0 -0
  395. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/market_data_client.py +0 -0
  396. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/memory_manager.py +0 -0
  397. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/model_capability.py +0 -0
  398. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/notification_tools.py +0 -0
  399. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/openai_image_client.py +0 -0
  400. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/packages/__init__.py +0 -0
  401. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/packages/adk_bridge/__init__.py +0 -0
  402. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/packages/adk_bridge/code_review_tools.py +0 -0
  403. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/packages/adk_bridge/market_tools.py +0 -0
  404. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/packages/aria_agents/__init__.py +0 -0
  405. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/packages/aria_agents/manifest.py +0 -0
  406. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/packages/aria_core/__init__.py +0 -0
  407. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/packages/aria_core/architecture.py +0 -0
  408. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/packages/aria_core/export.py +0 -0
  409. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/packages/aria_core/manifest.py +0 -0
  410. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/packages/aria_core/paths.py +0 -0
  411. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/packages/aria_core/secure_file.py +0 -0
  412. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/packages/aria_infra/__init__.py +0 -0
  413. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/packages/aria_infra/arthera.py +0 -0
  414. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/packages/aria_infra/doctor.py +0 -0
  415. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/packages/aria_infra/product.py +0 -0
  416. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/packages/aria_mcp/__init__.py +0 -0
  417. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/packages/aria_mcp/bridge.py +0 -0
  418. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/packages/aria_mcp/circuit.py +0 -0
  419. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/packages/aria_mcp/installer.py +0 -0
  420. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/packages/aria_mcp/tools.py +0 -0
  421. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/packages/aria_sdk/__init__.py +0 -0
  422. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/packages/aria_sdk/providers.py +0 -0
  423. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/packages/aria_sdk/streaming.py +0 -0
  424. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/packages/aria_sdk/types.py +0 -0
  425. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/packages/aria_services/__init__.py +0 -0
  426. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/packages/aria_services/cache.py +0 -0
  427. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/packages/aria_services/context.py +0 -0
  428. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/packages/aria_services/context_checkpoints.py +0 -0
  429. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/packages/aria_services/data.py +0 -0
  430. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/packages/aria_services/provider_health.py +0 -0
  431. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/packages/aria_services/references.py +0 -0
  432. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/packages/aria_services/registry.py +0 -0
  433. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/packages/aria_services/research_protocol.py +0 -0
  434. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/packages/aria_services/research_quality.py +0 -0
  435. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/packages/aria_services/settings.py +0 -0
  436. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/packages/aria_services/usage.py +0 -0
  437. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/packages/aria_skills/__init__.py +0 -0
  438. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/packages/aria_skills/catalog.py +0 -0
  439. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/packages/aria_skills/loader.py +0 -0
  440. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/packages/aria_skills/registry.py +0 -0
  441. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/packages/aria_tools/__init__.py +0 -0
  442. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/packages/aria_tools/financial/__init__.py +0 -0
  443. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/packages/aria_tools/financial/_paths.py +0 -0
  444. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/packages/aria_tools/financial/compliance.py +0 -0
  445. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/packages/aria_tools/financial/factors.py +0 -0
  446. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/packages/aria_tools/financial/risk_tools.py +0 -0
  447. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/packages/aria_tools/financial/strategy.py +0 -0
  448. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/packages/aria_tools/registry.py +0 -0
  449. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/packages/quant_engine/__init__.py +0 -0
  450. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/packages/quant_engine/_namespace.py +0 -0
  451. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/packages/quant_engine/backtest/__init__.py +0 -0
  452. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/packages/quant_engine/backtest/core.py +0 -0
  453. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/packages/quant_engine/backtest/engine.py +0 -0
  454. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/packages/quant_engine/portfolio/__init__.py +0 -0
  455. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/packages/quant_engine/portfolio/optimizer.py +0 -0
  456. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/packages/quant_engine/sports/__init__.py +0 -0
  457. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/packages/quant_engine/sports/calibrator.py +0 -0
  458. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/packages/quant_engine/sports/dixon_coles.py +0 -0
  459. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/packages/quant_engine/sports/elo.py +0 -0
  460. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/packages/quant_engine/sports/form.py +0 -0
  461. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/packages/quant_engine/sports/h2h.py +0 -0
  462. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/packages/quant_engine/sports/ml_model.py +0 -0
  463. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/packages/quant_engine/sports/predictor.py +0 -0
  464. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/packages/quant_engine/sports/tracker.py +0 -0
  465. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/packages/quant_engine/stochastic/__init__.py +0 -0
  466. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/packages/quant_engine/stochastic/gbm_enhanced.py +0 -0
  467. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/packages/quant_engine/stochastic/ito_calculus.py +0 -0
  468. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/packages/quant_engine/stochastic/kelly_criterion.py +0 -0
  469. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/packages/quant_engine/stochastic/monte_carlo_advanced.py +0 -0
  470. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/packages/quant_engine/stochastic/options_pricing.py +0 -0
  471. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/packages/quant_engine/stochastic/stochastic_processes.py +0 -0
  472. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/packs/__init__.py +0 -0
  473. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/packs/base.py +0 -0
  474. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/packs/finance/__init__.py +0 -0
  475. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/packs/logistics/__init__.py +0 -0
  476. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/packs/payments/__init__.py +0 -0
  477. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/packs/realty/__init__.py +0 -0
  478. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/packs/registry.py +0 -0
  479. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/packs/rules.py +0 -0
  480. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/plan_utils.py +0 -0
  481. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/plugin_loader.py +0 -0
  482. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/portfolio_ledger.py +0 -0
  483. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/preview_server.py +0 -0
  484. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/privacy/__init__.py +0 -0
  485. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/privacy/feedback.py +0 -0
  486. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/project_review.py +0 -0
  487. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/project_review_api.py +0 -0
  488. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/project_review_server.py +0 -0
  489. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/project_tools.py +0 -0
  490. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/providers/__init__.py +0 -0
  491. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/providers/google_video_provider.py +0 -0
  492. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/providers/llm/__init__.py +0 -0
  493. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/providers/llm/anthropic.py +0 -0
  494. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/providers/llm/arthera_gateway.py +0 -0
  495. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/providers/llm/autoconfig.py +0 -0
  496. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/providers/llm/base.py +0 -0
  497. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/providers/llm/custom.py +0 -0
  498. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/providers/llm/ollama.py +0 -0
  499. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/providers/llm/openai_compat.py +0 -0
  500. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/providers/llm/registry.py +0 -0
  501. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/providers/local_image_provider.py +0 -0
  502. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/providers/local_llm_provider.py +0 -0
  503. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/providers/openai_params.py +0 -0
  504. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/providers/tool_messages.py +0 -0
  505. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/realty_data_tools.py +0 -0
  506. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/report_exporters.py +0 -0
  507. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/report_generator.py +0 -0
  508. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/review_service.py +0 -0
  509. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/runtime/__init__.py +0 -0
  510. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/runtime/agent_profiles.py +0 -0
  511. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/runtime/approval.py +0 -0
  512. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/runtime/baseline.py +0 -0
  513. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/runtime/budget.py +0 -0
  514. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/runtime/checkpoints.py +0 -0
  515. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/runtime/consult.py +0 -0
  516. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/runtime/contract.py +0 -0
  517. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/runtime/delivery.py +0 -0
  518. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/runtime/events.py +0 -0
  519. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/runtime/gateway.py +0 -0
  520. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/runtime/lsp.py +0 -0
  521. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/runtime/native_index.py +0 -0
  522. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/runtime/orchestrator.py +0 -0
  523. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/runtime/processes.py +0 -0
  524. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/runtime/project_graph.py +0 -0
  525. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/runtime/repo_map.py +0 -0
  526. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/runtime/review.py +0 -0
  527. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/runtime/run_state.py +0 -0
  528. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/runtime/self_healing.py +0 -0
  529. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/runtime/semantic_diff.py +0 -0
  530. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/runtime/subagent.py +0 -0
  531. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/runtime/symbol_edit.py +0 -0
  532. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/runtime/task_context.py +0 -0
  533. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/runtime/task_ledger.py +0 -0
  534. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/runtime/task_orchestrator.py +0 -0
  535. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/runtime/task_verification.py +0 -0
  536. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/runtime/task_worktree.py +0 -0
  537. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/runtime/tool_policy.py +0 -0
  538. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/runtime/transactions.py +0 -0
  539. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/runtime/windows_job.py +0 -0
  540. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/runtime/workflows.py +0 -0
  541. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/runtime/worktrees.py +0 -0
  542. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/runway_video_client.py +0 -0
  543. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/safety/__init__.py +0 -0
  544. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/safety/client_isolation.py +0 -0
  545. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/safety/permissions.py +0 -0
  546. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/safety/risk.py +0 -0
  547. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/safety/sandbox.py +0 -0
  548. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/safety/service.py +0 -0
  549. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/service_endpoints.py +0 -0
  550. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/setup_wizard.py +0 -0
  551. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/spreadsheet_tools.py +0 -0
  552. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/strategy_vault.py +0 -0
  553. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/tools/__init__.py +0 -0
  554. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/tools/artifact_tools.py +0 -0
  555. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/tools/broker_tools.py +0 -0
  556. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/tools/build_quant_engine.py +0 -0
  557. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/tools/code_audit_tools.py +0 -0
  558. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/tools/data_analysis_tools.py +0 -0
  559. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/tools/enterprise_finance_tools.py +0 -0
  560. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/tools/extended_tools.py +0 -0
  561. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/tools/image_gen_tools.py +0 -0
  562. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/tools/logistics_carriers.py +0 -0
  563. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/tools/logistics_inventory.py +0 -0
  564. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/tools/logistics_io.py +0 -0
  565. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/tools/logistics_tenancy.py +0 -0
  566. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/tools/logistics_tools.py +0 -0
  567. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/tools/macro_tools.py +0 -0
  568. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/tools/notification_tools.py +0 -0
  569. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/tools/project_tools.py +0 -0
  570. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/tools/realty_data_tools.py +0 -0
  571. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/tools/spreadsheet_tools.py +0 -0
  572. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/tools/stripe_tools.py +0 -0
  573. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/tools/video_tools.py +0 -0
  574. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/training/__init__.py +0 -0
  575. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/training/compare.py +0 -0
  576. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/training/prelude_commands.py +0 -0
  577. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/training/prelude_eval.py +0 -0
  578. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/training/prelude_real.py +0 -0
  579. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/training/prelude_train.py +0 -0
  580. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/training/sft_dataset.py +0 -0
  581. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/training/trajectory_dataset.py +0 -0
  582. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/ui/__init__.py +0 -0
  583. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/ui/banner.py +0 -0
  584. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/ui/completer.py +0 -0
  585. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/ui/console.py +0 -0
  586. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/ui/input_box.py +0 -0
  587. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/ui/mentions.py +0 -0
  588. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/ui/picker.py +0 -0
  589. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/ui/render/__init__.py +0 -0
  590. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/ui/render/actions.py +0 -0
  591. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/ui/render/finance.py +0 -0
  592. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/ui/render/market.py +0 -0
  593. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/ui/render/output.py +0 -0
  594. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/ui/render/responsive.py +0 -0
  595. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/ui/render/team.py +0 -0
  596. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/ui/robot.py +0 -0
  597. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/ui/startup_dashboard.py +0 -0
  598. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/video_analysis.py +0 -0
  599. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/video_editor.py +0 -0
  600. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/video_workflow/__init__.py +0 -0
  601. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/video_workflow/__main__.py +0 -0
  602. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/video_workflow/engines/__init__.py +0 -0
  603. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/video_workflow/engines/base.py +0 -0
  604. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/video_workflow/engines/custom_model.py +0 -0
  605. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/video_workflow/engines/google_veo.py +0 -0
  606. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/video_workflow/engines/local_engine.py +0 -0
  607. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/video_workflow/engines/registry.py +0 -0
  608. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/video_workflow/google_models.py +0 -0
  609. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/video_workflow/music/__init__.py +0 -0
  610. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/video_workflow/music/foley_service.py +0 -0
  611. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/video_workflow/music/service.py +0 -0
  612. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/video_workflow/pipeline.py +0 -0
  613. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/video_workflow/plan.py +0 -0
  614. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/video_workflow/session.py +0 -0
  615. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/workspace/__init__.py +0 -0
  616. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/workspace/files.py +0 -0
  617. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/workspace/verify.py +0 -0
  618. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/workspace_changes.py +0 -0
  619. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/workspace_service.py +0 -0
  620. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code/workspace_tools.py +0 -0
  621. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code.egg-info/dependency_links.txt +0 -0
  622. {aria_code-0.165.0 → aria_code-0.166.0}/src/aria_code.egg-info/top_level.txt +0 -0
  623. {aria_code-0.165.0 → aria_code-0.166.0}/tests/test_acceptance_unavailable.py +0 -0
  624. {aria_code-0.165.0 → aria_code-0.166.0}/tests/test_account_login_state.py +0 -0
  625. {aria_code-0.165.0 → aria_code-0.166.0}/tests/test_account_memory_sync.py +0 -0
  626. {aria_code-0.165.0 → aria_code-0.166.0}/tests/test_action_view.py +0 -0
  627. {aria_code-0.165.0 → aria_code-0.166.0}/tests/test_adk_market_tools.py +0 -0
  628. {aria_code-0.165.0 → aria_code-0.166.0}/tests/test_agent_key_points_language.py +0 -0
  629. {aria_code-0.165.0 → aria_code-0.166.0}/tests/test_agent_team_fallback.py +0 -0
  630. {aria_code-0.165.0 → aria_code-0.166.0}/tests/test_architecture_ledger_is_true.py +0 -0
  631. {aria_code-0.165.0 → aria_code-0.166.0}/tests/test_architecture_report.py +0 -0
  632. {aria_code-0.165.0 → aria_code-0.166.0}/tests/test_aria_cli_core.py +0 -0
  633. {aria_code-0.165.0 → aria_code-0.166.0}/tests/test_aria_sdk.py +0 -0
  634. {aria_code-0.165.0 → aria_code-0.166.0}/tests/test_arthera_gateway_provider.py +0 -0
  635. {aria_code-0.165.0 → aria_code-0.166.0}/tests/test_artifact_publishing.py +0 -0
  636. {aria_code-0.165.0 → aria_code-0.166.0}/tests/test_artifacts_and_reports.py +0 -0
  637. {aria_code-0.165.0 → aria_code-0.166.0}/tests/test_ashare_prediction_cmds.py +0 -0
  638. {aria_code-0.165.0 → aria_code-0.166.0}/tests/test_auto_update.py +0 -0
  639. {aria_code-0.165.0 → aria_code-0.166.0}/tests/test_background_processes.py +0 -0
  640. {aria_code-0.165.0 → aria_code-0.166.0}/tests/test_backtest_cmds.py +0 -0
  641. {aria_code-0.165.0 → aria_code-0.166.0}/tests/test_backtest_engine.py +0 -0
  642. {aria_code-0.165.0 → aria_code-0.166.0}/tests/test_backtest_report.py +0 -0
  643. {aria_code-0.165.0 → aria_code-0.166.0}/tests/test_backtest_runs_what_it_names.py +0 -0
  644. {aria_code-0.165.0 → aria_code-0.166.0}/tests/test_baseline.py +0 -0
  645. {aria_code-0.165.0 → aria_code-0.166.0}/tests/test_binary_bundles_runtime_imports.py +0 -0
  646. {aria_code-0.165.0 → aria_code-0.166.0}/tests/test_broken_akshare_is_optional.py +0 -0
  647. {aria_code-0.165.0 → aria_code-0.166.0}/tests/test_broker_automation.py +0 -0
  648. {aria_code-0.165.0 → aria_code-0.166.0}/tests/test_broker_chat_confirm_gate.py +0 -0
  649. {aria_code-0.165.0 → aria_code-0.166.0}/tests/test_broker_planning.py +0 -0
  650. {aria_code-0.165.0 → aria_code-0.166.0}/tests/test_broker_safety.py +0 -0
  651. {aria_code-0.165.0 → aria_code-0.166.0}/tests/test_broker_tools.py +0 -0
  652. {aria_code-0.165.0 → aria_code-0.166.0}/tests/test_budget.py +0 -0
  653. {aria_code-0.165.0 → aria_code-0.166.0}/tests/test_business_workflow_cmds.py +0 -0
  654. {aria_code-0.165.0 → aria_code-0.166.0}/tests/test_callback_provider_cleanup.py +0 -0
  655. {aria_code-0.165.0 → aria_code-0.166.0}/tests/test_canva_client.py +0 -0
  656. {aria_code-0.165.0 → aria_code-0.166.0}/tests/test_canvas_cmds.py +0 -0
  657. {aria_code-0.165.0 → aria_code-0.166.0}/tests/test_capability_questions.py +0 -0
  658. {aria_code-0.165.0 → aria_code-0.166.0}/tests/test_card_approvals.py +0 -0
  659. {aria_code-0.165.0 → aria_code-0.166.0}/tests/test_change_contract.py +0 -0
  660. {aria_code-0.165.0 → aria_code-0.166.0}/tests/test_channel_intake.py +0 -0
  661. {aria_code-0.165.0 → aria_code-0.166.0}/tests/test_channels.py +0 -0
  662. {aria_code-0.165.0 → aria_code-0.166.0}/tests/test_chart_handlers.py +0 -0
  663. {aria_code-0.165.0 → aria_code-0.166.0}/tests/test_chat_bots_fail_closed.py +0 -0
  664. {aria_code-0.165.0 → aria_code-0.166.0}/tests/test_chat_routing.py +0 -0
  665. {aria_code-0.165.0 → aria_code-0.166.0}/tests/test_checkpoints_since.py +0 -0
  666. {aria_code-0.165.0 → aria_code-0.166.0}/tests/test_ci_security_workflow.py +0 -0
  667. {aria_code-0.165.0 → aria_code-0.166.0}/tests/test_cli_app_split.py +0 -0
  668. {aria_code-0.165.0 → aria_code-0.166.0}/tests/test_cli_bootstrap.py +0 -0
  669. {aria_code-0.165.0 → aria_code-0.166.0}/tests/test_cli_config_store.py +0 -0
  670. {aria_code-0.165.0 → aria_code-0.166.0}/tests/test_cli_lifecycle_hooks.py +0 -0
  671. {aria_code-0.165.0 → aria_code-0.166.0}/tests/test_cli_runtime_consumer.py +0 -0
  672. {aria_code-0.165.0 → aria_code-0.166.0}/tests/test_cli_tool_executor_module.py +0 -0
  673. {aria_code-0.165.0 → aria_code-0.166.0}/tests/test_cli_updater.py +0 -0
  674. {aria_code-0.165.0 → aria_code-0.166.0}/tests/test_client_isolation_guard.py +0 -0
  675. {aria_code-0.165.0 → aria_code-0.166.0}/tests/test_cloud_memory.py +0 -0
  676. {aria_code-0.165.0 → aria_code-0.166.0}/tests/test_cloud_models.py +0 -0
  677. {aria_code-0.165.0 → aria_code-0.166.0}/tests/test_code_audit_tools.py +0 -0
  678. {aria_code-0.165.0 → aria_code-0.166.0}/tests/test_code_review_agent.py +0 -0
  679. {aria_code-0.165.0 → aria_code-0.166.0}/tests/test_codegen_output.py +0 -0
  680. {aria_code-0.165.0 → aria_code-0.166.0}/tests/test_coder_tester_self_healing.py +0 -0
  681. {aria_code-0.165.0 → aria_code-0.166.0}/tests/test_coder_tool_safety.py +0 -0
  682. {aria_code-0.165.0 → aria_code-0.166.0}/tests/test_collaboration.py +0 -0
  683. {aria_code-0.165.0 → aria_code-0.166.0}/tests/test_command_loggers.py +0 -0
  684. {aria_code-0.165.0 → aria_code-0.166.0}/tests/test_command_safety.py +0 -0
  685. {aria_code-0.165.0 → aria_code-0.166.0}/tests/test_compare_strategies.py +0 -0
  686. {aria_code-0.165.0 → aria_code-0.166.0}/tests/test_completions_builder.py +0 -0
  687. {aria_code-0.165.0 → aria_code-0.166.0}/tests/test_config_paths.py +0 -0
  688. {aria_code-0.165.0 → aria_code-0.166.0}/tests/test_configured_provider.py +0 -0
  689. {aria_code-0.165.0 → aria_code-0.166.0}/tests/test_context_checkpoints.py +0 -0
  690. {aria_code-0.165.0 → aria_code-0.166.0}/tests/test_context_references.py +0 -0
  691. {aria_code-0.165.0 → aria_code-0.166.0}/tests/test_context_service.py +0 -0
  692. {aria_code-0.165.0 → aria_code-0.166.0}/tests/test_conversation_core.py +0 -0
  693. {aria_code-0.165.0 → aria_code-0.166.0}/tests/test_conversation_policy.py +0 -0
  694. {aria_code-0.165.0 → aria_code-0.166.0}/tests/test_credential_file_permissions.py +0 -0
  695. {aria_code-0.165.0 → aria_code-0.166.0}/tests/test_custom_providers.py +0 -0
  696. {aria_code-0.165.0 → aria_code-0.166.0}/tests/test_daemon_gateway_config.py +0 -0
  697. {aria_code-0.165.0 → aria_code-0.166.0}/tests/test_dashboard_generator.py +0 -0
  698. {aria_code-0.165.0 → aria_code-0.166.0}/tests/test_data_service.py +0 -0
  699. {aria_code-0.165.0 → aria_code-0.166.0}/tests/test_data_service_imports.py +0 -0
  700. {aria_code-0.165.0 → aria_code-0.166.0}/tests/test_data_without_model.py +0 -0
  701. {aria_code-0.165.0 → aria_code-0.166.0}/tests/test_datasource_routing.py +0 -0
  702. {aria_code-0.165.0 → aria_code-0.166.0}/tests/test_deep_analysis.py +0 -0
  703. {aria_code-0.165.0 → aria_code-0.166.0}/tests/test_deepseek_api_capability.py +0 -0
  704. {aria_code-0.165.0 → aria_code-0.166.0}/tests/test_degrades_without_quant_engine.py +0 -0
  705. {aria_code-0.165.0 → aria_code-0.166.0}/tests/test_delivery_report.py +0 -0
  706. {aria_code-0.165.0 → aria_code-0.166.0}/tests/test_desktop_control_gate.py +0 -0
  707. {aria_code-0.165.0 → aria_code-0.166.0}/tests/test_dispatcher_pins_match_the_release.py +0 -0
  708. {aria_code-0.165.0 → aria_code-0.166.0}/tests/test_doctor.py +0 -0
  709. {aria_code-0.165.0 → aria_code-0.166.0}/tests/test_doctor_describes_the_current_install.py +0 -0
  710. {aria_code-0.165.0 → aria_code-0.166.0}/tests/test_doctor_npm_scope.py +0 -0
  711. {aria_code-0.165.0 → aria_code-0.166.0}/tests/test_doctor_sandbox.py +0 -0
  712. {aria_code-0.165.0 → aria_code-0.166.0}/tests/test_edit_and_command_safety.py +0 -0
  713. {aria_code-0.165.0 → aria_code-0.166.0}/tests/test_endpoint_migration.py +0 -0
  714. {aria_code-0.165.0 → aria_code-0.166.0}/tests/test_engine_boundary.py +0 -0
  715. {aria_code-0.165.0 → aria_code-0.166.0}/tests/test_engineering_commands.py +0 -0
  716. {aria_code-0.165.0 → aria_code-0.166.0}/tests/test_english_output_group.py +0 -0
  717. {aria_code-0.165.0 → aria_code-0.166.0}/tests/test_enterprise_tool_honesty.py +0 -0
  718. {aria_code-0.165.0 → aria_code-0.166.0}/tests/test_env_switch_docs.py +0 -0
  719. {aria_code-0.165.0 → aria_code-0.166.0}/tests/test_eval_behavior.py +0 -0
  720. {aria_code-0.165.0 → aria_code-0.166.0}/tests/test_eval_hard_suite.py +0 -0
  721. {aria_code-0.165.0 → aria_code-0.166.0}/tests/test_eval_holdout.py +0 -0
  722. {aria_code-0.165.0 → aria_code-0.166.0}/tests/test_eval_scorecard.py +0 -0
  723. {aria_code-0.165.0 → aria_code-0.166.0}/tests/test_eval_summary.py +0 -0
  724. {aria_code-0.165.0 → aria_code-0.166.0}/tests/test_eval_trajectories.py +0 -0
  725. {aria_code-0.165.0 → aria_code-0.166.0}/tests/test_eval_usage.py +0 -0
  726. {aria_code-0.165.0 → aria_code-0.166.0}/tests/test_event_import_roots.py +0 -0
  727. {aria_code-0.165.0 → aria_code-0.166.0}/tests/test_exec_events.py +0 -0
  728. {aria_code-0.165.0 → aria_code-0.166.0}/tests/test_extended_tools.py +0 -0
  729. {aria_code-0.165.0 → aria_code-0.166.0}/tests/test_feishu_swarm_config.py +0 -0
  730. {aria_code-0.165.0 → aria_code-0.166.0}/tests/test_file_links.py +0 -0
  731. {aria_code-0.165.0 → aria_code-0.166.0}/tests/test_file_references.py +0 -0
  732. {aria_code-0.165.0 → aria_code-0.166.0}/tests/test_finalize_release.py +0 -0
  733. {aria_code-0.165.0 → aria_code-0.166.0}/tests/test_finance_renderers.py +0 -0
  734. {aria_code-0.165.0 → aria_code-0.166.0}/tests/test_finance_service_catalog.py +0 -0
  735. {aria_code-0.165.0 → aria_code-0.166.0}/tests/test_financial_statement_recovery.py +0 -0
  736. {aria_code-0.165.0 → aria_code-0.166.0}/tests/test_first_run_output.py +0 -0
  737. {aria_code-0.165.0 → aria_code-0.166.0}/tests/test_first_run_works.py +0 -0
  738. {aria_code-0.165.0 → aria_code-0.166.0}/tests/test_football_agent.py +0 -0
  739. {aria_code-0.165.0 → aria_code-0.166.0}/tests/test_football_prediction_output.py +0 -0
  740. {aria_code-0.165.0 → aria_code-0.166.0}/tests/test_frozen_module_aliases.py +0 -0
  741. {aria_code-0.165.0 → aria_code-0.166.0}/tests/test_frozen_runtime_data.py +0 -0
  742. {aria_code-0.165.0 → aria_code-0.166.0}/tests/test_gemini_retirement.py +0 -0
  743. {aria_code-0.165.0 → aria_code-0.166.0}/tests/test_general_agent_profiles.py +0 -0
  744. {aria_code-0.165.0 → aria_code-0.166.0}/tests/test_general_turn_prompt.py +0 -0
  745. {aria_code-0.165.0 → aria_code-0.166.0}/tests/test_google_cloud_models.py +0 -0
  746. {aria_code-0.165.0 → aria_code-0.166.0}/tests/test_google_cloud_routing.py +0 -0
  747. {aria_code-0.165.0 → aria_code-0.166.0}/tests/test_google_login.py +0 -0
  748. {aria_code-0.165.0 → aria_code-0.166.0}/tests/test_google_search_provider.py +0 -0
  749. {aria_code-0.165.0 → aria_code-0.166.0}/tests/test_headless_command_approval.py +0 -0
  750. {aria_code-0.165.0 → aria_code-0.166.0}/tests/test_headless_is_agentic.py +0 -0
  751. {aria_code-0.165.0 → aria_code-0.166.0}/tests/test_honest_surfaces.py +0 -0
  752. {aria_code-0.165.0 → aria_code-0.166.0}/tests/test_image_gen_tools.py +0 -0
  753. {aria_code-0.165.0 → aria_code-0.166.0}/tests/test_image_inputs.py +0 -0
  754. {aria_code-0.165.0 → aria_code-0.166.0}/tests/test_import_aliasing.py +0 -0
  755. {aria_code-0.165.0 → aria_code-0.166.0}/tests/test_import_graph_budget.py +0 -0
  756. {aria_code-0.165.0 → aria_code-0.166.0}/tests/test_intent_router.py +0 -0
  757. {aria_code-0.165.0 → aria_code-0.166.0}/tests/test_intent_signals.py +0 -0
  758. {aria_code-0.165.0 → aria_code-0.166.0}/tests/test_kling_video_client.py +0 -0
  759. {aria_code-0.165.0 → aria_code-0.166.0}/tests/test_lazy_rebind.py +0 -0
  760. {aria_code-0.165.0 → aria_code-0.166.0}/tests/test_legacy_module_imports.py +0 -0
  761. {aria_code-0.165.0 → aria_code-0.166.0}/tests/test_license_consistency.py +0 -0
  762. {aria_code-0.165.0 → aria_code-0.166.0}/tests/test_licensing.py +0 -0
  763. {aria_code-0.165.0 → aria_code-0.166.0}/tests/test_linux_sandbox_integration.py +0 -0
  764. {aria_code-0.165.0 → aria_code-0.166.0}/tests/test_local_image_provider.py +0 -0
  765. {aria_code-0.165.0 → aria_code-0.166.0}/tests/test_local_workspace_execution.py +0 -0
  766. {aria_code-0.165.0 → aria_code-0.166.0}/tests/test_login_api_url.py +0 -0
  767. {aria_code-0.165.0 → aria_code-0.166.0}/tests/test_logistics_3pl.py +0 -0
  768. {aria_code-0.165.0 → aria_code-0.166.0}/tests/test_logistics_and_finance_agents.py +0 -0
  769. {aria_code-0.165.0 → aria_code-0.166.0}/tests/test_lsp.py +0 -0
  770. {aria_code-0.165.0 → aria_code-0.166.0}/tests/test_markdown_pdf.py +0 -0
  771. {aria_code-0.165.0 → aria_code-0.166.0}/tests/test_market_answers_in_english.py +0 -0
  772. {aria_code-0.165.0 → aria_code-0.166.0}/tests/test_market_data_client.py +0 -0
  773. {aria_code-0.165.0 → aria_code-0.166.0}/tests/test_market_history_inheritance.py +0 -0
  774. {aria_code-0.165.0 → aria_code-0.166.0}/tests/test_market_history_tool.py +0 -0
  775. {aria_code-0.165.0 → aria_code-0.166.0}/tests/test_market_hours.py +0 -0
  776. {aria_code-0.165.0 → aria_code-0.166.0}/tests/test_market_questions_on_backend.py +0 -0
  777. {aria_code-0.165.0 → aria_code-0.166.0}/tests/test_market_symbol_extraction.py +0 -0
  778. {aria_code-0.165.0 → aria_code-0.166.0}/tests/test_market_universe.py +0 -0
  779. {aria_code-0.165.0 → aria_code-0.166.0}/tests/test_mcp_fast_fail.py +0 -0
  780. {aria_code-0.165.0 → aria_code-0.166.0}/tests/test_mentions.py +0 -0
  781. {aria_code-0.165.0 → aria_code-0.166.0}/tests/test_model_capability_registry.py +0 -0
  782. {aria_code-0.165.0 → aria_code-0.166.0}/tests/test_model_choice_is_the_users.py +0 -0
  783. {aria_code-0.165.0 → aria_code-0.166.0}/tests/test_model_collaboration.py +0 -0
  784. {aria_code-0.165.0 → aria_code-0.166.0}/tests/test_model_native_picker.py +0 -0
  785. {aria_code-0.165.0 → aria_code-0.166.0}/tests/test_model_number_selection.py +0 -0
  786. {aria_code-0.165.0 → aria_code-0.166.0}/tests/test_model_probe.py +0 -0
  787. {aria_code-0.165.0 → aria_code-0.166.0}/tests/test_model_selection_state.py +0 -0
  788. {aria_code-0.165.0 → aria_code-0.166.0}/tests/test_narrow_chinese_output.py +0 -0
  789. {aria_code-0.165.0 → aria_code-0.166.0}/tests/test_native_approval_risk.py +0 -0
  790. {aria_code-0.165.0 → aria_code-0.166.0}/tests/test_native_binary_entrypoints.py +0 -0
  791. {aria_code-0.165.0 → aria_code-0.166.0}/tests/test_native_branding.py +0 -0
  792. {aria_code-0.165.0 → aria_code-0.166.0}/tests/test_native_bridge.py +0 -0
  793. {aria_code-0.165.0 → aria_code-0.166.0}/tests/test_native_checkpoints.py +0 -0
  794. {aria_code-0.165.0 → aria_code-0.166.0}/tests/test_native_commands_info.py +0 -0
  795. {aria_code-0.165.0 → aria_code-0.166.0}/tests/test_native_entry.py +0 -0
  796. {aria_code-0.165.0 → aria_code-0.166.0}/tests/test_native_eval_trajectories.py +0 -0
  797. {aria_code-0.165.0 → aria_code-0.166.0}/tests/test_native_go_acceptance.py +0 -0
  798. {aria_code-0.165.0 → aria_code-0.166.0}/tests/test_native_go_app.py +0 -0
  799. {aria_code-0.165.0 → aria_code-0.166.0}/tests/test_native_go_bridge.py +0 -0
  800. {aria_code-0.165.0 → aria_code-0.166.0}/tests/test_native_go_contract.py +0 -0
  801. {aria_code-0.165.0 → aria_code-0.166.0}/tests/test_native_go_delivery.py +0 -0
  802. {aria_code-0.165.0 → aria_code-0.166.0}/tests/test_native_go_providers.py +0 -0
  803. {aria_code-0.165.0 → aria_code-0.166.0}/tests/test_native_go_review.py +0 -0
  804. {aria_code-0.165.0 → aria_code-0.166.0}/tests/test_native_go_risk.py +0 -0
  805. {aria_code-0.165.0 → aria_code-0.166.0}/tests/test_native_go_stream.py +0 -0
  806. {aria_code-0.165.0 → aria_code-0.166.0}/tests/test_native_index.py +0 -0
  807. {aria_code-0.165.0 → aria_code-0.166.0}/tests/test_native_installer.py +0 -0
  808. {aria_code-0.165.0 → aria_code-0.166.0}/tests/test_native_physical.py +0 -0
  809. {aria_code-0.165.0 → aria_code-0.166.0}/tests/test_native_runtime_domain.py +0 -0
  810. {aria_code-0.165.0 → aria_code-0.166.0}/tests/test_native_session_export.py +0 -0
  811. {aria_code-0.165.0 → aria_code-0.166.0}/tests/test_native_training_compare.py +0 -0
  812. {aria_code-0.165.0 → aria_code-0.166.0}/tests/test_native_training_dataset.py +0 -0
  813. {aria_code-0.165.0 → aria_code-0.166.0}/tests/test_natural_language_routing.py +0 -0
  814. {aria_code-0.165.0 → aria_code-0.166.0}/tests/test_nebius_workspace_regression.py +0 -0
  815. {aria_code-0.165.0 → aria_code-0.166.0}/tests/test_new_modules.py +0 -0
  816. {aria_code-0.165.0 → aria_code-0.166.0}/tests/test_no_hardcoded_developer_paths.py +0 -0
  817. {aria_code-0.165.0 → aria_code-0.166.0}/tests/test_no_tools_route.py +0 -0
  818. {aria_code-0.165.0 → aria_code-0.166.0}/tests/test_no_uncommitted_imports.py +0 -0
  819. {aria_code-0.165.0 → aria_code-0.166.0}/tests/test_numeric_listings.py +0 -0
  820. {aria_code-0.165.0 → aria_code-0.166.0}/tests/test_ollama_stream_imports.py +0 -0
  821. {aria_code-0.165.0 → aria_code-0.166.0}/tests/test_ollama_stream_tools.py +0 -0
  822. {aria_code-0.165.0 → aria_code-0.166.0}/tests/test_openai_image_client.py +0 -0
  823. {aria_code-0.165.0 → aria_code-0.166.0}/tests/test_openai_params.py +0 -0
  824. {aria_code-0.165.0 → aria_code-0.166.0}/tests/test_os_sandbox.py +0 -0
  825. {aria_code-0.165.0 → aria_code-0.166.0}/tests/test_output_discipline_prompt.py +0 -0
  826. {aria_code-0.165.0 → aria_code-0.166.0}/tests/test_output_rendering.py +0 -0
  827. {aria_code-0.165.0 → aria_code-0.166.0}/tests/test_packages_facade.py +0 -0
  828. {aria_code-0.165.0 → aria_code-0.166.0}/tests/test_packaging_constraints.py +0 -0
  829. {aria_code-0.165.0 → aria_code-0.166.0}/tests/test_packaging_manifest.py +0 -0
  830. {aria_code-0.165.0 → aria_code-0.166.0}/tests/test_packs_domains.py +0 -0
  831. {aria_code-0.165.0 → aria_code-0.166.0}/tests/test_pdf_report.py +0 -0
  832. {aria_code-0.165.0 → aria_code-0.166.0}/tests/test_performance_stats.py +0 -0
  833. {aria_code-0.165.0 → aria_code-0.166.0}/tests/test_physical_risk.py +0 -0
  834. {aria_code-0.165.0 → aria_code-0.166.0}/tests/test_pick_best_installed_model.py +0 -0
  835. {aria_code-0.165.0 → aria_code-0.166.0}/tests/test_plan_mode.py +0 -0
  836. {aria_code-0.165.0 → aria_code-0.166.0}/tests/test_plan_schema.py +0 -0
  837. {aria_code-0.165.0 → aria_code-0.166.0}/tests/test_plan_without_material.py +0 -0
  838. {aria_code-0.165.0 → aria_code-0.166.0}/tests/test_platform_package_assembly.py +0 -0
  839. {aria_code-0.165.0 → aria_code-0.166.0}/tests/test_platform_packages.py +0 -0
  840. {aria_code-0.165.0 → aria_code-0.166.0}/tests/test_platform_publish.py +0 -0
  841. {aria_code-0.165.0 → aria_code-0.166.0}/tests/test_plotly_html_output.py +0 -0
  842. {aria_code-0.165.0 → aria_code-0.166.0}/tests/test_portfolio_language.py +0 -0
  843. {aria_code-0.165.0 → aria_code-0.166.0}/tests/test_portfolio_ledger.py +0 -0
  844. {aria_code-0.165.0 → aria_code-0.166.0}/tests/test_portfolio_periods.py +0 -0
  845. {aria_code-0.165.0 → aria_code-0.166.0}/tests/test_post_turn_context_decision.py +0 -0
  846. {aria_code-0.165.0 → aria_code-0.166.0}/tests/test_preflight.py +0 -0
  847. {aria_code-0.165.0 → aria_code-0.166.0}/tests/test_prelude_eval.py +0 -0
  848. {aria_code-0.165.0 → aria_code-0.166.0}/tests/test_prelude_real.py +0 -0
  849. {aria_code-0.165.0 → aria_code-0.166.0}/tests/test_prelude_router_experiment.py +0 -0
  850. {aria_code-0.165.0 → aria_code-0.166.0}/tests/test_preview_server.py +0 -0
  851. {aria_code-0.165.0 → aria_code-0.166.0}/tests/test_privacy_feedback.py +0 -0
  852. {aria_code-0.165.0 → aria_code-0.166.0}/tests/test_project_aria.py +0 -0
  853. {aria_code-0.165.0 → aria_code-0.166.0}/tests/test_project_context_files.py +0 -0
  854. {aria_code-0.165.0 → aria_code-0.166.0}/tests/test_project_graph.py +0 -0
  855. {aria_code-0.165.0 → aria_code-0.166.0}/tests/test_project_review.py +0 -0
  856. {aria_code-0.165.0 → aria_code-0.166.0}/tests/test_project_review_api.py +0 -0
  857. {aria_code-0.165.0 → aria_code-0.166.0}/tests/test_prompt_assembly.py +0 -0
  858. {aria_code-0.165.0 → aria_code-0.166.0}/tests/test_prompt_dates.py +0 -0
  859. {aria_code-0.165.0 → aria_code-0.166.0}/tests/test_prompt_selection.py +0 -0
  860. {aria_code-0.165.0 → aria_code-0.166.0}/tests/test_provider_autoconfig.py +0 -0
  861. {aria_code-0.165.0 → aria_code-0.166.0}/tests/test_provider_error_classification.py +0 -0
  862. {aria_code-0.165.0 → aria_code-0.166.0}/tests/test_provider_error_messages.py +0 -0
  863. {aria_code-0.165.0 → aria_code-0.166.0}/tests/test_provider_integration.py +0 -0
  864. {aria_code-0.165.0 → aria_code-0.166.0}/tests/test_provider_project_config.py +0 -0
  865. {aria_code-0.165.0 → aria_code-0.166.0}/tests/test_provider_registry.py +0 -0
  866. {aria_code-0.165.0 → aria_code-0.166.0}/tests/test_public_service_status.py +0 -0
  867. {aria_code-0.165.0 → aria_code-0.166.0}/tests/test_quant_engine_namespace.py +0 -0
  868. {aria_code-0.165.0 → aria_code-0.166.0}/tests/test_rebind_contract.py +0 -0
  869. {aria_code-0.165.0 → aria_code-0.166.0}/tests/test_rebind_namespace_contract.py +0 -0
  870. {aria_code-0.165.0 → aria_code-0.166.0}/tests/test_relay_url.py +0 -0
  871. {aria_code-0.165.0 → aria_code-0.166.0}/tests/test_release_badges.py +0 -0
  872. {aria_code-0.165.0 → aria_code-0.166.0}/tests/test_release_chain.py +0 -0
  873. {aria_code-0.165.0 → aria_code-0.166.0}/tests/test_release_commit_identity.py +0 -0
  874. {aria_code-0.165.0 → aria_code-0.166.0}/tests/test_release_download.py +0 -0
  875. {aria_code-0.165.0 → aria_code-0.166.0}/tests/test_release_is_manual.py +0 -0
  876. {aria_code-0.165.0 → aria_code-0.166.0}/tests/test_release_push_is_atomic.py +0 -0
  877. {aria_code-0.165.0 → aria_code-0.166.0}/tests/test_release_reaches_the_registries.py +0 -0
  878. {aria_code-0.165.0 → aria_code-0.166.0}/tests/test_release_verification_waits.py +0 -0
  879. {aria_code-0.165.0 → aria_code-0.166.0}/tests/test_release_workflow_permissions.py +0 -0
  880. {aria_code-0.165.0 → aria_code-0.166.0}/tests/test_report_charts.py +0 -0
  881. {aria_code-0.165.0 → aria_code-0.166.0}/tests/test_report_generator.py +0 -0
  882. {aria_code-0.165.0 → aria_code-0.166.0}/tests/test_report_prompt_language.py +0 -0
  883. {aria_code-0.165.0 → aria_code-0.166.0}/tests/test_research_protocol.py +0 -0
  884. {aria_code-0.165.0 → aria_code-0.166.0}/tests/test_research_quality.py +0 -0
  885. {aria_code-0.165.0 → aria_code-0.166.0}/tests/test_responsive_rendering.py +0 -0
  886. {aria_code-0.165.0 → aria_code-0.166.0}/tests/test_review_gate.py +0 -0
  887. {aria_code-0.165.0 → aria_code-0.166.0}/tests/test_review_service.py +0 -0
  888. {aria_code-0.165.0 → aria_code-0.166.0}/tests/test_risk_approval.py +0 -0
  889. {aria_code-0.165.0 → aria_code-0.166.0}/tests/test_risk_assessment.py +0 -0
  890. {aria_code-0.165.0 → aria_code-0.166.0}/tests/test_risk_earnings_ops.py +0 -0
  891. {aria_code-0.165.0 → aria_code-0.166.0}/tests/test_robot_artwork.py +0 -0
  892. {aria_code-0.165.0 → aria_code-0.166.0}/tests/test_root_module_budget.py +0 -0
  893. {aria_code-0.165.0 → aria_code-0.166.0}/tests/test_rsi_without_pandas_ta.py +0 -0
  894. {aria_code-0.165.0 → aria_code-0.166.0}/tests/test_run_store_redaction.py +0 -0
  895. {aria_code-0.165.0 → aria_code-0.166.0}/tests/test_runtime_acceptance.py +0 -0
  896. {aria_code-0.165.0 → aria_code-0.166.0}/tests/test_runtime_agent_loop.py +0 -0
  897. {aria_code-0.165.0 → aria_code-0.166.0}/tests/test_runtime_approval.py +0 -0
  898. {aria_code-0.165.0 → aria_code-0.166.0}/tests/test_runtime_bridge.py +0 -0
  899. {aria_code-0.165.0 → aria_code-0.166.0}/tests/test_runtime_bridge_fallback.py +0 -0
  900. {aria_code-0.165.0 → aria_code-0.166.0}/tests/test_runtime_checkpoints.py +0 -0
  901. {aria_code-0.165.0 → aria_code-0.166.0}/tests/test_runtime_event_identity.py +0 -0
  902. {aria_code-0.165.0 → aria_code-0.166.0}/tests/test_runtime_gateway.py +0 -0
  903. {aria_code-0.165.0 → aria_code-0.166.0}/tests/test_runtime_repo_map.py +0 -0
  904. {aria_code-0.165.0 → aria_code-0.166.0}/tests/test_runtime_run_store.py +0 -0
  905. {aria_code-0.165.0 → aria_code-0.166.0}/tests/test_runtime_tool_executor.py +0 -0
  906. {aria_code-0.165.0 → aria_code-0.166.0}/tests/test_runtime_worktrees.py +0 -0
  907. {aria_code-0.165.0 → aria_code-0.166.0}/tests/test_runway_video_client.py +0 -0
  908. {aria_code-0.165.0 → aria_code-0.166.0}/tests/test_rust_cli.py +0 -0
  909. {aria_code-0.165.0 → aria_code-0.166.0}/tests/test_rust_state.py +0 -0
  910. {aria_code-0.165.0 → aria_code-0.166.0}/tests/test_rust_stream.py +0 -0
  911. {aria_code-0.165.0 → aria_code-0.166.0}/tests/test_safety_permissions.py +0 -0
  912. {aria_code-0.165.0 → aria_code-0.166.0}/tests/test_safety_service.py +0 -0
  913. {aria_code-0.165.0 → aria_code-0.166.0}/tests/test_safety_service_adoption.py +0 -0
  914. {aria_code-0.165.0 → aria_code-0.166.0}/tests/test_sec_statement_fallback.py +0 -0
  915. {aria_code-0.165.0 → aria_code-0.166.0}/tests/test_semantic_diff.py +0 -0
  916. {aria_code-0.165.0 → aria_code-0.166.0}/tests/test_service_diagnostics_security.py +0 -0
  917. {aria_code-0.165.0 → aria_code-0.166.0}/tests/test_session_refresh.py +0 -0
  918. {aria_code-0.165.0 → aria_code-0.166.0}/tests/test_session_search.py +0 -0
  919. {aria_code-0.165.0 → aria_code-0.166.0}/tests/test_settings_service.py +0 -0
  920. {aria_code-0.165.0 → aria_code-0.166.0}/tests/test_shell_commands_as_written.py +0 -0
  921. {aria_code-0.165.0 → aria_code-0.166.0}/tests/test_shipper_digest.py +0 -0
  922. {aria_code-0.165.0 → aria_code-0.166.0}/tests/test_single_import_root.py +0 -0
  923. {aria_code-0.165.0 → aria_code-0.166.0}/tests/test_skill_agent_binding.py +0 -0
  924. {aria_code-0.165.0 → aria_code-0.166.0}/tests/test_skill_catalog.py +0 -0
  925. {aria_code-0.165.0 → aria_code-0.166.0}/tests/test_skill_loader.py +0 -0
  926. {aria_code-0.165.0 → aria_code-0.166.0}/tests/test_slash_popup.py +0 -0
  927. {aria_code-0.165.0 → aria_code-0.166.0}/tests/test_spreadsheet_tools.py +0 -0
  928. {aria_code-0.165.0 → aria_code-0.166.0}/tests/test_sse_http_roundtrip.py +0 -0
  929. {aria_code-0.165.0 → aria_code-0.166.0}/tests/test_sse_stream_contract.py +0 -0
  930. {aria_code-0.165.0 → aria_code-0.166.0}/tests/test_startup_dashboard.py +0 -0
  931. {aria_code-0.165.0 → aria_code-0.166.0}/tests/test_startup_keeps_cloud_model.py +0 -0
  932. {aria_code-0.165.0 → aria_code-0.166.0}/tests/test_startup_latency.py +0 -0
  933. {aria_code-0.165.0 → aria_code-0.166.0}/tests/test_status_language.py +0 -0
  934. {aria_code-0.165.0 → aria_code-0.166.0}/tests/test_streaming_pipeline.py +0 -0
  935. {aria_code-0.165.0 → aria_code-0.166.0}/tests/test_stripe_agent.py +0 -0
  936. {aria_code-0.165.0 → aria_code-0.166.0}/tests/test_subagent.py +0 -0
  937. {aria_code-0.165.0 → aria_code-0.166.0}/tests/test_subagent_workspace.py +0 -0
  938. {aria_code-0.165.0 → aria_code-0.166.0}/tests/test_supervisor_routing.py +0 -0
  939. {aria_code-0.165.0 → aria_code-0.166.0}/tests/test_symbol_edit.py +0 -0
  940. {aria_code-0.165.0 → aria_code-0.166.0}/tests/test_system_prompts.py +0 -0
  941. {aria_code-0.165.0 → aria_code-0.166.0}/tests/test_system_tools_output.py +0 -0
  942. {aria_code-0.165.0 → aria_code-0.166.0}/tests/test_task_context.py +0 -0
  943. {aria_code-0.165.0 → aria_code-0.166.0}/tests/test_task_isolation_turn.py +0 -0
  944. {aria_code-0.165.0 → aria_code-0.166.0}/tests/test_task_orchestrator.py +0 -0
  945. {aria_code-0.165.0 → aria_code-0.166.0}/tests/test_task_restore_startup.py +0 -0
  946. {aria_code-0.165.0 → aria_code-0.166.0}/tests/test_task_verification.py +0 -0
  947. {aria_code-0.165.0 → aria_code-0.166.0}/tests/test_task_worktree.py +0 -0
  948. {aria_code-0.165.0 → aria_code-0.166.0}/tests/test_team_analysts.py +0 -0
  949. {aria_code-0.165.0 → aria_code-0.166.0}/tests/test_team_synthesis.py +0 -0
  950. {aria_code-0.165.0 → aria_code-0.166.0}/tests/test_terminal_mixins.py +0 -0
  951. {aria_code-0.165.0 → aria_code-0.166.0}/tests/test_terminal_snapshots.py +0 -0
  952. {aria_code-0.165.0 → aria_code-0.166.0}/tests/test_tls_trust_store.py +0 -0
  953. {aria_code-0.165.0 → aria_code-0.166.0}/tests/test_tool_policy.py +0 -0
  954. {aria_code-0.165.0 → aria_code-0.166.0}/tests/test_tool_rounds_on_openai_apis.py +0 -0
  955. {aria_code-0.165.0 → aria_code-0.166.0}/tests/test_tool_scope.py +0 -0
  956. {aria_code-0.165.0 → aria_code-0.166.0}/tests/test_tool_step_output.py +0 -0
  957. {aria_code-0.165.0 → aria_code-0.166.0}/tests/test_trading_service.py +0 -0
  958. {aria_code-0.165.0 → aria_code-0.166.0}/tests/test_tradingview_bridge.py +0 -0
  959. {aria_code-0.165.0 → aria_code-0.166.0}/tests/test_training_pipeline.py +0 -0
  960. {aria_code-0.165.0 → aria_code-0.166.0}/tests/test_trajectory_dataset.py +0 -0
  961. {aria_code-0.165.0 → aria_code-0.166.0}/tests/test_transactions.py +0 -0
  962. {aria_code-0.165.0 → aria_code-0.166.0}/tests/test_transactions_turn.py +0 -0
  963. {aria_code-0.165.0 → aria_code-0.166.0}/tests/test_turn_planning.py +0 -0
  964. {aria_code-0.165.0 → aria_code-0.166.0}/tests/test_ui_completer_references.py +0 -0
  965. {aria_code-0.165.0 → aria_code-0.166.0}/tests/test_ui_console_theme.py +0 -0
  966. {aria_code-0.165.0 → aria_code-0.166.0}/tests/test_ui_input_box.py +0 -0
  967. {aria_code-0.165.0 → aria_code-0.166.0}/tests/test_ui_language_and_model.py +0 -0
  968. {aria_code-0.165.0 → aria_code-0.166.0}/tests/test_ui_robot_banner.py +0 -0
  969. {aria_code-0.165.0 → aria_code-0.166.0}/tests/test_update_health_routes.py +0 -0
  970. {aria_code-0.165.0 → aria_code-0.166.0}/tests/test_verification_hint.py +0 -0
  971. {aria_code-0.165.0 → aria_code-0.166.0}/tests/test_verification_policy.py +0 -0
  972. {aria_code-0.165.0 → aria_code-0.166.0}/tests/test_verification_runner_selection.py +0 -0
  973. {aria_code-0.165.0 → aria_code-0.166.0}/tests/test_version_consistency.py +0 -0
  974. {aria_code-0.165.0 → aria_code-0.166.0}/tests/test_version_counter.py +0 -0
  975. {aria_code-0.165.0 → aria_code-0.166.0}/tests/test_vertex_busy_retry.py +0 -0
  976. {aria_code-0.165.0 → aria_code-0.166.0}/tests/test_vertex_empty_rounds.py +0 -0
  977. {aria_code-0.165.0 → aria_code-0.166.0}/tests/test_vertex_models.py +0 -0
  978. {aria_code-0.165.0 → aria_code-0.166.0}/tests/test_vertex_project.py +0 -0
  979. {aria_code-0.165.0 → aria_code-0.166.0}/tests/test_vertexai_tool_history.py +0 -0
  980. {aria_code-0.165.0 → aria_code-0.166.0}/tests/test_video_analysis.py +0 -0
  981. {aria_code-0.165.0 → aria_code-0.166.0}/tests/test_video_director.py +0 -0
  982. {aria_code-0.165.0 → aria_code-0.166.0}/tests/test_video_editor.py +0 -0
  983. {aria_code-0.165.0 → aria_code-0.166.0}/tests/test_video_engines.py +0 -0
  984. {aria_code-0.165.0 → aria_code-0.166.0}/tests/test_video_multi_agent.py +0 -0
  985. {aria_code-0.165.0 → aria_code-0.166.0}/tests/test_video_session.py +0 -0
  986. {aria_code-0.165.0 → aria_code-0.166.0}/tests/test_warehouse_agents.py +0 -0
  987. {aria_code-0.165.0 → aria_code-0.166.0}/tests/test_warehouse_cli_registration.py +0 -0
  988. {aria_code-0.165.0 → aria_code-0.166.0}/tests/test_warehouse_erp_client.py +0 -0
  989. {aria_code-0.165.0 → aria_code-0.166.0}/tests/test_warehouse_task_agent.py +0 -0
  990. {aria_code-0.165.0 → aria_code-0.166.0}/tests/test_warehouse_workflow.py +0 -0
  991. {aria_code-0.165.0 → aria_code-0.166.0}/tests/test_web_login.py +0 -0
  992. {aria_code-0.165.0 → aria_code-0.166.0}/tests/test_wheel_is_installable.py +0 -0
  993. {aria_code-0.165.0 → aria_code-0.166.0}/tests/test_workflows.py +0 -0
  994. {aria_code-0.165.0 → aria_code-0.166.0}/tests/test_workspace_changes.py +0 -0
  995. {aria_code-0.165.0 → aria_code-0.166.0}/tests/test_workspace_files.py +0 -0
  996. {aria_code-0.165.0 → aria_code-0.166.0}/tests/test_workspace_scope.py +0 -0
  997. {aria_code-0.165.0 → aria_code-0.166.0}/tests/test_workspace_service.py +0 -0
  998. {aria_code-0.165.0 → aria_code-0.166.0}/tests/test_workspace_verify.py +0 -0
  999. {aria_code-0.165.0 → aria_code-0.166.0}/tests/test_wrapped_indent.py +0 -0
  1000. {aria_code-0.165.0 → aria_code-0.166.0}/tests/test_write_file_short_content.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: aria-code
3
- Version: 0.165.0
3
+ Version: 0.166.0
4
4
  Summary: Open-source AI agent for coding, financial analysis and logistics operations: numbers you can check, client data kept apart, actions a person approves
5
5
  License: Apache-2.0
6
6
  Project-URL: Homepage, https://github.com/artheras/aria-code
@@ -36,24 +36,30 @@ Requires-Dist: aiofiles>=23.2.0
36
36
  Requires-Dist: websockets>=12.0
37
37
  Requires-Dist: apscheduler>=3.10.0
38
38
  Requires-Dist: ddgs>=9.0
39
- Requires-Dist: numpy>=1.26.0
40
- Requires-Dist: pandas>=2.2.0
41
- Requires-Dist: scipy>=1.13.0
42
- Requires-Dist: pandas_ta>=0.4.67b0; python_version >= "3.12"
43
- Requires-Dist: yfinance>=0.2.55
44
39
  Requires-Dist: pyobjc-framework-WebKit>=10.0; sys_platform == "darwin"
45
40
  Requires-Dist: markdown>=3.6
41
+ Provides-Extra: finance
42
+ Requires-Dist: numpy>=1.26.0; extra == "finance"
43
+ Requires-Dist: pandas>=2.2.0; extra == "finance"
44
+ Requires-Dist: scipy>=1.13.0; extra == "finance"
45
+ Requires-Dist: pandas_ta>=0.4.67b0; python_version >= "3.12" and extra == "finance"
46
+ Requires-Dist: yfinance>=0.2.55; extra == "finance"
46
47
  Provides-Extra: cn
47
48
  Requires-Dist: akshare>=1.14.68; extra == "cn"
49
+ Requires-Dist: pandas>=2.2.0; extra == "cn"
48
50
  Provides-Extra: crypto
49
51
  Requires-Dist: ccxt>=4.4.0; extra == "crypto"
52
+ Requires-Dist: pandas>=2.2.0; extra == "crypto"
50
53
  Provides-Extra: charts
51
54
  Requires-Dist: mplfinance>=0.12.10b0; extra == "charts"
55
+ Requires-Dist: pandas>=2.2.0; extra == "charts"
52
56
  Provides-Extra: google
53
57
  Requires-Dist: google-genai>=1.0.0; extra == "google"
54
58
  Provides-Extra: data
55
59
  Requires-Dist: duckdb>=0.10.3; extra == "data"
60
+ Requires-Dist: pandas>=2.2.0; extra == "data"
56
61
  Provides-Extra: files
62
+ Requires-Dist: pandas>=2.2.0; extra == "files"
57
63
  Requires-Dist: pdfplumber>=0.11.0; extra == "files"
58
64
  Requires-Dist: pypdf>=4.3.0; extra == "files"
59
65
  Requires-Dist: python-docx>=1.1.2; extra == "files"
@@ -87,6 +93,7 @@ Requires-Dist: longbridge>=1.0.22; extra == "brokers"
87
93
  Requires-Dist: alpaca-py>=0.35.0; extra == "brokers"
88
94
  Provides-Extra: backtest
89
95
  Requires-Dist: vectorbt>=0.26.2; extra == "backtest"
96
+ Requires-Dist: yfinance>=0.2.55; extra == "backtest"
90
97
  Provides-Extra: image-gen
91
98
  Requires-Dist: torch>=2.2.0; extra == "image-gen"
92
99
  Requires-Dist: diffusers>=0.30.0; extra == "image-gen"
@@ -99,11 +106,19 @@ Requires-Dist: playwright>=1.44.0; extra == "browser"
99
106
  Provides-Extra: desktop
100
107
  Requires-Dist: mss>=9.0.1; extra == "desktop"
101
108
  Requires-Dist: pyautogui>=0.9.54; extra == "desktop"
109
+ Requires-Dist: pillow>=10.0; extra == "desktop"
110
+ Requires-Dist: pyperclip>=1.9; extra == "desktop"
102
111
  Provides-Extra: sports
103
112
  Requires-Dist: understat>=0.1.0; extra == "sports"
113
+ Requires-Dist: numpy>=1.26.0; extra == "sports"
104
114
  Provides-Extra: lsp
105
115
  Requires-Dist: python-lsp-server[all]>=1.10.0; extra == "lsp"
106
116
  Provides-Extra: dev
117
+ Requires-Dist: numpy>=1.26.0; extra == "dev"
118
+ Requires-Dist: pandas>=2.2.0; extra == "dev"
119
+ Requires-Dist: scipy>=1.13.0; extra == "dev"
120
+ Requires-Dist: pandas_ta>=0.4.67b0; python_version >= "3.12" and extra == "dev"
121
+ Requires-Dist: yfinance>=0.2.55; extra == "dev"
107
122
  Requires-Dist: pytest>=8.2.0; extra == "dev"
108
123
  Requires-Dist: pytest-asyncio>=0.23.7; extra == "dev"
109
124
  Requires-Dist: pytest-timeout>=2.3.0; extra == "dev"
@@ -112,7 +127,16 @@ Requires-Dist: mypy>=1.10.0; extra == "dev"
112
127
  Requires-Dist: fastapi>=0.110.0; extra == "dev"
113
128
  Requires-Dist: uvicorn>=0.29.0; extra == "dev"
114
129
  Requires-Dist: python-multipart>=0.0.9; extra == "dev"
130
+ Provides-Extra: service
131
+ Requires-Dist: fastapi>=0.110.0; extra == "service"
132
+ Requires-Dist: uvicorn>=0.29.0; extra == "service"
133
+ Requires-Dist: python-multipart>=0.0.9; extra == "service"
115
134
  Provides-Extra: full
135
+ Requires-Dist: numpy>=1.26.0; extra == "full"
136
+ Requires-Dist: pandas>=2.2.0; extra == "full"
137
+ Requires-Dist: scipy>=1.13.0; extra == "full"
138
+ Requires-Dist: pandas_ta>=0.4.67b0; python_version >= "3.12" and extra == "full"
139
+ Requires-Dist: yfinance>=0.2.55; extra == "full"
116
140
  Requires-Dist: google-genai>=1.0.0; extra == "full"
117
141
  Requires-Dist: akshare>=1.14.68; extra == "full"
118
142
  Requires-Dist: ccxt>=4.4.0; extra == "full"
@@ -127,6 +151,11 @@ Requires-Dist: beautifulsoup4>=4.12.3; extra == "full"
127
151
  Requires-Dist: Pillow>=10.4.0; extra == "full"
128
152
  Requires-Dist: ddgs>=9.0; extra == "full"
129
153
  Provides-Extra: all
154
+ Requires-Dist: numpy>=1.26.0; extra == "all"
155
+ Requires-Dist: pandas>=2.2.0; extra == "all"
156
+ Requires-Dist: scipy>=1.13.0; extra == "all"
157
+ Requires-Dist: pandas_ta>=0.4.67b0; python_version >= "3.12" and extra == "all"
158
+ Requires-Dist: yfinance>=0.2.55; extra == "all"
130
159
  Requires-Dist: google-genai>=1.0.0; extra == "all"
131
160
  Requires-Dist: akshare>=1.14.68; extra == "all"
132
161
  Requires-Dist: ccxt>=4.4.0; extra == "all"
@@ -172,7 +201,7 @@ Numbers you can check, client data kept apart, actions a person approves.</p>
172
201
  <p align="center">
173
202
  <a href="https://www.npmjs.com/package/@artheras/aria-code"><img src="https://img.shields.io/npm/v/@artheras/aria-code/latest?style=flat-square&logo=npm&label=npm" alt="npm version"></a>
174
203
  <!-- Release automation pins PyPI: the default endpoint still selects legacy 4.x. -->
175
- <a href="https://pypi.org/project/aria-code/0.165.0/"><img src="https://img.shields.io/badge/dynamic/json?url=https%3A%2F%2Fpypi.org%2Fpypi%2Faria-code%2F0.165.0%2Fjson&amp;query=%24.info.version&amp;prefix=v&amp;style=flat-square&amp;logo=pypi&amp;label=PyPI&amp;color=blue&amp;cacheSeconds=300" alt="PyPI version"></a>
204
+ <a href="https://pypi.org/project/aria-code/0.166.0/"><img src="https://img.shields.io/badge/dynamic/json?url=https%3A%2F%2Fpypi.org%2Fpypi%2Faria-code%2F0.166.0%2Fjson&amp;query=%24.info.version&amp;prefix=v&amp;style=flat-square&amp;logo=pypi&amp;label=PyPI&amp;color=blue&amp;cacheSeconds=300" alt="PyPI version"></a>
176
205
  <a href="https://github.com/artheras/aria-code/actions/workflows/ci.yml"><img src="https://img.shields.io/github/actions/workflow/status/artheras/aria-code/ci.yml?branch=main&style=flat-square&logo=githubactions&label=CI" alt="CI status"></a>
177
206
  <a href="LICENSE"><img src="https://img.shields.io/badge/license-Apache%202.0-64748b?style=flat-square" alt="Apache License 2.0"></a>
178
207
  </p>
@@ -225,6 +254,8 @@ The installer downloads the binary for your OS from the latest [GitHub release](
225
254
 
226
255
  Alternative package-manager installs: `npm install -g @artheras/aria-code` (requires npm) or `python3 -m pip install --upgrade "aria-code<4"` (requires Python 3.10+; the `<4` skips an older 4.x numbering that PyPI still lists). For development from source, see [CONTRIBUTING.md](CONTRIBUTING.md).
227
256
 
257
+ The pip base install supports coding and chat without the financial data stack. Add it with `python3 -m pip install "aria-code[finance]<4"`; `full`, `all`, and `dev` retain finance dependencies. Native/npm releases retain their bundled financial tools. See [optional finance installation](docs/optional-finance.md).
258
+
228
259
  ### Updates
229
260
 
230
261
  Aria checks for a newer stable version in the background at startup, at most once per day. Cached notices appear immediately; network checks never delay the prompt. It checks GitHub Releases, or scoped npm for npm installs. Pip updates pin the GitHub version and verify that version is available on PyPI, avoiding the older 4.x numbering still listed as PyPI's latest. Source checkouts receive Git update instructions.
@@ -295,3 +326,5 @@ For the current command-line flags, run `aria-code --help`. For help inside the
295
326
  Contributions are welcome; see [CONTRIBUTING.md](CONTRIBUTING.md). Aria Code is open source under the [Apache License, Version 2.0](LICENSE).
296
327
 
297
328
  Releases 4.2.0 through 4.4.5 were published under the Business Source License 1.1 and remain available under those terms; releases up to and including 4.1.2 were MIT. A license grant cannot be withdrawn from someone who already has it, so each version keeps the license it shipped with — see [NOTICE](NOTICE).
329
+
330
+ Shared financial tools can also run independently through the [Financial Service MCP integration](docs/financial-service.md), with a reusable Finance workflow in [Aria Plugins](https://github.com/artheras/aria-plugins). Legacy financial commands remain available.
@@ -15,7 +15,7 @@ Numbers you can check, client data kept apart, actions a person approves.</p>
15
15
  <p align="center">
16
16
  <a href="https://www.npmjs.com/package/@artheras/aria-code"><img src="https://img.shields.io/npm/v/@artheras/aria-code/latest?style=flat-square&logo=npm&label=npm" alt="npm version"></a>
17
17
  <!-- Release automation pins PyPI: the default endpoint still selects legacy 4.x. -->
18
- <a href="https://pypi.org/project/aria-code/0.165.0/"><img src="https://img.shields.io/badge/dynamic/json?url=https%3A%2F%2Fpypi.org%2Fpypi%2Faria-code%2F0.165.0%2Fjson&amp;query=%24.info.version&amp;prefix=v&amp;style=flat-square&amp;logo=pypi&amp;label=PyPI&amp;color=blue&amp;cacheSeconds=300" alt="PyPI version"></a>
18
+ <a href="https://pypi.org/project/aria-code/0.166.0/"><img src="https://img.shields.io/badge/dynamic/json?url=https%3A%2F%2Fpypi.org%2Fpypi%2Faria-code%2F0.166.0%2Fjson&amp;query=%24.info.version&amp;prefix=v&amp;style=flat-square&amp;logo=pypi&amp;label=PyPI&amp;color=blue&amp;cacheSeconds=300" alt="PyPI version"></a>
19
19
  <a href="https://github.com/artheras/aria-code/actions/workflows/ci.yml"><img src="https://img.shields.io/github/actions/workflow/status/artheras/aria-code/ci.yml?branch=main&style=flat-square&logo=githubactions&label=CI" alt="CI status"></a>
20
20
  <a href="LICENSE"><img src="https://img.shields.io/badge/license-Apache%202.0-64748b?style=flat-square" alt="Apache License 2.0"></a>
21
21
  </p>
@@ -68,6 +68,8 @@ The installer downloads the binary for your OS from the latest [GitHub release](
68
68
 
69
69
  Alternative package-manager installs: `npm install -g @artheras/aria-code` (requires npm) or `python3 -m pip install --upgrade "aria-code<4"` (requires Python 3.10+; the `<4` skips an older 4.x numbering that PyPI still lists). For development from source, see [CONTRIBUTING.md](CONTRIBUTING.md).
70
70
 
71
+ The pip base install supports coding and chat without the financial data stack. Add it with `python3 -m pip install "aria-code[finance]<4"`; `full`, `all`, and `dev` retain finance dependencies. Native/npm releases retain their bundled financial tools. See [optional finance installation](docs/optional-finance.md).
72
+
71
73
  ### Updates
72
74
 
73
75
  Aria checks for a newer stable version in the background at startup, at most once per day. Cached notices appear immediately; network checks never delay the prompt. It checks GitHub Releases, or scoped npm for npm installs. Pip updates pin the GitHub version and verify that version is available on PyPI, avoiding the older 4.x numbering still listed as PyPI's latest. Source checkouts receive Git update instructions.
@@ -138,3 +140,5 @@ For the current command-line flags, run `aria-code --help`. For help inside the
138
140
  Contributions are welcome; see [CONTRIBUTING.md](CONTRIBUTING.md). Aria Code is open source under the [Apache License, Version 2.0](LICENSE).
139
141
 
140
142
  Releases 4.2.0 through 4.4.5 were published under the Business Source License 1.1 and remain available under those terms; releases up to and including 4.1.2 were MIT. A license grant cannot be withdrawn from someone who already has it, so each version keeps the license it shipped with — see [NOTICE](NOTICE).
143
+
144
+ Shared financial tools can also run independently through the [Financial Service MCP integration](docs/financial-service.md), with a reusable Finance workflow in [Aria Plugins](https://github.com/artheras/aria-plugins). Legacy financial commands remain available.
@@ -4,11 +4,11 @@ build-backend = "setuptools.build_meta"
4
4
 
5
5
  [project]
6
6
  name = "aria-code"
7
- version = "0.165.0"
7
+ version = "0.166.0"
8
8
  description = "Open-source AI agent for coding, financial analysis and logistics operations: numbers you can check, client data kept apart, actions a person approves"
9
9
  readme = "README.md"
10
10
  license = { text = "Apache-2.0" }
11
- # Upper bound is real, not defensive: the core dep pandas_ta pulls numba, and
11
+ # Upper bound is real, not defensive: the finance/full extras include pandas_ta, which pulls numba, and
12
12
  # numba hard-refuses to build on 3.14 ("only versions >=3.10,<3.14 are
13
13
  # supported"). Without this bound pip happily starts the install on 3.14 and
14
14
  # fails deep in the dependency tree on a numba source build — an error that
@@ -66,12 +66,6 @@ dependencies = [
66
66
  "websockets>=12.0",
67
67
  "apscheduler>=3.10.0",
68
68
  "ddgs>=9.0", # keyless web_search fallback — tiny, kept in core so search works even on a slim/degraded install
69
- # Quant core (used across indicators, risk, formatting)
70
- "numpy>=1.26.0",
71
- "pandas>=2.2.0",
72
- "scipy>=1.13.0",
73
- "pandas_ta>=0.4.67b0; python_version >= '3.12'", # PyPI removed 0.3.x; 0.4.x is 3.12-only. Optional — code has graceful fallback (find_spec/try-except).
74
- "yfinance>=0.2.55",
75
69
  # macOS native PDF engine for /report --pdf (WKWebView.createPDF; no browser
76
70
  # required). Non-darwin platforms use headless Chrome / weasyprint instead.
77
71
  "pyobjc-framework-WebKit>=10.0; sys_platform == 'darwin'",
@@ -81,19 +75,29 @@ dependencies = [
81
75
 
82
76
  [project.optional-dependencies]
83
77
 
78
+ # Optional financial data and numerical tools; coding/chat do not require them.
79
+ finance = [
80
+ "numpy>=1.26.0",
81
+ "pandas>=2.2.0",
82
+ "scipy>=1.13.0",
83
+ "pandas_ta>=0.4.67b0; python_version >= '3.12'",
84
+ "yfinance>=0.2.55",
85
+ ]
86
+
84
87
  # ── Data sources (heavy / region-specific) ────────────────────────────────────
85
- cn = ["akshare>=1.14.68"] # China A-share / HK market data (large dep tree)
86
- crypto = ["ccxt>=4.4.0"] # crypto exchanges (large dep tree)
88
+ cn = ["akshare>=1.14.68", "pandas>=2.2.0"] # China A-share / HK market data (large dep tree)
89
+ crypto = ["ccxt>=4.4.0", "pandas>=2.2.0"] # crypto exchanges (large dep tree)
87
90
 
88
91
  # ── Feature add-ons ────────────────────────────────────────────────────────────
89
- charts = ["mplfinance>=0.12.10b0"] # candlestick charts in /report /chart
92
+ charts = ["mplfinance>=0.12.10b0", "pandas>=2.2.0"] # candlestick charts in /report /chart
90
93
 
91
94
  # Gemini / Vertex AI. Now a core dependency (see the top of `dependencies`);
92
95
  # the extra is kept so `pip install 'aria-code[google]'` in existing scripts
93
96
  # and docs keeps working.
94
97
  google = ["google-genai>=1.0.0"]
95
- data = ["duckdb>=0.10.3"] # in-process SQL: /data sql "SELECT …"
98
+ data = ["duckdb>=0.10.3", "pandas>=2.2.0"] # in-process SQL: /data sql "SELECT …"
96
99
  files = [ # /file load + /file analyze document parsing
100
+ "pandas>=2.2.0", # CSV/Excel analysis also needs dataframes
97
101
  "pdfplumber>=0.11.0",
98
102
  "pypdf>=4.3.0",
99
103
  "python-docx>=1.1.2",
@@ -128,7 +132,7 @@ brokers = [
128
132
  ]
129
133
 
130
134
  # ── Enhanced backtesting ───────────────────────────────────────────────────────
131
- backtest = ["vectorbt>=0.26.2"]
135
+ backtest = ["vectorbt>=0.26.2", "yfinance>=0.2.55"]
132
136
 
133
137
  # ── Local, self-hosted image generation (no API key, no per-call cost) ─────────
134
138
  image_gen = [
@@ -141,14 +145,20 @@ image_gen = [
141
145
  # ── Web search / browser / desktop automation ──────────────────────────────────
142
146
  web = ["ddgs>=9.0"] # zero-config web_search fallback
143
147
  browser = ["playwright>=1.44.0"] # headless browser (/browser)
144
- desktop = ["mss>=9.0.1", "pyautogui>=0.9.54"] # screen capture + GUI automation
145
- sports = ["understat>=0.1.0"] # football xG data
148
+ desktop = ["mss>=9.0.1", "pyautogui>=0.9.54", "pillow>=10.0", "pyperclip>=1.9"] # screen capture + GUI automation
149
+ sports = ["understat>=0.1.0", "numpy>=1.26.0"] # football xG data
146
150
 
147
151
  # ── Language-server diagnostics (/lsp, lsp_autocheck) ──────────────────────────
148
152
  lsp = ["python-lsp-server[all]>=1.10.0"]
149
153
 
150
154
  # ── Developer tools ────────────────────────────────────────────────────────────
151
155
  dev = [
156
+ # Existing developer suites include finance/quant regression fixtures.
157
+ "numpy>=1.26.0",
158
+ "pandas>=2.2.0",
159
+ "scipy>=1.13.0",
160
+ "pandas_ta>=0.4.67b0; python_version >= '3.12'",
161
+ "yfinance>=0.2.55",
152
162
  "pytest>=8.2.0",
153
163
  "pytest-asyncio>=0.23.7",
154
164
  # test.yml's pytest job installs the suite through this extra and passes
@@ -165,10 +175,23 @@ dev = [
165
175
  "python-multipart>=0.0.9",
166
176
  ]
167
177
 
178
+ # ── Project-review HTTP service (Dockerfile.review installs ".[service]") ─────
179
+ # Kept in step with the fastapi/uvicorn/python-multipart pins in `dev` above.
180
+ service = [
181
+ "fastapi>=0.110.0",
182
+ "uvicorn>=0.29.0",
183
+ "python-multipart>=0.0.9",
184
+ ]
185
+
168
186
  # ── Full feature set (what the bootstrap installers install by default) ────────
169
187
  # Everything a normal user wants — all data sources + files + charts + SQL —
170
188
  # but no brokers / dev / backtest extras.
171
189
  full = [
190
+ "numpy>=1.26.0",
191
+ "pandas>=2.2.0",
192
+ "scipy>=1.13.0",
193
+ "pandas_ta>=0.4.67b0; python_version >= '3.12'",
194
+ "yfinance>=0.2.55",
172
195
  "google-genai>=1.0.0",
173
196
  "akshare>=1.14.68",
174
197
  "ccxt>=4.4.0",
@@ -186,6 +209,11 @@ full = [
186
209
 
187
210
  # ── Everything (full + brokers + backtest + automation + dev) ─────────────────
188
211
  all = [
212
+ "numpy>=1.26.0",
213
+ "pandas>=2.2.0",
214
+ "scipy>=1.13.0",
215
+ "pandas_ta>=0.4.67b0; python_version >= '3.12'",
216
+ "yfinance>=0.2.55",
189
217
  "google-genai>=1.0.0",
190
218
  "akshare>=1.14.68",
191
219
  "ccxt>=4.4.0",
@@ -218,6 +246,7 @@ all = [
218
246
  aria-code = "aria_code.apps.cli.main:main"
219
247
  aria = "aria_code.apps.cli.main:main"
220
248
  aria-code-mcp = "aria_code.aria_mcp_server:main"
249
+ aria-computer-use = "aria_code.computer_use_server:main"
221
250
 
222
251
  [project.urls]
223
252
  Homepage = "https://github.com/artheras/aria-code"
@@ -370,3 +399,4 @@ python_files = ["test_*.py"]
370
399
  filterwarnings = [
371
400
  "ignore:datetime\\.datetime\\.utcfromtimestamp\\(\\) is deprecated:DeprecationWarning:google\\.protobuf\\.internal\\.well_known_types",
372
401
  ]
402
+
@@ -3,7 +3,7 @@
3
3
  __version__ used to live in aria_cli.py, which meant anything wanting the
4
4
  version string had to import the whole interactive CLI — prompt_toolkit,
5
5
  bootstrap hooks, the tool registry, all of it. The three consumers each worked
6
- around that differently: crash_report and a diagnostics accessor imported
6
+ around that differently: a crash reporter (since removed) and a diagnostics accessor imported
7
7
  aria_cli anyway, and the MCP server went to importlib.metadata instead, with a
8
8
  comment explaining that pulling in aria_cli was too heavy for a binary whose
9
9
  job is speaking JSON-RPC over stdio.
@@ -17,4 +17,4 @@ from __future__ import annotations
17
17
 
18
18
  __all__ = ["__version__"]
19
19
 
20
- __version__ = "0.165.0"
20
+ __version__ = "0.166.0"
@@ -1662,6 +1662,24 @@ class CoreCommandsMixin:
1662
1662
  sub = args.strip().lower()
1663
1663
  reg = self.terminal._mcp_registry
1664
1664
 
1665
+ if sub == "finance" or sub.startswith("finance "):
1666
+ import shlex
1667
+ from pathlib import Path
1668
+ from aria_code.packages.aria_mcp.config import install_financial_service_config
1669
+ try:
1670
+ parts = shlex.split(args.strip(), posix=True)
1671
+ if len(parts) != 3 or parts[:2] != ["finance", "install"]:
1672
+ self.context.console.print(
1673
+ 'Install financial-service in its own environment, then run: '
1674
+ '/mcp finance install "/absolute/path/to/service-venv/bin/python"')
1675
+ return
1676
+ target = install_financial_service_config(Path(MCP_CONFIG_PATH), Path(parts[2]))
1677
+ self.context.console.print(
1678
+ f"Financial MCP configured at {target}. Networking is off. Run /mcp reload to connect.")
1679
+ except (OSError, ValueError) as exc:
1680
+ self.context.console.print(f"Financial MCP configuration was not changed: {exc}")
1681
+ return
1682
+
1665
1683
  _parts = sub.split()
1666
1684
  if _parts and _parts[0] in ("reload", "restart") and len(_parts) > 1:
1667
1685
  # Per-server reload: restart one subprocess + reset its circuit,
@@ -203,8 +203,7 @@ class UiCommandsMixin:
203
203
  result = _tool_browser_screenshot({"url": url})
204
204
  if result.get("success"):
205
205
  d = result["data"]
206
- from computer_use_tools import pop_pending_vision_image
207
- b64 = pop_pending_vision_image()
206
+ b64 = result.get("_vision_image")
208
207
  if b64:
209
208
  self.terminal._pending_image = {
210
209
  "type": "image_url",
@@ -254,7 +253,7 @@ class UiCommandsMixin:
254
253
  "Install: pip install mss pillow",
255
254
  )
256
255
  return
257
- from computer_use_tools import _tool_computer_screenshot, pop_pending_vision_image
256
+ from computer_use_tools import _tool_computer_screenshot
258
257
 
259
258
  monitor = int(args.strip()) if args.strip().isdigit() else 1
260
259
  if self.context.has_rich:
@@ -265,7 +264,7 @@ class UiCommandsMixin:
265
264
 
266
265
  if result.get("success"):
267
266
  d = result["data"]
268
- b64 = pop_pending_vision_image()
267
+ b64 = result.get("_vision_image")
269
268
  if b64:
270
269
  self.terminal._pending_image = {
271
270
  "type": "image_url",
@@ -399,3 +398,4 @@ class UiCommandsMixin:
399
398
  print(f" Messages: {conv_len} Tokens: ~{est_tokens:,}/{max_ctx:,} ({ctx_pct}%)")
400
399
  print(f" Auto compact: {'on' if auto_compact else 'off'} threshold={int(auto_compact_threshold * 100)}% runs={auto_compact_count}")
401
400
  print(f" Session: {self.terminal.session_id}")
401
+
@@ -137,6 +137,7 @@ def build_acceptance_gate(executor, config: Optional[dict] = None, message: str
137
137
  max_attempts=int(cfg.get("acceptance_max_attempts", 2) or 2),
138
138
  commands=_declared_acceptance_commands(cfg, message),
139
139
  baseline=_build_baseline(executor, cfg, timeout),
140
+ revision_inputs=cfg.get("acceptance_revision_inputs") or (),
140
141
  )
141
142
 
142
143
 
@@ -582,3 +583,4 @@ async def run_subagent_turn(prompt: str, task: Any, *, local_tools, tool_schemas
582
583
  (not getattr(final, "success", False) or (getattr(final, "acceptance", None) or {}).get("verified") is False))):
583
584
  raise RuntimeError("The delegated runtime did not complete with accepted execution")
584
585
  return str(getattr(result, "text", "") or "")
586
+
@@ -6,7 +6,9 @@ Responsibilities:
6
6
  1. Price alert watchdog — checks SQLite alerts every 30 s
7
7
  2. APScheduler cron jobs — morning brief, market scan, custom schedules
8
8
  3. Telegram bot — bidirectional command channel
9
- 4. Webhook job executor — processes jobs queued by FastAPI /webhook/trigger
9
+ 4. Webhook job executor — runs pending jobs from the local webhook_jobs table
10
+ TradingView endpoint — POST /api/v1/webhook/tradingview (alias
11
+ /api/v1/tradingview/webhook) queues alerts
10
12
  5. APNs push delivery — fires on alert trigger or scheduled job completion
11
13
 
12
14
  Start manually: python3 aria_daemon.py [--debug]
@@ -21,9 +23,16 @@ Config via env vars (or ~/.aria/.env):
21
23
  APNS_BUNDLE_ID — App bundle ID (default: com.arthera.app)
22
24
  APNS_SANDBOX — "true" for sandbox / TestFlight (default: true)
23
25
  APNS_AUTH_KEY_P8 — .p8 key content, or place file at ~/.aria/apns.p8
24
- WEBHOOK_TOKEN — Static token for /api/v1/webhook/trigger
26
+ WEBHOOK_TOKEN — Token for /api/v1/webhook/tradingview, sent in the
27
+ X-Aria-Token, X-TradingView-Secret or
28
+ Authorization: Bearer header (never the query
29
+ string). TRADINGVIEW_WEBHOOK_SECRET takes precedence.
30
+ ARIA_WEBHOOK_SECRET — Passphrase TradingView puts in the alert body
31
+ (TradingView cannot send headers)
25
32
  ARIA_WEBHOOK_HOST — Daemon webhook host (default: 127.0.0.1)
26
- ARIA_WEBHOOK_PORT — Daemon webhook port (default: 8765)
33
+ ARIA_WEBHOOK_PORT — Daemon webhook port (default: 8765 — the same
34
+ default as the relay server; set this when both
35
+ run on one machine)
27
36
  (the FastAPI backend URL is the `api_url` config key, not an env var —
28
37
  set it with `/config set api_url=...`)
29
38
  ARIA_CODE_DIR — Path to aria-code directory
@@ -31,6 +40,7 @@ Config via env vars (or ~/.aria/.env):
31
40
  from __future__ import annotations
32
41
 
33
42
  import asyncio
43
+ import hmac
34
44
  import logging
35
45
  import os
36
46
  import signal
@@ -952,14 +962,16 @@ async def _webhook_http_server() -> None:
952
962
  def _authorized(request) -> bool:
953
963
  if not token:
954
964
  return True
965
+ # Headers only: a token in the query string ends up in proxy and
966
+ # access logs and in browser history. TradingView, which cannot set
967
+ # headers, authenticates with the body passphrase (ARIA_WEBHOOK_SECRET).
955
968
  supplied = (
956
969
  request.headers.get("X-Aria-Token")
957
970
  or request.headers.get("X-TradingView-Secret")
958
971
  or request.headers.get("Authorization", "").removeprefix("Bearer ").strip()
959
- or request.query.get("token")
960
- or request.query.get("secret")
972
+ or ""
961
973
  )
962
- return supplied == token
974
+ return hmac.compare_digest(supplied.encode("utf-8"), token.encode("utf-8"))
963
975
 
964
976
  async def _handle_tradingview(request):
965
977
  # Open-mode guard (channels contract): with neither an endpoint token
@@ -967,19 +979,24 @@ async def _webhook_http_server() -> None:
967
979
  # an open endpoint reachable off-host would accept injected alerts.
968
980
  try:
969
981
  from apps.channels.intake import should_refuse_open_intake
970
- secret_configured = bool(os.environ.get("ARIA_WEBHOOK_SECRET", "").strip())
971
- if should_refuse_open_intake(
972
- getattr(request, "remote", None),
973
- token_configured=bool(token),
974
- secret_configured=secret_configured,
975
- ):
976
- return web.json_response(
977
- {"success": False,
978
- "error": "open-mode intake refused for non-local client; set ARIA_WEBHOOK_SECRET or WEBHOOK_TOKEN"},
979
- status=403,
980
- )
981
982
  except ImportError:
982
- pass
983
+ # Without the guard we cannot tell whether this client may use an
984
+ # open endpoint, so it may not: fail closed rather than skip it.
985
+ logger.error("open-intake guard unavailable; refusing TradingView webhook")
986
+ return web.json_response(
987
+ {"success": False, "error": "webhook intake guard unavailable"}, status=503,
988
+ )
989
+ secret_configured = bool(os.environ.get("ARIA_WEBHOOK_SECRET", "").strip())
990
+ if should_refuse_open_intake(
991
+ getattr(request, "remote", None),
992
+ token_configured=bool(token),
993
+ secret_configured=secret_configured,
994
+ ):
995
+ return web.json_response(
996
+ {"success": False,
997
+ "error": "open-mode intake refused for non-local client; set ARIA_WEBHOOK_SECRET or WEBHOOK_TOKEN"},
998
+ status=403,
999
+ )
983
1000
  if not _authorized(request):
984
1001
  return web.json_response({"success": False, "error": "unauthorized"}, status=401)
985
1002
  text = await request.text()
@@ -1008,7 +1025,15 @@ async def _webhook_http_server() -> None:
1008
1025
  runner = web.AppRunner(app)
1009
1026
  await runner.setup()
1010
1027
  site = web.TCPSite(runner, host, port)
1011
- await site.start()
1028
+ try:
1029
+ await site.start()
1030
+ except OSError as exc:
1031
+ logger.error(
1032
+ "TradingView webhook could not listen on %s:%d (%s). The relay server "
1033
+ "also defaults to 8765; set ARIA_WEBHOOK_PORT to another port.", host, port, exc,
1034
+ )
1035
+ await runner.cleanup()
1036
+ return
1012
1037
  logger.info("TradingView webhook listening on http://%s:%d/api/v1/webhook/tradingview", host, port)
1013
1038
  try:
1014
1039
  while True:
@@ -998,7 +998,7 @@ async def _analyze_file(file_bytes: bytes, filename: str) -> str:
998
998
  def verify_feishu_request(headers: Dict[str, str], body: bytes, payload: Dict[str, Any]) -> tuple[bool, str]:
999
999
  """(trusted, reason) for an event received directly from Feishu.
1000
1000
 
1001
- The same two checks the relay applies (aria_relay_server._verify_feishu_request),
1001
+ The same two checks the relay applies (go/relay: relay.verify; formerly the Python relay's _verify_feishu_request),
1002
1002
  kept separate because the relay ships without this module's dependencies:
1003
1003
  - Encrypt Key: X-Lark-Signature = sha256(timestamp + nonce + key + body)
1004
1004
  - Verification Token: the token field in the event body
@@ -36,8 +36,17 @@ from datetime import datetime, timedelta, timezone
36
36
  from pathlib import Path
37
37
  from typing import Any, Dict, List, Optional
38
38
 
39
- import numpy as np
40
- import pandas as pd
39
+ try:
40
+ import numpy as np
41
+ import pandas as pd
42
+ except ModuleNotFoundError as exc:
43
+ if (exc.name or "").split(".")[0] in {"numpy", "pandas"}:
44
+ raise ModuleNotFoundError(
45
+ "Local market tools require the optional finance extra. "
46
+ "Install with: pip install 'aria-code[finance]<4'",
47
+ name=exc.name,
48
+ ) from None
49
+ raise
41
50
  import requests
42
51
  from aria_code.packages.aria_core.paths import aria_home
43
52