Skip to content

feat(app): keep NEW badges across patch releases - #136

Merged
StuartCameronCode merged 1 commit into
mainfrom
feat-new-badges-span-patch-releases
Oct 26, 2026
Merged

StuartCameronCode merged 1 commit into
mainfrom
feat-new-badges-span-patch-releases

Conversation

@StuartCameronCode

Copy link
Copy Markdown
Owner

Problem

WhatsNewService treated any version change as an update and moved the badge baseline to the version being left behind. Shipping a bugfix release (1.5.0 → 1.5.1) therefore cleared every badge 1.5.0 had shown, often before most users had seen them.

Change

The baseline now only moves when the major or minor version changes. A patch-only update keeps the stored baseline.

Update Badges shown
1.4.2 → 1.5.0 everything since 1.4.2 (unchanged)
1.5.0 → 1.5.1, 1.5.2, … still everything since 1.4.2: all of 1.5.0 plus anything stamped 1.5.x
1.5.2 → 1.6.0 only 1.6.0's additions; the 1.5.x badges clear
1.4.2 → 1.5.1 (skipping 1.5.0) everything since 1.4.2
1.5.1 → 2.5.0 counts as a new release despite the same minor number

Stamping a property 1.5.1 in a bugfix release still badges it.

Tests

Five new cases in whats_new_service_test.dart, one per row above. Against the old service the two patch-release cases fail; the other three are controls that pass either way. whats_new_service_test, new_badges_widget_test and new_badges_shipped_test all pass.

Docs: the "NEW badges" section of docs/FILTER_SCHEMA.md and the matching note in CLAUDE.md.

🤖 Generated with Claude Code

A bugfix release used to count as an update and move the badge baseline
to the version being left behind, so shipping 1.5.1 cleared everything
1.5.0 had badged. The baseline now moves only when the major or minor
version changes: 1.5.0 -> 1.5.1 keeps 1.5.0's badges (plus anything
stamped 1.5.1), and the next feature release clears them as before.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
@StuartCameronCode
StuartCameronCode merged commit e06fc87 into main Oct 26, 2026
4 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant