TradingAgents/.claude/lib
Andrew Kaszubski 6642047eaa feat(portfolio): add Portfolio State for holdings and mark-to-market - Issue #29 (68 tests)
Implements comprehensive portfolio state management:
- Holding dataclass with long/short support and P&L calculations
- CashBalance for multi-currency cash management
- PortfolioState class with:
  - Real-time mark-to-market valuation
  - Multi-currency support with exchange rate conversion
  - Thread-safe state updates
  - Position tracking with average cost calculation
  - Portfolio snapshots for historical tracking
- PriceProvider and ExchangeRateProvider protocols
- Serialization/deserialization support

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2025-12-26 21:37:17 +11:00
..
__init__.py feat(portfolio): add Portfolio State for holdings and mark-to-market - Issue #29 (68 tests) 2025-12-26 21:37:17 +11:00
acceptance_criteria_parser.py feat(portfolio): add Portfolio State for holdings and mark-to-market - Issue #29 (68 tests) 2025-12-26 21:37:17 +11:00
agent_invoker.py feat(portfolio): add Portfolio State for holdings and mark-to-market - Issue #29 (68 tests) 2025-12-26 21:37:17 +11:00
agent_tracker.py feat(portfolio): add Portfolio State for holdings and mark-to-market - Issue #29 (68 tests) 2025-12-26 21:37:17 +11:00
alignment_assessor.py feat(portfolio): add Portfolio State for holdings and mark-to-market - Issue #29 (68 tests) 2025-12-26 21:37:17 +11:00
alignment_fixer.py feat(portfolio): add Portfolio State for holdings and mark-to-market - Issue #29 (68 tests) 2025-12-26 21:37:17 +11:00
artifacts.py feat(portfolio): add Portfolio State for holdings and mark-to-market - Issue #29 (68 tests) 2025-12-26 21:37:17 +11:00
auto_approval_consent.py feat(portfolio): add Portfolio State for holdings and mark-to-market - Issue #29 (68 tests) 2025-12-26 21:37:17 +11:00
auto_approval_engine.py feat(portfolio): add Portfolio State for holdings and mark-to-market - Issue #29 (68 tests) 2025-12-26 21:37:17 +11:00
auto_implement_git_integration.py feat(portfolio): add Portfolio State for holdings and mark-to-market - Issue #29 (68 tests) 2025-12-26 21:37:17 +11:00
batch_retry_consent.py feat(portfolio): add Portfolio State for holdings and mark-to-market - Issue #29 (68 tests) 2025-12-26 21:37:17 +11:00
batch_retry_manager.py feat(portfolio): add Portfolio State for holdings and mark-to-market - Issue #29 (68 tests) 2025-12-26 21:37:17 +11:00
batch_state_manager.py feat(portfolio): add Portfolio State for holdings and mark-to-market - Issue #29 (68 tests) 2025-12-26 21:37:17 +11:00
brownfield_retrofit.py feat(portfolio): add Portfolio State for holdings and mark-to-market - Issue #29 (68 tests) 2025-12-26 21:37:17 +11:00
checkpoint.py feat(portfolio): add Portfolio State for holdings and mark-to-market - Issue #29 (68 tests) 2025-12-26 21:37:17 +11:00
codebase_analyzer.py feat(portfolio): add Portfolio State for holdings and mark-to-market - Issue #29 (68 tests) 2025-12-26 21:37:17 +11:00
context_skill_injector.py feat(portfolio): add Portfolio State for holdings and mark-to-market - Issue #29 (68 tests) 2025-12-26 21:37:17 +11:00
copy_system.py feat(portfolio): add Portfolio State for holdings and mark-to-market - Issue #29 (68 tests) 2025-12-26 21:37:17 +11:00
error_analyzer.py feat(portfolio): add Portfolio State for holdings and mark-to-market - Issue #29 (68 tests) 2025-12-26 21:37:17 +11:00
error_messages.py feat(portfolio): add Portfolio State for holdings and mark-to-market - Issue #29 (68 tests) 2025-12-26 21:37:17 +11:00
failure_classifier.py feat(portfolio): add Portfolio State for holdings and mark-to-market - Issue #29 (68 tests) 2025-12-26 21:37:17 +11:00
feature_completion_detector.py feat(portfolio): add Portfolio State for holdings and mark-to-market - Issue #29 (68 tests) 2025-12-26 21:37:17 +11:00
feature_dependency_analyzer.py feat(portfolio): add Portfolio State for holdings and mark-to-market - Issue #29 (68 tests) 2025-12-26 21:37:17 +11:00
file_discovery.py feat(portfolio): add Portfolio State for holdings and mark-to-market - Issue #29 (68 tests) 2025-12-26 21:37:17 +11:00
first_run_warning.py feat(portfolio): add Portfolio State for holdings and mark-to-market - Issue #29 (68 tests) 2025-12-26 21:37:17 +11:00
genai_manifest_validator.py feat(portfolio): add Portfolio State for holdings and mark-to-market - Issue #29 (68 tests) 2025-12-26 21:37:17 +11:00
genai_validate.py feat(portfolio): add Portfolio State for holdings and mark-to-market - Issue #29 (68 tests) 2025-12-26 21:37:17 +11:00
git_hooks.py feat(portfolio): add Portfolio State for holdings and mark-to-market - Issue #29 (68 tests) 2025-12-26 21:37:17 +11:00
git_operations.py feat(portfolio): add Portfolio State for holdings and mark-to-market - Issue #29 (68 tests) 2025-12-26 21:37:17 +11:00
github_issue_closer.py feat(portfolio): add Portfolio State for holdings and mark-to-market - Issue #29 (68 tests) 2025-12-26 21:37:17 +11:00
github_issue_fetcher.py feat(portfolio): add Portfolio State for holdings and mark-to-market - Issue #29 (68 tests) 2025-12-26 21:37:17 +11:00
health_check.py feat(portfolio): add Portfolio State for holdings and mark-to-market - Issue #29 (68 tests) 2025-12-26 21:37:17 +11:00
hook_activator.py feat(portfolio): add Portfolio State for holdings and mark-to-market - Issue #29 (68 tests) 2025-12-26 21:37:17 +11:00
hybrid_validator.py feat(portfolio): add Portfolio State for holdings and mark-to-market - Issue #29 (68 tests) 2025-12-26 21:37:17 +11:00
install_audit.py feat(portfolio): add Portfolio State for holdings and mark-to-market - Issue #29 (68 tests) 2025-12-26 21:37:17 +11:00
install_orchestrator.py feat(portfolio): add Portfolio State for holdings and mark-to-market - Issue #29 (68 tests) 2025-12-26 21:37:17 +11:00
installation_analyzer.py feat(portfolio): add Portfolio State for holdings and mark-to-market - Issue #29 (68 tests) 2025-12-26 21:37:17 +11:00
installation_validator.py feat(portfolio): add Portfolio State for holdings and mark-to-market - Issue #29 (68 tests) 2025-12-26 21:37:17 +11:00
logging_utils.py feat(portfolio): add Portfolio State for holdings and mark-to-market - Issue #29 (68 tests) 2025-12-26 21:37:17 +11:00
math_utils.py feat(portfolio): add Portfolio State for holdings and mark-to-market - Issue #29 (68 tests) 2025-12-26 21:37:17 +11:00
mcp_permission_validator.py feat(portfolio): add Portfolio State for holdings and mark-to-market - Issue #29 (68 tests) 2025-12-26 21:37:17 +11:00
mcp_profile_manager.py feat(portfolio): add Portfolio State for holdings and mark-to-market - Issue #29 (68 tests) 2025-12-26 21:37:17 +11:00
mcp_server_detector.py feat(portfolio): add Portfolio State for holdings and mark-to-market - Issue #29 (68 tests) 2025-12-26 21:37:17 +11:00
migration_planner.py feat(portfolio): add Portfolio State for holdings and mark-to-market - Issue #29 (68 tests) 2025-12-26 21:37:17 +11:00
orchestrator.py feat(portfolio): add Portfolio State for holdings and mark-to-market - Issue #29 (68 tests) 2025-12-26 21:37:17 +11:00
orphan_file_cleaner.py feat(portfolio): add Portfolio State for holdings and mark-to-market - Issue #29 (68 tests) 2025-12-26 21:37:17 +11:00
path_utils.py feat(portfolio): add Portfolio State for holdings and mark-to-market - Issue #29 (68 tests) 2025-12-26 21:37:17 +11:00
performance_profiler.py feat(portfolio): add Portfolio State for holdings and mark-to-market - Issue #29 (68 tests) 2025-12-26 21:37:17 +11:00
permission_classifier.py feat(portfolio): add Portfolio State for holdings and mark-to-market - Issue #29 (68 tests) 2025-12-26 21:37:17 +11:00
plugin_updater.py feat(portfolio): add Portfolio State for holdings and mark-to-market - Issue #29 (68 tests) 2025-12-26 21:37:17 +11:00
pr_automation.py feat(portfolio): add Portfolio State for holdings and mark-to-market - Issue #29 (68 tests) 2025-12-26 21:37:17 +11:00
project_md_parser.py feat(portfolio): add Portfolio State for holdings and mark-to-market - Issue #29 (68 tests) 2025-12-26 21:37:17 +11:00
project_md_updater.py feat(portfolio): add Portfolio State for holdings and mark-to-market - Issue #29 (68 tests) 2025-12-26 21:37:17 +11:00
protected_file_detector.py feat(portfolio): add Portfolio State for holdings and mark-to-market - Issue #29 (68 tests) 2025-12-26 21:37:17 +11:00
retrofit_executor.py feat(portfolio): add Portfolio State for holdings and mark-to-market - Issue #29 (68 tests) 2025-12-26 21:37:17 +11:00
retrofit_verifier.py feat(portfolio): add Portfolio State for holdings and mark-to-market - Issue #29 (68 tests) 2025-12-26 21:37:17 +11:00
search_utils.py feat(portfolio): add Portfolio State for holdings and mark-to-market - Issue #29 (68 tests) 2025-12-26 21:37:17 +11:00
security_utils.py feat(portfolio): add Portfolio State for holdings and mark-to-market - Issue #29 (68 tests) 2025-12-26 21:37:17 +11:00
session_tracker.py feat(portfolio): add Portfolio State for holdings and mark-to-market - Issue #29 (68 tests) 2025-12-26 21:37:17 +11:00
settings_generator.py feat(portfolio): add Portfolio State for holdings and mark-to-market - Issue #29 (68 tests) 2025-12-26 21:37:17 +11:00
settings_merger.py feat(portfolio): add Portfolio State for holdings and mark-to-market - Issue #29 (68 tests) 2025-12-26 21:37:17 +11:00
skill_loader.py feat(portfolio): add Portfolio State for holdings and mark-to-market - Issue #29 (68 tests) 2025-12-26 21:37:17 +11:00
staging_manager.py feat(portfolio): add Portfolio State for holdings and mark-to-market - Issue #29 (68 tests) 2025-12-26 21:37:17 +11:00
sync_dispatcher.py feat(portfolio): add Portfolio State for holdings and mark-to-market - Issue #29 (68 tests) 2025-12-26 21:37:17 +11:00
sync_mode_detector.py feat(portfolio): add Portfolio State for holdings and mark-to-market - Issue #29 (68 tests) 2025-12-26 21:37:17 +11:00
sync_validator.py feat(portfolio): add Portfolio State for holdings and mark-to-market - Issue #29 (68 tests) 2025-12-26 21:37:17 +11:00
tech_debt_detector.py feat(portfolio): add Portfolio State for holdings and mark-to-market - Issue #29 (68 tests) 2025-12-26 21:37:17 +11:00
test_tier_organizer.py feat(portfolio): add Portfolio State for holdings and mark-to-market - Issue #29 (68 tests) 2025-12-26 21:37:17 +11:00
test_validator.py feat(portfolio): add Portfolio State for holdings and mark-to-market - Issue #29 (68 tests) 2025-12-26 21:37:17 +11:00
tool_approval_audit.py feat(portfolio): add Portfolio State for holdings and mark-to-market - Issue #29 (68 tests) 2025-12-26 21:37:17 +11:00
tool_validator.py feat(portfolio): add Portfolio State for holdings and mark-to-market - Issue #29 (68 tests) 2025-12-26 21:37:17 +11:00
uninstall_orchestrator.py feat(portfolio): add Portfolio State for holdings and mark-to-market - Issue #29 (68 tests) 2025-12-26 21:37:17 +11:00
update_plugin.py feat(portfolio): add Portfolio State for holdings and mark-to-market - Issue #29 (68 tests) 2025-12-26 21:37:17 +11:00
user_state_manager.py feat(portfolio): add Portfolio State for holdings and mark-to-market - Issue #29 (68 tests) 2025-12-26 21:37:17 +11:00
validate_documentation_parity.py feat(portfolio): add Portfolio State for holdings and mark-to-market - Issue #29 (68 tests) 2025-12-26 21:37:17 +11:00
validate_manifest_doc_alignment.py feat(portfolio): add Portfolio State for holdings and mark-to-market - Issue #29 (68 tests) 2025-12-26 21:37:17 +11:00
validate_marketplace_version.py feat(portfolio): add Portfolio State for holdings and mark-to-market - Issue #29 (68 tests) 2025-12-26 21:37:17 +11:00
validation.py feat(portfolio): add Portfolio State for holdings and mark-to-market - Issue #29 (68 tests) 2025-12-26 21:37:17 +11:00
version_detector.py feat(portfolio): add Portfolio State for holdings and mark-to-market - Issue #29 (68 tests) 2025-12-26 21:37:17 +11:00
workflow_coordinator.py feat(portfolio): add Portfolio State for holdings and mark-to-market - Issue #29 (68 tests) 2025-12-26 21:37:17 +11:00
workflow_tracker.py feat(portfolio): add Portfolio State for holdings and mark-to-market - Issue #29 (68 tests) 2025-12-26 21:37:17 +11:00