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
4 changes: 4 additions & 0 deletions .github/workflows/ci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -97,6 +97,8 @@ jobs:
toolchain:
name: LLVM toolchain + Foundation tests
needs: rust
# 統合テストが落ちても testbench artifact があれば実行する。
if: ${{ !cancelled() }}
runs-on: ubuntu-24.04
steps:
- uses: actions/checkout@v5
Expand Down Expand Up @@ -133,6 +135,8 @@ jobs:
solc:
name: sol compiler + WAX tests
needs: rust
# 統合テストが落ちても testbench artifact があれば実行する。
if: ${{ !cancelled() }}
runs-on: ubuntu-24.04
steps:
- uses: actions/checkout@v5
Expand Down
2 changes: 2 additions & 0 deletions MEMORY.md
Original file line number Diff line number Diff line change
Expand Up @@ -1056,3 +1056,5 @@
- Known failures run in the `known-failures` job with step-level continue-on-error (PR check stays green, results in the step log): strek_micro, strek_smoke, tb_load_live, and dos_smoke `dos_hex_returns_to_shell_at_800_cycles_per_frame`. strek_verify needs a sibling Tiny-Basic checkout and is not run. When one of these is fixed, move it back into the blocking job.
- `toolchain` installs Clang of the same LLVM major as llvmlite (`llvmlite.binding.llvm_version_info`) via apt.llvm.org and sets CLANG; a mismatched Clang (e.g. Ubuntu's Clang 18 vs llvmlite's LLVM 20+) fails -O1/-O2 with "icmp constexprs". It also needs cmake + ninja (present on ubuntu-24.04 runners).
- Release (CD): .github/workflows/release.yml. Pushing a `v*` tag builds cpt32 / cpt32-tool / src32_testbench in release mode for linux-x86_64, windows-x86_64 and macos-arm64 (archive also carries README, licenses, config.example.yaml, assets/bios.rom) plus both VS Code .vsix files, and publishes them with softprops/action-gh-release (tags containing `-` become prereleases). PRs touching release.yml and workflow_dispatch run the builds without publishing. CI's `vscode-extensions` job also packages the .vsix on every PR.
- `toolchain` and `solc` run with `if: !cancelled()` after `rust`, so a failing integration test does not hide them; they only need the uploaded testbench artifact.
- dos_smoke hex tests can hang on CI runners (seen on dos_pipeline_hex_returns_to_shell_at_default_cycles_per_frame: keys for "EXIT" never reach the guest, CPU halted with IRQC pending=0x0001 enable=0x0008). connect_pec_input applies host key events on a separate `pec-input` thread, so the test races with the guest; under CPU contention an input edge can be lost. Not reproducible locally in 3 full runs. Same symptom as the known 800-cycle failure.
Loading