Initial rendering and later updates are not the same thing in interactive AUP. Current message types send a full-tree render first, then incremental patch updates carrying a treeVersion. Web Device's static HTML path does not require this interactive-session pipeline as the prerequisite for every Web page.
The current patch boundary
A patch contains these operations:
| Operation | Effect |
|---|---|
create | Create a node under a specified parent |
update | Change allowed fields on an existing node |
remove | Remove a node |
reorder | Change child ordering |
A current update can change src, props, state, events, propBind, or children. This is why authors need stable id values: patches target node identity, not display copy or a renderer's temporary DOM.
Do not treat this list as a forever-stable guarantee for every transport detail. This page uses it as the authoring and debugging model for 2.0.0-beta.25; a cross-version client/server combination still needs actual release-compatibility acceptance.
What scenes and capabilities own
The device in a session reports capability and context during handshake. That affects whether the same semantic tree appears as native, webview, partial, or fallback presentation. AUP's shared degradation chain only handles replacement order for some primitives; it does not replace decisions about scene, identity, AFS scope, or write authority.
Keep these questions separate:
- “Did the tree update the intended node?” is an event/patch question.
- “Can this target present the primitive?” is a
DeviceCaps/degradation question. - “May this operation read or write the path?” is a caller-identity/AFS-scope question.
- “Did a Web page get static HTML?” is a Web Device renderer/build question.
Debug in order
- Use one visible node state change to verify that an event produces a patch.
- In the same session, verify named-page navigation uses the current
_root+set.pageform. - Then inspect capability differences and fallback on a second target.
- Run a static Web Device build separately; its success does not prove an interactive session.
For event fields, read Events, state, and bindings. For device differences, read Device capabilities and degradation.