Skip to content

docs(rfc): runtime-aware app executables - #507

Open
replghost wants to merge 11 commits into
mainfrom
rfc/runtime-aware-app-executables
Open

replghost wants to merge 11 commits into
mainfrom
rfc/runtime-aware-app-executables

Conversation

@replghost

@replghost replghost commented Aug 26, 2026 •

Copy link
Copy Markdown
Contributor

Summary

App executable manifest v2 declares one explicit runtime. Web remains mandatory; PolkaVM is optional. Unsupported runtimes fail closed rather than being interpreted as web content. The root Product manifest and other executable kinds are unchanged.

Graphics and optional audio requirements are versioned. Interactive input belongs to the application ABI. User files require a registered runtime handler and selection in Host UI; the optional fileTypes field is advisory and grants no permission.

Tracking issue: #550. Implementation: #540.

Scope and qualification

The only file changed relative to main is docs/rfcs/runtime-aware-app-executables.md. The branch includes main c5158448f3c4575f40350017d466053d6b19dacb and the shared-branch file-input and optional-runtime activation clarifications. Head: 116f20a0bed3c33fc9db9fa5dec9d4589642bec4.

CI passed, and RFC validation passed. The RFC remains a draft pending review and acceptance.

@replghost
replghost requested review from a team August 26, 2026 01:39
@replghost replghost added the rfc label Aug 26, 2026
Comment thread docs/rfcs/runtime-aware-app-executables.md Outdated
Graphics is required. Device input and audio are optional and should be omitted
when unused.

The graphics profiles have the following roles:

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

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

for reference would be nice to know what host today, support what

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

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

The v2 manifest is supported by Epoca 0.2.0 and later.

It can also be tried from the feat/pvm-wasm branch of dotli-community.

Reproducible App manifest v2 examples for the framebuffer, Tri2D, and WebGPU Raster profiles are available in paritytech/product-runtime-examples.

iOS and Android currently support web Apps and do not yet implement the PolkaVM runtime.

I have kept these references out of the RFC because they describe implementation status rather than the portable contract.

@replghost
replghost requested a review from pgherveou August 28, 2026 00:02
@filvecchiato

Copy link
Copy Markdown
Collaborator

FYI this should be raised as an issue first to follow the new pipeline

@replghost replghost mentioned this pull request Aug 28, 2026
2 of 19 tasks
@replghost

Copy link
Copy Markdown
Contributor Author

@filvecchiato Tracking issue is #550. I linked RFC #507 and implementation PR #540, added the rfc label, and expanded the issue to track the runtime contracts, publisher support, examples, and Host adoption.

@replghost
replghost enabled auto-merge August 28, 2026 17:14
@github-actions github-actions Bot added the documentation Improvements or additions to documentation label Sep 28, 2026
@github-actions

github-actions Bot commented Sep 29, 2026 •

Copy link
Copy Markdown
Contributor

CI Status: 24 required jobs green, 15 passed and 9 skipped by path filter.

All job results
job result
android-bindings skipped
bundle-size success
changes success
changeset-guard skipped
cli-package skipped
codegen success
e2e skipped
explorer success
headless-install success
host-android-bindings skipped
host-android-detekt skipped
host-wasm success
ios-bindings success
ios-swift skipped
licenses success
playground success
provider-android-bindings skipped
release-guard success
rust success
ts-client success
ts-debugger success
ts-host success
wasm-provider success
workflow-lint skipped

Signing credentials: failure as of 2026-09-29, a release may fail

Commit 116f20a0 · run log

@github-actions

github-actions Bot commented Sep 29, 2026 •

Copy link
Copy Markdown
Contributor

Bundle size report

Compared with main at c515844.

Raw Gzip Brotli
truapi-host 7.78 MiB 5.63 MiB 5.36 MiB
truapi-provider 4.06 MiB 1.28 MiB 963.4 KiB
truapi 5.71 MiB 804.9 KiB 660.0 KiB
Total 17.55 MiB 7.69 MiB 6.95 MiB

WebAssembly modules

Raw Gzip Brotli
truapi-host/wasm/web/truapi_server_bg.wasm 2.68 MiB 958.6 KiB 725.3 KiB
truapi-host/wasm/web/truapi_verifiable_bg.wasm 4.89 MiB 4.64 MiB 4.61 MiB
truapi-provider/truapi_provider_bg.wasm 4.01 MiB 1.27 MiB 955.7 KiB

No file changed size.

Commit: 116f20a

User files are runtime-authorized: Apps register handlers while running
and receive a file only through the user's selection in Host UI. PolkaVM
App manifests may carry an advisory top-level fileTypes list. The draft
fileInput capability is not part of App manifest v2.

Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
@replghost replghost changed the title RFC: Runtime-aware App executables docs(rfc): runtime-aware app executables Sep 29, 2026

This branch has not been deployed

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

Labels

documentation Improvements or additions to documentation rfc

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants