tradingcodex 0.3.1__tar.gz → 0.3.2__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.3.1 → tradingcodex-0.3.2}/PKG-INFO +2 -2
- {tradingcodex-0.3.1 → tradingcodex-0.3.2}/README.md +1 -1
- {tradingcodex-0.3.1 → tradingcodex-0.3.2}/docs/core-concepts-and-rules.md +3 -0
- {tradingcodex-0.3.1 → tradingcodex-0.3.2}/docs/deployment.md +5 -3
- {tradingcodex-0.3.1 → tradingcodex-0.3.2}/docs/generated-workspaces.md +1 -1
- {tradingcodex-0.3.1 → tradingcodex-0.3.2}/docs/research-memory-and-artifacts.md +2 -0
- {tradingcodex-0.3.1 → tradingcodex-0.3.2}/docs/roles-skills-and-workflows.md +11 -3
- {tradingcodex-0.3.1 → tradingcodex-0.3.2}/docs/validation-and-test-plan.md +3 -0
- {tradingcodex-0.3.1 → tradingcodex-0.3.2}/pyproject.toml +1 -1
- {tradingcodex-0.3.1 → tradingcodex-0.3.2}/tests/test_python_migration.py +82 -2
- {tradingcodex-0.3.1 → tradingcodex-0.3.2}/tradingcodex.egg-info/PKG-INFO +2 -2
- {tradingcodex-0.3.1 → tradingcodex-0.3.2}/tradingcodex_service/application/harness.py +9 -3
- tradingcodex-0.3.2/tradingcodex_service/version.py +1 -0
- {tradingcodex-0.3.1 → tradingcodex-0.3.2}/workspace_templates/modules/codex-base/files/.codex/prompts/base_instructions/head-manager.md +10 -0
- {tradingcodex-0.3.1 → tradingcodex-0.3.2}/workspace_templates/modules/repo-skills/files/.agents/skills/tcx-workflow/SKILL.md +1 -1
- tradingcodex-0.3.1/tradingcodex_service/version.py +0 -1
- {tradingcodex-0.3.1 → tradingcodex-0.3.2}/CONTRIBUTING.md +0 -0
- {tradingcodex-0.3.1 → tradingcodex-0.3.2}/LICENSE +0 -0
- {tradingcodex-0.3.1 → tradingcodex-0.3.2}/MANIFEST.in +0 -0
- {tradingcodex-0.3.1 → tradingcodex-0.3.2}/NOTICE +0 -0
- {tradingcodex-0.3.1 → tradingcodex-0.3.2}/TRADEMARKS.md +0 -0
- {tradingcodex-0.3.1 → tradingcodex-0.3.2}/apps/__init__.py +0 -0
- {tradingcodex-0.3.1 → tradingcodex-0.3.2}/apps/audit/__init__.py +0 -0
- {tradingcodex-0.3.1 → tradingcodex-0.3.2}/apps/audit/admin.py +0 -0
- {tradingcodex-0.3.1 → tradingcodex-0.3.2}/apps/audit/apps.py +0 -0
- {tradingcodex-0.3.1 → tradingcodex-0.3.2}/apps/audit/migrations/0001_initial.py +0 -0
- {tradingcodex-0.3.1 → tradingcodex-0.3.2}/apps/audit/migrations/__init__.py +0 -0
- {tradingcodex-0.3.1 → tradingcodex-0.3.2}/apps/audit/models.py +0 -0
- {tradingcodex-0.3.1 → tradingcodex-0.3.2}/apps/harness/__init__.py +0 -0
- {tradingcodex-0.3.1 → tradingcodex-0.3.2}/apps/harness/admin.py +0 -0
- {tradingcodex-0.3.1 → tradingcodex-0.3.2}/apps/harness/apps.py +0 -0
- {tradingcodex-0.3.1 → tradingcodex-0.3.2}/apps/harness/migrations/0001_initial.py +0 -0
- {tradingcodex-0.3.1 → tradingcodex-0.3.2}/apps/harness/migrations/__init__.py +0 -0
- {tradingcodex-0.3.1 → tradingcodex-0.3.2}/apps/harness/models.py +0 -0
- {tradingcodex-0.3.1 → tradingcodex-0.3.2}/apps/harness/templatetags/__init__.py +0 -0
- {tradingcodex-0.3.1 → tradingcodex-0.3.2}/apps/integrations/__init__.py +0 -0
- {tradingcodex-0.3.1 → tradingcodex-0.3.2}/apps/integrations/admin.py +0 -0
- {tradingcodex-0.3.1 → tradingcodex-0.3.2}/apps/integrations/apps.py +0 -0
- {tradingcodex-0.3.1 → tradingcodex-0.3.2}/apps/integrations/migrations/0001_initial.py +0 -0
- {tradingcodex-0.3.1 → tradingcodex-0.3.2}/apps/integrations/migrations/0002_brokerconnection_brokeraccount_instrumentmap.py +0 -0
- {tradingcodex-0.3.1 → tradingcodex-0.3.2}/apps/integrations/migrations/__init__.py +0 -0
- {tradingcodex-0.3.1 → tradingcodex-0.3.2}/apps/integrations/models.py +0 -0
- {tradingcodex-0.3.1 → tradingcodex-0.3.2}/apps/mcp/__init__.py +0 -0
- {tradingcodex-0.3.1 → tradingcodex-0.3.2}/apps/mcp/admin.py +0 -0
- {tradingcodex-0.3.1 → tradingcodex-0.3.2}/apps/mcp/apps.py +0 -0
- {tradingcodex-0.3.1 → tradingcodex-0.3.2}/apps/mcp/migrations/0001_initial.py +0 -0
- {tradingcodex-0.3.1 → tradingcodex-0.3.2}/apps/mcp/migrations/__init__.py +0 -0
- {tradingcodex-0.3.1 → tradingcodex-0.3.2}/apps/mcp/models.py +0 -0
- {tradingcodex-0.3.1 → tradingcodex-0.3.2}/apps/mcp/services.py +0 -0
- {tradingcodex-0.3.1 → tradingcodex-0.3.2}/apps/orders/__init__.py +0 -0
- {tradingcodex-0.3.1 → tradingcodex-0.3.2}/apps/orders/admin.py +0 -0
- {tradingcodex-0.3.1 → tradingcodex-0.3.2}/apps/orders/apps.py +0 -0
- {tradingcodex-0.3.1 → tradingcodex-0.3.2}/apps/orders/migrations/0001_initial.py +0 -0
- {tradingcodex-0.3.1 → tradingcodex-0.3.2}/apps/orders/migrations/0002_approvalreceipt_approved_order_type_and_more.py +0 -0
- {tradingcodex-0.3.1 → tradingcodex-0.3.2}/apps/orders/migrations/0003_migrate_orderintent_to_orderticket.py +0 -0
- {tradingcodex-0.3.1 → tradingcodex-0.3.2}/apps/orders/migrations/0004_remove_order_intent_compat_fields.py +0 -0
- {tradingcodex-0.3.1 → tradingcodex-0.3.2}/apps/orders/migrations/__init__.py +0 -0
- {tradingcodex-0.3.1 → tradingcodex-0.3.2}/apps/orders/models.py +0 -0
- {tradingcodex-0.3.1 → tradingcodex-0.3.2}/apps/orders/services.py +0 -0
- {tradingcodex-0.3.1 → tradingcodex-0.3.2}/apps/policy/__init__.py +0 -0
- {tradingcodex-0.3.1 → tradingcodex-0.3.2}/apps/policy/admin.py +0 -0
- {tradingcodex-0.3.1 → tradingcodex-0.3.2}/apps/policy/apps.py +0 -0
- {tradingcodex-0.3.1 → tradingcodex-0.3.2}/apps/policy/migrations/0001_initial.py +0 -0
- {tradingcodex-0.3.1 → tradingcodex-0.3.2}/apps/policy/migrations/__init__.py +0 -0
- {tradingcodex-0.3.1 → tradingcodex-0.3.2}/apps/policy/models.py +0 -0
- {tradingcodex-0.3.1 → tradingcodex-0.3.2}/apps/policy/services.py +0 -0
- {tradingcodex-0.3.1 → tradingcodex-0.3.2}/apps/portfolio/__init__.py +0 -0
- {tradingcodex-0.3.1 → tradingcodex-0.3.2}/apps/portfolio/admin.py +0 -0
- {tradingcodex-0.3.1 → tradingcodex-0.3.2}/apps/portfolio/apps.py +0 -0
- {tradingcodex-0.3.1 → tradingcodex-0.3.2}/apps/portfolio/migrations/0001_initial.py +0 -0
- {tradingcodex-0.3.1 → tradingcodex-0.3.2}/apps/portfolio/migrations/0002_brokersyncrun_portfolioledgerevent_reconciliationrun.py +0 -0
- {tradingcodex-0.3.1 → tradingcodex-0.3.2}/apps/portfolio/migrations/__init__.py +0 -0
- {tradingcodex-0.3.1 → tradingcodex-0.3.2}/apps/portfolio/models.py +0 -0
- {tradingcodex-0.3.1 → tradingcodex-0.3.2}/apps/workflows/__init__.py +0 -0
- {tradingcodex-0.3.1 → tradingcodex-0.3.2}/apps/workflows/admin.py +0 -0
- {tradingcodex-0.3.1 → tradingcodex-0.3.2}/apps/workflows/apps.py +0 -0
- {tradingcodex-0.3.1 → tradingcodex-0.3.2}/apps/workflows/migrations/0001_initial.py +0 -0
- {tradingcodex-0.3.1 → tradingcodex-0.3.2}/apps/workflows/migrations/__init__.py +0 -0
- {tradingcodex-0.3.1 → tradingcodex-0.3.2}/apps/workflows/models.py +0 -0
- {tradingcodex-0.3.1 → tradingcodex-0.3.2}/assets/tradingcodex-banner.svg +0 -0
- {tradingcodex-0.3.1 → tradingcodex-0.3.2}/docs/README.md +0 -0
- {tradingcodex-0.3.1 → tradingcodex-0.3.2}/docs/artifact-supervisor-loop-prd.md +0 -0
- {tradingcodex-0.3.1 → tradingcodex-0.3.2}/docs/components.md +0 -0
- {tradingcodex-0.3.1 → tradingcodex-0.3.2}/docs/financial-workflow-references.md +0 -0
- {tradingcodex-0.3.1 → tradingcodex-0.3.2}/docs/guardrails.md +0 -0
- {tradingcodex-0.3.1 → tradingcodex-0.3.2}/docs/harness.md +0 -0
- {tradingcodex-0.3.1 → tradingcodex-0.3.2}/docs/improvement-loop.md +0 -0
- {tradingcodex-0.3.1 → tradingcodex-0.3.2}/docs/interfaces-and-surfaces.md +0 -0
- {tradingcodex-0.3.1 → tradingcodex-0.3.2}/docs/licensing-and-commercialization.md +0 -0
- {tradingcodex-0.3.1 → tradingcodex-0.3.2}/docs/product-direction.md +0 -0
- {tradingcodex-0.3.1 → tradingcodex-0.3.2}/docs/safety-policy-and-execution.md +0 -0
- {tradingcodex-0.3.1 → tradingcodex-0.3.2}/docs/system-architecture.md +0 -0
- {tradingcodex-0.3.1 → tradingcodex-0.3.2}/docs/user-facing-skills.md +0 -0
- {tradingcodex-0.3.1 → tradingcodex-0.3.2}/install.sh +0 -0
- {tradingcodex-0.3.1 → tradingcodex-0.3.2}/installation.md +0 -0
- {tradingcodex-0.3.1 → tradingcodex-0.3.2}/setup.cfg +0 -0
- {tradingcodex-0.3.1 → tradingcodex-0.3.2}/tests/test_broker_center_prd.py +0 -0
- {tradingcodex-0.3.1 → tradingcodex-0.3.2}/tests/test_e2e_user_scenarios.py +0 -0
- {tradingcodex-0.3.1 → tradingcodex-0.3.2}/tradingcodex.egg-info/SOURCES.txt +0 -0
- {tradingcodex-0.3.1 → tradingcodex-0.3.2}/tradingcodex.egg-info/dependency_links.txt +0 -0
- {tradingcodex-0.3.1 → tradingcodex-0.3.2}/tradingcodex.egg-info/entry_points.txt +0 -0
- {tradingcodex-0.3.1 → tradingcodex-0.3.2}/tradingcodex.egg-info/requires.txt +0 -0
- {tradingcodex-0.3.1 → tradingcodex-0.3.2}/tradingcodex.egg-info/top_level.txt +0 -0
- {tradingcodex-0.3.1 → tradingcodex-0.3.2}/tradingcodex_cli/__init__.py +0 -0
- {tradingcodex-0.3.1 → tradingcodex-0.3.2}/tradingcodex_cli/__main__.py +0 -0
- {tradingcodex-0.3.1 → tradingcodex-0.3.2}/tradingcodex_cli/commands/__init__.py +0 -0
- {tradingcodex-0.3.1 → tradingcodex-0.3.2}/tradingcodex_cli/commands/bootstrap.py +0 -0
- {tradingcodex-0.3.1 → tradingcodex-0.3.2}/tradingcodex_cli/commands/connectors.py +0 -0
- {tradingcodex-0.3.1 → tradingcodex-0.3.2}/tradingcodex_cli/commands/db.py +0 -0
- {tradingcodex-0.3.1 → tradingcodex-0.3.2}/tradingcodex_cli/commands/decision.py +0 -0
- {tradingcodex-0.3.1 → tradingcodex-0.3.2}/tradingcodex_cli/commands/doctor.py +0 -0
- {tradingcodex-0.3.1 → tradingcodex-0.3.2}/tradingcodex_cli/commands/mcp.py +0 -0
- {tradingcodex-0.3.1 → tradingcodex-0.3.2}/tradingcodex_cli/commands/mode.py +0 -0
- {tradingcodex-0.3.1 → tradingcodex-0.3.2}/tradingcodex_cli/commands/orders.py +0 -0
- {tradingcodex-0.3.1 → tradingcodex-0.3.2}/tradingcodex_cli/commands/policy.py +0 -0
- {tradingcodex-0.3.1 → tradingcodex-0.3.2}/tradingcodex_cli/commands/profile.py +0 -0
- {tradingcodex-0.3.1 → tradingcodex-0.3.2}/tradingcodex_cli/commands/research.py +0 -0
- {tradingcodex-0.3.1 → tradingcodex-0.3.2}/tradingcodex_cli/commands/skills.py +0 -0
- {tradingcodex-0.3.1 → tradingcodex-0.3.2}/tradingcodex_cli/commands/strategies.py +0 -0
- {tradingcodex-0.3.1 → tradingcodex-0.3.2}/tradingcodex_cli/commands/subagents.py +0 -0
- {tradingcodex-0.3.1 → tradingcodex-0.3.2}/tradingcodex_cli/commands/utils.py +0 -0
- {tradingcodex-0.3.1 → tradingcodex-0.3.2}/tradingcodex_cli/commands/workflow.py +0 -0
- {tradingcodex-0.3.1 → tradingcodex-0.3.2}/tradingcodex_cli/commands/workspaces.py +0 -0
- {tradingcodex-0.3.1 → tradingcodex-0.3.2}/tradingcodex_cli/generator.py +0 -0
- {tradingcodex-0.3.1 → tradingcodex-0.3.2}/tradingcodex_cli/mcp_stdio.py +0 -0
- {tradingcodex-0.3.1 → tradingcodex-0.3.2}/tradingcodex_cli/service_autostart.py +0 -0
- {tradingcodex-0.3.1 → tradingcodex-0.3.2}/tradingcodex_cli/startup_status.py +0 -0
- {tradingcodex-0.3.1 → tradingcodex-0.3.2}/tradingcodex_service/__init__.py +0 -0
- {tradingcodex-0.3.1 → tradingcodex-0.3.2}/tradingcodex_service/admin.py +0 -0
- {tradingcodex-0.3.1 → tradingcodex-0.3.2}/tradingcodex_service/api.py +0 -0
- {tradingcodex-0.3.1 → tradingcodex-0.3.2}/tradingcodex_service/application/__init__.py +0 -0
- {tradingcodex-0.3.1 → tradingcodex-0.3.2}/tradingcodex_service/application/agents.py +0 -0
- {tradingcodex-0.3.1 → tradingcodex-0.3.2}/tradingcodex_service/application/artifact_quality.py +0 -0
- {tradingcodex-0.3.1 → tradingcodex-0.3.2}/tradingcodex_service/application/audit.py +0 -0
- {tradingcodex-0.3.1 → tradingcodex-0.3.2}/tradingcodex_service/application/brokers.py +0 -0
- {tradingcodex-0.3.1 → tradingcodex-0.3.2}/tradingcodex_service/application/common.py +0 -0
- {tradingcodex-0.3.1 → tradingcodex-0.3.2}/tradingcodex_service/application/components.py +0 -0
- {tradingcodex-0.3.1 → tradingcodex-0.3.2}/tradingcodex_service/application/context_budget.py +0 -0
- {tradingcodex-0.3.1 → tradingcodex-0.3.2}/tradingcodex_service/application/decision_packages.py +0 -0
- {tradingcodex-0.3.1 → tradingcodex-0.3.2}/tradingcodex_service/application/markdown_preview.py +0 -0
- {tradingcodex-0.3.1 → tradingcodex-0.3.2}/tradingcodex_service/application/orders.py +0 -0
- {tradingcodex-0.3.1 → tradingcodex-0.3.2}/tradingcodex_service/application/policy.py +0 -0
- {tradingcodex-0.3.1 → tradingcodex-0.3.2}/tradingcodex_service/application/portfolio.py +0 -0
- {tradingcodex-0.3.1 → tradingcodex-0.3.2}/tradingcodex_service/application/research.py +0 -0
- {tradingcodex-0.3.1 → tradingcodex-0.3.2}/tradingcodex_service/application/runtime.py +0 -0
- {tradingcodex-0.3.1 → tradingcodex-0.3.2}/tradingcodex_service/application/runtime_mode.py +0 -0
- {tradingcodex-0.3.1 → tradingcodex-0.3.2}/tradingcodex_service/application/workflow_planner.py +0 -0
- {tradingcodex-0.3.1 → tradingcodex-0.3.2}/tradingcodex_service/application/workflow_routing.py +0 -0
- {tradingcodex-0.3.1 → tradingcodex-0.3.2}/tradingcodex_service/asgi.py +0 -0
- {tradingcodex-0.3.1 → tradingcodex-0.3.2}/tradingcodex_service/mcp_runtime.py +0 -0
- {tradingcodex-0.3.1 → tradingcodex-0.3.2}/tradingcodex_service/settings.py +0 -0
- {tradingcodex-0.3.1 → tradingcodex-0.3.2}/tradingcodex_service/static/tradingcodex_admin/favicon.svg +0 -0
- {tradingcodex-0.3.1 → tradingcodex-0.3.2}/tradingcodex_service/static/tradingcodex_web/app.css +0 -0
- {tradingcodex-0.3.1 → tradingcodex-0.3.2}/tradingcodex_service/static/tradingcodex_web/app.js +0 -0
- {tradingcodex-0.3.1 → tradingcodex-0.3.2}/tradingcodex_service/static/vendor/htmx/htmx.min.js +0 -0
- {tradingcodex-0.3.1 → tradingcodex-0.3.2}/tradingcodex_service/templates/web/activity.html +0 -0
- {tradingcodex-0.3.1 → tradingcodex-0.3.2}/tradingcodex_service/templates/web/agent_skills.html +0 -0
- {tradingcodex-0.3.1 → tradingcodex-0.3.2}/tradingcodex_service/templates/web/agents.html +0 -0
- {tradingcodex-0.3.1 → tradingcodex-0.3.2}/tradingcodex_service/templates/web/base.html +0 -0
- {tradingcodex-0.3.1 → tradingcodex-0.3.2}/tradingcodex_service/templates/web/brokers.html +0 -0
- {tradingcodex-0.3.1 → tradingcodex-0.3.2}/tradingcodex_service/templates/web/dashboard.html +0 -0
- {tradingcodex-0.3.1 → tradingcodex-0.3.2}/tradingcodex_service/templates/web/decisions.html +0 -0
- {tradingcodex-0.3.1 → tradingcodex-0.3.2}/tradingcodex_service/templates/web/fragments/role_inspector.html +0 -0
- {tradingcodex-0.3.1 → tradingcodex-0.3.2}/tradingcodex_service/templates/web/fragments/starter_prompt.html +0 -0
- {tradingcodex-0.3.1 → tradingcodex-0.3.2}/tradingcodex_service/templates/web/fragments/topology_canvas.html +0 -0
- {tradingcodex-0.3.1 → tradingcodex-0.3.2}/tradingcodex_service/templates/web/fragments/workspace_card.html +0 -0
- {tradingcodex-0.3.1 → tradingcodex-0.3.2}/tradingcodex_service/templates/web/harness.html +0 -0
- {tradingcodex-0.3.1 → tradingcodex-0.3.2}/tradingcodex_service/templates/web/mcp_router.html +0 -0
- {tradingcodex-0.3.1 → tradingcodex-0.3.2}/tradingcodex_service/templates/web/orders.html +0 -0
- {tradingcodex-0.3.1 → tradingcodex-0.3.2}/tradingcodex_service/templates/web/policy.html +0 -0
- {tradingcodex-0.3.1 → tradingcodex-0.3.2}/tradingcodex_service/templates/web/portfolio.html +0 -0
- {tradingcodex-0.3.1 → tradingcodex-0.3.2}/tradingcodex_service/templates/web/research.html +0 -0
- {tradingcodex-0.3.1 → tradingcodex-0.3.2}/tradingcodex_service/templates/web/starter_prompt.html +0 -0
- {tradingcodex-0.3.1 → tradingcodex-0.3.2}/tradingcodex_service/templates/web/strategies.html +0 -0
- {tradingcodex-0.3.1 → tradingcodex-0.3.2}/tradingcodex_service/urls.py +0 -0
- {tradingcodex-0.3.1 → tradingcodex-0.3.2}/tradingcodex_service/web.py +0 -0
- {tradingcodex-0.3.1 → tradingcodex-0.3.2}/tradingcodex_service/wsgi.py +0 -0
- {tradingcodex-0.3.1 → tradingcodex-0.3.2}/workspace_templates/__init__.py +0 -0
- {tradingcodex-0.3.1 → tradingcodex-0.3.2}/workspace_templates/modules/audit/files/.tradingcodex/audit/README.md +0 -0
- {tradingcodex-0.3.1 → tradingcodex-0.3.2}/workspace_templates/modules/audit/files/trading/audit/.gitkeep +0 -0
- {tradingcodex-0.3.1 → tradingcodex-0.3.2}/workspace_templates/modules/audit/module.json +0 -0
- {tradingcodex-0.3.1 → tradingcodex-0.3.2}/workspace_templates/modules/codex-base/files/.codex/config.toml +0 -0
- {tradingcodex-0.3.1 → tradingcodex-0.3.2}/workspace_templates/modules/codex-base/files/.codex/hooks/tradingcodex_hook.py +0 -0
- {tradingcodex-0.3.1 → tradingcodex-0.3.2}/workspace_templates/modules/codex-base/files/.codex/hooks.json +0 -0
- {tradingcodex-0.3.1 → tradingcodex-0.3.2}/workspace_templates/modules/codex-base/files/.codex/rules/tradingcodex.rules +0 -0
- {tradingcodex-0.3.1 → tradingcodex-0.3.2}/workspace_templates/modules/codex-base/files/.tradingcodex/capabilities.yaml +0 -0
- {tradingcodex-0.3.1 → tradingcodex-0.3.2}/workspace_templates/modules/codex-base/files/.tradingcodex/cli.py +0 -0
- {tradingcodex-0.3.1 → tradingcodex-0.3.2}/workspace_templates/modules/codex-base/files/.tradingcodex/config.yaml +0 -0
- {tradingcodex-0.3.1 → tradingcodex-0.3.2}/workspace_templates/modules/codex-base/files/.tradingcodex/policies/policy-bindings.yaml +0 -0
- {tradingcodex-0.3.1 → tradingcodex-0.3.2}/workspace_templates/modules/codex-base/files/.tradingcodex/policies/principals.yaml +0 -0
- {tradingcodex-0.3.1 → tradingcodex-0.3.2}/workspace_templates/modules/codex-base/files/.tradingcodex/policies/roles.yaml +0 -0
- {tradingcodex-0.3.1 → tradingcodex-0.3.2}/workspace_templates/modules/codex-base/files/AGENTS.md +0 -0
- {tradingcodex-0.3.1 → tradingcodex-0.3.2}/workspace_templates/modules/codex-base/files/pyproject.toml +0 -0
- {tradingcodex-0.3.1 → tradingcodex-0.3.2}/workspace_templates/modules/codex-base/files/tcx +0 -0
- {tradingcodex-0.3.1 → tradingcodex-0.3.2}/workspace_templates/modules/codex-base/module.json +0 -0
- {tradingcodex-0.3.1 → tradingcodex-0.3.2}/workspace_templates/modules/enforcement-guardrails/files/.tradingcodex/policies/access-policies.yaml +0 -0
- {tradingcodex-0.3.1 → tradingcodex-0.3.2}/workspace_templates/modules/enforcement-guardrails/files/.tradingcodex/policies/restricted-list.yaml +0 -0
- {tradingcodex-0.3.1 → tradingcodex-0.3.2}/workspace_templates/modules/enforcement-guardrails/files/.tradingcodex/schemas/approval_receipt.schema.json +0 -0
- {tradingcodex-0.3.1 → tradingcodex-0.3.2}/workspace_templates/modules/enforcement-guardrails/files/.tradingcodex/schemas/audit_event.schema.json +0 -0
- {tradingcodex-0.3.1 → tradingcodex-0.3.2}/workspace_templates/modules/enforcement-guardrails/files/.tradingcodex/schemas/evidence_pack.schema.json +0 -0
- {tradingcodex-0.3.1 → tradingcodex-0.3.2}/workspace_templates/modules/enforcement-guardrails/files/.tradingcodex/schemas/execution_result.schema.json +0 -0
- {tradingcodex-0.3.1 → tradingcodex-0.3.2}/workspace_templates/modules/enforcement-guardrails/files/.tradingcodex/schemas/fundamental_report.schema.json +0 -0
- {tradingcodex-0.3.1 → tradingcodex-0.3.2}/workspace_templates/modules/enforcement-guardrails/files/.tradingcodex/schemas/news_report.schema.json +0 -0
- {tradingcodex-0.3.1 → tradingcodex-0.3.2}/workspace_templates/modules/enforcement-guardrails/files/.tradingcodex/schemas/order_ticket.schema.json +0 -0
- {tradingcodex-0.3.1 → tradingcodex-0.3.2}/workspace_templates/modules/enforcement-guardrails/files/.tradingcodex/schemas/portfolio_review.schema.json +0 -0
- {tradingcodex-0.3.1 → tradingcodex-0.3.2}/workspace_templates/modules/enforcement-guardrails/files/.tradingcodex/schemas/postmortem_report.schema.json +0 -0
- {tradingcodex-0.3.1 → tradingcodex-0.3.2}/workspace_templates/modules/enforcement-guardrails/files/.tradingcodex/schemas/research_artifact.schema.json +0 -0
- {tradingcodex-0.3.1 → tradingcodex-0.3.2}/workspace_templates/modules/enforcement-guardrails/files/.tradingcodex/schemas/risk_report.schema.json +0 -0
- {tradingcodex-0.3.1 → tradingcodex-0.3.2}/workspace_templates/modules/enforcement-guardrails/files/.tradingcodex/schemas/technical_report.schema.json +0 -0
- {tradingcodex-0.3.1 → tradingcodex-0.3.2}/workspace_templates/modules/enforcement-guardrails/files/.tradingcodex/schemas/thesis.schema.json +0 -0
- {tradingcodex-0.3.1 → tradingcodex-0.3.2}/workspace_templates/modules/enforcement-guardrails/files/.tradingcodex/schemas/valuation.schema.json +0 -0
- {tradingcodex-0.3.1 → tradingcodex-0.3.2}/workspace_templates/modules/enforcement-guardrails/module.json +0 -0
- {tradingcodex-0.3.1 → tradingcodex-0.3.2}/workspace_templates/modules/fixed-subagents/files/.codex/agents/execution-operator.toml +0 -0
- {tradingcodex-0.3.1 → tradingcodex-0.3.2}/workspace_templates/modules/fixed-subagents/files/.codex/agents/fundamental-analyst.toml +0 -0
- {tradingcodex-0.3.1 → tradingcodex-0.3.2}/workspace_templates/modules/fixed-subagents/files/.codex/agents/instrument-analyst.toml +0 -0
- {tradingcodex-0.3.1 → tradingcodex-0.3.2}/workspace_templates/modules/fixed-subagents/files/.codex/agents/judgment-reviewer.toml +0 -0
- {tradingcodex-0.3.1 → tradingcodex-0.3.2}/workspace_templates/modules/fixed-subagents/files/.codex/agents/macro-analyst.toml +0 -0
- {tradingcodex-0.3.1 → tradingcodex-0.3.2}/workspace_templates/modules/fixed-subagents/files/.codex/agents/news-analyst.toml +0 -0
- {tradingcodex-0.3.1 → tradingcodex-0.3.2}/workspace_templates/modules/fixed-subagents/files/.codex/agents/portfolio-manager.toml +0 -0
- {tradingcodex-0.3.1 → tradingcodex-0.3.2}/workspace_templates/modules/fixed-subagents/files/.codex/agents/risk-manager.toml +0 -0
- {tradingcodex-0.3.1 → tradingcodex-0.3.2}/workspace_templates/modules/fixed-subagents/files/.codex/agents/technical-analyst.toml +0 -0
- {tradingcodex-0.3.1 → tradingcodex-0.3.2}/workspace_templates/modules/fixed-subagents/files/.codex/agents/valuation-analyst.toml +0 -0
- {tradingcodex-0.3.1 → tradingcodex-0.3.2}/workspace_templates/modules/fixed-subagents/files/.tradingcodex/mainagent/skill-change-proposals/.gitkeep +0 -0
- {tradingcodex-0.3.1 → tradingcodex-0.3.2}/workspace_templates/modules/fixed-subagents/module.json +0 -0
- {tradingcodex-0.3.1 → tradingcodex-0.3.2}/workspace_templates/modules/guidance-guardrails/files/.tradingcodex/guidance/guardrails.md +0 -0
- {tradingcodex-0.3.1 → tradingcodex-0.3.2}/workspace_templates/modules/guidance-guardrails/files/.tradingcodex/guidance/task-quality-checklist.md +0 -0
- {tradingcodex-0.3.1 → tradingcodex-0.3.2}/workspace_templates/modules/guidance-guardrails/module.json +0 -0
- {tradingcodex-0.3.1 → tradingcodex-0.3.2}/workspace_templates/modules/information-barriers/files/.tradingcodex/policies/information-barriers.yaml +0 -0
- {tradingcodex-0.3.1 → tradingcodex-0.3.2}/workspace_templates/modules/information-barriers/files/.tradingcodex/secrets.md +0 -0
- {tradingcodex-0.3.1 → tradingcodex-0.3.2}/workspace_templates/modules/information-barriers/files/trading/approvals/.gitkeep +0 -0
- {tradingcodex-0.3.1 → tradingcodex-0.3.2}/workspace_templates/modules/information-barriers/files/trading/forecasts/.gitkeep +0 -0
- {tradingcodex-0.3.1 → tradingcodex-0.3.2}/workspace_templates/modules/information-barriers/files/trading/market-data/.gitkeep +0 -0
- {tradingcodex-0.3.1 → tradingcodex-0.3.2}/workspace_templates/modules/information-barriers/files/trading/orders/approved/.gitkeep +0 -0
- {tradingcodex-0.3.1 → tradingcodex-0.3.2}/workspace_templates/modules/information-barriers/files/trading/orders/draft/.gitkeep +0 -0
- {tradingcodex-0.3.1 → tradingcodex-0.3.2}/workspace_templates/modules/information-barriers/files/trading/orders/executed/.gitkeep +0 -0
- {tradingcodex-0.3.1 → tradingcodex-0.3.2}/workspace_templates/modules/information-barriers/files/trading/orders/rejected/.gitkeep +0 -0
- {tradingcodex-0.3.1 → tradingcodex-0.3.2}/workspace_templates/modules/information-barriers/files/trading/portfolio/.gitkeep +0 -0
- {tradingcodex-0.3.1 → tradingcodex-0.3.2}/workspace_templates/modules/information-barriers/files/trading/reports/fundamental/.gitkeep +0 -0
- {tradingcodex-0.3.1 → tradingcodex-0.3.2}/workspace_templates/modules/information-barriers/files/trading/reports/instrument/.gitkeep +0 -0
- {tradingcodex-0.3.1 → tradingcodex-0.3.2}/workspace_templates/modules/information-barriers/files/trading/reports/macro/.gitkeep +0 -0
- {tradingcodex-0.3.1 → tradingcodex-0.3.2}/workspace_templates/modules/information-barriers/files/trading/reports/news/.gitkeep +0 -0
- {tradingcodex-0.3.1 → tradingcodex-0.3.2}/workspace_templates/modules/information-barriers/files/trading/reports/policy/.gitkeep +0 -0
- {tradingcodex-0.3.1 → tradingcodex-0.3.2}/workspace_templates/modules/information-barriers/files/trading/reports/portfolio/.gitkeep +0 -0
- {tradingcodex-0.3.1 → tradingcodex-0.3.2}/workspace_templates/modules/information-barriers/files/trading/reports/postmortem/.gitkeep +0 -0
- {tradingcodex-0.3.1 → tradingcodex-0.3.2}/workspace_templates/modules/information-barriers/files/trading/reports/risk/.gitkeep +0 -0
- {tradingcodex-0.3.1 → tradingcodex-0.3.2}/workspace_templates/modules/information-barriers/files/trading/reports/technical/.gitkeep +0 -0
- {tradingcodex-0.3.1 → tradingcodex-0.3.2}/workspace_templates/modules/information-barriers/files/trading/reports/valuation/.gitkeep +0 -0
- {tradingcodex-0.3.1 → tradingcodex-0.3.2}/workspace_templates/modules/information-barriers/files/trading/research/.gitkeep +0 -0
- {tradingcodex-0.3.1 → tradingcodex-0.3.2}/workspace_templates/modules/information-barriers/module.json +0 -0
- {tradingcodex-0.3.1 → tradingcodex-0.3.2}/workspace_templates/modules/paper-trading/module.json +0 -0
- {tradingcodex-0.3.1 → tradingcodex-0.3.2}/workspace_templates/modules/postmortem/files/.tradingcodex/workflows/postmortem.yaml +0 -0
- {tradingcodex-0.3.1 → tradingcodex-0.3.2}/workspace_templates/modules/postmortem/module.json +0 -0
- {tradingcodex-0.3.1 → tradingcodex-0.3.2}/workspace_templates/modules/repo-skills/files/.agents/skills/automate-workflow/SKILL.md +0 -0
- {tradingcodex-0.3.1 → tradingcodex-0.3.2}/workspace_templates/modules/repo-skills/files/.agents/skills/automate-workflow/agents/openai.yaml +0 -0
- {tradingcodex-0.3.1 → tradingcodex-0.3.2}/workspace_templates/modules/repo-skills/files/.agents/skills/plan-workflow/SKILL.md +0 -0
- {tradingcodex-0.3.1 → tradingcodex-0.3.2}/workspace_templates/modules/repo-skills/files/.agents/skills/plan-workflow/agents/openai.yaml +0 -0
- {tradingcodex-0.3.1 → tradingcodex-0.3.2}/workspace_templates/modules/repo-skills/files/.agents/skills/postmortem/SKILL.md +0 -0
- {tradingcodex-0.3.1 → tradingcodex-0.3.2}/workspace_templates/modules/repo-skills/files/.agents/skills/postmortem/agents/openai.yaml +0 -0
- {tradingcodex-0.3.1 → tradingcodex-0.3.2}/workspace_templates/modules/repo-skills/files/.agents/skills/strategy-creator/SKILL.md +0 -0
- {tradingcodex-0.3.1 → tradingcodex-0.3.2}/workspace_templates/modules/repo-skills/files/.agents/skills/strategy-creator/agents/openai.yaml +0 -0
- {tradingcodex-0.3.1 → tradingcodex-0.3.2}/workspace_templates/modules/repo-skills/files/.agents/skills/tcx-build/SKILL.md +0 -0
- {tradingcodex-0.3.1 → tradingcodex-0.3.2}/workspace_templates/modules/repo-skills/files/.agents/skills/tcx-build/agents/openai.yaml +0 -0
- {tradingcodex-0.3.1 → tradingcodex-0.3.2}/workspace_templates/modules/repo-skills/files/.agents/skills/tcx-server/SKILL.md +0 -0
- {tradingcodex-0.3.1 → tradingcodex-0.3.2}/workspace_templates/modules/repo-skills/files/.agents/skills/tcx-server/agents/openai.yaml +0 -0
- {tradingcodex-0.3.1 → tradingcodex-0.3.2}/workspace_templates/modules/repo-skills/files/.agents/skills/tcx-workflow/agents/openai.yaml +0 -0
- {tradingcodex-0.3.1 → tradingcodex-0.3.2}/workspace_templates/modules/repo-skills/files/.agents/skills/tcx-workflow/references/decision-quality-spine.md +0 -0
- {tradingcodex-0.3.1 → tradingcodex-0.3.2}/workspace_templates/modules/repo-skills/files/.tradingcodex/subagents/skills/execution-operator/execute-paper-order/SKILL.md +0 -0
- {tradingcodex-0.3.1 → tradingcodex-0.3.2}/workspace_templates/modules/repo-skills/files/.tradingcodex/subagents/skills/execution-operator/execute-paper-order/agents/openai.yaml +0 -0
- {tradingcodex-0.3.1 → tradingcodex-0.3.2}/workspace_templates/modules/repo-skills/files/.tradingcodex/subagents/skills/fundamental-analyst/fundamental-analysis/SKILL.md +0 -0
- {tradingcodex-0.3.1 → tradingcodex-0.3.2}/workspace_templates/modules/repo-skills/files/.tradingcodex/subagents/skills/fundamental-analyst/fundamental-analysis/agents/openai.yaml +0 -0
- {tradingcodex-0.3.1 → tradingcodex-0.3.2}/workspace_templates/modules/repo-skills/files/.tradingcodex/subagents/skills/instrument-analyst/instrument-analysis/SKILL.md +0 -0
- {tradingcodex-0.3.1 → tradingcodex-0.3.2}/workspace_templates/modules/repo-skills/files/.tradingcodex/subagents/skills/instrument-analyst/instrument-analysis/agents/openai.yaml +0 -0
- {tradingcodex-0.3.1 → tradingcodex-0.3.2}/workspace_templates/modules/repo-skills/files/.tradingcodex/subagents/skills/judgment-reviewer/agent-judgment-review/SKILL.md +0 -0
- {tradingcodex-0.3.1 → tradingcodex-0.3.2}/workspace_templates/modules/repo-skills/files/.tradingcodex/subagents/skills/judgment-reviewer/agent-judgment-review/agents/openai.yaml +0 -0
- {tradingcodex-0.3.1 → tradingcodex-0.3.2}/workspace_templates/modules/repo-skills/files/.tradingcodex/subagents/skills/macro-analyst/macro-analysis/SKILL.md +0 -0
- {tradingcodex-0.3.1 → tradingcodex-0.3.2}/workspace_templates/modules/repo-skills/files/.tradingcodex/subagents/skills/macro-analyst/macro-analysis/agents/openai.yaml +0 -0
- {tradingcodex-0.3.1 → tradingcodex-0.3.2}/workspace_templates/modules/repo-skills/files/.tradingcodex/subagents/skills/news-analyst/news-analysis/SKILL.md +0 -0
- {tradingcodex-0.3.1 → tradingcodex-0.3.2}/workspace_templates/modules/repo-skills/files/.tradingcodex/subagents/skills/news-analyst/news-analysis/agents/openai.yaml +0 -0
- {tradingcodex-0.3.1 → tradingcodex-0.3.2}/workspace_templates/modules/repo-skills/files/.tradingcodex/subagents/skills/portfolio-manager/create-order-ticket/SKILL.md +0 -0
- {tradingcodex-0.3.1 → tradingcodex-0.3.2}/workspace_templates/modules/repo-skills/files/.tradingcodex/subagents/skills/portfolio-manager/create-order-ticket/agents/openai.yaml +0 -0
- {tradingcodex-0.3.1 → tradingcodex-0.3.2}/workspace_templates/modules/repo-skills/files/.tradingcodex/subagents/skills/portfolio-manager/portfolio-review/SKILL.md +0 -0
- {tradingcodex-0.3.1 → tradingcodex-0.3.2}/workspace_templates/modules/repo-skills/files/.tradingcodex/subagents/skills/portfolio-manager/portfolio-review/agents/openai.yaml +0 -0
- {tradingcodex-0.3.1 → tradingcodex-0.3.2}/workspace_templates/modules/repo-skills/files/.tradingcodex/subagents/skills/risk-manager/approve-order/SKILL.md +0 -0
- {tradingcodex-0.3.1 → tradingcodex-0.3.2}/workspace_templates/modules/repo-skills/files/.tradingcodex/subagents/skills/risk-manager/approve-order/agents/openai.yaml +0 -0
- {tradingcodex-0.3.1 → tradingcodex-0.3.2}/workspace_templates/modules/repo-skills/files/.tradingcodex/subagents/skills/risk-manager/policy-review/SKILL.md +0 -0
- {tradingcodex-0.3.1 → tradingcodex-0.3.2}/workspace_templates/modules/repo-skills/files/.tradingcodex/subagents/skills/risk-manager/policy-review/agents/openai.yaml +0 -0
- {tradingcodex-0.3.1 → tradingcodex-0.3.2}/workspace_templates/modules/repo-skills/files/.tradingcodex/subagents/skills/risk-manager/review-risk/SKILL.md +0 -0
- {tradingcodex-0.3.1 → tradingcodex-0.3.2}/workspace_templates/modules/repo-skills/files/.tradingcodex/subagents/skills/risk-manager/review-risk/agents/openai.yaml +0 -0
- {tradingcodex-0.3.1 → tradingcodex-0.3.2}/workspace_templates/modules/repo-skills/files/.tradingcodex/subagents/skills/shared/anti-overfit-validation/SKILL.md +0 -0
- {tradingcodex-0.3.1 → tradingcodex-0.3.2}/workspace_templates/modules/repo-skills/files/.tradingcodex/subagents/skills/shared/anti-overfit-validation/agents/openai.yaml +0 -0
- {tradingcodex-0.3.1 → tradingcodex-0.3.2}/workspace_templates/modules/repo-skills/files/.tradingcodex/subagents/skills/shared/collect-evidence/SKILL.md +0 -0
- {tradingcodex-0.3.1 → tradingcodex-0.3.2}/workspace_templates/modules/repo-skills/files/.tradingcodex/subagents/skills/shared/collect-evidence/agents/openai.yaml +0 -0
- {tradingcodex-0.3.1 → tradingcodex-0.3.2}/workspace_templates/modules/repo-skills/files/.tradingcodex/subagents/skills/shared/external-data-source-gate/SKILL.md +0 -0
- {tradingcodex-0.3.1 → tradingcodex-0.3.2}/workspace_templates/modules/repo-skills/files/.tradingcodex/subagents/skills/shared/external-data-source-gate/agents/openai.yaml +0 -0
- {tradingcodex-0.3.1 → tradingcodex-0.3.2}/workspace_templates/modules/repo-skills/files/.tradingcodex/subagents/skills/shared/forecasting-discipline/SKILL.md +0 -0
- {tradingcodex-0.3.1 → tradingcodex-0.3.2}/workspace_templates/modules/repo-skills/files/.tradingcodex/subagents/skills/shared/forecasting-discipline/agents/openai.yaml +0 -0
- {tradingcodex-0.3.1 → tradingcodex-0.3.2}/workspace_templates/modules/repo-skills/files/.tradingcodex/subagents/skills/shared/numeric-data-qc/SKILL.md +0 -0
- {tradingcodex-0.3.1 → tradingcodex-0.3.2}/workspace_templates/modules/repo-skills/files/.tradingcodex/subagents/skills/shared/numeric-data-qc/agents/openai.yaml +0 -0
- {tradingcodex-0.3.1 → tradingcodex-0.3.2}/workspace_templates/modules/repo-skills/files/.tradingcodex/subagents/skills/shared/thesis-scenario-tree/SKILL.md +0 -0
- {tradingcodex-0.3.1 → tradingcodex-0.3.2}/workspace_templates/modules/repo-skills/files/.tradingcodex/subagents/skills/shared/thesis-scenario-tree/agents/openai.yaml +0 -0
- {tradingcodex-0.3.1 → tradingcodex-0.3.2}/workspace_templates/modules/repo-skills/files/.tradingcodex/subagents/skills/technical-analyst/technical-analysis/SKILL.md +0 -0
- {tradingcodex-0.3.1 → tradingcodex-0.3.2}/workspace_templates/modules/repo-skills/files/.tradingcodex/subagents/skills/technical-analyst/technical-analysis/agents/openai.yaml +0 -0
- {tradingcodex-0.3.1 → tradingcodex-0.3.2}/workspace_templates/modules/repo-skills/files/.tradingcodex/subagents/skills/valuation-analyst/valuation-review/SKILL.md +0 -0
- {tradingcodex-0.3.1 → tradingcodex-0.3.2}/workspace_templates/modules/repo-skills/files/.tradingcodex/subagents/skills/valuation-analyst/valuation-review/agents/openai.yaml +0 -0
- {tradingcodex-0.3.1 → tradingcodex-0.3.2}/workspace_templates/modules/repo-skills/module.json +0 -0
- {tradingcodex-0.3.1 → tradingcodex-0.3.2}/workspace_templates/modules/stub-execution/module.json +0 -0
- {tradingcodex-0.3.1 → tradingcodex-0.3.2}/workspace_templates/modules/tradingcodex-mcp/files/.tradingcodex/mcp/enforcer/README.md +0 -0
- {tradingcodex-0.3.1 → tradingcodex-0.3.2}/workspace_templates/modules/tradingcodex-mcp/files/.tradingcodex/mcp/gateway/README.md +0 -0
- {tradingcodex-0.3.1 → tradingcodex-0.3.2}/workspace_templates/modules/tradingcodex-mcp/files/.tradingcodex/mcp/server.py +0 -0
- {tradingcodex-0.3.1 → tradingcodex-0.3.2}/workspace_templates/modules/tradingcodex-mcp/module.json +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: tradingcodex
|
|
3
|
-
Version: 0.3.
|
|
3
|
+
Version: 0.3.2
|
|
4
4
|
Summary: Agentic investment workflow harness for Codex-native research and service-gated execution checks.
|
|
5
5
|
Author: TradingCodex Authors
|
|
6
6
|
License-Expression: Apache-2.0
|
|
@@ -229,7 +229,7 @@ provide investment recommendations or guarantee returns.
|
|
|
229
229
|
| Status | Milestone |
|
|
230
230
|
| --- | --- |
|
|
231
231
|
| 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. |
|
|
232
|
-
| Current `0.3.
|
|
232
|
+
| Current `0.3.2` | Brief research chat replies with saved head-manager synthesis reports, Codex-native Decision Packages, independent judgment-review gate, staged workflow planning, artifact-supervisor loop closure state, Evidence Run/Validation Cards, provider capability profiles, and Python `>=3.11,<3.15` support. |
|
|
233
233
|
| Next | Deeper validation scenarios, richer provider capability profiles, stronger generated-workspace smoke coverage, and improved artifact quality tooling. |
|
|
234
234
|
| Future | Separately governed verified adapters, hosted/managed services, enterprise policy/compliance packs, and broker-specific live providers only after explicit product, policy, adapter, and validation work. |
|
|
235
235
|
|
|
@@ -198,7 +198,7 @@ provide investment recommendations or guarantee returns.
|
|
|
198
198
|
| Status | Milestone |
|
|
199
199
|
| --- | --- |
|
|
200
200
|
| 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. |
|
|
201
|
-
| Current `0.3.
|
|
201
|
+
| Current `0.3.2` | Brief research chat replies with saved head-manager synthesis reports, Codex-native Decision Packages, independent judgment-review gate, staged workflow planning, artifact-supervisor loop closure state, Evidence Run/Validation Cards, provider capability profiles, and Python `>=3.11,<3.15` support. |
|
|
202
202
|
| Next | Deeper validation scenarios, richer provider capability profiles, stronger generated-workspace smoke coverage, and improved artifact quality tooling. |
|
|
203
203
|
| Future | Separately governed verified adapters, hosted/managed services, enterprise policy/compliance packs, and broker-specific live providers only after explicit product, policy, adapter, and validation work. |
|
|
204
204
|
|
|
@@ -96,6 +96,9 @@ subagents. Detailed responsibilities live in
|
|
|
96
96
|
Handoff states are `accepted`, `revise`, `blocked`, or `waiting`. Only accepted
|
|
97
97
|
artifacts move downstream. `head-manager` may synthesize accepted outputs and
|
|
98
98
|
conflicts, but must not repair missing specialist work with direct analysis.
|
|
99
|
+
When synthesis is allowed, the full user-facing synthesis should be saved as a
|
|
100
|
+
workspace Markdown report; the chat reply should stay brief and point to that
|
|
101
|
+
report.
|
|
99
102
|
|
|
100
103
|
## Execution Lifecycle Snapshot
|
|
101
104
|
|
|
@@ -149,7 +149,7 @@ python3.11 -m venv /tmp/tcx-testpypi
|
|
|
149
149
|
/tmp/tcx-testpypi/bin/pip install \
|
|
150
150
|
--index-url https://test.pypi.org/simple/ \
|
|
151
151
|
--extra-index-url https://pypi.org/simple/ \
|
|
152
|
-
tradingcodex==0.3.
|
|
152
|
+
tradingcodex==0.3.2
|
|
153
153
|
rm -rf /tmp/tcx-testpypi-smoke
|
|
154
154
|
mkdir -p /tmp/tcx-testpypi-smoke
|
|
155
155
|
cd /tmp/tcx-testpypi-smoke
|
|
@@ -178,7 +178,7 @@ After the PyPI workflow completes:
|
|
|
178
178
|
|
|
179
179
|
```bash
|
|
180
180
|
python3.11 -m venv /tmp/tcx-pypi
|
|
181
|
-
/tmp/tcx-pypi/bin/pip install tradingcodex==0.3.
|
|
181
|
+
/tmp/tcx-pypi/bin/pip install tradingcodex==0.3.2
|
|
182
182
|
rm -rf /tmp/tcx-pypi-smoke
|
|
183
183
|
mkdir -p /tmp/tcx-pypi-smoke
|
|
184
184
|
cd /tmp/tcx-pypi-smoke
|
|
@@ -277,7 +277,9 @@ Use PEP 440 versions:
|
|
|
277
277
|
updates after `0.2.10`
|
|
278
278
|
- `0.3.1` for compatible evidence-card validation and persisted loop closure
|
|
279
279
|
state fixes after `0.3.0`
|
|
280
|
-
-
|
|
280
|
+
- `0.3.2` for brief research chat replies with saved head-manager synthesis
|
|
281
|
+
reports after `0.3.1`
|
|
282
|
+
- later patch releases for compatible fixes after `0.3.2`
|
|
281
283
|
- pre-releases such as `0.4.0a1`, `0.4.0b1`, or `0.4.0rc1` when preparing
|
|
282
284
|
the next minor contract
|
|
283
285
|
|
|
@@ -101,7 +101,7 @@ Generated workspaces contain:
|
|
|
101
101
|
- an immutable workspace manifest at `.tradingcodex/workspace.json`
|
|
102
102
|
- root `head-manager` identity loaded from `.codex/prompts/base_instructions/head-manager.md` through `.codex/config.toml` `model_instructions_file`
|
|
103
103
|
- sectioned Markdown base-instruction format for `head-manager`, including `# How you work`, TradingCodex guardrails, and tool guidelines
|
|
104
|
-
- Codex-style operating style in the root `head-manager` prompt: scoped `AGENTS.md` handling, concise preambles, selective planning, `rg`-first search, `apply_patch` edits, focused validation, dirty-worktree respect, and
|
|
104
|
+
- Codex-style operating style in the root `head-manager` prompt: scoped `AGENTS.md` handling, concise preambles, selective planning, `rg`-first search, `apply_patch` edits, focused validation, dirty-worktree respect, concise maintenance handoffs, and brief chat replies that point to saved head-manager synthesis reports once accepted artifacts exist
|
|
105
105
|
- instruction/skill separation: root `head-manager` instructions own identity, durable safety boundaries, fail-closed dispatch, role boundaries, skill routing, optional-skill management, and approved action boundaries; fixed subagent TOML files own standing role identity, MCP/tool config, artifact walls, and always-on prohibitions; repo skills are dependency-light capability procedures for workflow maps, compact assignment-envelope templates, optional skill file management, quality gates, synthesis, and postmortems, without declaring role ownership or direct inter-skill call chains
|
|
106
106
|
- no-overlap handoff contract: each role owns its specialist question, downstream roles consume accepted artifacts, and missing/stale/weak upstream work returns `revise`, `blocked`, or `waiting` instead of being silently redone by another role
|
|
107
107
|
- validated staged workflow plan: hook intake hints are not binding; `$tcx-workflow`
|
|
@@ -266,5 +266,7 @@ Research file writes should be deterministic enough for review:
|
|
|
266
266
|
- include content hash
|
|
267
267
|
- avoid raw secrets
|
|
268
268
|
- use stable paths for role-owned reports
|
|
269
|
+
- save head-manager final synthesis reports as
|
|
270
|
+
`trading/reports/head-manager/synthesis-<workflow_run_id>.md`
|
|
269
271
|
- make stale/missing source warnings visible
|
|
270
272
|
- keep file content readable by Codex without a DB lookup
|
|
@@ -156,7 +156,11 @@ For repository, CLI, Django, MCP, template, docs, test, and harness maintenance
|
|
|
156
156
|
work, `head-manager` follows the default Codex coding-agent style: concise
|
|
157
157
|
preambles before grouped tool work, plans only for meaningful multi-step tasks,
|
|
158
158
|
`rg`-first search, `apply_patch` for manual edits, focused validation before
|
|
159
|
-
broader checks, respect for dirty worktrees, and concise
|
|
159
|
+
broader checks, respect for dirty worktrees, and concise maintenance handoffs.
|
|
160
|
+
Investment synthesis stores depth in a workspace Markdown report: after
|
|
161
|
+
accepted artifacts exist, `head-manager` should save the full synthesis under
|
|
162
|
+
`trading/reports/head-manager/` and keep the chat reply brief with the report
|
|
163
|
+
path, 1-3 key takeaways, and next allowed action.
|
|
160
164
|
|
|
161
165
|
This operating style is a working discipline, not an investment permission.
|
|
162
166
|
It does not weaken the dispatch gate, role-owned skill boundary, approved action
|
|
@@ -166,8 +170,8 @@ boundary, approval requirements, or information barriers.
|
|
|
166
170
|
|
|
167
171
|
| Situation | Allowed response | Forbidden response |
|
|
168
172
|
| --- | --- | --- |
|
|
169
|
-
| Broad analysis such as "Analyze Apple stock" | auto-dispatch or reuse selected subagents, then wait for outputs before synthesis | Direct business/price/news/recommendation analysis |
|
|
170
|
-
| Explicit workflow request such as "$tcx-workflow analyze Apple" | Spawn selected team or reuse active/completed roles, wait for outputs, then
|
|
173
|
+
| Broad analysis such as "Analyze Apple stock" | auto-dispatch or reuse selected subagents, then wait for outputs before saving a head-manager synthesis report and returning a brief chat summary | Direct business/price/news/recommendation analysis |
|
|
174
|
+
| Explicit workflow request such as "$tcx-workflow analyze Apple" | Spawn selected team or reuse active/completed roles, wait for outputs, then save a synthesis report and return its path with a brief summary | Analyze without dispatch |
|
|
171
175
|
| Broker/provider build request | Check full-access plus TCX build mode, connect/scaffold/register/validate provider metadata through `$tcx-build`, and keep live submission inside service gates | Dispatch investment subagents, ask for raw secrets, or expose raw broker SDK tools |
|
|
172
176
|
| Decision support such as "Should I buy?" | Dispatch analyst/valuation/portfolio/risk team and explain required artifacts/gates | Offer buy/sell opinion without subagent output |
|
|
173
177
|
| Dispatch unavailable, role routing unverified, or dispatch failed | Provide `waiting_for_subagent_dispatch` state and task briefs only | Switch to "I will analyze it myself" |
|
|
@@ -388,6 +392,10 @@ posture, or core skill behavior.
|
|
|
388
392
|
- Downstream roles start from artifact path plus `context_summary`; they open
|
|
389
393
|
full markdown only for disputed, stale, missing, or load-bearing evidence.
|
|
390
394
|
- The head-manager should tell subagents to write reader-facing research artifacts in the user's language from the original request unless the user explicitly requests another artifact language. File paths, frontmatter keys, symbols, tickers, source names, and quoted source text stay in their natural/original form.
|
|
395
|
+
- Once accepted artifacts exist, head-manager final synthesis should be saved
|
|
396
|
+
as `trading/reports/head-manager/synthesis-<workflow_run_id>.md` through the
|
|
397
|
+
research artifact path. The chat reply should stay brief and point to that
|
|
398
|
+
report instead of pasting the full synthesis.
|
|
391
399
|
- `plan-workflow` mandates and `automate-workflow` automation summaries follow the same user-language rule.
|
|
392
400
|
- When selecting an exact fixed role with Codex `spawn_agent`, do not combine `agent_type` with full-history forking. Use a compact assignment envelope on the first attempt and no model/reasoning overrides.
|
|
393
401
|
- Workflow consent stays separate from explicit user constraints. Consent to orchestrate or use subagents allows dispatch, but it is not itself an analytical constraint.
|
|
@@ -251,6 +251,9 @@ Scenarios should include:
|
|
|
251
251
|
- starter prompts and generated guidance expose the no-overlap handoff contract
|
|
252
252
|
- starter prompts and generated guidance tell subagents to write reader-facing
|
|
253
253
|
research artifacts in the user's language unless explicitly overridden
|
|
254
|
+
- starter prompts and generated guidance tell `head-manager` to keep final chat
|
|
255
|
+
brief while saving full accepted-artifact synthesis as a Markdown report under
|
|
256
|
+
`trading/reports/head-manager/`
|
|
254
257
|
- `tcx quality-check <artifact> --strict` fails research markdown that lacks
|
|
255
258
|
source/as-of posture, `context_summary`, material claim tags, handoff state,
|
|
256
259
|
confidence, missing-evidence fields, next-recipient routing, blocked actions,
|
|
@@ -4,7 +4,7 @@ build-backend = "setuptools.build_meta"
|
|
|
4
4
|
|
|
5
5
|
[project]
|
|
6
6
|
name = "tradingcodex"
|
|
7
|
-
version = "0.3.
|
|
7
|
+
version = "0.3.2"
|
|
8
8
|
description = "Agentic investment workflow harness for Codex-native research and service-gated execution checks."
|
|
9
9
|
readme = "README.md"
|
|
10
10
|
requires-python = ">=3.11,<3.15"
|
|
@@ -1749,7 +1749,9 @@ def test_starter_prompt_keeps_negated_actions_out_of_execution() -> None:
|
|
|
1749
1749
|
assert "Context budget:" in macro
|
|
1750
1750
|
assert "context_summary" in macro
|
|
1751
1751
|
assert "reader_summary, next_action" in macro
|
|
1752
|
-
assert "Reader mode:
|
|
1752
|
+
assert "Reader mode: keep final chat brief" in macro
|
|
1753
|
+
assert "create_research_artifact at `trading/reports/head-manager/synthesis-<workflow_run_id>.md`" in macro
|
|
1754
|
+
assert "final user-facing synthesis should be deep enough" not in macro
|
|
1753
1755
|
assert "Artifact memory:" in macro
|
|
1754
1756
|
assert "improvements for future judgment" in macro
|
|
1755
1757
|
assert "Do not let downstream roles redo missing upstream work" in macro
|
|
@@ -2381,7 +2383,8 @@ def test_subagents_prompt_cli_and_api_expose_intake_summary(tmp_path: Path, monk
|
|
|
2381
2383
|
for agent in cli_json["intake_summary"]["subagents"]
|
|
2382
2384
|
if agent["role"] == "valuation-analyst"
|
|
2383
2385
|
)
|
|
2384
|
-
assert "Reader mode:
|
|
2386
|
+
assert "Reader mode: keep final chat brief" in cli_json["starter_prompt"]
|
|
2387
|
+
assert "synthesis-<workflow_run_id>" in cli_json["starter_prompt"]
|
|
2385
2388
|
assert "Investor profile questions to ask if unanswered" in cli_json["starter_prompt"]
|
|
2386
2389
|
assert "Method lenses for this lane" in cli_json["starter_prompt"]
|
|
2387
2390
|
|
|
@@ -4705,6 +4708,83 @@ def test_file_native_research_artifacts_via_mcp_api_and_cli(tmp_path: Path) -> N
|
|
|
4705
4708
|
assert strict_quality["frontmatter"]["reader_summary"].startswith("Plain-English first read")
|
|
4706
4709
|
assert strict_quality["frontmatter"]["next_action"] == "Wait for valuation before any portfolio fit discussion."
|
|
4707
4710
|
assert not any("non-expert first-read UX" in warning for warning in strict_quality["warnings"])
|
|
4711
|
+
synthesis = call_mcp_tool(workspace, "create_research_artifact", {
|
|
4712
|
+
"principal_id": "head-manager",
|
|
4713
|
+
"artifact_id": "synthesis-workflow-unit",
|
|
4714
|
+
"artifact_type": "synthesis_report",
|
|
4715
|
+
"universe": "public_equity",
|
|
4716
|
+
"workflow_type": "thesis_review",
|
|
4717
|
+
"symbol": "NVDA",
|
|
4718
|
+
"role": "head-manager",
|
|
4719
|
+
"title": "NVDA Head-Manager Synthesis",
|
|
4720
|
+
"markdown": """---
|
|
4721
|
+
workflow_lane: thesis_review
|
|
4722
|
+
forecast_allowed: false
|
|
4723
|
+
scenario_cases:
|
|
4724
|
+
- base case remains unmodeled in this synthesis smoke
|
|
4725
|
+
contrary_evidence:
|
|
4726
|
+
- accepted artifacts still have one unresolved source freshness gap
|
|
4727
|
+
source_trust_notes:
|
|
4728
|
+
- source posture comes from accepted role artifacts
|
|
4729
|
+
update_triggers:
|
|
4730
|
+
- new accepted role artifact changes the thesis
|
|
4731
|
+
invalidation_conditions:
|
|
4732
|
+
- accepted role artifact contradicts the synthesis
|
|
4733
|
+
---
|
|
4734
|
+
|
|
4735
|
+
# NVDA Head-Manager Synthesis
|
|
4736
|
+
|
|
4737
|
+
## Direct Answer
|
|
4738
|
+
|
|
4739
|
+
[inference] Accepted artifacts are sufficient for a research synthesis smoke, not for an order.
|
|
4740
|
+
|
|
4741
|
+
## Accepted Artifact Inputs
|
|
4742
|
+
|
|
4743
|
+
[factual] Input artifacts are referenced by path in frontmatter and body.
|
|
4744
|
+
|
|
4745
|
+
## Synthesis
|
|
4746
|
+
|
|
4747
|
+
[inference] The combined read remains research-only.
|
|
4748
|
+
|
|
4749
|
+
## Disagreements/Conflicts
|
|
4750
|
+
|
|
4751
|
+
[factual] One freshness gap remains visible.
|
|
4752
|
+
|
|
4753
|
+
## Source/As-Of Posture
|
|
4754
|
+
|
|
4755
|
+
[factual] Source posture is inherited from accepted role artifacts.
|
|
4756
|
+
|
|
4757
|
+
## Missing Evidence
|
|
4758
|
+
|
|
4759
|
+
[factual] Updated filing snapshot remains missing.
|
|
4760
|
+
|
|
4761
|
+
## Caveats
|
|
4762
|
+
|
|
4763
|
+
[assumption] No valuation, order, approval, or execution is implied.
|
|
4764
|
+
|
|
4765
|
+
## Next Allowed Action
|
|
4766
|
+
|
|
4767
|
+
[factual] User can inspect the saved synthesis report.
|
|
4768
|
+
""",
|
|
4769
|
+
"source_as_of": "2026-06-01",
|
|
4770
|
+
"readiness_label": "not-decision-ready",
|
|
4771
|
+
"context_summary": "Head-manager synthesis report saved for user inspection.",
|
|
4772
|
+
"reader_summary": "Brief chat should point to this saved synthesis report.",
|
|
4773
|
+
"handoff_state": "accepted",
|
|
4774
|
+
"confidence": "medium",
|
|
4775
|
+
"missing_evidence": ["updated filing snapshot"],
|
|
4776
|
+
"next_recipient": "user",
|
|
4777
|
+
"next_action": "Inspect the saved synthesis report.",
|
|
4778
|
+
"blocked_actions": ["order_drafting", "approval", "execution"],
|
|
4779
|
+
"source_snapshot_ids": ["unit-test-filing"],
|
|
4780
|
+
"created_by": "head-manager",
|
|
4781
|
+
"export_path": "trading/reports/head-manager/synthesis-workflow-unit.md",
|
|
4782
|
+
})
|
|
4783
|
+
assert synthesis["export_path"] == "trading/reports/head-manager/synthesis-workflow-unit.md"
|
|
4784
|
+
synthesis_quality = json.loads(run(["./tcx", "quality-check", synthesis["export_path"], "--strict"], workspace).stdout)
|
|
4785
|
+
assert synthesis_quality["status"] == "pass"
|
|
4786
|
+
assert synthesis_quality["frontmatter"]["artifact_type"] == "synthesis_report"
|
|
4787
|
+
assert synthesis_quality["frontmatter"]["role"] == "head-manager"
|
|
4708
4788
|
run_card = create_evidence_run_card(workspace, {
|
|
4709
4789
|
"related_artifact_path": stored["export_path"],
|
|
4710
4790
|
"config_hash": "unit-config-hash",
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: tradingcodex
|
|
3
|
-
Version: 0.3.
|
|
3
|
+
Version: 0.3.2
|
|
4
4
|
Summary: Agentic investment workflow harness for Codex-native research and service-gated execution checks.
|
|
5
5
|
Author: TradingCodex Authors
|
|
6
6
|
License-Expression: Apache-2.0
|
|
@@ -229,7 +229,7 @@ provide investment recommendations or guarantee returns.
|
|
|
229
229
|
| Status | Milestone |
|
|
230
230
|
| --- | --- |
|
|
231
231
|
| 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. |
|
|
232
|
-
| Current `0.3.
|
|
232
|
+
| Current `0.3.2` | Brief research chat replies with saved head-manager synthesis reports, Codex-native Decision Packages, independent judgment-review gate, staged workflow planning, artifact-supervisor loop closure state, Evidence Run/Validation Cards, provider capability profiles, and Python `>=3.11,<3.15` support. |
|
|
233
233
|
| Next | Deeper validation scenarios, richer provider capability profiles, stronger generated-workspace smoke coverage, and improved artifact quality tooling. |
|
|
234
234
|
| Future | Separately governed verified adapters, hosted/managed services, enterprise policy/compliance packs, and broker-specific live providers only after explicit product, policy, adapter, and validation work. |
|
|
235
235
|
|
|
@@ -790,14 +790,20 @@ def build_subagent_starter_prompt(request: str, workspace_root: Path | str | Non
|
|
|
790
790
|
artifact_memory_instruction = "Artifact memory: write approved-action artifacts in the requested artifact language with context_summary, reader_summary, next_action, ticket, approval, policy, duplicate-request, connection, and audit references, plus blocked or rejected reasons."
|
|
791
791
|
quality_instruction = "Approved Action Spine: preserve constraints and negations; require ticket_id, approval_receipt_id, policy_state, duplicate_request_status, connection_status, audit_reference, handoff_state, next_recipient, and blocked_actions in role artifacts."
|
|
792
792
|
handoff_instruction = "Require each role handoff to include artifact path, reader summary, next action, handoff state, ticket/approval/policy/audit references, readiness or rejection reason, next eligible recipient, and blocked actions."
|
|
793
|
+
reader_mode_instruction = "Reader mode: keep final chat brief: approved-action status, artifact path when one exists, blockers or rejection reason, and next allowed action. Do not paste full status evidence into chat unless the user explicitly asks."
|
|
794
|
+
synthesis_instruction = "Wait for all recorded-plan stages, then return a brief approved-action status with artifact paths, handoff states, service-gate evidence summary, rejected or blocked reasons, and next allowed action."
|
|
793
795
|
elif lane == "research_only" and not flags.get("decision_quality_required"):
|
|
794
796
|
artifact_memory_instruction = "Artifact memory: write artifacts in the requested artifact language with context_summary, reader_summary, next_action, source snapshots, missing-evidence notes, and improvements for future judgment."
|
|
795
797
|
quality_instruction = "Evidence Quality Floor: preserve constraints and negations; require source_as_of, confidence, missing_evidence, source_snapshot_ids, next_recipient, and blocked_actions in role artifacts."
|
|
796
798
|
handoff_instruction = "Require each role handoff to include artifact path, reader summary, next action, handoff state, source/as-of posture, confidence, missing evidence, next eligible recipient, and blocked actions."
|
|
799
|
+
reader_mode_instruction = "Reader mode: keep final chat brief: synthesis status, saved report path, 1-3 key takeaways, and next allowed action. Do not paste the full synthesis into chat unless the user explicitly asks."
|
|
800
|
+
synthesis_instruction = "Wait for all recorded-plan stages, then create a Markdown synthesis report through create_research_artifact at `trading/reports/head-manager/synthesis-<workflow_run_id>.md` with artifact_id `synthesis-<workflow_run_id>`, artifact_type `synthesis_report`, role and created_by `head-manager`, required research frontmatter, and sections for direct answer, accepted artifact inputs, synthesis, disagreements/conflicts, source/as-of posture, missing evidence, caveats, and next allowed action. Reply briefly with the report path, 1-3 takeaways, and next allowed action."
|
|
797
801
|
else:
|
|
798
802
|
artifact_memory_instruction = "Artifact memory: write artifacts in the requested artifact language with context_summary, reader_summary, next_action, source snapshots, missing-evidence notes, and improvements for future judgment."
|
|
799
803
|
quality_instruction = "Decision Quality Spine: preserve constraints and negations; require evidence_grade, source_freshness, source_quality, source_trust_notes, conflict_status, decision_readiness, confidence, missing_evidence, next_recipient, and blocked_actions in role artifacts."
|
|
800
804
|
handoff_instruction = "Require each role handoff to include artifact path, reader summary, next action, handoff state, source/as-of posture, confidence, missing evidence, readiness/support gaps, next eligible recipient, and blocked actions."
|
|
805
|
+
reader_mode_instruction = "Reader mode: keep final chat brief: synthesis status, saved report path, 1-3 key takeaways, and next allowed action. Do not paste the full synthesis into chat unless the user explicitly asks."
|
|
806
|
+
synthesis_instruction = "Wait for all recorded-plan stages, then create a Markdown synthesis report through create_research_artifact at `trading/reports/head-manager/synthesis-<workflow_run_id>.md` with artifact_id `synthesis-<workflow_run_id>`, artifact_type `synthesis_report`, role and created_by `head-manager`, required research frontmatter, and sections for direct answer, accepted artifact inputs, synthesis, disagreements/conflicts, source/as-of posture, missing evidence, caveats, and next allowed action. Reply briefly with the report path, 1-3 takeaways, and next allowed action."
|
|
801
807
|
if not plan["subagents"]:
|
|
802
808
|
ops = no_subagent_lane_copy(plan)
|
|
803
809
|
return "\n".join([
|
|
@@ -832,7 +838,7 @@ def build_subagent_starter_prompt(request: str, workspace_root: Path | str | Non
|
|
|
832
838
|
"Use each role's exact `.codex/agents/*.toml` name as the runtime label.",
|
|
833
839
|
"Preserve the original user request and explicit constraints in every subagent brief.",
|
|
834
840
|
"Context budget: use artifact paths, context_summary, source/as-of metadata, and short deltas; do not paste full prior artifacts, source dumps, or unrelated chat history.",
|
|
835
|
-
|
|
841
|
+
reader_mode_instruction,
|
|
836
842
|
artifact_memory_instruction,
|
|
837
843
|
quality_instruction,
|
|
838
844
|
review_instruction,
|
|
@@ -850,7 +856,7 @@ def build_subagent_starter_prompt(request: str, workspace_root: Path | str | Non
|
|
|
850
856
|
handoff_instruction,
|
|
851
857
|
"Use handoff states: accepted, revise, blocked, waiting.",
|
|
852
858
|
"Do not let downstream roles redo missing upstream work; request revision from the owning role or stop with waiting/blocked status.",
|
|
853
|
-
|
|
859
|
+
synthesis_instruction,
|
|
854
860
|
f"Blocked actions before artifacts: {', '.join(plan['blockedActions'])}",
|
|
855
861
|
]
|
|
856
862
|
if flags.get("forecast_contract_required"):
|
|
@@ -1541,7 +1547,7 @@ def _synthesis_stage() -> dict[str, Any]:
|
|
|
1541
1547
|
"key": "synthesis",
|
|
1542
1548
|
"label": "Synthesis",
|
|
1543
1549
|
"owner": "head-manager",
|
|
1544
|
-
"summary": "
|
|
1550
|
+
"summary": "Save the accepted-artifact synthesis as a head-manager Markdown report, then return a brief chat summary with the report path and next allowed action.",
|
|
1545
1551
|
"exit_criteria": ["accepted artifacts cited", "uncertainties preserved", "next allowed action stated"],
|
|
1546
1552
|
"roles": ["head-manager"],
|
|
1547
1553
|
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
TRADINGCODEX_VERSION = "0.3.2"
|
|
@@ -114,6 +114,16 @@ In investment workflows, you are coordinator and synthesizer, not the analyst.
|
|
|
114
114
|
uncertainty, forecast permission or block reasons, investor-profile gaps,
|
|
115
115
|
anti-overfit gaps, and blocked actions instead of smoothing them into false
|
|
116
116
|
readiness.
|
|
117
|
+
- When synthesis is allowed, save the full synthesis as a Markdown research
|
|
118
|
+
artifact before replying. Use `create_research_artifact` with
|
|
119
|
+
`artifact_type=synthesis_report`, `artifact_id=synthesis-<workflow_run_id>`,
|
|
120
|
+
`role=head-manager`, `created_by=head-manager`, and
|
|
121
|
+
`export_path=trading/reports/head-manager/synthesis-<workflow_run_id>.md`.
|
|
122
|
+
The report body should include direct answer, accepted artifact inputs,
|
|
123
|
+
synthesis, disagreements/conflicts, source/as-of posture, missing evidence,
|
|
124
|
+
caveats, and next allowed action. The chat reply should stay brief: synthesis
|
|
125
|
+
status, report path, 1-3 key takeaways, and next allowed action. Do not paste
|
|
126
|
+
the full synthesis into chat unless the user explicitly asks.
|
|
117
127
|
|
|
118
128
|
Fixed investment roles are:
|
|
119
129
|
|
|
@@ -18,7 +18,7 @@ Use this skill when a user asks for investment analysis, decision support, portf
|
|
|
18
18
|
7. Use the Artifact Supervisor Loop after artifact intake: evaluate artifacts, then choose `revise_same_role`, `follow_up_existing_team`, `challenge_conflict`, `downstream_handoff`, `lane_escalation_proposal`, `blocked`, `waiting`, or `synthesize`.
|
|
19
19
|
8. Use `./tcx subagents loop --artifact <path>` to preview closed planner actions from artifacts when helpful. Queue means a compact pending task and delta brief; hooks do not recursively spawn subagents.
|
|
20
20
|
9. Require the Decision Quality Spine fields described in `references/decision-quality-spine.md` when they are in scope.
|
|
21
|
-
10. Synthesize only accepted artifacts
|
|
21
|
+
10. Synthesize only accepted artifacts. When synthesis is allowed, save the full synthesis through `create_research_artifact` using the synthesis report path and `artifact_type=synthesis_report` supplied by the starter prompt, then keep the chat reply brief: report path, 1-3 key takeaways, and next allowed action; stop with `waiting`, `revise`, `blocked`, or `lane_escalation_proposal` when quality gates fail.
|
|
22
22
|
|
|
23
23
|
## Hard Stops
|
|
24
24
|
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
TRADINGCODEX_VERSION = "0.3.1"
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
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
|