Skip to content

Main#125

Closed
Dargon789 wants to merge 50 commits intoDargon789-patch-1from
main
Closed

Main#125
Dargon789 wants to merge 50 commits intoDargon789-patch-1from
main

Conversation

@Dargon789
Copy link
Owner

No description provided.

Dargon789 and others added 30 commits July 26, 2025 13:17
Signed-off-by: AU_gdev_19 <64915515+Dargon789@users.noreply.github.com>
Signed-off-by: AU_gdev_19 <64915515+Dargon789@users.noreply.github.com>
Signed-off-by: AU_gdev_19 <64915515+Dargon789@users.noreply.github.com>
Signed-off-by: AU_gdev_19 <64915515+Dargon789@users.noreply.github.com>
Signed-off-by: AU_gdev_19 <64915515+Dargon789@users.noreply.github.com>
Signed-off-by: AU_gdev_19 <64915515+Dargon789@users.noreply.github.com>
Signed-off-by: AU_gdev_19 <64915515+Dargon789@users.noreply.github.com>
Signed-off-by: AU_gdev_19 <64915515+Dargon789@users.noreply.github.com>
* Create nix.yml

Signed-off-by: AU_gdev_19 <64915515+Dargon789@users.noreply.github.com>

* Update .github/workflows/nix.yml

Co-authored-by: sourcery-ai[bot] <58596630+sourcery-ai[bot]@users.noreply.github.com>
Signed-off-by: AU_gdev_19 <64915515+Dargon789@users.noreply.github.com>

---------

Signed-off-by: AU_gdev_19 <64915515+Dargon789@users.noreply.github.com>
Co-authored-by: sourcery-ai[bot] <58596630+sourcery-ai[bot]@users.noreply.github.com>
Signed-off-by: AU_gdev_19 <64915515+Dargon789@users.noreply.github.com>
Signed-off-by: AU_gdev_19 <64915515+Dargon789@users.noreply.github.com>
Signed-off-by: AU_gdev_19 <64915515+Dargon789@users.noreply.github.com>
Signed-off-by: AU_gdev_19 <64915515+Dargon789@users.noreply.github.com>
Signed-off-by: AU_gdev_19 <64915515+Dargon789@users.noreply.github.com>
Signed-off-by: AU_gdev_19 <64915515+Dargon789@users.noreply.github.com>
Signed-off-by: AU_gdev_19 <64915515+Dargon789@users.noreply.github.com>
Signed-off-by: AU_gdev_19 <64915515+Dargon789@users.noreply.github.com>
Signed-off-by: AU_gdev_19 <64915515+Dargon789@users.noreply.github.com>
Signed-off-by: AU_gdev_19 <64915515+Dargon789@users.noreply.github.com>
Signed-off-by: AU_gdev_19 <64915515+Dargon789@users.noreply.github.com>
Signed-off-by: AU_gdev_19 <64915515+Dargon789@users.noreply.github.com>
Signed-off-by: AU_gdev_19 <64915515+Dargon789@users.noreply.github.com>
Signed-off-by: AU_gdev_19 <64915515+Dargon789@users.noreply.github.com>
Signed-off-by: AU_gdev_19 <64915515+Dargon789@users.noreply.github.com>
Signed-off-by: AU_gdev_19 <64915515+Dargon789@users.noreply.github.com>
Signed-off-by: AU_gdev_19 <64915515+Dargon789@users.noreply.github.com>
New Features:
Introduce Hardhat-EDR.json configuration file under .devcontainer
Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com>
Introduce a composite GitHub Action to configure Node.js and pnpm with optional cache restoration.

New Features:

Add Setup env action to install configurable versions of pnpm and Node.js with cache management.
CI:

Add action.yml defining a reusable composite action for environment setup in CI workflows.
Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com>
Update CircleCI configuration to define a basic pipeline that runs a simple “say-hello” job and corresponding workflow, removing the previous custom executor setup and correcting documentation links.

CI:

Adopt CircleCI version 2.1 configuration with updated reference URL
Remove custom executor definition and placeholder job names
Define a new "say-hello" job using the cimg/base:current Docker image with checkout and echo steps
Add a "say-hello-workflow" section to orchestrate the "say-hello" job
Documentation:

Correct CircleCI documentation reference URLs
Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com>
Add a new regression-tests.yml configuration file to centralize and automate cross-repository Solidity regression testing using Forge and Hardhat.

New Features:

Include per-repository settings (forge version, Hardhat config, ignore rules, and Git refs) for over twenty Solidity projects
Configure GitHub Actions runners for ubuntu-latest, windows-latest, and macos-latest
Define custom output parsing templates for Forge and Hardhat build and test commands
Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com>
Dargon789 and others added 19 commits November 11, 2025 08:37
Add a new on-demand regression-testing GitHub Actions workflow to build EDR and Hardhat artifacts, execute a configurable matrix of regression commands across multiple repositories and platforms, and generate a summarized test results table.

New Features:

Introduce .github/workflows/regression-tests.yml with dispatch inputs for Hardhat and EDR references, target repositories, runners, and commands.
Enhancements:

Build and publish EDR artifacts for multiple platforms and optionally bundle them into a Hardhat release.
Drive regression tests via a dynamic matrix of repositories, runners, and commands sourced from external YAML config.
Aggregate per-run outputs and metrics into a formatted GitHub Actions summary table.
CI:

Define build-edr, publish-edr, build-and-publish-hardhat, test, and summarize jobs with appropriate dependencies, matrix strategies, and permission scopes.
Tests:

Configure jobs to install dependencies (Rust, Node, Forge), run Hardhat/Forge commands, capture outputs, and upload artifacts for each matrix combination.
Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com>
* Create FUNDING.json
New Features:

Add FUNDING.json file for sponsorship configuration
Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com>

* Update FUNDING.json

Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com>
Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com>

---------

Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com>
Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com>
Add Docker GitHub Actions workflow to build, push, and sign container images on master branch pushes, pull requests, semantic version tags, and a daily schedule.

CI:

Introduce .github/workflows/docker.yml to build Docker images using Buildx with caching, metadata-action, and login to GitHub Container Registry
Integrate sigstore cosign for signing published images, skipping PR workflows
Schedule automated daily builds via cron and publish semver tag releases as Docker images
Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com>
Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com>
Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com>
* Create SECURITY.md
Documentation:

Introduce SECURITY.md outlining supported versions table and guidelines for reporting vulnerabilities
Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com>

* Update SECURITY.md

Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com>
Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com>

---------

Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com>
Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com>
Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com>
Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com>
…n permissions

Co-authored-by: Copilot Autofix powered by AI <62310815+github-advanced-security[bot]@users.noreply.github.com>
Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com>
Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com>
…n permissions

Co-authored-by: Copilot Autofix powered by AI <62310815+github-advanced-security[bot]@users.noreply.github.com>
Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com>
Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com>
Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com>
Build:
Adjust Docker workflow triggers to use the main branch name for push and pull request events.
Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com>
Build:
Adjust the Google workflow configuration so it runs on pushes to the main branch in addition to master.
Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com>
* Create ci.yml

Build:
Introduce a GitHub Actions CI workflow to format, build, and test the Foundry project on pushes, pull requests, and manual dispatch.

Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com>

* Update .github/workflows/ci.yml

Co-authored-by: sourcery-ai[bot] <58596630+sourcery-ai[bot]@users.noreply.github.com>
Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com>

---------

Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com>
Co-authored-by: sourcery-ai[bot] <58596630+sourcery-ai[bot]@users.noreply.github.com>
CI:
Introduce a pnpm-based GitHub Actions workflow that installs dependencies, runs formatting, and executes the Node.js test suite on push and pull request events.
Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com>
Add a GitHub Actions workflow to build and deploy the Next.js site to GitHub Pages on changes to the main branch.
CI:
Introduce a Next.js GitHub Actions workflow that builds the app, caches dependencies, and uploads the static output as a Pages artifact on pushes to main or manual dispatch.
Deployment:
Add an automated deployment job that publishes the built Next.js site to GitHub Pages using the official deploy-pages action.
Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com>
Bumps the npm_and_yarn group with 1 update in the / directory: [js-yaml](https://github.com/nodeca/js-yaml).


Updates `js-yaml` from 4.1.0 to 4.1.1
- [Changelog](https://github.com/nodeca/js-yaml/blob/master/CHANGELOG.md)
- [Commits](nodeca/js-yaml@4.1.0...4.1.1)

Updates `js-yaml` from 3.14.1 to 3.14.2
- [Changelog](https://github.com/nodeca/js-yaml/blob/master/CHANGELOG.md)
- [Commits](nodeca/js-yaml@4.1.0...4.1.1)

---
updated-dependencies:
- dependency-name: js-yaml
  dependency-version: 4.1.1
  dependency-type: indirect
  dependency-group: npm_and_yarn
- dependency-name: js-yaml
  dependency-version: 3.14.2
  dependency-type: indirect
  dependency-group: npm_and_yarn
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Copy link
Contributor

@sourcery-ai sourcery-ai bot left a comment

Choose a reason for hiding this comment

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

Sorry @Dargon789, you have reached your weekly rate limit of 500000 diff characters.

Please try again later or upgrade to continue using Sourcery

@vercel

This comment was marked as abuse.

@gitguardian
Copy link

gitguardian bot commented Feb 8, 2026

⚠️ GitGuardian has uncovered 1 secret following the scan of your pull request.

Please consider investigating the findings and remediating the incidents. Failure to do so may lead to compromising the associated services or software components.

🔎 Detected hardcoded secret in your pull request
GitGuardian id GitGuardian status Secret Commit Filename
16818786 Triggered Alchemy API Key e66040e .github/config /regression-tests.yml View secret
🛠 Guidelines to remediate hardcoded secrets
  1. Understand the implications of revoking this secret by investigating where it is used in your code.
  2. Replace and store your secret safely. Learn here the best practices.
  3. Revoke and rotate this secret.
  4. If possible, rewrite git history. Rewriting git history is not a trivial act. You might completely break other contributing developers' workflow and you risk accidentally deleting legitimate data.

To avoid such incidents in the future consider


🦉 GitGuardian detects secrets in your source code to help developers and security teams secure the modern development process. You are seeing this because you or someone else with access to this repository has authorized GitGuardian to scan your pull request.

…n permissions

Co-authored-by: Copilot Autofix powered by AI <62310815+github-advanced-security[bot]@users.noreply.github.com>
Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com>
@gemini-code-assist
Copy link
Contributor

Summary of Changes

Hello @Dargon789, I'm Gemini Code Assist1! I'm currently reviewing this pull request and will post my feedback shortly. In the meantime, here's a summary to help you and other reviewers quickly get up to speed!

This pull request establishes a foundational development framework for sovereign smart contracts, aligning with the Coinbase SDK ecosystem. It introduces robust CI/CD pipelines, standardized development environments, comprehensive regression testing, and consistent code styling. The changes aim to create a streamlined and well-documented project structure, enhancing developer experience and ensuring high-quality smart contract development.

Highlights

  • CI/CD Configuration: The CircleCI configuration has been refactored. The original config.yml now contains a simplified 'say-hello' job, while a new web3_defi_gamefi.yml has been added to house the more complex, project-specific web3 DeFi game CI setup, including Docker Hub authentication.
  • Development Environment Setup: A new DevContainer configuration (.devcontainer/Hardhat-EDR.json) has been introduced to standardize the development environment for Hardhat + EDR, specifying Node.js and Rust versions and necessary system dependencies. Additionally, a .env example file provides network configurations for local and testnet deployments.
  • GitHub Actions for Environment Setup: A dedicated GitHub Action (.github/actions/setup-env/action.yml) has been added to streamline the setup of Node.js and pnpm, incorporating caching mechanisms for improved build performance.
  • Comprehensive Regression Testing Configuration: An extensive regression test configuration (.github/config/regression-tests.yml) has been added, defining how various external Solidity repositories should be tested. This includes specific forge-version, hardhat-config details (paths, Solidity versions, optimizers, EVM versions, RPC endpoints), ignore patterns for problematic tests, and ref commit hashes for each project.
  • Project Structure and Tooling Configuration: New configuration files have been added for .gitignore, .gitmodules (for forge-std submodules), .prettierignore, .prettierrc (with Solidity formatting rules), and .vscode/settings.json.default to enforce consistent code style and project structure. A foundry.toml file has also been added for Foundry-specific configurations, including compiler settings, EVM version, and fuzzing parameters.
  • Documentation and Licensing Updates: The README.md has been significantly updated to reflect the project's new identity as a 'Sovereign smart contract development framework aligned with Coinbase SDK, OnchainKit,' detailing framework support and quick start instructions. The LICENSE file has been updated to reflect Coinbase, Inc. as the copyright holder, and new Contributing & Copyright Rail.md, Dockerfile, FUNDING.json, and Grief Shell Memo.json files provide additional project context and metadata.
Changelog
  • .circleci/config.yml
    • Removed custom executor my-custom-executor and its Docker Hub authentication.
    • Replaced the project-specific web3-defi-game-project- job with a generic say-hello job.
    • Updated the workflow name from my-custom-workflow to say-hello-workflow.
  • .circleci/web3_defi_gamefi.yml
    • Added a new CircleCI configuration file.
    • Defined a custom executor my-custom-executor with Docker Hub authentication.
    • Included a web3-defi-game-project- job with a placeholder step.
  • .devcontainer/Hardhat-EDR.json
    • Added a new DevContainer configuration file.
    • Specified Node.js version 18 and Rust version 1.70 as features.
    • Included a postCreateCommand to install libudev-dev and pkg-config.
  • .env
    • Added an example .env file.
    • Provided ETH_NODE_URI and MNEMONIC for localhost, lan, and sepolia.
  • .github/actions/setup-env/action.yml
    • Added a new GitHub Action for setting up Node.js and pnpm.
    • Configured inputs for pnpm and Node.js versions.
    • Implemented caching logic for pnpm dependencies.
  • .github/config/regression-tests.yml
    • Added a new YAML configuration file for regression tests.
    • Defined configurations for multiple Solidity repositories (e.g., Elytro-eth/soul-wallet-contract, PaulRBerg/prb-math, Uniswap/UniswapX, etc.).
    • Each repository configuration includes forge-version, hardhat-config (with paths, Solidity version, remappings, optimizer settings, EVM version, solidityTest parameters, and RPC endpoints), ignore patterns for specific tests, and a ref commit hash.
    • Specified supported runners (ubuntu-latest, windows-latest, macos-latest).
    • Defined commands with patterns and templates for forge build, forge test, hardhat compile, and hardhat test solidity.
  • .gitignore
    • Added standard exclusions for node_modules, .vscode/*, *.local.
    • Included Rocketh-specific exclusions: generated, deployments/localhost, deployments/hardhat*, deployments/lan, _metadata.
    • Added Hardhat-specific exclusions: /coverage, /coverage.json, /.coverage-config.json, /.coverage-data.json, cache, artifacts, docs.
    • Added .vercel and *.ts.
  • .gitmodules
    • Added a new .gitmodules file.
    • Defined three submodules, all pointing to https://github.com/foundry-rs/forge-std but with different local paths: Counter/lib/forge-std, lib/forge-std, and hello_foundry/lib/forge-std.
  • .prettierignore
    • Added a new .prettierignore file.
    • Included exclusions for various directories and files such as node_modules, .vscode/*, deployments, cache, artifacts, package.json, pnpm-lock.yaml.
  • .prettierrc
    • Added a new Prettier configuration file.
    • Set general formatting options: useTabs: true, singleQuote: true, printWidth: 120, bracketSpacing: false.
    • Included prettier-plugin-solidity and specific overrides for *.sol files.
  • .vscode/settings.json.default
    • Added a new default VSCode settings file.
    • Configured editor.formatOnSave to true and editor.defaultFormatter to esbenp.prettier-vscode.
    • Specified Prettier as the formatter for Solidity files and set npm.exclude.
  • Contributing & Copyright Rail.md
    • Added a new Markdown file outlining contribution guidelines.
    • Referenced Coinbase Wallet SDK's CONTRIBUTING.md.
    • Stated copyright for 2024 Coinbase, Inc. under the MIT License.
  • Dockerfile
    • Added a new Dockerfile with a multi-stage build.
    • Included a Node.js (v14) stage for npm package installation and application startup.
    • Included a Python (3.14.2-slim) stage for pip package installation and application startup.
  • FUNDING.json
    • Added a new JSON file for project funding information.
    • Included drips configurations for Ethereum and Base networks.
    • Specified an opRetro project ID.
  • Grief Shell Memo.json
    • Added a new JSON memo file.
    • Recorded a memo from AU_gdev_19 executed by Copilot regarding GitHub workflow scaffolding for sovereign asset sync.
    • Included a timestamp, replay and audit flags, and an anchor message.
  • LICENSE
    • Updated the copyright holder from 'Ronan Sandford' to 'Coinbase, Inc.' and the year to 2024.
    • Slightly rephrased the MIT License text for improved clarity and formatting.
  • README.md
    • Changed the project title to '# coinbase-smartcontracts'.
    • Added a detailed description of the project's purpose and alignment with Coinbase SDK, OnchainKit, and Base Network.
    • Introduced a 'Framework Support' section detailing features like Hardhat/Foundry/Dapptools support, Coinbase SDK integration, Corepack, Nix Store compatibility, and testing rails.
    • Updated 'Quick Start' instructions to use corepack enable, yarn install, yarn compile, and yarn void:deploy.
    • Revised the 'TEST' section to explicitly list Hardhat + Mocha, Foundry fuzzing, and Dapptools.
    • Replaced the detailed 'SCRIPTS' section with a concise summary.
  • foundry.toml
    • Added a new Foundry configuration file.
    • Configured profile.default with solc = "0.8.18", evm_version = "paris", optimizer = true, remappings, and fs_permissions.
    • Configured fuzz settings for runs and max_test_rejects.
    • Configured fmt to ignore cheats/Vm.sol.
Ignored Files
  • Ignored by pattern: .github/workflows/** (10)
    • .github/workflows/Sovereign Asset Sync.yaml
    • .github/workflows/ci.yml
    • .github/workflows/coinbase-smartcontracts.yml
    • .github/workflows/docker.yml
    • .github/workflows/google.yml
    • .github/workflows/nextjs.yml
    • .github/workflows/nix.yml
    • .github/workflows/nodejs-tests.yml
    • .github/workflows/regression-tests.yml
    • .github/workflows/super-linter.yml
Activity
  • The pull request was opened by Dargon789.
  • The PR introduces a new project structure and configuration files, indicating a foundational setup for a smart contract development framework.
  • The changes include updates to CI/CD, development environment, testing, and documentation.
Using Gemini Code Assist

The full guide for Gemini Code Assist can be found on our documentation page, here are some quick tips.

Invoking Gemini

You can request assistance from Gemini at any point by creating a comment using either /gemini <command> or @gemini-code-assist <command>. Below is a summary of the supported commands on the current page.

Feature Command Description
Code Review /gemini review Performs a code review for the current pull request in its current state.
Pull Request Summary /gemini summary Provides a summary of the current pull request in its current state.
Comment @gemini-code-assist Responds in comments when explicitly tagged, both in pull request comments and review comments.
Help /gemini help Displays a list of available commands.

Customization

To customize Gemini Code Assist for GitHub experience, repository maintainers can create a configuration file and/or provide a custom code review style guide (such as PEP-8 for Python) by creating and adding files to a .gemini/ folder in the base of the repository. Detailed instructions can be found here.

Limitations & Feedback

Gemini Code Assist may make mistakes. Please leave feedback on any instances where its feedback is incorrect or counter productive. You can react with 👍 and 👎 on @gemini-code-assist comments. If you're interested in giving your feedback about your experience with Gemini Code Assist for Github and other Google products, sign up here.

You can also get AI-powered code generation, chat, as well as code reviews directly in the IDE at no cost with the Gemini Code Assist IDE Extension.

Footnotes

  1. Review the Privacy Notices, Generative AI Prohibited Use Policy, Terms of Service, and learn how to configure Gemini Code Assist in GitHub here. Gemini can make mistakes, so double check it and use code with caution.

@Dargon789 Dargon789 enabled auto-merge (squash) February 8, 2026 10:59
Copy link
Contributor

@gemini-code-assist gemini-code-assist bot left a comment

Choose a reason for hiding this comment

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

Code Review

This pull request introduces a new development framework for smart contracts with a focus on Hardhat, Foundry, and Coinbase tooling, along with various configuration files and documentation updates. A critical security vulnerability has been identified: a hardcoded Alchemy API key in the regression test configuration file. Other issues include an invalid Dockerfile that concatenates two separate definitions, a likely typo in the file path .github/config /regression-tests.yml, and the security risk of committing the .env file. Additionally, the Dockerfile uses an end-of-life Node.js version, and there are opportunities for improvement and cleanup in CI configuration, GitHub Actions, and documentation.

@Dargon789 Dargon789 disabled auto-merge February 12, 2026 21:12
@Dargon789 Dargon789 closed this Feb 12, 2026
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