Skip to content

Streamline PR creation workflow with improved automation and type handling - #13

Merged
jfrench9 merged 7 commits into
mainfrom
refactor/feature-creation
Sep 19, 2025
Merged

jfrench9 merged 7 commits into
mainfrom
refactor/feature-creation

Conversation

@jfrench9

Copy link
Copy Markdown
Member

Summary of Changes

This PR refactors the PR creation workflow to improve automation, simplify the development process, and enhance reliability. The changes consolidate workflow logic and remove unused components while adding better environment variable handling.

Key Improvements

Workflow Automation:

  • Enhanced create-pr.yml workflow with environment variable support for dynamic PR title and description generation
  • Removed command substitution vulnerabilities by eliminating backticks from shell outputs
  • Added existing PR detection to prevent duplicate PR creation
  • Streamlined PR type handling by removing redundant input parameters

Developer Experience:

  • Updated VSCode tasks configuration to include PR type selection for improved clarity
  • Simplified create-pr script with better error handling and cleaner command structure
  • Refactored create-feature script for more maintainable PR type processing

Cleanup:

  • Removed unused create-feature.yml workflow (100 lines deleted)
  • Updated package-lock.json with latest dependency versions

Breaking Changes

  • Removed create-feature.yml GitHub Actions workflow - any references to this workflow will need to be updated
  • Modified VSCode task commands - developers may need to refresh their task runner

Testing Notes for Reviewers

  • Test PR creation workflow with different branch types (feature/, bugfix/, hotfix/)
  • Verify VSCode tasks execute correctly with new PR type selection
  • Confirm environment variables are properly passed in GitHub Actions
  • Test duplicate PR detection functionality
  • Validate that existing automated processes continue to work

Browser Compatibility Considerations

No browser-facing changes in this PR - all modifications are to development tooling and CI/CD workflows.

Files Modified

  • .github/workflows/create-pr.yml - Enhanced workflow automation
  • .vscode/tasks.json - Updated task configurations
  • bin/create-feature - Refactored script logic
  • bin/create-pr - Simplified PR creation process
  • package-lock.json - Dependency updates

Net Impact: -52 lines of code, improved maintainability and developer experience


🤖 Generated with Claude Code

Branch Info:

  • Source: refactor/feature-creation
  • Target: main
  • Type: feature

Co-Authored-By: Claude noreply@anthropic.com

…ed GitHub Actions workflow

- Bumped versions of several dependencies in package-lock.json, including @eslint-community/eslint-utils, @hey-api/openapi-ts, @types/node, @types/react, debug, mlly, prettier-plugin-organize-imports, and run-applescript to their latest releases for improved functionality and security.
- Deleted the create-feature.yml GitHub Actions workflow as it is no longer needed.
- Updated VSCode tasks to reflect the removal of the workflow and renamed the "Create Feature Branch" task to "Create Feature" for clarity.
- Refactored the create-feature script to handle local Git operations directly, including branch creation, validation, and stashing uncommitted changes.
- Modified the "Create PR" task command to accept a new input for PR type, allowing users to specify whether the PR is a feature, bugfix, hotfix, or release.
- Added a new input option for selecting the PR type, enhancing the task's usability and ensuring better organization of pull requests.
…ode task command

- Removed the PR type input from the "Create PR" task in VSCode, streamlining the command.
- Updated the create-pr script to automatically determine the PR type based on the current branch prefix, enhancing usability and reducing user input errors.
- Defaulted to 'feature' for undetermined branch names, improving the script's robustness.
…eck for existing PRs

- Updated the PR description creation to properly escape content and append a footer.
- Added a check to see if a PR already exists before attempting to create a new one, enhancing the workflow's efficiency and user experience.
…nt command substitution issues

- Updated the create-pr workflow to remove backticks from diff stats, commit messages, and detailed changes, ensuring proper handling in heredocs and improving overall reliability.
…itle and description

- Updated the create-pr workflow to use environment variables for handling the PR title and description, improving safety and reliability in processing Claude's output.
@jfrench9
jfrench9 merged commit 6785add into main Sep 19, 2025
3 checks passed
@jfrench9
jfrench9 deleted the refactor/feature-creation branch September 19, 2025 19:40
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