43 lines
1.8 KiB
TOML
43 lines
1.8 KiB
TOML
[project]
|
|
name = "portfolio-optimiser"
|
|
version = "0.1.0"
|
|
description = "Generic framework on Microsoft Agent Framework for per-project cost-savings optimization"
|
|
readme = "README.md"
|
|
requires-python = ">=3.10"
|
|
dependencies = [
|
|
# MAF — GA-pakker, IKKE meta-pakken `agent-framework`. Metaen drar `agent-framework-core[all]`,
|
|
# og `[all]` trekker inn de fortsatt-beta integrasjonene (azure-ai-search/cosmos/ollama/…) som
|
|
# tvinger pre-releases og drar med en ALPHA pydantic. Offisiell guide: installer kun det du trenger.
|
|
# Beta-integrasjoner legges til per-fase (med snevert pre-release-scope) når de faktisk trengs.
|
|
"agent-framework-core>=1.9.0", # kjerne (GA)
|
|
"agent-framework-foundry>=1.8.2", # Azure/Foundry-profil: FoundryChatClient (GA)
|
|
"agent-framework-openai>=1.8.2", # OpenAI + OpenAI-kompatible lokale endpoints (GA) → lokal profil
|
|
"pydantic>=2.11,<3", # IR/validering (B1) — eksplisitt pin til STABIL 2.x, aldri alpha
|
|
]
|
|
|
|
[project.optional-dependencies]
|
|
dev = [
|
|
"pytest>=8",
|
|
"ruff>=0.6",
|
|
"mypy>=1.11",
|
|
# Fase 1 throwaway de-risk spikes (dev-only — NEVER shipped in the wheel; safe to delete).
|
|
"agent-framework-orchestrations>=1.0.0", # GA orchestration builders (GroupChat/Concurrent/Magentic); resolves with core 1.9.0
|
|
"pulp>=2.8", # Spike C solver — PuLP bundles a CBC binary in its wheel (R2)
|
|
"pytest-asyncio>=0.24", # MAF orchestrations are async (await workflow.run(...))
|
|
]
|
|
|
|
[build-system]
|
|
requires = ["hatchling"]
|
|
build-backend = "hatchling.build"
|
|
|
|
[tool.hatch.build.targets.wheel]
|
|
packages = ["src/portfolio_optimiser"]
|
|
|
|
[tool.ruff]
|
|
line-length = 100
|
|
src = ["src", "tests", "spikes"]
|
|
|
|
[tool.pytest.ini_options]
|
|
pythonpath = ["src", "."]
|
|
testpaths = ["tests"]
|
|
asyncio_mode = "auto"
|