Skip to content

GitHub Actions で CI とリリース配布を導入 - #9

Merged
src3453 merged 4 commits into
mainfrom
claude/project-thread-3vnska
Oct 22, 2026
Merged

src3453 merged 4 commits into
mainfrom
claude/project-thread-3vnska

Conversation

@src3453

@src3453 src3453 commented Oct 22, 2026 •

Copy link
Copy Markdown
Owner

Requested by src3453 · project thread

概要

CI (.github/workflows/ci.yml)

push (main) / PR / 手動実行で以下を回します。

ジョブ 内容
rust src32_testbench をビルドして artifact 化。tests/*.rs の統合テストを実行(dos.bin / tinybasic.bin / dsfs_guest.bin は sol ソースから CI 内で生成)
toolchain tools/llvm-src32 の unittest(Foundation phase1 受け入れテストを含む)。Clang は llvmlite が使う LLVM と同じメジャー版を apt.llvm.org から入れる
solc pytest tools/solc(Foundation 実行テストは testbench artifact を使用)
wasm-sdk WASM 拡張カード SDK の package builder テスト
vscode-extensions sol / SRC32 アセンブリの VS Code 拡張を .vsix にパッケージして artifact 化
known-failures 既知の失敗テスト(非ブロッキング)

リリース (.github/workflows/release.yml)

v* タグ (例 v0.1.0) を push すると:

  • Linux x86_64 / Windows x86_64 / macOS arm64 向けに cpt32, cpt32-tool, src32_testbench を release ビルドし、README・ライセンス類・config.example.yaml・assets/bios.rom と一緒に zip / tar.gz にまとめる
  • VS Code 拡張 2 本の .vsix を作る
  • 上記を GitHub Release に添付(タグに - を含むと prerelease)

release.yml を変更した PR と手動実行では、ビルドだけして Release は作りません。

対象外・注意

  • lib の単体テスト (cargo test --lib) は外部リポジトリ s3w2_core の golden ファイルを include_str! しているため CI ではビルドできず、対象外です。
  • 次のテストは失敗しているため known-failures に分けています: strek_micro, strek_smoke, tb_load_live, dos_smoke::dos_hex_returns_to_shell_at_800_cycles_per_frame。strek_verify は隣接リポジトリ Tiny-Basic が必要なので実行しません。
  • MEMORY.md に CI / リリースの注意点を追記しました。

検証

  • コンテナで testbench ビルド、統合テスト、pytest tools/solc(202 passed)、両拡張の vsce package を確認。
  • 初回 CI 実行で rust / solc / wasm-sdk は成功、known-failures は想定どおり失敗。

🤖 Generated with Claude Code

https://claude.ai/code/session_0136WnUMfm3zqwkjjxGvwZZ8

Builds src32_testbench, runs the Rust integration tests (with sol guest
images built from source), the LLVM/SRC32 toolchain and Foundation tests
with a Clang matching llvmlite's LLVM, the sol compiler tests and the WASM
SDK package builder tests. Known-failing Rust tests run in a non-blocking
job.

Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_0136WnUMfm3zqwkjjxGvwZZ8
@src3453 src3453 self-assigned this Oct 22, 2026
Pushing a v* tag builds cpt32, cpt32-tool and src32_testbench for Linux,
Windows and macOS and both VS Code extensions, and publishes them as a
GitHub Release. CI also packages the extensions on every PR, and actions
move to their Node 24 releases.

Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_0136WnUMfm3zqwkjjxGvwZZ8
@src3453 src3453 changed the title GitHub Actions で CI を導入 GitHub Actions で CI とリリース配布を導入 Oct 22, 2026
@src3453

src3453 commented Oct 22, 2026

Copy link
Copy Markdown
Owner Author

@copilot resolve the merge conflicts in this pull request

Add tools/wax and foundation/tests/wax (from the merged WAX loader) to
the Python test job. Known-failing Rust tests now use step-level
continue-on-error so they no longer show as a failed PR check.

Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_0136WnUMfm3zqwkjjxGvwZZ8
@src3453
src3453 merged commit 8afc526 into main Oct 22, 2026
4 checks passed
Copilot stopped work on behalf of src3453 due to an error October 22, 2026 01:46
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