tradingcodex 0.2.2__tar.gz → 0.2.3__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.
- {tradingcodex-0.2.2 → tradingcodex-0.2.3}/PKG-INFO +19 -18
- {tradingcodex-0.2.2 → tradingcodex-0.2.3}/README.md +17 -16
- {tradingcodex-0.2.2 → tradingcodex-0.2.3}/docs/README.md +3 -1
- {tradingcodex-0.2.2 → tradingcodex-0.2.3}/docs/components.md +3 -3
- {tradingcodex-0.2.2 → tradingcodex-0.2.3}/docs/core-concepts-and-rules.md +12 -11
- {tradingcodex-0.2.2 → tradingcodex-0.2.3}/docs/deployment.md +10 -8
- tradingcodex-0.2.3/docs/financial-workflow-references.md +152 -0
- {tradingcodex-0.2.2 → tradingcodex-0.2.3}/docs/generated-workspaces.md +17 -10
- {tradingcodex-0.2.2 → tradingcodex-0.2.3}/docs/guardrails.md +6 -6
- {tradingcodex-0.2.2 → tradingcodex-0.2.3}/docs/harness.md +10 -10
- {tradingcodex-0.2.2 → tradingcodex-0.2.3}/docs/improvement-loop.md +1 -1
- {tradingcodex-0.2.2 → tradingcodex-0.2.3}/docs/interfaces-and-surfaces.md +69 -41
- {tradingcodex-0.2.2 → tradingcodex-0.2.3}/docs/licensing-and-commercialization.md +2 -2
- {tradingcodex-0.2.2 → tradingcodex-0.2.3}/docs/product-direction.md +10 -8
- {tradingcodex-0.2.2 → tradingcodex-0.2.3}/docs/research-memory-and-artifacts.md +9 -0
- {tradingcodex-0.2.2 → tradingcodex-0.2.3}/docs/roles-skills-and-workflows.md +19 -8
- {tradingcodex-0.2.2 → tradingcodex-0.2.3}/docs/safety-policy-and-execution.md +22 -21
- {tradingcodex-0.2.2 → tradingcodex-0.2.3}/docs/system-architecture.md +16 -13
- {tradingcodex-0.2.2 → tradingcodex-0.2.3}/docs/validation-and-test-plan.md +17 -3
- {tradingcodex-0.2.2 → tradingcodex-0.2.3}/pyproject.toml +2 -2
- {tradingcodex-0.2.2 → tradingcodex-0.2.3}/static/tradingcodex_web/app.css +342 -1
- {tradingcodex-0.2.2 → tradingcodex-0.2.3}/static/tradingcodex_web/workbench.css +7 -14
- {tradingcodex-0.2.2 → tradingcodex-0.2.3}/tests/test_broker_center_prd.py +24 -7
- {tradingcodex-0.2.2 → tradingcodex-0.2.3}/tests/test_e2e_user_scenarios.py +8 -0
- {tradingcodex-0.2.2 → tradingcodex-0.2.3}/tests/test_python_migration.py +790 -33
- {tradingcodex-0.2.2 → tradingcodex-0.2.3}/tradingcodex.egg-info/PKG-INFO +19 -18
- {tradingcodex-0.2.2 → tradingcodex-0.2.3}/tradingcodex.egg-info/SOURCES.txt +3 -0
- {tradingcodex-0.2.2 → tradingcodex-0.2.3}/tradingcodex_cli/__main__.py +4 -3
- {tradingcodex-0.2.2 → tradingcodex-0.2.3}/tradingcodex_cli/commands/bootstrap.py +29 -1
- {tradingcodex-0.2.2 → tradingcodex-0.2.3}/tradingcodex_cli/commands/mcp.py +2 -0
- {tradingcodex-0.2.2 → tradingcodex-0.2.3}/tradingcodex_cli/commands/profile.py +39 -24
- {tradingcodex-0.2.2 → tradingcodex-0.2.3}/tradingcodex_cli/commands/research.py +4 -0
- tradingcodex-0.2.3/tradingcodex_cli/commands/subagents.py +203 -0
- {tradingcodex-0.2.2 → tradingcodex-0.2.3}/tradingcodex_cli/generator.py +2 -0
- {tradingcodex-0.2.2 → tradingcodex-0.2.3}/tradingcodex_cli/service_autostart.py +60 -3
- tradingcodex-0.2.3/tradingcodex_cli/startup_status.py +254 -0
- {tradingcodex-0.2.2 → tradingcodex-0.2.3}/tradingcodex_service/api.py +16 -5
- {tradingcodex-0.2.2 → tradingcodex-0.2.3}/tradingcodex_service/application/agents.py +42 -23
- {tradingcodex-0.2.2 → tradingcodex-0.2.3}/tradingcodex_service/application/artifact_quality.py +11 -0
- {tradingcodex-0.2.2 → tradingcodex-0.2.3}/tradingcodex_service/application/components.py +6 -6
- {tradingcodex-0.2.2 → tradingcodex-0.2.3}/tradingcodex_service/application/context_budget.py +34 -9
- tradingcodex-0.2.3/tradingcodex_service/application/harness.py +1691 -0
- {tradingcodex-0.2.2 → tradingcodex-0.2.3}/tradingcodex_service/application/orders.py +135 -20
- {tradingcodex-0.2.2 → tradingcodex-0.2.3}/tradingcodex_service/application/portfolio.py +2 -2
- {tradingcodex-0.2.2 → tradingcodex-0.2.3}/tradingcodex_service/application/research.py +4 -0
- {tradingcodex-0.2.2 → tradingcodex-0.2.3}/tradingcodex_service/application/runtime.py +51 -2
- {tradingcodex-0.2.2 → tradingcodex-0.2.3}/tradingcodex_service/mcp_runtime.py +20 -10
- {tradingcodex-0.2.2 → tradingcodex-0.2.3}/tradingcodex_service/templates/web/agent_skills.html +2 -2
- {tradingcodex-0.2.2 → tradingcodex-0.2.3}/tradingcodex_service/templates/web/agents.html +4 -4
- {tradingcodex-0.2.2 → tradingcodex-0.2.3}/tradingcodex_service/templates/web/base.html +16 -42
- {tradingcodex-0.2.2 → tradingcodex-0.2.3}/tradingcodex_service/templates/web/brokers.html +14 -7
- {tradingcodex-0.2.2 → tradingcodex-0.2.3}/tradingcodex_service/templates/web/dashboard.html +14 -14
- {tradingcodex-0.2.2 → tradingcodex-0.2.3}/tradingcodex_service/templates/web/fragments/role_inspector.html +9 -9
- tradingcodex-0.2.3/tradingcodex_service/templates/web/fragments/starter_prompt.html +253 -0
- {tradingcodex-0.2.2 → tradingcodex-0.2.3}/tradingcodex_service/templates/web/fragments/topology_canvas.html +6 -6
- tradingcodex-0.2.3/tradingcodex_service/templates/web/fragments/workspace_card.html +37 -0
- {tradingcodex-0.2.2 → tradingcodex-0.2.3}/tradingcodex_service/templates/web/harness.html +10 -10
- {tradingcodex-0.2.2 → tradingcodex-0.2.3}/tradingcodex_service/templates/web/mcp_router.html +43 -43
- {tradingcodex-0.2.2 → tradingcodex-0.2.3}/tradingcodex_service/templates/web/orders.html +23 -12
- {tradingcodex-0.2.2 → tradingcodex-0.2.3}/tradingcodex_service/templates/web/policy.html +2 -2
- {tradingcodex-0.2.2 → tradingcodex-0.2.3}/tradingcodex_service/templates/web/portfolio.html +29 -11
- {tradingcodex-0.2.2 → tradingcodex-0.2.3}/tradingcodex_service/templates/web/research.html +33 -6
- tradingcodex-0.2.3/tradingcodex_service/templates/web/starter_prompt.html +51 -0
- {tradingcodex-0.2.2 → tradingcodex-0.2.3}/tradingcodex_service/templates/web/strategies.html +9 -3
- {tradingcodex-0.2.2 → tradingcodex-0.2.3}/tradingcodex_service/urls.py +1 -0
- tradingcodex-0.2.3/tradingcodex_service/version.py +1 -0
- {tradingcodex-0.2.2 → tradingcodex-0.2.3}/tradingcodex_service/web.py +182 -32
- {tradingcodex-0.2.2 → tradingcodex-0.2.3}/workspace_templates/modules/codex-base/files/.codex/hooks/tradingcodex_hook.py +6 -222
- {tradingcodex-0.2.2 → tradingcodex-0.2.3}/workspace_templates/modules/codex-base/files/.codex/prompts/base_instructions/head-manager.md +13 -3
- {tradingcodex-0.2.2 → tradingcodex-0.2.3}/workspace_templates/modules/fixed-subagents/files/.codex/agents/execution-operator.toml +6 -6
- {tradingcodex-0.2.2 → tradingcodex-0.2.3}/workspace_templates/modules/fixed-subagents/files/.codex/agents/risk-manager.toml +1 -1
- {tradingcodex-0.2.2 → tradingcodex-0.2.3}/workspace_templates/modules/repo-skills/files/.agents/skills/investment-workflow-map/SKILL.md +1 -1
- {tradingcodex-0.2.2 → tradingcodex-0.2.3}/workspace_templates/modules/repo-skills/files/.agents/skills/manage-subagents/SKILL.md +6 -4
- {tradingcodex-0.2.2 → tradingcodex-0.2.3}/workspace_templates/modules/repo-skills/files/.agents/skills/orchestrate-workflow/SKILL.md +6 -3
- {tradingcodex-0.2.2 → tradingcodex-0.2.3}/workspace_templates/modules/repo-skills/files/.agents/skills/scenario-quality-gates/SKILL.md +15 -3
- {tradingcodex-0.2.2 → tradingcodex-0.2.3}/workspace_templates/modules/repo-skills/files/.agents/skills/synthesize-decision/SKILL.md +12 -0
- {tradingcodex-0.2.2 → tradingcodex-0.2.3}/workspace_templates/modules/repo-skills/files/.agents/skills/use-tradingcodex-server/SKILL.md +12 -9
- {tradingcodex-0.2.2 → tradingcodex-0.2.3}/workspace_templates/modules/repo-skills/files/.agents/skills/use-tradingcodex-server/references/safety-runbook.md +2 -2
- tradingcodex-0.2.2/tradingcodex_cli/commands/subagents.py +0 -113
- tradingcodex-0.2.2/tradingcodex_service/application/harness.py +0 -689
- tradingcodex-0.2.2/tradingcodex_service/templates/web/fragments/starter_prompt.html +0 -24
- tradingcodex-0.2.2/tradingcodex_service/templates/web/starter_prompt.html +0 -40
- tradingcodex-0.2.2/tradingcodex_service/version.py +0 -1
- {tradingcodex-0.2.2 → tradingcodex-0.2.3}/CONTRIBUTING.md +0 -0
- {tradingcodex-0.2.2 → tradingcodex-0.2.3}/LICENSE +0 -0
- {tradingcodex-0.2.2 → tradingcodex-0.2.3}/MANIFEST.in +0 -0
- {tradingcodex-0.2.2 → tradingcodex-0.2.3}/NOTICE +0 -0
- {tradingcodex-0.2.2 → tradingcodex-0.2.3}/TRADEMARKS.md +0 -0
- {tradingcodex-0.2.2 → tradingcodex-0.2.3}/apps/__init__.py +0 -0
- {tradingcodex-0.2.2 → tradingcodex-0.2.3}/apps/audit/__init__.py +0 -0
- {tradingcodex-0.2.2 → tradingcodex-0.2.3}/apps/audit/admin.py +0 -0
- {tradingcodex-0.2.2 → tradingcodex-0.2.3}/apps/audit/apps.py +0 -0
- {tradingcodex-0.2.2 → tradingcodex-0.2.3}/apps/audit/migrations/0001_initial.py +0 -0
- {tradingcodex-0.2.2 → tradingcodex-0.2.3}/apps/audit/migrations/__init__.py +0 -0
- {tradingcodex-0.2.2 → tradingcodex-0.2.3}/apps/audit/models.py +0 -0
- {tradingcodex-0.2.2 → tradingcodex-0.2.3}/apps/harness/__init__.py +0 -0
- {tradingcodex-0.2.2 → tradingcodex-0.2.3}/apps/harness/admin.py +0 -0
- {tradingcodex-0.2.2 → tradingcodex-0.2.3}/apps/harness/apps.py +0 -0
- {tradingcodex-0.2.2 → tradingcodex-0.2.3}/apps/harness/migrations/0001_initial.py +0 -0
- {tradingcodex-0.2.2 → tradingcodex-0.2.3}/apps/harness/migrations/__init__.py +0 -0
- {tradingcodex-0.2.2 → tradingcodex-0.2.3}/apps/harness/models.py +0 -0
- {tradingcodex-0.2.2 → tradingcodex-0.2.3}/apps/harness/templatetags/__init__.py +0 -0
- {tradingcodex-0.2.2 → tradingcodex-0.2.3}/apps/integrations/__init__.py +0 -0
- {tradingcodex-0.2.2 → tradingcodex-0.2.3}/apps/integrations/admin.py +0 -0
- {tradingcodex-0.2.2 → tradingcodex-0.2.3}/apps/integrations/apps.py +0 -0
- {tradingcodex-0.2.2 → tradingcodex-0.2.3}/apps/integrations/migrations/0001_initial.py +0 -0
- {tradingcodex-0.2.2 → tradingcodex-0.2.3}/apps/integrations/migrations/0002_brokerconnection_brokeraccount_instrumentmap.py +0 -0
- {tradingcodex-0.2.2 → tradingcodex-0.2.3}/apps/integrations/migrations/__init__.py +0 -0
- {tradingcodex-0.2.2 → tradingcodex-0.2.3}/apps/integrations/models.py +0 -0
- {tradingcodex-0.2.2 → tradingcodex-0.2.3}/apps/integrations/services.py +0 -0
- {tradingcodex-0.2.2 → tradingcodex-0.2.3}/apps/mcp/__init__.py +0 -0
- {tradingcodex-0.2.2 → tradingcodex-0.2.3}/apps/mcp/admin.py +0 -0
- {tradingcodex-0.2.2 → tradingcodex-0.2.3}/apps/mcp/apps.py +0 -0
- {tradingcodex-0.2.2 → tradingcodex-0.2.3}/apps/mcp/migrations/0001_initial.py +0 -0
- {tradingcodex-0.2.2 → tradingcodex-0.2.3}/apps/mcp/migrations/__init__.py +0 -0
- {tradingcodex-0.2.2 → tradingcodex-0.2.3}/apps/mcp/models.py +0 -0
- {tradingcodex-0.2.2 → tradingcodex-0.2.3}/apps/mcp/services.py +0 -0
- {tradingcodex-0.2.2 → tradingcodex-0.2.3}/apps/orders/__init__.py +0 -0
- {tradingcodex-0.2.2 → tradingcodex-0.2.3}/apps/orders/admin.py +0 -0
- {tradingcodex-0.2.2 → tradingcodex-0.2.3}/apps/orders/apps.py +0 -0
- {tradingcodex-0.2.2 → tradingcodex-0.2.3}/apps/orders/migrations/0001_initial.py +0 -0
- {tradingcodex-0.2.2 → tradingcodex-0.2.3}/apps/orders/migrations/0002_approvalreceipt_approved_order_type_and_more.py +0 -0
- {tradingcodex-0.2.2 → tradingcodex-0.2.3}/apps/orders/migrations/0003_migrate_orderintent_to_orderticket.py +0 -0
- {tradingcodex-0.2.2 → tradingcodex-0.2.3}/apps/orders/migrations/0004_remove_order_intent_compat_fields.py +0 -0
- {tradingcodex-0.2.2 → tradingcodex-0.2.3}/apps/orders/migrations/__init__.py +0 -0
- {tradingcodex-0.2.2 → tradingcodex-0.2.3}/apps/orders/models.py +0 -0
- {tradingcodex-0.2.2 → tradingcodex-0.2.3}/apps/orders/services.py +0 -0
- {tradingcodex-0.2.2 → tradingcodex-0.2.3}/apps/policy/__init__.py +0 -0
- {tradingcodex-0.2.2 → tradingcodex-0.2.3}/apps/policy/admin.py +0 -0
- {tradingcodex-0.2.2 → tradingcodex-0.2.3}/apps/policy/apps.py +0 -0
- {tradingcodex-0.2.2 → tradingcodex-0.2.3}/apps/policy/migrations/0001_initial.py +0 -0
- {tradingcodex-0.2.2 → tradingcodex-0.2.3}/apps/policy/migrations/__init__.py +0 -0
- {tradingcodex-0.2.2 → tradingcodex-0.2.3}/apps/policy/models.py +0 -0
- {tradingcodex-0.2.2 → tradingcodex-0.2.3}/apps/policy/services.py +0 -0
- {tradingcodex-0.2.2 → tradingcodex-0.2.3}/apps/portfolio/__init__.py +0 -0
- {tradingcodex-0.2.2 → tradingcodex-0.2.3}/apps/portfolio/admin.py +0 -0
- {tradingcodex-0.2.2 → tradingcodex-0.2.3}/apps/portfolio/apps.py +0 -0
- {tradingcodex-0.2.2 → tradingcodex-0.2.3}/apps/portfolio/migrations/0001_initial.py +0 -0
- {tradingcodex-0.2.2 → tradingcodex-0.2.3}/apps/portfolio/migrations/0002_brokersyncrun_portfolioledgerevent_reconciliationrun.py +0 -0
- {tradingcodex-0.2.2 → tradingcodex-0.2.3}/apps/portfolio/migrations/__init__.py +0 -0
- {tradingcodex-0.2.2 → tradingcodex-0.2.3}/apps/portfolio/models.py +0 -0
- {tradingcodex-0.2.2 → tradingcodex-0.2.3}/apps/research/__init__.py +0 -0
- {tradingcodex-0.2.2 → tradingcodex-0.2.3}/apps/research/admin.py +0 -0
- {tradingcodex-0.2.2 → tradingcodex-0.2.3}/apps/research/apps.py +0 -0
- {tradingcodex-0.2.2 → tradingcodex-0.2.3}/apps/research/migrations/__init__.py +0 -0
- {tradingcodex-0.2.2 → tradingcodex-0.2.3}/apps/research/models.py +0 -0
- {tradingcodex-0.2.2 → tradingcodex-0.2.3}/apps/workflows/__init__.py +0 -0
- {tradingcodex-0.2.2 → tradingcodex-0.2.3}/apps/workflows/admin.py +0 -0
- {tradingcodex-0.2.2 → tradingcodex-0.2.3}/apps/workflows/apps.py +0 -0
- {tradingcodex-0.2.2 → tradingcodex-0.2.3}/apps/workflows/migrations/0001_initial.py +0 -0
- {tradingcodex-0.2.2 → tradingcodex-0.2.3}/apps/workflows/migrations/__init__.py +0 -0
- {tradingcodex-0.2.2 → tradingcodex-0.2.3}/apps/workflows/models.py +0 -0
- {tradingcodex-0.2.2 → tradingcodex-0.2.3}/assets/tradingcodex-banner.svg +0 -0
- {tradingcodex-0.2.2 → tradingcodex-0.2.3}/install.sh +0 -0
- {tradingcodex-0.2.2 → tradingcodex-0.2.3}/installation.md +0 -0
- {tradingcodex-0.2.2 → tradingcodex-0.2.3}/setup.cfg +0 -0
- {tradingcodex-0.2.2 → tradingcodex-0.2.3}/static/tradingcodex_admin/favicon.svg +0 -0
- {tradingcodex-0.2.2 → tradingcodex-0.2.3}/static/tradingcodex_web/app.js +0 -0
- {tradingcodex-0.2.2 → tradingcodex-0.2.3}/static/vendor/alpine/alpine.min.js +0 -0
- {tradingcodex-0.2.2 → tradingcodex-0.2.3}/static/vendor/htmx/htmx.min.js +0 -0
- {tradingcodex-0.2.2 → tradingcodex-0.2.3}/tradingcodex.egg-info/dependency_links.txt +0 -0
- {tradingcodex-0.2.2 → tradingcodex-0.2.3}/tradingcodex.egg-info/entry_points.txt +0 -0
- {tradingcodex-0.2.2 → tradingcodex-0.2.3}/tradingcodex.egg-info/requires.txt +0 -0
- {tradingcodex-0.2.2 → tradingcodex-0.2.3}/tradingcodex.egg-info/top_level.txt +0 -0
- {tradingcodex-0.2.2 → tradingcodex-0.2.3}/tradingcodex_cli/__init__.py +0 -0
- {tradingcodex-0.2.2 → tradingcodex-0.2.3}/tradingcodex_cli/commands/__init__.py +0 -0
- {tradingcodex-0.2.2 → tradingcodex-0.2.3}/tradingcodex_cli/commands/db.py +0 -0
- {tradingcodex-0.2.2 → tradingcodex-0.2.3}/tradingcodex_cli/commands/doctor.py +0 -0
- {tradingcodex-0.2.2 → tradingcodex-0.2.3}/tradingcodex_cli/commands/orders.py +0 -0
- {tradingcodex-0.2.2 → tradingcodex-0.2.3}/tradingcodex_cli/commands/policy.py +0 -0
- {tradingcodex-0.2.2 → tradingcodex-0.2.3}/tradingcodex_cli/commands/skills.py +0 -0
- {tradingcodex-0.2.2 → tradingcodex-0.2.3}/tradingcodex_cli/commands/strategies.py +0 -0
- {tradingcodex-0.2.2 → tradingcodex-0.2.3}/tradingcodex_cli/commands/utils.py +0 -0
- {tradingcodex-0.2.2 → tradingcodex-0.2.3}/tradingcodex_cli/commands/workspaces.py +0 -0
- {tradingcodex-0.2.2 → tradingcodex-0.2.3}/tradingcodex_cli/mcp_stdio.py +0 -0
- {tradingcodex-0.2.2 → tradingcodex-0.2.3}/tradingcodex_service/__init__.py +0 -0
- {tradingcodex-0.2.2 → tradingcodex-0.2.3}/tradingcodex_service/admin.py +0 -0
- {tradingcodex-0.2.2 → tradingcodex-0.2.3}/tradingcodex_service/application/__init__.py +0 -0
- {tradingcodex-0.2.2 → tradingcodex-0.2.3}/tradingcodex_service/application/audit.py +0 -0
- {tradingcodex-0.2.2 → tradingcodex-0.2.3}/tradingcodex_service/application/brokers.py +0 -0
- {tradingcodex-0.2.2 → tradingcodex-0.2.3}/tradingcodex_service/application/common.py +0 -0
- {tradingcodex-0.2.2 → tradingcodex-0.2.3}/tradingcodex_service/application/markdown_preview.py +0 -0
- {tradingcodex-0.2.2 → tradingcodex-0.2.3}/tradingcodex_service/application/policy.py +0 -0
- {tradingcodex-0.2.2 → tradingcodex-0.2.3}/tradingcodex_service/asgi.py +0 -0
- {tradingcodex-0.2.2 → tradingcodex-0.2.3}/tradingcodex_service/mcp_http.py +0 -0
- {tradingcodex-0.2.2 → tradingcodex-0.2.3}/tradingcodex_service/settings.py +0 -0
- {tradingcodex-0.2.2 → tradingcodex-0.2.3}/tradingcodex_service/templates/web/activity.html +0 -0
- {tradingcodex-0.2.2 → tradingcodex-0.2.3}/tradingcodex_service/wsgi.py +0 -0
- {tradingcodex-0.2.2 → tradingcodex-0.2.3}/workspace_templates/__init__.py +0 -0
- {tradingcodex-0.2.2 → tradingcodex-0.2.3}/workspace_templates/modules/audit/files/.tradingcodex/audit/README.md +0 -0
- {tradingcodex-0.2.2 → tradingcodex-0.2.3}/workspace_templates/modules/audit/files/trading/audit/.gitkeep +0 -0
- {tradingcodex-0.2.2 → tradingcodex-0.2.3}/workspace_templates/modules/audit/module.json +0 -0
- {tradingcodex-0.2.2 → tradingcodex-0.2.3}/workspace_templates/modules/codex-base/files/.codex/config.toml +0 -0
- {tradingcodex-0.2.2 → tradingcodex-0.2.3}/workspace_templates/modules/codex-base/files/.codex/hooks.json +0 -0
- {tradingcodex-0.2.2 → tradingcodex-0.2.3}/workspace_templates/modules/codex-base/files/.codex/rules/tradingcodex.rules +0 -0
- {tradingcodex-0.2.2 → tradingcodex-0.2.3}/workspace_templates/modules/codex-base/files/.tradingcodex/capabilities.yaml +0 -0
- {tradingcodex-0.2.2 → tradingcodex-0.2.3}/workspace_templates/modules/codex-base/files/.tradingcodex/cli.py +0 -0
- {tradingcodex-0.2.2 → tradingcodex-0.2.3}/workspace_templates/modules/codex-base/files/.tradingcodex/config.yaml +0 -0
- {tradingcodex-0.2.2 → tradingcodex-0.2.3}/workspace_templates/modules/codex-base/files/.tradingcodex/policies/policy-bindings.yaml +0 -0
- {tradingcodex-0.2.2 → tradingcodex-0.2.3}/workspace_templates/modules/codex-base/files/.tradingcodex/policies/principals.yaml +0 -0
- {tradingcodex-0.2.2 → tradingcodex-0.2.3}/workspace_templates/modules/codex-base/files/.tradingcodex/policies/roles.yaml +0 -0
- {tradingcodex-0.2.2 → tradingcodex-0.2.3}/workspace_templates/modules/codex-base/files/AGENTS.md +0 -0
- {tradingcodex-0.2.2 → tradingcodex-0.2.3}/workspace_templates/modules/codex-base/files/pyproject.toml +0 -0
- {tradingcodex-0.2.2 → tradingcodex-0.2.3}/workspace_templates/modules/codex-base/files/tcx +0 -0
- {tradingcodex-0.2.2 → tradingcodex-0.2.3}/workspace_templates/modules/codex-base/module.json +0 -0
- {tradingcodex-0.2.2 → tradingcodex-0.2.3}/workspace_templates/modules/enforcement-guardrails/files/.tradingcodex/policies/access-policies.yaml +0 -0
- {tradingcodex-0.2.2 → tradingcodex-0.2.3}/workspace_templates/modules/enforcement-guardrails/files/.tradingcodex/policies/restricted-list.yaml +0 -0
- {tradingcodex-0.2.2 → tradingcodex-0.2.3}/workspace_templates/modules/enforcement-guardrails/files/.tradingcodex/schemas/approval_receipt.schema.json +0 -0
- {tradingcodex-0.2.2 → tradingcodex-0.2.3}/workspace_templates/modules/enforcement-guardrails/files/.tradingcodex/schemas/audit_event.schema.json +0 -0
- {tradingcodex-0.2.2 → tradingcodex-0.2.3}/workspace_templates/modules/enforcement-guardrails/files/.tradingcodex/schemas/evidence_pack.schema.json +0 -0
- {tradingcodex-0.2.2 → tradingcodex-0.2.3}/workspace_templates/modules/enforcement-guardrails/files/.tradingcodex/schemas/execution_result.schema.json +0 -0
- {tradingcodex-0.2.2 → tradingcodex-0.2.3}/workspace_templates/modules/enforcement-guardrails/files/.tradingcodex/schemas/fundamental_report.schema.json +0 -0
- {tradingcodex-0.2.2 → tradingcodex-0.2.3}/workspace_templates/modules/enforcement-guardrails/files/.tradingcodex/schemas/news_report.schema.json +0 -0
- {tradingcodex-0.2.2 → tradingcodex-0.2.3}/workspace_templates/modules/enforcement-guardrails/files/.tradingcodex/schemas/order_ticket.schema.json +0 -0
- {tradingcodex-0.2.2 → tradingcodex-0.2.3}/workspace_templates/modules/enforcement-guardrails/files/.tradingcodex/schemas/portfolio_review.schema.json +0 -0
- {tradingcodex-0.2.2 → tradingcodex-0.2.3}/workspace_templates/modules/enforcement-guardrails/files/.tradingcodex/schemas/postmortem_report.schema.json +0 -0
- {tradingcodex-0.2.2 → tradingcodex-0.2.3}/workspace_templates/modules/enforcement-guardrails/files/.tradingcodex/schemas/research_artifact.schema.json +0 -0
- {tradingcodex-0.2.2 → tradingcodex-0.2.3}/workspace_templates/modules/enforcement-guardrails/files/.tradingcodex/schemas/risk_report.schema.json +0 -0
- {tradingcodex-0.2.2 → tradingcodex-0.2.3}/workspace_templates/modules/enforcement-guardrails/files/.tradingcodex/schemas/technical_report.schema.json +0 -0
- {tradingcodex-0.2.2 → tradingcodex-0.2.3}/workspace_templates/modules/enforcement-guardrails/files/.tradingcodex/schemas/thesis.schema.json +0 -0
- {tradingcodex-0.2.2 → tradingcodex-0.2.3}/workspace_templates/modules/enforcement-guardrails/files/.tradingcodex/schemas/valuation.schema.json +0 -0
- {tradingcodex-0.2.2 → tradingcodex-0.2.3}/workspace_templates/modules/enforcement-guardrails/module.json +0 -0
- {tradingcodex-0.2.2 → tradingcodex-0.2.3}/workspace_templates/modules/fixed-subagents/files/.codex/agents/fundamental-analyst.toml +0 -0
- {tradingcodex-0.2.2 → tradingcodex-0.2.3}/workspace_templates/modules/fixed-subagents/files/.codex/agents/instrument-analyst.toml +0 -0
- {tradingcodex-0.2.2 → tradingcodex-0.2.3}/workspace_templates/modules/fixed-subagents/files/.codex/agents/macro-analyst.toml +0 -0
- {tradingcodex-0.2.2 → tradingcodex-0.2.3}/workspace_templates/modules/fixed-subagents/files/.codex/agents/news-analyst.toml +0 -0
- {tradingcodex-0.2.2 → tradingcodex-0.2.3}/workspace_templates/modules/fixed-subagents/files/.codex/agents/portfolio-manager.toml +0 -0
- {tradingcodex-0.2.2 → tradingcodex-0.2.3}/workspace_templates/modules/fixed-subagents/files/.codex/agents/technical-analyst.toml +0 -0
- {tradingcodex-0.2.2 → tradingcodex-0.2.3}/workspace_templates/modules/fixed-subagents/files/.codex/agents/valuation-analyst.toml +0 -0
- {tradingcodex-0.2.2 → tradingcodex-0.2.3}/workspace_templates/modules/fixed-subagents/files/.tradingcodex/mainagent/head-manager.yaml +0 -0
- {tradingcodex-0.2.2 → tradingcodex-0.2.3}/workspace_templates/modules/fixed-subagents/files/.tradingcodex/mainagent/skill-change-proposals/.gitkeep +0 -0
- {tradingcodex-0.2.2 → tradingcodex-0.2.3}/workspace_templates/modules/fixed-subagents/files/.tradingcodex/mainagent/subagent-registry.yaml +0 -0
- {tradingcodex-0.2.2 → tradingcodex-0.2.3}/workspace_templates/modules/fixed-subagents/module.json +0 -0
- {tradingcodex-0.2.2 → tradingcodex-0.2.3}/workspace_templates/modules/guidance-guardrails/files/.tradingcodex/guidance/guardrails.md +0 -0
- {tradingcodex-0.2.2 → tradingcodex-0.2.3}/workspace_templates/modules/guidance-guardrails/files/.tradingcodex/guidance/task-quality-checklist.md +0 -0
- {tradingcodex-0.2.2 → tradingcodex-0.2.3}/workspace_templates/modules/guidance-guardrails/module.json +0 -0
- {tradingcodex-0.2.2 → tradingcodex-0.2.3}/workspace_templates/modules/information-barriers/files/.tradingcodex/policies/information-barriers.yaml +0 -0
- {tradingcodex-0.2.2 → tradingcodex-0.2.3}/workspace_templates/modules/information-barriers/files/.tradingcodex/secrets.md +0 -0
- {tradingcodex-0.2.2 → tradingcodex-0.2.3}/workspace_templates/modules/information-barriers/files/trading/approvals/.gitkeep +0 -0
- {tradingcodex-0.2.2 → tradingcodex-0.2.3}/workspace_templates/modules/information-barriers/files/trading/market-data/.gitkeep +0 -0
- {tradingcodex-0.2.2 → tradingcodex-0.2.3}/workspace_templates/modules/information-barriers/files/trading/orders/approved/.gitkeep +0 -0
- {tradingcodex-0.2.2 → tradingcodex-0.2.3}/workspace_templates/modules/information-barriers/files/trading/orders/draft/.gitkeep +0 -0
- {tradingcodex-0.2.2 → tradingcodex-0.2.3}/workspace_templates/modules/information-barriers/files/trading/orders/executed/.gitkeep +0 -0
- {tradingcodex-0.2.2 → tradingcodex-0.2.3}/workspace_templates/modules/information-barriers/files/trading/orders/rejected/.gitkeep +0 -0
- {tradingcodex-0.2.2 → tradingcodex-0.2.3}/workspace_templates/modules/information-barriers/files/trading/portfolio/.gitkeep +0 -0
- {tradingcodex-0.2.2 → tradingcodex-0.2.3}/workspace_templates/modules/information-barriers/files/trading/reports/fundamental/.gitkeep +0 -0
- {tradingcodex-0.2.2 → tradingcodex-0.2.3}/workspace_templates/modules/information-barriers/files/trading/reports/instrument/.gitkeep +0 -0
- {tradingcodex-0.2.2 → tradingcodex-0.2.3}/workspace_templates/modules/information-barriers/files/trading/reports/macro/.gitkeep +0 -0
- {tradingcodex-0.2.2 → tradingcodex-0.2.3}/workspace_templates/modules/information-barriers/files/trading/reports/news/.gitkeep +0 -0
- {tradingcodex-0.2.2 → tradingcodex-0.2.3}/workspace_templates/modules/information-barriers/files/trading/reports/policy/.gitkeep +0 -0
- {tradingcodex-0.2.2 → tradingcodex-0.2.3}/workspace_templates/modules/information-barriers/files/trading/reports/portfolio/.gitkeep +0 -0
- {tradingcodex-0.2.2 → tradingcodex-0.2.3}/workspace_templates/modules/information-barriers/files/trading/reports/postmortem/.gitkeep +0 -0
- {tradingcodex-0.2.2 → tradingcodex-0.2.3}/workspace_templates/modules/information-barriers/files/trading/reports/risk/.gitkeep +0 -0
- {tradingcodex-0.2.2 → tradingcodex-0.2.3}/workspace_templates/modules/information-barriers/files/trading/reports/technical/.gitkeep +0 -0
- {tradingcodex-0.2.2 → tradingcodex-0.2.3}/workspace_templates/modules/information-barriers/files/trading/reports/valuation/.gitkeep +0 -0
- {tradingcodex-0.2.2 → tradingcodex-0.2.3}/workspace_templates/modules/information-barriers/files/trading/research/.gitkeep +0 -0
- {tradingcodex-0.2.2 → tradingcodex-0.2.3}/workspace_templates/modules/information-barriers/module.json +0 -0
- {tradingcodex-0.2.2 → tradingcodex-0.2.3}/workspace_templates/modules/paper-trading/files/.tradingcodex/mcp/adapters/paper-trading.py +0 -0
- {tradingcodex-0.2.2 → tradingcodex-0.2.3}/workspace_templates/modules/paper-trading/module.json +0 -0
- {tradingcodex-0.2.2 → tradingcodex-0.2.3}/workspace_templates/modules/postmortem/files/.tradingcodex/workflows/postmortem.yaml +0 -0
- {tradingcodex-0.2.2 → tradingcodex-0.2.3}/workspace_templates/modules/postmortem/module.json +0 -0
- {tradingcodex-0.2.2 → tradingcodex-0.2.3}/workspace_templates/modules/repo-skills/files/.agents/skills/investment-workflow-map/agents/openai.yaml +0 -0
- {tradingcodex-0.2.2 → tradingcodex-0.2.3}/workspace_templates/modules/repo-skills/files/.agents/skills/manage-optional-skills/SKILL.md +0 -0
- {tradingcodex-0.2.2 → tradingcodex-0.2.3}/workspace_templates/modules/repo-skills/files/.agents/skills/manage-optional-skills/agents/openai.yaml +0 -0
- {tradingcodex-0.2.2 → tradingcodex-0.2.3}/workspace_templates/modules/repo-skills/files/.agents/skills/manage-subagents/agents/openai.yaml +0 -0
- {tradingcodex-0.2.2 → tradingcodex-0.2.3}/workspace_templates/modules/repo-skills/files/.agents/skills/orchestrate-workflow/agents/openai.yaml +0 -0
- {tradingcodex-0.2.2 → tradingcodex-0.2.3}/workspace_templates/modules/repo-skills/files/.agents/skills/postmortem/SKILL.md +0 -0
- {tradingcodex-0.2.2 → tradingcodex-0.2.3}/workspace_templates/modules/repo-skills/files/.agents/skills/postmortem/agents/openai.yaml +0 -0
- {tradingcodex-0.2.2 → tradingcodex-0.2.3}/workspace_templates/modules/repo-skills/files/.agents/skills/scenario-quality-gates/agents/openai.yaml +0 -0
- {tradingcodex-0.2.2 → tradingcodex-0.2.3}/workspace_templates/modules/repo-skills/files/.agents/skills/strategy-creator/SKILL.md +0 -0
- {tradingcodex-0.2.2 → tradingcodex-0.2.3}/workspace_templates/modules/repo-skills/files/.agents/skills/strategy-creator/agents/openai.yaml +0 -0
- {tradingcodex-0.2.2 → tradingcodex-0.2.3}/workspace_templates/modules/repo-skills/files/.agents/skills/synthesize-decision/agents/openai.yaml +0 -0
- {tradingcodex-0.2.2 → tradingcodex-0.2.3}/workspace_templates/modules/repo-skills/files/.agents/skills/tradingcodex-operator/SKILL.md +0 -0
- {tradingcodex-0.2.2 → tradingcodex-0.2.3}/workspace_templates/modules/repo-skills/files/.agents/skills/tradingcodex-operator/agents/openai.yaml +0 -0
- {tradingcodex-0.2.2 → tradingcodex-0.2.3}/workspace_templates/modules/repo-skills/files/.agents/skills/use-tradingcodex-server/agents/openai.yaml +0 -0
- {tradingcodex-0.2.2 → tradingcodex-0.2.3}/workspace_templates/modules/repo-skills/files/.agents/skills/use-tradingcodex-server/references/asset-classes.md +0 -0
- {tradingcodex-0.2.2 → tradingcodex-0.2.3}/workspace_templates/modules/repo-skills/files/.agents/skills/use-tradingcodex-server/references/capability-profile.md +0 -0
- {tradingcodex-0.2.2 → tradingcodex-0.2.3}/workspace_templates/modules/repo-skills/files/.agents/skills/use-tradingcodex-server/references/connector-templates.md +0 -0
- {tradingcodex-0.2.2 → tradingcodex-0.2.3}/workspace_templates/modules/repo-skills/files/.agents/skills/use-tradingcodex-server/references/troubleshooting.md +0 -0
- {tradingcodex-0.2.2 → tradingcodex-0.2.3}/workspace_templates/modules/repo-skills/files/.agents/skills/use-tradingcodex-server/scripts/summarize_connector_status.py +0 -0
- {tradingcodex-0.2.2 → tradingcodex-0.2.3}/workspace_templates/modules/repo-skills/files/.agents/skills/use-tradingcodex-server/scripts/validate_connector_profile.py +0 -0
- {tradingcodex-0.2.2 → tradingcodex-0.2.3}/workspace_templates/modules/repo-skills/files/.tradingcodex/subagents/skills/execution-operator/execute-paper-order/SKILL.md +0 -0
- {tradingcodex-0.2.2 → tradingcodex-0.2.3}/workspace_templates/modules/repo-skills/files/.tradingcodex/subagents/skills/execution-operator/execute-paper-order/agents/openai.yaml +0 -0
- {tradingcodex-0.2.2 → tradingcodex-0.2.3}/workspace_templates/modules/repo-skills/files/.tradingcodex/subagents/skills/fundamental-analyst/fundamental-analysis/SKILL.md +0 -0
- {tradingcodex-0.2.2 → tradingcodex-0.2.3}/workspace_templates/modules/repo-skills/files/.tradingcodex/subagents/skills/fundamental-analyst/fundamental-analysis/agents/openai.yaml +0 -0
- {tradingcodex-0.2.2 → tradingcodex-0.2.3}/workspace_templates/modules/repo-skills/files/.tradingcodex/subagents/skills/instrument-analyst/instrument-analysis/SKILL.md +0 -0
- {tradingcodex-0.2.2 → tradingcodex-0.2.3}/workspace_templates/modules/repo-skills/files/.tradingcodex/subagents/skills/instrument-analyst/instrument-analysis/agents/openai.yaml +0 -0
- {tradingcodex-0.2.2 → tradingcodex-0.2.3}/workspace_templates/modules/repo-skills/files/.tradingcodex/subagents/skills/macro-analyst/macro-analysis/SKILL.md +0 -0
- {tradingcodex-0.2.2 → tradingcodex-0.2.3}/workspace_templates/modules/repo-skills/files/.tradingcodex/subagents/skills/macro-analyst/macro-analysis/agents/openai.yaml +0 -0
- {tradingcodex-0.2.2 → tradingcodex-0.2.3}/workspace_templates/modules/repo-skills/files/.tradingcodex/subagents/skills/news-analyst/news-analysis/SKILL.md +0 -0
- {tradingcodex-0.2.2 → tradingcodex-0.2.3}/workspace_templates/modules/repo-skills/files/.tradingcodex/subagents/skills/news-analyst/news-analysis/agents/openai.yaml +0 -0
- {tradingcodex-0.2.2 → tradingcodex-0.2.3}/workspace_templates/modules/repo-skills/files/.tradingcodex/subagents/skills/portfolio-manager/create-order-ticket/SKILL.md +0 -0
- {tradingcodex-0.2.2 → tradingcodex-0.2.3}/workspace_templates/modules/repo-skills/files/.tradingcodex/subagents/skills/portfolio-manager/create-order-ticket/agents/openai.yaml +0 -0
- {tradingcodex-0.2.2 → tradingcodex-0.2.3}/workspace_templates/modules/repo-skills/files/.tradingcodex/subagents/skills/portfolio-manager/portfolio-review/SKILL.md +0 -0
- {tradingcodex-0.2.2 → tradingcodex-0.2.3}/workspace_templates/modules/repo-skills/files/.tradingcodex/subagents/skills/portfolio-manager/portfolio-review/agents/openai.yaml +0 -0
- {tradingcodex-0.2.2 → tradingcodex-0.2.3}/workspace_templates/modules/repo-skills/files/.tradingcodex/subagents/skills/risk-manager/approve-order/SKILL.md +0 -0
- {tradingcodex-0.2.2 → tradingcodex-0.2.3}/workspace_templates/modules/repo-skills/files/.tradingcodex/subagents/skills/risk-manager/approve-order/agents/openai.yaml +0 -0
- {tradingcodex-0.2.2 → tradingcodex-0.2.3}/workspace_templates/modules/repo-skills/files/.tradingcodex/subagents/skills/risk-manager/policy-review/SKILL.md +0 -0
- {tradingcodex-0.2.2 → tradingcodex-0.2.3}/workspace_templates/modules/repo-skills/files/.tradingcodex/subagents/skills/risk-manager/policy-review/agents/openai.yaml +0 -0
- {tradingcodex-0.2.2 → tradingcodex-0.2.3}/workspace_templates/modules/repo-skills/files/.tradingcodex/subagents/skills/risk-manager/review-risk/SKILL.md +0 -0
- {tradingcodex-0.2.2 → tradingcodex-0.2.3}/workspace_templates/modules/repo-skills/files/.tradingcodex/subagents/skills/risk-manager/review-risk/agents/openai.yaml +0 -0
- {tradingcodex-0.2.2 → tradingcodex-0.2.3}/workspace_templates/modules/repo-skills/files/.tradingcodex/subagents/skills/shared/collect-evidence/SKILL.md +0 -0
- {tradingcodex-0.2.2 → tradingcodex-0.2.3}/workspace_templates/modules/repo-skills/files/.tradingcodex/subagents/skills/shared/collect-evidence/agents/openai.yaml +0 -0
- {tradingcodex-0.2.2 → tradingcodex-0.2.3}/workspace_templates/modules/repo-skills/files/.tradingcodex/subagents/skills/shared/external-data-source-gate/SKILL.md +0 -0
- {tradingcodex-0.2.2 → tradingcodex-0.2.3}/workspace_templates/modules/repo-skills/files/.tradingcodex/subagents/skills/shared/external-data-source-gate/agents/openai.yaml +0 -0
- {tradingcodex-0.2.2 → tradingcodex-0.2.3}/workspace_templates/modules/repo-skills/files/.tradingcodex/subagents/skills/technical-analyst/technical-analysis/SKILL.md +0 -0
- {tradingcodex-0.2.2 → tradingcodex-0.2.3}/workspace_templates/modules/repo-skills/files/.tradingcodex/subagents/skills/technical-analyst/technical-analysis/agents/openai.yaml +0 -0
- {tradingcodex-0.2.2 → tradingcodex-0.2.3}/workspace_templates/modules/repo-skills/files/.tradingcodex/subagents/skills/valuation-analyst/valuation-review/SKILL.md +0 -0
- {tradingcodex-0.2.2 → tradingcodex-0.2.3}/workspace_templates/modules/repo-skills/files/.tradingcodex/subagents/skills/valuation-analyst/valuation-review/agents/openai.yaml +0 -0
- {tradingcodex-0.2.2 → tradingcodex-0.2.3}/workspace_templates/modules/repo-skills/module.json +0 -0
- {tradingcodex-0.2.2 → tradingcodex-0.2.3}/workspace_templates/modules/stub-execution/files/.tradingcodex/mcp/adapters/stub-execution.py +0 -0
- {tradingcodex-0.2.2 → tradingcodex-0.2.3}/workspace_templates/modules/stub-execution/module.json +0 -0
- {tradingcodex-0.2.2 → tradingcodex-0.2.3}/workspace_templates/modules/tradingcodex-mcp/files/.tradingcodex/mcp/adapters/live-adapter.contract.md +0 -0
- {tradingcodex-0.2.2 → tradingcodex-0.2.3}/workspace_templates/modules/tradingcodex-mcp/files/.tradingcodex/mcp/enforcer/README.md +0 -0
- {tradingcodex-0.2.2 → tradingcodex-0.2.3}/workspace_templates/modules/tradingcodex-mcp/files/.tradingcodex/mcp/gateway/README.md +0 -0
- {tradingcodex-0.2.2 → tradingcodex-0.2.3}/workspace_templates/modules/tradingcodex-mcp/files/.tradingcodex/mcp/server.py +0 -0
- {tradingcodex-0.2.2 → tradingcodex-0.2.3}/workspace_templates/modules/tradingcodex-mcp/files/.tradingcodex/mcp/smoke-call.py +0 -0
- {tradingcodex-0.2.2 → tradingcodex-0.2.3}/workspace_templates/modules/tradingcodex-mcp/module.json +0 -0
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: tradingcodex
|
|
3
|
-
Version: 0.2.
|
|
4
|
-
Summary: Codex-native trading harness with a Django service plane and
|
|
3
|
+
Version: 0.2.3
|
|
4
|
+
Summary: Codex-native trading harness with a Django service plane and approved action boundary.
|
|
5
5
|
Author: TradingCodex Authors
|
|
6
6
|
License-Expression: Apache-2.0
|
|
7
7
|
Keywords: trading,django,codex,mcp,portfolio,research
|
|
@@ -59,8 +59,8 @@ Dynamic: license-file
|
|
|
59
59
|
|
|
60
60
|
TradingCodex is a local-first Python/Django trading harness for rigorous
|
|
61
61
|
Codex-assisted research, portfolio review, order-ticket checks, approvals, and
|
|
62
|
-
experimental
|
|
63
|
-
durable service plane, and TradingCodex
|
|
62
|
+
experimental non-live submission checks. Codex coordinates the work, Django
|
|
63
|
+
owns the durable service plane, and TradingCodex owns the executable boundary.
|
|
64
64
|
|
|
65
65
|
[Quick Start](#installation) | [Docs](docs/README.md) | [Safety](docs/safety-policy-and-execution.md) | [Architecture](docs/system-architecture.md) | [Contributing](CONTRIBUTING.md) | [License](LICENSE)
|
|
66
66
|
|
|
@@ -90,11 +90,11 @@ broker actions. Live broker adapters are not shipped in the initial core.
|
|
|
90
90
|
| Django service plane | Web, Admin, API, CLI, MCP, and generated hooks call shared application services for policy, orders, approvals, portfolio, audit, integrations, and research indexing. |
|
|
91
91
|
| File-native research memory | Research markdown, role reports, source snapshots, versions, readiness labels, and handoff metadata stay readable in workspace files. |
|
|
92
92
|
| Fixed-role workflows | Specialist agents own bounded questions across fundamentals, technicals, news, macro, instruments, valuation, portfolio, risk, and execution. |
|
|
93
|
-
|
|
|
94
|
-
| Local web dashboard | Review agents, skills, strategy skills, research markdown, Broker Center,
|
|
93
|
+
| Approved action boundary | Actions are typed, role-scoped, policy-checked, approval-aware, duplicate-request checked, connection-gated, and audited. |
|
|
94
|
+
| Local web dashboard | Review agents, skills, strategy skills, research markdown, Broker Center, Data Sources, order tickets, portfolio state, and activity at `127.0.0.1:48267`. |
|
|
95
95
|
| Broker Center foundations | Register connector profiles, inspect capability profiles, run read-only paper sync, review instrument constraints, and reconcile portfolio state. |
|
|
96
96
|
| OrderTicket lifecycle | Draft, check, approve, submit, cancel, refresh, and inspect order tickets through central DB records and service-layer state transitions. |
|
|
97
|
-
|
|
|
97
|
+
| Data Sources gate | Import external source discovery metadata, review available actions, scope role access, and block unsafe raw execution or secret paths by default. |
|
|
98
98
|
| Improvement loop | Quality gates, postmortems, optional skills, strategy skills, strict artifact checks, and generated workspace smoke tests turn process gaps into durable improvements. |
|
|
99
99
|
|
|
100
100
|
---
|
|
@@ -167,9 +167,10 @@ boundaries rather than on black-box automation.
|
|
|
167
167
|
- Strong role model: one `head-manager` coordinates nine fixed specialist
|
|
168
168
|
subagents and consumes accepted artifacts instead of silently redoing roles.
|
|
169
169
|
- Deterministic executable boundary: every executable path follows
|
|
170
|
-
|
|
171
|
-
|
|
172
|
-
|
|
170
|
+
a fixed requester, permission, policy, payload, approval, duplicate-request,
|
|
171
|
+
connection, and audit sequence.
|
|
172
|
+
- Safety-first broker posture: live broker execution is excluded; paper and
|
|
173
|
+
reviewed test/sandbox validation remain experimental local harness flows.
|
|
173
174
|
|
|
174
175
|
---
|
|
175
176
|
|
|
@@ -179,8 +180,8 @@ TradingCodex is designed around handoffs:
|
|
|
179
180
|
|
|
180
181
|
```text
|
|
181
182
|
evidence -> analysis -> valuation -> portfolio fit -> risk review
|
|
182
|
-
-> draft order -> approval receipt ->
|
|
183
|
-
->
|
|
183
|
+
-> draft order -> approval receipt -> approved non-live submission
|
|
184
|
+
-> connection result -> audit/postmortem
|
|
184
185
|
```
|
|
185
186
|
|
|
186
187
|
The `head-manager` maps the request, dispatches the selected role team, waits
|
|
@@ -203,7 +204,7 @@ workflow has earned. Weak, stale, missing, or out-of-scope upstream work returns
|
|
|
203
204
|
| Decision review | `valuation-analyst` | Valuation ranges, scenario assumptions, multiples, sensitivity, and decision-quality gaps. |
|
|
204
205
|
| Portfolio | `portfolio-manager` | Portfolio fit, sizing, concentration, liquidity, opportunity cost, and draft order-ticket readiness. |
|
|
205
206
|
| Risk | `risk-manager` | Downside, restricted-list checks, policy readiness, approval readiness, and approval receipts. |
|
|
206
|
-
| Execution | `execution-operator` | Approved
|
|
207
|
+
| Execution | `execution-operator` | Approved non-live submission through the TradingCodex service boundary only. |
|
|
207
208
|
|
|
208
209
|
---
|
|
209
210
|
|
|
@@ -211,7 +212,7 @@ workflow has earned. Weak, stale, missing, or out-of-scope upstream work returns
|
|
|
211
212
|
|
|
212
213
|
| Surface | Role |
|
|
213
214
|
| --- | --- |
|
|
214
|
-
| Product web | Agents-first review dashboard for roles, skills, research markdown, Broker Center,
|
|
215
|
+
| Product web | Agents-first review dashboard for roles, skills, research markdown, Broker Center, Data Sources, order tickets, portfolio state, and activity. |
|
|
215
216
|
| Django Admin | Local/staff DB inspection for policy, orders, portfolio, MCP registry, workflows, integrations, and audit rows. |
|
|
216
217
|
| Django Ninja API | Typed local/staff REST and control endpoints that call service-layer use cases. |
|
|
217
218
|
| MCP | Agent/tool boundary with typed tools, role scopes, policy checks, approval checks, and audit. |
|
|
@@ -228,7 +229,7 @@ core package.
|
|
|
228
229
|
TradingCodex blocks or constrains:
|
|
229
230
|
|
|
230
231
|
- direct live broker requests
|
|
231
|
-
- raw broker API calls and raw external
|
|
232
|
+
- raw broker API calls and raw external source execution proxies
|
|
232
233
|
- self-issued approvals
|
|
233
234
|
- restricted-symbol orders
|
|
234
235
|
- expired or payload-mismatched approval receipts
|
|
@@ -249,7 +250,7 @@ provide investment recommendations or guarantee returns.
|
|
|
249
250
|
| Status | Milestone |
|
|
250
251
|
| --- | --- |
|
|
251
252
|
| Shipped | Generated Codex workspace, fixed role roster, project MCP config, Django service plane, local web dashboard, Admin, Ninja API, file-native research memory, component registry, policy/audit primitives. |
|
|
252
|
-
| Current `0.2.x` | Central-DB `OrderTicket` rewrite, Broker Center foundations,
|
|
253
|
+
| Current `0.2.x` | Central-DB `OrderTicket` rewrite, Broker Center foundations, Data Sources gate, role-scoped actions, non-live execution lifecycle, and Python `>=3.11,<3.15` support. |
|
|
253
254
|
| Next | Deeper validation scenarios, richer connector capability profiles, stronger generated-workspace smoke coverage, and improved artifact quality tooling. |
|
|
254
255
|
| Future | Separately governed verified adapters, hosted/managed services, enterprise policy/compliance packs, and live broker support only after explicit product, policy, adapter, and validation work. |
|
|
255
256
|
|
|
@@ -263,7 +264,7 @@ provide investment recommendations or guarantee returns.
|
|
|
263
264
|
| [Docs index](docs/README.md) | Source-of-truth reading order and document ownership. |
|
|
264
265
|
| [Product direction](docs/product-direction.md) | Product thesis, target user posture, goals, non-goals, runtime defaults, and scope. |
|
|
265
266
|
| [Core concepts and rules](docs/core-concepts-and-rules.md) | Fast operating reference for planes, guardrails, roles, execution lifecycle, and research memory. |
|
|
266
|
-
| [
|
|
267
|
+
| [Workspace orchestration model](docs/harness.md) | Top-level workflow model, components, guardrails, improvement, and naming rules. |
|
|
267
268
|
| [Roles, skills, and workflows](docs/roles-skills-and-workflows.md) | Fixed role roster, no-overlap handoffs, dispatch gates, skills, and strategy behavior. |
|
|
268
269
|
| [Safety policy and execution](docs/safety-policy-and-execution.md) | Permissions, approvals, idempotency, broker safety, secret wall, and required blocks. |
|
|
269
270
|
| [System architecture](docs/system-architecture.md) | Runtime planes, Django app boundaries, central DB ownership, models, and service use cases. |
|
|
@@ -278,7 +279,7 @@ Contributions use Apache-2.0 with DCO sign-off. See
|
|
|
278
279
|
[CONTRIBUTING.md](CONTRIBUTING.md).
|
|
279
280
|
|
|
280
281
|
For source changes, start with the focused validation command for the touched
|
|
281
|
-
|
|
282
|
+
area, then broaden as needed:
|
|
282
283
|
|
|
283
284
|
```bash
|
|
284
285
|
python -m pytest
|
|
@@ -28,8 +28,8 @@
|
|
|
28
28
|
|
|
29
29
|
TradingCodex is a local-first Python/Django trading harness for rigorous
|
|
30
30
|
Codex-assisted research, portfolio review, order-ticket checks, approvals, and
|
|
31
|
-
experimental
|
|
32
|
-
durable service plane, and TradingCodex
|
|
31
|
+
experimental non-live submission checks. Codex coordinates the work, Django
|
|
32
|
+
owns the durable service plane, and TradingCodex owns the executable boundary.
|
|
33
33
|
|
|
34
34
|
[Quick Start](#installation) | [Docs](docs/README.md) | [Safety](docs/safety-policy-and-execution.md) | [Architecture](docs/system-architecture.md) | [Contributing](CONTRIBUTING.md) | [License](LICENSE)
|
|
35
35
|
|
|
@@ -59,11 +59,11 @@ broker actions. Live broker adapters are not shipped in the initial core.
|
|
|
59
59
|
| Django service plane | Web, Admin, API, CLI, MCP, and generated hooks call shared application services for policy, orders, approvals, portfolio, audit, integrations, and research indexing. |
|
|
60
60
|
| File-native research memory | Research markdown, role reports, source snapshots, versions, readiness labels, and handoff metadata stay readable in workspace files. |
|
|
61
61
|
| Fixed-role workflows | Specialist agents own bounded questions across fundamentals, technicals, news, macro, instruments, valuation, portfolio, risk, and execution. |
|
|
62
|
-
|
|
|
63
|
-
| Local web dashboard | Review agents, skills, strategy skills, research markdown, Broker Center,
|
|
62
|
+
| Approved action boundary | Actions are typed, role-scoped, policy-checked, approval-aware, duplicate-request checked, connection-gated, and audited. |
|
|
63
|
+
| Local web dashboard | Review agents, skills, strategy skills, research markdown, Broker Center, Data Sources, order tickets, portfolio state, and activity at `127.0.0.1:48267`. |
|
|
64
64
|
| Broker Center foundations | Register connector profiles, inspect capability profiles, run read-only paper sync, review instrument constraints, and reconcile portfolio state. |
|
|
65
65
|
| OrderTicket lifecycle | Draft, check, approve, submit, cancel, refresh, and inspect order tickets through central DB records and service-layer state transitions. |
|
|
66
|
-
|
|
|
66
|
+
| Data Sources gate | Import external source discovery metadata, review available actions, scope role access, and block unsafe raw execution or secret paths by default. |
|
|
67
67
|
| Improvement loop | Quality gates, postmortems, optional skills, strategy skills, strict artifact checks, and generated workspace smoke tests turn process gaps into durable improvements. |
|
|
68
68
|
|
|
69
69
|
---
|
|
@@ -136,9 +136,10 @@ boundaries rather than on black-box automation.
|
|
|
136
136
|
- Strong role model: one `head-manager` coordinates nine fixed specialist
|
|
137
137
|
subagents and consumes accepted artifacts instead of silently redoing roles.
|
|
138
138
|
- Deterministic executable boundary: every executable path follows
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
|
|
139
|
+
a fixed requester, permission, policy, payload, approval, duplicate-request,
|
|
140
|
+
connection, and audit sequence.
|
|
141
|
+
- Safety-first broker posture: live broker execution is excluded; paper and
|
|
142
|
+
reviewed test/sandbox validation remain experimental local harness flows.
|
|
142
143
|
|
|
143
144
|
---
|
|
144
145
|
|
|
@@ -148,8 +149,8 @@ TradingCodex is designed around handoffs:
|
|
|
148
149
|
|
|
149
150
|
```text
|
|
150
151
|
evidence -> analysis -> valuation -> portfolio fit -> risk review
|
|
151
|
-
-> draft order -> approval receipt ->
|
|
152
|
-
->
|
|
152
|
+
-> draft order -> approval receipt -> approved non-live submission
|
|
153
|
+
-> connection result -> audit/postmortem
|
|
153
154
|
```
|
|
154
155
|
|
|
155
156
|
The `head-manager` maps the request, dispatches the selected role team, waits
|
|
@@ -172,7 +173,7 @@ workflow has earned. Weak, stale, missing, or out-of-scope upstream work returns
|
|
|
172
173
|
| Decision review | `valuation-analyst` | Valuation ranges, scenario assumptions, multiples, sensitivity, and decision-quality gaps. |
|
|
173
174
|
| Portfolio | `portfolio-manager` | Portfolio fit, sizing, concentration, liquidity, opportunity cost, and draft order-ticket readiness. |
|
|
174
175
|
| Risk | `risk-manager` | Downside, restricted-list checks, policy readiness, approval readiness, and approval receipts. |
|
|
175
|
-
| Execution | `execution-operator` | Approved
|
|
176
|
+
| Execution | `execution-operator` | Approved non-live submission through the TradingCodex service boundary only. |
|
|
176
177
|
|
|
177
178
|
---
|
|
178
179
|
|
|
@@ -180,7 +181,7 @@ workflow has earned. Weak, stale, missing, or out-of-scope upstream work returns
|
|
|
180
181
|
|
|
181
182
|
| Surface | Role |
|
|
182
183
|
| --- | --- |
|
|
183
|
-
| Product web | Agents-first review dashboard for roles, skills, research markdown, Broker Center,
|
|
184
|
+
| Product web | Agents-first review dashboard for roles, skills, research markdown, Broker Center, Data Sources, order tickets, portfolio state, and activity. |
|
|
184
185
|
| Django Admin | Local/staff DB inspection for policy, orders, portfolio, MCP registry, workflows, integrations, and audit rows. |
|
|
185
186
|
| Django Ninja API | Typed local/staff REST and control endpoints that call service-layer use cases. |
|
|
186
187
|
| MCP | Agent/tool boundary with typed tools, role scopes, policy checks, approval checks, and audit. |
|
|
@@ -197,7 +198,7 @@ core package.
|
|
|
197
198
|
TradingCodex blocks or constrains:
|
|
198
199
|
|
|
199
200
|
- direct live broker requests
|
|
200
|
-
- raw broker API calls and raw external
|
|
201
|
+
- raw broker API calls and raw external source execution proxies
|
|
201
202
|
- self-issued approvals
|
|
202
203
|
- restricted-symbol orders
|
|
203
204
|
- expired or payload-mismatched approval receipts
|
|
@@ -218,7 +219,7 @@ provide investment recommendations or guarantee returns.
|
|
|
218
219
|
| Status | Milestone |
|
|
219
220
|
| --- | --- |
|
|
220
221
|
| Shipped | Generated Codex workspace, fixed role roster, project MCP config, Django service plane, local web dashboard, Admin, Ninja API, file-native research memory, component registry, policy/audit primitives. |
|
|
221
|
-
| Current `0.2.x` | Central-DB `OrderTicket` rewrite, Broker Center foundations,
|
|
222
|
+
| Current `0.2.x` | Central-DB `OrderTicket` rewrite, Broker Center foundations, Data Sources gate, role-scoped actions, non-live execution lifecycle, and Python `>=3.11,<3.15` support. |
|
|
222
223
|
| Next | Deeper validation scenarios, richer connector capability profiles, stronger generated-workspace smoke coverage, and improved artifact quality tooling. |
|
|
223
224
|
| Future | Separately governed verified adapters, hosted/managed services, enterprise policy/compliance packs, and live broker support only after explicit product, policy, adapter, and validation work. |
|
|
224
225
|
|
|
@@ -232,7 +233,7 @@ provide investment recommendations or guarantee returns.
|
|
|
232
233
|
| [Docs index](docs/README.md) | Source-of-truth reading order and document ownership. |
|
|
233
234
|
| [Product direction](docs/product-direction.md) | Product thesis, target user posture, goals, non-goals, runtime defaults, and scope. |
|
|
234
235
|
| [Core concepts and rules](docs/core-concepts-and-rules.md) | Fast operating reference for planes, guardrails, roles, execution lifecycle, and research memory. |
|
|
235
|
-
| [
|
|
236
|
+
| [Workspace orchestration model](docs/harness.md) | Top-level workflow model, components, guardrails, improvement, and naming rules. |
|
|
236
237
|
| [Roles, skills, and workflows](docs/roles-skills-and-workflows.md) | Fixed role roster, no-overlap handoffs, dispatch gates, skills, and strategy behavior. |
|
|
237
238
|
| [Safety policy and execution](docs/safety-policy-and-execution.md) | Permissions, approvals, idempotency, broker safety, secret wall, and required blocks. |
|
|
238
239
|
| [System architecture](docs/system-architecture.md) | Runtime planes, Django app boundaries, central DB ownership, models, and service use cases. |
|
|
@@ -247,7 +248,7 @@ Contributions use Apache-2.0 with DCO sign-off. See
|
|
|
247
248
|
[CONTRIBUTING.md](CONTRIBUTING.md).
|
|
248
249
|
|
|
249
250
|
For source changes, start with the focused validation command for the touched
|
|
250
|
-
|
|
251
|
+
area, then broaden as needed:
|
|
251
252
|
|
|
252
253
|
```bash
|
|
253
254
|
python -m pytest
|
|
@@ -24,6 +24,7 @@ reference, then follow the topic-specific files for implementation-level rules.
|
|
|
24
24
|
| [guardrails.md](./guardrails.md) | Guardrails taxonomy: guidance, enforcement, and information barriers | Guardrail classes, enforcement boundaries, information barriers, or safety taxonomy changes |
|
|
25
25
|
| [improvement-loop.md](./improvement-loop.md) | Improvement taxonomy: workflow quality, research memory, file-native skill proposals, postmortems, validation feedback | Quality gates, learning loops, postmortems, skill proposal/projection, or validation feedback behavior changes |
|
|
26
26
|
| [product-direction.md](./product-direction.md) | Product definition, target users, goals, non-goals, scope posture, current defaults | Product direction, release scope, default runtime, product language, or live-execution posture changes |
|
|
27
|
+
| [financial-workflow-references.md](./financial-workflow-references.md) | Research-backed finance workflow and non-expert UX principles for workflow handoffs and role outputs | User-facing workflow intake, suitability/profile context, plain-English output, or professional finance method framing changes |
|
|
27
28
|
| [system-architecture.md](./system-architecture.md) | Django modular monolith, central DB, app boundaries, service layer, core models, runtime planes | Django apps, DB ownership, service-layer use cases, model ownership, or runtime topology changes |
|
|
28
29
|
| [interfaces-and-surfaces.md](./interfaces-and-surfaces.md) | Product web, Django Admin, Django Ninja API, MCP endpoint, CLI, generated `./tcx` wrapper | User/admin/API/MCP/CLI surface changes, route changes, or callable tool changes |
|
|
29
30
|
| [safety-policy-and-execution.md](./safety-policy-and-execution.md) | Guardrail taxonomy, policy checks, approvals, idempotency, execution lifecycle, blocked actions | Policy, permissions, approvals, adapters, execution, restricted list, secret handling, or risk gates change |
|
|
@@ -43,7 +44,7 @@ reference, then follow the topic-specific files for implementation-level rules.
|
|
|
43
44
|
| Gateway docs remain stable | `core-concepts-and-rules.md` stays as the stable entrypoint even when details move into topic files. |
|
|
44
45
|
| Implementation verifies docs | Implementation does not replace the docs. If implementation reveals a durable rule, document it. |
|
|
45
46
|
| Product language is English | TradingCodex product copy, generated workspace guidance, Admin UI, CLI help, and durable docs are written in English. |
|
|
46
|
-
| Product web is review-first | The `/` web app
|
|
47
|
+
| Product web is review-first | The `/` web app opens on the workflow planner and can preview handoffs, but does not spawn agents, approve orders, or execute orders. |
|
|
47
48
|
| Open-core boundary is explicit | Apache-2.0 covers the repository open core; trademarks and official commercial offerings remain separately governed. |
|
|
48
49
|
|
|
49
50
|
## Change Checklist
|
|
@@ -52,6 +53,7 @@ reference, then follow the topic-specific files for implementation-level rules.
|
|
|
52
53
|
| --- | --- |
|
|
53
54
|
| Top-level harness model, component registry, guardrail/improvement taxonomy, or cross-cutting concept language | `harness.md`, `components.md`, `guardrails.md`, `improvement-loop.md`, `core-concepts-and-rules.md` |
|
|
54
55
|
| Product scope, non-goals, or default runtime | `product-direction.md`, `harness.md` |
|
|
56
|
+
| Financial workflow intake, non-expert UX, suitability/profile context, or plain-English finance output | `financial-workflow-references.md`, `interfaces-and-surfaces.md`, `roles-skills-and-workflows.md` |
|
|
55
57
|
| Django apps, models, service-layer contracts, or DB ownership | `system-architecture.md` |
|
|
56
58
|
| Product web, Admin, REST, MCP, CLI, or wrapper behavior | `interfaces-and-surfaces.md` |
|
|
57
59
|
| Guardrails, policy, permission, approval, execution, adapter, or secret boundary | `guardrails.md`, `safety-policy-and-execution.md`, `core-concepts-and-rules.md` |
|
|
@@ -43,16 +43,16 @@ paths clear.
|
|
|
43
43
|
| `context-efficiency-contract` | Keeps workflows bounded through compact briefs, artifact references, context summaries, source snapshot IDs, targeted full-artifact reads, and `subagents context-audit` validation. | `guardrail.guidance`, `guardrail.information_barrier`, `improvement.workflow_quality`, `improvement.context_efficiency` |
|
|
44
44
|
| `responsibility-boundary-contract` | Separates durable role identity, tool permissions, skill procedures, artifact contracts, and projection ownership so changes stay local. | `guardrail.guidance`, `guardrail.information_barrier`, `improvement.workflow_quality`, `improvement.skill_evolution` |
|
|
45
45
|
| `external-data-source-gate` | Keeps external evidence read-only and source-aware. | `guardrail.guidance`, `improvement.workflow_quality` |
|
|
46
|
-
| `external-mcp-proxy-gate` | Registers external MCP connections, imports metadata, classifies risk, manages lifecycle/review state, and blocks unsafe direct
|
|
46
|
+
| `external-mcp-proxy-gate` | Registers external MCP connections, imports metadata, classifies risk, manages lifecycle/review state, and blocks unsafe direct connection paths. | `guardrail.enforcement`, `guardrail.information_barrier` |
|
|
47
47
|
| `broker-center` | Normalizes native broker connector profiles, read-only account discovery, sync runs, instrument constraints, and order-translation previews. | `guardrail.enforcement`, `improvement.workflow_quality` |
|
|
48
48
|
| `secret-wall` | Blocks raw broker secrets from workspace files, prompts, shell paths, and role context. | `guardrail.enforcement`, `guardrail.information_barrier` |
|
|
49
49
|
| `policy-and-restricted-list` | Evaluates principals, capabilities, explicit deny rules, restricted symbols, and limits. | `guardrail.enforcement` |
|
|
50
50
|
| `approval-gate` | Validates order tickets, JSON order inputs, and approval receipts before execution-sensitive action. | `guardrail.enforcement` |
|
|
51
|
-
| `execution-boundary` | Keeps execution behind
|
|
51
|
+
| `execution-boundary` | Keeps execution behind role action allowlists, approval, duplicate-request, connection, and audit checks. | `guardrail.enforcement`, `guardrail.information_barrier` |
|
|
52
52
|
| `audit-ledger` | Records policy, MCP, order, approval, execution, and hook events. | `guardrail.enforcement`, `improvement.validation_feedback` |
|
|
53
53
|
| `skill-improvement-loop` | Keeps core skills, strategy skills, and role-local optional skill files visible through validation, generated manifests, and read-only status. | `improvement.skill_evolution`, `guardrail.guidance` |
|
|
54
54
|
| `postmortem-loop` | Turns rejected orders, process failures, thesis changes, and executions into improvements. | `improvement.postmortems`, `improvement.validation_feedback` |
|
|
55
|
-
| `paper-execution` | Provides experimental local paper and
|
|
55
|
+
| `paper-execution` | Provides experimental local paper and validation-only execution paths behind the approved action boundary. | `guardrail.enforcement` |
|
|
56
56
|
|
|
57
57
|
## Runtime Surfaces
|
|
58
58
|
|
|
@@ -7,9 +7,9 @@ the detailed source documents rather than repeating every rule. Use
|
|
|
7
7
|
## One-Line Product Definition
|
|
8
8
|
|
|
9
9
|
TradingCodex is a Python/Django-native trading harness that lets an investor
|
|
10
|
-
use Codex for research, decision support, approvals, and
|
|
11
|
-
while ensuring every executable action crosses
|
|
12
|
-
|
|
10
|
+
use Codex for research, decision support, approvals, and non-live validation
|
|
11
|
+
while ensuring every executable action crosses deterministic Django service
|
|
12
|
+
checks.
|
|
13
13
|
|
|
14
14
|
## Core Principles
|
|
15
15
|
|
|
@@ -19,8 +19,8 @@ layer and TradingCodex MCP enforcement boundary.
|
|
|
19
19
|
| Django service layer is canonical | Product web, Admin, REST, MCP, and CLI call the same application services. | Do not duplicate policy, order, approval, execution, research indexing, or audit logic per interface. |
|
|
20
20
|
| Central DB is the runtime ledger | Execution-sensitive mutable state lives in the user-level central Django DB. | Do not use workspace paths as portfolio/order/account ledgers. |
|
|
21
21
|
| Workspace files are Codex-native SOT | Agent config, skill bundles, and research handoff markdown live in workspace files. | Codex-visible state must be projected to files rather than hidden only in DB rows. |
|
|
22
|
-
|
|
|
23
|
-
| Enforcement is deterministic | Blocking decisions are reproducible code/policy decisions. | Final order paths revalidate policy,
|
|
22
|
+
| Service gates own executable actions | Executable action boundaries belong to TradingCodex service-layer and MCP paths. | Raw API keys must not appear in workspace files, shell output, prompts, API responses, MCP responses, or audit output. |
|
|
23
|
+
| Enforcement is deterministic | Blocking decisions are reproducible code/policy decisions. | Final order paths revalidate policy, payload shape, approval, duplicate-request status, connection, and audit. |
|
|
24
24
|
| Capability is an allowlist | Permission is explicit and narrow. | Allowing one action does not imply policy write, secret read, or cash movement. |
|
|
25
25
|
| Information barriers control knowledge flow | Roles receive only the information they need. | Maintain research, execution, policy, and secret walls. |
|
|
26
26
|
| Improvement loops raise work quality | The harness should improve investment work, not only block bad actions. | Manage skills, schemas, workflows, checklists, validation feedback, and postmortems together. |
|
|
@@ -91,7 +91,7 @@ subagents. Detailed responsibilities live in
|
|
|
91
91
|
| analyst roles | research, evidence, valuation, market/instrument context | order approval, execution, secret read |
|
|
92
92
|
| `portfolio-manager` | portfolio fit and draft order ticket | self-approval, execution, arbitrary policy change |
|
|
93
93
|
| `risk-manager` | risk review, policy review, approval receipt | order drafting, execution, arbitrary policy change |
|
|
94
|
-
| `execution-operator` | submit approved orders through TradingCodex
|
|
94
|
+
| `execution-operator` | submit approved non-live orders through the TradingCodex service boundary | raw broker API, secret read, policy change |
|
|
95
95
|
|
|
96
96
|
Handoff states are `accepted`, `revise`, `blocked`, or `waiting`. Only accepted
|
|
97
97
|
artifacts move downstream. `head-manager` may synthesize accepted outputs and
|
|
@@ -104,17 +104,18 @@ Detailed execution rules live in
|
|
|
104
104
|
|
|
105
105
|
```text
|
|
106
106
|
evidence -> analysis -> portfolio fit -> draft order -> risk review
|
|
107
|
-
-> approval receipt ->
|
|
107
|
+
-> approval receipt -> approved submit action -> connection -> audit/postmortem
|
|
108
108
|
```
|
|
109
109
|
|
|
110
110
|
Every executable use case follows:
|
|
111
111
|
|
|
112
112
|
```text
|
|
113
|
-
|
|
113
|
+
requester -> permission -> policy -> payload validation -> approval/duplicate-request check -> connection -> audit
|
|
114
114
|
```
|
|
115
115
|
|
|
116
|
-
Paper
|
|
117
|
-
adapters remain disabled and unimplemented in the initial
|
|
116
|
+
Paper and validation-only execution paths remain experimental local harness
|
|
117
|
+
behavior. Live broker adapters remain disabled and unimplemented in the initial
|
|
118
|
+
core.
|
|
118
119
|
|
|
119
120
|
## Research Memory Snapshot
|
|
120
121
|
|
|
@@ -133,7 +134,7 @@ Detailed research rules live in
|
|
|
133
134
|
|
|
134
135
|
| Rule | Application |
|
|
135
136
|
| --- | --- |
|
|
136
|
-
| Durable rule change requires docs update | Product direction, safety rules, role responsibilities,
|
|
137
|
+
| Durable rule change requires docs update | Product direction, safety rules, role responsibilities, approved action boundary, artifact contracts, and generated behavior require docs updates. |
|
|
137
138
|
| Docs are source of truth | Gateway and topic documents record intent above implementation. If implementation differs, decide explicitly which side changes. |
|
|
138
139
|
| Avoid hidden policy drift | Do not hide durable rules only in templates, tests, MCP, hooks, prompts, or skills. |
|
|
139
140
|
| Keep product language English | Do not add non-English durable copy to docs, generated workspace guidance, Admin UI, CLI help, role prompts, or examples. |
|
|
@@ -19,10 +19,10 @@ application-service surfaces are the supported contract.
|
|
|
19
19
|
Execution status for this release line:
|
|
20
20
|
|
|
21
21
|
- live broker execution is excluded
|
|
22
|
-
- paper
|
|
23
|
-
-
|
|
24
|
-
- execution MCP tools must stay behind policy, approval,
|
|
25
|
-
and audit checks
|
|
22
|
+
- paper and validation-only execution code remains in the package for local harness tests
|
|
23
|
+
- non-live execution is experimental and not production trading
|
|
24
|
+
- execution MCP tools must stay behind policy, approval, duplicate-request,
|
|
25
|
+
connection, and audit checks
|
|
26
26
|
|
|
27
27
|
## Maintainer Prerequisites
|
|
28
28
|
|
|
@@ -140,7 +140,7 @@ python3.11 -m venv /tmp/tcx-testpypi
|
|
|
140
140
|
/tmp/tcx-testpypi/bin/pip install \
|
|
141
141
|
--index-url https://test.pypi.org/simple/ \
|
|
142
142
|
--extra-index-url https://pypi.org/simple/ \
|
|
143
|
-
tradingcodex==0.2.
|
|
143
|
+
tradingcodex==0.2.3
|
|
144
144
|
rm -rf /tmp/tcx-testpypi-smoke
|
|
145
145
|
mkdir -p /tmp/tcx-testpypi-smoke
|
|
146
146
|
cd /tmp/tcx-testpypi-smoke
|
|
@@ -169,7 +169,7 @@ After the PyPI workflow completes:
|
|
|
169
169
|
|
|
170
170
|
```bash
|
|
171
171
|
python3.11 -m venv /tmp/tcx-pypi
|
|
172
|
-
/tmp/tcx-pypi/bin/pip install tradingcodex==0.2.
|
|
172
|
+
/tmp/tcx-pypi/bin/pip install tradingcodex==0.2.3
|
|
173
173
|
rm -rf /tmp/tcx-pypi-smoke
|
|
174
174
|
mkdir -p /tmp/tcx-pypi-smoke
|
|
175
175
|
cd /tmp/tcx-pypi-smoke
|
|
@@ -223,7 +223,9 @@ Use PEP 440 versions:
|
|
|
223
223
|
migration, generated workspace smoke checks, and release e2e checks are stable
|
|
224
224
|
- `0.2.1` for Python `>=3.11,<3.15` support and clone-free setup guidance
|
|
225
225
|
- `0.2.2` for dashboard startup behavior fixes after `0.2.1`
|
|
226
|
-
-
|
|
226
|
+
- `0.2.3` for workflow-planner UX, fixed strategy authoring, profile-scoped
|
|
227
|
+
ticket isolation, workspace-scoped transition audit, and startup/status fixes
|
|
228
|
+
- later patch releases for compatible fixes after `0.2.3`
|
|
227
229
|
- pre-releases such as `0.3.0a1`, `0.3.0b1`, or `0.3.0rc1` when preparing
|
|
228
230
|
the next minor contract
|
|
229
231
|
|
|
@@ -241,5 +243,5 @@ This PyPI release does not deploy:
|
|
|
241
243
|
- official commercial/verified adapter packs
|
|
242
244
|
|
|
243
245
|
Those surfaces require separate product decisions, separate documentation, and
|
|
244
|
-
the same service-layer policy, approval,
|
|
246
|
+
the same service-layer policy, approval, duplicate-request, connection, and audit
|
|
245
247
|
boundary.
|
|
@@ -0,0 +1,152 @@
|
|
|
1
|
+
# Financial Workflow References
|
|
2
|
+
|
|
3
|
+
TradingCodex should stay Codex-native while making expert financial workflow
|
|
4
|
+
steps legible to non-expert users. Product surfaces should translate a plain
|
|
5
|
+
request into a role workflow, show what is still blocked, and ask for missing
|
|
6
|
+
investor context before recommendation, sizing, approval, or execution.
|
|
7
|
+
This is the product's safe intuition-led workflow: a user can start with a
|
|
8
|
+
rough market intuition, but TradingCodex turns it into evidence gathering,
|
|
9
|
+
profile questions, role handoffs, and explicit next allowed actions instead of
|
|
10
|
+
jumping straight to a trade.
|
|
11
|
+
Short ticker-first intuition such as "TSLA feels interesting" or
|
|
12
|
+
"AAPL seems cheap" should therefore route to a research-first workflow unless
|
|
13
|
+
the user explicitly asks for valuation, portfolio fit, recommendation, order
|
|
14
|
+
drafting, approval, or execution.
|
|
15
|
+
|
|
16
|
+
## Workflow Principles
|
|
17
|
+
|
|
18
|
+
| Principle | Product implication | Reference |
|
|
19
|
+
| --- | --- | --- |
|
|
20
|
+
| Portfolio risk comes before single-security action | Portfolio and risk lanes ask for objective, horizon, risk tolerance, liquidity needs, holdings, and constraints before recommendation, sizing, approval, or execution. | FINRA Rule 2111 customer investment profile and suitability guidance |
|
|
21
|
+
| Retail recommendations require investor-profile context | Decision-support workflows should expose missing profile fields rather than producing blanket recommendations. | SEC Regulation Best Interest staff bulletin on care obligations |
|
|
22
|
+
| Asset allocation, diversification, and rebalancing are the baseline risk frame | Research and portfolio outputs should separate single-name evidence from portfolio exposure, concentration, and rebalancing context. | SEC Investor.gov asset allocation/diversification/rebalancing guidance |
|
|
23
|
+
| Mean-variance and factor thinking are analytical tools, not automatic advice | Valuation and portfolio roles can use expected return, variance, covariance, and factor exposure concepts, but must expose assumptions and uncertainty. | Markowitz (1952); Fama and French (1993) |
|
|
24
|
+
| Strategic allocation depends on horizon and risk tolerance | Long-horizon workflows should treat time horizon and loss capacity as required context, not afterthoughts. | Campbell and Viceira (2002) |
|
|
25
|
+
| Investment policy is objectives plus constraints | Portfolio workflows should frame recommendations against return/risk objectives, liquidity, time horizon, tax, legal/regulatory, and unique constraints. | CFA Institute investment policy statement guidance |
|
|
26
|
+
| Planning is a process, not a one-shot answer | Beginner-facing UX should show workflow stage, next evidence needed, and blocked actions before presenting outputs as advice. | CFP Board financial planning process |
|
|
27
|
+
| Each workflow should make later workflows easier | Role artifacts should preserve reusable context summaries, reader summaries, source snapshots, missing-evidence notes, and improvement proposals instead of making future agents rediscover the same gaps. | Every compound engineering guide; Will Larson commentary |
|
|
28
|
+
| Agentic work should be a bounded loop, not open-ended autonomy | TradingCodex workflows may repeat evidence gathering, artifact verification, synthesis, and memory capture, but every lane must expose stop conditions and blocked actions. | Recent loop-engineering practice across Codex, Claude Code, OpenClaw, and memory-layer frameworks |
|
|
29
|
+
| Loop reliability depends on the verifier | Every workflow lane should name what gets checked after each pass: artifact quality, source freshness, profile gaps, and blocked actions. Failed checks return `revise`, `blocked`, or `waiting` rather than widening the lane. | Addy Osmani loop-engineering framing; recent verifier/budget loop guidance |
|
|
30
|
+
| Financial agent teams need explicit opposition | Decision-support synthesis should test the favorable case against a bearish or skeptical case, stale data, missing profile context, policy conflicts, and selected-strategy conflicts before naming a decision state. | TradingAgents bull/bear researcher debate; risk management team |
|
|
31
|
+
| AI-assisted finance must stay auditable and bounded | Agent workflows should keep role boundaries, source/as-of posture, handoff states, policy gates, duplicate-request controls, and audit evidence visible. | NIST AI Risk Management Framework |
|
|
32
|
+
| AI/ML in capital markets needs governance, testing, monitoring, data quality, and explainability | Agentic workflow features should keep dispatch, role outputs, source quality, and audit trails inspectable. | IOSCO AI/ML guidance for market intermediaries and asset managers |
|
|
33
|
+
| Plain English increases investor comprehension without deleting complexity | User-facing web output should show plain-language workflow summaries first, with professional evidence and caveats behind them. | SEC Plain English Handbook |
|
|
34
|
+
|
|
35
|
+
## Source Map
|
|
36
|
+
|
|
37
|
+
| Source | TradingCodex design rule |
|
|
38
|
+
| --- | --- |
|
|
39
|
+
| [FINRA Rule 2111](https://www.finra.org/rules-guidance/rulebooks/finra-rules/2111) | Investor-profile fields are first-class workflow inputs: objective, other investments, tax/account constraints, horizon, liquidity, and risk tolerance. |
|
|
40
|
+
| [SEC Reg BI care-obligation staff bulletin](https://www.sec.gov/about/divisions-offices/division-trading-markets/broker-dealers/staff-bulletin-standards-conduct-broker-dealers-investment-advisers-care-obligations) | Decision-support lanes must expose missing retail-investor context before recommendation, sizing, or order work. |
|
|
41
|
+
| [SEC Investor.gov asset allocation guidance](https://www.investor.gov/introduction-investing/getting-started/asset-allocation) | Single-name research should stay separate from portfolio allocation, diversification, and rebalancing checks. |
|
|
42
|
+
| [Markowitz, "Portfolio Selection" (1952)](https://ideas.repec.org/a/bla/jfinan/v7y1952i1p77-91.html) | Portfolio roles should treat expected return, variance, covariance, and diversification as analytical lenses, not as automatic trade instructions. |
|
|
43
|
+
| [Fama and French, "Common risk factors in the returns on stocks and bonds" (1993)](https://ideas.repec.org/a/eee/jfinec/v33y1993i1p3-56.html) | Research and portfolio outputs should separate issuer-specific thesis claims from factor, market, maturity, and default-risk exposure. |
|
|
44
|
+
| [NIST AI Risk Management Framework](https://www.nist.gov/itl/ai-risk-management-framework) | Agentic finance workflows need visible governance, context mapping, measurement, and risk-management checkpoints. |
|
|
45
|
+
| [NIST AI RMF Core](https://airc.nist.gov/airmf-resources/airmf/5-sec-core/) | Prompt gates, handoff states, quality checks, and audit outputs should map to govern, map, measure, and manage functions. |
|
|
46
|
+
| [IOSCO AI/ML report for market intermediaries and asset managers](https://www.iosco.org/library/pubdocs/pdf/IOSCOPD684.pdf) | AI-assisted capital-markets features need governance, testing, monitoring, data-quality controls, explainability, and outsourcing/third-party oversight posture. |
|
|
47
|
+
| [SEC Plain English Handbook](https://www.sec.gov/pdf/handbook.pdf) | User-facing screens should start with plain-English workflow meaning before professional evidence, assumptions, caveats, and artifacts. |
|
|
48
|
+
| [Every, "Compound Engineering"](https://every.to/guides/compound-engineering) | Engineering work should teach the system reusable capabilities; TradingCodex applies this by making role outputs preserve compact context, reader summaries, source posture, and missing-evidence notes for future workflows. |
|
|
49
|
+
| [Will Larson, "Learning from Every's Compound Engineering"](https://lethain.com/everyinc-compound-engineering/) | The useful pattern is separating research/planning, work, review, and compounding lessons; TradingCodex mirrors that with starter intake, role artifacts, quality checks, and improvement proposals. |
|
|
50
|
+
| [Addy Osmani, "Loop Engineering"](https://addyosmani.com/blog/loop-engineering/) | A useful agentic loop combines automations, isolated workspaces, skills, connectors, subagents, and durable external memory; TradingCodex maps these to prompt gates, fixed subagents, MCP/service boundaries, artifacts, and generated workspace state. |
|
|
51
|
+
| [Business Insider, "Forget prompt engineering: Loop engineering is all the rage now"](https://www.businessinsider.com/what-are-loops-ai-engineering-tips-2026-6) | Current loop-engineering discourse emphasizes designing recurring systems that prompt agents, with cost and oversight tradeoffs; TradingCodex exposes loop controls and token/context budgets rather than unlimited autonomy. |
|
|
52
|
+
| [Anthropic Claude Code skills docs](https://docs.anthropic.com/en/docs/claude-code/skills) | Recent agent tooling exposes loops through reusable skills, bundled `/loop`, subagent execution, and dynamic context; TradingCodex mirrors the reusable-skill and fixed-subagent pattern without depending on Claude Code. |
|
|
53
|
+
| [Anthropic Claude Code hooks docs](https://docs.anthropic.com/en/docs/claude-code/hooks-guide) | Agent hooks can verify conditions before allowing a workflow to continue; TradingCodex maps this to hook gates, context-audit, quality-check, and handoff states. |
|
|
54
|
+
| [OpenClaw](https://github.com/openclaw/openclaw) | Agent control planes show the value and risk of persistent assistant loops across devices/channels; TradingCodex keeps loops workspace-scoped, auditable, and blocked from secrets or execution unless service gates allow it. |
|
|
55
|
+
| [Mem0, "Loop Engineering for AI Agents: Memory-First Design"](https://mem0.ai/blog/loop-engineering-for-ai-agents-memory-first-design) | Memory-first loop design separates durable memory from a single chat context; TradingCodex uses workspace-native artifacts, source snapshots, context summaries, and generated manifests as its durable memory layer. |
|
|
56
|
+
| [TradingAgents repository](https://github.com/tauricresearch/tradingagents) and [TradingAgents paper](https://arxiv.org/abs/2412.20138) | The useful pattern is not autonomous execution, but explicit role specialization, bull/bear researcher debate, trader synthesis, and risk review. TradingCodex adapts this as challenge review before synthesis while keeping order, approval, and execution behind service gates. |
|
|
57
|
+
|
|
58
|
+
## Workflow Handoff Intake Contract
|
|
59
|
+
|
|
60
|
+
The workflow planner is a local preparation surface that produces a Codex
|
|
61
|
+
handoff. It must not spawn agents, produce investment analysis, approve orders,
|
|
62
|
+
or execute trades. It should:
|
|
63
|
+
|
|
64
|
+
- classify the request into a workflow lane and investment universe
|
|
65
|
+
- translate rough investor intuition into a plain-English working hypothesis
|
|
66
|
+
and safety boundary
|
|
67
|
+
- show the stage order in plain language, such as evidence, valuation,
|
|
68
|
+
portfolio fit, risk review, approved action boundary, and synthesis
|
|
69
|
+
- show stage exit criteria so users can see what must be true before the
|
|
70
|
+
workflow moves forward
|
|
71
|
+
- keep lane loop controls, judgment controls, strategy baseline, and method
|
|
72
|
+
lenses available in a review section so users can inspect professional
|
|
73
|
+
reasoning without making the first screen feel like an expert checklist
|
|
74
|
+
- expose method lenses such as suitability/profile, portfolio risk, factor
|
|
75
|
+
exposure, execution-boundary, or AI-governance references with a short
|
|
76
|
+
plain-language reason each lens matters
|
|
77
|
+
- show the selected role team in readable labels and explain why each role is
|
|
78
|
+
needed for the lane
|
|
79
|
+
- show blocked actions before artifacts exist, with a plain-language reason
|
|
80
|
+
for each blocked action
|
|
81
|
+
- show the next allowed actions so users can distinguish safe preparation from
|
|
82
|
+
blocked order, approval, or execution paths
|
|
83
|
+
- ask for investor profile context when the lane reaches decision support,
|
|
84
|
+
portfolio fit, order drafting, approval, or execution
|
|
85
|
+
- reuse answered active-profile investor context so users are not asked the
|
|
86
|
+
same suitability/profile question every time
|
|
87
|
+
- translate missing profile fields into direct user questions, with a short
|
|
88
|
+
reason each answer is required
|
|
89
|
+
- keep the generated Codex prompt compact enough for native dispatch and place
|
|
90
|
+
the raw prompt in a handoff section rather than making it the first-read UX
|
|
91
|
+
- instruct agents to write plain-English first, then professional evidence,
|
|
92
|
+
assumptions, and caveats
|
|
93
|
+
- instruct agents to preserve reusable context, source snapshots, missing
|
|
94
|
+
evidence, tests, or improvement proposals when a lesson should compound into
|
|
95
|
+
future workflows
|
|
96
|
+
|
|
97
|
+
Loop engineering applies only inside the workflow boundary selected at intake.
|
|
98
|
+
TradingCodex can loop over research discovery, artifact quality, stale-source
|
|
99
|
+
checks, profile gaps, and synthesis revisions. It must not let a loop widen
|
|
100
|
+
itself into recommendation, order drafting, approval, execution, raw broker API,
|
|
101
|
+
or secret handling. Those transitions require explicit user intent and the
|
|
102
|
+
separate service-layer gates already documented in the harness.
|
|
103
|
+
|
|
104
|
+
When no active user-approved strategy exists, TradingCodex should not invent a
|
|
105
|
+
fixed contract. It should state that the current request uses generated
|
|
106
|
+
TradingCodex rules, explicit user constraints, investor-profile context, and
|
|
107
|
+
temporary scenario assumptions. A durable strategy is created only through the
|
|
108
|
+
strategy authoring path, not as a side effect of analysis.
|
|
109
|
+
|
|
110
|
+
## Source Notes
|
|
111
|
+
|
|
112
|
+
- SEC Investor.gov describes asset allocation, diversification, and
|
|
113
|
+
rebalancing as core risk-management practices for individual investors.
|
|
114
|
+
- SEC Reg BI staff guidance describes investment-profile factors such as
|
|
115
|
+
financial situation, needs, investments, tax status, time horizon, liquidity
|
|
116
|
+
needs, risk tolerance, investment experience, objectives, and goals.
|
|
117
|
+
- FINRA suitability materials define customer-specific suitability around the
|
|
118
|
+
customer's investment profile, including objectives, risk tolerance, horizon,
|
|
119
|
+
liquidity needs, and other customer-specific factors.
|
|
120
|
+
- Markowitz's portfolio-selection framework is the product reason portfolio
|
|
121
|
+
review treats variance, covariance, and diversification as required context
|
|
122
|
+
before action.
|
|
123
|
+
- Fama-French factor framing is the product reason research outputs must
|
|
124
|
+
distinguish company-specific claims from market, size, value, maturity, and
|
|
125
|
+
default-risk exposures.
|
|
126
|
+
- CFA Institute IPS guidance frames investment strategy around overall
|
|
127
|
+
financial plans, objectives, risk tolerance, preferences, and constraints.
|
|
128
|
+
- CFP Board practice standards treat planning as a collaborative process that
|
|
129
|
+
integrates personal and financial circumstances before advice.
|
|
130
|
+
- The SEC Plain English Handbook frames plain English as deciding what
|
|
131
|
+
investors need to know, then presenting complex information clearly.
|
|
132
|
+
- NIST AI RMF emphasizes governing, mapping, measuring, and managing AI risks
|
|
133
|
+
across real-world use, including transparency and documentation concerns.
|
|
134
|
+
- IOSCO AI/ML guidance highlights governance and oversight, algorithm
|
|
135
|
+
development/testing/monitoring, data quality and bias, transparency and
|
|
136
|
+
explainability, outsourcing, and ethical concerns for capital-markets AI.
|
|
137
|
+
- Addy Osmani frames loop engineering as designing the system that prompts
|
|
138
|
+
agents, built from automations, worktrees, skills, connectors, subagents, and
|
|
139
|
+
memory outside a single conversation.
|
|
140
|
+
- Recent loop-engineering frameworks converge on recurring agent triggers,
|
|
141
|
+
reusable procedures, subagent decomposition, verification hooks, connectors,
|
|
142
|
+
and durable memory. TradingCodex should stay framework-agnostic: use these
|
|
143
|
+
ideas through its own Codex-native prompt gates, skills, MCP/service boundary,
|
|
144
|
+
context-audit, role artifacts, and explicit human approval gates.
|
|
145
|
+
- The verifier is the bottleneck in a useful loop. TradingCodex therefore keeps
|
|
146
|
+
loop controls tied to source freshness, artifact quality, profile gaps, and
|
|
147
|
+
blocked actions rather than letting the agent repeat work until it invents a
|
|
148
|
+
broader mandate.
|
|
149
|
+
- TradingAgents uses specialized analysts, bull and bear researchers, trader
|
|
150
|
+
synthesis, and risk management. TradingCodex borrows the opposition and risk
|
|
151
|
+
review structure, but does not let that structure self-approve, self-execute,
|
|
152
|
+
or silently create a user strategy.
|