Skip to content

chore: release ATS 4.2.0#845

Merged
themariofrancia merged 59 commits intomainfrom
release-4-2-0
Feb 19, 2026
Merged

chore: release ATS 4.2.0#845
themariofrancia merged 59 commits intomainfrom
release-4-2-0

Conversation

@themariofrancia
Copy link
Copy Markdown
Contributor

This pull request updates and improves several GitHub Actions workflow files for better consistency, maintainability, and reliability. The main changes include standardizing workflow names and file naming conventions, updating runner and action versions, improving branch handling logic, tightening workflow triggers, and adding timeouts for job reliability.

Workflow Standardization and Naming:

  • Renamed workflow files and standardized their name fields to follow a consistent [FLOW] or [USER] prefix and numbering scheme. This improves clarity and organization in the Actions UI. [1] [2] [3]

Branch Handling and Comparison Improvements:

  • Updated the changeset check workflow to dynamically use the PR's base branch for all comparisons (instead of hardcoding develop), ensuring correct detection of changesets regardless of the base branch. [1] [2]

Runner, Timeout, and Action Version Updates:

  • Set explicit timeout-minutes for all jobs to prevent long-running or stuck workflows.
  • Updated actions/checkout to v5.0.0 for all workflows, ensuring the latest features and security fixes. [1] [2] [3]
  • Adjusted runner sizes where appropriate for efficiency. [1] [2] [3]

Workflow Logic and Trigger Improvements:

  • Improved PR formatting workflow triggers to only include relevant PR events, reducing unnecessary workflow runs.
  • Enhanced assignee check to properly handle and validate the presence of assignees using environment variables and improved Bash logic.
  • Updated release summary steps in release workflows to use more robust Bash syntax and reference the correct publish workflow files. [1] [2] [3] [4] [5] [6]

Documentation and Clarity:

  • Added or clarified comments throughout the workflows to explain logic and intent, especially around branch handling and workflow triggers. [1] [2]

These changes collectively make the CI/CD workflows more robust, easier to maintain, and less error-prone.

References:
[1] [2] [3] [4] [5] [6] [7] [8] [9] [10] [11] [12] [13] [14] [15] [16] [17] [18] [19]

