1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
- ----
EngineContext 当前使用 `Option<Arc<dyn Trait>>` 持有各 store 引用。所有 handler 需要在运行时 unwrap 或判断 `if let Some(...)`,增加了 panic 风险和代码冗余。
需要在保持 handler Vec 可存异构对象的前提下消除 `Option`。
**采用方案 A**:保持 `Arc<dyn Trait>` 模式,移除 `Option` 包装,增加 `EngineContextBuilder` 在构造时校验必填 store。
**原因**:
- --
**影响范围**:`crates/runtime` 所有 handler + `crates/server/rest` + examples
- -