Skip to content

ci: run pull request tests on hosted runner - #409

Merged
POPPIN-FUMI merged 1 commit into
mainfrom
wanriky/slv-pr408-hosted-pr-tests
Aug 18, 2026
Merged

POPPIN-FUMI merged 1 commit into
mainfrom
wanriky/slv-pr408-hosted-pr-tests

Conversation

@POPPIN-FUMI

Copy link
Copy Markdown
Contributor

Summary

  • run the test job on ubuntu-latest for pull requests
  • retain slv-bm-runners for push, tag, and manual runs

Scope

  • workflow-only change to .github/workflows/slv-remote-build.yml
  • no release, deploy, publish, tag, or production mutation
  • all existing test steps and macOS/remote-build behavior are unchanged

Closes no issue.

@POPPIN-FUMI

Copy link
Copy Markdown
Contributor Author

auron gate claim / round 1 / 対象 349d32d / auron_slv_409_review:01a013be

@POPPIN-FUMI POPPIN-FUMI left a comment

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

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

auron / round 1 / 対象 349d32d

判定: PASS

対象: ValidatorsDAO/slv PR #409

  • head: 349d32ddb7fe59583fedc087dad7e351488abf22
  • base(着地先 main): fb6d063d6835d2b1b0cf8abe39b9a6c9008cf37b
  • CI: GREEN(exact-head workflow run 32110888268、conclusion success)

要求充足: 依頼 packet と著者供給の受入基準に対して充足。PR 本文に独立した駆動 doc / issue の宣言はなく(Closes no issue.)、この行の強度はそれらの受入基準まで。

非後退: 上記 base と HEAD に同じ比較を適用して確認。変更は .github/workflows/slv-remote-build.yml の jobs.test.runs-on 1 行のみ(1 file、1 insertion、1 deletion、1 commit、compare=ahead)。全文 hash は base/HEAD で相違する陽性対照を確認し、変更行 54 を除いた両出力は各 10,163 bytes、SHA-256 e99cca8cc0651448df6e6bd2fcf1db9037a5cd9f41ecf0cd06f48759783d77ad、cmp rc=0。したがって trigger、job 条件、steps、permissions、release/publish 部分は byte-identical。

確認した観点:

  • イベント行列: pull_request は ubuntu-latest、push(main branch / v*.*.* tag)と workflow_dispatch は slv-bm-runners。github.event_name は起動イベント名であり、GitHub Actions の && / || と truthy な非空文字列の規則により、この 2 分岐になる。
  • PR 実測: run 32110888268 は event=pull_request、head_sha=349d32ddb7fe59583fedc087dad7e351488abf22。Run Tests は SUCCESS、job labels=[ubuntu-latest]、runner group=GitHub Actions、runner=GitHub Actions 1000001134、log image=ubuntu-24.04。
  • release 防壁: 同 run で Build macOS Binaries (x86_64 + arm64) と Remote Build and Release はともに SKIPPED。両 job の if、needs、release作成、ClawHub publish、secrets 参照は base から無変更。
  • blast radius: 既存 workflow 1 本の test job の runner 選択だけ。PR の test 負荷を self-hosted pool から GitHub-hosted へ移し、非 PR イベントの slv-bm-runners 選択は保持。新 workflow / 新 gate / deploy / tag / publish / production mutation はない。
  • rollback: 当該 runs-on 1 行を base の値へ戻すだけで復元可能。不可逆操作は追加されていない。

実行した check と結果:

  • gh pr view 409 --repo ValidatorsDAO/slv --json ...: OPEN、base/head は上記 SHA と一致。
  • gh pr diff / /pulls/409/files / /compare/<base>...<head>: 1 commit、1 file、1 行置換のみ。
  • Contents API で base/HEAD の workflow 全文を取得し、全文 hash 相違(検出器の陽性対照)→ line 54 除外後の hash/byte count/cmp 一致を確認。
  • Actions run/jobs/check-runs API と gh pr checks 409: Run Tests=pass、macOS build=skipping、remote build/release=skipping。exact-head の check run は 3/3 completed、failure/cancelled/pending なし。
  • job log: runner image ubuntu-24.04。base SHA の直近 main push run 28631019647 では test label=slv-bm-runners / runner group=Default も対照として確認。

CONTROL / 反実仮想:

  • CONTROL: 全文比較は intended 1 行を含むと異なる hash を返し、同じ 1 行だけを除くと非空の同一 bytes/hash を返したため、「比較器が空振りして同一を返した」形ではない。
  • 反実仮想: PR でも self-hosted が選ばれていたなら exact-head job の label/group/image は slv-bm-runners / self-hosted 側になり、観測された [ubuntu-latest] / GitHub Actions / ubuntu-24.04 とは変わる。release 条件や publish 本文まで変わっていたなら、変更行除外後の byte identity は崩れる。

未検証項目:

  • exact HEAD を push main、tag push、workflow_dispatch で実行する確認は未実施(review-only かつ live release/publish を起動しないため)。これらは式の event-name 分岐と、release-capable job を含む残余全文の base/HEAD byte identityで静的確認した。
  • ローカル actionlint は環境に無く未実行。GitHub Actions が exact-head workflow を parse・instantiate・execute し、run 全体が success したことをサーバ側 YAML/runtime 検証として採用した。

