- Create custom-changelog.mjs script to generate single consolidated changelog entry
- Disable conventional-changelog's built-in changelog generation (infile: false)
- Use custom script in after:bump hook to generate merged changelog
- Properly groups all commits from last stable version by category
- Filters out beta release commits automatically
- Supports breaking changes with detailed descriptions
- Add custom changelog transformer script for merging beta releases
- Update release-it configuration to filter out beta release commits
- Create test script to validate merged changelog generation
- Configure writerOpts to exclude beta-related chore commits from changelog
- All intermediate beta versions now merged into single release entry with commits grouped by type
- Add deterministic tie-breakers (filePath, line, id) to ensure stable sorting
- Implement scroll state preservation during task updates to prevent UI jumping
- Use Intl.Collator for proper locale-aware content comparison
- Add tree traversal helpers for efficient component management
- Fix dry-run handling in release scripts to avoid false negatives
These changes ensure consistent task ordering across renders and maintain
scroll position when tasks are updated, significantly improving user experience
during task management operations.