Skip to content

Shuttle native core + build scripts + 6-platform CI (CI check, do not merge yet) - #1

Closed
akki697222 wants to merge 14 commits into
mainfrom
feature/native-build
Closed

akki697222 wants to merge 14 commits into
mainfrom
feature/native-build

Conversation

@akki697222

Copy link
Copy Markdown
Member

Opened to run the new Native (Shuttle) workflow. Do not merge yet.

Contains two branches stacked:

  • feature/shuttle-core: Shuttle core prototype under native/ (Rust workspace, C guests, headless runner with capture/restore verification). Depends on akkiserver-dev/weave branch shuttle-host-hooks.
  • feature/native-build: native/scripts/build.sh (Linux/WSL2), native/scripts/build.ps1 (Windows, untested), .github/workflows/native.yml (build + verify on Linux/Windows/macOS x86_64 and arm64).

The existing Java side, wasmtime-binding and maven.yml are untouched.

🤖 Generated with Claude Code

https://claude.ai/code/session_01WE6jR1fQDhj3HTdNWb73L9


Generated by Claude Code

claude and others added 5 commits October 15, 2026 15:06
Rust workspace with shuttle-core (Machine, firmware ABI draft 0.1 host
functions, snapshot format) and shuttle-runner (headless emulator with a
capture/restore verification mode), plus minimal C guests (BIOS, OS,
child). Depends on akkiserver-dev/weave branch shuttle-host-hooks.
Java side is untouched; JNI comes in a later step.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01WE6jR1fQDhj3HTdNWb73L9
- native/scripts/build.ps1: Windows; builds guests, workspace, runs verify
- native/scripts/build.sh: Linux/WSL2; same, plus --cross <arch> via cross
- .github/workflows/native.yml: guests built once on Linux, then build +
  verify on Linux/Windows/macOS x86_64 and arm64

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01WE6jR1fQDhj3HTdNWb73L9
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
@akki697222
akki697222 force-pushed the feature/native-build branch from 1a6f07b to 7dbc5b8 Compare October 15, 2026 06:07
akki697222 and others added 3 commits October 15, 2026 15:21
- Directories: wasmtimejavang -> shuttle-java, wasmtimejavang-example ->
  shuttle-java-example, wit-parser -> shuttle-wit-parser,
  wit-codegen-maven-plugin -> shuttle-wit-maven-plugin
- Maven: groupId jp.akkiserver, parent artifactId shuttle, module
  artifactIds match the directory names; url/scm point to
  akkiserver-dev/shuttle
- Java packages: io.github.stefanrichterhuber.wasmtimejavang ->
  jp.akkiserver.shuttle, .witparser -> jp.akkiserver.shuttle.wit.parser,
  .witcodegen -> jp.akkiserver.shuttle.wit.codegen
- Rust JNI class-name strings, native library resource paths (pom copy
  targets and loaders), the code generator's import template and .idea
  module names updated to match

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
@akki697222 akki697222 closed this Oct 15, 2026
akki697222 and others added 6 commits October 15, 2026 15:38
…o docs/

The root README now describes Shuttle as a Wasm runtime library for
computer mods (OC via an addon, a new Retro Computing mod by default)
and links to docs/: building.md, java-binding.md (incl. the Weave JNI
layer), wit-codegen.md. Upstream material for removed modules (WASI,
wasmtimejavang-wasi-*) and upstream release notes were dropped.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
The rename left the generated import lines as
`import component.jp.akkiserver.shuttle.WitVariant;` (and WitEnum,
WitResult, WitResource), which does not compile. They now read
`jp.akkiserver.shuttle.component.*`.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
- pom, native/README.md, shuttle-core docs: Shuttle is a Wasm runtime
  library for computer mods, not a mod
- native/README.md: the JNI layer goes into shuttle-java
- shuttle-wit-maven-plugin: description and Mojo javadoc said it generates
  abstract classes; it generates sub-interfaces

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
HANDOFF: Shuttle is a runtime library (OC via addon, RC by default),
new module/package names, Windows build and Maven results, decisions
made today, and a list of known issues. CLAUDE.md: language rule,
project overview and Windows build/test notes.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
…job)

- Allow `deprecated` in the two JNI crates: jni 0.22.4's
  `bind_java_type!` expands to `AtomicBool::fetch_update`, deprecated in
  Rust 1.99, and setup-rust-toolchain builds with -D warnings
  (jni-rs/jni-rs#846).
- Install wasm32-unknown-unknown (valuetest fixture) instead of the
  wasip targets left over from the removed WASI modules.
- Linux job: drop build-windows-x86_64 (cross has no MSVC image).
- New Windows job: host build of shuttle-java and the example, with tests.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
@akki697222 akki697222 reopened this Oct 15, 2026
@akki697222 akki697222 closed this Oct 15, 2026
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