chore(workflow): update package publishing and changelog generation - #111
Merged
Conversation
- Changed the pre-version command in `nx.json` to use `npx nx affected -t build` for more accurate affected package detection. - Enhanced GitHub Actions workflows to determine affected packages before building and publishing, ensuring only necessary packages are processed. - Added a step to prepare changelog for Slack notifications, improving release communication. - Updated conditions for versioning and publishing to only proceed if affected packages are detected.
|
The latest updates on your projects. Learn more about Vercel for GitHub.
|
wkoutre
added a commit
that referenced
this pull request
Oct 28, 2025
* chore: update AI model references to sonnet-4.5 - Updated README.md to recommend sonnet-4.5 as the preferred model for new agents. - Changed model references in commit-message-generator.md and pr-creator.md to sonnet-4.5. - Modified schema.d.ts and schema.json to include sonnet-4.5 as an option for agent models. * chore(release): publish - project: @uniswap/ai-toolkit-nx-claude 0.5.10-next.0 - project: @ai-toolkit/utils 0.2.10-next.0 - project: @ai-toolkit/agents-agnostic 0.2.10-next.0 - project: @ai-toolkit/commands-agnostic 0.1.14-next.0 - project: @ai-toolkit/commands-typescript 0.1.11-next.0 * chore: update AI model references to sonnet-4.5 (#70) - Updated README.md to recommend sonnet-4.5 as the preferred model for new agents. - Changed model references in commit-message-generator.md and pr-creator.md to sonnet-4.5. - Modified schema.d.ts and schema.json to include sonnet-4.5 as an option for agent models. * chore(release): publish - project: @uniswap/ai-toolkit-nx-claude 0.5.10-next.1 - project: @ai-toolkit/utils 0.2.10-next.1 - project: @ai-toolkit/agents-agnostic 0.2.10-next.1 - project: @ai-toolkit/commands-agnostic 0.1.14-next.1 - project: @ai-toolkit/commands-typescript 0.1.11-next.1 * Improve the claude docs agents by adding a fact-checker subagent that… (#73) * Improve the claude docs agents by adding a fact-checker subagent that verifies the output of other claude doc agents Completes DEV-107 sub-commits: add initial plan implement plan for updating claude-docs to use fact-checker and batched approvals * add model prompt parameter to several subagents * chore(release): publish - project: @uniswap/ai-toolkit-nx-claude 0.5.10-next.2 - project: @ai-toolkit/utils 0.2.10-next.2 - project: @ai-toolkit/agents-agnostic 0.2.10-next.2 - project: @ai-toolkit/commands-agnostic 0.1.14-next.2 - project: @ai-toolkit/commands-typescript 0.1.11-next.2 * chore(ci): Setup trusted publishing (#74) * improvement: update execute-plan documentation to require user confirmation for git commits at logical completion points (#72) * improvement: update execute-plan documentation to require user confirmation for git commits at logical completion points * improvement: require user confirmation before creating git commits in various workflows * chore: add ignoreCommand to vercel.json for slack-oauth-backend to optimize deployment process (#75) ### TL;DR Added an ignore command to the Vercel configuration for the Slack OAuth backend to skip deployments when the project is not affected. ### What changed? Added an `ignoreCommand` to the `vercel.json` file that uses the Nx affected projects detection to determine if the `slack-oauth-backend` project was modified between the previous and current commit. If the project wasn't affected, the deployment will be skipped. ### How to test? 1. Make a change to a different project in the monorepo 2. Verify that the Slack OAuth backend doesn't deploy on Vercel 3. Make a change to the Slack OAuth backend 4. Verify that the deployment proceeds as expected ### Why make this change? This optimization prevents unnecessary deployments of the Slack OAuth backend when changes are made to unrelated parts of the codebase. This will save deployment resources and time by only triggering deployments when the project is actually affected by changes. * ci: enhance production update workflow with categorized changelog and Slack notifications (#76) ### Summary of Changes - Updated the production update workflow to generate a categorized changelog based on commit types (features, fixes, documentation, maintenance, and others). - Added Slack notifications for both successful PR creation and merge conflicts. - Improved workflow documentation to clarify required secrets and behavior. - Assigned specific reviewers to the PR and included detailed next steps in the summary. ### Why This Change? These enhancements streamline the release process, improve communication with the team, and ensure that the changelog is informative and well-structured for easier review. * fix(ci): remove redundant NPM authentication step (#77) ### Summary of Changes - Replaced single quotes with double quotes for consistency in the `publish-packages.yml` file. - Removed the NPM authentication verification step that was conditional on the dry run input. ### Why This Change? These adjustments improve the readability of the workflow file and streamline the publishing process by eliminating unnecessary checks. * chore: remove NPM authentication references from configuration files (#78) ### Summary of Changes - Deleted `always-auth` and `_authToken` entries from `.npmrc`. - Removed `NODE_AUTH_TOKEN` references from the GitHub Actions workflow and documentation. ### Why This Change? These modifications streamline the configuration by eliminating unnecessary authentication steps, enhancing clarity and security in the publishing process. * feat: add more mcps to addons generator and enhance default installation flow (#71) * feat: enhance addon installation process and conditional prompting - Added support for installing all MCP servers at once or a specific one via new `installMode` option. - Updated generator logic to handle installation modes and provide detailed installation summaries. - Introduced critical rules for conditional prompting in Nx generator schemas to improve user experience. - Expanded addon registry with new MCP servers including Graphite, Nx, Slack, and others. - Enhanced documentation for MCP authentication instructions and setup guidance. * get notion mcp addon working This required changing the AddonMetadata interface to support a new non-command based way of adding mcps to claude --------- Co-authored-by: Melvillian <alex.melville@uniswap.org> * chore(ci): Fixes for trusted publishing (#81) * fix(addons): fix configs for remaining mcp installation issues (#83) ### TL;DR Updated MCP configuration for Figma and Vercel addons to use the new transport/url pattern. ### What changed? Modified the addon registry configuration for Figma and Vercel addons: - Renamed `command` to `transport` in both addon configurations - Renamed `args` array to `url` string property - Preserved the actual transport types and URLs ### How to test? 1. Verify that the Figma addon connects properly using SSE transport to `http://127.0.0.1:3845/mcp` 2. Verify that the Vercel addon connects properly using HTTP transport to `https://mcp.vercel.com` ### Why make this change? This change standardizes the MCP configuration pattern by using more descriptive property names (`transport` instead of `command`, `url` instead of an array of arguments). This improves code readability and makes the configuration more intuitive while maintaining the same functionality. * refactor: transition from Bun to npm as the package manager (#80) - Removed Bun-related configurations and commands throughout the project. - Updated all instances of `bunx` to `npx` in scripts, documentation, and configuration files. - Deleted `bun.lock` and `bun.lockb` files, replacing them with `package-lock.json`. - Adjusted CI/CD workflows to utilize npm commands for dependency installation and package management. - Enhanced documentation to reflect the changes in package management and installation processes. This transition aims to streamline the development workflow and improve compatibility across environments. * chore(release): publish - project: @uniswap/ai-toolkit-nx-claude 0.5.10-next.3 - project: @ai-toolkit/utils 0.2.10-next.3 - project: @ai-toolkit/agents-agnostic 0.2.10-next.3 - project: @ai-toolkit/commands-agnostic 0.1.14-next.3 - project: @ai-toolkit/commands-typescript 0.1.11-next.3 * feat: add daily standup command to summarize tasks and GitHub activity (#79) ### Summary of Changes - Introduced a new command `daily-standup` that checks assigned Linear tasks and generates a team update. - Documented the workflow process, execution steps, usage examples, and output format in `daily-standup.md`. - Updated `index.ts` to include the new command with a brief description. ### Why This Change? This addition enhances team communication by providing a structured update on ongoing tasks and recent GitHub activity, facilitating better collaboration during daily standups. * feat(ci): Update packages and add environment to publishing (#85) * chore: update package-lock.json (#86) * chore(release): publish - project: @uniswap/ai-toolkit-nx-claude 0.5.10-next.4 - project: @ai-toolkit/utils 0.2.10-next.4 - project: @ai-toolkit/agents-agnostic 0.2.10-next.4 - project: @ai-toolkit/commands-agnostic 0.1.14-next.4 - project: @ai-toolkit/commands-typescript 0.1.11-next.4 * feat(ci): Add Slack notification for next branch package publishes (#88) - Implemented a new step in the GitHub Actions workflow to send a Slack notification when packages are published from the `next` branch. - The notification includes details about the published packages, the commit SHA, and a link to the workflow run. - This enhancement aims to improve communication and visibility for team members regarding package releases. * chore(release): publish - project: @uniswap/ai-toolkit-nx-claude 0.5.10-next.5 - project: @ai-toolkit/utils 0.2.10-next.5 - project: @ai-toolkit/agents-agnostic 0.2.10-next.5 - project: @ai-toolkit/commands-agnostic 0.1.14-next.5 - project: @ai-toolkit/commands-typescript 0.1.11-next.5 * fix(ci): Improve Slack notification payload for next branch publishes (#89) - Updated the Slack notification step in the GitHub Actions workflow to build the JSON payload in a temporary file, enhancing readability and maintainability. - Added error handling for the Slack notification to ensure the workflow continues even if the notification fails. - Escaped package names in the notification to prevent JSON formatting issues. - Improved debugging output by displaying the HTTP status and response from the Slack API. * chore(release): publish - project: @uniswap/ai-toolkit-nx-claude 0.5.10-next.6 - project: @ai-toolkit/utils 0.2.10-next.6 - project: @ai-toolkit/agents-agnostic 0.2.10-next.6 - project: @ai-toolkit/commands-agnostic 0.1.14-next.6 - project: @ai-toolkit/commands-typescript 0.1.11-next.6 * chore(ci): Add pr checks (#87) * chore(ci): Add pre checks * Fix * chore: regenerate package-lock.json with Node.js 22.21.0 - Regenerated lockfile using Node.js v22.21.0 (npm 10.9.4) to match CI environment - Fixes dependency resolution and hoisting differences - Ensures CI package-lock.json validation check passes * Align node versions * base branch fix * chore(release): publish - project: @uniswap/ai-toolkit-nx-claude 0.5.10-next.7 - project: @ai-toolkit/utils 0.2.10-next.7 - project: @ai-toolkit/agents-agnostic 0.2.10-next.7 - project: @ai-toolkit/commands-agnostic 0.1.14-next.7 - project: @ai-toolkit/commands-typescript 0.1.11-next.7 * refactor(ai-toolkit-nx-claude): streamline generator selection process (#90) - Updated the CLI generator to provide a clearer distinction between external and internal usage. - External users now default to the init generator when no arguments are provided, while internal users can access an interactive menu for all generators. - Enhanced documentation within the code to clarify usage scenarios and improve developer experience. * chore(release): publish - project: @uniswap/ai-toolkit-nx-claude 0.5.10-next.8 - project: @ai-toolkit/utils 0.2.10-next.8 - project: @ai-toolkit/agents-agnostic 0.2.10-next.8 - project: @ai-toolkit/commands-agnostic 0.1.14-next.8 - project: @ai-toolkit/commands-typescript 0.1.11-next.8 * chore(ci): enhance changelog generation in publish workflow (#91) - Updated the GitHub Actions workflow to include steps for finding the previous tag and generating an AI-powered changelog. - Added a fallback mechanism to generate a changelog from commits if the AI generation fails. - Improved Slack notification to include version range and changelog details for better visibility during package publishes. * chore(release): publish - project: @uniswap/ai-toolkit-nx-claude 0.5.10-next.9 - project: @ai-toolkit/utils 0.2.10-next.9 - project: @ai-toolkit/agents-agnostic 0.2.10-next.9 - project: @ai-toolkit/commands-agnostic 0.1.14-next.9 - project: @ai-toolkit/commands-typescript 0.1.11-next.9 * feat(generators): implement installMode pattern to enhance prompting behavior (#92) - Introduced the installMode parameter to prevent duplicate prompts when child generators are called programmatically from parent generators. - Updated schema.json and TypeScript interfaces to include the hidden installMode property. - Modified generator logic to skip prompts and use default values when installMode is set to 'default'. - Enhanced documentation to clarify the usage and benefits of the installMode pattern across generators. * chore(release): publish - project: @uniswap/ai-toolkit-nx-claude 0.5.10-next.10 - project: @ai-toolkit/utils 0.2.10-next.10 - project: @ai-toolkit/agents-agnostic 0.2.10-next.10 - project: @ai-toolkit/commands-agnostic 0.1.14-next.10 - project: @ai-toolkit/commands-typescript 0.1.11-next.10 * chore(workflow): update publish workflow for improved changelog generation (#93) - Refactored the GitHub Actions workflow to enhance the changelog generation process. - Changed the handling of the dry run input description and default values to use consistent quotation marks. - Updated the logic to retrieve git diffs and commit messages for better context in changelog generation. - Implemented a fallback mechanism to generate a changelog from commits if AI generation fails. - Improved Slack notification formatting to include commit range and package details. * chore(release): publish - project: @uniswap/ai-toolkit-nx-claude 0.5.10-next.11 - project: @ai-toolkit/utils 0.2.10-next.11 - project: @ai-toolkit/agents-agnostic 0.2.10-next.11 - project: @ai-toolkit/commands-agnostic 0.1.14-next.11 - project: @ai-toolkit/commands-typescript 0.1.11-next.11 * chore(workflow): refine build process and changelog prompt (#94) - Updated the GitHub Actions workflow to build only changed packages instead of all packages. - Enhanced the changelog generation prompt to specify formatting requirements for Slack, including bullet points and text styling. * chore(workflow): refine build process and changelog prompt (#95) chore(workflow): refine build process and changelog prompt - Updated the GitHub Actions workflow to build only changed packages instead of all packages. - Enhanced the changelog generation prompt to specify formatting requirements for Slack, including bullet points and text styling. chore(nx.json): add custom commit message for releases - Introduced a custom commit message format for releases to streamline the publishing process. * chore(nx.json, package-lock.json): streamline versioning and dependency management (#96) - Updated nx.json to simplify versioning configuration by removing redundant git settings and enhancing the commit message format for releases. - Modified package-lock.json to replace 'dev' with 'devOptional' for several dependencies, improving clarity on optional development dependencies. * chore(nx.json): restore git settings for versioning and changelog (#97) - Reintroduced git settings for commit and tag options within the versioning and changelog sections of nx.json to ensure proper handling during releases. * chore(nx.json): add custom commit message for releases (#98) - Introduced a custom commit message format for releases to streamline the publishing process, ensuring consistency in versioning and changelog updates. * chore(ai-toolkit-nx-claude): bump version to 0.5.10-next.12 * chore(workflow): standardize quotation marks and update Node.js setup action - Updated the publish workflow to use consistent double quotation marks for descriptions and default values. - Changed the Node.js setup action to the latest version (v6.0.0) for improved compatibility. * chore(release): [skip ci] publish - project: @uniswap/ai-toolkit-nx-claude 0.5.10-next.13 - project: @ai-toolkit/utils 0.2.10-next.12 - project: @ai-toolkit/agents-agnostic 0.2.10-next.12 - project: @ai-toolkit/commands-agnostic 0.1.14-next.12 - project: @ai-toolkit/commands-typescript 0.1.11-next.12 * chore(workflow): [skip ci] unify quotation marks and enhance changelog formatting - Standardized the use of double quotation marks in the publish workflow for descriptions and default values. - Updated the changelog formatting requirements to specify bullet points should be separated by newlines. * chore(workflow): refactor Slack notification process and streamline changelog generation (#99) * chore(release): [skip ci] publish - project: @uniswap/ai-toolkit-nx-claude 0.5.10-next.14 - project: @ai-toolkit/utils 0.2.10-next.13 - project: @ai-toolkit/agents-agnostic 0.2.10-next.13 - project: @ai-toolkit/commands-agnostic 0.1.14-next.13 - project: @ai-toolkit/commands-typescript 0.1.11-next.13 * fix(ci): refactor changelog generation to use reusable AI-powered workflow (#101) * fix(ci): fix failing tests in slack-oauth-backend app (#100) * feat(workflow): add reusable changelog generation and notification workflows (#102) - Introduced `_generate-changelog.yml` for AI-powered changelog generation using commit ranges. - Added `_notify-release.yml` for sending Slack notifications about package releases. - Updated `README.md` to reflect new workflow structure and usage. - Created `release-publish-packages.yml` and `release-update-production.yml` to manage package publishing and production updates with integrated changelog generation. - Implemented `ci-pr-checks.yml` for validating pull requests with installation and build checks. * feat(workflow): implement comprehensive package publishing workflow - Added a new GitHub Actions workflow for publishing packages to NPM, handling versioning, changelog generation, and Slack notifications. - The workflow supports both production and pre-release deployments, triggered on pushes to 'main' and 'next' branches. - Integrated AI-powered changelog generation and notifications for release updates. - Included steps for syncing the 'next' branch with 'main' after production releases, ensuring streamlined version management. * fix(oauth): standardize error code format in OAuth error handling - Updated the error code from 'invalid_code' to 'INVALID_CODE' for consistency in error responses. * chore(release): [skip ci] publish - project: @uniswap/ai-toolkit-nx-claude 0.5.10-next.15 - project: @ai-toolkit/utils 0.2.10-next.14 - project: @ai-toolkit/agents-agnostic 0.2.10-next.14 - project: @ai-toolkit/commands-agnostic 0.1.14-next.14 - project: @ai-toolkit/commands-typescript 0.1.11-next.14 * refactor(docs): update CLAUDE.md guidelines and enhance changelog generation workflow (#104) - Corrected formatting in CLAUDE.md and added a new step for typechecking code changes. - Improved the changelog generation workflow by using heredoc for safer prompt assignment in `_generate-changelog.yml`. - Standardized the use of GITHUB_TOKEN in `release-update-production.yml` to ensure consistent access across jobs. * nickkoutrelakos/fix-update-production-workflow (#107) * refactor(docs): update CLAUDE.md guidelines and enhance changelog generation workflow - Corrected formatting in CLAUDE.md and added a new step for typechecking code changes. - Improved the changelog generation workflow by using heredoc for safer prompt assignment in `_generate-changelog.yml`. - Standardized the use of GITHUB_TOKEN in `release-update-production.yml` to ensure consistent access across jobs. * chore(workflow): [skip ci] enhance reviewer assignment and error handling in release update workflow - Standardized quotation marks in the `release-update-production.yml` file for consistency. - Added a step to handle automatic reviewer assignment, including a fallback comment if the assignment fails. - Updated the summary output to reflect whether reviewers were assigned automatically or need to be added manually. * refactor(workflow): enhance changelog generation logic in GitHub Actions (#109) - Updated the `_generate-changelog.yml` workflow to improve prompt handling by using boolean flags for condition evaluation. - Replaced inline checks with safer evaluations to ensure robust prompt assignment from custom inputs or file sources. * chore(release): [skip ci] publish - project: @uniswap/ai-toolkit-nx-claude 0.5.10-next.16 - project: @ai-toolkit/utils 0.2.10-next.15 - project: @ai-toolkit/agents-agnostic 0.2.10-next.15 - project: @ai-toolkit/commands-agnostic 0.1.14-next.15 - project: @ai-toolkit/commands-typescript 0.1.11-next.15 * feat: enhance changelog generation and workflow configuration (#110) - Excluded commits with `chore(release)` from changelog analysis. - Added a new prompt file for generating release changelogs with specific formatting and content guidelines in `.github/prompts/release-changelog.md`. - Updated the workflow to utilize the new changelog prompt file for improved release notes generation. * chore(release): [skip ci] publish - project: @uniswap/ai-toolkit-nx-claude 0.5.10-next.17 - project: @ai-toolkit/utils 0.2.10-next.16 - project: @ai-toolkit/agents-agnostic 0.2.10-next.16 - project: @ai-toolkit/commands-agnostic 0.1.14-next.16 - project: @ai-toolkit/commands-typescript 0.1.11-next.16 * chore(workflow): update package publishing and changelog generation (#111) - Changed the pre-version command in `nx.json` to use `npx nx affected -t build` for more accurate affected package detection. - Enhanced GitHub Actions workflows to determine affected packages before building and publishing, ensuring only necessary packages are processed. - Added a step to prepare changelog for Slack notifications, improving release communication. - Updated conditions for versioning and publishing to only proceed if affected packages are detected. * chore(release): [skip ci] publish - project: @uniswap/ai-toolkit-nx-claude 0.5.10-next.18 - project: @ai-toolkit/utils 0.2.10-next.17 - project: @ai-toolkit/agents-agnostic 0.2.10-next.17 - project: @ai-toolkit/commands-agnostic 0.1.14-next.17 - project: @ai-toolkit/commands-typescript 0.1.11-next.17 * fix(workflow): improve commit list handling in production update workflow (#113) - Captured git log output into a variable to avoid parsing issues with special characters. - Updated the PR body generation to use the new variable for displaying commit lists, enhancing reliability and readability. * chore(release): [skip ci] publish - project: @uniswap/ai-toolkit-nx-claude 0.5.10-next.19 - project: @ai-toolkit/utils 0.2.10-next.18 - project: @ai-toolkit/agents-agnostic 0.2.10-next.18 - project: @ai-toolkit/commands-agnostic 0.1.14-next.18 - project: @ai-toolkit/commands-typescript 0.1.11-next.18 * chore: update package-lock.json and improve changelog workflow descriptions (#115) - Removed unnecessary "dev" flags from dependencies in package-lock.json. - Updated descriptions in the _generate-changelog.yml workflow for clarity and consistency, ensuring all descriptions use double quotes. * chore(release): [skip ci] publish - project: @uniswap/ai-toolkit-nx-claude 0.5.10-next.20 - project: @ai-toolkit/utils 0.2.10-next.19 - project: @ai-toolkit/agents-agnostic 0.2.10-next.19 - project: @ai-toolkit/commands-agnostic 0.1.14-next.19 - project: @ai-toolkit/commands-typescript 0.1.11-next.19 * fix(ci): fix parsing issues in changelog generator (#117) * chore: update package-lock.json and improve changelog workflow descriptions - Removed unnecessary "dev" flags from dependencies in package-lock.json. - Updated descriptions in the _generate-changelog.yml workflow for clarity and consistency, ensuring all descriptions use double quotes. * fix(workflow): use heredoc pattern to safely handle changelog with backticks The changelog assignment was causing bash command substitution errors when the AI-generated changelog contained markdown code blocks with backticks. This fix uses a heredoc pattern with single quotes to prevent bash from interpreting special characters, matching the pattern already used in _generate-changelog.yml. Fixes the 'markdown: command not found' errors in the finalize-pr job. * chore(release): [skip ci] publish - project: @uniswap/ai-toolkit-nx-claude 0.5.10-next.21 - project: @ai-toolkit/utils 0.2.10-next.20 - project: @ai-toolkit/agents-agnostic 0.2.10-next.20 - project: @ai-toolkit/commands-agnostic 0.1.14-next.20 - project: @ai-toolkit/commands-typescript 0.1.11-next.20 * fix(changelog): [skip ci] correct markdown formatting in changelog prompt - Updated markdown formatting in `.github/prompts/production-release-changelog.md` to ensure proper rendering of code blocks and section headers. - Removed unnecessary markdown syntax to enhance clarity and consistency in the changelog structure. --------- Co-authored-by: Nick Koutrelakos <nick.koutrelakos@uniswap.org> Co-authored-by: Nick Koutrelakos <wkoutre@users.noreply.github.com> Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com> Co-authored-by: Alex Melville <Melvillian@users.noreply.github.com> Co-authored-by: dgilmanuni <david.gilman@uniswap.org> Co-authored-by: Melvillian <alex.melville@uniswap.org>
wkoutre
added a commit
that referenced
this pull request
Oct 28, 2025
* chore: update AI model references to sonnet-4.5 - Updated README.md to recommend sonnet-4.5 as the preferred model for new agents. - Changed model references in commit-message-generator.md and pr-creator.md to sonnet-4.5. - Modified schema.d.ts and schema.json to include sonnet-4.5 as an option for agent models. * chore(release): publish - project: @uniswap/ai-toolkit-nx-claude 0.5.10-next.0 - project: @ai-toolkit/utils 0.2.10-next.0 - project: @ai-toolkit/agents-agnostic 0.2.10-next.0 - project: @ai-toolkit/commands-agnostic 0.1.14-next.0 - project: @ai-toolkit/commands-typescript 0.1.11-next.0 * chore: update AI model references to sonnet-4.5 (#70) - Updated README.md to recommend sonnet-4.5 as the preferred model for new agents. - Changed model references in commit-message-generator.md and pr-creator.md to sonnet-4.5. - Modified schema.d.ts and schema.json to include sonnet-4.5 as an option for agent models. * chore(release): publish - project: @uniswap/ai-toolkit-nx-claude 0.5.10-next.1 - project: @ai-toolkit/utils 0.2.10-next.1 - project: @ai-toolkit/agents-agnostic 0.2.10-next.1 - project: @ai-toolkit/commands-agnostic 0.1.14-next.1 - project: @ai-toolkit/commands-typescript 0.1.11-next.1 * Improve the claude docs agents by adding a fact-checker subagent that… (#73) * Improve the claude docs agents by adding a fact-checker subagent that verifies the output of other claude doc agents Completes DEV-107 sub-commits: add initial plan implement plan for updating claude-docs to use fact-checker and batched approvals * add model prompt parameter to several subagents * chore(release): publish - project: @uniswap/ai-toolkit-nx-claude 0.5.10-next.2 - project: @ai-toolkit/utils 0.2.10-next.2 - project: @ai-toolkit/agents-agnostic 0.2.10-next.2 - project: @ai-toolkit/commands-agnostic 0.1.14-next.2 - project: @ai-toolkit/commands-typescript 0.1.11-next.2 * chore(ci): Setup trusted publishing (#74) * improvement: update execute-plan documentation to require user confirmation for git commits at logical completion points (#72) * improvement: update execute-plan documentation to require user confirmation for git commits at logical completion points * improvement: require user confirmation before creating git commits in various workflows * chore: add ignoreCommand to vercel.json for slack-oauth-backend to optimize deployment process (#75) ### TL;DR Added an ignore command to the Vercel configuration for the Slack OAuth backend to skip deployments when the project is not affected. ### What changed? Added an `ignoreCommand` to the `vercel.json` file that uses the Nx affected projects detection to determine if the `slack-oauth-backend` project was modified between the previous and current commit. If the project wasn't affected, the deployment will be skipped. ### How to test? 1. Make a change to a different project in the monorepo 2. Verify that the Slack OAuth backend doesn't deploy on Vercel 3. Make a change to the Slack OAuth backend 4. Verify that the deployment proceeds as expected ### Why make this change? This optimization prevents unnecessary deployments of the Slack OAuth backend when changes are made to unrelated parts of the codebase. This will save deployment resources and time by only triggering deployments when the project is actually affected by changes. * ci: enhance production update workflow with categorized changelog and Slack notifications (#76) ### Summary of Changes - Updated the production update workflow to generate a categorized changelog based on commit types (features, fixes, documentation, maintenance, and others). - Added Slack notifications for both successful PR creation and merge conflicts. - Improved workflow documentation to clarify required secrets and behavior. - Assigned specific reviewers to the PR and included detailed next steps in the summary. ### Why This Change? These enhancements streamline the release process, improve communication with the team, and ensure that the changelog is informative and well-structured for easier review. * fix(ci): remove redundant NPM authentication step (#77) ### Summary of Changes - Replaced single quotes with double quotes for consistency in the `publish-packages.yml` file. - Removed the NPM authentication verification step that was conditional on the dry run input. ### Why This Change? These adjustments improve the readability of the workflow file and streamline the publishing process by eliminating unnecessary checks. * chore: remove NPM authentication references from configuration files (#78) ### Summary of Changes - Deleted `always-auth` and `_authToken` entries from `.npmrc`. - Removed `NODE_AUTH_TOKEN` references from the GitHub Actions workflow and documentation. ### Why This Change? These modifications streamline the configuration by eliminating unnecessary authentication steps, enhancing clarity and security in the publishing process. * feat: add more mcps to addons generator and enhance default installation flow (#71) * feat: enhance addon installation process and conditional prompting - Added support for installing all MCP servers at once or a specific one via new `installMode` option. - Updated generator logic to handle installation modes and provide detailed installation summaries. - Introduced critical rules for conditional prompting in Nx generator schemas to improve user experience. - Expanded addon registry with new MCP servers including Graphite, Nx, Slack, and others. - Enhanced documentation for MCP authentication instructions and setup guidance. * get notion mcp addon working This required changing the AddonMetadata interface to support a new non-command based way of adding mcps to claude --------- Co-authored-by: Melvillian <alex.melville@uniswap.org> * chore(ci): Fixes for trusted publishing (#81) * fix(addons): fix configs for remaining mcp installation issues (#83) ### TL;DR Updated MCP configuration for Figma and Vercel addons to use the new transport/url pattern. ### What changed? Modified the addon registry configuration for Figma and Vercel addons: - Renamed `command` to `transport` in both addon configurations - Renamed `args` array to `url` string property - Preserved the actual transport types and URLs ### How to test? 1. Verify that the Figma addon connects properly using SSE transport to `http://127.0.0.1:3845/mcp` 2. Verify that the Vercel addon connects properly using HTTP transport to `https://mcp.vercel.com` ### Why make this change? This change standardizes the MCP configuration pattern by using more descriptive property names (`transport` instead of `command`, `url` instead of an array of arguments). This improves code readability and makes the configuration more intuitive while maintaining the same functionality. * refactor: transition from Bun to npm as the package manager (#80) - Removed Bun-related configurations and commands throughout the project. - Updated all instances of `bunx` to `npx` in scripts, documentation, and configuration files. - Deleted `bun.lock` and `bun.lockb` files, replacing them with `package-lock.json`. - Adjusted CI/CD workflows to utilize npm commands for dependency installation and package management. - Enhanced documentation to reflect the changes in package management and installation processes. This transition aims to streamline the development workflow and improve compatibility across environments. * chore(release): publish - project: @uniswap/ai-toolkit-nx-claude 0.5.10-next.3 - project: @ai-toolkit/utils 0.2.10-next.3 - project: @ai-toolkit/agents-agnostic 0.2.10-next.3 - project: @ai-toolkit/commands-agnostic 0.1.14-next.3 - project: @ai-toolkit/commands-typescript 0.1.11-next.3 * feat: add daily standup command to summarize tasks and GitHub activity (#79) ### Summary of Changes - Introduced a new command `daily-standup` that checks assigned Linear tasks and generates a team update. - Documented the workflow process, execution steps, usage examples, and output format in `daily-standup.md`. - Updated `index.ts` to include the new command with a brief description. ### Why This Change? This addition enhances team communication by providing a structured update on ongoing tasks and recent GitHub activity, facilitating better collaboration during daily standups. * feat(ci): Update packages and add environment to publishing (#85) * chore: update package-lock.json (#86) * chore(release): publish - project: @uniswap/ai-toolkit-nx-claude 0.5.10-next.4 - project: @ai-toolkit/utils 0.2.10-next.4 - project: @ai-toolkit/agents-agnostic 0.2.10-next.4 - project: @ai-toolkit/commands-agnostic 0.1.14-next.4 - project: @ai-toolkit/commands-typescript 0.1.11-next.4 * feat(ci): Add Slack notification for next branch package publishes (#88) - Implemented a new step in the GitHub Actions workflow to send a Slack notification when packages are published from the `next` branch. - The notification includes details about the published packages, the commit SHA, and a link to the workflow run. - This enhancement aims to improve communication and visibility for team members regarding package releases. * chore(release): publish - project: @uniswap/ai-toolkit-nx-claude 0.5.10-next.5 - project: @ai-toolkit/utils 0.2.10-next.5 - project: @ai-toolkit/agents-agnostic 0.2.10-next.5 - project: @ai-toolkit/commands-agnostic 0.1.14-next.5 - project: @ai-toolkit/commands-typescript 0.1.11-next.5 * fix(ci): Improve Slack notification payload for next branch publishes (#89) - Updated the Slack notification step in the GitHub Actions workflow to build the JSON payload in a temporary file, enhancing readability and maintainability. - Added error handling for the Slack notification to ensure the workflow continues even if the notification fails. - Escaped package names in the notification to prevent JSON formatting issues. - Improved debugging output by displaying the HTTP status and response from the Slack API. * chore(release): publish - project: @uniswap/ai-toolkit-nx-claude 0.5.10-next.6 - project: @ai-toolkit/utils 0.2.10-next.6 - project: @ai-toolkit/agents-agnostic 0.2.10-next.6 - project: @ai-toolkit/commands-agnostic 0.1.14-next.6 - project: @ai-toolkit/commands-typescript 0.1.11-next.6 * chore(ci): Add pr checks (#87) * chore(ci): Add pre checks * Fix * chore: regenerate package-lock.json with Node.js 22.21.0 - Regenerated lockfile using Node.js v22.21.0 (npm 10.9.4) to match CI environment - Fixes dependency resolution and hoisting differences - Ensures CI package-lock.json validation check passes * Align node versions * base branch fix * chore(release): publish - project: @uniswap/ai-toolkit-nx-claude 0.5.10-next.7 - project: @ai-toolkit/utils 0.2.10-next.7 - project: @ai-toolkit/agents-agnostic 0.2.10-next.7 - project: @ai-toolkit/commands-agnostic 0.1.14-next.7 - project: @ai-toolkit/commands-typescript 0.1.11-next.7 * refactor(ai-toolkit-nx-claude): streamline generator selection process (#90) - Updated the CLI generator to provide a clearer distinction between external and internal usage. - External users now default to the init generator when no arguments are provided, while internal users can access an interactive menu for all generators. - Enhanced documentation within the code to clarify usage scenarios and improve developer experience. * chore(release): publish - project: @uniswap/ai-toolkit-nx-claude 0.5.10-next.8 - project: @ai-toolkit/utils 0.2.10-next.8 - project: @ai-toolkit/agents-agnostic 0.2.10-next.8 - project: @ai-toolkit/commands-agnostic 0.1.14-next.8 - project: @ai-toolkit/commands-typescript 0.1.11-next.8 * chore(ci): enhance changelog generation in publish workflow (#91) - Updated the GitHub Actions workflow to include steps for finding the previous tag and generating an AI-powered changelog. - Added a fallback mechanism to generate a changelog from commits if the AI generation fails. - Improved Slack notification to include version range and changelog details for better visibility during package publishes. * chore(release): publish - project: @uniswap/ai-toolkit-nx-claude 0.5.10-next.9 - project: @ai-toolkit/utils 0.2.10-next.9 - project: @ai-toolkit/agents-agnostic 0.2.10-next.9 - project: @ai-toolkit/commands-agnostic 0.1.14-next.9 - project: @ai-toolkit/commands-typescript 0.1.11-next.9 * feat(generators): implement installMode pattern to enhance prompting behavior (#92) - Introduced the installMode parameter to prevent duplicate prompts when child generators are called programmatically from parent generators. - Updated schema.json and TypeScript interfaces to include the hidden installMode property. - Modified generator logic to skip prompts and use default values when installMode is set to 'default'. - Enhanced documentation to clarify the usage and benefits of the installMode pattern across generators. * chore(release): publish - project: @uniswap/ai-toolkit-nx-claude 0.5.10-next.10 - project: @ai-toolkit/utils 0.2.10-next.10 - project: @ai-toolkit/agents-agnostic 0.2.10-next.10 - project: @ai-toolkit/commands-agnostic 0.1.14-next.10 - project: @ai-toolkit/commands-typescript 0.1.11-next.10 * chore(workflow): update publish workflow for improved changelog generation (#93) - Refactored the GitHub Actions workflow to enhance the changelog generation process. - Changed the handling of the dry run input description and default values to use consistent quotation marks. - Updated the logic to retrieve git diffs and commit messages for better context in changelog generation. - Implemented a fallback mechanism to generate a changelog from commits if AI generation fails. - Improved Slack notification formatting to include commit range and package details. * chore(release): publish - project: @uniswap/ai-toolkit-nx-claude 0.5.10-next.11 - project: @ai-toolkit/utils 0.2.10-next.11 - project: @ai-toolkit/agents-agnostic 0.2.10-next.11 - project: @ai-toolkit/commands-agnostic 0.1.14-next.11 - project: @ai-toolkit/commands-typescript 0.1.11-next.11 * chore(workflow): refine build process and changelog prompt (#94) - Updated the GitHub Actions workflow to build only changed packages instead of all packages. - Enhanced the changelog generation prompt to specify formatting requirements for Slack, including bullet points and text styling. * chore(workflow): refine build process and changelog prompt (#95) chore(workflow): refine build process and changelog prompt - Updated the GitHub Actions workflow to build only changed packages instead of all packages. - Enhanced the changelog generation prompt to specify formatting requirements for Slack, including bullet points and text styling. chore(nx.json): add custom commit message for releases - Introduced a custom commit message format for releases to streamline the publishing process. * chore(nx.json, package-lock.json): streamline versioning and dependency management (#96) - Updated nx.json to simplify versioning configuration by removing redundant git settings and enhancing the commit message format for releases. - Modified package-lock.json to replace 'dev' with 'devOptional' for several dependencies, improving clarity on optional development dependencies. * chore(nx.json): restore git settings for versioning and changelog (#97) - Reintroduced git settings for commit and tag options within the versioning and changelog sections of nx.json to ensure proper handling during releases. * chore(nx.json): add custom commit message for releases (#98) - Introduced a custom commit message format for releases to streamline the publishing process, ensuring consistency in versioning and changelog updates. * chore(ai-toolkit-nx-claude): bump version to 0.5.10-next.12 * chore(workflow): standardize quotation marks and update Node.js setup action - Updated the publish workflow to use consistent double quotation marks for descriptions and default values. - Changed the Node.js setup action to the latest version (v6.0.0) for improved compatibility. * chore(release): [skip ci] publish - project: @uniswap/ai-toolkit-nx-claude 0.5.10-next.13 - project: @ai-toolkit/utils 0.2.10-next.12 - project: @ai-toolkit/agents-agnostic 0.2.10-next.12 - project: @ai-toolkit/commands-agnostic 0.1.14-next.12 - project: @ai-toolkit/commands-typescript 0.1.11-next.12 * chore(workflow): [skip ci] unify quotation marks and enhance changelog formatting - Standardized the use of double quotation marks in the publish workflow for descriptions and default values. - Updated the changelog formatting requirements to specify bullet points should be separated by newlines. * chore(workflow): refactor Slack notification process and streamline changelog generation (#99) * chore(release): [skip ci] publish - project: @uniswap/ai-toolkit-nx-claude 0.5.10-next.14 - project: @ai-toolkit/utils 0.2.10-next.13 - project: @ai-toolkit/agents-agnostic 0.2.10-next.13 - project: @ai-toolkit/commands-agnostic 0.1.14-next.13 - project: @ai-toolkit/commands-typescript 0.1.11-next.13 * fix(ci): refactor changelog generation to use reusable AI-powered workflow (#101) * fix(ci): fix failing tests in slack-oauth-backend app (#100) * feat(workflow): add reusable changelog generation and notification workflows (#102) - Introduced `_generate-changelog.yml` for AI-powered changelog generation using commit ranges. - Added `_notify-release.yml` for sending Slack notifications about package releases. - Updated `README.md` to reflect new workflow structure and usage. - Created `release-publish-packages.yml` and `release-update-production.yml` to manage package publishing and production updates with integrated changelog generation. - Implemented `ci-pr-checks.yml` for validating pull requests with installation and build checks. * feat(workflow): implement comprehensive package publishing workflow - Added a new GitHub Actions workflow for publishing packages to NPM, handling versioning, changelog generation, and Slack notifications. - The workflow supports both production and pre-release deployments, triggered on pushes to 'main' and 'next' branches. - Integrated AI-powered changelog generation and notifications for release updates. - Included steps for syncing the 'next' branch with 'main' after production releases, ensuring streamlined version management. * fix(oauth): standardize error code format in OAuth error handling - Updated the error code from 'invalid_code' to 'INVALID_CODE' for consistency in error responses. * chore(release): [skip ci] publish - project: @uniswap/ai-toolkit-nx-claude 0.5.10-next.15 - project: @ai-toolkit/utils 0.2.10-next.14 - project: @ai-toolkit/agents-agnostic 0.2.10-next.14 - project: @ai-toolkit/commands-agnostic 0.1.14-next.14 - project: @ai-toolkit/commands-typescript 0.1.11-next.14 * refactor(docs): update CLAUDE.md guidelines and enhance changelog generation workflow (#104) - Corrected formatting in CLAUDE.md and added a new step for typechecking code changes. - Improved the changelog generation workflow by using heredoc for safer prompt assignment in `_generate-changelog.yml`. - Standardized the use of GITHUB_TOKEN in `release-update-production.yml` to ensure consistent access across jobs. * nickkoutrelakos/fix-update-production-workflow (#107) * refactor(docs): update CLAUDE.md guidelines and enhance changelog generation workflow - Corrected formatting in CLAUDE.md and added a new step for typechecking code changes. - Improved the changelog generation workflow by using heredoc for safer prompt assignment in `_generate-changelog.yml`. - Standardized the use of GITHUB_TOKEN in `release-update-production.yml` to ensure consistent access across jobs. * chore(workflow): [skip ci] enhance reviewer assignment and error handling in release update workflow - Standardized quotation marks in the `release-update-production.yml` file for consistency. - Added a step to handle automatic reviewer assignment, including a fallback comment if the assignment fails. - Updated the summary output to reflect whether reviewers were assigned automatically or need to be added manually. * refactor(workflow): enhance changelog generation logic in GitHub Actions (#109) - Updated the `_generate-changelog.yml` workflow to improve prompt handling by using boolean flags for condition evaluation. - Replaced inline checks with safer evaluations to ensure robust prompt assignment from custom inputs or file sources. * chore(release): [skip ci] publish - project: @uniswap/ai-toolkit-nx-claude 0.5.10-next.16 - project: @ai-toolkit/utils 0.2.10-next.15 - project: @ai-toolkit/agents-agnostic 0.2.10-next.15 - project: @ai-toolkit/commands-agnostic 0.1.14-next.15 - project: @ai-toolkit/commands-typescript 0.1.11-next.15 * feat: enhance changelog generation and workflow configuration (#110) - Excluded commits with `chore(release)` from changelog analysis. - Added a new prompt file for generating release changelogs with specific formatting and content guidelines in `.github/prompts/release-changelog.md`. - Updated the workflow to utilize the new changelog prompt file for improved release notes generation. * chore(release): [skip ci] publish - project: @uniswap/ai-toolkit-nx-claude 0.5.10-next.17 - project: @ai-toolkit/utils 0.2.10-next.16 - project: @ai-toolkit/agents-agnostic 0.2.10-next.16 - project: @ai-toolkit/commands-agnostic 0.1.14-next.16 - project: @ai-toolkit/commands-typescript 0.1.11-next.16 * chore(workflow): update package publishing and changelog generation (#111) - Changed the pre-version command in `nx.json` to use `npx nx affected -t build` for more accurate affected package detection. - Enhanced GitHub Actions workflows to determine affected packages before building and publishing, ensuring only necessary packages are processed. - Added a step to prepare changelog for Slack notifications, improving release communication. - Updated conditions for versioning and publishing to only proceed if affected packages are detected. * chore(release): [skip ci] publish - project: @uniswap/ai-toolkit-nx-claude 0.5.10-next.18 - project: @ai-toolkit/utils 0.2.10-next.17 - project: @ai-toolkit/agents-agnostic 0.2.10-next.17 - project: @ai-toolkit/commands-agnostic 0.1.14-next.17 - project: @ai-toolkit/commands-typescript 0.1.11-next.17 * fix(workflow): improve commit list handling in production update workflow (#113) - Captured git log output into a variable to avoid parsing issues with special characters. - Updated the PR body generation to use the new variable for displaying commit lists, enhancing reliability and readability. * chore(release): [skip ci] publish - project: @uniswap/ai-toolkit-nx-claude 0.5.10-next.19 - project: @ai-toolkit/utils 0.2.10-next.18 - project: @ai-toolkit/agents-agnostic 0.2.10-next.18 - project: @ai-toolkit/commands-agnostic 0.1.14-next.18 - project: @ai-toolkit/commands-typescript 0.1.11-next.18 * chore: update package-lock.json and improve changelog workflow descriptions (#115) - Removed unnecessary "dev" flags from dependencies in package-lock.json. - Updated descriptions in the _generate-changelog.yml workflow for clarity and consistency, ensuring all descriptions use double quotes. * chore(release): [skip ci] publish - project: @uniswap/ai-toolkit-nx-claude 0.5.10-next.20 - project: @ai-toolkit/utils 0.2.10-next.19 - project: @ai-toolkit/agents-agnostic 0.2.10-next.19 - project: @ai-toolkit/commands-agnostic 0.1.14-next.19 - project: @ai-toolkit/commands-typescript 0.1.11-next.19 * fix(ci): fix parsing issues in changelog generator (#117) * chore: update package-lock.json and improve changelog workflow descriptions - Removed unnecessary "dev" flags from dependencies in package-lock.json. - Updated descriptions in the _generate-changelog.yml workflow for clarity and consistency, ensuring all descriptions use double quotes. * fix(workflow): use heredoc pattern to safely handle changelog with backticks The changelog assignment was causing bash command substitution errors when the AI-generated changelog contained markdown code blocks with backticks. This fix uses a heredoc pattern with single quotes to prevent bash from interpreting special characters, matching the pattern already used in _generate-changelog.yml. Fixes the 'markdown: command not found' errors in the finalize-pr job. * chore(release): [skip ci] publish - project: @uniswap/ai-toolkit-nx-claude 0.5.10-next.21 - project: @ai-toolkit/utils 0.2.10-next.20 - project: @ai-toolkit/agents-agnostic 0.2.10-next.20 - project: @ai-toolkit/commands-agnostic 0.1.14-next.20 - project: @ai-toolkit/commands-typescript 0.1.11-next.20 * fix(changelog): [skip ci] correct markdown formatting in changelog prompt - Updated markdown formatting in `.github/prompts/production-release-changelog.md` to ensure proper rendering of code blocks and section headers. - Removed unnecessary markdown syntax to enhance clarity and consistency in the changelog structure. * chore(ci): add concurrency to pr checks (#120) * fix(ci): reorder npm dependency installation steps in workflow - Moved the installation of npm to occur before the installation of dependencies, ensuring the latest npm version is used for package management. - Streamlined the workflow for better clarity and efficiency in the CI process. * chore(workflow): npm ci version * chore: update prepare script for git hooks installation * fix(workflow): enhance affected projects detection in CI --------- Co-authored-by: Nick Koutrelakos <nick.koutrelakos@uniswap.org> Co-authored-by: Nick Koutrelakos <wkoutre@users.noreply.github.com> Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com> Co-authored-by: Alex Melville <Melvillian@users.noreply.github.com> Co-authored-by: dgilmanuni <david.gilman@uniswap.org> Co-authored-by: Melvillian <alex.melville@uniswap.org>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.

nx.jsonto usenpx nx affected -t buildfor more accurate affected package detection.