Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
49 changes: 15 additions & 34 deletions .github/workflows/test.yml
Original file line number Diff line number Diff line change
Expand Up @@ -7,38 +7,9 @@ on:
pull_request:
workflow_dispatch:

env:
FOUNDRY_PROFILE: ci

jobs:
check:
name: Foundry project
runs-on: ubuntu-latest
permissions:
contents: read
steps:
- uses: actions/checkout@v5
with:
persist-credentials: false
submodules: recursive

- name: Install Foundry
uses: foundry-rs/foundry-toolchain@v1

- name: Show Forge version
run: forge --version

- name: Run Forge fmt
run: forge fmt --check

- name: Run Forge build
run: forge build --sizes

- name: Run Forge tests
run: forge test -vvv

javascript:
name: Deployment tooling and frontend
name: Contract tooling and frontend
runs-on: ubuntu-latest
permissions:
contents: read
Expand All @@ -58,11 +29,17 @@ jobs:
- name: Install deployment dependencies
run: npm ci

- name: Compile Solidity deployment artifacts
run: npm run compile
# The complete local gate also compiles the pinned native contracts and
# executes their bytecode in unmodified go-qrl QRVM. A reviewed compiler
# binary is required; these hosted gates make no VM-execution claim.
- name: Test native accounting model
run: npm run test:model

- name: Test contract tooling
run: npm run test:tooling

- name: Test deployment safety controls
run: node scripts/deploy-hyperion-safety.test.js
- name: Test monitoring rules
run: sh monitoring/test-rules.sh

- name: Install frontend dependencies
working-directory: frontend
Expand All @@ -76,6 +53,10 @@ jobs:
working-directory: frontend
run: npm test

- name: Typecheck frontend
working-directory: frontend
run: npm run typecheck

- name: Build frontend
working-directory: frontend
run: npm run build
6 changes: 5 additions & 1 deletion .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -29,7 +29,11 @@ validator_keys/
keystore_password.txt
*.swp

# Foundry build artifacts
# Local compiler and analysis artifacts
cache/
out/
findings/*

# Generated Python helper caches
__pycache__/
*.py[cod]
265 changes: 33 additions & 232 deletions README.md

Large diffs are not rendered by default.

7 changes: 7 additions & 0 deletions config/hyperion-toolchain.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
{
"hyperionCommit": "cee9d335984c139c1dc0b0e84ec13290031ea4b1",
"compilerVersion": "0.2.0-develop.2026.9.15+commit.cee9d335.Linux.g++",
"compilerSha256": "11b53f5b2519f381aa46d5704d9e0dde3f0ff2552be07b0cd3aba17741ee612a",
"runtime": "Unmodified go-qrl QRVM from native/network/source-lock.json",
"maximumRuntimeBytes": 24576
}
83 changes: 83 additions & 0 deletions config/qrl-upstream-sources.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,83 @@
{
"schemaVersion": 1,
"observedAt": "2026-09-15",
"purpose": "Pinned native QRL source qualification. Execution tests use unmodified go-qrl QRVM.",
"repositories": {
"go-qrl": {
"repository": "https://github.com/cyyber/go-qrl.git",
"branch": "main",
"commit": "9b404c38a63bfebe07cfd07b5f5d144d1c2cf9b9",
"requiredCommits": [
"f313724147f8fd39f63e0e75c43de4ee6153a615",
"81cad58b9599367c336e4dcb5bb331a632d31d97",
"a09cf0d9f46991ce3fa6450c01d9cb02700f1db0",
"fa2cc537b32caebf1969dbb384e17d8d7e096116"
],
"goTests": {
"tags": [],
"packages": [
"./common",
"./accounts/abi",
"./core/vm"
],
"pattern": "Test(IsAddress|MustParseAddress|MustParseMixedcaseAddress|Address|Mixedcase|PrecompiledDepositroot|DepositrootInputLayout|PrecompiledMLDSA87|ABI|Abi|Pack|Unpack|Type|Event|Method|DefaultFunctionParsing)"
}
},
"qrysm": {
"repository": "https://github.com/cyyber/qrysm.git",
"branch": "main",
"commit": "3b816311ac3e86b7a7af40a062ae290318554f7a",
"requiredCommits": [
"4f84e81b88b3dab985ff3b1fb1a89ace15e5a82d",
"820954d3a2877d4e04e34f23276b478a5e4f2266",
"a0c6ec51ee557fb2365f029013665dfaee8b3c06",
"734600fc68829cf147020705250683c10657f862"
],
"goTests": {
"tags": [
"develop"
],
"packages": [
"./config/params",
"./contracts/deposit",
"./beacon-chain/core/blocks"
],
"pattern": "Test(Validate|UnmarshalConfig|Register_MinimumDepositBoundary|DepositInput|VerifyDepositSignature|ProcessDeposit|ProcessDeposits|ProcessVoluntaryExits|VerifyExitAndSignature|ProcessWithdrawals|ProcessBlindWithdrawals|Config_Mainnet|Config_Default)"
}
},
"hyperion": {
"repository": "https://github.com/cyyber/hyperion.git",
"branch": "main",
"commit": "cee9d335984c139c1dc0b0e84ec13290031ea4b1",
"requiredCommits": [
"3232b592ae89d68dd3301c4cb842a43445555f3c",
"27b4107544b34cabd1e5d7d0c30b27b3f0345486",
"2b9a0f1d5352cf7a4d64718fb04b4b6640041ba1"
]
},
"qrvmone": {
"repository": "https://github.com/cyyber/qrvmone.git",
"branch": "main",
"commit": "bca84a21a046bc8506ee4b7a89b31ac9e621904f",
"requiredCommits": [],
"submodules": {
"qrvmc": "b70fb65874ce9a50a55475f800dcb33e39a5a261"
}
}
},
"reviewedProtocol": {
"addressBytes": 64,
"vmWordBytes": 64,
"hashBytes": 32,
"validatorStakeQrl": "40000",
"minimumBeaconDepositQrl": "2000",
"randaoCommitmentBytes": 32,
"publicKeyBytes": 2592,
"signatureBytes": 4627,
"slotsPerEpoch": 128,
"secondsPerSlot": 60,
"minimumActiveEpochsBeforeVoluntaryExit": 16,
"syncCommitteeSize": 128,
"epochsPerSyncCommitteePeriod": 8
}
}
10 changes: 0 additions & 10 deletions config/testnet-hyperion.json

This file was deleted.

10 changes: 0 additions & 10 deletions config/testnet-hyperion.v2.0.json.bak

This file was deleted.

10 changes: 0 additions & 10 deletions config/testnet-hyperion.v2.1.json.bak

This file was deleted.

10 changes: 0 additions & 10 deletions config/testnet-hyperion.v2.2.json.bak

This file was deleted.

12 changes: 0 additions & 12 deletions config/testnet.json

This file was deleted.

Loading
Loading