Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
10 changes: 10 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -12,6 +12,16 @@ independent of these package versions.

## Unreleased

## v0.2.0-vm.15 - 2026-10-05

The renderer examples now expose the supported web and desktop surfaces without
shipping a terminal renderer.

- Remove the retired terminal renderer examples, adapters, package entries and
dependency references.
- Keep the browser and desktop semantic view contracts and their existing
qualification evidence.

## v0.2.0-vm.14 - 2026-09-30

Native release checks keep the source checkout clean while testing archives
Expand Down
12 changes: 6 additions & 6 deletions docs/malleable-roadmap-progress.md
Original file line number Diff line number Diff line change
Expand Up @@ -81,12 +81,12 @@ this document records orchestration state.

| Stage | Evidence | Delivery scope |
| --- | --- | --- |
| A | Qualified portable filesystem/memory lifecycle, 19 native/reference receipts and 38 cross-verifications; same task capture/actions across browser, desktop and TUI; shared session fixtures; actual renderer costs and limitations measured | No missing local exit evidence. Desktop's provisional CUA-inclusive action budget failed; performance remains experimental, with paint latency unisolated |
| A | Qualified portable filesystem/memory lifecycle, 19 native/reference receipts and 38 cross-verifications; same task capture/actions across browser and desktop; shared session fixtures; actual renderer costs and limitations measured | No missing local exit evidence. Desktop's provisional CUA-inclusive action budget failed; performance remains experimental, with paint latency unisolated |
| B | Qualified static fallback, independent mounts, keyboard continuity, expected-head rejection, preview/adoption and restoration; actual staging preview and owner browser checks pass | Staging qualification; production acceptance checks the deployed capture against the validated build |
| C | Qualified ordered/deduplicated signals, same-capture explanations, persistent controls, journal/history and interrupted-publication/restart behavior | Local owner and public read-only captures share the same bounded read model |
| D | Real Gateway attempts retained; independent pass/fail/inconclusive shadows; guarded adoption; one joined provider-reported USD 0.001369 debit, with the original unknown preserved | Missing/malformed provider billing remains unknown; recorded public fixtures make no inference calls |
| E | Shared lifecycle in actual workerd, immutable core dependency pin, typed client, owner dashboard, A/A instrumentation, inert recovery and forward restoration | The [cloud delivery record](https://github.com/hraness/algal-cloud/blob/codex/application-roadmap/docs/application-roadmap.md) owns exact integration, isolated hosted qualification and dashboard evidence |
| F | Final exact-source Dioxus/Ratatui package: 37 extraction checks, 11 packaged offline checks, actual native typing/select/draft interactions; real network-denied Apple revision change and matching packaged provider binaries | Functional exit qualified for macOS arm64; ad-hoc signed, not notarized; broader platforms and desktop performance are not production-qualified |
| F | Final exact-source Dioxus package: 37 extraction checks, 11 packaged offline checks, actual native typing/select/draft interactions; real network-denied Apple revision change and matching packaged provider binaries | Functional exit qualified for macOS arm64; ad-hoc signed, not notarized; broader platforms and desktop performance are not production-qualified |
| G | Qualified materially different task application, actual v1→v2 migration, workflow changes, typed forms/actions, core lifecycle conformance, pure evidence forks and explicit field conflicts | Full browser-local kernel explicitly deferred, not claimed by the browser renderer |

Core commit `39607174063030eb4793ab65601a41d7d7c918d4` passed the aggregate
Expand Down Expand Up @@ -154,8 +154,8 @@ schema migration, explicit fork conflict resolution and separate durable session
Its focused host suite passed 8 tests/81 assertions after independent review
removed missing-evidence healing and cache masking. Nineteen complete
native/reference receipts matched with 38 cross-runtime offline verifications.
The Dioxus desktop and Ratatui builds passed. Browser, desktop and terminal
share semantic capture/command data; five session-identity fixtures cover adding,
The Dioxus desktop build passed. Browser and desktop share semantic
capture/command data; five session-identity fixtures cover adding,
changing, moving and removing controls while retaining drafts. Actual native
interaction preserved a task and independent draft across schema upgrade and
explicit rebase. It exposed Dioxus fast-typing loss and initial dropdown errors;
Expand All @@ -164,8 +164,8 @@ regressions exercise real virtual-DOM mutations, and actual final-package typing
first-mount selection, panel remount, save and draft-reset checks passed.

The final macOS arm64 archive passed 37 fresh-extraction checks and 11 checks
under process-tree network denial. It includes a standalone expression-WASM host,
Dioxus app and Ratatui executable; no checkout or Bun installation is required.
under process-tree network denial. It includes a standalone expression-WASM host
and Dioxus app; no checkout or Bun installation is required.
The archive SHA-256 is
`e59b81d33b20af0917da6211510e76d438155af6bc05abaa5f12c3e08707e556`;
its clean source inventory SHA-256 is
Expand Down
5 changes: 2 additions & 3 deletions docs/malleable-software-plan.md
Original file line number Diff line number Diff line change
Expand Up @@ -131,16 +131,15 @@ Dioxus is a leading candidate, not a settled architectural dependency. Reviewed
| Dioxus Web | WASM driving browser DOM; selectable mount root | Test as an embedded surface against a small semantic HTML baseline |
| Dioxus desktop/mobile | Native Rust logic with a system WebView | Early local application candidate; do not call these platform-native widgets |
| Dioxus Native / Blitz | Separate HTML/CSS/WGPU path; Blitz is beta | Later qualification, especially text input and accessibility |
| Dioxus TUI | Deprecated | Use a separate Ratatui adapter |
| Dioxus LiveView | Deprioritized server/WebSocket approach | Do not make it the foundation of offline operation |

[Dioxus platform structure](https://dioxuslabs.com/learn/0.7/beyond/project_structure/), [Blitz status](https://github.com/DioxusLabs/blitz#status), [Ratatui's Elm architecture](https://ratatui.rs/concepts/application-patterns/the-elm-architecture/)
[Dioxus platform structure](https://dioxuslabs.com/learn/0.7/beyond/project_structure/), [Blitz status](https://github.com/DioxusLabs/blitz#status)

A compiled recursive renderer can interpret a changing ALGAL view tree using keyed components. Layout, content, tree structure and action bindings can change without compiling new Rust. Dioxus's RSX and VNode APIs support dynamic content, while optimized templates use static structures. Begin with a fixed interpreter over versioned widgets, and measure allocation/reconciliation behavior through repeated revisions. [RSX](https://dioxuslabs.com/learn/0.7/tutorial/rsx/), [template API](https://docs.rs/dioxus-core/0.7.10/dioxus_core/struct.Template.html)

Development hot reload and experimental Rust hotpatching are useful tooling, but they are not ALGAL's production evolution protocol. Arbitrary new native code remains a separately built and admitted host extension. [Dioxus hot reload](https://dioxuslabs.com/learn/0.7/essentials/ui/hotreload/)

The renderer spike should test one small interactive artifact in Dioxus Web, a desktop WebView and a minimal Ratatui renderer. Cover stable focus and draft preservation, IME input, keyboard navigation, accessible names, stale events, restart, repeated revision swaps, and multiple web mounts/unmounts. Measure additional download size, startup, interaction latency, retained memory and host-site style/router interference. Set performance budgets against the chosen host site before declaring success.
The renderer spike should test one small interactive artifact in Dioxus Web and a desktop WebView. Cover stable focus and draft preservation, IME input, keyboard navigation, accessible names, stale events, restart, repeated revision swaps, and multiple web mounts/unmounts. Measure additional download size, startup, interaction latency, retained memory and host-site style/router interference. Set performance budgets against the chosen host site before declaring success.

For marketing embeds, useful HTML must exist before the interactive renderer loads. Use a static/SSR projection from an exact revision and state snapshot, then attach interaction without changing that initial tree. Dioxus supports SSR/hydration, but its app-oriented approach does not itself prove lightweight island integration. Hydration, teardown and cache invalidation need explicit tests. A custom element can provide an integration wrapper; it is not a security sandbox. [Web mounting API](https://docs.rs/dioxus-web/latest/dioxus_web/struct.Config.html), [Dioxus SSR](https://dioxuslabs.com/learn/0.7/essentials/fullstack/ssr/), [custom elements](https://html.spec.whatwg.org/multipage/custom-elements.html)

Expand Down
4 changes: 2 additions & 2 deletions examples/malleable-site/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -7,5 +7,5 @@ root to begin. The live browser demonstration is at
[algal.computer/living](https://algal.computer/living/).

An earlier renderer experiment consumed the exact same semantic view in Dioxus
web/desktop and Ratatui. The spike concluded and the adapters were removed; the
git history retains the record.
web and desktop. The spike concluded and its adapters were removed; the git
history retains the record.
Loading