Skip to content

feat(native): expose complete package dispatcher - #95

Merged
robinbraemer merged 1 commit into
mainfrom
feat/native-package-dispatch
Aug 13, 2026
Merged

feat(native): expose complete package dispatcher#95
robinbraemer merged 1 commit into
mainfrom
feat/native-package-dispatch

Conversation

@robinbraemer

Copy link
Copy Markdown
Member

Closes #93

Embeds the complete Rust parser/dispatcher behind the TypeScript SDK native binding. This lets the platform CLI delegate akua pkg to the one package-command implementation rather than copying package semantics.

Rationale: The platform CLI must embed the package toolchain as akua pkg without duplicating its command semantics. Export one parser/dispatcher through the native SDK so every package verb shares the standalone contract.\n\nRejected: Reimplementing package commands in TypeScript or a partial per-verb wrapper, because either would drift from the Rust CLI.\n\nRisk: Embedded calls currently stream their native output directly to host stdout/stderr; the returned value remains the documented package exit code.\n\nTested: cargo fmt --check; cargo test -p akuapkg-cli embedded_runner_preserves_clap_user_error_exit_code --lib; cargo test -p akua-napi execute_returns_the_package_contract_exit_code --lib; task sdk:build; task sdk:test; task sdk:check.
@robinbraemer
robinbraemer merged commit 0e5edcc into main Aug 13, 2026
0 of 2 checks passed
@robinbraemer
robinbraemer deleted the feat/native-package-dispatch branch August 13, 2026 22:32
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.

Expose complete package command surface through the TypeScript SDK

1 participant