aria-code 0.72.0__tar.gz → 0.73.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.
- {aria_code-0.72.0/src/aria_code.egg-info → aria_code-0.73.0}/PKG-INFO +1 -1
- {aria_code-0.72.0 → aria_code-0.73.0}/pyproject.toml +1 -1
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/_version.py +1 -1
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/apps/cli/hooks.py +1 -1
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/aria_cli.py +0 -11
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/clients/aria_relay_client.py +44 -2
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/setup_wizard.py +5 -2
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/ui/banner.py +0 -31
- {aria_code-0.72.0 → aria_code-0.73.0/src/aria_code.egg-info}/PKG-INFO +1 -1
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code.egg-info/SOURCES.txt +2 -0
- aria_code-0.73.0/tests/test_honest_surfaces.py +76 -0
- aria_code-0.73.0/tests/test_relay_url.py +75 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/LICENSE +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/NOTICE +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/README.md +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/setup.cfg +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/__init__.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/adk_apps/__init__.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/adk_apps/aria_code_review/__init__.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/adk_apps/aria_code_review/agent.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/adk_apps/aria_research/__init__.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/adk_apps/aria_research/agent.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/agents/__init__.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/agents/base.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/agents/code_review.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/agents/deep/__init__.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/agents/deep/calibration_loop.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/agents/deep/critic.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/agents/deep/deepen.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/agents/deep/models.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/agents/deep/pipeline.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/agents/deep/quant_fusion.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/agents/deep/themes.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/agents/deep/tiers.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/agents/engineering/__init__.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/agents/engineering/coder.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/agents/engineering/tester.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/agents/financial/__init__.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/agents/financial/cashflow_burn.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/agents/financial/catalyst.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/agents/financial/corporate_finance.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/agents/financial/debate.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/agents/financial/earnings.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/agents/financial/fundamental.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/agents/financial/macro.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/agents/financial/news.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/agents/financial/risk.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/agents/financial/sector.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/agents/financial/strategist.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/agents/financial/stripe_revenue.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/agents/financial/synthesis.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/agents/financial/technical.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/agents/orchestrator.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/agents/portfolio_agent.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/agents/realty/__init__.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/agents/realty/asset_diagnosis.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/agents/realty/business_match.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/agents/realty/cashflow_verify.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/agents/realty/contract_rules.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/agents/realty/energy_anomaly.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/agents/realty/exit_settlement.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/agents/realty/fulfillment_risk.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/agents/realty/ops_optimize.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/agents/realty/revenue_share.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/agents/registry.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/agents/signal_scheme.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/agents/sports/__init__.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/agents/sports/football_agent.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/agents/supervisor.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/agents/team.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/agents/warehouse/__init__.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/agents/warehouse/contracts.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/agents/warehouse/dashboard.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/agents/warehouse/fulfillment_leadtime.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/agents/warehouse/inbound_exceptions.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/agents/warehouse/inventory_health.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/agents/warehouse/local_run.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/agents/warehouse/local_snapshot.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/agents/warehouse/logistics_cost.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/agents/warehouse/logistics_sync.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/agents/warehouse/workflow.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/aliyun_data_client.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/apps/README.md +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/apps/__init__.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/apps/channels/README.md +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/apps/channels/__init__.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/apps/channels/approvals.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/apps/channels/conversation.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/apps/channels/digest.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/apps/channels/intake.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/apps/channels/registry.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/apps/channels/tradingview.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/apps/cli/README.md +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/apps/cli/__init__.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/apps/cli/_optional.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/apps/cli/bootstrap.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/apps/cli/broker_render.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/apps/cli/codegen_paths.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/apps/cli/commands/__init__.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/apps/cli/commands/_business_render.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/apps/cli/commands/_ui.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/apps/cli/commands/analysis_cmds.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/apps/cli/commands/ashare_prediction_cmds.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/apps/cli/commands/auth_cmds.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/apps/cli/commands/backtest_cmds.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/apps/cli/commands/broker_cmds.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/apps/cli/commands/business_workflow_cmds.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/apps/cli/commands/canvas_cmds.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/apps/cli/commands/catalog.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/apps/cli/commands/core_cmds.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/apps/cli/commands/data_cmds.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/apps/cli/commands/diagnostic_cmds.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/apps/cli/commands/diagnostic_ops_cmds.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/apps/cli/commands/file_cmds.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/apps/cli/commands/finance_service_cmds.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/apps/cli/commands/fx_commodity_cmds.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/apps/cli/commands/market.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/apps/cli/commands/market_cmds.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/apps/cli/commands/market_context.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/apps/cli/commands/market_render.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/apps/cli/commands/model_cmds.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/apps/cli/commands/ops_cmds.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/apps/cli/commands/orchestrator_cmds.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/apps/cli/commands/pdf_export_cmds.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/apps/cli/commands/portfolio_cmds.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/apps/cli/commands/report.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/apps/cli/commands/scaffold_templates.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/apps/cli/commands/session_cmds.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/apps/cli/commands/session_ux_cmds.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/apps/cli/commands/team.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/apps/cli/commands/team_render.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/apps/cli/commands/ui_cmds.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/apps/cli/commands/warehouse_cmds.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/apps/cli/commands/workflow_cmds.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/apps/cli/commands/workspace_cmds.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/apps/cli/config_paths.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/apps/cli/config_store.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/apps/cli/constants.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/apps/cli/context.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/apps/cli/deterministic.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/apps/cli/direct.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/apps/cli/finance_service_catalog.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/apps/cli/football_reports.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/apps/cli/github_app_auth.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/apps/cli/google_login.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/apps/cli/handlers/__init__.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/apps/cli/handlers/broker_handlers.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/apps/cli/handlers/chart_handlers.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/apps/cli/handlers/market_handlers.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/apps/cli/handlers/realty_handlers.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/apps/cli/handlers/sports_handlers.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/apps/cli/handlers/strategy_advice.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/apps/cli/helpers.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/apps/cli/i18n.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/apps/cli/intent.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/apps/cli/intent_router.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/apps/cli/intent_signals.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/apps/cli/lifecycle_hooks.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/apps/cli/local_tool_schemas.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/apps/cli/main.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/apps/cli/market_metadata.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/apps/cli/market_universe.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/apps/cli/message_processing.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/apps/cli/model_catalog.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/apps/cli/pdf_report.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/apps/cli/plan_mode.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/apps/cli/plotly_html.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/apps/cli/prediction_feedback.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/apps/cli/preflight.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/apps/cli/project_aria.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/apps/cli/prompt_assembly.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/apps/cli/prompts/__init__.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/apps/cli/prompts/coding.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/apps/cli/prompts/select.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/apps/cli/prompts/system_prompts.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/apps/cli/prompts/ui.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/apps/cli/provider_endpoints.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/apps/cli/provider_keys.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/apps/cli/providers/__init__.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/apps/cli/providers/base.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/apps/cli/providers/chat_routing.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/apps/cli/providers/collaboration.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/apps/cli/providers/llm/__init__.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/apps/cli/providers/llm/offline_responses.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/apps/cli/providers/llm/ollama_stream.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/apps/cli/providers/llm/response_cache.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/apps/cli/providers/llm/sse_stream.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/apps/cli/providers/runtime_bridge.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/apps/cli/providers/vertexai_stream.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/apps/cli/runtime_consumer.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/apps/cli/sandbox.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/apps/cli/session_export.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/apps/cli/session_jsonl.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/apps/cli/session_store.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/apps/cli/skills_catalog.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/apps/cli/todo_tracker.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/apps/cli/tool_executor.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/apps/cli/tool_registry.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/apps/cli/tool_scope.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/apps/cli/tools/__init__.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/apps/cli/tools/context.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/apps/cli/tools/file_tools.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/apps/cli/tools/market_tools.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/apps/cli/tools/notebook_tools.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/apps/cli/tools/system_tools.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/apps/cli/tools/write_tools.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/apps/cli/tradingview_bridge.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/apps/cli/turn_planning.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/apps/cli/update_check.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/apps/cli/utils/__init__.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/apps/cli/utils/market_detect.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/apps/daemon/README.md +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/apps/vscode/README.md +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/apps/vscode/package.json +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/aria_daemon.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/aria_feishu_bot.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/aria_mcp_server.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/aria_relay_client.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/aria_relay_server.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/aria_telegram_bot.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/ariarc.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/artifacts.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/backtest_engine.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/backtest_report.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/brokers/__init__.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/brokers/automation.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/brokers/base.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/brokers/capabilities.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/brokers/cn/__init__.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/brokers/cn/easytrader_broker.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/brokers/cn/futu_broker.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/brokers/cn/longbridge_broker.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/brokers/cn/tiger_broker.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/brokers/cn/xtquant_broker.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/brokers/config.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/brokers/intl/__init__.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/brokers/intl/alpaca_broker.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/brokers/intl/ibkr_broker.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/brokers/intl/trading212_broker.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/brokers/intl/webull_broker.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/brokers/paper_broker.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/brokers/planning.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/brokers/registry.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/brokers/trading.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/canva_client.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/change_store.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/clients/__init__.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/clients/aliyun_data_client.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/clients/canva_client.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/clients/figma_client.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/clients/football_data_client.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/clients/kling_video_client.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/clients/market_data_client.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/clients/openai_image_client.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/clients/runway_video_client.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/clients/warehouse_erp_client.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/cloud_memory.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/command_safety.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/computer_use_tools.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/dashboard_generator.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/data_analysis_tools.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/data_cleaner.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/data_service.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/datasources/__init__.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/datasources/base.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/datasources/router.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/datasources/sources/__init__.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/datasources/sources/akshare_source.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/datasources/sources/alpha_vantage_source.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/datasources/sources/edgar_source.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/datasources/sources/finnhub_source.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/datasources/sources/fred_source.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/datasources/sources/tushare_source.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/datasources/sources/web_scraper_source.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/datasources/sources/world_bank_source.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/datasources/sources/yfinance_source.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/demo_player.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/doctor.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/domain/__init__.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/domain/backtest_engine.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/domain/backtest_report.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/domain/finance_formulas.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/domain/portfolio_ledger.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/domain/strategy_vault.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/evals/__init__.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/evals/harness.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/evals/runner.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/external_agent_runner.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/figma_client.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/file_analysis_tools.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/finance_formulas.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/football_data_client.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/image_gen_tools.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/intent_classifier.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/kling_video_client.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/licensing.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/local_finance_tools.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/local_image_provider.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/local_llm_provider.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/macro_tools.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/markdown_pdf.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/market_data_client.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/mcp_client.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/memory_manager.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/model_capability.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/notification_tools.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/openai_image_client.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/packages/__init__.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/packages/adk_bridge/__init__.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/packages/adk_bridge/code_review_tools.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/packages/adk_bridge/market_tools.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/packages/aria_agents/__init__.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/packages/aria_agents/manifest.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/packages/aria_core/__init__.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/packages/aria_core/architecture.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/packages/aria_core/export.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/packages/aria_core/manifest.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/packages/aria_core/paths.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/packages/aria_core/secure_file.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/packages/aria_infra/__init__.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/packages/aria_infra/arthera.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/packages/aria_infra/doctor.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/packages/aria_infra/product.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/packages/aria_mcp/__init__.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/packages/aria_mcp/bridge.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/packages/aria_mcp/circuit.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/packages/aria_mcp/config.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/packages/aria_mcp/installer.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/packages/aria_mcp/server.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/packages/aria_mcp/tools.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/packages/aria_sdk/__init__.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/packages/aria_sdk/client.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/packages/aria_sdk/providers.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/packages/aria_sdk/streaming.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/packages/aria_sdk/types.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/packages/aria_services/__init__.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/packages/aria_services/cache.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/packages/aria_services/context.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/packages/aria_services/context_checkpoints.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/packages/aria_services/data.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/packages/aria_services/provider_health.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/packages/aria_services/references.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/packages/aria_services/registry.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/packages/aria_services/research_protocol.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/packages/aria_services/research_quality.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/packages/aria_services/settings.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/packages/aria_services/usage.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/packages/aria_skills/__init__.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/packages/aria_skills/catalog.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/packages/aria_skills/loader.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/packages/aria_skills/registry.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/packages/aria_tools/__init__.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/packages/aria_tools/financial/__init__.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/packages/aria_tools/financial/_paths.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/packages/aria_tools/financial/compliance.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/packages/aria_tools/financial/factors.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/packages/aria_tools/financial/risk_tools.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/packages/aria_tools/financial/strategy.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/packages/aria_tools/registry.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/packages/quant_engine/__init__.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/packages/quant_engine/_namespace.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/packages/quant_engine/backtest/__init__.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/packages/quant_engine/backtest/core.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/packages/quant_engine/backtest/engine.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/packages/quant_engine/portfolio/__init__.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/packages/quant_engine/portfolio/optimizer.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/packages/quant_engine/sports/__init__.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/packages/quant_engine/sports/calibrator.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/packages/quant_engine/sports/dixon_coles.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/packages/quant_engine/sports/elo.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/packages/quant_engine/sports/form.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/packages/quant_engine/sports/h2h.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/packages/quant_engine/sports/ml_model.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/packages/quant_engine/sports/predictor.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/packages/quant_engine/sports/tracker.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/packages/quant_engine/stochastic/__init__.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/packages/quant_engine/stochastic/gbm_enhanced.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/packages/quant_engine/stochastic/ito_calculus.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/packages/quant_engine/stochastic/kelly_criterion.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/packages/quant_engine/stochastic/monte_carlo_advanced.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/packages/quant_engine/stochastic/options_pricing.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/packages/quant_engine/stochastic/stochastic_processes.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/packs/__init__.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/packs/base.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/packs/finance/__init__.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/packs/logistics/__init__.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/packs/payments/__init__.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/packs/realty/__init__.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/packs/registry.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/packs/rules.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/plan_utils.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/plugin_loader.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/portfolio_ledger.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/preview_server.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/privacy/__init__.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/privacy/feedback.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/project_review.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/project_review_api.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/project_review_server.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/project_tools.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/providers/__init__.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/providers/llm/__init__.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/providers/llm/anthropic.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/providers/llm/autoconfig.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/providers/llm/base.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/providers/llm/custom.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/providers/llm/ollama.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/providers/llm/openai_compat.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/providers/llm/registry.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/providers/local_image_provider.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/providers/local_llm_provider.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/realty_data_tools.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/relay_store.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/report_exporters.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/report_generator.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/runtime/__init__.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/runtime/acceptance.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/runtime/agent_loop.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/runtime/approval.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/runtime/budget.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/runtime/checkpoints.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/runtime/crash_report.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/runtime/events.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/runtime/gateway.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/runtime/lsp.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/runtime/orchestrator.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/runtime/repo_map.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/runtime/run_state.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/runtime/run_store.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/runtime/self_healing.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/runtime/subagent.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/runtime/task_ledger.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/runtime/task_orchestrator.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/runtime/tool_executor.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/runtime/tool_policy.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/runtime/worktrees.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/runway_video_client.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/safety/__init__.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/safety/permissions.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/safety/service.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/spreadsheet_tools.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/strategy_vault.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/tools/__init__.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/tools/artifact_tools.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/tools/broker_tools.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/tools/build_quant_engine.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/tools/code_audit_tools.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/tools/computer_use_tools.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/tools/data_analysis_tools.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/tools/enterprise_finance_tools.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/tools/extended_tools.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/tools/file_analysis_tools.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/tools/image_gen_tools.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/tools/local_finance_tools.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/tools/logistics_carriers.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/tools/logistics_inventory.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/tools/logistics_io.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/tools/logistics_tenancy.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/tools/logistics_tools.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/tools/macro_tools.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/tools/notification_tools.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/tools/project_tools.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/tools/realty_data_tools.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/tools/spreadsheet_tools.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/tools/stripe_tools.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/ui/__init__.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/ui/completer.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/ui/console.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/ui/image_render.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/ui/input_box.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/ui/picker.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/ui/render/__init__.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/ui/render/finance.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/ui/render/market.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/ui/render/output.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/ui/render/responsive.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/ui/render/team.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/ui/robot.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/ui/startup_dashboard.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/utils/vscode_uri.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/video_analysis.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/video_editor.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/workspace/__init__.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/workspace/files.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/workspace/verify.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/workspace_changes.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/workspace_context.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/workspace_service.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/workspace_tools.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code.egg-info/dependency_links.txt +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code.egg-info/entry_points.txt +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code.egg-info/requires.txt +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code.egg-info/top_level.txt +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/tests/test_adk_market_tools.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/tests/test_agent_team_fallback.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/tests/test_analyze_file_tool.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/tests/test_architecture_ledger_is_true.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/tests/test_architecture_report.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/tests/test_aria_cli_core.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/tests/test_aria_mcp_server.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/tests/test_aria_sdk.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/tests/test_artifact_publishing.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/tests/test_artifacts_and_reports.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/tests/test_ashare_prediction_cmds.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/tests/test_backtest_cmds.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/tests/test_backtest_engine.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/tests/test_backtest_report.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/tests/test_binary_bundles_runtime_imports.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/tests/test_broken_akshare_is_optional.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/tests/test_broker_automation.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/tests/test_broker_chat_confirm_gate.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/tests/test_broker_planning.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/tests/test_broker_safety.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/tests/test_broker_tools.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/tests/test_budget.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/tests/test_business_workflow_cmds.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/tests/test_canva_client.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/tests/test_canvas_cmds.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/tests/test_card_approvals.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/tests/test_channel_intake.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/tests/test_channels.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/tests/test_chart_handlers.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/tests/test_chat_bots_fail_closed.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/tests/test_chat_routing.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/tests/test_ci_security_workflow.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/tests/test_cli_app_split.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/tests/test_cli_bootstrap.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/tests/test_cli_config_store.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/tests/test_cli_lifecycle_hooks.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/tests/test_cli_runtime_consumer.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/tests/test_cli_tool_executor_module.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/tests/test_cloud_memory.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/tests/test_code_audit_tools.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/tests/test_code_review_agent.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/tests/test_codegen_output.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/tests/test_coder_tester_self_healing.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/tests/test_coder_tool_safety.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/tests/test_collaboration.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/tests/test_command_loggers.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/tests/test_command_safety.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/tests/test_completions_builder.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/tests/test_config_paths.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/tests/test_configured_provider.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/tests/test_container_entrypoint.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/tests/test_container_entrypoints.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/tests/test_context_checkpoints.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/tests/test_context_references.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/tests/test_context_service.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/tests/test_conversation_core.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/tests/test_crash_report.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/tests/test_credential_file_permissions.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/tests/test_custom_providers.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/tests/test_daemon_gateway_config.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/tests/test_dashboard_generator.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/tests/test_data_service.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/tests/test_data_service_imports.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/tests/test_datasource_routing.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/tests/test_deep_analysis.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/tests/test_degrades_without_quant_engine.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/tests/test_dispatcher_pins_match_the_release.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/tests/test_doctor.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/tests/test_doctor_describes_the_current_install.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/tests/test_doctor_npm_scope.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/tests/test_engine_boundary.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/tests/test_enterprise_tool_honesty.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/tests/test_env_switch_docs.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/tests/test_evals_harness.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/tests/test_extended_tools.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/tests/test_feishu_swarm_config.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/tests/test_finalize_release.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/tests/test_finance_renderers.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/tests/test_finance_service_catalog.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/tests/test_first_run_works.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/tests/test_football_agent.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/tests/test_football_prediction_output.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/tests/test_google_cloud_routing.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/tests/test_google_login.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/tests/test_google_search_provider.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/tests/test_headless_is_agentic.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/tests/test_image_gen_tools.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/tests/test_image_inputs.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/tests/test_import_graph_budget.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/tests/test_intent_router.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/tests/test_intent_signals.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/tests/test_kling_video_client.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/tests/test_lazy_rebind.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/tests/test_legacy_module_imports.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/tests/test_license_consistency.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/tests/test_licensing.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/tests/test_local_image_provider.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/tests/test_logistics_3pl.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/tests/test_logistics_and_finance_agents.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/tests/test_lsp.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/tests/test_markdown_pdf.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/tests/test_market_data_client.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/tests/test_market_history_inheritance.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/tests/test_market_history_tool.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/tests/test_market_symbol_extraction.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/tests/test_market_universe.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/tests/test_mcp_circuit.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/tests/test_mcp_client.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/tests/test_model_capability_registry.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/tests/test_model_choice_is_the_users.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/tests/test_model_selection_state.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/tests/test_native_binary_entrypoints.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/tests/test_native_installer.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/tests/test_new_modules.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/tests/test_no_hardcoded_developer_paths.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/tests/test_no_uncommitted_imports.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/tests/test_ollama_stream_imports.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/tests/test_ollama_stream_tools.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/tests/test_openai_image_client.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/tests/test_operations_suite.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/tests/test_output_rendering.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/tests/test_packages_facade.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/tests/test_packaging_constraints.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/tests/test_packaging_manifest.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/tests/test_packs_domains.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/tests/test_pdf_report.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/tests/test_pick_best_installed_model.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/tests/test_plan_mode.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/tests/test_platform_package_assembly.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/tests/test_platform_packages.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/tests/test_plotly_html_output.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/tests/test_portfolio_ledger.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/tests/test_post_turn_context_decision.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/tests/test_preflight.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/tests/test_preview_server.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/tests/test_privacy_feedback.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/tests/test_project_aria.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/tests/test_project_review.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/tests/test_project_review_api.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/tests/test_prompt_assembly.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/tests/test_prompt_selection.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/tests/test_provider_autoconfig.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/tests/test_provider_error_messages.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/tests/test_provider_integration.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/tests/test_provider_registry.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/tests/test_public_service_status.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/tests/test_quant_engine_namespace.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/tests/test_rebind_contract.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/tests/test_rebind_namespace_contract.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/tests/test_relay_client_credentials.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/tests/test_relay_event_verification.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/tests/test_relay_sends_for_clients.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/tests/test_relay_store.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/tests/test_release_chain.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/tests/test_release_commit_identity.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/tests/test_release_push_is_atomic.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/tests/test_release_reaches_the_registries.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/tests/test_release_verification_waits.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/tests/test_release_workflow_permissions.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/tests/test_report_charts.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/tests/test_report_generator.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/tests/test_research_protocol.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/tests/test_research_quality.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/tests/test_responsive_rendering.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/tests/test_root_module_budget.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/tests/test_rsi_without_pandas_ta.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/tests/test_runtime_acceptance.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/tests/test_runtime_agent_loop.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/tests/test_runtime_approval.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/tests/test_runtime_bridge.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/tests/test_runtime_bridge_fallback.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/tests/test_runtime_checkpoints.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/tests/test_runtime_gateway.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/tests/test_runtime_repo_map.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/tests/test_runtime_run_store.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/tests/test_runtime_tool_executor.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/tests/test_runtime_worktrees.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/tests/test_runway_video_client.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/tests/test_safety_permissions.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/tests/test_safety_service.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/tests/test_safety_service_adoption.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/tests/test_service_diagnostics_security.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/tests/test_session_search.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/tests/test_settings_service.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/tests/test_shipper_digest.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/tests/test_single_import_root.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/tests/test_skill_agent_binding.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/tests/test_skill_catalog.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/tests/test_skill_loader.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/tests/test_spreadsheet_tools.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/tests/test_sse_stream_contract.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/tests/test_startup_dashboard.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/tests/test_startup_latency.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/tests/test_streaming_pipeline.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/tests/test_stripe_agent.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/tests/test_subagent.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/tests/test_supervisor_routing.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/tests/test_system_prompts.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/tests/test_system_tools_output.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/tests/test_task_orchestrator.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/tests/test_team_synthesis.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/tests/test_tls_trust_store.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/tests/test_tool_policy.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/tests/test_tool_scope.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/tests/test_trading_service.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/tests/test_tradingview_bridge.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/tests/test_turn_planning.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/tests/test_ui_completer_references.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/tests/test_ui_console_theme.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/tests/test_ui_input_box.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/tests/test_ui_robot_banner.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/tests/test_update_health_routes.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/tests/test_verification_hint.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/tests/test_verification_policy.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/tests/test_version_consistency.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/tests/test_version_counter.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/tests/test_video_analysis.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/tests/test_video_editor.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/tests/test_vscode_mcp.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/tests/test_warehouse_agents.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/tests/test_warehouse_cli_registration.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/tests/test_warehouse_erp_client.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/tests/test_warehouse_workflow.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/tests/test_wheel_is_installable.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/tests/test_workspace_changes.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/tests/test_workspace_context.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/tests/test_workspace_files.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/tests/test_workspace_scope.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/tests/test_workspace_service.py +0 -0
- {aria_code-0.72.0 → aria_code-0.73.0}/tests/test_workspace_verify.py +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: aria-code
|
|
3
|
-
Version: 0.
|
|
3
|
+
Version: 0.73.0
|
|
4
4
|
Summary: Open-source AI agent for logistics and finance work: 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
|
|
@@ -4,7 +4,7 @@ build-backend = "setuptools.build_meta"
|
|
|
4
4
|
|
|
5
5
|
[project]
|
|
6
6
|
name = "aria-code"
|
|
7
|
-
version = "0.
|
|
7
|
+
version = "0.73.0"
|
|
8
8
|
description = "Open-source AI agent for logistics and finance work: numbers you can check, client data kept apart, actions a person approves"
|
|
9
9
|
readme = "README.md"
|
|
10
10
|
license = { text = "Apache-2.0" }
|
|
@@ -170,7 +170,7 @@ def create_example_hooks(path: Path) -> None:
|
|
|
170
170
|
return
|
|
171
171
|
path.parent.mkdir(parents=True, exist_ok=True)
|
|
172
172
|
example = {
|
|
173
|
-
"_comment": "Aria Code hooks — https://aria
|
|
173
|
+
"_comment": "Aria Code hooks — schema: https://github.com/artheras/aria-code/blob/main/src/aria_code/apps/cli/hooks.py",
|
|
174
174
|
"PreToolUse": [],
|
|
175
175
|
"PostToolUse": [],
|
|
176
176
|
"ResponseDone": [],
|
|
@@ -6067,17 +6067,6 @@ class ArtheraTerminal:
|
|
|
6067
6067
|
"""Run the interactive REPL loop."""
|
|
6068
6068
|
self.print_header()
|
|
6069
6069
|
await self._startup_health_check()
|
|
6070
|
-
try:
|
|
6071
|
-
from ui.banner import render_session_banner
|
|
6072
|
-
render_session_banner(
|
|
6073
|
-
self.session_id,
|
|
6074
|
-
console=console,
|
|
6075
|
-
has_rich=HAS_RICH,
|
|
6076
|
-
lang=self.config.get("ui_lang", "en") or "en",
|
|
6077
|
-
web_url=self.config.get("web_url", "https://arthera.finance"),
|
|
6078
|
-
)
|
|
6079
|
-
except Exception:
|
|
6080
|
-
pass
|
|
6081
6070
|
|
|
6082
6071
|
# Background: settle pending market calls (>24h) vs live prices so the
|
|
6083
6072
|
# prediction track record + DPO signals accrue with zero user effort.
|
|
@@ -10,7 +10,7 @@ aria_relay_client.py — 连接 Aria 中继服务器的 WebSocket 客户端
|
|
|
10
10
|
python3 aria_relay_client.py --once # 调试:收到第一条消息后退出
|
|
11
11
|
|
|
12
12
|
所需环境变量(读取 ~/.aria/.env):
|
|
13
|
-
ARIA_RELAY_URL
|
|
13
|
+
ARIA_RELAY_URL 中继地址,配置向导默认填 Arthera 运营的中继(见 OFFICIAL_RELAY_URL)
|
|
14
14
|
ARIA_RELAY_CLIENT_ID setup_wizard 生成的 12 位 hex id
|
|
15
15
|
"""
|
|
16
16
|
|
|
@@ -92,7 +92,44 @@ def ensure_credentials(env_file: Path = Path.home() / ".aria" / ".env") -> tuple
|
|
|
92
92
|
return token, code
|
|
93
93
|
|
|
94
94
|
|
|
95
|
-
|
|
95
|
+
# The relay Arthera runs. Offered as the setup wizard's default, never used as
|
|
96
|
+
# a silent fallback.
|
|
97
|
+
OFFICIAL_RELAY_URL = "wss://aria-code-741336310848.europe-west2.run.app/ws"
|
|
98
|
+
|
|
99
|
+
# The default used to be wss://relay.aria.ai. aria.ai belongs to an unrelated
|
|
100
|
+
# party (registered 2017); the subdomain does not resolve today, but its owner
|
|
101
|
+
# could create it at any time, and every client left on the default would then
|
|
102
|
+
# send its machine token, bind code and Feishu traffic there. Anyone who ran
|
|
103
|
+
# the wizard before 2026-10-04 has it saved in ~/.aria/.env, so it is refused
|
|
104
|
+
# by name, not merely no longer suggested.
|
|
105
|
+
_UNOWNED_RELAY_HOSTS = {"relay.aria.ai"}
|
|
106
|
+
|
|
107
|
+
|
|
108
|
+
def relay_url_problem(url: str) -> str:
|
|
109
|
+
""""" when the client may connect to `url`, otherwise why not."""
|
|
110
|
+
from urllib.parse import urlparse
|
|
111
|
+
|
|
112
|
+
if not url:
|
|
113
|
+
return "ARIA_RELAY_URL is not set — run the setup wizard (relay mode) to configure it"
|
|
114
|
+
parsed = urlparse(url)
|
|
115
|
+
host = (parsed.hostname or "").lower()
|
|
116
|
+
if host in _UNOWNED_RELAY_HOSTS or host.endswith(".aria.ai") or host == "aria.ai":
|
|
117
|
+
return (f"{host} is not run by Arthera; run the setup wizard again to switch to "
|
|
118
|
+
f"{OFFICIAL_RELAY_URL}")
|
|
119
|
+
if parsed.scheme == "wss" and host:
|
|
120
|
+
return ""
|
|
121
|
+
if parsed.scheme == "ws" and host in ("localhost", "127.0.0.1", "::1"):
|
|
122
|
+
return ""
|
|
123
|
+
return "ARIA_RELAY_URL must be wss:// — this machine's token is sent when it connects (ws:// only to localhost)"
|
|
124
|
+
|
|
125
|
+
|
|
126
|
+
def default_relay_url(current: str) -> str:
|
|
127
|
+
"""What the setup wizard offers: the saved URL, unless it is unusable."""
|
|
128
|
+
current = (current or "").strip()
|
|
129
|
+
return current if current and not relay_url_problem(current) else OFFICIAL_RELAY_URL
|
|
130
|
+
|
|
131
|
+
|
|
132
|
+
_RELAY_URL = os.environ.get("ARIA_RELAY_URL", "").strip()
|
|
96
133
|
_CLIENT_ID = os.environ.get("ARIA_RELAY_CLIENT_ID", "")
|
|
97
134
|
_RECONNECT_DELAY_MAX = 60 # seconds
|
|
98
135
|
_RECONNECT_DELAY_BASE = 3
|
|
@@ -191,6 +228,11 @@ async def _connect_and_serve(once: bool = False) -> None:
|
|
|
191
228
|
logger.error("websockets package not installed — run: pip install websockets")
|
|
192
229
|
sys.exit(1)
|
|
193
230
|
|
|
231
|
+
problem = relay_url_problem(_RELAY_URL)
|
|
232
|
+
if problem:
|
|
233
|
+
logger.error("Not connecting to the relay: %s", problem)
|
|
234
|
+
sys.exit(1)
|
|
235
|
+
|
|
194
236
|
if not _CLIENT_ID:
|
|
195
237
|
logger.error(
|
|
196
238
|
"ARIA_RELAY_CLIENT_ID is not set. "
|
|
@@ -371,8 +371,11 @@ def setup_feishu(env: dict[str, str]) -> None:
|
|
|
371
371
|
|
|
372
372
|
def _setup_feishu_relay(env: dict[str, str]) -> None:
|
|
373
373
|
"""Connect via Aria Relay Server — no Feishu developer account needed."""
|
|
374
|
-
|
|
375
|
-
relay_url = _ask("中继服务器地址", default=
|
|
374
|
+
from aria_code.clients.aria_relay_client import default_relay_url, relay_url_problem
|
|
375
|
+
relay_url = _ask("中继服务器地址", default=default_relay_url(env.get("ARIA_RELAY_URL", "")))
|
|
376
|
+
while relay_url_problem(relay_url):
|
|
377
|
+
print(f" ✗ {relay_url_problem(relay_url)}")
|
|
378
|
+
relay_url = _ask("中继服务器地址", default=default_relay_url(""))
|
|
376
379
|
env["ARIA_RELAY_URL"] = relay_url
|
|
377
380
|
env["ARIA_RELAY_MODE"] = "relay"
|
|
378
381
|
|
|
@@ -375,37 +375,6 @@ def render_startup_dashboard(
|
|
|
375
375
|
console.print(Panel(body, title=panel_title, title_align="left", box=panel_box, border_style=border_style, padding=(0, 1)))
|
|
376
376
|
|
|
377
377
|
|
|
378
|
-
def render_session_banner(
|
|
379
|
-
session_id: str,
|
|
380
|
-
*,
|
|
381
|
-
console,
|
|
382
|
-
has_rich: bool,
|
|
383
|
-
lang: str = "en",
|
|
384
|
-
web_url: str = "https://arthera.finance",
|
|
385
|
-
) -> None:
|
|
386
|
-
"""Render the 'Keep working from anywhere' card with session sync link."""
|
|
387
|
-
is_zh = lang.lower().startswith("zh")
|
|
388
|
-
title = "随时随地继续工作" if is_zh else "Keep working from anywhere"
|
|
389
|
-
line1 = (
|
|
390
|
-
f"在网页端、移动 App 或飞书中查看或回复此会话:"
|
|
391
|
-
if is_zh else
|
|
392
|
-
f"Check progress or reply to any session from mobile app, desktop app, or"
|
|
393
|
-
)
|
|
394
|
-
line2 = f"{web_url}/sessions/{session_id}"
|
|
395
|
-
line3 = "仅在本终端保留请运行 /remote-control" if is_zh else "To keep session in this terminal only, run /remote-control"
|
|
396
|
-
|
|
397
|
-
if has_rich:
|
|
398
|
-
console.print(f"[dim]│[/dim] [bold]{title}[/bold]")
|
|
399
|
-
console.print(f"[dim]│[/dim] [dim]{line1}[/dim]")
|
|
400
|
-
console.print(f"[dim]│[/dim] [underline]{line2}[/underline]. [dim]{line3}[/dim]")
|
|
401
|
-
console.print()
|
|
402
|
-
else:
|
|
403
|
-
print(f"| {title}")
|
|
404
|
-
print(f"| {line1}")
|
|
405
|
-
print(f"| {line2}. {line3}")
|
|
406
|
-
print()
|
|
407
|
-
|
|
408
|
-
|
|
409
378
|
def render_compact_banner(
|
|
410
379
|
*,
|
|
411
380
|
version: str,
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: aria-code
|
|
3
|
-
Version: 0.
|
|
3
|
+
Version: 0.73.0
|
|
4
4
|
Summary: Open-source AI agent for logistics and finance work: 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
|
|
@@ -573,6 +573,7 @@ tests/test_google_cloud_routing.py
|
|
|
573
573
|
tests/test_google_login.py
|
|
574
574
|
tests/test_google_search_provider.py
|
|
575
575
|
tests/test_headless_is_agentic.py
|
|
576
|
+
tests/test_honest_surfaces.py
|
|
576
577
|
tests/test_image_gen_tools.py
|
|
577
578
|
tests/test_image_inputs.py
|
|
578
579
|
tests/test_import_graph_budget.py
|
|
@@ -640,6 +641,7 @@ tests/test_relay_client_credentials.py
|
|
|
640
641
|
tests/test_relay_event_verification.py
|
|
641
642
|
tests/test_relay_sends_for_clients.py
|
|
642
643
|
tests/test_relay_store.py
|
|
644
|
+
tests/test_relay_url.py
|
|
643
645
|
tests/test_release_chain.py
|
|
644
646
|
tests/test_release_commit_identity.py
|
|
645
647
|
tests/test_release_push_is_atomic.py
|
|
@@ -0,0 +1,76 @@
|
|
|
1
|
+
"""What Aria shows users and where it sends them must be true and ours.
|
|
2
|
+
|
|
3
|
+
Found in one sweep of every hardcoded host (2026-10-04):
|
|
4
|
+
|
|
5
|
+
- Every interactive session opened with "Keep working from anywhere — check
|
|
6
|
+
progress or reply to any session from mobile app, desktop app, or
|
|
7
|
+
https://arthera.finance/sessions/<id>. To keep session in this terminal only,
|
|
8
|
+
run /remote-control". Sessions are stored only locally (session_jsonl.py),
|
|
9
|
+
the page is the site's catch-all (identical for any id), there is no mobile
|
|
10
|
+
app, and /remote-control does not exist.
|
|
11
|
+
- The source installer switched to third-party package and Python mirrors on
|
|
12
|
+
any failed download, without asking, and fetched Python through ghfast.top,
|
|
13
|
+
a public GitHub proxy whose operator is unknown.
|
|
14
|
+
- hooks.json's comment linked to https://aria.code/docs/hooks, which cannot
|
|
15
|
+
resolve (.code is not a top-level domain).
|
|
16
|
+
- scripts/generate_demo_video.py rendered the same session-sync claim, on
|
|
17
|
+
arthera.ai — a domain no one has registered — plus "100% local-first,
|
|
18
|
+
zero telemetry", which the default cloud model contradicts. Nothing used it.
|
|
19
|
+
"""
|
|
20
|
+
|
|
21
|
+
from __future__ import annotations
|
|
22
|
+
|
|
23
|
+
import json
|
|
24
|
+
import pathlib
|
|
25
|
+
import re
|
|
26
|
+
|
|
27
|
+
ROOT = pathlib.Path(__file__).resolve().parents[1]
|
|
28
|
+
SRC = ROOT / "src" / "aria_code"
|
|
29
|
+
|
|
30
|
+
|
|
31
|
+
def _source_files():
|
|
32
|
+
return sorted(SRC.rglob("*.py"))
|
|
33
|
+
|
|
34
|
+
|
|
35
|
+
class TestNoFeatureThatDoesNotExist:
|
|
36
|
+
def test_no_session_sync_is_advertised(self):
|
|
37
|
+
offending = [str(p.relative_to(ROOT)) for p in _source_files()
|
|
38
|
+
if re.search(r"Keep working from anywhere|随时随地继续工作|render_session_banner",
|
|
39
|
+
p.read_text(encoding="utf-8"))]
|
|
40
|
+
assert not offending, offending
|
|
41
|
+
|
|
42
|
+
def test_no_command_is_advertised_unless_it_is_registered(self):
|
|
43
|
+
cli = (SRC / "aria_cli.py").read_text(encoding="utf-8")
|
|
44
|
+
for path in _source_files():
|
|
45
|
+
for command in set(re.findall(r"/remote-control\b", path.read_text(encoding="utf-8"))):
|
|
46
|
+
assert f'"{command}"' in cli, f"{path.relative_to(ROOT)} tells users to run {command}"
|
|
47
|
+
|
|
48
|
+
def test_the_fake_demo_generator_is_gone(self):
|
|
49
|
+
assert not (ROOT / "scripts" / "generate_demo_video.py").exists()
|
|
50
|
+
|
|
51
|
+
|
|
52
|
+
class TestTheSourceInstallerAsksBeforeUsingMirrors:
|
|
53
|
+
TEXT = (ROOT / "install.sh").read_text(encoding="utf-8")
|
|
54
|
+
|
|
55
|
+
def test_mirrors_only_when_the_user_opts_in(self):
|
|
56
|
+
calls = [line.strip() for line in self.TEXT.splitlines()
|
|
57
|
+
if "enable_cn_mirror" in line and not line.strip().startswith(("#", "enable_cn_mirror()"))]
|
|
58
|
+
assert calls == ['[[ "$ARIA_CN" == "1" ]] && enable_cn_mirror'], calls
|
|
59
|
+
|
|
60
|
+
def test_failures_suggest_the_mirror_instead_of_switching(self):
|
|
61
|
+
assert self.TEXT.count("re-run with ARIA_CN=1") == 2
|
|
62
|
+
|
|
63
|
+
def test_python_builds_do_not_come_through_an_unknown_proxy(self):
|
|
64
|
+
mirror = re.search(r'^CN_PY_REPO="([^"]+)"', self.TEXT, re.M).group(1)
|
|
65
|
+
assert mirror == "https://registry.npmmirror.com/-/binary/python-build-standalone"
|
|
66
|
+
assert "ghfast" not in self.TEXT.replace("came through ghfast.top before", "")
|
|
67
|
+
|
|
68
|
+
|
|
69
|
+
def test_the_hooks_example_links_somewhere_real(tmp_path):
|
|
70
|
+
from aria_code.apps.cli import hooks
|
|
71
|
+
|
|
72
|
+
target = tmp_path / "hooks.json"
|
|
73
|
+
hooks.create_example_hooks(target)
|
|
74
|
+
comment = json.loads(target.read_text(encoding="utf-8"))["_comment"]
|
|
75
|
+
assert "https://github.com/artheras/aria-code/" in comment
|
|
76
|
+
assert "aria.code/" not in comment
|
|
@@ -0,0 +1,75 @@
|
|
|
1
|
+
"""The relay client must only ever connect where the user chose — never to a default it does not own.
|
|
2
|
+
|
|
3
|
+
The client, the setup wizard and docker-compose all defaulted to
|
|
4
|
+
wss://relay.aria.ai. aria.ai belongs to an unrelated party; the subdomain does
|
|
5
|
+
not resolve today, but its owner could create it, and every client left on
|
|
6
|
+
the default would send its machine token, bind code and Feishu traffic there.
|
|
7
|
+
"""
|
|
8
|
+
|
|
9
|
+
from __future__ import annotations
|
|
10
|
+
|
|
11
|
+
import asyncio
|
|
12
|
+
import pathlib
|
|
13
|
+
from unittest import mock
|
|
14
|
+
|
|
15
|
+
import pytest
|
|
16
|
+
|
|
17
|
+
from aria_code.clients import aria_relay_client as client
|
|
18
|
+
|
|
19
|
+
ROOT = pathlib.Path(__file__).resolve().parents[1]
|
|
20
|
+
|
|
21
|
+
|
|
22
|
+
class TestWhereTheClientMayConnect:
|
|
23
|
+
@pytest.mark.parametrize("url", [
|
|
24
|
+
client.OFFICIAL_RELAY_URL,
|
|
25
|
+
"wss://relay.example.com/ws", # a self-hosted relay
|
|
26
|
+
"ws://localhost:8765/ws", # local development
|
|
27
|
+
"ws://127.0.0.1:8765/ws",
|
|
28
|
+
])
|
|
29
|
+
def test_allowed(self, url):
|
|
30
|
+
assert client.relay_url_problem(url) == ""
|
|
31
|
+
|
|
32
|
+
@pytest.mark.parametrize("url, why", [
|
|
33
|
+
("", "not set"),
|
|
34
|
+
("wss://relay.aria.ai", "not run by Arthera"),
|
|
35
|
+
("wss://anything.aria.ai/ws", "not run by Arthera"),
|
|
36
|
+
("ws://relay.example.com/ws", "wss://"), # the token would travel in clear
|
|
37
|
+
("https://relay.example.com/ws", "wss://"),
|
|
38
|
+
])
|
|
39
|
+
def test_refused(self, url, why):
|
|
40
|
+
assert why in client.relay_url_problem(url)
|
|
41
|
+
|
|
42
|
+
def test_the_client_refuses_before_opening_a_connection(self, monkeypatch):
|
|
43
|
+
monkeypatch.setattr(client, "_RELAY_URL", "wss://relay.aria.ai")
|
|
44
|
+
monkeypatch.setattr(client, "_CLIENT_ID", "aria-x")
|
|
45
|
+
connect = mock.Mock(side_effect=AssertionError("must not connect"))
|
|
46
|
+
with mock.patch("websockets.connect", connect), pytest.raises(SystemExit):
|
|
47
|
+
asyncio.run(client._connect_and_serve(once=True))
|
|
48
|
+
connect.assert_not_called()
|
|
49
|
+
|
|
50
|
+
|
|
51
|
+
class TestWhatTheWizardOffers:
|
|
52
|
+
def test_a_fresh_setup_is_offered_the_official_relay(self):
|
|
53
|
+
assert client.default_relay_url("") == client.OFFICIAL_RELAY_URL
|
|
54
|
+
|
|
55
|
+
def test_a_saved_foreign_default_is_replaced(self):
|
|
56
|
+
assert client.default_relay_url("wss://relay.aria.ai") == client.OFFICIAL_RELAY_URL
|
|
57
|
+
|
|
58
|
+
def test_a_saved_self_hosted_relay_is_kept(self):
|
|
59
|
+
assert client.default_relay_url("wss://relay.example.com/ws") == "wss://relay.example.com/ws"
|
|
60
|
+
|
|
61
|
+
|
|
62
|
+
def test_nothing_still_defaults_to_the_foreign_domain():
|
|
63
|
+
"""The domain may appear only in explanations and the refusal list."""
|
|
64
|
+
files = [ROOT / "docker-compose.yml", ROOT / ".env.daemon.template",
|
|
65
|
+
*sorted((ROOT / "src" / "aria_code").rglob("*.py"))]
|
|
66
|
+
offending = []
|
|
67
|
+
for path in files:
|
|
68
|
+
for number, line in enumerate(path.read_text(encoding="utf-8").splitlines(), 1):
|
|
69
|
+
if "aria.ai" not in line:
|
|
70
|
+
continue
|
|
71
|
+
stripped = line.strip()
|
|
72
|
+
if stripped.startswith("#") or "_UNOWNED_RELAY_HOSTS" in line or "endswith(\".aria.ai\")" in line:
|
|
73
|
+
continue
|
|
74
|
+
offending.append(f"{path.relative_to(ROOT)}:{number}: {stripped}")
|
|
75
|
+
assert not offending, "\n".join(offending)
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/agents/warehouse/fulfillment_leadtime.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/apps/cli/commands/ashare_prediction_cmds.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/apps/cli/commands/business_workflow_cmds.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{aria_code-0.72.0 → aria_code-0.73.0}/src/aria_code/apps/cli/commands/diagnostic_ops_cmds.py
RENAMED
|
File without changes
|
|
File without changes
|