Add ProofLine criteria documentation and Strategy Catalog v1 implementation
- Add acceptance criteria documentation (AC-0013 through AC-0023) - Add Line-0003 discovery documentation - Implement Strategy Catalog v1 with new database migration - Update portfolio API endpoints and schemas - Refactor strategy and portfolio services - Add strategy management CLI commands - Update domain models with strategy catalog support - Add comprehensive tests for v1 strategies - Update design documentation (data model, interfaces, runtime flows)
This commit is contained in:
@@ -0,0 +1,9 @@
|
||||
"""Shared strategy-catalog domain errors used across API, service, and persistence layers."""
|
||||
|
||||
|
||||
class StrategyNotFoundError(ValueError):
|
||||
"""Raised when a referenced strategy ID does not exist."""
|
||||
|
||||
|
||||
class StrategyInactiveError(ValueError):
|
||||
"""Raised when a new portfolio selection targets an inactive strategy."""
|
||||
@@ -46,7 +46,10 @@ class StrategySet:
|
||||
name: str
|
||||
config: str
|
||||
nick: str
|
||||
status: str = "active"
|
||||
revision: int = 1
|
||||
created_at: datetime | None = None
|
||||
updated_at: datetime | None = None
|
||||
|
||||
|
||||
@dataclass
|
||||
@@ -118,6 +121,7 @@ class Portfolio:
|
||||
active_strategy_id: str | None = None
|
||||
strategy_name: str | None = None # REQ-055: strategy_sets.name JOIN 결과
|
||||
strategy_params: dict[str, Any] = field(default_factory=dict) # REQ-055: strategy_sets.config 파싱 결과
|
||||
strategy_revision: int | None = None
|
||||
markets: list[str] = field(default_factory=list) # REQ-055: assets.markets JOIN 결과
|
||||
avabile_strategies: list[str] | None = None
|
||||
created_at: datetime | None = None
|
||||
|
||||
Reference in New Issue
Block a user