Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
592 commits
Select commit Hold shift + click to select a range
f384045
Add NetUid type to common
ales-otf Jun 3, 2025
a6ee1c9
Add changes from Max and Dr. Nick
gztensor Jun 4, 2025
66786d5
merged from upstream
Jun 4, 2025
82c10e4
updated spec version to 275
Jun 4, 2025
4234b95
Merge pull request #1614 from opentensor/only-validator-rpc
sam0x17 Jun 4, 2025
ff01f9e
update weight values
JohnReedV Jun 4, 2025
c191384
Replace u16 with NetUid for subnet id
ales-otf Jun 3, 2025
548f984
Merge pull request #1559 from opentensor/hotkey-splitting
sam0x17 Jun 4, 2025
fab5aaf
Convert println comments into log::info. Fix clippy
gztensor Jun 4, 2025
754800d
Fix typing issues (#1715)
ales-otf Jun 4, 2025
b2ebd86
Merge branch 'feat/uniswapv3-lp' into feat/uniswapv3-lp-tick-liquidit…
gztensor Jun 4, 2025
0163d35
Merge pull request #1716 from opentensor/feat/uniswapv3-lp-tick-liqui…
gztensor Jun 4, 2025
cd3e785
Merge devnet-ready
gztensor Jun 4, 2025
3f18789
updated alpha precompile index
Jun 5, 2025
a139021
Use prices in determine_action
gztensor Jun 5, 2025
7de5d89
Add #[repr(transparent)] for NetUid type
gztensor Jun 5, 2025
855e0ba
updating alpha test address
Jun 5, 2025
7851259
Merge pull request #1722 from opentensor/feat/uniswapv3-lp-price-base…
gztensor Jun 5, 2025
55f12f4
Merge branch 'feat/uniswapv3-lp' into feat/uniswapv3-lp-greg
gztensor Jun 5, 2025
c032dd8
Fix tests compilation
ales-otf Jun 5, 2025
8742650
Fee test/debugging in progress
gztensor Jun 5, 2025
d74dc9d
Fix freeze struct for NetUid
gztensor Jun 5, 2025
a54bd4a
Fix zepter
gztensor Jun 6, 2025
b389891
bump polkadot sdk to stable2412-6 and frontier
l0r1s Jun 6, 2025
7d634e6
fix transaction pool from frontier types
l0r1s Jun 6, 2025
ca0dd6f
Remove obsolete code
shamil-gadelshin May 21, 2025
1a16adc
bump frontier commit hash
l0r1s Jun 6, 2025
3f50ae4
Change log level to trace
ales-otf Jun 6, 2025
8bcf1f5
Use user provided liquidity in reserves for checks
gztensor Jun 6, 2025
c28ae81
Merge branch 'feat/uniswapv3-lp' of github.com:opentensor/subtensor i…
gztensor Jun 6, 2025
c5ff21f
Fix benchmarks
gztensor Jun 6, 2025
46736d6
Fix test_add_stake_dispatch_info_ok
gztensor Jun 6, 2025
241fbe1
Merge branch 'feat/uniswapv3-lp' into feat/uniswapv3-lp-greg
gztensor Jun 6, 2025
8d9cde5
Merge pull request #1724 from opentensor/clean-up-obsolete-code
ales-otf Jun 9, 2025
09689a1
Fix git conflicts
ales-otf Jun 9, 2025
a5e141f
Fix git conflicts
ales-otf Jun 9, 2025
df810af
Fix pallet-subtensor benchmarks compilation
ales-otf Jun 9, 2025
3775524
Fix admin-utils compilation
ales-otf Jun 9, 2025
c7074d9
Fix tick updates in swap step
gztensor Jun 9, 2025
c491f1f
Merge branch 'feat/uniswapv3-lp' into feat/uniswapv3-lp-greg
gztensor Jun 9, 2025
e7f1df0
Merge pull request #1726 from opentensor/feat/uniswapv3-lp-greg
gztensor Jun 9, 2025
79a4269
Update pallets/subtensor/src/staking/stake_utils.rs
gztensor Jun 9, 2025
7aa64fd
Rename SubnetTAOProvided to SubnetTaoProvided
gztensor Jun 9, 2025
3360db0
Fix precompiles compilation
ales-otf Jun 9, 2025
ddde7d1
Update Position comment, make it Rust style
gztensor Jun 9, 2025
6db7de5
Remove empty swap README
gztensor Jun 9, 2025
bcc49d2
Remove forgotten debug comment
gztensor Jun 9, 2025
1d16469
Fix freeze_struct
gztensor Jun 9, 2025
6489d6a
bump frame-metadata version
l0r1s Jun 9, 2025
c91f4b0
fix weight field renaming
l0r1s Jun 9, 2025
828660c
fix benchmark tx extension conversion
l0r1s Jun 9, 2025
3b4c7cf
fix benchmark command new api params
l0r1s Jun 9, 2025
e9cf480
start converting from signed extension to transaction extension
l0r1s Jun 9, 2025
3db4813
cargo clippy
l0r1s Jun 9, 2025
1406f5e
cargo fmt
l0r1s Jun 9, 2025
484ebc8
Add test_large_swap
gztensor Jun 9, 2025
8c301b4
update reads/writes
JohnReedV Jun 10, 2025
711edfe
fix dispatch test
JohnReedV Jun 10, 2025
550d6cc
Add sudo_set_bonds_reset
HudsonGraeme Jun 10, 2025
4c0bfaa
Update ABI
HudsonGraeme Jun 10, 2025
001e12a
Test SN owner call in addition to root
HudsonGraeme Jun 10, 2025
6fd5cb4
Merge branch 'devnet-ready' into feat/upgrade-polkadot-sdk-to-2412
l0r1s Jun 10, 2025
074af62
Fix pallet-commitments compilation
ales-otf Jun 10, 2025
0906bdb
bump frontier hash to master
l0r1s Jun 10, 2025
c277b5c
fix compilation
open-junius Jun 10, 2025
c9a3be0
Fix netuid in rpc
ales-otf Jun 10, 2025
f2d6939
Merge pull request #1706 from opentensor/fix/disabled-limit-staking-o…
sam0x17 Jun 10, 2025
619ef06
remove subnet exists check on validate_remove_stake
sam0x17 Jun 10, 2025
a69315b
whoops, wrong line
sam0x17 Jun 10, 2025
315dedc
fix test
sam0x17 Jun 10, 2025
5f552ae
clippy
sam0x17 Jun 10, 2025
4c9836f
Merge pull request #1732 from opentensor/sam-hotfix-hotfix
sam0x17 Jun 10, 2025
75f419c
fix unused imports
l0r1s Jun 10, 2025
c47144e
Remove nonsensical loops
ales-otf Jun 10, 2025
54acd81
Fix git conflicts
ales-otf Jun 10, 2025
fbbb5ae
Merge remote-tracking branch 'origin/main' into sam-backprop-6-10-2025
sam0x17 Jun 10, 2025
848e71e
impl hyperparams_v2
JohnReedV Jun 10, 2025
7323aa7
yuma3_enabled => yuma_version
JohnReedV Jun 10, 2025
cb5db2b
update reads
JohnReedV Jun 10, 2025
419fe5f
Merge pull request #1734 from opentensor/sam-backprop-6-10-2025
sam0x17 Jun 10, 2025
468d102
convert subtensor signed ext to tx ext
l0r1s Jun 11, 2025
21c31bc
addd comment
l0r1s Jun 11, 2025
26fbbef
fix deprecated macro for runtime str
l0r1s Jun 11, 2025
636d21b
update doc for toggle transfer function
open-junius Jun 11, 2025
d38f635
update doc
open-junius Jun 11, 2025
074916e
update doc
open-junius Jun 11, 2025
220742f
fix tests
l0r1s Jun 11, 2025
9756231
Merge branch 'devnet-ready' into sasha/chore/netuid-type
ales-otf Jun 11, 2025
c628c41
Merge pull request #1738 from opentensor/update-doc-toggle-transfer
open-junius Jun 11, 2025
34741c0
remove unused CommitmentsSignedExtension
l0r1s Jun 11, 2025
3685d33
Merge pull request #1686 from kenobijon/devnet-ready
sam0x17 Jun 11, 2025
1d845d8
Fix git conflicts
ales-otf Jun 11, 2025
4ebd8e1
Address PR comments
ales-otf Jun 11, 2025
192e871
update check_nonce tx extension
l0r1s Jun 11, 2025
fba3eac
commit Cargo.lock
l0r1s Jun 11, 2025
64e9571
commit Cargo.lock
l0r1s Jun 11, 2025
9d88033
commit Cargo.lock
l0r1s Jun 11, 2025
c3c2baa
cargo fmt
l0r1s Jun 11, 2025
f048f13
commit Cargo.lock
l0r1s Jun 11, 2025
053c267
commit Cargo.lock
l0r1s Jun 11, 2025
4eb2946
commit Cargo.lock
l0r1s Jun 11, 2025
20c9dab
commit Cargo.lock
l0r1s Jun 11, 2025
07787d6
commit Cargo.lock
l0r1s Jun 11, 2025
b2dc9b0
commit Cargo.lock
l0r1s Jun 11, 2025
f9512f8
commit Cargo.lock
l0r1s Jun 11, 2025
1501629
cargo fmt
l0r1s Jun 11, 2025
e15ee92
commit Cargo.lock
l0r1s Jun 11, 2025
b9efc5a
cargo clippy
l0r1s Jun 11, 2025
b158e64
commit Cargo.lock
l0r1s Jun 11, 2025
308aeff
commit Cargo.lock
l0r1s Jun 11, 2025
3049a4d
Merge branch 'devnet-ready' into feat/upgrade-polkadot-sdk-to-2412
l0r1s Jun 11, 2025
0d40114
Resolve git conflicts
ales-otf Jun 11, 2025
b45fcb3
Merge pull request #1727 from inference-labs-inc/feat/bonds-reset-hyp…
sam0x17 Jun 11, 2025
da4fab7
Rename variables in to_token_amounts to more human friendly
gztensor Jun 11, 2025
d540de2
Merge branch 'feat/uniswapv3-lp' of github.com:opentensor/subtensor i…
gztensor Jun 11, 2025
44ac183
add more parameters to v2
JohnReedV Jun 11, 2025
b6d9545
clippy
JohnReedV Jun 11, 2025
1100804
Make subnet ID's type-safe #1733
ales-otf Jun 11, 2025
4420885
fix runtime integrity test for admin-utils
l0r1s Jun 11, 2025
def7f18
Merge branch 'devnet-ready' into feat/upgrade-polkadot-sdk-to-2412
l0r1s Jun 11, 2025
f1c1643
fix build
l0r1s Jun 11, 2025
60b137c
fix build 2
l0r1s Jun 11, 2025
f5f21c3
fix build 3
l0r1s Jun 11, 2025
4085a7c
fix tests
l0r1s Jun 11, 2025
de7c10d
Reformat
ales-otf Jun 11, 2025
a6aebe3
enable workflows to run on forks
l0r1s Jun 11, 2025
32b0658
Merge pull request #1740 from opentensor/fix/build-netuid
sam0x17 Jun 11, 2025
7d952e6
Merge remote-tracking branch 'origin/devnet-ready' into fix/workflow-…
sam0x17 Jun 11, 2025
a667cd2
Merge pull request #1702 from tensorplex-labs/features/add-sr25519
sam0x17 Jun 11, 2025
44fdb0c
fix the error from code merge
open-junius Jun 12, 2025
f443ada
update runtime version
open-junius Jun 12, 2025
1f41b5e
Merge pull request #1743 from opentensor/fix-compilation-error
sam0x17 Jun 12, 2025
c878ee5
Merge branch 'devnet-ready' into feat/upgrade-polkadot-sdk-to-2412
l0r1s Jun 12, 2025
da5fa9b
Enable workflows to run on forks #1742
ales-otf Jun 12, 2025
af6866f
Resolve git conflicts
ales-otf Jun 12, 2025
91d80b1
fix zepter
l0r1s Jun 12, 2025
0b1a8e1
Fix test_subtoken_enable_reject_trading_before_enable
gztensor Jun 12, 2025
bbf8bbd
add a read
JohnReedV Jun 12, 2025
1ba3d0b
Fix current liquidity in swap step and tests
gztensor Jun 12, 2025
580f06f
Merge branch 'feat/uniswapv3-lp' of github.com:opentensor/subtensor i…
gztensor Jun 12, 2025
a48508c
Trigger CI
ales-otf Jun 12, 2025
867abe4
Only pay refud in unstake_from_subnet if it is above zero
gztensor Jun 12, 2025
fee8b2a
add new host function
JohnReedV Jun 12, 2025
0d924bf
Make NetUid type metadata transparent
ales-otf Jun 12, 2025
16488f4
Add test
ales-otf Jun 12, 2025
e929d6a
update weight
JohnReedV Jun 12, 2025
8bcfa2a
feat: add logo_url to subnet identities
bdmason Jun 12, 2025
981ee80
fix: undo precompile edit and add new method
bdmason Jun 12, 2025
cbf60e4
fix: import vec
bdmason Jun 12, 2025
e9762ef
fix admin utils benchmarks
l0r1s Jun 12, 2025
d8b95f6
fix: add new precompile method to ABI & solidity file
bdmason Jun 12, 2025
09288aa
fix: update args for set_subnet_identity benchmark
bdmason Jun 12, 2025
984ea2c
update commitments weight
JohnReedV Jun 12, 2025
e0e5a7a
avoid keep running after node exit
open-junius Jun 13, 2025
69d1e67
fix: make evm-tests/get-metadata.sh executable
bdmason Jun 13, 2025
3a009a2
fix: allow yarn.lock to be visible in git
bdmason Jun 13, 2025
ab1e395
fix: use same node package manager as CI (npm -> yarn)
bdmason Jun 13, 2025
a1df5c1
fix: add update from get-metadata.sh to package.json
bdmason Jun 13, 2025
07650ce
feat: add precompile test for registering subnetwork with identity & …
bdmason Jun 13, 2025
99ad390
fix: ci failing due to missing papi descriptors
bdmason Jun 13, 2025
3274ad1
fix: papi broken on CI
bdmason Jun 13, 2025
25a8f82
Fix fees when adding liquidity to a new tick
gztensor Jun 13, 2025
25a8ead
Add test for the fee fix
gztensor Jun 13, 2025
922fba1
update `::set-output` with `$GITHUB_OUTPUT`
Jun 13, 2025
732d089
remove `Install uv dependencies` as duplicated action
Jun 13, 2025
0ad9363
add `workflow_dispatch` with `verbose`
Jun 13, 2025
0ceb19a
comment if `temp`
Jun 13, 2025
620d8b3
explicitly specify the branch for the build
Jun 13, 2025
9bd87e0
ooops we use remote image. add `Retag Docker Image`
Jun 13, 2025
897b1e9
Merge pull request #1750 from bdmason/feature/add-logo-url-to-subnet-…
sam0x17 Jun 13, 2025
8449cfe
add skipping the pulling docker image from remote. use just built one
Jun 13, 2025
5ed48f5
add Patch for fast-blocks tests
Jun 13, 2025
238e4b1
uncomment `if draft`
Jun 13, 2025
c352c2d
remove `if draft`
Jun 13, 2025
e2675b4
Merge pull request #1746 from opentensor/fix/netuid-compatibility
sam0x17 Jun 13, 2025
1b665ff
hotkey splitting emergency merge of #1559
sam0x17 Jun 14, 2025
0e914af
bump spec version
sam0x17 Jun 14, 2025
6c8df06
Merge pull request #1754 from opentensor/emergency-hotfix-6-14-2025
sam0x17 Jun 14, 2025
582ac00
move guard check for *any* sn reg
camfairchild Jun 14, 2025
0383198
add test
camfairchild Jun 14, 2025
4835953
move state change to after check
camfairchild Jun 14, 2025
248c579
fix test 1
camfairchild Jun 14, 2025
52a06bc
fix test 2
camfairchild Jun 14, 2025
55b3ea2
fix test 3
camfairchild Jun 14, 2025
f892a9c
Merge pull request #1755 from opentensor/fix/move-reg-check
sam0x17 Jun 14, 2025
5596574
add
camfairchild Jun 14, 2025
d7117b6
bump spec
camfairchild Jun 14, 2025
0e9f293
Merge pull request #1756 from opentensor/feat/add-swap-hk-proxy
sam0x17 Jun 14, 2025
4820fb2
cooldown
sam0x17 Jun 15, 2025
4b232d3
fix
sam0x17 Jun 16, 2025
3edbb98
fix: tests
distributedstatemachine Jun 16, 2025
f3c434b
fix: tests
distributedstatemachine Jun 16, 2025
a35e462
chore: clippy
distributedstatemachine Jun 16, 2025
bfeaf1c
bump spec version
sam0x17 Jun 16, 2025
586eb24
fix benchmark
open-junius Jun 16, 2025
0e99ff6
fix an error
open-junius Jun 16, 2025
0b94f96
fix alphas values checks
andreea-popescu-reef Jun 13, 2025
17e48b2
fix benchmark
open-junius Jun 16, 2025
651b8be
fix benchmark
sam0x17 Jun 16, 2025
73094c9
Merge remote-tracking branch 'origin/hotfix-cooldown' into hotfix-coo…
sam0x17 Jun 16, 2025
8090503
Merge branch 'devnet-ready' into feat/upgrade-polkadot-sdk-to-2412
l0r1s Jun 16, 2025
ba9b1f5
fix network backend type selection
l0r1s Jun 16, 2025
96e1894
fix sigmoid steepness
andreea-popescu-reef Jun 16, 2025
4dac3c6
bump spec version
l0r1s Jun 16, 2025
18379a4
Merge pull request #1757 from opentensor/hotfix-cooldown
sam0x17 Jun 16, 2025
d3ef42c
Merge remote-tracking branch 'origin/main' into devnet-ready
sam0x17 Jun 16, 2025
00e787e
update workflow
Jun 16, 2025
7a9ded8
fix hotkey registration check test
l0r1s Jun 16, 2025
3a2cf28
remove printlns
l0r1s Jun 16, 2025
6b71322
cargo fmt
l0r1s Jun 16, 2025
409eb2e
bump spec version
sam0x17 Jun 16, 2025
40cf4e0
Merge pull request #1762 from opentensor/feat/roman/improve-logic-to-…
sam0x17 Jun 16, 2025
7627c0c
fix comment
l0r1s Jun 16, 2025
f2b8ac4
commit suggestions
l0r1s Jun 16, 2025
3db0cb7
Merge pull request #1761 from opentensor/sam-backprop-6-16-2025
sam0x17 Jun 16, 2025
56bcd39
Merge branch 'devnet-ready' into feat/upgrade-polkadot-sdk-to-2412
l0r1s Jun 17, 2025
8be6b0e
update benchmark weight
l0r1s Jun 17, 2025
e66e7e9
use hotkey to register uid in evm
open-junius Jun 17, 2025
5b510d3
cargo clippy
open-junius Jun 17, 2025
5935085
update version
open-junius Jun 17, 2025
d246964
Merge pull request #1723 from opentensor/feat/upgrade-polkadot-sdk-to…
l0r1s Jun 17, 2025
caf9ab2
Add (failing) test for wrapping fees
gztensor Jun 17, 2025
a3c9bc4
Use signed math for position fees
gztensor Jun 17, 2025
f9c02cc
Merge pull request #1729 from backend-developers-ltd/alphafx
sam0x17 Jun 17, 2025
0952fd9
Fix liquidity update in block step
gztensor Jun 17, 2025
4fa912d
Fix test_wrapping_fees by removing last swap
gztensor Jun 17, 2025
6a89f60
Merge branch 'devnet-ready' into hotkey-for-uid-loopup
open-junius Jun 18, 2025
9956cba
Merge pull request #1758 from backend-developers-ltd/steep
sam0x17 Jun 18, 2025
cbfa992
Fix the wrapping fees test
gztensor Jun 18, 2025
e580ee4
Allow root to disable user liquidity
gztensor Jun 18, 2025
102cbc7
Rename weight function for toggle_user_liquidity
gztensor Jun 18, 2025
8c3100a
Merge branch 'devnet-ready' into hotkey-for-uid-loopup
open-junius Jun 18, 2025
ea97e4c
Merge pull request #1764 from opentensor/hotkey-for-uid-loopup
sam0x17 Jun 18, 2025
b196217
Resolve git conflicts
ales-otf Jun 18, 2025
1872a0b
Fix zepter (std)
gztensor Jun 18, 2025
84cd7c8
Fix clippy
gztensor Jun 18, 2025
d9022c0
Fix weights for sudo_set_tx_childkey_take_rate_limit and set_identity
gztensor Jun 18, 2025
b54cdac
Merge pull request #1703 from opentensor/feat/uniswapv3-lp
sam0x17 Jun 18, 2025
70a83b8
Merge branch 'devnet-ready' into hyperparams-v2
JohnReedV Jun 18, 2025
90a5768
fix merge errors
JohnReedV Jun 18, 2025
bd320d1
fmt
JohnReedV Jun 18, 2025
747f083
rename subnet_token_enabled => subnet_is_active
JohnReedV Jun 18, 2025
35199c6
Merge pull request #1736 from opentensor/hyperparams-v2
sam0x17 Jun 18, 2025
d1efb35
Merge pull request #1768 from opentensor/devnet-ready
sam0x17 Jun 18, 2025
0e5ab22
Add liquidity modified event, fix coinbase injection into protocol li…
gztensor Jun 23, 2025
cf10bb8
Add hotkey to liquidity modified and liquidity removed events
gztensor Jun 23, 2025
c3c0046
Remove alpha-out deprecation warning
gztensor Jun 23, 2025
e69d868
Update Alphaout when adding and removing liquidity
gztensor Jun 23, 2025
aa1189b
Merge pull request #1776 from opentensor/feat/uniswapv3-lp-updates-20…
sam0x17 Jun 23, 2025
b783a3a
Merge pull request #1778 from opentensor/devnet-ready
sam0x17 Jun 23, 2025
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
91 changes: 38 additions & 53 deletions .github/workflows/check-bittensor-e2e-tests.yml.yml
Original file line number Diff line number Diff line change
Expand Up @@ -10,49 +10,25 @@ concurrency:

on:
pull_request:
branches:
- devnet
- devnet-ready
- testnet
- testnet-ready
- main
branches: ["*"]
types: [opened, synchronize, reopened, labeled, unlabeled]

workflow_dispatch:
inputs:
verbose:
description: "Output more information when triggered manually"
required: false
default: ""

env:
CARGO_TERM_COLOR: always
VERBOSE: ${{ github.event.inputs.verbose }}

jobs:
apply-label-to-new-pr:
runs-on: ubuntu-latest
if: ${{ github.event.pull_request.draft == false }}
outputs:
should_continue: ${{ steps.check.outputs.should_continue }}
steps:
- name: Check
id: check
run: |
ACTION="${{ github.event.action }}"
if [[ "$ACTION" == "opened" || "$ACTION" == "reopened" ]]; then
echo "should_continue=true" >> $GITHUB_OUTPUT
else
echo "should_continue=false" >> $GITHUB_OUTPUT
fi
shell: bash

- name: Add label
if: steps.check.outputs.should_continue == 'true'
uses: actions-ecosystem/action-add-labels@v1
with:
github_token: ${{ secrets.GITHUB_TOKEN }}
labels: run-bittensor-e2e-tests

check-label:
needs: apply-label-to-new-pr
runs-on: ubuntu-latest
if: always()
outputs:
run-bittensor-e2e-tests: ${{ steps.get-labels.outputs.run-bittensor-e2e-tests }}
skip-bittensor-e2e-tests: ${{ steps.get-labels.outputs.skip-bittensor-e2e-tests }}
steps:
- name: Check out repository
uses: actions/checkout@v4
Expand All @@ -62,19 +38,17 @@ jobs:
run: |
LABELS=$(gh pr view ${{ github.event.pull_request.number }} --json labels --jq '.labels[].name')
echo "Current labels: $LABELS"
if echo "$LABELS" | grep -q "run-bittensor-e2e-tests"; then
echo "run-bittensor-e2e-tests=true" >> $GITHUB_ENV
echo "::set-output name=run-bittensor-e2e-tests::true"
if echo "$LABELS" | grep -q "skip-bittensor-e2e-tests"; then
echo "skip-bittensor-e2e-tests=true" >> $GITHUB_OUTPUT
else
echo "run-bittensor-e2e-tests=false" >> $GITHUB_ENV
echo "::set-output name=run-bittensor-e2e-tests::false"
echo "skip-bittensor-e2e-tests=false" >> $GITHUB_OUTPUT
fi
env:
GH_TOKEN: ${{ secrets.GITHUB_TOKEN }}

find-btcli-e2e-tests:
needs: check-label
if: always() && needs.check-label.outputs.run-bittensor-e2e-tests == 'true'
if: needs.check-label.outputs.skip-bittensor-e2e-tests == 'false'
runs-on: ubuntu-latest
outputs:
test-files: ${{ steps.get-btcli-tests.outputs.test-files }}
Expand All @@ -94,12 +68,12 @@ jobs:
id: get-btcli-tests
run: |
test_files=$(find ${{ github.workspace }}/btcli/tests/e2e_tests -name "test*.py" | jq -R -s -c 'split("\n") | map(select(. != ""))')
echo "::set-output name=test-files::$test_files"
echo "test-files=$test_files" >> $GITHUB_OUTPUT
shell: bash

find-sdk-e2e-tests:
needs: check-label
if: always() && needs.check-label.outputs.run-bittensor-e2e-tests == 'true'
if: needs.check-label.outputs.skip-bittensor-e2e-tests == 'false'
runs-on: ubuntu-latest
outputs:
test-files: ${{ steps.get-sdk-tests.outputs.test-files }}
Expand All @@ -119,7 +93,7 @@ jobs:
id: get-sdk-tests
run: |
test_files=$(find ${{ github.workspace }}/bittensor/tests/e2e_tests -name "test*.py" | jq -R -s -c 'split("\n") | map(select(. != ""))')
echo "::set-output name=test-files::$test_files"
echo "test-files=$test_files" >> $GITHUB_OUTPUT
shell: bash

build-image-with-current-branch:
Expand All @@ -128,6 +102,13 @@ jobs:
steps:
- name: Checkout code
uses: actions/checkout@v4
with:
ref: ${{ github.head_ref }}

- name: Patch non-fast-block node
run: |
chmod +x ./scripts/localnet_patch.sh
./scripts/localnet_patch.sh

- name: Set up QEMU
uses: docker/setup-qemu-action@v3
Expand All @@ -153,7 +134,7 @@ jobs:
- check-label
- find-btcli-e2e-tests
- build-image-with-current-branch
if: always() && needs.check-label.outputs.run-bittensor-e2e-tests == 'true'
if: needs.check-label.outputs.skip-bittensor-e2e-tests == 'false'
runs-on: ubuntu-latest
strategy:
fail-fast: false
Expand Down Expand Up @@ -182,6 +163,8 @@ jobs:

- name: Install uv
uses: astral-sh/setup-uv@v5
with:
enable-cache: 'false'

- name: Create Python virtual environment
working-directory: ${{ github.workspace }}
Expand All @@ -201,10 +184,6 @@ jobs:
uv run --active pip install '.[dev]'
uv run --active pip install pytest

- name: Install uv dependencies
working-directory: ${{ github.workspace }}/btcli
run: uv sync --all-extras --dev

- name: Download Cached Docker Image
uses: actions/download-artifact@v4
with:
Expand All @@ -213,6 +192,9 @@ jobs:
- name: Load Docker Image
run: docker load -i subtensor-localnet.tar

- name: Retag Docker Image
run: docker tag localnet ghcr.io/opentensor/subtensor-localnet:devnet-ready

# - name: Run tests
# working-directory: ${{ github.workspace }}/btcli
# run: |
Expand All @@ -223,6 +205,7 @@ jobs:
working-directory: ${{ github.workspace }}/btcli
run: |
source ${{ github.workspace }}/venv/bin/activate
export SKIP_PULL=1
set +e
for i in 1 2; do
echo "🔁 Attempt $i: Running tests"
Expand All @@ -248,7 +231,7 @@ jobs:
- check-label
- find-sdk-e2e-tests
- build-image-with-current-branch
if: always() && needs.check-label.outputs.run-bittensor-e2e-tests == 'true'
if: needs.check-label.outputs.skip-bittensor-e2e-tests == 'false'
runs-on: ubuntu-latest
strategy:
fail-fast: false
Expand Down Expand Up @@ -277,6 +260,8 @@ jobs:

- name: Install uv
uses: astral-sh/setup-uv@v5
with:
enable-cache: 'false'

- name: Create Python virtual environment
working-directory: ${{ github.workspace }}
Expand All @@ -296,10 +281,6 @@ jobs:
uv run --active pip install '.[dev]'
uv run --active pip install pytest

- name: Install uv dependencies
working-directory: ${{ github.workspace }}/bittensor
run: uv sync --all-extras --dev

- name: Download Cached Docker Image
uses: actions/download-artifact@v4
with:
Expand All @@ -308,6 +289,9 @@ jobs:
- name: Load Docker Image
run: docker load -i subtensor-localnet.tar

- name: Retag Docker Image
run: docker tag localnet ghcr.io/opentensor/subtensor-localnet:devnet-ready

# - name: Run tests
# working-directory: ${{ github.workspace }}/bittensor
# run: |
Expand All @@ -318,6 +302,7 @@ jobs:
working-directory: ${{ github.workspace }}/bittensor
run: |
source ${{ github.workspace }}/venv/bin/activate
export SKIP_PULL=1
set +e
for i in 1 2; do
echo "🔁 Attempt $i: Running tests"
Expand All @@ -335,4 +320,4 @@ jobs:
echo "🕒 Retrying..."
sleep 5
fi
done
done
28 changes: 22 additions & 6 deletions .github/workflows/require-clean-merges.yml
Original file line number Diff line number Diff line change
Expand Up @@ -34,6 +34,14 @@ jobs:
else
echo "MERGE_BRANCHES=devnet-ready devnet testnet main" >> $GITHUB_ENV
fi

- name: Add Fork Remote and Fetch PR Branch
if: github.event.pull_request.head.repo.fork == true
run: |
PR_BRANCH="${{ github.event.pull_request.head.ref }}"
PR_FORK="${{ github.event.pull_request.head.repo.clone_url }}"
git remote add fork $PR_FORK
git fetch --no-tags --prune fork $PR_BRANCH

- name: Check Merge Cleanliness
run: |
Expand All @@ -42,25 +50,33 @@ jobs:
echo "Fetching all branches..."
git fetch --all --prune

if [[ "${{github.event.pull_request.head.repo.fork}}" == "true" ]]; then
PR_BRANCH_REF="fork/$PR_BRANCH"
echo "Using fork reference: $PR_BRANCH_REF"
else
PR_BRANCH_REF="origin/$PR_BRANCH"
echo "Using origin reference: $PR_BRANCH_REF"
fi

echo "Checking out PR branch: $PR_BRANCH"
git checkout $PR_BRANCH
git reset --hard origin/$PR_BRANCH
git checkout $PR_BRANCH_REF
git reset --hard $PR_BRANCH_REF

# Configure a temporary Git identity to allow merging
git config --local user.email "github-actions@github.com"
git config --local user.name "GitHub Actions"

for branch in $MERGE_BRANCHES; do
echo "Checking merge from $branch into $PR_BRANCH..."
echo "Checking merge from $branch into $PR_BRANCH_REF..."

# Ensure PR branch is up to date
git reset --hard origin/$PR_BRANCH
git reset --hard $PR_BRANCH_REF

# Merge without committing to check for conflicts
if git merge --no-commit --no-ff origin/$branch; then
echo "✅ Merge from $branch into $PR_BRANCH is clean."
echo "✅ Merge from $branch into $PR_BRANCH_REF is clean."
else
echo "❌ Merge conflict detected when merging $branch into $PR_BRANCH"
echo "❌ Merge conflict detected when merging $branch into $PR_BRANCH_REF"
exit 1
fi

Expand Down
18 changes: 10 additions & 8 deletions .github/workflows/run-benchmarks.yml
Original file line number Diff line number Diff line change
Expand Up @@ -24,18 +24,20 @@ jobs:
if: ${{ env.SKIP_BENCHMARKS != '1' }}
uses: actions/checkout@v4
with:
ref: ${{ github.head_ref }}
repository: ${{ github.event.pull_request.head.repo.full_name }}
ref: ${{ github.event.pull_request.head.ref }}
fetch-depth: 0

- name: Install GitHub CLI
if: ${{ env.SKIP_BENCHMARKS != '1' }}
# We disallow skipping benchmarks for PRs from forks to avoid exposing secrets
if: ${{ github.event.pull_request.head.repo.full_name == github.repository && env.SKIP_BENCHMARKS != '1' }}
run: |
sudo apt-get update
sudo apt-get install -y gh
echo "${{ secrets.GITHUB_TOKEN }}" | gh auth login --with-token

- name: Check skip label
if: ${{ env.SKIP_BENCHMARKS != '1' }}
if: ${{ github.event.pull_request.head.repo.full_name == github.repository && env.SKIP_BENCHMARKS != '1' }}
run: |
labels=$(gh pr view ${{ github.event.pull_request.number }} --json labels --jq '.labels[].name')
if echo "$labels" | grep -q "skip-validate-benchmarks"; then
Expand All @@ -50,7 +52,7 @@ jobs:
sudo apt-get install -y clang curl libssl-dev llvm libudev-dev protobuf-compiler

- name: Check skip label
if: ${{ env.SKIP_BENCHMARKS != '1' }}
if: ${{ github.event.pull_request.head.repo.full_name == github.repository && env.SKIP_BENCHMARKS != '1' }}
run: |
labels=$(gh pr view ${{ github.event.pull_request.number }} --json labels --jq '.labels[].name')
if echo "$labels" | grep -q "skip-validate-benchmarks"; then
Expand All @@ -66,7 +68,7 @@ jobs:
toolchain: stable

- name: Check skip label
if: ${{ env.SKIP_BENCHMARKS != '1' }}
if: ${{ github.event.pull_request.head.repo.full_name == github.repository && env.SKIP_BENCHMARKS != '1' }}
run: |
labels=$(gh pr view ${{ github.event.pull_request.number }} --json labels --jq '.labels[].name')
if echo "$labels" | grep -q "skip-validate-benchmarks"; then
Expand All @@ -81,7 +83,7 @@ jobs:
key: bench-${{ hashFiles('**/Cargo.lock') }}

- name: Check skip label
if: ${{ env.SKIP_BENCHMARKS != '1' }}
if: ${{ github.event.pull_request.head.repo.full_name == github.repository && env.SKIP_BENCHMARKS != '1' }}
run: |
labels=$(gh pr view ${{ github.event.pull_request.number }} --json labels --jq '.labels[].name')
if echo "$labels" | grep -q "skip-validate-benchmarks"; then
Expand All @@ -95,7 +97,7 @@ jobs:
cargo build --profile production -p node-subtensor --features runtime-benchmarks

- name: Check skip label
if: ${{ env.SKIP_BENCHMARKS != '1' }}
if: ${{ github.event.pull_request.head.repo.full_name == github.repository && env.SKIP_BENCHMARKS != '1' }}
run: |
labels=$(gh pr view ${{ github.event.pull_request.number }} --json labels --jq '.labels[].name')
if echo "$labels" | grep -q "skip-validate-benchmarks"; then
Expand All @@ -110,7 +112,7 @@ jobs:
./scripts/benchmark_action.sh

- name: Check skip label after run
if: ${{ env.SKIP_BENCHMARKS != '1' }}
if: ${{ github.event.pull_request.head.repo.full_name == github.repository && env.SKIP_BENCHMARKS != '1' }}
run: |
labels=$(gh pr view ${{ github.event.pull_request.number }} --json labels --jq '.labels[].name')
if echo "$labels" | grep -q "skip-validate-benchmarks"; then
Expand Down
1 change: 1 addition & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -5,6 +5,7 @@
**/*.rs.bk

**/*.lock
!evm-tests/yarn.lock

*.ipynb

Expand Down
Loading
Loading