Skip to content

feat(plugin): load rust_dynamic plugins in relay#307

Draft
willkill07 wants to merge 2 commits into
NVIDIA:mainfrom
willkill07:wkk_dynamic-plugin-3-native-loader
Draft

feat(plugin): load rust_dynamic plugins in relay#307
willkill07 wants to merge 2 commits into
NVIDIA:mainfrom
willkill07:wkk_dynamic-plugin-3-native-loader

Conversation

@willkill07

Copy link
Copy Markdown
Member

Overview

Add the host-side rust_dynamic native plugin loader and gateway activation path.

Stack dependency: this PR cannot be merged until parent stacked PR #306 is merged: #306

  • I confirm this contribution is my own work, or I have the right to submit it under this project's license.
  • I searched existing issues and open pull requests, and this does not duplicate existing work.

Details

  • Load trusted in-process native dynamic plugins through the stable ABI.
  • Register native plugin kinds into the existing plugin registry and clear them before library unload.
  • Add native plugin gateway activation, fixture coverage, and integration tests.

Validation run across the completed stack:

  • cargo test -p nemo-relay-types
  • cargo test -p nemo-relay-plugin
  • cargo test -p nemo-relay-worker-proto
  • cargo test -p nemo-relay-worker
  • cargo check -p nemo-relay-cli

Where should the reviewer start?

Start with crates/core/src/plugin/dynamic/native.rs, then review the activation wiring in crates/cli/src/server.rs.

Related Issues: (use one of the action keywords Closes / Fixes / Resolves / Relates to)

@coderabbitai

coderabbitai Bot commented Jun 25, 2026

Copy link
Copy Markdown

Important

Review skipped

Draft detected.

Please check the settings in the CodeRabbit UI or the .coderabbit.yaml file in this repository. To trigger a single review, invoke the @coderabbitai review command.

⚙️ Run configuration

Configuration used: Path: .coderabbit.yaml

Review profile: ASSERTIVE

Plan: Enterprise

Run ID: 8f08e73b-fd77-42fe-90d6-0075d4052cbd

You can disable this status message by setting the reviews.review_status to false in the CodeRabbit configuration file.

Use the checkbox below for a quick retry:

  • 🔍 Trigger review
✨ Finishing Touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests

Comment @coderabbitai help to get the list of available commands.

@github-actions github-actions Bot added the size:XXL PR is very large label Jun 25, 2026
@github-actions github-actions Bot added Feature a new feature lang:rust PR changes/introduces Rust code labels Jun 25, 2026
@github-actions

Copy link
Copy Markdown

@willkill07 willkill07 self-assigned this Jun 25, 2026
@willkill07 willkill07 added this to the 0.5 milestone Jun 25, 2026
@willkill07 willkill07 force-pushed the wkk_dynamic-plugin-3-native-loader branch from 95aee26 to a2eb759 Compare June 25, 2026 18:16
@willkill07 willkill07 force-pushed the wkk_dynamic-plugin-3-native-loader branch from a2eb759 to 096d576 Compare June 25, 2026 18:44
@github-actions

github-actions Bot commented Jun 25, 2026

Copy link
Copy Markdown

@willkill07 willkill07 force-pushed the wkk_dynamic-plugin-3-native-loader branch from 096d576 to 186668d Compare June 25, 2026 23:21
@github-actions

github-actions Bot commented Jun 25, 2026

Copy link
Copy Markdown

@willkill07 willkill07 force-pushed the wkk_dynamic-plugin-3-native-loader branch from 186668d to 0c89f8f Compare June 25, 2026 23:40
@github-actions

github-actions Bot commented Jun 25, 2026

Copy link
Copy Markdown

@willkill07 willkill07 force-pushed the wkk_dynamic-plugin-3-native-loader branch from 0c89f8f to 0171643 Compare June 26, 2026 00:19
@github-actions

github-actions Bot commented Jun 26, 2026

Copy link
Copy Markdown

@willkill07 willkill07 force-pushed the wkk_dynamic-plugin-3-native-loader branch from 0171643 to e118a8b Compare June 26, 2026 00:45
@github-actions

github-actions Bot commented Jun 26, 2026

Copy link
Copy Markdown

@willkill07 willkill07 force-pushed the wkk_dynamic-plugin-3-native-loader branch from e118a8b to 54be92c Compare June 26, 2026 02:28
@github-actions

github-actions Bot commented Jun 26, 2026

Copy link
Copy Markdown

Signed-off-by: Will Killian <wkillian@nvidia.com>
@willkill07 willkill07 force-pushed the wkk_dynamic-plugin-3-native-loader branch from 54be92c to d5f5b7c Compare June 26, 2026 12:07
@github-actions

github-actions Bot commented Jun 26, 2026

Copy link
Copy Markdown

Signed-off-by: Will Killian <wkillian@nvidia.com>
@willkill07 willkill07 force-pushed the wkk_dynamic-plugin-3-native-loader branch from d5f5b7c to 2af45a9 Compare June 26, 2026 13:01
@github-actions

Copy link
Copy Markdown

License Diff

Compared against origin/main.

Lockfile license changes

Lockfile License Changes

Rust

Added

  • None

Removed

  • None

Updated/Changed

sha2

Before:

  • sha2 0.11.0 (Apache-2.0)

After:

  • sha2 0.10.9 (Apache-2.0)
  • sha2 0.11.0 (Apache-2.0)

Node

Added

  • None

Removed

  • None

Updated/Changed

  • None

Python

Added

  • None

Removed

  • None

Updated/Changed

  • None
Status output
[license-diff] selected languages: rust, node, python
[license-diff] generating current inventory
[license-diff] current: generating Rust inventory
[license-diff] current: Rust inventory complete (345 packages)
[license-diff] current: generating Node inventory
[license-diff] current: Node inventory complete (364 packages)
[license-diff] current: generating Python inventory
[license-diff] current: Python inventory complete (104 packages)
[license-diff] current inventory complete
[license-diff] checking out base ref origin/main into a temporary worktree
[license-diff] base: generating Rust inventory
[license-diff] base: Rust inventory complete (344 packages)
[license-diff] base: generating Node inventory
[license-diff] base: Node inventory complete (364 packages)
[license-diff] base: generating Python inventory
[license-diff] base: Python inventory complete (104 packages)
[license-diff] base inventory complete
[license-diff] removing temporary base worktree
[license-diff] comparing inventories
[license-diff] rendering Markdown output
[license-diff] done

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Feature a new feature lang:rust PR changes/introduces Rust code size:XXL PR is very large

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant