@microi.net/cli 6.1.1 → 6.1.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.codebuddy-plugin/marketplace.json +2 -2
- package/.codebuddy-plugin/plugin.json +1 -1
- package/.codex-plugin/plugin.json +1 -1
- package/.workbuddy-plugin/marketplace.json +2 -2
- package/.workbuddy-plugin/plugin.json +1 -1
- package/assets/build-meta.json +4 -4
- package/cordis.patch.yml +1 -1
- package/package.json +1 -1
- package/scripts/mcp-server.js +108 -106
- package/scripts/microi-skills.meta.json +294 -294
- package/skills/.microi-skills-version.json +2 -2
- package/skills/.progressive-disclosure-manifest.json +13 -13
- package/skills/ai-engine/references/ai-employees.md +48 -48
- package/skills/ai-engine/references/self-hosted-digital-human.md +59 -59
- package/skills/business-blueprint/SKILL.md +193 -193
- package/skills/datasource-engine/SKILL.md +93 -93
- package/skills/dos-orm/SKILL.md +105 -105
- package/skills/dos-orm/references/api-reference.md +229 -229
- package/skills/email-engine/SKILL.md +81 -81
- package/skills/email-engine/references/v8-email.md +34 -34
- package/skills/job-engine/SKILL.md +176 -176
- package/skills/message-notification/SKILL.md +156 -156
- package/skills/message-notification/references/contracts.md +102 -102
- package/skills/microi/SKILL.md +14 -14
- package/skills/microi-ai-application/SKILL.md +115 -115
- package/skills/microi-ai-application/references/frontend-baseline.md +164 -164
- package/skills/microi-client-frontend/references/progressive-01-3-/345/212/250/346/200/201/346/214/211/351/222/256/347/263/273/347/273/237.md +10 -10
- package/skills/microi-client-frontend/references/progressive-02-8-/350/277/220/350/241/214/346/227/266/351/253/230/351/242/221/345/235/221/345/244/215/347/233/230.md +10 -10
- package/skills/microi-client-frontend/references/progressive-03-vue3-/345/211/215/347/253/257/345/276/256/346/234/215/345/212/241/345/256/277/344/270/273/350/247/204/345/210/231.md +10 -10
- package/skills/microi-codex/SKILL.md +130 -130
- package/skills/microi-datasource-mapping/SKILL.md +131 -131
- package/skills/microi-db-schema/SKILL.md +175 -175
- package/skills/microi-db-schema/references/core-tables.md +695 -695
- package/skills/microi-db-schema/references/form-component-options.md +256 -256
- package/skills/microi-db-schema/references/schema-overview.md +202 -202
- package/skills/microi-db-schema/references/schema.md +646 -646
- package/skills/microi-db-schema/references/table-catalog.md +1599 -1599
- package/skills/microi-deployment/SKILL.md +260 -260
- package/skills/microi-deployment/references/deployment-matrix.md +112 -109
- package/skills/microi-docs-coverage/SKILL.md +133 -133
- package/skills/microi-docs-coverage/references/capability-map.md +91 -91
- package/skills/microi-form-engine/SKILL.md +338 -338
- package/skills/microi-form-engine/references/component-catalog.md +218 -218
- package/skills/microi-form-engine/references/data-source-events.md +124 -124
- package/skills/microi-left-right-layout/SKILL.md +141 -141
- package/skills/microi-microservice/SKILL.md +354 -353
- package/skills/microi-microservice/references/runtime-delivery.md +282 -282
- package/skills/microi-solution-quotation/SKILL.md +78 -78
- package/skills/microi-sso/SKILL.md +102 -102
- package/skills/microi-sso/references/configuration-and-security.md +53 -53
- package/skills/microi-sso/references/inbound.md +53 -53
- package/skills/microi-sso/references/outbound.md +43 -43
- package/skills/microi-system-delivery/references/context-quality.md +3 -3
- package/skills/microi-system-delivery/references/progressive-01-/346/240/207/345/207/206/345/267/245/344/275/234/346/265/201.md +11 -11
- package/skills/microi-system-delivery/references/progressive-02-/350/207/252/345/212/250/345/214/226/346/265/213/350/257/225/345/277/205/351/241/273/350/246/206/347/233/226/347/232/204/345/235/221.md +12 -12
- package/skills/microi-system-delivery/references/progressive-03-/345/256/211/345/205/250/344/270/216/350/267/250/347/253/257/351/252/214/346/224/266.md +8 -8
- package/skills/microi-uniapp-frontend/SKILL.md +4 -1
- package/skills/module-engine/SKILL.md +297 -297
- package/skills/module-engine/references/module-config.md +204 -204
- package/skills/ocr-engine/SKILL.md +113 -113
- package/skills/page-engine/references/progressive-01-/346/211/200/346/234/211/347/273/204/344/273/266/347/261/273/345/236/213.md +10 -10
- package/skills/page-engine/references/progressive-02-/347/211/210/346/234/254/345/216/206/345/217/262-/345/271/266/345/217/221/344/277/235/345/255/230/344/270/216/345/233/236/346/273/232.md +12 -12
- package/skills/performance-testing/SKILL.md +227 -227
- package/skills/print-engine/SKILL.md +259 -259
- package/skills/production-readonly-audit/SKILL.md +41 -41
- package/skills/report-engine/SKILL.md +83 -83
- package/skills/search-engine/SKILL.md +75 -75
- package/skills/spider-engine/SKILL.md +190 -190
- package/skills/system-observability/SKILL.md +264 -264
- package/skills/system-observability/references/memory-incident-triage.md +77 -77
- package/skills/translate-engine/SKILL.md +140 -140
- package/skills/ui-design/assets/templates/MCI-DESIGN.md +206 -206
- package/skills/ui-design/references/design-pattern-library.md +184 -184
- package/skills/ui-design/references/mci-design-contract.md +163 -163
- package/skills/ui-design/references/motion-and-media.md +78 -78
- package/skills/ui-design/references/product-flow-recipes.md +94 -94
- package/skills/uniapp-mall-assets/SKILL.md +176 -176
- package/skills/unity-integration/SKILL.md +178 -178
- package/skills/unity-integration/references/sdk-api.md +82 -82
- package/skills/unity-integration/references/toolbox-migration.md +66 -66
- package/skills/unity-integration/references/webgl-hosting.md +57 -57
- package/skills/v8-api-config/SKILL.md +3 -0
- package/skills/v8-cache-pattern/SKILL.md +320 -320
- package/skills/v8-debugging/SKILL.md +284 -284
- package/skills/v8-explorer-tree/SKILL.md +228 -228
- package/skills/v8-file-upload/references/cdn-alias-repair.md +13 -13
- package/skills/v8-frontend-events/references/bluetooth-print-api.md +135 -135
- package/skills/v8-frontend-events/references/bluetooth-print.md +258 -258
- package/skills/v8-image-processing/SKILL.md +190 -190
- package/skills/v8-image-processing/references/api-reference.md +623 -623
- package/skills/v8-mongodb/SKILL.md +201 -201
- package/skills/v8-mq-mqtt/references/mqtt-production.md +352 -352
- package/skills/v8-saas-multi-tenant/SKILL.md +315 -309
- package/skills/v8-sql-query/SKILL.md +302 -302
- package/skills/v8-template-engine/SKILL.md +167 -167
- package/skills/v8-utilities/references/client-api-index.md +143 -143
- package/skills/v8-utilities/references/platform-http-routes.md +83 -83
- package/skills/v8-workflow/references/workflow-configuration.md +49 -49
- package/skills/vision-engine/SKILL.md +160 -160
- package/skills/vision-engine/references/architecture-and-acceptance.md +194 -194
- package/skills/workspace-conventions/SKILL.md +174 -168
- package/skills/workspace-conventions/references/progressive-02-microi-net-api-/346/234/254/345/234/260/345/220/257/345/212/250/347/272/246/345/256/232.md +34 -34
- package/skills/workspace-conventions/references/progressive-03-cli-/344/270/216-ide-/346/217/222/344/273/266/351/224/231/347/211/210/345/205/261/345/255/230/347/272/246/345/256/232.md +6 -6
|
@@ -1,66 +1,66 @@
|
|
|
1
|
-
# 既有 Unity 工具箱提取
|
|
2
|
-
|
|
3
|
-
## 先建立清单
|
|
4
|
-
|
|
5
|
-
按目录和程序集记录:
|
|
6
|
-
|
|
7
|
-
- Runtime 通用脚本;
|
|
8
|
-
- Editor 菜单、导入器和构建工具;
|
|
9
|
-
- WebGL `.jslib`、模板和 JavaScript;
|
|
10
|
-
- 相机、路径、触发区、设备协议与客户业务脚本;
|
|
11
|
-
- Prefab、模型、动作、材质、贴图、字体、音频;
|
|
12
|
-
- 第三方 Package 与其许可证。
|
|
13
|
-
|
|
14
|
-
同时记录 Unity 版本、渲染管线、API Compatibility Level、Scripting Backend、目标平台和程序集依赖图。
|
|
15
|
-
|
|
16
|
-
## 分类规则
|
|
17
|
-
|
|
18
|
-
| 类型 | 去向 |
|
|
19
|
-
|---|---|
|
|
20
|
-
| 与业务无关的 API 客户端、宿主桥、构建基础能力 | `Microi.Unity/Runtime` 或 `Editor` |
|
|
21
|
-
| 可展示的最小使用方式 | `Microi.Unity/Samples~` |
|
|
22
|
-
| 场景、客户模型、设备字段、项目配置 | 原项目或独立业务项目 |
|
|
23
|
-
| 来源不明或限制再分发的素材 | 不进入公共包;替换或取得授权 |
|
|
24
|
-
| 只为旧项目兼容的适配代码 | 原项目 Adapter,不污染公共 API |
|
|
25
|
-
|
|
26
|
-
## 安全迁移顺序
|
|
27
|
-
|
|
28
|
-
1. 只读盘点并记录基线;不先移动文件。
|
|
29
|
-
2. 复制候选公共代码到 UPM,移除业务命名和硬编码配置。
|
|
30
|
-
3. 建 asmdef,限制 Runtime/Editor 引用方向。
|
|
31
|
-
4. 在独立 Sample 编译并运行最小场景。
|
|
32
|
-
5. 让旧项目通过 `Packages/manifest.json` 引用新 UPM。
|
|
33
|
-
6. 替换旧项目调用并执行 Editor、目标平台和 WebGL 回归。
|
|
34
|
-
7. 比较导出接口、序列化字段、Prefab GUID 和运行行为。
|
|
35
|
-
8. 只有用户明确要求且回归通过,才考虑删除旧副本;否则保留来源并标注镜像关系。
|
|
36
|
-
|
|
37
|
-
## 兼容性注意
|
|
38
|
-
|
|
39
|
-
- 移动脚本可能改变 `.meta` GUID,导致 Prefab/Scene 引用丢失;公共提取优先新 API + Adapter,不直接搬走序列化脚本。
|
|
40
|
-
- Editor-only 命名空间必须放 Editor asmdef 或 `#if UNITY_EDITOR`。
|
|
41
|
-
- WebGL 不支持所有线程、Socket、反射和文件系统用法;公共 API 要明确平台条件。
|
|
42
|
-
- Unity 内置 JSON 对字典、多态和顶层数组有限制,不能在提取时默默改变协议。
|
|
43
|
-
- 不把客户服务器地址、OsClient、Token、设备密钥或私有证书写入 Sample。
|
|
44
|
-
|
|
45
|
-
## 提取验收
|
|
46
|
-
|
|
47
|
-
- UPM `package.json` 可解析,Runtime/Editor asmdef 引用无环。
|
|
48
|
-
- Sample 编译与 Play 通过。
|
|
49
|
-
- 原项目改用 UPM 后功能等价。
|
|
50
|
-
- WebGL 插件实际链接,无 `EntryPointNotFound`。
|
|
51
|
-
- 公共包扫描不含客户品牌、秘密、本机路径与未授权二进制素材。
|
|
52
|
-
- README 说明支持版本、安装、最小示例、平台限制和升级策略。
|
|
53
|
-
|
|
54
|
-
## 当前官方包已提取能力
|
|
55
|
-
|
|
56
|
-
`Microi.Unity` 已从既有数字孪生项目重构以下公共能力:
|
|
57
|
-
|
|
58
|
-
- WebGL 宿主事件桥、V8/DiyToken 客户端和构建入口;
|
|
59
|
-
- 相机点按层级路径导入导出,导入支持 Undo;
|
|
60
|
-
- 选中根节点范围内的 Mesh 合并,使用精确 Renderer 引用恢复;
|
|
61
|
-
- 选中资源目录范围内的贴图优化,执行前保存完整 importer JSON;
|
|
62
|
-
- 场景结构统计、Camera 深度精度诊断和选中 Camera 的 Undo 调整;
|
|
63
|
-
- Balanced / High Definition WebGL 质量预设和 JSON 恢复;
|
|
64
|
-
- 选中层级内多余 `CameraPoint_` Camera 组件的安全清理。
|
|
65
|
-
|
|
66
|
-
旧项目的镜头路径、位置触发区、设备字段和业务 GameManager 仍属于项目 Adapter,不进入公共包。不要把这类保留项误报为“遗漏”;只有出现两个以上无业务字段的复用项目时,再抽取新的 Runtime 模块。
|
|
1
|
+
# 既有 Unity 工具箱提取
|
|
2
|
+
|
|
3
|
+
## 先建立清单
|
|
4
|
+
|
|
5
|
+
按目录和程序集记录:
|
|
6
|
+
|
|
7
|
+
- Runtime 通用脚本;
|
|
8
|
+
- Editor 菜单、导入器和构建工具;
|
|
9
|
+
- WebGL `.jslib`、模板和 JavaScript;
|
|
10
|
+
- 相机、路径、触发区、设备协议与客户业务脚本;
|
|
11
|
+
- Prefab、模型、动作、材质、贴图、字体、音频;
|
|
12
|
+
- 第三方 Package 与其许可证。
|
|
13
|
+
|
|
14
|
+
同时记录 Unity 版本、渲染管线、API Compatibility Level、Scripting Backend、目标平台和程序集依赖图。
|
|
15
|
+
|
|
16
|
+
## 分类规则
|
|
17
|
+
|
|
18
|
+
| 类型 | 去向 |
|
|
19
|
+
|---|---|
|
|
20
|
+
| 与业务无关的 API 客户端、宿主桥、构建基础能力 | `Microi.Unity/Runtime` 或 `Editor` |
|
|
21
|
+
| 可展示的最小使用方式 | `Microi.Unity/Samples~` |
|
|
22
|
+
| 场景、客户模型、设备字段、项目配置 | 原项目或独立业务项目 |
|
|
23
|
+
| 来源不明或限制再分发的素材 | 不进入公共包;替换或取得授权 |
|
|
24
|
+
| 只为旧项目兼容的适配代码 | 原项目 Adapter,不污染公共 API |
|
|
25
|
+
|
|
26
|
+
## 安全迁移顺序
|
|
27
|
+
|
|
28
|
+
1. 只读盘点并记录基线;不先移动文件。
|
|
29
|
+
2. 复制候选公共代码到 UPM,移除业务命名和硬编码配置。
|
|
30
|
+
3. 建 asmdef,限制 Runtime/Editor 引用方向。
|
|
31
|
+
4. 在独立 Sample 编译并运行最小场景。
|
|
32
|
+
5. 让旧项目通过 `Packages/manifest.json` 引用新 UPM。
|
|
33
|
+
6. 替换旧项目调用并执行 Editor、目标平台和 WebGL 回归。
|
|
34
|
+
7. 比较导出接口、序列化字段、Prefab GUID 和运行行为。
|
|
35
|
+
8. 只有用户明确要求且回归通过,才考虑删除旧副本;否则保留来源并标注镜像关系。
|
|
36
|
+
|
|
37
|
+
## 兼容性注意
|
|
38
|
+
|
|
39
|
+
- 移动脚本可能改变 `.meta` GUID,导致 Prefab/Scene 引用丢失;公共提取优先新 API + Adapter,不直接搬走序列化脚本。
|
|
40
|
+
- Editor-only 命名空间必须放 Editor asmdef 或 `#if UNITY_EDITOR`。
|
|
41
|
+
- WebGL 不支持所有线程、Socket、反射和文件系统用法;公共 API 要明确平台条件。
|
|
42
|
+
- Unity 内置 JSON 对字典、多态和顶层数组有限制,不能在提取时默默改变协议。
|
|
43
|
+
- 不把客户服务器地址、OsClient、Token、设备密钥或私有证书写入 Sample。
|
|
44
|
+
|
|
45
|
+
## 提取验收
|
|
46
|
+
|
|
47
|
+
- UPM `package.json` 可解析,Runtime/Editor asmdef 引用无环。
|
|
48
|
+
- Sample 编译与 Play 通过。
|
|
49
|
+
- 原项目改用 UPM 后功能等价。
|
|
50
|
+
- WebGL 插件实际链接,无 `EntryPointNotFound`。
|
|
51
|
+
- 公共包扫描不含客户品牌、秘密、本机路径与未授权二进制素材。
|
|
52
|
+
- README 说明支持版本、安装、最小示例、平台限制和升级策略。
|
|
53
|
+
|
|
54
|
+
## 当前官方包已提取能力
|
|
55
|
+
|
|
56
|
+
`Microi.Unity` 已从既有数字孪生项目重构以下公共能力:
|
|
57
|
+
|
|
58
|
+
- WebGL 宿主事件桥、V8/DiyToken 客户端和构建入口;
|
|
59
|
+
- 相机点按层级路径导入导出,导入支持 Undo;
|
|
60
|
+
- 选中根节点范围内的 Mesh 合并,使用精确 Renderer 引用恢复;
|
|
61
|
+
- 选中资源目录范围内的贴图优化,执行前保存完整 importer JSON;
|
|
62
|
+
- 场景结构统计、Camera 深度精度诊断和选中 Camera 的 Undo 调整;
|
|
63
|
+
- Balanced / High Definition WebGL 质量预设和 JSON 恢复;
|
|
64
|
+
- 选中层级内多余 `CameraPoint_` Camera 组件的安全清理。
|
|
65
|
+
|
|
66
|
+
旧项目的镜头路径、位置触发区、设备字段和业务 GameManager 仍属于项目 Adapter,不进入公共包。不要把这类保留项误报为“遗漏”;只有出现两个以上无业务字段的复用项目时,再抽取新的 Runtime 模块。
|
|
@@ -1,57 +1,57 @@
|
|
|
1
|
-
# WebGL 宿主、性能与部署
|
|
2
|
-
|
|
3
|
-
## Poster-first 生命周期
|
|
4
|
-
|
|
5
|
-
1. 首屏只加载 DOM、主视觉和轻量构建状态。
|
|
6
|
-
2. 用户点击“进入 3D”后才创建 iframe/Canvas 并下载 Loader、Data、WASM。
|
|
7
|
-
3. 加载中显示真实进度,不用无限假动画。
|
|
8
|
-
4. 页面不可见或离开视口时 `SendMessage(..., SetHostPaused, true)`。
|
|
9
|
-
5. 重回前台恢复;离开页面调用 `Quit()` 并移除全部监听与全局回调。
|
|
10
|
-
|
|
11
|
-
错误状态至少区分:构建缺失、Loader 下载失败、Unity 初始化失败、浏览器能力不足、网络/CORS 失败。错误页仍应保留重试、返回与文档入口。
|
|
12
|
-
|
|
13
|
-
## 上下文注入
|
|
14
|
-
|
|
15
|
-
宿主在 Unity ready 后调用:
|
|
16
|
-
|
|
17
|
-
```js
|
|
18
|
-
unityInstance.SendMessage('MicroiApiClient', 'ApplyMicroiHostContext', JSON.stringify({
|
|
19
|
-
ApiBaseUrl: runtime.apiBase,
|
|
20
|
-
OsClient: runtime.osClient,
|
|
21
|
-
Authorization: runtime.token,
|
|
22
|
-
Did: runtime.did
|
|
23
|
-
}))
|
|
24
|
-
```
|
|
25
|
-
|
|
26
|
-
- 不使用 `?token=`、`?osClient=` 或 `?apiBase=` 传会话。
|
|
27
|
-
- iframe 同源时可读取父窗口内存上下文;跨域时由父页面显式 SendMessage,不能放宽为 `postMessage('*')` 接收秘密。
|
|
28
|
-
- 若使用 `postMessage`,发送与接收双方都校验精确 Origin、消息类型和结构。
|
|
29
|
-
|
|
30
|
-
## Token 轮换
|
|
31
|
-
|
|
32
|
-
Unity 发送 `(newToken, requestToken)`。宿主只在当前 Token 仍等于 `requestToken`(或统一认证库明确允许)时覆盖,防止先发请求后到达的旧响应回滚新会话。
|
|
33
|
-
|
|
34
|
-
更新顺序:统一认证库 → 微应用宿主 → 当前内存上下文 → 再注入 Unity。任何日志和业务事件都不得携带 Token。
|
|
35
|
-
|
|
36
|
-
## 性能分档
|
|
37
|
-
|
|
38
|
-
- 桌面 DPR 上限通常不超过 2;移动实验档建议 1.0–1.25。
|
|
39
|
-
- 阴影距离、级联、粒子、后处理、LOD 与贴图分辨率按设备档位联动。
|
|
40
|
-
- 首次下载和解压峰值要纳入浏览器内存;不能只看压缩包大小。
|
|
41
|
-
- 大型孪生数据按区域/层级流式加载,避免把全部模型放入一个 Data 包。
|
|
42
|
-
- 尊重 `prefers-reduced-motion`;DOM 外壳禁用非必要动效,Unity 内按项目需求提供镜头/粒子降级。
|
|
43
|
-
|
|
44
|
-
## 静态服务器
|
|
45
|
-
|
|
46
|
-
常见文件类型:
|
|
47
|
-
|
|
48
|
-
| 文件 | MIME |
|
|
49
|
-
|---|---|
|
|
50
|
-
| `.wasm` | `application/wasm` |
|
|
51
|
-
| `.js` | `application/javascript` |
|
|
52
|
-
| `.data` | `application/octet-stream` |
|
|
53
|
-
| `.json` | `application/json` |
|
|
54
|
-
|
|
55
|
-
预压缩 `.gz/.br` 必须返回匹配的 `Content-Encoding`,不能只靠扩展名。若托管方不能配置响应头,构建时启用 Unity 解压回退,并实测性能。
|
|
56
|
-
|
|
57
|
-
正式验收使用 HTTP(S),检查状态码、MIME、Content-Encoding、CORS、缓存、Service Worker、控制台错误、全屏和退出后的内存/GPU 回落。
|
|
1
|
+
# WebGL 宿主、性能与部署
|
|
2
|
+
|
|
3
|
+
## Poster-first 生命周期
|
|
4
|
+
|
|
5
|
+
1. 首屏只加载 DOM、主视觉和轻量构建状态。
|
|
6
|
+
2. 用户点击“进入 3D”后才创建 iframe/Canvas 并下载 Loader、Data、WASM。
|
|
7
|
+
3. 加载中显示真实进度,不用无限假动画。
|
|
8
|
+
4. 页面不可见或离开视口时 `SendMessage(..., SetHostPaused, true)`。
|
|
9
|
+
5. 重回前台恢复;离开页面调用 `Quit()` 并移除全部监听与全局回调。
|
|
10
|
+
|
|
11
|
+
错误状态至少区分:构建缺失、Loader 下载失败、Unity 初始化失败、浏览器能力不足、网络/CORS 失败。错误页仍应保留重试、返回与文档入口。
|
|
12
|
+
|
|
13
|
+
## 上下文注入
|
|
14
|
+
|
|
15
|
+
宿主在 Unity ready 后调用:
|
|
16
|
+
|
|
17
|
+
```js
|
|
18
|
+
unityInstance.SendMessage('MicroiApiClient', 'ApplyMicroiHostContext', JSON.stringify({
|
|
19
|
+
ApiBaseUrl: runtime.apiBase,
|
|
20
|
+
OsClient: runtime.osClient,
|
|
21
|
+
Authorization: runtime.token,
|
|
22
|
+
Did: runtime.did
|
|
23
|
+
}))
|
|
24
|
+
```
|
|
25
|
+
|
|
26
|
+
- 不使用 `?token=`、`?osClient=` 或 `?apiBase=` 传会话。
|
|
27
|
+
- iframe 同源时可读取父窗口内存上下文;跨域时由父页面显式 SendMessage,不能放宽为 `postMessage('*')` 接收秘密。
|
|
28
|
+
- 若使用 `postMessage`,发送与接收双方都校验精确 Origin、消息类型和结构。
|
|
29
|
+
|
|
30
|
+
## Token 轮换
|
|
31
|
+
|
|
32
|
+
Unity 发送 `(newToken, requestToken)`。宿主只在当前 Token 仍等于 `requestToken`(或统一认证库明确允许)时覆盖,防止先发请求后到达的旧响应回滚新会话。
|
|
33
|
+
|
|
34
|
+
更新顺序:统一认证库 → 微应用宿主 → 当前内存上下文 → 再注入 Unity。任何日志和业务事件都不得携带 Token。
|
|
35
|
+
|
|
36
|
+
## 性能分档
|
|
37
|
+
|
|
38
|
+
- 桌面 DPR 上限通常不超过 2;移动实验档建议 1.0–1.25。
|
|
39
|
+
- 阴影距离、级联、粒子、后处理、LOD 与贴图分辨率按设备档位联动。
|
|
40
|
+
- 首次下载和解压峰值要纳入浏览器内存;不能只看压缩包大小。
|
|
41
|
+
- 大型孪生数据按区域/层级流式加载,避免把全部模型放入一个 Data 包。
|
|
42
|
+
- 尊重 `prefers-reduced-motion`;DOM 外壳禁用非必要动效,Unity 内按项目需求提供镜头/粒子降级。
|
|
43
|
+
|
|
44
|
+
## 静态服务器
|
|
45
|
+
|
|
46
|
+
常见文件类型:
|
|
47
|
+
|
|
48
|
+
| 文件 | MIME |
|
|
49
|
+
|---|---|
|
|
50
|
+
| `.wasm` | `application/wasm` |
|
|
51
|
+
| `.js` | `application/javascript` |
|
|
52
|
+
| `.data` | `application/octet-stream` |
|
|
53
|
+
| `.json` | `application/json` |
|
|
54
|
+
|
|
55
|
+
预压缩 `.gz/.br` 必须返回匹配的 `Content-Encoding`,不能只靠扩展名。若托管方不能配置响应头,构建时启用 Unity 解压回退,并实测性能。
|
|
56
|
+
|
|
57
|
+
正式验收使用 HTTP(S),检查状态码、MIME、Content-Encoding、CORS、缓存、Service Worker、控制台错误、全屏和退出后的内存/GPU 回落。
|
|
@@ -44,6 +44,9 @@ ApiRoutes: /api/SysMenu/GetSysMenuModel;/api/SysMenu/GetSysMenuStep
|
|
|
44
44
|
- 新客户端仍使用 `/apiengine/{ApiEngineKey}` 或主 `ApiAddress`。多路由用于 Controller 迁移、旧移动端和第三方已登记回调的兼容,不得拿它复制多份相同接口代码。
|
|
45
45
|
- MCP 创建接口时传 `apiRoutes: ['/api/Old/A', '/api/Old/B']`;更新时省略表示保留,传空字符串/空数组表示清空。官方应用包必须同时携带 `ApiRoutes`、醒目 Managed 提示与 `ResourcePolicies.ApiEngines`。
|
|
46
46
|
- 迁移旧 Controller 不能只迁方法名:同时核对历史 GET/POST、JSON/Form/Query、无需 `Action` 的调用和原始返回结构。按服务端 `_RequestPath` 精确识别兼容动作,历史只读地址不得被请求 `Action` 改为写操作;现代稳定 Key 的其它合法动作仍须可用。
|
|
47
|
+
- 同地址采用“当前租户接口引擎优先 → 确认缺失才回退 Controller → 两者均不存在才 404”。不可按 Controller 前缀跳过接口引擎;停用、StopHttp、鉴权拒绝、执行异常及权威查询失败都不等于缺失,不得降级执行旧逻辑。单请求复用已确认的缺失结果,不能用长效负缓存延迟在线新增接口生效。
|
|
48
|
+
- `/api/License/GetManagementState` 也遵循上述同址优先规则;现有 GET/POST Controller 读取授权管理页状态,要求平台管理员身份并按可信租户范围返回。若用接口引擎承接该地址,必须保留相同的身份与租户边界;路由存储故障返回 503,不能回退绕过。动态路由优先级由后端二进制交付,仅更新应用包不代表宿主已支持。
|
|
49
|
+
- 公开设置等启动接口的参数、读取顺序、错误分类和响应组装应留在可编辑 V8;宿主只保留秘密投影、公钥、可信身份、验签及受限存储原子。禁止新增一个返回完整业务响应的 C# 门面再以单行 V8 包装冒充迁移。必要启动包从官方拥有者包显式投影,不能借核心接口升级默认安装可选平台应用。
|
|
47
50
|
- 部门树旧地址 `/api/SysDept/GetSysDeptStep` 由 `platform-sys-dept` 的多路由交付,保留 DiyToken、组织范围及 `_Child`。缺引擎兜底仅登记该历史读地址,不能把整个现代引擎地址截获为只读分发器。验收需对比引擎存在、缺失再恢复的同一用户树结构,并验证匿名、伪造身份、停用/StopHttp 不绕过。
|
|
48
51
|
|
|
49
52
|
### 资源预算与嵌套调用(强制理解)
|