aria-code 0.93.0__tar.gz → 0.94.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.93.0/src/aria_code.egg-info → aria_code-0.94.0}/PKG-INFO +7 -1
- {aria_code-0.93.0 → aria_code-0.94.0}/README.md +6 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/pyproject.toml +1 -1
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/_version.py +1 -1
- aria_code-0.94.0/src/aria_code/apps/cli/exec_events.py +83 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/aria_cli.py +71 -27
- {aria_code-0.93.0 → aria_code-0.94.0/src/aria_code.egg-info}/PKG-INFO +7 -1
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code.egg-info/SOURCES.txt +2 -0
- aria_code-0.94.0/tests/test_exec_events.py +92 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/tests/test_headless_is_agentic.py +6 -2
- {aria_code-0.93.0 → aria_code-0.94.0}/LICENSE +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/NOTICE +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/setup.cfg +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/__init__.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/adk_apps/__init__.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/adk_apps/aria_code_review/__init__.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/adk_apps/aria_code_review/agent.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/adk_apps/aria_research/__init__.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/adk_apps/aria_research/agent.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/agents/__init__.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/agents/base.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/agents/code_review.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/agents/deep/__init__.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/agents/deep/calibration_loop.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/agents/deep/critic.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/agents/deep/deepen.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/agents/deep/models.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/agents/deep/pipeline.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/agents/deep/quant_fusion.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/agents/deep/themes.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/agents/deep/tiers.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/agents/engineering/__init__.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/agents/engineering/coder.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/agents/engineering/tester.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/agents/financial/__init__.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/agents/financial/cashflow_burn.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/agents/financial/catalyst.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/agents/financial/corporate_finance.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/agents/financial/debate.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/agents/financial/earnings.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/agents/financial/fundamental.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/agents/financial/macro.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/agents/financial/news.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/agents/financial/risk.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/agents/financial/sector.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/agents/financial/strategist.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/agents/financial/stripe_revenue.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/agents/financial/synthesis.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/agents/financial/technical.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/agents/orchestrator.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/agents/portfolio_agent.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/agents/realty/__init__.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/agents/realty/asset_diagnosis.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/agents/realty/business_match.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/agents/realty/cashflow_verify.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/agents/realty/contract_rules.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/agents/realty/energy_anomaly.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/agents/realty/exit_settlement.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/agents/realty/fulfillment_risk.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/agents/realty/ops_optimize.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/agents/realty/revenue_share.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/agents/registry.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/agents/signal_scheme.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/agents/sports/__init__.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/agents/sports/football_agent.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/agents/supervisor.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/agents/team.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/agents/warehouse/__init__.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/agents/warehouse/contracts.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/agents/warehouse/dashboard.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/agents/warehouse/fulfillment_leadtime.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/agents/warehouse/inbound_exceptions.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/agents/warehouse/inventory_health.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/agents/warehouse/local_run.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/agents/warehouse/local_snapshot.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/agents/warehouse/logistics_cost.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/agents/warehouse/logistics_sync.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/agents/warehouse/workflow.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/aliyun_data_client.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/apps/README.md +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/apps/__init__.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/apps/channels/README.md +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/apps/channels/__init__.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/apps/channels/approvals.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/apps/channels/conversation.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/apps/channels/digest.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/apps/channels/intake.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/apps/channels/registry.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/apps/channels/tradingview.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/apps/cli/README.md +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/apps/cli/__init__.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/apps/cli/_optional.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/apps/cli/bootstrap.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/apps/cli/broker_render.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/apps/cli/codegen_paths.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/apps/cli/commands/__init__.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/apps/cli/commands/_business_render.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/apps/cli/commands/_ui.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/apps/cli/commands/analysis_cmds.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/apps/cli/commands/ashare_prediction_cmds.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/apps/cli/commands/auth_cmds.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/apps/cli/commands/backtest_cmds.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/apps/cli/commands/broker_cmds.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/apps/cli/commands/business_workflow_cmds.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/apps/cli/commands/canvas_cmds.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/apps/cli/commands/catalog.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/apps/cli/commands/core_cmds.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/apps/cli/commands/data_cmds.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/apps/cli/commands/diagnostic_cmds.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/apps/cli/commands/diagnostic_ops_cmds.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/apps/cli/commands/file_cmds.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/apps/cli/commands/finance_service_cmds.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/apps/cli/commands/fx_commodity_cmds.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/apps/cli/commands/market.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/apps/cli/commands/market_cmds.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/apps/cli/commands/market_context.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/apps/cli/commands/market_render.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/apps/cli/commands/model_cmds.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/apps/cli/commands/ops_cmds.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/apps/cli/commands/orchestrator_cmds.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/apps/cli/commands/pdf_export_cmds.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/apps/cli/commands/portfolio_cmds.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/apps/cli/commands/report.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/apps/cli/commands/scaffold_templates.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/apps/cli/commands/session_cmds.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/apps/cli/commands/session_ux_cmds.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/apps/cli/commands/team.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/apps/cli/commands/team_render.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/apps/cli/commands/ui_cmds.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/apps/cli/commands/warehouse_cmds.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/apps/cli/commands/workflow_cmds.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/apps/cli/commands/workspace_cmds.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/apps/cli/config_paths.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/apps/cli/config_store.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/apps/cli/constants.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/apps/cli/context.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/apps/cli/deterministic.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/apps/cli/direct.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/apps/cli/finance_service_catalog.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/apps/cli/football_reports.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/apps/cli/github_app_auth.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/apps/cli/google_login.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/apps/cli/handlers/__init__.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/apps/cli/handlers/broker_handlers.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/apps/cli/handlers/chart_handlers.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/apps/cli/handlers/market_handlers.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/apps/cli/handlers/realty_handlers.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/apps/cli/handlers/sports_handlers.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/apps/cli/handlers/strategy_advice.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/apps/cli/helpers.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/apps/cli/hooks.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/apps/cli/i18n.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/apps/cli/intent.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/apps/cli/intent_router.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/apps/cli/intent_signals.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/apps/cli/lifecycle_hooks.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/apps/cli/local_tool_schemas.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/apps/cli/main.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/apps/cli/market_hours.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/apps/cli/market_metadata.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/apps/cli/market_universe.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/apps/cli/message_processing.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/apps/cli/model_catalog.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/apps/cli/pdf_report.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/apps/cli/plan_mode.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/apps/cli/plotly_html.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/apps/cli/prediction_feedback.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/apps/cli/preflight.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/apps/cli/project_aria.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/apps/cli/prompt_assembly.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/apps/cli/prompts/__init__.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/apps/cli/prompts/coding.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/apps/cli/prompts/select.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/apps/cli/prompts/system_prompts.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/apps/cli/prompts/ui.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/apps/cli/provider_endpoints.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/apps/cli/provider_keys.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/apps/cli/providers/__init__.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/apps/cli/providers/base.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/apps/cli/providers/chat_routing.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/apps/cli/providers/collaboration.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/apps/cli/providers/llm/__init__.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/apps/cli/providers/llm/offline_responses.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/apps/cli/providers/llm/ollama_stream.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/apps/cli/providers/llm/response_cache.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/apps/cli/providers/llm/sse_stream.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/apps/cli/providers/runtime_bridge.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/apps/cli/providers/vertexai_stream.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/apps/cli/review_runner.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/apps/cli/runtime_consumer.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/apps/cli/sandbox.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/apps/cli/session_export.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/apps/cli/session_jsonl.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/apps/cli/session_store.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/apps/cli/skills_catalog.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/apps/cli/todo_tracker.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/apps/cli/tool_executor.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/apps/cli/tool_registry.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/apps/cli/tool_scope.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/apps/cli/tools/__init__.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/apps/cli/tools/context.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/apps/cli/tools/file_tools.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/apps/cli/tools/market_tools.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/apps/cli/tools/notebook_tools.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/apps/cli/tools/system_tools.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/apps/cli/tools/write_tools.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/apps/cli/tradingview_bridge.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/apps/cli/turn_planning.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/apps/cli/update_check.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/apps/cli/updater.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/apps/cli/utils/__init__.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/apps/cli/utils/market_detect.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/apps/daemon/README.md +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/apps/vscode/README.md +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/apps/vscode/package.json +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/aria_daemon.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/aria_feishu_bot.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/aria_mcp_server.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/aria_relay_client.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/aria_relay_server.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/aria_telegram_bot.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/ariarc.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/artifacts.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/backtest_engine.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/backtest_report.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/brokers/__init__.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/brokers/automation.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/brokers/base.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/brokers/capabilities.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/brokers/cn/__init__.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/brokers/cn/easytrader_broker.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/brokers/cn/futu_broker.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/brokers/cn/longbridge_broker.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/brokers/cn/tiger_broker.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/brokers/cn/xtquant_broker.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/brokers/config.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/brokers/intl/__init__.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/brokers/intl/alpaca_broker.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/brokers/intl/ibkr_broker.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/brokers/intl/trading212_broker.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/brokers/intl/webull_broker.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/brokers/paper_broker.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/brokers/planning.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/brokers/registry.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/brokers/trading.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/canva_client.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/change_store.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/clients/__init__.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/clients/aliyun_data_client.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/clients/aria_relay_client.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/clients/canva_client.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/clients/figma_client.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/clients/football_data_client.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/clients/kling_video_client.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/clients/market_data_client.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/clients/openai_image_client.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/clients/runway_video_client.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/clients/warehouse_erp_client.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/cloud_memory.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/command_safety.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/computer_use_tools.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/dashboard_generator.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/data_analysis_tools.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/data_cleaner.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/data_service.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/datasources/__init__.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/datasources/base.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/datasources/router.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/datasources/sources/__init__.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/datasources/sources/akshare_source.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/datasources/sources/alpha_vantage_source.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/datasources/sources/edgar_source.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/datasources/sources/finnhub_source.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/datasources/sources/fred_source.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/datasources/sources/tushare_source.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/datasources/sources/web_scraper_source.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/datasources/sources/world_bank_source.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/datasources/sources/yfinance_source.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/demo_player.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/doctor.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/domain/__init__.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/domain/backtest_engine.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/domain/backtest_report.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/domain/finance_formulas.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/domain/portfolio_ledger.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/domain/strategy_vault.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/evals/__init__.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/evals/harness.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/evals/runner.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/external_agent_runner.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/figma_client.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/file_analysis_tools.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/finance_formulas.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/football_data_client.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/image_gen_tools.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/intent_classifier.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/kling_video_client.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/licensing.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/local_finance_tools.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/local_image_provider.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/local_llm_provider.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/macro_tools.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/markdown_pdf.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/market_data_client.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/mcp_client.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/memory_manager.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/model_capability.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/notification_tools.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/openai_image_client.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/packages/__init__.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/packages/adk_bridge/__init__.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/packages/adk_bridge/code_review_tools.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/packages/adk_bridge/market_tools.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/packages/aria_agents/__init__.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/packages/aria_agents/manifest.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/packages/aria_core/__init__.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/packages/aria_core/architecture.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/packages/aria_core/export.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/packages/aria_core/manifest.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/packages/aria_core/paths.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/packages/aria_core/secure_file.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/packages/aria_infra/__init__.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/packages/aria_infra/arthera.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/packages/aria_infra/doctor.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/packages/aria_infra/product.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/packages/aria_mcp/__init__.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/packages/aria_mcp/bridge.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/packages/aria_mcp/circuit.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/packages/aria_mcp/config.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/packages/aria_mcp/installer.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/packages/aria_mcp/server.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/packages/aria_mcp/tools.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/packages/aria_sdk/__init__.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/packages/aria_sdk/client.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/packages/aria_sdk/providers.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/packages/aria_sdk/streaming.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/packages/aria_sdk/types.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/packages/aria_services/__init__.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/packages/aria_services/cache.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/packages/aria_services/context.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/packages/aria_services/context_checkpoints.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/packages/aria_services/data.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/packages/aria_services/provider_health.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/packages/aria_services/references.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/packages/aria_services/registry.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/packages/aria_services/research_protocol.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/packages/aria_services/research_quality.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/packages/aria_services/settings.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/packages/aria_services/usage.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/packages/aria_skills/__init__.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/packages/aria_skills/catalog.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/packages/aria_skills/loader.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/packages/aria_skills/registry.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/packages/aria_tools/__init__.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/packages/aria_tools/financial/__init__.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/packages/aria_tools/financial/_paths.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/packages/aria_tools/financial/compliance.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/packages/aria_tools/financial/factors.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/packages/aria_tools/financial/risk_tools.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/packages/aria_tools/financial/strategy.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/packages/aria_tools/registry.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/packages/quant_engine/__init__.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/packages/quant_engine/_namespace.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/packages/quant_engine/backtest/__init__.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/packages/quant_engine/backtest/core.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/packages/quant_engine/backtest/engine.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/packages/quant_engine/portfolio/__init__.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/packages/quant_engine/portfolio/optimizer.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/packages/quant_engine/sports/__init__.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/packages/quant_engine/sports/calibrator.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/packages/quant_engine/sports/dixon_coles.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/packages/quant_engine/sports/elo.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/packages/quant_engine/sports/form.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/packages/quant_engine/sports/h2h.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/packages/quant_engine/sports/ml_model.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/packages/quant_engine/sports/predictor.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/packages/quant_engine/sports/tracker.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/packages/quant_engine/stochastic/__init__.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/packages/quant_engine/stochastic/gbm_enhanced.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/packages/quant_engine/stochastic/ito_calculus.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/packages/quant_engine/stochastic/kelly_criterion.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/packages/quant_engine/stochastic/monte_carlo_advanced.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/packages/quant_engine/stochastic/options_pricing.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/packages/quant_engine/stochastic/stochastic_processes.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/packs/__init__.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/packs/base.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/packs/finance/__init__.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/packs/logistics/__init__.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/packs/payments/__init__.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/packs/realty/__init__.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/packs/registry.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/packs/rules.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/plan_utils.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/plugin_loader.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/portfolio_ledger.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/preview_server.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/privacy/__init__.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/privacy/feedback.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/project_review.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/project_review_api.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/project_review_server.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/project_tools.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/providers/__init__.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/providers/llm/__init__.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/providers/llm/anthropic.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/providers/llm/autoconfig.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/providers/llm/base.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/providers/llm/custom.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/providers/llm/ollama.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/providers/llm/openai_compat.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/providers/llm/registry.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/providers/local_image_provider.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/providers/local_llm_provider.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/providers/tool_messages.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/realty_data_tools.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/relay_store.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/report_exporters.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/report_generator.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/review_service.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/runtime/__init__.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/runtime/acceptance.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/runtime/agent_loop.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/runtime/approval.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/runtime/budget.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/runtime/checkpoints.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/runtime/crash_report.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/runtime/events.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/runtime/gateway.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/runtime/lsp.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/runtime/orchestrator.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/runtime/processes.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/runtime/repo_map.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/runtime/run_state.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/runtime/run_store.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/runtime/self_healing.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/runtime/subagent.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/runtime/task_ledger.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/runtime/task_orchestrator.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/runtime/tool_executor.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/runtime/tool_policy.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/runtime/worktrees.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/runway_video_client.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/safety/__init__.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/safety/permissions.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/safety/sandbox.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/safety/service.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/setup_wizard.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/spreadsheet_tools.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/strategy_vault.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/tools/__init__.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/tools/artifact_tools.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/tools/broker_tools.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/tools/build_quant_engine.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/tools/code_audit_tools.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/tools/computer_use_tools.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/tools/data_analysis_tools.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/tools/enterprise_finance_tools.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/tools/extended_tools.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/tools/file_analysis_tools.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/tools/image_gen_tools.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/tools/local_finance_tools.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/tools/logistics_carriers.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/tools/logistics_inventory.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/tools/logistics_io.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/tools/logistics_tenancy.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/tools/logistics_tools.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/tools/macro_tools.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/tools/notification_tools.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/tools/project_tools.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/tools/realty_data_tools.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/tools/spreadsheet_tools.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/tools/stripe_tools.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/ui/__init__.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/ui/banner.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/ui/completer.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/ui/console.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/ui/image_render.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/ui/input_box.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/ui/mentions.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/ui/picker.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/ui/render/__init__.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/ui/render/finance.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/ui/render/market.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/ui/render/output.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/ui/render/responsive.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/ui/render/team.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/ui/robot.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/ui/startup_dashboard.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/utils/vscode_uri.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/video_analysis.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/video_editor.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/workspace/__init__.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/workspace/files.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/workspace/verify.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/workspace_changes.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/workspace_context.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/workspace_service.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code/workspace_tools.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code.egg-info/dependency_links.txt +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code.egg-info/entry_points.txt +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code.egg-info/requires.txt +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/src/aria_code.egg-info/top_level.txt +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/tests/test_adk_market_tools.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/tests/test_agent_key_points_language.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/tests/test_agent_team_fallback.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/tests/test_analyze_file_tool.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/tests/test_architecture_ledger_is_true.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/tests/test_architecture_report.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/tests/test_aria_cli_core.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/tests/test_aria_mcp_server.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/tests/test_aria_sdk.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/tests/test_artifact_publishing.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/tests/test_artifacts_and_reports.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/tests/test_ashare_prediction_cmds.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/tests/test_background_processes.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/tests/test_backtest_cmds.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/tests/test_backtest_engine.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/tests/test_backtest_report.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/tests/test_binary_bundles_runtime_imports.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/tests/test_broken_akshare_is_optional.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/tests/test_broker_automation.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/tests/test_broker_chat_confirm_gate.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/tests/test_broker_planning.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/tests/test_broker_safety.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/tests/test_broker_tools.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/tests/test_budget.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/tests/test_business_workflow_cmds.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/tests/test_canva_client.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/tests/test_canvas_cmds.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/tests/test_card_approvals.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/tests/test_channel_intake.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/tests/test_channels.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/tests/test_chart_handlers.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/tests/test_chat_bots_fail_closed.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/tests/test_chat_routing.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/tests/test_ci_security_workflow.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/tests/test_cli_app_split.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/tests/test_cli_bootstrap.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/tests/test_cli_config_store.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/tests/test_cli_lifecycle_hooks.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/tests/test_cli_runtime_consumer.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/tests/test_cli_tool_executor_module.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/tests/test_cli_updater.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/tests/test_cloud_memory.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/tests/test_code_audit_tools.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/tests/test_code_review_agent.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/tests/test_codegen_output.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/tests/test_coder_tester_self_healing.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/tests/test_coder_tool_safety.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/tests/test_collaboration.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/tests/test_command_loggers.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/tests/test_command_safety.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/tests/test_completions_builder.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/tests/test_config_paths.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/tests/test_configured_provider.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/tests/test_container_entrypoint.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/tests/test_container_entrypoints.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/tests/test_context_checkpoints.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/tests/test_context_references.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/tests/test_context_service.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/tests/test_conversation_core.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/tests/test_crash_report.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/tests/test_credential_file_permissions.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/tests/test_custom_providers.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/tests/test_daemon_gateway_config.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/tests/test_dashboard_generator.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/tests/test_data_service.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/tests/test_data_service_imports.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/tests/test_data_without_model.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/tests/test_datasource_routing.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/tests/test_deep_analysis.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/tests/test_degrades_without_quant_engine.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/tests/test_dispatcher_pins_match_the_release.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/tests/test_doctor.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/tests/test_doctor_describes_the_current_install.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/tests/test_doctor_npm_scope.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/tests/test_edit_and_command_safety.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/tests/test_engine_boundary.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/tests/test_enterprise_tool_honesty.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/tests/test_env_switch_docs.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/tests/test_evals_harness.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/tests/test_event_import_roots.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/tests/test_extended_tools.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/tests/test_feishu_swarm_config.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/tests/test_file_links.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/tests/test_finalize_release.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/tests/test_finance_renderers.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/tests/test_finance_service_catalog.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/tests/test_first_run_output.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/tests/test_first_run_works.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/tests/test_football_agent.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/tests/test_football_prediction_output.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/tests/test_google_cloud_models.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/tests/test_google_cloud_routing.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/tests/test_google_login.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/tests/test_google_search_provider.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/tests/test_honest_surfaces.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/tests/test_image_gen_tools.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/tests/test_image_inputs.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/tests/test_import_graph_budget.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/tests/test_intent_router.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/tests/test_intent_signals.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/tests/test_kling_video_client.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/tests/test_lazy_rebind.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/tests/test_legacy_module_imports.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/tests/test_license_consistency.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/tests/test_licensing.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/tests/test_local_image_provider.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/tests/test_logistics_3pl.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/tests/test_logistics_and_finance_agents.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/tests/test_lsp.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/tests/test_markdown_pdf.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/tests/test_market_answers_in_english.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/tests/test_market_data_client.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/tests/test_market_history_inheritance.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/tests/test_market_history_tool.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/tests/test_market_hours.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/tests/test_market_questions_on_backend.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/tests/test_market_symbol_extraction.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/tests/test_market_universe.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/tests/test_mcp_circuit.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/tests/test_mcp_client.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/tests/test_mentions.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/tests/test_model_capability_registry.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/tests/test_model_choice_is_the_users.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/tests/test_model_selection_state.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/tests/test_narrow_chinese_output.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/tests/test_native_binary_entrypoints.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/tests/test_native_installer.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/tests/test_natural_language_routing.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/tests/test_new_modules.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/tests/test_no_hardcoded_developer_paths.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/tests/test_no_uncommitted_imports.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/tests/test_numeric_listings.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/tests/test_ollama_stream_imports.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/tests/test_ollama_stream_tools.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/tests/test_openai_image_client.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/tests/test_operations_suite.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/tests/test_os_sandbox.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/tests/test_output_rendering.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/tests/test_packages_facade.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/tests/test_packaging_constraints.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/tests/test_packaging_manifest.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/tests/test_packs_domains.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/tests/test_pdf_report.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/tests/test_pick_best_installed_model.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/tests/test_plan_mode.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/tests/test_platform_package_assembly.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/tests/test_platform_packages.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/tests/test_platform_publish.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/tests/test_plotly_html_output.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/tests/test_portfolio_language.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/tests/test_portfolio_ledger.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/tests/test_post_turn_context_decision.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/tests/test_preflight.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/tests/test_preview_server.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/tests/test_privacy_feedback.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/tests/test_project_aria.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/tests/test_project_context_files.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/tests/test_project_review.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/tests/test_project_review_api.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/tests/test_prompt_assembly.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/tests/test_prompt_selection.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/tests/test_provider_autoconfig.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/tests/test_provider_error_messages.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/tests/test_provider_integration.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/tests/test_provider_registry.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/tests/test_public_service_status.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/tests/test_quant_engine_namespace.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/tests/test_rebind_contract.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/tests/test_rebind_namespace_contract.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/tests/test_relay_client_credentials.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/tests/test_relay_event_verification.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/tests/test_relay_sends_for_clients.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/tests/test_relay_store.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/tests/test_relay_url.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/tests/test_release_chain.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/tests/test_release_commit_identity.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/tests/test_release_push_is_atomic.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/tests/test_release_reaches_the_registries.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/tests/test_release_verification_waits.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/tests/test_release_workflow_permissions.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/tests/test_report_charts.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/tests/test_report_generator.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/tests/test_research_protocol.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/tests/test_research_quality.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/tests/test_responsive_rendering.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/tests/test_review_service.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/tests/test_root_module_budget.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/tests/test_rsi_without_pandas_ta.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/tests/test_runtime_acceptance.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/tests/test_runtime_agent_loop.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/tests/test_runtime_approval.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/tests/test_runtime_bridge.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/tests/test_runtime_bridge_fallback.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/tests/test_runtime_checkpoints.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/tests/test_runtime_event_identity.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/tests/test_runtime_gateway.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/tests/test_runtime_repo_map.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/tests/test_runtime_run_store.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/tests/test_runtime_tool_executor.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/tests/test_runtime_worktrees.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/tests/test_runway_video_client.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/tests/test_safety_permissions.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/tests/test_safety_service.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/tests/test_safety_service_adoption.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/tests/test_service_diagnostics_security.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/tests/test_session_search.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/tests/test_settings_service.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/tests/test_shell_commands_as_written.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/tests/test_shipper_digest.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/tests/test_single_import_root.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/tests/test_skill_agent_binding.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/tests/test_skill_catalog.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/tests/test_skill_loader.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/tests/test_slash_popup.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/tests/test_spreadsheet_tools.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/tests/test_sse_stream_contract.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/tests/test_startup_dashboard.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/tests/test_startup_latency.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/tests/test_status_language.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/tests/test_streaming_pipeline.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/tests/test_stripe_agent.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/tests/test_subagent.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/tests/test_supervisor_routing.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/tests/test_system_prompts.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/tests/test_system_tools_output.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/tests/test_task_orchestrator.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/tests/test_team_analysts.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/tests/test_team_synthesis.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/tests/test_tls_trust_store.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/tests/test_tool_policy.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/tests/test_tool_rounds_on_openai_apis.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/tests/test_tool_scope.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/tests/test_tool_step_output.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/tests/test_trading_service.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/tests/test_tradingview_bridge.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/tests/test_turn_planning.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/tests/test_ui_completer_references.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/tests/test_ui_console_theme.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/tests/test_ui_input_box.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/tests/test_ui_language_and_model.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/tests/test_ui_robot_banner.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/tests/test_update_health_routes.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/tests/test_verification_hint.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/tests/test_verification_policy.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/tests/test_version_consistency.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/tests/test_version_counter.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/tests/test_video_analysis.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/tests/test_video_editor.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/tests/test_vscode_mcp.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/tests/test_warehouse_agents.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/tests/test_warehouse_cli_registration.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/tests/test_warehouse_erp_client.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/tests/test_warehouse_workflow.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/tests/test_wheel_is_installable.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/tests/test_workspace_changes.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/tests/test_workspace_context.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/tests/test_workspace_files.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/tests/test_workspace_scope.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/tests/test_workspace_service.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/tests/test_workspace_verify.py +0 -0
- {aria_code-0.93.0 → aria_code-0.94.0}/tests/test_wrapped_indent.py +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: aria-code
|
|
3
|
-
Version: 0.
|
|
3
|
+
Version: 0.94.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
|
|
@@ -251,6 +251,12 @@ aria-code -p "Inspect this project, fix the failing tests, run them, and summari
|
|
|
251
251
|
|
|
252
252
|
Aria may request approval before editing files or running commands, according to the configured permission mode. Review changes and test results before committing them.
|
|
253
253
|
|
|
254
|
+
In a script or CI job, `--json` prints one JSON result and `--format jsonl` prints one JSON event per line as the turn runs (`turn.started`, `tool.started`, `tool.completed`, `turn.completed`). Only JSON goes to stdout, and a failed turn exits 1. With no one there to approve, pass `--allow-tools edit_file,run_command` for the tools the job may use.
|
|
255
|
+
|
|
256
|
+
```bash
|
|
257
|
+
aria-code -p "Fix the failing tests and run them" --format jsonl --allow-tools edit_file,run_command > events.jsonl
|
|
258
|
+
```
|
|
259
|
+
|
|
254
260
|
## Models and accounts
|
|
255
261
|
|
|
256
262
|
| Route | What it needs |
|
|
@@ -95,6 +95,12 @@ aria-code -p "Inspect this project, fix the failing tests, run them, and summari
|
|
|
95
95
|
|
|
96
96
|
Aria may request approval before editing files or running commands, according to the configured permission mode. Review changes and test results before committing them.
|
|
97
97
|
|
|
98
|
+
In a script or CI job, `--json` prints one JSON result and `--format jsonl` prints one JSON event per line as the turn runs (`turn.started`, `tool.started`, `tool.completed`, `turn.completed`). Only JSON goes to stdout, and a failed turn exits 1. With no one there to approve, pass `--allow-tools edit_file,run_command` for the tools the job may use.
|
|
99
|
+
|
|
100
|
+
```bash
|
|
101
|
+
aria-code -p "Fix the failing tests and run them" --format jsonl --allow-tools edit_file,run_command > events.jsonl
|
|
102
|
+
```
|
|
103
|
+
|
|
98
104
|
## Models and accounts
|
|
99
105
|
|
|
100
106
|
| Route | What it needs |
|
|
@@ -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.94.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" }
|
|
@@ -0,0 +1,83 @@
|
|
|
1
|
+
"""JSON events for `aria-code -p … --format jsonl`, one per line, as the turn runs.
|
|
2
|
+
|
|
3
|
+
`-p --json` printed one document at the end, so a CI job saw nothing until the
|
|
4
|
+
turn was over and could not tell which tool ran, how long it took or where
|
|
5
|
+
it failed. With jsonl each step is a line on stdout as it happens:
|
|
6
|
+
|
|
7
|
+
{"type": "turn.started", "prompt": "...", "model": "...", "ts": ...}
|
|
8
|
+
{"type": "tool.started", "tool": "run_command", "params": {...}, "ts": ...}
|
|
9
|
+
{"type": "tool.completed", "tool": "run_command", "success": true, "elapsed_s": 1.2,
|
|
10
|
+
"error": "", "ts": ...}
|
|
11
|
+
{"type": "turn.completed", "success": true, "response": "...", "tools_used": [...], ...}
|
|
12
|
+
|
|
13
|
+
Tool parameters are shortened and secrets masked: a written file's contents
|
|
14
|
+
or a command's token have no place in a CI log.
|
|
15
|
+
"""
|
|
16
|
+
|
|
17
|
+
from __future__ import annotations
|
|
18
|
+
|
|
19
|
+
import json
|
|
20
|
+
import time
|
|
21
|
+
from typing import Any, TextIO
|
|
22
|
+
|
|
23
|
+
from aria_code.apps.cli.runtime_consumer import MEASURED_ELAPSED_KEY, _redact_activity_text
|
|
24
|
+
|
|
25
|
+
PARAM_CHARS = 300
|
|
26
|
+
|
|
27
|
+
|
|
28
|
+
def json_safe(value: Any) -> Any:
|
|
29
|
+
"""``value`` with anything json cannot write turned into text."""
|
|
30
|
+
return json.loads(json.dumps(value, ensure_ascii=False, default=str))
|
|
31
|
+
|
|
32
|
+
|
|
33
|
+
def _param_view(params: dict) -> dict:
|
|
34
|
+
view = {}
|
|
35
|
+
for key, value in (params or {}).items():
|
|
36
|
+
if str(key).startswith("_"):
|
|
37
|
+
continue # execution context the host added
|
|
38
|
+
if isinstance(value, str):
|
|
39
|
+
# A file's contents is not a parameter worth a log line; its size is.
|
|
40
|
+
view[key] = (f"<{len(value)} chars>" if len(value) > 2000
|
|
41
|
+
else _redact_activity_text(value, limit=PARAM_CHARS))
|
|
42
|
+
elif isinstance(value, (int, float, bool)) or value is None:
|
|
43
|
+
view[key] = value
|
|
44
|
+
else:
|
|
45
|
+
view[key] = _redact_activity_text(json.dumps(value, ensure_ascii=False, default=str),
|
|
46
|
+
limit=PARAM_CHARS)
|
|
47
|
+
return view
|
|
48
|
+
|
|
49
|
+
|
|
50
|
+
class ExecEvents:
|
|
51
|
+
"""Writes events to ``out``; does nothing when ``out`` is None."""
|
|
52
|
+
|
|
53
|
+
def __init__(self, out: TextIO | None):
|
|
54
|
+
self.out = out
|
|
55
|
+
|
|
56
|
+
def emit(self, event_type: str, **fields: Any) -> None:
|
|
57
|
+
if self.out is None:
|
|
58
|
+
return
|
|
59
|
+
record = {"type": event_type, **json_safe(fields), "ts": round(time.time(), 3)}
|
|
60
|
+
try:
|
|
61
|
+
self.out.write(json.dumps(record, ensure_ascii=False) + "\n")
|
|
62
|
+
self.out.flush()
|
|
63
|
+
except (OSError, ValueError):
|
|
64
|
+
self.out = None # the reader went away; stop writing
|
|
65
|
+
|
|
66
|
+
def tool_started(self, tool: str, params: dict) -> None:
|
|
67
|
+
self.emit("tool.started", tool=tool, params=_param_view(params))
|
|
68
|
+
|
|
69
|
+
def tool_completed(self, tool: str, result: dict) -> None:
|
|
70
|
+
result = result if isinstance(result, dict) else {"success": bool(result)}
|
|
71
|
+
fields: dict[str, Any] = {"tool": tool, "success": bool(result.get("success", True))}
|
|
72
|
+
if isinstance(result.get(MEASURED_ELAPSED_KEY), (int, float)):
|
|
73
|
+
fields["elapsed_s"] = round(float(result[MEASURED_ELAPSED_KEY]), 3)
|
|
74
|
+
if result.get("error"):
|
|
75
|
+
fields["error"] = _redact_activity_text(result["error"], limit=PARAM_CHARS)
|
|
76
|
+
data = result.get("data") if isinstance(result.get("data"), dict) else {}
|
|
77
|
+
for key in ("exit_code", "path", "process_id", "change_id"):
|
|
78
|
+
if key in data:
|
|
79
|
+
fields[key] = data[key]
|
|
80
|
+
self.emit("tool.completed", **fields)
|
|
81
|
+
|
|
82
|
+
|
|
83
|
+
__all__ = ["ExecEvents", "json_safe"]
|
|
@@ -6468,8 +6468,23 @@ class ArtheraTerminal:
|
|
|
6468
6468
|
save_config(self.config)
|
|
6469
6469
|
|
|
6470
6470
|
async def run_prompt(self, prompt: str, json_output: bool = False,
|
|
6471
|
-
fmt: str = "table", output_file: str = None, quiet: bool = False
|
|
6472
|
-
|
|
6471
|
+
fmt: str = "table", output_file: str = None, quiet: bool = False,
|
|
6472
|
+
machine_out=None):
|
|
6473
|
+
"""Run a single prompt (non-interactive / pipe mode).
|
|
6474
|
+
|
|
6475
|
+
``machine_out`` is the real stdout when the output is JSON (sys.stdout
|
|
6476
|
+
then points at stderr). With fmt "jsonl" each step is written there as
|
|
6477
|
+
one JSON event per line as it happens.
|
|
6478
|
+
"""
|
|
6479
|
+
from aria_code.apps.cli.exec_events import ExecEvents, json_safe
|
|
6480
|
+
events = ExecEvents(machine_out if fmt == "jsonl" else None)
|
|
6481
|
+
events.emit("turn.started", prompt=prompt, model=self.config.get("model", ""))
|
|
6482
|
+
result = await self._run_prompt_turn(prompt, quiet=quiet, events=events)
|
|
6483
|
+
self._finish_prompt(result, json_output=json_output, fmt=fmt, output_file=output_file,
|
|
6484
|
+
quiet=quiet, machine_out=machine_out, events=events)
|
|
6485
|
+
|
|
6486
|
+
async def _run_prompt_turn(self, prompt: str, *, quiet: bool, events) -> dict:
|
|
6487
|
+
"""The work of run_prompt: a slash command, a deterministic answer, or an agent turn."""
|
|
6473
6488
|
model = self.config.get("model", "qwen2.5:7b")
|
|
6474
6489
|
thinking_mode = self.config.get("thinking_mode", "auto")
|
|
6475
6490
|
auth_token = self.config.get("auth_token")
|
|
@@ -6483,7 +6498,7 @@ class ArtheraTerminal:
|
|
|
6483
6498
|
if self.commands.is_command(_stripped_prompt):
|
|
6484
6499
|
self._maybe_show_intent_preflight(_stripped_prompt, quiet=quiet)
|
|
6485
6500
|
await self.commands.execute(_stripped_prompt)
|
|
6486
|
-
return
|
|
6501
|
+
return {"success": True, "command": _stripped_prompt.split()[0], "response": ""}
|
|
6487
6502
|
|
|
6488
6503
|
_reference_context = ""
|
|
6489
6504
|
_reference_service = getattr(self, "_reference_service", None)
|
|
@@ -6491,7 +6506,7 @@ class ArtheraTerminal:
|
|
|
6491
6506
|
_prepared_references = _reference_service.prepare(prompt)
|
|
6492
6507
|
if _prepared_references.errors:
|
|
6493
6508
|
self._print_reference_errors(_prepared_references)
|
|
6494
|
-
return
|
|
6509
|
+
return {"success": False, "response": "", "error": "unresolved @ reference"}
|
|
6495
6510
|
if _prepared_references.references:
|
|
6496
6511
|
self._print_reference_summary(_prepared_references)
|
|
6497
6512
|
prompt = _prepared_references.expanded_text
|
|
@@ -6523,7 +6538,7 @@ class ArtheraTerminal:
|
|
|
6523
6538
|
await self.commands.cmd_broker("guide")
|
|
6524
6539
|
await self.commands.cmd_broker("services")
|
|
6525
6540
|
await self.commands.cmd_packages("services")
|
|
6526
|
-
return
|
|
6541
|
+
return {"success": True, "command": "/broker guide", "response": ""}
|
|
6527
6542
|
|
|
6528
6543
|
# ── Broker setup intent: intercept before LLM / deterministic routing ──
|
|
6529
6544
|
if _is_broker_setup_intent(prompt):
|
|
@@ -6534,11 +6549,11 @@ class ArtheraTerminal:
|
|
|
6534
6549
|
_label_p = f" 正在启动{_display_p}配置向导…" if _display_p else " 正在启动券商配置向导…"
|
|
6535
6550
|
console.print(f"\n[bold]Aria[/bold] [dim]{_label_p}[/dim]\n")
|
|
6536
6551
|
await self.commands._cmd_broker_add(_btype_p)
|
|
6537
|
-
return
|
|
6552
|
+
return {"success": True, "command": "/broker add", "response": ""}
|
|
6538
6553
|
|
|
6539
6554
|
# ── Football prediction intercept → built-in Poisson handler ──────────
|
|
6540
6555
|
if await self._try_football_nl_intercept(prompt):
|
|
6541
|
-
return
|
|
6556
|
+
return {"success": True, "command": "football", "response": ""}
|
|
6542
6557
|
|
|
6543
6558
|
deterministic = _run_deterministic_chain(
|
|
6544
6559
|
prompt, model_has_tools=_model_has_tools_p)
|
|
@@ -6587,6 +6602,8 @@ class ArtheraTerminal:
|
|
|
6587
6602
|
frozenset() if _auto_approve_session
|
|
6588
6603
|
else frozenset(_CONFIRM_TOOLS) - _session_always_allow
|
|
6589
6604
|
),
|
|
6605
|
+
on_tool_call=events.tool_started,
|
|
6606
|
+
on_tool_result=events.tool_completed,
|
|
6590
6607
|
return_result=True,
|
|
6591
6608
|
)
|
|
6592
6609
|
_tools_used = list(getattr(_turn.final, "tools", []) or [])
|
|
@@ -6617,6 +6634,13 @@ class ArtheraTerminal:
|
|
|
6617
6634
|
except Exception:
|
|
6618
6635
|
pass
|
|
6619
6636
|
|
|
6637
|
+
return result
|
|
6638
|
+
|
|
6639
|
+
def _finish_prompt(self, result: dict, *, json_output: bool, fmt: str, output_file,
|
|
6640
|
+
quiet: bool, machine_out, events) -> None:
|
|
6641
|
+
"""Print or save run_prompt's result, and exit 1 if it failed."""
|
|
6642
|
+
from aria_code.apps.cli.exec_events import json_safe
|
|
6643
|
+
result = result or {"success": False, "response": "", "error": "no result"}
|
|
6620
6644
|
# The agent loop executes tools now, so there is nothing left over to
|
|
6621
6645
|
# run here — only stream_provider_result ever populated
|
|
6622
6646
|
# tool_calls_pending, and the deterministic chain never does. Keeping
|
|
@@ -6628,10 +6652,16 @@ class ArtheraTerminal:
|
|
|
6628
6652
|
# and exit 0.
|
|
6629
6653
|
_acceptance = (result or {}).get("acceptance") or {}
|
|
6630
6654
|
if _acceptance.get("verified") is False and not quiet:
|
|
6631
|
-
|
|
6632
|
-
|
|
6633
|
-
|
|
6634
|
-
|
|
6655
|
+
_zh = str(self.config.get("ui_lang", "en")).lower().startswith("zh")
|
|
6656
|
+
print(f"⚠ {'验收未通过' if _zh else 'Checks failed'}: {_acceptance.get('headline', '')}",
|
|
6657
|
+
file=sys.stderr)
|
|
6658
|
+
|
|
6659
|
+
events.emit("turn.completed", **json_safe(result))
|
|
6660
|
+
out = machine_out or sys.stdout
|
|
6661
|
+
if fmt == "jsonl":
|
|
6662
|
+
content = None # the events were the output
|
|
6663
|
+
elif json_output or fmt == "json":
|
|
6664
|
+
content = json.dumps(json_safe(result), ensure_ascii=False, indent=2)
|
|
6635
6665
|
elif fmt == "csv":
|
|
6636
6666
|
content = f"role,content\nassistant,\"{result.get('response', '').replace(chr(34), chr(34)+chr(34))}\""
|
|
6637
6667
|
elif fmt == "md":
|
|
@@ -6640,24 +6670,28 @@ class ArtheraTerminal:
|
|
|
6640
6670
|
content = result.get("response", "") if result.get("success") else f"Error: {result.get('error', 'Unknown')}"
|
|
6641
6671
|
|
|
6642
6672
|
# Output routing
|
|
6643
|
-
if
|
|
6673
|
+
if content is None or (fmt == "table" and not json_output and result.get("command") and not content):
|
|
6674
|
+
pass # jsonl, or a command that printed its own output
|
|
6675
|
+
elif output_file:
|
|
6644
6676
|
with open(output_file, "w") as f:
|
|
6645
6677
|
f.write(content)
|
|
6646
6678
|
if not quiet:
|
|
6647
6679
|
console.print(f"[green]Saved to {output_file}[/green]" if HAS_RICH
|
|
6648
6680
|
else f"Saved: {output_file}")
|
|
6681
|
+
elif not result.get("success") and fmt == "table" and not json_output:
|
|
6682
|
+
print(f"Error: {result.get('error', 'Unknown')}", file=sys.stderr)
|
|
6683
|
+
# In default (table) format: render with Rich Markdown when output is
|
|
6684
|
+
# a terminal. This gives properly formatted headings, bold, and tables
|
|
6685
|
+
# in interactive use. When piped/redirected, fall back to plain text
|
|
6686
|
+
# for scripting compatibility.
|
|
6687
|
+
elif HAS_RICH and fmt == "table" and not json_output and sys.stdout.isatty() and result.get("success"):
|
|
6688
|
+
console.print(make_markdown(_strip_latex(content)))
|
|
6649
6689
|
else:
|
|
6650
|
-
|
|
6651
|
-
|
|
6652
|
-
|
|
6653
|
-
|
|
6654
|
-
|
|
6655
|
-
# in interactive use. When piped/redirected, fall back to plain text
|
|
6656
|
-
# for scripting compatibility.
|
|
6657
|
-
if HAS_RICH and fmt == "table" and sys.stdout.isatty() and result.get("success"):
|
|
6658
|
-
console.print(make_markdown(_strip_latex(content)))
|
|
6659
|
-
else:
|
|
6660
|
-
print(content)
|
|
6690
|
+
print(content, file=out, flush=True)
|
|
6691
|
+
# A failed turn exits 1 in every format. Only table did; with --json a
|
|
6692
|
+
# script got exit 0 and had to read the body to learn it had failed.
|
|
6693
|
+
if not result.get("success"):
|
|
6694
|
+
sys.exit(1)
|
|
6661
6695
|
|
|
6662
6696
|
async def run_watch(self, command_fn, interval: int, cmd_args: str):
|
|
6663
6697
|
"""Run a command repeatedly with interval (like Unix watch)."""
|
|
@@ -6715,8 +6749,9 @@ Examples:
|
|
|
6715
6749
|
parser.add_argument("--model", help="AI model: sonata|prelude|sonata-thinking|prelude-thinking or full Ollama ID")
|
|
6716
6750
|
parser.add_argument("--thinking", action="store_true", help="Enable thinking mode")
|
|
6717
6751
|
parser.add_argument("--json", action="store_true", help="JSON output (with -p)")
|
|
6718
|
-
parser.add_argument("--format", choices=["table", "json", "csv", "md"], default="table",
|
|
6719
|
-
help="Output format (default: table)"
|
|
6752
|
+
parser.add_argument("--format", choices=["table", "json", "jsonl", "csv", "md"], default="table",
|
|
6753
|
+
help="Output format (default: table). With -p, jsonl streams one JSON event "
|
|
6754
|
+
"per line (turn.started, tool.started, tool.completed, turn.completed)")
|
|
6720
6755
|
parser.add_argument("--output", "-o", help="Save output to file")
|
|
6721
6756
|
parser.add_argument("--quiet", "-q", action="store_true", help="Quiet mode (data only, no UI)")
|
|
6722
6757
|
parser.add_argument("--watch", "-w", type=int, metavar="SECS", help="Refresh interval in seconds")
|
|
@@ -6741,6 +6776,15 @@ Examples:
|
|
|
6741
6776
|
|
|
6742
6777
|
args = parser.parse_args()
|
|
6743
6778
|
|
|
6779
|
+
# Machine-readable -p output: stdout carries only JSON. Everything else —
|
|
6780
|
+
# banners, tool steps, warnings, anything a tool prints — goes to stderr.
|
|
6781
|
+
# It all went to stdout, ahead of the JSON, so `aria-code -p … --json | jq`
|
|
6782
|
+
# could not parse what it was given.
|
|
6783
|
+
_machine_out = None
|
|
6784
|
+
if args.prompt and (args.json or args.format in ("json", "jsonl")):
|
|
6785
|
+
_machine_out = sys.stdout
|
|
6786
|
+
sys.stdout = sys.stderr
|
|
6787
|
+
|
|
6744
6788
|
config = load_config()
|
|
6745
6789
|
|
|
6746
6790
|
# ── Start background update check (non-blocking, daemon thread) ──────────
|
|
@@ -6841,11 +6885,11 @@ Examples:
|
|
|
6841
6885
|
if args.prompt:
|
|
6842
6886
|
if watch_interval:
|
|
6843
6887
|
await terminal.run_watch(
|
|
6844
|
-
lambda _: terminal.run_prompt(args.prompt, json_output=args.json, fmt=fmt, output_file=output_file, quiet=quiet),
|
|
6888
|
+
lambda _: terminal.run_prompt(args.prompt, json_output=args.json, fmt=fmt, output_file=output_file, quiet=quiet, machine_out=_machine_out),
|
|
6845
6889
|
watch_interval, ""
|
|
6846
6890
|
)
|
|
6847
6891
|
else:
|
|
6848
|
-
await terminal.run_prompt(args.prompt, json_output=args.json, fmt=fmt, output_file=output_file, quiet=quiet)
|
|
6892
|
+
await terminal.run_prompt(args.prompt, json_output=args.json, fmt=fmt, output_file=output_file, quiet=quiet, machine_out=_machine_out)
|
|
6849
6893
|
return
|
|
6850
6894
|
|
|
6851
6895
|
# Mode 2: Direct command
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: aria-code
|
|
3
|
-
Version: 0.
|
|
3
|
+
Version: 0.94.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
|
|
@@ -251,6 +251,12 @@ aria-code -p "Inspect this project, fix the failing tests, run them, and summari
|
|
|
251
251
|
|
|
252
252
|
Aria may request approval before editing files or running commands, according to the configured permission mode. Review changes and test results before committing them.
|
|
253
253
|
|
|
254
|
+
In a script or CI job, `--json` prints one JSON result and `--format jsonl` prints one JSON event per line as the turn runs (`turn.started`, `tool.started`, `tool.completed`, `turn.completed`). Only JSON goes to stdout, and a failed turn exits 1. With no one there to approve, pass `--allow-tools edit_file,run_command` for the tools the job may use.
|
|
255
|
+
|
|
256
|
+
```bash
|
|
257
|
+
aria-code -p "Fix the failing tests and run them" --format jsonl --allow-tools edit_file,run_command > events.jsonl
|
|
258
|
+
```
|
|
259
|
+
|
|
254
260
|
## Models and accounts
|
|
255
261
|
|
|
256
262
|
| Route | What it needs |
|
|
@@ -162,6 +162,7 @@ src/aria_code/apps/cli/constants.py
|
|
|
162
162
|
src/aria_code/apps/cli/context.py
|
|
163
163
|
src/aria_code/apps/cli/deterministic.py
|
|
164
164
|
src/aria_code/apps/cli/direct.py
|
|
165
|
+
src/aria_code/apps/cli/exec_events.py
|
|
165
166
|
src/aria_code/apps/cli/finance_service_catalog.py
|
|
166
167
|
src/aria_code/apps/cli/football_reports.py
|
|
167
168
|
src/aria_code/apps/cli/github_app_auth.py
|
|
@@ -575,6 +576,7 @@ tests/test_enterprise_tool_honesty.py
|
|
|
575
576
|
tests/test_env_switch_docs.py
|
|
576
577
|
tests/test_evals_harness.py
|
|
577
578
|
tests/test_event_import_roots.py
|
|
579
|
+
tests/test_exec_events.py
|
|
578
580
|
tests/test_extended_tools.py
|
|
579
581
|
tests/test_feishu_swarm_config.py
|
|
580
582
|
tests/test_file_links.py
|
|
@@ -0,0 +1,92 @@
|
|
|
1
|
+
"""`aria-code -p` for scripts and CI: JSON only on stdout, events as they happen, exit 1 on failure.
|
|
2
|
+
|
|
3
|
+
With --json, tool steps and warnings went to stdout ahead of the JSON, so
|
|
4
|
+
`aria-code -p … --json | jq` could not parse it; a failed turn exited 0 unless
|
|
5
|
+
the format was table; and nothing was visible until the turn ended.
|
|
6
|
+
"""
|
|
7
|
+
|
|
8
|
+
from __future__ import annotations
|
|
9
|
+
|
|
10
|
+
import io
|
|
11
|
+
import json
|
|
12
|
+
import subprocess
|
|
13
|
+
import sys
|
|
14
|
+
from pathlib import Path
|
|
15
|
+
from types import SimpleNamespace
|
|
16
|
+
|
|
17
|
+
import pytest
|
|
18
|
+
|
|
19
|
+
from aria_code.apps.cli.exec_events import ExecEvents, json_safe
|
|
20
|
+
|
|
21
|
+
|
|
22
|
+
def test_events_are_one_json_object_per_line():
|
|
23
|
+
out = io.StringIO()
|
|
24
|
+
events = ExecEvents(out)
|
|
25
|
+
events.emit("turn.started", prompt="hi", model="m")
|
|
26
|
+
events.tool_started("run_command", {"command": "curl -H 'Authorization: Bearer abc123def456' x",
|
|
27
|
+
"_run_id": "r1"})
|
|
28
|
+
events.tool_completed("run_command", {"success": False, "error": "boom",
|
|
29
|
+
"data": {"exit_code": 2}, "_elapsed_s": 1.23456})
|
|
30
|
+
lines = [json.loads(line) for line in out.getvalue().splitlines()]
|
|
31
|
+
assert [e["type"] for e in lines] == ["turn.started", "tool.started", "tool.completed"]
|
|
32
|
+
assert "abc123def456" not in lines[1]["params"]["command"]
|
|
33
|
+
assert "_run_id" not in lines[1]["params"]
|
|
34
|
+
assert lines[2] | {"ts": 0} == {"type": "tool.completed", "tool": "run_command", "success": False,
|
|
35
|
+
"elapsed_s": 1.235, "error": "boom", "exit_code": 2, "ts": 0}
|
|
36
|
+
|
|
37
|
+
|
|
38
|
+
def test_a_file_body_is_reported_by_size():
|
|
39
|
+
out = io.StringIO()
|
|
40
|
+
ExecEvents(out).tool_started("write_file", {"path": "a.py", "content": "x" * 5000})
|
|
41
|
+
assert json.loads(out.getvalue())["params"] == {"path": "a.py", "content": "<5000 chars>"}
|
|
42
|
+
|
|
43
|
+
|
|
44
|
+
def test_no_stream_writes_nothing_and_odd_values_still_serialise():
|
|
45
|
+
ExecEvents(None).emit("turn.started", prompt="x")
|
|
46
|
+
assert json_safe({"p": Path("/a"), "s": {1}}) == {"p": "/a", "s": "{1}"}
|
|
47
|
+
|
|
48
|
+
|
|
49
|
+
class _Terminal:
|
|
50
|
+
"""Just enough of ArtheraTerminal for _finish_prompt."""
|
|
51
|
+
|
|
52
|
+
config = {"ui_lang": "en"}
|
|
53
|
+
|
|
54
|
+
def __init__(self):
|
|
55
|
+
from aria_code.aria_cli import ArtheraTerminal
|
|
56
|
+
self._finish = ArtheraTerminal._finish_prompt.__get__(self)
|
|
57
|
+
|
|
58
|
+
|
|
59
|
+
@pytest.mark.parametrize("fmt, json_output", [("table", True), ("json", False), ("jsonl", False)])
|
|
60
|
+
def test_a_failed_turn_exits_1_in_every_machine_format(fmt, json_output, capsys):
|
|
61
|
+
out = io.StringIO()
|
|
62
|
+
events = ExecEvents(out if fmt == "jsonl" else None)
|
|
63
|
+
with pytest.raises(SystemExit) as exited:
|
|
64
|
+
_Terminal()._finish({"success": False, "response": "", "error": "no model"},
|
|
65
|
+
json_output=json_output, fmt=fmt, output_file=None, quiet=True,
|
|
66
|
+
machine_out=out, events=events)
|
|
67
|
+
assert exited.value.code == 1
|
|
68
|
+
body = out.getvalue()
|
|
69
|
+
parsed = [json.loads(l) for l in body.splitlines()] if fmt == "jsonl" else [json.loads(body)]
|
|
70
|
+
assert parsed[-1]["success"] is False and parsed[-1]["error"] == "no model"
|
|
71
|
+
|
|
72
|
+
|
|
73
|
+
def test_a_successful_json_turn_writes_only_json(capsys):
|
|
74
|
+
out = io.StringIO()
|
|
75
|
+
_Terminal()._finish({"success": True, "response": "done", "tools_used": ["edit_file"]},
|
|
76
|
+
json_output=True, fmt="table", output_file=None, quiet=True,
|
|
77
|
+
machine_out=out, events=ExecEvents(None))
|
|
78
|
+
assert json.loads(out.getvalue())["response"] == "done"
|
|
79
|
+
assert capsys.readouterr().out == ""
|
|
80
|
+
|
|
81
|
+
|
|
82
|
+
def test_the_cli_keeps_stdout_for_json(tmp_path):
|
|
83
|
+
"""A slash command end to end: its own output goes to stderr, the events to stdout."""
|
|
84
|
+
aria = Path(sys.executable).parent / "aria-code"
|
|
85
|
+
if not aria.exists():
|
|
86
|
+
pytest.skip("aria-code entry point not installed in this environment")
|
|
87
|
+
done = subprocess.run([str(aria), "-p", "/help", "--format", "jsonl"], cwd=tmp_path,
|
|
88
|
+
capture_output=True, text=True, timeout=120, stdin=subprocess.DEVNULL)
|
|
89
|
+
events = [json.loads(line) for line in done.stdout.splitlines() if line.strip()]
|
|
90
|
+
assert [e["type"] for e in events] == ["turn.started", "turn.completed"]
|
|
91
|
+
assert events[-1]["success"] is True and done.returncode == 0
|
|
92
|
+
assert done.stderr.strip() # /help printed, just not on stdout
|
|
@@ -16,7 +16,9 @@ class HeadlessPathTests(unittest.TestCase):
|
|
|
16
16
|
def _source(self) -> str:
|
|
17
17
|
import aria_code.aria_cli as cli
|
|
18
18
|
|
|
19
|
-
|
|
19
|
+
# run_prompt hands the turn to _run_prompt_turn and the output to _finish_prompt.
|
|
20
|
+
return "".join(inspect.getsource(getattr(cli.ArtheraTerminal, name))
|
|
21
|
+
for name in ("run_prompt", "_run_prompt_turn", "_finish_prompt"))
|
|
20
22
|
|
|
21
23
|
def test_run_prompt_goes_through_the_shared_runtime(self):
|
|
22
24
|
self.assertIn("run_chat_via_runtime", self._source())
|
|
@@ -80,7 +82,9 @@ class EmptyClosingMessageTests(unittest.TestCase):
|
|
|
80
82
|
def _source(self) -> str:
|
|
81
83
|
import aria_code.aria_cli as cli
|
|
82
84
|
|
|
83
|
-
|
|
85
|
+
# run_prompt hands the turn to _run_prompt_turn and the output to _finish_prompt.
|
|
86
|
+
return "".join(inspect.getsource(getattr(cli.ArtheraTerminal, name))
|
|
87
|
+
for name in ("run_prompt", "_run_prompt_turn", "_finish_prompt"))
|
|
84
88
|
|
|
85
89
|
def test_empty_response_after_tool_use_is_not_an_error(self):
|
|
86
90
|
# Observed for real: the agent edited the file correctly, produced no
|
|
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
|