Repository navigation
Complete shared component hosting and declarative app capabilities - #457
Merged
Merged
Conversation
A shared component (App Hub ADR 0003) is a component App Hub publishes on its own; an app pins it by alias, id, exact version and BLAKE3 digest. The wasm service now loads each one the app pins beside its fns/, from octosense_appstore::components::resolved_in (a system app's from its bundle, an installed app's from the shared store, checked against the verified catalog and its digest on every load), and routes its exports as wasm.<alias>.<function>. The app gets its own instance, under its own grants, as for a component in its fns/; an app may call only shared components. warm compiles them ahead too, and wasm.functions names the component each function comes from. 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>
…arative-host-capabilities # Conflicts: # docs/wasm.md # docs/wasm.zh-CN.md
ymote
force-pushed
the
feat/wasm-shared-components
branch
from
October 10, 2026 05:24
740e1f6 to
5dc972b
Compare
ymote
marked this pull request as ready for review
October 10, 2026 06:41
Contributor
Author
|
Local CI passed on 8b09e05 ( GitHub would run for this PR: desktop.yml, phone.yml, apps.yml. Merged on this local pass (macOS runner queue); GitHub CI runs on the merge commit on main.
Notes:
Native GitHub acceptance passed on the same head: embedded-browser.yml. |
chrislearn
pushed a commit
to chrislearn/OctoSense
that referenced
this pull request
Oct 12, 2026
…stands Records what changed after the ADR was accepted: ADR 0014 components and shared components are merged and in desktop 0.1.0-rc.4 (not in a Home release); capabilities are declarations (makepad#117/OctoSense-org#118, OctoSense OctoSense-org#452, OctoSense-org#457); OctoSense-org#313 holds milestone 1's renderer and tools, unreviewed and unmerged; the product owner deferred the phone studio work on 10 October 2026. Amends section 5: the checks, measurement and comparison are Rust crates that build natively into App Hub's card-studio on the desktop and, with App Flow's tools/octo wasm build, into components in the studio's own bundle on the phone (intake, ocr, measure, compare, checks), within the wasm service's limits; what stays shell code. Amends section 6 (what mod.studio keeps) and section 7 (the tools OctoSense-org#313 ships; check/compare/critique as component functions; the 256 KiB reply cap). A table of where each step of the flow stands on 10 October 2026, the route for when the work resumes (proposed, unassigned), what a phone will not do, the amended "what changes where", and three added open questions. Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Admitted apps can call public host APIs without declaring their capability family, consistently across Splash, app-agent tools and Wasm components. Verified bundle/profile identity, device consent, OS permissions, account scope, trusted write review, storage jail/quota and inter-app tool sharing remain enforced.
requiresandhost_api.requiredstill determine compatibility.This completes the shell's model, assistant, file, audio, calendar, location, Glance, backend-login and background-mail paths. Camera capture uses explicit audio/library options, with
camera.capture_intent@1for discovery; broader API availability cannot silently enable sound or photo export. Agents request research tools by exactagent.toolsnames. English/Chinese architecture, API and ADR guides distinguish source, device and release support.Integration fixes:
The synthetic publisher release has four genuine GitHub attestations. A protected Hub workflow signed and verified an exactly reviewed dry-run catalog; the official public catalog is unchanged. Contract 1.11.0 is published. OctoSense #452/#454/#455, App Hub #192/#197/#199 and App Flow #183 are merged.
Validation at final candidate
8b09e05d:e5c982aac60fe7cc3e88de441a038d1eff97759c9e6a9f070df5633f4a34eabc.0c018f82) passed 51/52 steps and all 1,153 shell tests; its sole failure exposed the loader identity bug now repaired in App Hub Linux sandbox: run it on a real kernel; a cargo launch sandboxes only the app (#138) #199. The failed receipt is retained, not replaced with a passing result.Earlier committed receipts at clean source
c5f0c5c1record real catalog → Store → Splash tool → shared-component execution: macOS and OnePlus 6 each passed 28/28 native assertions, with 12/12 and 13/13 driver checks. These remain historical evidence, separate from the final candidate.Proofs: publisher, admin catalog dry-run, contract publication.
No live-model, physical permission approval, real mail/calendar write, OpenHarmony-device, production Home-upgrade or released-archive acceptance is claimed by these fixtures. A GitHub-built desktop RC will receive separate archive acceptance before publication.