当前 DSL Showcase 注册了 set-sugar page。其 source 有一段紧凑的 authoring 例子:
button rename "Rename" primary ->
set headline props {content: "Renamed"}
button load "Load" primary ->
set list src "/modules/index"第一个 action 指向命名 node 的 props;第二个 action 改变命名 node 的 data source。两者都编译进本 board 其他页面所述的 AUP node/event contract。
这个例子能证明什么
- 当前 DSL parser/compiler 接受 Showcase source 中这两种
setshorthand; - 命名 target 让 source 中的本地更新意图可审阅;
- 该文件已在当前 DSL Showcase app page map 中注册。
它不能证明什么
- remote deployment 或任意历史 static Showcase page 是 live;
/modules/index对每个 session、scope 或 target 都可读;- 每个 renderer 都以相同方式呈现更新或交互。
要把它变成产品声明,应在目标 runtime 本地运行已注册 app,触发每个 action,并记录 target、URL、版本和可观察结果。不能只凭 source 文件写成端到端验收结果。
合同见 Event、state 与 binding;权限边界见 调用者身份与安全。