39 lines
2.1 KiB
Markdown
39 lines
2.1 KiB
Markdown
---
|
|
title: "Discord Bot Release — 2026.3.13"
|
|
description: "Enforce free agency lock deadline — block /dropadd FA pickups after week 14, plus performance batch from backlog issues."
|
|
type: reference
|
|
domain: major-domo
|
|
tags: [release-notes, deployment, discord, major-domo]
|
|
---
|
|
|
|
# Discord Bot Release — 2026.3.13
|
|
|
|
**Date:** 2026-03-31
|
|
**Tag:** `2026.3.13`
|
|
**Image:** `manticorum67/major-domo-discordapp:2026.3.13` / `:production`
|
|
**Server:** akamai (`~/container-data/major-domo`)
|
|
**Deploy method:** `.scripts/deploy.sh -y` (docker compose pull + up)
|
|
|
|
## Release Summary
|
|
|
|
Enforces the previously unused `fa_lock_week` config (week 14) in the transaction builder. After the deadline, `/dropadd` blocks adding players FROM Free Agency while still allowing drops TO FA. Also includes a batch of performance PRs from the backlog that were merged between 2026.3.12 and this tag.
|
|
|
|
## Changes
|
|
|
|
### New Features
|
|
- **Free agency lock enforcement** — `TransactionBuilder.add_move()` now checks `current_week >= fa_lock_week` and rejects FA pickups after the deadline. Dropping to FA remains allowed. Config already existed at `fa_lock_week = 14` but was never enforced. (PR #122)
|
|
|
|
### Performance
|
|
- Eliminate redundant API calls in trade views (PR #116, issue #94)
|
|
- Eliminate redundant GET after create/update and parallelize stats (PR #112, issue #95)
|
|
- Parallelize N+1 player/creator lookups with `asyncio.gather()` (PR #118, issue #89)
|
|
- Consolidate duplicate `league_service.get_current_state()` calls in `add_move()` into a single shared fetch (PR #122)
|
|
|
|
### Bug Fixes
|
|
- Fix race condition: use per-user dict for `_checked_teams` in trade views (PR #116)
|
|
|
|
## Deployment Notes
|
|
- No migrations required
|
|
- No config changes needed — `fa_lock_week = 14` already existed in config
|
|
- Rollback: `ssh akamai "cd ~/container-data/major-domo && docker pull manticorum67/major-domo-discordapp@sha256:94d59135f127d5863b142136aeeec9d63b06ee63e214ef59f803cedbd92b473e && docker tag manticorum67/major-domo-discordapp@sha256:94d59135f127d5863b142136aeeec9d63b06ee63e214ef59f803cedbd92b473e manticorum67/major-domo-discordapp:production && docker compose up -d discord-app"`
|