Skip to content

Add Rust adapters for core node components - #10

Open
tj (tjkilgore93-stack) with Copilot wants to merge 2 commits into
mainfrom
copilot/rust-migration-for-hyperfy
Open

tj (tjkilgore93-stack) with Copilot wants to merge 2 commits into
mainfrom
copilot/rust-migration-for-hyperfy

Conversation

Copilot AI commented Oct 13, 2026 •

Copy link
Copy Markdown

Introduce a Rust-first validation path and pure Rust adapters for the project’s core node component kinds, without restoring Deno CI.

  • Component adapters: Add typed wrappers for all 23 registered core node kinds, including shared identity, active state, and transform defaults.
  • Rust tooling: Add a Cargo workspace and replace the Deno workflow/config with Rust formatting, Clippy, and test checks.
  • Example:
    let mesh = MeshNode::new("mesh-1");
    assert_eq!(mesh.kind(), "mesh");

Open with GitKraken

@vercel

vercel Bot commented Oct 13, 2026 •

Copy link
Copy Markdown

The latest updates on your projects. Learn more about Vercel for GitHub.

Project Deployment Actions Updated
hyperfy Error Error Oct 13, 2026 4:58am UTC

Co-authored-by: tjkilgore93-stack <313495784+tjkilgore93-stack@users.noreply.github.com>
Copilot AI changed the title [WIP] Add Rust wrappers and update CI tooling for Rust validation Add Rust adapters for core node components Oct 13, 2026
@tjkilgore93-stack
tj (tjkilgore93-stack) marked this pull request as ready for review October 13, 2026 07:26
Copilot AI balanced review requested due to automatic review settings October 13, 2026 07:26

Copilot AI left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

🟡 Changes recommended

JavaScript validation is removed from CI, and the Rust transform API mislabels quaternion data as rotation.

3 open findings
What changed in this PR

Adds a Rust workspace with typed adapters for the 23 core node kinds and Rust-focused CI validation.

Changes:

  • Adds shared Rust node wrappers, transforms, registry, and tests.
  • Adds Cargo workspace metadata and Rust CI checks.
  • Removes Deno configuration/CI and ignores Rust build output.
File Description
rust/​components/​src/​lib.rs Defines component adapters and tests.
rust/​components/​Cargo.toml Configures the components crate.
Cargo.toml Defines the Cargo workspace.
Cargo.lock Locks workspace packages.
.github/​workflows/​rust.yml Adds Rust CI validation.
.github/​workflows/​deno.yml Removes Deno CI.
deno.json Removes Deno lint configuration.
.gitignore Ignores Cargo build output.

🧠 Review effort: Balanced


💡 Add a code-review agent skill or configure MCP servers for context-aware, tailored reviews. Learn more in the docs.

Comment on lines +26 to +27
- name: Run tests
run: cargo test --workspace
Comment on lines +10 to +23
pub struct NodeTransform {
pub position: [f64; 3],
pub rotation: [f64; 4],
pub scale: [f64; 3],
}

impl Default for NodeTransform {
fn default() -> Self {
Self {
position: [0.0; 3],
rotation: [0.0, 0.0, 0.0, 1.0],
scale: [1.0; 3],
}
}
Comment on lines +107 to +110
fn registry_matches_all_core_node_component_kinds() {
assert_eq!(
COMPONENT_KINDS,
&[
@tjkilgore93-stack
tj (tjkilgore93-stack) marked this pull request as draft October 13, 2026 16:21
@tjkilgore93-stack
tj (tjkilgore93-stack) marked this pull request as ready for review October 13, 2026 16:21
@tjkilgore93-stack
tj (tjkilgore93-stack) marked this pull request as draft October 15, 2026 22:38
@tjkilgore93-stack
tj (tjkilgore93-stack) marked this pull request as ready for review October 15, 2026 22:39

This branch had an error being deployed

1 failed deployment
Preview — 03e7199d Deployed Oct 13, 2026 by vercel[bot]
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.

3 participants