themariofrancia and others added 30 commits January 23, 2026 08:50
Signed-off-by: Mario Francia <mariofranciarius@gmail.com>
Signed-off-by: Mario Francia <mariofranciarius@gmail.com>
Signed-off-by: Mario Francia <mariofranciarius@gmail.com>
Signed-off-by: Mario Francia <mariofranciarius@gmail.com>
….ts`

Signed-off-by: Mario Francia <mariofranciarius@gmail.com>
…ge cases and improve safety

Signed-off-by: Mario Francia <mariofranciarius@gmail.com>
…andle edge cases and improve safety"

This reverts commit ba6cb33.

Signed-off-by: Mario Francia <mariofranciarius@gmail.com>
Signed-off-by: Mario Francia <mariofranciarius@gmail.com>
Signed-off-by: Mario Francia <mariofranciarius@gmail.com>
Signed-off-by: Mario Francia <mariofranciarius@gmail.com>
Signed-off-by: Mario Francia <mariofranciarius@gmail.com>
Signed-off-by: Mario Francia <mariofranciarius@gmail.com>
Signed-off-by: jaime-iobermudez <jaime.bermudez@io.builders>
Signed-off-by: jaime-iobermudez <jaime.bermudez@io.builders>
Signed-off-by: jaime-iobermudez <jaime.bermudez@io.builders>
Signed-off-by: Mario Francia <mariofranciarius@gmail.com>
Signed-off-by: Alberto Molina <alberto@io.builders>
Co-authored-by: Alberto Molina <alberto@io.builders>
Signed-off-by: Alberto Molina <alberto@io.builders>
Signed-off-by: Alberto Molina <alberto@io.builders>
Signed-off-by: jaime-iobermudez <jaime.bermudez@io.builders>
- Enhanced commit-msg hook to verify/auto-add DCO sign-off
- Added pre-push hook as final gate requiring both DCO + GPG
- Created setup-git.sh script for developer onboarding
- Updated CONTRIBUTING.md with setup instructions

The enforcement layers:
1. pre-commit: lint-staged for code quality
2. commit-msg: DCO verification + auto-addition + commitlint
3. pre-push: blocks push without DCO + GPG signatures

Signed-off-by: Miguel_LZPF <miguel.carpena@io.builders>
Reorganize the monolithic registry generator into a well-structured module
with clear separation of concerns:

Core Components:
- extractor.ts: Contract metadata extraction from artifacts
- scanner.ts: Filesystem scanning and contract discovery
- generator.ts: Code generation logic (formerly registryGenerator.ts)
- pipeline.ts: Main generation orchestration
- types.ts: Centralized type definitions

Utilities:
- abiExtractor: ABI parsing and extraction
- fileUtils: File I/O operations
- logging: Structured logging
- solidityParser: Comprehensive Solidity parser avoiding TypeChain

Benefits:
- Eliminated 6+ second TypeChain import overhead
- Improved maintainability with single-responsibility modules
- Better testability with isolated concerns
- Flexible caching support via --use-cache flag
- New npm script: npm run generate:registry:cached

Infrastructure:
- Updated barrel exports (index.ts files)
- Cleaned up atsRegistry.data.ts (removed unused exports)
- Updated CLI entry point with improved argument parsing
- Enhanced logging capabilities
- Updated integration tests

Removed:
- Old generateRegistry.ts monolithic entry point
- Duplicated operations from infrastructure layer

Reorganized files:
- scripts/tools/generators/registryGenerator.ts →
  registry-generator/core/generator.ts
- scripts/infrastructure/operations/generateRegistryPipeline.ts →
  registry-generator/pipeline.ts

Signed-off-by: Miguel_LZPF <miguel.carpena@io.builders>
Migrate from ts-node with tsconfig-paths/register to tsx for faster,
simpler TypeScript script execution. Remove redundant ts-node configuration
from tsconfig.json since tsx handles path aliases natively.

Changes:
- packages/ats/contracts/package.json: Replace all ts-node invocations
  with tsx in CLI entry points (deploy*, upgrade*, generate:registry)
- packages/ats/contracts/tsconfig.json: Remove ts-node configuration block
- package.json: Add convenience scripts for contracts utilities exposed at
  root level (test:scripts:unit:parallel, test:scripts:integration:parallel,
  upgrade:previewnet, generate:registry, local:hardhat, size, slither, doc)

Benefits:
- Faster script execution with tsx (no tsconfig-paths dependency)
- Simpler configuration (one less configuration block)
- Better IDE integration and debugging support
- Scripts available directly from monorepo root for convenience

Signed-off-by: Miguel_LZPF <miguel.carpena@io.builders>
The pre-push hook was incorrectly rejecting commits that had valid GPG
signatures but whose public keys were not in the local keyring. This
caused pushes to fail when rebasing from branches with commits signed
by other team members.

Changed from `git verify-commit` (requires public key) to
`git log --format=%G?` which checks if a signature EXISTS without
requiring verification. The hook now accepts any signature status
except 'N' (no signature).

Signed-off-by: Miguel Carpena <miguel.carpena@io.builders>
Signed-off-by: Miguel_LZPF <miguel.carpena@io.builders>
Signed-off-by: jaime-iobermudez <jaime.bermudez@io.builders>
Signed-off-by: Alberto Molina <alberto@io.builders>
Signed-off-by: Mario Francia <mariofranciarius@gmail.com>
Signed-off-by: Alberto Molina <alberto@io.builders>
Signed-off-by: Luigi Navarro <luigi@io.builders>
Signed-off-by: Luigi Navarro <luigi@io.builders>
- Updated @typechain/ethers-v5 from 10.2.1 to ^11.1.2 for improved type
  generation
- Updated @typechain/hardhat from ^6.1.2 to ^6.1.6 for bug fixes and
  compatibility
- Updated override constraint for @typechain/ethers-v5 to maintain version
  consistency
- Added new npm script 'test:scripts:unit:coverage' to generate coverage
  reports for scripts directory with c8

Signed-off-by: Miguel_LZPF <miguel.carpena@io.builders>
marcosio and others added 4 commits February 16, 2026 14:23
Signed-off-by: Marcos Serradilla Diez <marcos@io.builders>
Add automated CI deployment testing and apply security/reliability
improvements across all GitHub Actions workflows.

Deployment Testing:
- New 100-flow-ats-deployment-test.yaml with Hardhat + Hiero Solo jobs
- Shared build job with dependency and artifact caching
- Hiero Solo integration via hiero-solo-action v0.16.0
- Docker availability check for graceful Solo job skipping

Workflow Hardening:
- Upgrade actions/checkout v4.2.2 → v5.0.0 across all workflows
- Pin actions/cache to v4.2.3 with commit SHA
- Add timeout-minutes to all jobs (5/15/45 min by type)
- Add defaults.run.shell: bash and concurrency controls
- Add codecov action version annotation
- Update npm to 11.7.0 in mass-payout publish

Script Improvements:
- Replace 195 parallel RPC calls with synchronous registry lookups
- Wrap signer with NonceManager for nonce caching prevention
- Add timing output to registry generation task
- Fix ethers v6 API in diamondCutManager test
- Add selector conflict validation test

Signed-off-by: Miguel_LZPF <miguel.carpena@io.builders>
… adjustBalances (#842)

Signed-off-by: Marcos Serradilla Diez <marcos@io.builders>
Signed-off-by: Mario Francia <mariofranciarius@gmail.com>
@themariofrancia themariofrancia added the New Feature A new feature, service, or documentation. Major changes that are not backwards compatible. label Feb 18, 2026
@themariofrancia themariofrancia marked this pull request as ready for review February 18, 2026 12:15
@themariofrancia themariofrancia requested review from a team as code owners February 18, 2026 12:15
@hedera-eng-infrastructure
Copy link
Copy Markdown

hedera-eng-infrastructure commented Feb 18, 2026

Snyk checks have passed. No issues have been found so far.

Status Scanner Critical High Medium Low Total (0)
Open Source Security 0 0 0 0 0 issues
Licenses 0 0 0 0 0 issues

💻 Catch issues earlier using the plugins for VS Code, JetBrains IDEs, Visual Studio, and Eclipse.

Copy link
Copy Markdown
Contributor

@gregscullard gregscullard left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM

Copy link
Copy Markdown
Contributor

@rbarker-dev rbarker-dev left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

For the workflow files that are numbered they should be incrementing.

{000,001,002,003}
{100,101,102,103}
{300,301}

This gives us an index that we can refer to them as as well as makes organizing by functionality a little easier.

Copy link
Copy Markdown
Contributor

@andrewb1269 andrewb1269 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I left a couple of suggestions, but they are non-blocking for this review. Feel free to address them in a follow-on PR just to follow our standard best practices for formatting. Looks great!

Comment thread .github/workflows/100-flow-ats-deployment-test.yaml
Comment thread .github/workflows/100-flow-ats-deployment-test.yaml
Copy link
Copy Markdown
Contributor

@rbarker-dev rbarker-dev left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Workflow content looks good. Just a comment (see earlier) on the workflow file names.

@themariofrancia
Copy link
Copy Markdown
Contributor Author

Perfect. Noted—I'll apply these changes to develop

@themariofrancia themariofrancia merged commit 95046b3 into main Feb 19, 2026
57 of 60 checks passed
@themariofrancia themariofrancia deleted the release-4-2-0 branch February 19, 2026 10:04
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

New Feature A new feature, service, or documentation. Major changes that are not backwards compatible.

Projects

None yet

Development

Successfully merging this pull request may close these issues.