Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
21 commits
Select commit Hold shift + click to select a range
3cafecb
remove workflow completely
lionakhnazarov Dec 12, 2025
92693bb
flow back
lionakhnazarov Dec 12, 2025
7fb3e0a
run on pr
lionakhnazarov Dec 12, 2025
e50cc20
Update contracts-ecdsa.yml
lionakhnazarov Dec 12, 2025
bc75b65
revert workflow dispatch
lionakhnazarov Dec 12, 2025
7af61bf
touch workflow
lionakhnazarov Dec 12, 2025
f81d510
merge
lionakhnazarov Apr 1, 2026
afce3b3
Merge branch 'main' of github.com:lionakhnazarov/keep-core
lionakhnazarov Apr 1, 2026
d95fe50
feat(electrum): add Testnet4 configuration and update network handling
lionakhnazarov Apr 8, 2026
2340980
Remove dead Thesis Electrum URL from test cases and delete unused exp…
lionakhnazarov Apr 8, 2026
9b7c270
fix(ci): sync ECDSA yarn.lock and enable corepack for Yarn 4
lionakhnazarov Apr 8, 2026
7e7cdc0
fix(ci): use Yarn 4 in ECDSA workflow and sync yarn.lock
lionakhnazarov Apr 8, 2026
f1cb683
fix(solidity): drop hardhat-chai-matchers; incompatible with hardhat-…
lionakhnazarov Apr 8, 2026
45358ad
ci: enable Corepack Yarn 4 for npm and random-beacon Solidity workflows
lionakhnazarov Apr 8, 2026
4db74e2
fix(yarn): add fs-extra for @keep-network/hardhat-helpers (Yarn 4 str…
lionakhnazarov Apr 8, 2026
0a5581d
ci: drop setup-node yarn cache (fixes Yarn 1 vs packageManager Yarn 4)
lionakhnazarov Apr 8, 2026
ae04f05
ci: set GIT_CONFIG_GLOBAL for Yarn git dependencies on GitHub Actions
lionakhnazarov Apr 8, 2026
8446043
fix(dependencies): update ethereumjs-abi resolution to npm:0.6.8 in p…
lionakhnazarov Apr 8, 2026
3b3a76d
fix(yarn): add package extensions for eth-sig-util to pin ethereumjs-…
lionakhnazarov Apr 8, 2026
3432891
fix(yarn): update ethereumjs-abi resolution to git URL in ECDSA and r…
lionakhnazarov Apr 8, 2026
fe04ccc
ci: enhance Git configuration for Yarn dependencies in workflows
lionakhnazarov Apr 8, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
19 changes: 19 additions & 0 deletions .github/actions/setup-git-for-yarn/action.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,19 @@
name: Setup Git for Yarn (git dependencies)
description: >
Configure Git so Yarn can clone dependencies (e.g. thesis/eslint-config) on
GitHub-hosted runners. Sets GIT_CONFIG_GLOBAL and GIT_CONFIG_NOSYSTEM to avoid
broken system config ("invalid key core.autocrlf" / unable to write config).
runs:
using: composite
steps:
- name: Configure Git for Yarn clones
shell: bash
run: |
set -euo pipefail
CFG="${RUNNER_TEMP}/yarn-gitconfig"
: >"$CFG"
git config --file "$CFG" core.autocrlf false
{
echo "GIT_CONFIG_GLOBAL=${CFG}"
echo "GIT_CONFIG_NOSYSTEM=1"
} >> "$GITHUB_ENV"
78 changes: 60 additions & 18 deletions .github/workflows/contracts-ecdsa.yml
Original file line number Diff line number Diff line change
Expand Up @@ -56,11 +56,18 @@ jobs:
# artifacts generation during `hardhat compile` - see
# https://github.com/NomicFoundation/hardhat/issues/3877
node-version: "18.15.0"
cache: "yarn"
cache-dependency-path: solidity/ecdsa/yarn.lock

- uses: ./.github/actions/setup-git-for-yarn

- name: Install dependencies
run: yarn install
run: |
export GIT_CONFIG_GLOBAL="${RUNNER_TEMP:-/tmp}/yarn-gitconfig"
export GIT_CONFIG_NOSYSTEM=1
git config --file "$GIT_CONFIG_GLOBAL" core.autocrlf false
corepack enable
corepack prepare yarn@4.8.1 --activate
yarn --version
yarn install --immutable

- name: Build
run: yarn build
Expand All @@ -83,8 +90,6 @@ jobs:
# artifacts generation during `hardhat compile` - see
# https://github.com/NomicFoundation/hardhat/issues/3877
node-version: "18.15.0"
cache: "yarn"
cache-dependency-path: solidity/ecdsa/yarn.lock

- uses: actions/setup-python@v4
with:
Expand All @@ -103,8 +108,17 @@ jobs:
SLITHER_VERSION: 0.8.3
run: pip3 install slither-analyzer==$SLITHER_VERSION

- uses: ./.github/actions/setup-git-for-yarn

- name: Install dependencies
run: yarn install
run: |
export GIT_CONFIG_GLOBAL="${RUNNER_TEMP:-/tmp}/yarn-gitconfig"
export GIT_CONFIG_NOSYSTEM=1
git config --file "$GIT_CONFIG_GLOBAL" core.autocrlf false
corepack enable
corepack prepare yarn@4.8.1 --activate
yarn --version
yarn install --immutable

# As a workaround for a slither issue https://github.com/crytic/slither/issues/1140
# we disable compilation of dependencies when running slither.
Expand All @@ -126,11 +140,18 @@ jobs:
# artifacts generation during `hardhat compile` - see
# https://github.com/NomicFoundation/hardhat/issues/3877
node-version: "18.15.0"
cache: "yarn"
cache-dependency-path: solidity/ecdsa/yarn.lock

- uses: ./.github/actions/setup-git-for-yarn

- name: Install dependencies
run: yarn install
run: |
export GIT_CONFIG_GLOBAL="${RUNNER_TEMP:-/tmp}/yarn-gitconfig"
export GIT_CONFIG_NOSYSTEM=1
git config --file "$GIT_CONFIG_GLOBAL" core.autocrlf false
corepack enable
corepack prepare yarn@4.8.1 --activate
yarn --version
yarn install --immutable

- name: Build solidity contracts
run: yarn build
Expand All @@ -154,11 +175,18 @@ jobs:
# artifacts generation during `hardhat compile` - see
# https://github.com/NomicFoundation/hardhat/issues/3877
node-version: "18.15.0"
cache: "yarn"
cache-dependency-path: solidity/ecdsa/yarn.lock

- uses: ./.github/actions/setup-git-for-yarn

- name: Install dependencies
run: yarn install --frozen-lockfile
run: |
export GIT_CONFIG_GLOBAL="${RUNNER_TEMP:-/tmp}/yarn-gitconfig"
export GIT_CONFIG_NOSYSTEM=1
git config --file "$GIT_CONFIG_GLOBAL" core.autocrlf false
corepack enable
corepack prepare yarn@4.8.1 --activate
yarn --version
yarn install --immutable

- name: Deploy contracts
run: yarn deploy:test
Expand Down Expand Up @@ -188,12 +216,19 @@ jobs:
# artifacts generation during `hardhat compile` - see
# https://github.com/NomicFoundation/hardhat/issues/3877
node-version: "18.15.0"
cache: "yarn"
cache-dependency-path: solidity/ecdsa/yarn.lock
registry-url: "https://registry.npmjs.org"

- uses: ./.github/actions/setup-git-for-yarn

- name: Install dependencies
run: yarn install --frozen-lockfile
run: |
export GIT_CONFIG_GLOBAL="${RUNNER_TEMP:-/tmp}/yarn-gitconfig"
export GIT_CONFIG_NOSYSTEM=1
git config --file "$GIT_CONFIG_GLOBAL" core.autocrlf false
corepack enable
corepack prepare yarn@4.8.1 --activate
yarn --version
yarn install --immutable

- name: Get upstream packages versions
uses: keep-network/ci/actions/upstream-builds-query@v2
Expand Down Expand Up @@ -289,12 +324,19 @@ jobs:
# artifacts generation during `hardhat compile` - see
# https://github.com/NomicFoundation/hardhat/issues/3877
node-version: "18.15.0"
cache: "yarn"
cache-dependency-path: solidity/ecdsa/yarn.lock
registry-url: "https://registry.npmjs.org"

- uses: ./.github/actions/setup-git-for-yarn

- name: Install dependencies
run: yarn install --frozen-lockfile
run: |
export GIT_CONFIG_GLOBAL="${RUNNER_TEMP:-/tmp}/yarn-gitconfig"
export GIT_CONFIG_NOSYSTEM=1
git config --file "$GIT_CONFIG_GLOBAL" core.autocrlf false
corepack enable
corepack prepare yarn@4.8.1 --activate
yarn --version
yarn install --immutable

- name: Get upstream packages versions
uses: keep-network/ci/actions/upstream-builds-query@v2
Expand Down
78 changes: 60 additions & 18 deletions .github/workflows/contracts-random-beacon.yml
Original file line number Diff line number Diff line change
Expand Up @@ -56,11 +56,18 @@ jobs:
# artifacts generation during `hardhat compile` - see
# https://github.com/NomicFoundation/hardhat/issues/3877
node-version: "18.15.0"
cache: "yarn"
cache-dependency-path: solidity/random-beacon/yarn.lock

- uses: ./.github/actions/setup-git-for-yarn

- name: Install dependencies
run: yarn install --network-concurrency 1
run: |
export GIT_CONFIG_GLOBAL="${RUNNER_TEMP:-/tmp}/yarn-gitconfig"
export GIT_CONFIG_NOSYSTEM=1
git config --file "$GIT_CONFIG_GLOBAL" core.autocrlf false
corepack enable
corepack prepare yarn@4.8.1 --activate
yarn --version
yarn install --immutable

- name: Build
run: yarn build
Expand All @@ -83,8 +90,6 @@ jobs:
# artifacts generation during `hardhat compile` - see
# https://github.com/NomicFoundation/hardhat/issues/3877
node-version: "18.15.0"
cache: "yarn"
cache-dependency-path: solidity/random-beacon/yarn.lock

- uses: actions/setup-python@v4
with:
Expand All @@ -103,8 +108,17 @@ jobs:
SLITHER_VERSION: 0.8.3
run: pip3 install slither-analyzer==$SLITHER_VERSION

- uses: ./.github/actions/setup-git-for-yarn

- name: Install dependencies
run: yarn install --network-concurrency 1
run: |
export GIT_CONFIG_GLOBAL="${RUNNER_TEMP:-/tmp}/yarn-gitconfig"
export GIT_CONFIG_NOSYSTEM=1
git config --file "$GIT_CONFIG_GLOBAL" core.autocrlf false
corepack enable
corepack prepare yarn@4.8.1 --activate
yarn --version
yarn install --immutable

- name: Run Slither
run: slither .
Expand All @@ -124,11 +138,18 @@ jobs:
# artifacts generation during `hardhat compile` - see
# https://github.com/NomicFoundation/hardhat/issues/3877
node-version: "18.15.0"
cache: "yarn"
cache-dependency-path: solidity/random-beacon/yarn.lock

- uses: ./.github/actions/setup-git-for-yarn

- name: Install dependencies
run: yarn install --network-concurrency 1
run: |
export GIT_CONFIG_GLOBAL="${RUNNER_TEMP:-/tmp}/yarn-gitconfig"
export GIT_CONFIG_NOSYSTEM=1
git config --file "$GIT_CONFIG_GLOBAL" core.autocrlf false
corepack enable
corepack prepare yarn@4.8.1 --activate
yarn --version
yarn install --immutable

- name: Build solidity contracts
run: yarn build
Expand All @@ -152,11 +173,18 @@ jobs:
# artifacts generation during `hardhat compile` - see
# https://github.com/NomicFoundation/hardhat/issues/3877
node-version: "18.15.0"
cache: "yarn"
cache-dependency-path: solidity/random-beacon/yarn.lock

- uses: ./.github/actions/setup-git-for-yarn

- name: Install dependencies
run: yarn install --network-concurrency 1 --frozen-lockfile
run: |
export GIT_CONFIG_GLOBAL="${RUNNER_TEMP:-/tmp}/yarn-gitconfig"
export GIT_CONFIG_NOSYSTEM=1
git config --file "$GIT_CONFIG_GLOBAL" core.autocrlf false
corepack enable
corepack prepare yarn@4.8.1 --activate
yarn --version
yarn install --immutable

- name: Deploy contracts
run: yarn deploy:test
Expand Down Expand Up @@ -186,12 +214,19 @@ jobs:
# artifacts generation during `hardhat compile` - see
# https://github.com/NomicFoundation/hardhat/issues/3877
node-version: "18.15.0"
cache: "yarn"
cache-dependency-path: solidity/random-beacon/yarn.lock
registry-url: "https://registry.npmjs.org"

- uses: ./.github/actions/setup-git-for-yarn

- name: Install dependencies
run: yarn install --network-concurrency 1 --frozen-lockfile
run: |
export GIT_CONFIG_GLOBAL="${RUNNER_TEMP:-/tmp}/yarn-gitconfig"
export GIT_CONFIG_NOSYSTEM=1
git config --file "$GIT_CONFIG_GLOBAL" core.autocrlf false
corepack enable
corepack prepare yarn@4.8.1 --activate
yarn --version
yarn install --immutable

- name: Get upstream packages versions
uses: keep-network/ci/actions/upstream-builds-query@v2
Expand Down Expand Up @@ -285,12 +320,19 @@ jobs:
# artifacts generation during `hardhat compile` - see
# https://github.com/NomicFoundation/hardhat/issues/3877
node-version: "18.15.0"
cache: "yarn"
cache-dependency-path: solidity/random-beacon/yarn.lock
registry-url: "https://registry.npmjs.org"

- uses: ./.github/actions/setup-git-for-yarn

- name: Install dependencies
run: yarn install --network-concurrency 1 --frozen-lockfile
run: |
export GIT_CONFIG_GLOBAL="${RUNNER_TEMP:-/tmp}/yarn-gitconfig"
export GIT_CONFIG_NOSYSTEM=1
git config --file "$GIT_CONFIG_GLOBAL" core.autocrlf false
corepack enable
corepack prepare yarn@4.8.1 --activate
yarn --version
yarn install --immutable

- name: Get upstream packages versions
uses: keep-network/ci/actions/upstream-builds-query@v2
Expand Down
13 changes: 10 additions & 3 deletions .github/workflows/npm-ecdsa.yml
Original file line number Diff line number Diff line change
Expand Up @@ -30,11 +30,18 @@ jobs:
# https://github.com/NomicFoundation/hardhat/issues/3877.
node-version: "18.15.0"
registry-url: "https://registry.npmjs.org"
cache: "yarn"
cache-dependency-path: solidity/ecdsa/yarn.lock

- uses: ./.github/actions/setup-git-for-yarn

- name: Install dependencies
run: yarn install --frozen-lockfile
run: |
export GIT_CONFIG_GLOBAL="${RUNNER_TEMP:-/tmp}/yarn-gitconfig"
export GIT_CONFIG_NOSYSTEM=1
git config --file "$GIT_CONFIG_GLOBAL" core.autocrlf false
corepack enable
corepack prepare yarn@4.8.1 --activate
yarn --version
yarn install --immutable

# Deploy contracts to a local network to generate deployment artifacts that
# are required by dashboard and client compilation.
Expand Down
13 changes: 11 additions & 2 deletions .github/workflows/npm-random-beacon.yml
Original file line number Diff line number Diff line change
Expand Up @@ -30,8 +30,17 @@ jobs:
# https://github.com/NomicFoundation/hardhat/issues/3877.
node-version: "18.15.0"
registry-url: "https://registry.npmjs.org"
cache: "yarn"
cache-dependency-path: solidity/random-beacon/yarn.lock

- uses: ./.github/actions/setup-git-for-yarn

- name: Enable Yarn 4 (packageManager)
run: |
export GIT_CONFIG_GLOBAL="${RUNNER_TEMP:-/tmp}/yarn-gitconfig"
export GIT_CONFIG_NOSYSTEM=1
git config --file "$GIT_CONFIG_GLOBAL" core.autocrlf false
corepack enable
corepack prepare yarn@4.8.1 --activate
yarn --version

- name: Resolve latest contracts
run: |
Expand Down
1 change: 1 addition & 0 deletions config/_electrum_urls/testnet4
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
ssl://134.199.227.217:50002
7 changes: 7 additions & 0 deletions config/electrum_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -30,6 +30,13 @@ func TestResolveElectrum(t *testing.T) {
},
},
},
bitcoin.Testnet4: {
expectedConfig: []electrum.Config{
{
URL: "ssl://134.199.227.217:50002",
},
},
},
bitcoin.Regtest: {
expectedConfig: []electrum.Config{
{
Expand Down
2 changes: 1 addition & 1 deletion config/network/network.go
Original file line number Diff line number Diff line change
Expand Up @@ -40,7 +40,7 @@ func (n Type) Bitcoin() bitcoin.Network {
return []bitcoin.Network{
bitcoin.Unknown,
bitcoin.Mainnet,
bitcoin.Testnet,
bitcoin.Testnet4, // Sepolia uses Bitcoin testnet4
bitcoin.Regtest,
}[n]
}
3 changes: 2 additions & 1 deletion pkg/bitcoin/bitcoin.go
Original file line number Diff line number Diff line change
Expand Up @@ -88,9 +88,10 @@ const (
Unknown Network = iota
Mainnet
Testnet
Testnet4
Regtest
)

func (n Network) String() string {
return []string{"unknown", "mainnet", "testnet", "regtest"}[n]
return []string{"unknown", "mainnet", "testnet", "testnet4", "regtest"}[n]
}
1 change: 1 addition & 0 deletions solidity/ecdsa/.yarnrc.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
nodeLinker: node-modules
4 changes: 2 additions & 2 deletions solidity/ecdsa/Dockerfile
Original file line number Diff line number Diff line change
Expand Up @@ -15,8 +15,8 @@ WORKDIR $WORK_DIR
# Use `https://` instead of unauthenticated `git://` protocol.
RUN git config --global url."https://".insteadOf git://

COPY package*.json yarn.lock ./
RUN yarn install
COPY package*.json yarn.lock .yarnrc.yml ./
RUN corepack enable && corepack prepare yarn@4.8.1 --activate && yarn install --immutable

COPY . ./

Expand Down
Loading
Loading