feat(workspace): setup uv workspace con 2 member (multi-swarm-core + strategy-crypto)

- Root pyproject.toml come workspace coordinator (no codice, dev deps + tool config)
- src/multi_swarm_core/pyproject.toml: package core con dipendenze (pandas, openai, pydantic, ...)
- src/strategy_crypto/pyproject.toml: package strategia con multi-swarm-core come workspace dep
- Aggiunte env var GA_DB_PATH, STRATEGY_CRYPTO_DB_PATH, DASHBOARD_ROOT_PATH in .env.example
- Patch Dockerfile (commento, label, healthcheck per workspace)
- .gitignore: aggiunto .omc/ + state/*.db generico
- Rigenerato uv.lock dal workspace

uv tree mostra:
  strategy-crypto v0.1.0
  ├── multi-swarm-core v0.1.0
  ├── nicegui v3.12.0
  └── ...

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
This commit is contained in:
Adriano Dal Pastro
2026-05-15 17:45:53 +00:00
parent b6539802e0
commit cd4c3131d9
21 changed files with 318 additions and 752 deletions
+25
View File
@@ -0,0 +1,25 @@
[project]
name = "multi-swarm-core"
version = "0.1.0"
description = "Multi-Swarm Coevolutive core: GA, genome, protocol, backtest, cerbero, data, llm, persistence"
authors = [{ name = "Adriano Dal Pastro", email = "adrianodalpastro@tielogic.com" }]
requires-python = ">=3.13"
dependencies = [
"pandas>=2.2",
"numpy>=2.1",
"scipy>=1.14",
"pydantic>=2.9",
"pydantic-settings>=2.6",
"sqlmodel>=0.0.22",
"openai>=1.55",
"httpx>=0.28",
"requests>=2.32",
"tenacity>=9.0",
"pyyaml>=6.0",
"pyarrow>=18.0",
"yfinance>=1.3.0",
]
[build-system]
requires = ["hatchling"]
build-backend = "hatchling.build"
+20
View File
@@ -0,0 +1,20 @@
[project]
name = "strategy-crypto"
version = "0.1.0"
description = "Strategy crypto: paper-trading runner + NiceGUI dashboard, consuma multi-swarm-core"
authors = [{ name = "Adriano Dal Pastro", email = "adrianodalpastro@tielogic.com" }]
requires-python = ">=3.13"
dependencies = [
"multi-swarm-core",
"nicegui>=3.11.1",
"plotly>=5.24",
"pandas>=2.2",
"pyarrow>=18.0",
]
[build-system]
requires = ["hatchling"]
build-backend = "hatchling.build"
[tool.hatch.build.targets.wheel.force-include]
"strategy_crypto/strategies" = "strategy_crypto/strategies"