- Runs on PRs to automatically update dist if needed
- Can also be triggered manually via workflow_dispatch
- Only runs on PRs from the same repo (not forks)
- The check-dist workflow has OS-specific build differences
- Add CONTRIBUTING.md to document the build process
- Developers must manually run 'npm run build' before committing
- Remove pre-commit hooks for building/checking dist
- Add check-dist.yml workflow that validates dist in CI
- This matches the approach used by actions/javascript-action
- Eliminates OS-specific build differences affecting commits
- Create dedicated scripts for pre-commit hooks that source nvm
- Ensure dist is always built with Node 20 to match CI environment
- This prevents Node version mismatches between local and CI builds
- Add Node version check to build-dist pre-commit hook
- Create helper script to switch to Node 20
- Update documentation with clear instructions
- Fix YAML syntax in pre-commit config
This ensures dist is always built with Node 20, preventing CI failures
due to version mismatches.
🤖 Generated with [Claude Code](https://claude.ai/code)
Co-Authored-By: Claude <noreply@anthropic.com>
- Remove build-dist.yml workflow
- Update documentation to clarify local build requirement
- Keep pre-commit hooks to ensure dist is always up to date
This ensures developers build dist locally with the correct Node version
before committing, which is checked by CI.
🤖 Generated with [Claude Code](https://claude.ai/code)
Co-Authored-By: Claude <noreply@anthropic.com>
- Add .node-version and .nvmrc files specifying Node 20.9.0
- Add engines field to package.json requiring Node 20
- Re-enable dist build/check hooks in pre-commit
- Add build-dist workflow for automated builds with Node 20
- Update documentation with Node version requirements
This ensures consistent builds between local development and CI.
🤖 Generated with [Claude Code](https://claude.ai/code)
Co-Authored-By: Claude <noreply@anthropic.com>
- Keep action.yml using node20 (GitHub Actions supported version)
- Document requirement to use Node v20 for development
- Disable pre-commit dist build/check hooks since output varies between Node versions
- Update CLAUDE.md with Node version requirements
This ensures consistency between local development and CI.
🤖 Generated with [Claude Code](https://claude.ai/code)
Co-Authored-By: Claude <noreply@anthropic.com>
- Remove dist/ from .gitignore
- Exclude dist/ from pre-commit hooks
- Exclude *.md from prettier formatting
- Update CLAUDE.md with build documentation
- Temporarily disable check-dist hook
This prepares for committing the compiled dist/index.js file.
🤖 Generated with [Claude Code](https://claude.ai/code)
Co-Authored-By: Claude <noreply@anthropic.com>
The release workflow is not needed when creating releases through
GitHub's UI. The workflow was failing because:
1. Creating a release in GitHub UI automatically creates the tag
2. The tag creation triggers the workflow
3. The workflow tries to create a release that already exists
Since releases are being created manually through the UI, this
workflow adds no value and only causes confusion with failures.
🤖 Generated with [Claude Code](https://claude.ai/code)
Co-authored-by: Claude <noreply@anthropic.com>
This file provides essential guidance for future Claude instances working
on this repository, including:
- Common development commands
- High-level architecture overview
- Testing structure and local testing instructions
- Build process details
- Key design decisions
🤖 Generated with [Claude Code](https://claude.ai/code)
Co-authored-by: Claude <noreply@anthropic.com>
This prevents Dependabot PRs from failing CI due to package-lock.json
formatting differences. The file is auto-generated by npm and its exact
formatting is not important as long as it's valid JSON.
🤖 Generated with [Claude Code](https://claude.ai/code)
Co-Authored-By: Claude <noreply@anthropic.com>
- Runs lint-staged for automatic formatting of JS/JSON/YAML
- Runs pre-commit for all validation checks
- Ensures code quality before commits reach the repository
- Prevents CI failures due to formatting issues
- Enable automatic dependency updates for npm packages
- Enable automatic updates for GitHub Actions
- Group updates to reduce PR noise:
- Production dependencies in one group
- Development dependencies in another group
- All GitHub Actions updates grouped together
- Schedule weekly checks on Mondays
- Replace individual lint/test/build steps with pre-commit action
- Ensures CI runs exactly the same checks as local development
- Includes dist up-to-date check via pre-commit hooks
- Remove all Go code and replace with Node.js GitHub Action
- Use official golang.org/x/exp/cmd/apidiff tool
- Add PR comment functionality
- Support both git refs and directory comparisons
- Add comprehensive test suite with testdata examples
- Update CI to test action with breaking/safe/clean examples
🤖 Generated with [Claude Code](https://claude.ai/code)
Co-Authored-By: Claude <noreply@anthropic.com>
golangci-lint v2.3.0 works best with default configuration
🤖 Generated with [Claude Code](https://claude.ai/code)
Co-Authored-By: Claude <noreply@anthropic.com>
- Add pre-commit configuration for code quality checks
- Set up GitHub Actions for CI with test, lint, and build jobs
- Add golangci-lint configuration
- Create Makefile for common development tasks
- Update README with development instructions
- Fix code formatting issues
🤖 Generated with [Claude Code](https://claude.ai/code)
Co-Authored-By: Claude <noreply@anthropic.com>
A Go tool that analyzes API changes between two versions and reports breaking changes.
Features:
- Detects breaking API changes in Go code
- Compares git refs or directories
- Ignores internal/ packages by default
- Multiple output formats: text, JSON, markdown
- CI-friendly exit codes
Built on top of golang.org/x/exp/apidiff which provides the core API analysis.
🤖 Generated with [Claude Code](https://claude.ai/code)
Co-Authored-By: Claude <noreply@anthropic.com>