ux(copy): label watch-list portability, cue broadcast export stripping - #84
ux(copy): label watch-list portability, cue broadcast export stripping#84KevinBigham wants to merge 1 commit into
Conversation
Two small trust-copy wins, no behavior changes: - Watch List: source panel now states explicitly that pins are browser-local convenience state by design, stay on this browser only, and are not included in .mfd cartridges or Combined Backup exports - with re-pin guidance after moving browsers/machines. This implements the label-only side of the watch-list portability decision instead of leaving it ambiguous next to backup copy. - Dynasty Cartridge: Portable Backup panel now discloses that exports intentionally strip generated broadcast commentary payloads from played games to keep files small, while scores, stats, standings, records, and dynasty history all export normally. Players previously had no in-product cue for the stripped broadcast payloads. Tests updated to lock both copy contracts. Focused web tests 33/33 green; web typecheck green. No GameState, schema, RNG, engine, or route changes.
There was a problem hiding this comment.
💡 Codex Review
Here are some automated review suggestions for this pull request.
Reviewed commit: 4d959449e1
ℹ️ About Codex in GitHub
Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you
- Open a pull request for review
- Mark a draft as ready
- Comment "@codex review".
If Codex has suggestions, it will comment; otherwise it will react with 👍.
Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".
| Use Advanced .mfd actions only when you need the old current-save-only cartridge format. | ||
| </span> | ||
| <span style={{ ...monoSm, color: 'var(--mfd-text-dim)' }}> | ||
| One thing does not travel: exports intentionally strip generated broadcast commentary payloads from played games to keep backup files small. |
There was a problem hiding this comment.
Disclose removal of the full broadcast payload
When a player relies on this backup copy, describing the stripped data as only “broadcast commentary” understates the loss: sanitizeSaveForExport deletes the entire result.broadcast, including quarters, play-by-play, highlights, momentum swings, and ghost lines. Although selectors can regenerate a broadcast after import, it may not preserve the original presentation details, so the portability warning should identify the full broadcast/replay payload rather than commentary alone.
Useful? React with 👍 / 👎.
Two small trust-copy wins (C7 label-only + C30)
No behavior changes — copy + test assertions only.
1. Watch List portability label (C7 / decision D4, label-only option)
The Watch List source panel already said pins were "browser-local" but left the portability implication ambiguous next to trust-oriented backup copy. It now states the decision explicitly:
2. Broadcast portability cue (C30)
Exports intentionally strip generated broadcast commentary payloads from played games (
dynasty-cartridge.ts) to keep files small — but players had no in-product cue for that. The Portable Backup panel now discloses it, alongside the assurance that scores, stats, standings, records, and dynasty history all export normally.Verification
WatchListScreen.test.tsxandDynastyCartridge.test.tsxlock both copy contracts.Rollback
Revert; copy returns to previous wording.