結論: required contract を満たし、CI も green。infra gate は exact head 349d32ddb7fe59583fedc087dad7e351488abf22 に PASS。

@POPPIN-FUMI

Copy link
Copy Markdown
Contributor Author

cyan gate claim / round 1 / 対象 349d32d / cyan-slv-409-r1-4d935fd9

@POPPIN-FUMI POPPIN-FUMI left a comment

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

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

cyan / round 1 / 対象 349d32d

判定: PASS

対象: ValidatorsDAO/slv PR #409

  • head: 349d32ddb7fe59583fedc087dad7e351488abf22
  • base(着地先 main): fb6d063d6835d2b1b0cf8abe39b9a6c9008cf37b
  • Auron 先行 gate: review 4958375071 は commit_id=349d32ddb7fe59583fedc087dad7e351488abf22、先頭記名・判定・check・未検証項目を含む 3,166 字 / 37 行の substantive body として read-back 済み。

要求充足: PR 本文にある受入基準に対して充足。独立した issue / plan の宣言はなく(Closes no issue.)、この行の強度は著者供給の基準まで。

非後退: 上記 base と HEAD を比較。変更は .github/workflows/slv-remote-build.yml の jobs.test.runs-on 1 行置換だけ(1 commit、1 file、+1/-1、compare は ahead 1 / behind 0)。着地先の trigger、test steps、macOS build、remote build/release、permissions、GitHub Release、ClawHub publish、secrets 参照は残余全文で byte-identical。

確認した観点:

  • selector: github.event_name == 'pull_request' && 'ubuntu-latest' || 'slv-bm-runners' は PR だけ GitHub-hosted、main push / tag push / workflow_dispatch は従来の slv-bm-runners を選ぶ。
  • exact-head 実測: Actions run 32110888268 は event=pull_request、head=349d32ddb7fe59583fedc087dad7e351488abf22、conclusion=success。Run Tests は labels=[ubuntu-latest]、runner group=GitHub Actions、ログの image=ubuntu-24.04 で SUCCESS。
  • release 防壁: 同 run の Build macOS Binaries (x86_64 + arm64) と Remote Build and Release は SKIPPED。前者の job if、後者の needs / job if、release/publish steps は変更行以外の byte identity に含まれる。
  • checks / mergeability: exact-head check-runs API は total_count=3 かつ列挙 3 件で閉じ、SUCCESS 1 / SKIPPED 2 / failure・pending なし。投稿前観測は OPEN / CLEAN / mergeable=true。
  • security / blast radius: PR code は self-hosted runner から GitHub-hosted runnerへ退避され、release-capable 非 PR 経路の runner selection と権限は維持。新たな tag、release、publish、deploy、secret exposure、production mutation は diff にない。

実行した check と結果:

  • gh pr view、Pulls / Compare / Files API: base/head 一致、OPEN/CLEAN、1 commit・1 file・1 行置換。
  • Contents API で base/HEAD workflow を取得: 全文は 10,209 / 10,258 bytes で SHA-256 が相違(比較器の陽性対照)。変更行 54 だけを除くと両方 10,163 bytes、SHA-256 e99cca8cc0651448df6e6bd2fcf1db9037a5cd9f41ecf0cd06f48759783d77ad、cmp rc=0。
  • exact selector を regex で抽出して 4-event matrix を評価: PR=ubuntu-latest、main/tag/manual=slv-bm-runners、期待値 4/4 一致。
  • controlled counterfactual: 比較演算だけを in-memory で == から != に反転すると PR=slv-bm-runners、main/tag/manual=ubuntu-latest となり、同じ matrix assertion が拒否。検出器が期待値を常時許可する形ではない。
  • Actions run / jobs / check-runs API と job log: exact-head binding、Run Tests success、GitHub-hosted label/group、ubuntu-24.04、release-capable 2 jobs skipped を確認。

反実仮想: PR でも self-hosted が選ばれていたなら、exact-head job の label/group/image は観測された [ubuntu-latest] / GitHub Actions / ubuntu-24.04 と変わる。release 条件・publish 本文・permissions が変わっていたなら、変更行除外後の非空 byte identity は崩れる。

未検証項目:

  • exact HEAD の main push、tag push、workflow_dispatch は起動していない(review-only かつ live release/publish を発火させないため)。これらは selector matrix と変更行以外の base/HEAD byte identityで静的確認した。
  • actionlint は環境に無く未実行。GitHub Actions が exact-head workflow を parse・instantiate し、PR event の run 全体が success したことをサーバ側 runtime 証拠とした。

結論: 指定された event matrix と exact-head CI を満たし、release/tag/manual/build-mac/remote-build semantics に diff 由来の後退はない。Cyan final gate は head 349d32ddb7fe59583fedc087dad7e351488abf22 に PASS。

@POPPIN-FUMI
POPPIN-FUMI merged commit 4753120 into main Aug 18, 2026
3 checks passed
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.

2 participants