claude-memory/CORE.md
2026-02-13 11:34:03 -06:00

63 lines
11 KiB
Markdown

# Memory Core (auto-generated)
> Last updated: 2026-02-13 | Active memories: 1/313 | Next refresh: manual
## Critical Solutions
- [Paper Dynasty: Database sync workflow for prod to dev](graph/solutions/paper-dynasty-database-sync-workflow-for-prod-to-dev-4bb882.md) - Created automated workflow to sync production PostgreSQL database (akamai) to... (paper-dynasty, postgresql, database)
- [Fix: pitcher error ratings silently failed due to unpacked range() in list membership](graph/solutions/fix-pitcher-error-ratings-silently-failed-due-to-unpacked-ra-b66c47.md) - In dice.py sa_fielding_roll(), pitcher (P position) error checks used range()... (paper-dynasty, python, fix)
- [Play lock context manager refactor - locked_play](graph/solutions/play-lock-context-manager-refactor-locked-play-1f7cd0.md) - Created command_logic/play_context.py with locked_play async context manager. (paper-dynasty, python, fix)
- [Fix for play lock never released on exception](graph/solutions/fix-for-play-lock-never-released-on-exception-5d8e1f.md) - Implemented 3-layer defense against stuck play locks: (1) Added release_play_... (paper-dynasty, python, discord-bot)
- [Gitea Actions runner offline - must use internal URL not public domain](graph/solutions/gitea-actions-runner-offline-must-use-internal-url-not-publi-f46835.md) - Problem: Gitea Actions runner showing as 'Offline' in admin UI, jobs stuck in... (gitea, ci-cd, actions)
- [Brave ERR_SSL_UNRECOGNIZED_NAME fix for local reverse proxy with Cloudflare DNS](graph/solutions/brave-err-ssl-unrecognized-name-fix-for-local-reverse-proxy-82d410.md) - Chromium-based browsers (Brave, Chrome, Edge) fail with ERR_SSL_UNRECOGNIZED_... (brave, chrome, ssl)
- [Docker-in-LXC requires AppArmor unconfined on Proxmox](graph/solutions/docker-in-lxc-requires-apparmor-unconfined-on-proxmox-384eeb.md) - When creating a Proxmox LXC container to run Docker, the container needs AppA... (proxmox, docker, lxc)
- [Circular import fix: move shared utilities to standalone module](graph/solutions/circular-import-fix-move-shared-utilities-to-standalone-modu-1c7958.md) - When two modules import from each other, create a standalone module for share... (python, circular-import, architecture)
- [Nobara 43 system update failure - GUI updater hanging](graph/solutions/nobara-43-system-update-failure-gui-updater-hanging-2bc5c9.md) - GUI updater (dnf/PackageKit) hanging on Nobara 43 (Fedora 43 based) during sy... (nobara, fedora, dnf)
- [Paper Dynasty: Fixed card generation after PostgreSQL migration](graph/solutions/paper-dynasty-fixed-card-generation-after-postgresql-migrati-a918ab.md) - Problem**: After migrating Paper Dynasty database from SQLite to PostgreSQL,... (paper-dynasty, postgresql, card-generation)
## Active Decisions
- [Production deployment checklist for Paper Dynasty bot](graph/decisions/production-deployment-checklist-for-paper-dynasty-bot-638ac8.md) - CRITICAL: Always verify bot startup in production logs after deployment. (paper-dynasty, discord-bot, deployment)
- [Mantimon TCG Engine: Highly Configurable Design](graph/decisions/mantimon-tcg-engine-highly-configurable-design-c06fae.md) - The game engine must be extremely configurable to support 'free play' mode wh... (mantimon-tcg, architecture, decision)
- [Store DeckConfig with Decks](graph/decisions/store-deckconfig-with-decks-cfc068.md) - When a deck is created, the DeckConfig used for validation should be persiste... (mantimon-tcg, architecture, decision)
- [Mantimon TCG: RNG and Card Registry Design](graph/decisions/mantimon-tcg-rng-and-card-registry-design-42c14a.md) - RNG Handling: Use RandomProvider protocol with two implementations - SeededRa... (mantimon-tcg, architecture, decision)
- [Phase 4 Game Service + WebSocket Plan](graph/decisions/phase-4-game-service-websocket-plan-da0789.md) - Created detailed 18-task project plan for Phase 4: WebSocket server with pyth... (mantimon-tcg, python, websocket)
- [Card builder architecture redesign](graph/decisions/card-builder-architecture-redesign-396868.md) - Designed new architecture for Paper Dynasty card generation that moves fittin... (paper-dynasty, architecture, card-generation)
- [Phase 3 Collections+Decks plan created](graph/decisions/phase-3-collectionsdecks-plan-created-dedfc3.md) - Created comprehensive PHASE_3_COLLECTION_DECKS.json with 14 tasks (29 hrs): C... (mantimon-tcg, python, planning)
- [Removed http_trigger in favor of jumbo package](graph/decisions/removed-http-trigger-in-favor-of-jumbo-package-8fc22c.md) - Removed deprecated http_trigger endpoint and denormalize_object function from... (esb-monorepo, python, refactor)
## Key Fixes
- [Successfully fixed Paper Dynasty API 502 errors via manual Pi-hole DNS cleanup](graph/fixes/successfully-fixed-paper-dynasty-api-502-errors-via-manual-p-01944b.md) - Paper Dynasty API (pd.manticorum.com) was returning 502 Bad Gateway errors (paper-dynasty, pihole, v6)
- [PostgreSQL migration: get_team_by_owner returns wrong team](graph/fixes/postgresql-migration-get-team-by-owner-returns-wrong-team-c9f0d6.md) - After PostgreSQL migration, get_team_by_owner() in discord-app returned the g... (paper-dynasty, postgresql, migration)
- [PostgreSQL migration: DateTimeField defaults must be datetime objects](graph/fixes/postgresql-migration-datetimefield-defaults-must-be-datetime-03a346.md) - Paperdex and GauntletRun models had DateTimeField(default=int(datetime.timest... (paper-dynasty, postgresql, migration)
- [Added default ORDER BY id to BattingCardRatings.select() in list endpoints](graph/fixes/added-default-order-by-id-to-battingcardratingsselect-in-lis-6423a9.md) - Updated battingcardratings.py to add .order_by(BattingCardRatings.id) to thre... (paper-dynasty, python, postgresql)
- [Add default ORDER BY id to GameRewards.select() list endpoint](graph/fixes/add-default-order-by-id-to-gamerewardsselect-list-endpoint-5ad98d.md) - Modified gamerewards.py GET list endpoint to use GameRewards.select().order_b... (paper-dynasty, python, postgres-migration)
- [Add default ORDER BY id to PackType list endpoint](graph/fixes/add-default-order-by-id-to-packtype-list-endpoint-1679f2.md) - Modified GET /api/v2/packtypes endpoint to include default ordering: PackType... (paper-dynasty, postgresql, migration)
- [Added default ORDER BY id to notifications list endpoint](graph/fixes/added-default-order-by-id-to-notifications-list-endpoint-ad7d61.md) - Modified GET /api/v2/notifs endpoint in app/routers_v2/notifications.py to ad... (paper-dynasty, postgresql, migration)
- [Added default ORDER BY id to MlbPlayer.select() endpoint](graph/fixes/added-default-order-by-id-to-mlbplayerselect-endpoint-0670d2.md) - Added .order_by(MlbPlayer.id) to the GET /mlbplayers list endpoint (line 85 i... (paper-dynasty, postgresql, migration)
- [Added default ordering to StratPlay list endpoint](graph/fixes/added-default-ordering-to-stratplay-list-endpoint-e22444.md) - Added .order_by(StratPlay.id) to StratPlay.select() in the GET list endpoint... (paper-dynasty, postgresql, migration)
- [Added default ordering to PitchingStat list endpoint](graph/fixes/added-default-ordering-to-pitchingstat-list-endpoint-08952b.md) - Added .order_by(PitchingStat.id) to the main GET list endpoint in pitstats.py... (paper-dynasty, postgresql, migration)
## Configurations
- [Uptime Kuma deployed on LXC 227](graph/configurations/uptime-kuma-deployed-on-lxc-227-35400a.md) - Uptime Kuma service monitoring deployed on Proxmox LXC 227 (10.10.0.227). (uptime-kuma, monitoring, homelab)
- [OpenCode agent model configuration](graph/configurations/opencode-agent-model-configuration-33fa68.md) - Configured default models for OpenCode agents in ~/.config/opencode/opencode.... (opencode, configuration, models)
## Patterns & Workflows
- [CRITICAL: Git commit requires explicit user approval](graph/workflows/critical-git-commit-requires-explicit-user-approval-c253c9.md) - Before ANY git commit/add/push/deploy command, STOP and verify: (paper-dynasty, major-domo, git)
- [Optional locking parameter pattern for read vs write commands](graph/code-patterns/optional-locking-parameter-pattern-for-read-vs-write-command-88bbf5.md) - In Paper Dynasty, added lock_play parameter (default=True) to checks_log_inte... (paper-dynasty, python, discord-bot)
- [Paper Dynasty: 2005 Live Series card update workflow (mid-season)](graph/workflows/paper-dynasty-2005-live-series-card-update-workflow-mid-seas-2937a9.md) - Task**: Update 2005 Live cardset through end of July (mid-season update) (paper-dynasty, cardset, 2005)
- [Deploy Major Domo with feature branch workflow and Docker BuildKit workaround](graph/workflows/deploy-major-domo-with-feature-branch-workflow-and-docker-bu-a88203.md) - Workflow**: Successfully deployed dem_week feature to production using featur... (major-domo, deployment, workflow)
## Known Issues
- [Play lock never released on exception - causes permanent user lockout](graph/problems/play-lock-never-released-on-exception-causes-permanent-user-9b70e3.md) - The play locking system in checks_log_interaction() sets play.locked=True and... (paper-dynasty, python, discord-bot)
- [Paper Dynasty bot freeze from duplicate X-Check interaction submissions](graph/problems/paper-dynasty-bot-freeze-from-duplicate-x-check-interaction-711ea5.md) - Bot event loop freezes when user double-submits X-Check corrections (clicking... (paper-dynasty, discord-bot, sqlalchemy)
- [Violated git commit approval - deployed without permission](graph/problems/violated-git-commit-approval-deployed-without-permission-a62147.md) - 2026-02-04: Fixed gauntlet-9 KeyError bug in Paper Dynasty database API. (paper-dynasty, database, git)
- [Pi-hole v6 DNS sync script needs update for new TOML config format](graph/problems/pi-hole-v6-dns-sync-script-needs-update-for-new-toml-config-dc3ed1.md) - The npm-pihole-sync.sh script at /mnt/NV2/Development/claude-home/server-conf... (pihole, npm, dns)
- [Critical: Wrong API parameter name - used 'dem_week' instead of 'demotion_week'](graph/errors/critical-wrong-api-parameter-name-used-dem-week-instead-of-d-0d5b86.md) - Error**: Player team updates sent wrong parameter name to API, causing dem_we... (major-domo, python, api)
- [Intermittent SSL connection failures from internal network](graph/problems/intermittent-ssl-connection-failures-from-internal-network-1d9b21.md) - Symptom: ERR_SSL_UNRECOGNIZED_NAME_ALERT appears intermittently when accessin... (networking, dns, ssl)
- [Gitea API 403 Forbidden - insufficient token scopes](graph/problems/gitea-api-403-forbidden-insufficient-token-scopes-1052e9.md) - PROBLEM: Gitea API returned 403 Forbidden with message 'token does not have a... (gitea, api, authentication)
- [Production crash: Missing Optional import in type hint caused NameError](graph/errors/production-crash-missing-optional-import-in-type-hint-caused-ffdfef.md) - Error**: Bot crashed on production startup with 'NameError: name Optional is... (major-domo, python, production)