major-domo-v2/commands/transactions
Cal Corum 03dd449551
All checks were successful
Build Docker Image / build (pull_request) Successful in 57s
fix: split read-only data volume to allow state file writes (#85)
The data/ volume was mounted :ro to protect Google Sheets credentials,
but this also prevented all state trackers from persisting JSON files
(scorecards, voice channels, trade channels, soak data), causing silent
save failures and stale data accumulating across restarts.

- Mount only the credentials file as :ro (file-level mount)
- Add a separate :rw storage/ volume for runtime state files
- Move all tracker default paths from data/ to storage/
- Add STATE_HOST_PATH env var (defaults to ./storage)
- Update SHEETS_CREDENTIALS_HOST_PATH semantics: now a file path
  (e.g. ./data/major-domo-service-creds.json) instead of a directory
- Add storage/ to .gitignore

Closes #85

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-03-17 13:34:43 -05:00
..
__init__.py fix: remove 226 unused imports across the codebase (closes #33) 2026-02-20 11:35:04 -06:00
CLAUDE.md Update transaction docs for trade acceptance workflow 2025-12-04 13:57:17 -06:00
DESIGN.md Transactions cog in place 2025-09-24 09:32:04 -05:00
dropadd.py fix: remove 226 unused imports across the codebase (closes #33) 2026-02-20 11:35:04 -06:00
ilmove.py fix: remove 226 unused imports across the codebase (closes #33) 2026-02-20 11:35:04 -06:00
management.py Fix sWAR display precision and draft team role pings 2025-12-12 18:41:46 -06:00
trade_channel_tracker.py fix: split read-only data volume to allow state file writes (#85) 2026-03-17 13:34:43 -05:00
trade_channels.py CLAUDE: Fix trade system bugs and add smart channel updates 2025-10-09 20:55:19 -05:00
trade.py fix: auto-detect player roster type in trade commands instead of assuming ML 2026-03-01 23:29:01 -06:00