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
Jump to file
Failed to load files.
Loading
Diff view
Diff view
47 changes: 36 additions & 11 deletions .github/workflows/claude.yml
Original file line number Diff line number Diff line change
@@ -1,7 +1,12 @@
name: Claude Code
on:
issue_comment:
types: [created]
# `edited` matters as much as `created`: mega-putin acks feedback with a
# placeholder the moment it picks the work up and rewrites that same
# comment into the real answer minutes later, so the answer only ever
# arrives as an edit. Jobs that must not re-fire on an edit pin
# `github.event.action == 'created'` themselves.
types: [created, edited]
pull_request_review_comment:
types: [created]
pull_request_review:
Expand All @@ -15,6 +20,7 @@ jobs:
interactive:
if: |
(github.event_name == 'issue_comment' &&
github.event.action == 'created' &&
contains(github.event.comment.body, '@claude') &&
(github.event.comment.author_association == 'MEMBER' ||
github.event.comment.author_association == 'COLLABORATOR' ||
Expand Down Expand Up @@ -43,22 +49,26 @@ jobs:
submodules: recursive
fetch-depth: 1

- uses: megaeth-labs/documentation/.github/actions/claude-interactive@main
- uses: megaeth-labs/.github/.github/actions/claude-interactive@main
with:
claude_code_oauth_token: ${{ secrets.CLAUDE_CODE_OAUTH_TOKEN }}
allowed_bots: "mega-putin"
extra_allowed_tools: "Bash(cargo:*)"

pr-review:
concurrency:
group: claude-pr-review-${{ github.event.pull_request.number }}
group: claude-pr-review-${{ github.event.pull_request.number || github.event.issue.number }}-${{ github.event_name == 'pull_request' && 'code' || 'comment' }}
cancel-in-progress: false
if: |
github.event_name == 'pull_request' &&
(github.event.action == 'opened' ||
github.event.action == 'synchronize' ||
github.event.action == 'ready_for_review' ||
github.event.action == 'reopened')
(github.event_name == 'pull_request' &&
(github.event.action == 'opened' ||
github.event.action == 'synchronize' ||
github.event.action == 'ready_for_review' ||
github.event.action == 'reopened')) ||
(github.event_name == 'issue_comment' &&
github.event.issue.pull_request != null &&
github.event.comment.user.login != 'mega-maxwell[bot]' &&
!contains(github.event.comment.body, 'claude-review:skip'))
runs-on: ubuntu-24.04
timeout-minutes: 30
permissions:
Expand All @@ -67,14 +77,29 @@ jobs:
id-token: write
actions: read
steps:
# Review under the CI app identity rather than the job token: it is what
# lets the action resolve stale review threads (the shared action gates
# --resolve-threads on github_identity_token being non-empty).
- uses: actions/create-github-app-token@v3
id: app-token
with:
client-id: ${{ vars.MEGA_MAXWELL_CLIENT_ID }}
private-key: ${{ secrets.MEGA_MAXWELL_PK }}
owner: megaeth-labs
repositories: mega-evm

- uses: actions/checkout@v4
with:
ref: ${{ github.event_name == 'issue_comment' && format('refs/pull/{0}/head', github.event.issue.number) || '' }}
token: ${{ steps.app-token.outputs.token }}
persist-credentials: false
submodules: recursive
fetch-depth: 1

- uses: megaeth-labs/documentation/.github/actions/claude-pr-review@main
- uses: megaeth-labs/.github/.github/actions/claude-pr-review@main
with:
claude_code_oauth_token: ${{ secrets.CLAUDE_CODE_OAUTH_TOKEN }}
github_identity_token: ${{ steps.app-token.outputs.token }}
allowed_bots: "mega-putin"
extra_prompt: |
## Documentation scope exclusion
Expand Down Expand Up @@ -169,7 +194,7 @@ jobs:
submodules: recursive
fetch-depth: 1

- uses: megaeth-labs/documentation/.github/actions/claude-label-check@main
- uses: megaeth-labs/.github/.github/actions/claude-label-check@main
with:
claude_code_oauth_token: ${{ secrets.CLAUDE_CODE_OAUTH_TOKEN }}
allowed_bots: "mega-putin"
Expand All @@ -187,7 +212,7 @@ jobs:
with:
fetch-depth: 1

- uses: megaeth-labs/documentation/.github/actions/claude-issue-triage@main
- uses: megaeth-labs/.github/.github/actions/claude-issue-triage@main
with:
claude_code_oauth_token: ${{ secrets.CLAUDE_CODE_OAUTH_TOKEN }}
allowed_bots: "mega-putin"
33 changes: 33 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,33 @@
# Changelog

## v1.7.2

_No changes recorded since the previous release._

## v1.7.1 (2026-09-08)

### Features

- seal REX6 and open REX7 ([#360](https://github.com/megaeth-labs/mega-evm/pull/360))

### Fixes

- chain: schedule Rex6 on the canonical mainnet and testnet hardfork schedules ([#371](https://github.com/megaeth-labs/mega-evm/pull/371))

### Refactoring

- block: derive hardfork gating from single-source spec resolution ([#362](https://github.com/megaeth-labs/mega-evm/pull/362))

### Documentation

- publish the Rex6 activation timestamps ([#364](https://github.com/megaeth-labs/mega-evm/pull/364))
- specify compute gas accounting and pin it with a cross-spec test harness ([#358](https://github.com/megaeth-labs/mega-evm/pull/358))
- add audit-derived execution and dev-tool rules to REVIEW.md ([#356](https://github.com/megaeth-labs/mega-evm/pull/356))

### CI

- publish targets on release — crates.io and mega-evme to the registry ([#374](https://github.com/megaeth-labs/mega-evm/pull/374))
- adopt the shared release flow (candidate / settle / publish) ([#372](https://github.com/megaeth-labs/mega-evm/pull/372))
- let PR comments trigger a Claude review reconcile round ([#361](https://github.com/megaeth-labs/mega-evm/pull/361))
- point Claude actions at megaeth-labs/.github (`44116f6a10`)
- run pr-review under the CI app identity ([#357](https://github.com/megaeth-labs/mega-evm/pull/357))
12 changes: 6 additions & 6 deletions Cargo.lock

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

8 changes: 4 additions & 4 deletions Cargo.toml
Original file line number Diff line number Diff line change
Expand Up @@ -15,7 +15,7 @@ exclude = []
# https://doc.rust-lang.org/edition-guide/rust-2021/default-cargo-resolver.html
resolver = "2"
[workspace.package]
version = "1.7.0"
version = "1.7.2"

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

P1 Badge Base v1.7.2 on the v1.7.1 release

Publishing this version will regress consumers from the release documented immediately below: the new changelog says v1.7.1 sealed REX6 and opened REX7, but this candidate's sole parent is 30ce038 and its only code change is the version/changelog update; the resulting source still defines REX6 as the newest spec. Since the publish workflow publishes the checked-out tag at this workspace version, v1.7.2 would ship a package that drops the v1.7.1 functionality instead of a patch on top of it. Cut/rebase the candidate from the v1.7.1 release tip before publishing.

Useful? React with 👍 / 👎.

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

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

That was intended skip

edition = "2021"
rust-version = "1.91"
license = "MIT OR Apache-2.0"
Expand Down Expand Up @@ -122,9 +122,9 @@ too_long_first_doc_paragraph = "allow"

[workspace.dependencies]
# megaeth
mega-evm = { path = "./crates/mega-evm", version = "1.7.0", default-features = false }
mega-state-test = { path = "./crates/mega-state-test", version = "1.7.0", default-features = false }
mega-system-contracts = { path = "./crates/system-contracts", version = "1.7.0", default-features = false }
mega-evm = { path = "./crates/mega-evm", version = "1.7.2", default-features = false }
mega-state-test = { path = "./crates/mega-state-test", version = "1.7.2", default-features = false }
mega-system-contracts = { path = "./crates/system-contracts", version = "1.7.2", default-features = false }

# revm
op-revm = { version = "8.1.0", default-features = false }
Expand Down
Loading