Skip to content

Conversation

@konard
Copy link
Member

@konard konard commented Dec 27, 2025

Summary

This PR applies the latest best practices from the rust-ai-driven-development-pipeline-template, addressing the changes in:

Changes Made

Script Migration (Python → JavaScript ES Modules)

  • bump-version.mjs - Bumps version in Cargo.toml
  • check-file-size.mjs - Checks Rust files for 1000 line limit
  • collect-changelog.mjs - Collects changelog fragments into CHANGELOG.md
  • create-github-release.mjs - Creates GitHub releases from changelog
  • version-and-commit.mjs - Handles version bumping, committing, and tagging

New Changeset-Style Version Bumping

  • get-bump-type.mjs - Parses changelog fragments to determine version bump type
  • Fragments now support frontmatter with bump: major|minor|patch
  • Automatic version bumping based on highest priority bump type

Workflow Updates

  • Added Node.js 20.x setup for script execution
  • Added RUSTFLAGS=-Dwarnings for stricter CI checks
  • Updated all script references from Python to .mjs
  • Auto-release job now determines bump type from fragments

Documentation Updates

  • Updated changelog.d/README.md with comprehensive frontmatter documentation and examples
  • Updated CONTRIBUTING.md with new script references
  • Added frontmatter to existing changelog fragments

Benefits

  • Faster CI/CD: Node.js scripts start faster than Python
  • Zero dependencies: Scripts use dynamic loading via use-m library
  • Automatic versioning: No more manual version bumping - fragments determine bump type
  • No merge conflicts: Fragment-based changelog with per-change bump specification
  • Consistent with template: Aligns with the latest template best practices

Fixes #12

Test Plan

  • Verify node scripts/check-file-size.mjs runs successfully
  • Verify node scripts/get-bump-type.mjs detects correct bump types from fragments
  • Verify cargo fmt --check passes
  • Verify cargo clippy --all-targets --all-features passes
  • Verify cargo test --all-features passes
  • Verify CI pipeline runs successfully with new scripts

🤖 Generated with Claude Code

Adding CLAUDE.md with task information for AI processing.
This file will be removed when the task is complete.

Issue: #12
@konard konard self-assigned this Dec 27, 2025
…umping

- Replace Python scripts with JavaScript ES modules (.mjs):
  - bump-version.mjs, check-file-size.mjs, collect-changelog.mjs
  - create-github-release.mjs, version-and-commit.mjs
- Add get-bump-type.mjs for automatic version bump detection from fragments
- Update release.yml workflow:
  - Add Node.js 20.x setup for script execution
  - Add RUSTFLAGS=-Dwarnings for stricter CI checks
  - Implement automatic version bumping based on changelog frontmatter
- Update changelog.d/README.md with frontmatter documentation and examples
- Update CONTRIBUTING.md with new script references
- Add frontmatter with bump types to existing changelog fragments

Fixes #12

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
@konard konard changed the title [WIP] Apply latest best practices from Rust template feat: apply latest best practices from Rust template Dec 27, 2025
@konard konard marked this pull request as ready for review December 27, 2025 22:36
@konard
Copy link
Member Author

konard commented Dec 27, 2025

🤖 Solution Draft Log

This log file contains the complete execution trace of the AI solution draft process.

💰 Cost estimation:

  • Public pricing estimate: $4.750150 USD
  • Calculated by Anthropic: $2.725569 USD
  • Difference: $-2.024581 (-42.62%)
    📎 Log file uploaded as GitHub Gist (616KB)
    🔗 View complete solution draft log

Now working session is ended, feel free to review and add any feedback on the solution draft.

@konard konard merged commit 04821c6 into main Dec 27, 2025
9 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.

Apply latest best practices from Rust template

2 participants