@microi.net/cli 5.8.7 → 5.8.8
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 +3 -3
- package/cordis.patch.yml +1 -1
- package/package.json +1 -1
- package/scripts/microi-skills.meta.json +197 -197
- package/skills/.microi-skills-version.json +2 -2
- package/skills/.progressive-disclosure-manifest.json +6 -6
- package/skills/microi-client-frontend/SKILL.md +3 -2
|
@@ -5,13 +5,13 @@
|
|
|
5
5
|
"url": "https://microi.net"
|
|
6
6
|
},
|
|
7
7
|
"description": "Microi吾码官方 AI 插件市场",
|
|
8
|
-
"version": "5.8.
|
|
8
|
+
"version": "5.8.8",
|
|
9
9
|
"plugins": [
|
|
10
10
|
{
|
|
11
11
|
"name": "microi",
|
|
12
12
|
"source": ".",
|
|
13
13
|
"description": "Microi吾码 AI 开发插件:服务器连接、Skills、MCP、V8 全量同步与低代码交付",
|
|
14
|
-
"version": "5.8.
|
|
14
|
+
"version": "5.8.8",
|
|
15
15
|
"strict": true
|
|
16
16
|
}
|
|
17
17
|
]
|
|
@@ -5,13 +5,13 @@
|
|
|
5
5
|
"url": "https://microi.net"
|
|
6
6
|
},
|
|
7
7
|
"description": "Microi吾码官方 AI 插件市场",
|
|
8
|
-
"version": "5.8.
|
|
8
|
+
"version": "5.8.8",
|
|
9
9
|
"plugins": [
|
|
10
10
|
{
|
|
11
11
|
"name": "microi",
|
|
12
12
|
"source": ".",
|
|
13
13
|
"description": "Microi吾码 AI 开发插件:服务器连接、Skills、MCP、V8 全量同步与低代码交付",
|
|
14
|
-
"version": "5.8.
|
|
14
|
+
"version": "5.8.8",
|
|
15
15
|
"strict": true
|
|
16
16
|
}
|
|
17
17
|
]
|
package/assets/build-meta.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
|
-
"builtAt": "2026-10-
|
|
3
|
-
"version": "5.8.
|
|
2
|
+
"builtAt": "2026-10-09T17:52:05.032Z",
|
|
3
|
+
"version": "5.8.8",
|
|
4
4
|
"sourceProducts": [
|
|
5
5
|
"vscode-extension",
|
|
6
6
|
"microi-cli",
|
|
@@ -14,6 +14,6 @@
|
|
|
14
14
|
"cli": "622493d51fe81db1aae5e823384c79b663b889b3dd7028f5753a43d3f02d68f1",
|
|
15
15
|
"router": "761b54007451348da5f6491245635c15c33663cae6c1811005839bc2312886e2",
|
|
16
16
|
"broker": "fffe3a7bbbc0c842d69c2eda09a0490ce0055a060f56d6a6d6230046e8952749",
|
|
17
|
-
"dshBundle": "
|
|
17
|
+
"dshBundle": "6dd03a134e1c1963629e4c157c46e00b6ce04e4bfaf8db295b3e8a8b7f37ef0e"
|
|
18
18
|
}
|
|
19
19
|
}
|
package/cordis.patch.yml
CHANGED
|
@@ -7,7 +7,7 @@
|
|
|
7
7
|
serverName: microi
|
|
8
8
|
transport: stdio
|
|
9
9
|
command: !!js process.execPath
|
|
10
|
-
args: ["-e","/*\n * DeepSeek Harness 通过 profile bundle 加载此 `node -e` 引导脚本。\n * DSH 不保证 MCP 子进程 cwd 位于 npm 包根,因此按 DSH_HOME/profile 定位\n * 当前版本的 @microi.net/cli,再复用 Codex 同源适配器与多连接路由器。\n */\nconst fs = require('node:fs');\nconst os = require('node:os');\nconst path = require('node:path');\nconst packageName = '@microi.net/cli';\nconst expectedVersion = '5.8.
|
|
10
|
+
args: ["-e","/*\n * DeepSeek Harness 通过 profile bundle 加载此 `node -e` 引导脚本。\n * DSH 不保证 MCP 子进程 cwd 位于 npm 包根,因此按 DSH_HOME/profile 定位\n * 当前版本的 @microi.net/cli,再复用 Codex 同源适配器与多连接路由器。\n */\nconst fs = require('node:fs');\nconst os = require('node:os');\nconst path = require('node:path');\nconst packageName = '@microi.net/cli';\nconst expectedVersion = '5.8.8';\n\nfunction readJson(filePath) {\n try { return JSON.parse(fs.readFileSync(filePath, 'utf8')); }\n catch { return undefined; }\n}\n\nfunction expandHome(value) {\n if (value === '~') return os.homedir();\n if (value.startsWith('~/') || value.startsWith('~\\\\')) return path.join(os.homedir(), value.slice(2));\n return value;\n}\n\nfunction validRoot(value) {\n const root = path.resolve(value);\n const pkg = readJson(path.join(root, 'package.json'));\n const patch = path.join(root, 'cordis.patch.yml');\n const adapter = path.join(root, 'scripts', 'mcp-codex-stdio-adapter.js');\n const router = path.join(root, 'scripts', 'microi-codex-router.js');\n if (pkg?.name !== packageName || pkg?.version !== expectedVersion) return undefined;\n if (pkg?.dsh?.bundle?.patch !== './cordis.patch.yml') return undefined;\n if (![patch, adapter, router].every(filePath => fs.existsSync(filePath))) return undefined;\n return { root: fs.realpathSync(root), adapter, router, modifiedAt: fs.statSync(router).mtimeMs };\n}\n\nfunction findPlugin() {\n const explicit = String(process.env.MICROI_DSH_PLUGIN_ROOT || '').trim();\n if (explicit) {\n const plugin = validRoot(explicit);\n if (!plugin) throw new Error(`MICROI_DSH_PLUGIN_ROOT 不是版本 ${expectedVersion} 的有效 Microi DSH bundle:${explicit}`);\n return plugin;\n }\n const configuredHome = String(process.env.DSH_HOME || '').trim();\n const dshHome = path.resolve(expandHome(configuredHome || path.join(os.homedir(), '.dsh')));\n const profilesRoot = path.join(dshHome, 'profiles');\n const candidates = [];\n if (fs.existsSync(profilesRoot)) {\n for (const entry of fs.readdirSync(profilesRoot, { withFileTypes: true })) {\n if (!entry.isDirectory() || entry.name === 'node_modules') continue;\n const root = path.join(profilesRoot, entry.name, 'node_modules', '@microi.net', 'cli');\n const plugin = validRoot(root);\n if (plugin) candidates.push(plugin);\n }\n }\n candidates.sort((left, right) => right.modifiedAt - left.modifiedAt);\n if (!candidates[0]) throw new Error(`未在 ${profilesRoot} 找到版本 ${expectedVersion} 的 ${packageName}`);\n return candidates[0];\n}\n\ntry {\n const plugin = findPlugin();\n process.env.MICROI_DSH_PLUGIN_ROOT = plugin.root;\n process.env.MICROI_CODEX_PLUGIN_ROOT = plugin.root;\n process.env.MICROI_TOOL_SOURCE = 'dsh';\n process.env.MICROI_TOOL_VERSION = expectedVersion;\n process.env.MICROI_WORKSPACE_ROOT = process.env.MICROI_WORKSPACE_ROOT || process.cwd();\n process.argv[2] = plugin.router;\n require(plugin.adapter);\n} catch (error) {\n console.error(`[microi-dsh-bootstrap] ${error instanceof Error ? error.message : String(error)}`);\n process.exit(1);\n}\n"]
|
|
11
11
|
env:
|
|
12
12
|
MICROI_TOOL_SOURCE: dsh
|
|
13
13
|
cwd: !!js process.cwd()
|
package/package.json
CHANGED
|
@@ -1,13 +1,13 @@
|
|
|
1
1
|
{
|
|
2
|
-
"builtAt": "2026-10-
|
|
2
|
+
"builtAt": "2026-10-09T17:52:04.328Z",
|
|
3
3
|
"source": "../microi.skills",
|
|
4
4
|
"extension": {
|
|
5
5
|
"name": "v8-engine",
|
|
6
|
-
"version": "5.8.
|
|
6
|
+
"version": "5.8.8",
|
|
7
7
|
"publisher": "Microi"
|
|
8
8
|
},
|
|
9
9
|
"skills": {
|
|
10
|
-
"version": "5.8.
|
|
10
|
+
"version": "5.8.8",
|
|
11
11
|
"versionRule": "Microi version uses three numeric parts. Each publish increments the last part; when a part exceeds 9 it carries to the previous part: 1.0.9 -> 1.1.0, 1.9.9 -> 2.0.0.",
|
|
12
12
|
"managedBy": "Microi.Agent/bump-version.js"
|
|
13
13
|
},
|
|
@@ -15,11 +15,11 @@
|
|
|
15
15
|
"dir": "dist/microi.skills",
|
|
16
16
|
"files": 190,
|
|
17
17
|
"skills": 68,
|
|
18
|
-
"bytes":
|
|
18
|
+
"bytes": 2732150
|
|
19
19
|
},
|
|
20
20
|
"fileHashes": {
|
|
21
|
-
".microi-skills-version.json": "
|
|
22
|
-
".progressive-disclosure-manifest.json": "
|
|
21
|
+
".microi-skills-version.json": "5923d3025e3f78c03a7bd1d96833fd2654fc419fec389fb31778003bba992019",
|
|
22
|
+
".progressive-disclosure-manifest.json": "e6d5f93c46d7164705c270867bddb2bb792eb7c9fa608ab4f555ed49c14e0de3",
|
|
23
23
|
"README.md": "6ce107cd7d640b485df2ac4c0dd64b8f3280138ec25091a68d2524f4de07a6dc",
|
|
24
24
|
"ai-engine/SKILL.md": "b09ccf9e1dc08d2ca3cbf9e7d091d07bc4794b8d60ebfe959ba61aaefdc8d34b",
|
|
25
25
|
"ai-engine/agents/openai.yaml": "40deb07801006a46b9a7f0020d13251955eeadd04c8e591160210479936f8b5b",
|
|
@@ -45,7 +45,7 @@
|
|
|
45
45
|
"microi-ai-application/SKILL.md": "90f722c0133f1cb85172c670a01d9268c85c129cfe7231d26d306d63b5b5b075",
|
|
46
46
|
"microi-ai-application/agents/openai.yaml": "8cfacaa0f628d645d3c66166cdd8a3028451d2bc638d3fddf3578df07cfaa9ed",
|
|
47
47
|
"microi-ai-application/references/frontend-baseline.md": "7b376f95167325cda0d865f72e9a5c8184a916bb020bc5eea307a21289ee9609",
|
|
48
|
-
"microi-client-frontend/SKILL.md": "
|
|
48
|
+
"microi-client-frontend/SKILL.md": "6a3567a02a1c4394b5d5328dc7d691757a241f5662e662cfc148f41ab282d92b",
|
|
49
49
|
"microi-client-frontend/references/progressive-01-3-动态按钮系统.md": "0178136c6675568a7423cd4eb936975a8a917a0d9faddbdcfede1611d61d3805",
|
|
50
50
|
"microi-client-frontend/references/progressive-02-8-运行时高频坑复盘.md": "34146739fc4b58ad9b9015ed84fd7fb2a56f2fb8206c912ab69e17b894a2db70",
|
|
51
51
|
"microi-client-frontend/references/progressive-03-vue3-前端微服务宿主规则.md": "06671fa6c8b1b1b488031fc0b3eea13895e87ff6b5137538f850ee9b676c9d83",
|
|
@@ -210,196 +210,196 @@
|
|
|
210
210
|
"workspace-conventions/references/progressive-03-cli-与-ide-插件错版共存约定.md": "0198aa10b45031b8b5092f2602cb4802f89919c81f16756a05e4a3ccad3d3d30"
|
|
211
211
|
},
|
|
212
212
|
"fileVersions": {
|
|
213
|
-
".microi-skills-version.json": "5.8.
|
|
214
|
-
".progressive-disclosure-manifest.json": "5.8.
|
|
215
|
-
"README.md": "5.8.
|
|
216
|
-
"ai-engine/SKILL.md": "5.8.
|
|
217
|
-
"ai-engine/agents/openai.yaml": "5.8.
|
|
218
|
-
"ai-engine/references/ai-employees.md": "5.8.
|
|
219
|
-
"ai-engine/references/self-hosted-digital-human.md": "5.8.
|
|
220
|
-
"ai-platform-governance/SKILL.md": "5.8.
|
|
221
|
-
"ai-platform-governance/references/progressive-01-功能开关.md": "5.8.
|
|
222
|
-
"app-store/SKILL.md": "5.8.
|
|
223
|
-
"app-store/agents/openai.yaml": "5.8.
|
|
224
|
-
"business-blueprint/SKILL.md": "5.8.
|
|
225
|
-
"datasource-engine/SKILL.md": "5.8.
|
|
226
|
-
"datasource-engine/agents/openai.yaml": "5.8.
|
|
227
|
-
"dos-orm/SKILL.md": "5.8.
|
|
228
|
-
"dos-orm/references/api-reference.md": "5.8.
|
|
229
|
-
"email-engine/SKILL.md": "5.8.
|
|
230
|
-
"email-engine/references/v8-email.md": "5.8.
|
|
231
|
-
"job-engine/SKILL.md": "5.8.
|
|
232
|
-
"job-engine/agents/openai.yaml": "5.8.
|
|
233
|
-
"message-notification/SKILL.md": "5.8.
|
|
234
|
-
"message-notification/agents/openai.yaml": "5.8.
|
|
235
|
-
"message-notification/references/contracts.md": "5.8.
|
|
236
|
-
"microi-ai-app-auth.js": "5.8.
|
|
237
|
-
"microi-ai-application/SKILL.md": "5.8.
|
|
238
|
-
"microi-ai-application/agents/openai.yaml": "5.8.
|
|
239
|
-
"microi-ai-application/references/frontend-baseline.md": "5.8.
|
|
240
|
-
"microi-client-frontend/SKILL.md": "5.8.
|
|
241
|
-
"microi-client-frontend/references/progressive-01-3-动态按钮系统.md": "5.8.
|
|
242
|
-
"microi-client-frontend/references/progressive-02-8-运行时高频坑复盘.md": "5.8.
|
|
243
|
-
"microi-client-frontend/references/progressive-03-vue3-前端微服务宿主规则.md": "5.8.
|
|
244
|
-
"microi-codex-installer/SKILL.md": "5.8.
|
|
245
|
-
"microi-codex-installer/agents/openai.yaml": "5.8.
|
|
246
|
-
"microi-codex/SKILL.md": "5.8.
|
|
247
|
-
"microi-datasource-mapping/SKILL.md": "5.8.
|
|
248
|
-
"microi-db-schema/SKILL.md": "5.8.
|
|
249
|
-
"microi-db-schema/agents/openai.yaml": "5.8.
|
|
250
|
-
"microi-db-schema/references/core-tables.md": "5.8.
|
|
251
|
-
"microi-db-schema/references/form-component-options.md": "5.8.
|
|
252
|
-
"microi-db-schema/references/schema-overview.md": "5.8.
|
|
253
|
-
"microi-db-schema/references/schema.md": "5.8.
|
|
254
|
-
"microi-db-schema/references/table-catalog.md": "5.8.
|
|
255
|
-
"microi-deployment/SKILL.md": "5.8.
|
|
256
|
-
"microi-deployment/references/deployment-matrix.md": "5.8.
|
|
257
|
-
"microi-docs-coverage/SKILL.md": "5.8.
|
|
258
|
-
"microi-docs-coverage/references/capability-map.md": "5.8.
|
|
259
|
-
"microi-docs-coverage/scripts/audit-doc-skill-coverage.mjs": "5.8.
|
|
260
|
-
"microi-form-engine/SKILL.md": "5.8.
|
|
261
|
-
"microi-form-engine/references/component-catalog.md": "5.8.
|
|
262
|
-
"microi-form-engine/references/data-source-events.md": "5.8.
|
|
263
|
-
"microi-form-layout/SKILL.md": "5.8.
|
|
264
|
-
"microi-form-layout/references/progressive-01-3-三种分组的存储与配置.md": "5.8.
|
|
265
|
-
"microi-frontend-sdk/SKILL.md": "5.8.
|
|
266
|
-
"microi-frontend-sdk/references/progressive-01-token-当前登录用户与当前终端登录协议.md": "5.8.
|
|
267
|
-
"microi-left-right-layout/SKILL.md": "5.8.
|
|
268
|
-
"microi-microservice/SKILL.md": "5.8.
|
|
269
|
-
"microi-microservice/references/runtime-delivery.md": "5.8.
|
|
270
|
-
"microi-mobile-app-quality/SKILL.md": "5.8.
|
|
271
|
-
"microi-mobile-app-quality/references/progressive-01-4-重要按钮必须带图标.md": "5.8.
|
|
272
|
-
"microi-mobile-app-quality/references/progressive-02-9-主题切换必须真实且全局生效.md": "5.8.
|
|
273
|
-
"microi-solution-quotation/SKILL.md": "5.8.
|
|
274
|
-
"microi-solution-quotation/agents/openai.yaml": "5.8.
|
|
275
|
-
"microi-solution-quotation/scripts/build_solution_quote.py": "5.8.
|
|
276
|
-
"microi-sso/SKILL.md": "5.8.
|
|
277
|
-
"microi-sso/references/acceptance.md": "5.8.
|
|
278
|
-
"microi-sso/references/configuration-and-security.md": "5.8.
|
|
279
|
-
"microi-sso/references/inbound.md": "5.8.
|
|
280
|
-
"microi-sso/references/outbound.md": "5.8.
|
|
281
|
-
"microi-system-delivery/SKILL.md": "5.8.
|
|
282
|
-
"microi-system-delivery/references/progressive-01-标准工作流.md": "5.8.
|
|
283
|
-
"microi-system-delivery/references/progressive-02-自动化测试必须覆盖的坑.md": "5.8.
|
|
284
|
-
"microi-ui/SKILL.md": "5.8.
|
|
285
|
-
"microi-ui/references/progressive-01-移动端场景蓝图.md": "5.8.
|
|
286
|
-
"microi-uniapp-frontend/SKILL.md": "5.8.
|
|
287
|
-
"microi-uniapp-frontend/references/progressive-01-移动端分类-双栏列表独立滚动.md": "5.8.
|
|
288
|
-
"microi-uniapp-frontend/references/progressive-02-关键业务资产不得默认选中.md": "5.8.
|
|
289
|
-
"microi.v8.js": "5.8.
|
|
290
|
-
"microi/SKILL.md": "5.8.
|
|
291
|
-
"module-engine/SKILL.md": "5.8.
|
|
292
|
-
"module-engine/references/module-config.md": "5.8.
|
|
293
|
-
"ocr-engine/SKILL.md": "5.8.
|
|
294
|
-
"ocr-engine/agents/openai.yaml": "5.8.
|
|
295
|
-
"page-engine/SKILL.md": "5.8.
|
|
296
|
-
"page-engine/examples/compact-dashboard.json": "5.8.
|
|
297
|
-
"page-engine/references/progressive-01-所有组件类型.md": "5.8.
|
|
298
|
-
"page-engine/references/progressive-02-版本历史-并发保存与回滚.md": "5.8.
|
|
299
|
-
"performance-testing/SKILL.md": "5.8.
|
|
300
|
-
"playwright-e2e/SKILL.md": "5.8.
|
|
301
|
-
"playwright-e2e/references/progressive-01-全自动登录-免验证码-但不免密码-必读.md": "5.8.
|
|
302
|
-
"playwright-e2e/references/progressive-02-文字对比度与可读性自动化检查-必做.md": "5.8.
|
|
303
|
-
"playwright-e2e/references/progressive-03-microi-helper-模板.md": "5.8.
|
|
304
|
-
"playwright-e2e/references/progressive-04-ci-建议.md": "5.8.
|
|
305
|
-
"print-engine/SKILL.md": "5.8.
|
|
306
|
-
"production-readonly-audit/SKILL.md": "5.8.
|
|
307
|
-
"report-engine/SKILL.md": "5.8.
|
|
308
|
-
"report-engine/agents/openai.yaml": "5.8.
|
|
309
|
-
"scripts/optimize-progressive-disclosure.mjs": "5.8.
|
|
310
|
-
"scripts/refresh-progressive-disclosure.mjs": "5.8.
|
|
311
|
-
"scripts/sync-embedded-skills.mjs": "5.8.
|
|
312
|
-
"scripts/validate-progressive-disclosure.mjs": "5.8.
|
|
313
|
-
"search-engine/SKILL.md": "5.8.
|
|
314
|
-
"search-engine/agents/openai.yaml": "5.8.
|
|
315
|
-
"spider-engine/SKILL.md": "5.8.
|
|
316
|
-
"system-observability/SKILL.md": "5.8.
|
|
317
|
-
"system-observability/references/memory-incident-triage.md": "5.8.
|
|
318
|
-
"translate-engine/SKILL.md": "5.8.
|
|
319
|
-
"translate-engine/agents/openai.yaml": "5.8.
|
|
320
|
-
"ui-design/SKILL.md": "5.8.
|
|
321
|
-
"ui-design/assets/pattern-showcase/app.js": "5.8.
|
|
322
|
-
"ui-design/assets/pattern-showcase/index.html": "5.8.
|
|
323
|
-
"ui-design/assets/pattern-showcase/styles.css": "5.8.
|
|
324
|
-
"ui-design/assets/templates/MCI-DESIGN.md": "5.8.
|
|
325
|
-
"ui-design/references/design-pattern-library.md": "5.8.
|
|
326
|
-
"ui-design/references/mci-design-contract.md": "5.8.
|
|
327
|
-
"ui-design/references/motion-and-media.md": "5.8.
|
|
328
|
-
"ui-design/references/product-flow-recipes.md": "5.8.
|
|
329
|
-
"ui-design/references/progressive-01-颜色体系-css-variables-支持主题切换.md": "5.8.
|
|
330
|
-
"ui-design/references/progressive-02-字体.md": "5.8.
|
|
331
|
-
"ui-design/references/progressive-03-动效规范-丰富但不卡.md": "5.8.
|
|
332
|
-
"ui-design/references/progressive-04-组件风格速查.md": "5.8.
|
|
333
|
-
"ui-design/references/progressive-05-移动端专用规范.md": "5.8.
|
|
334
|
-
"ui-design/references/progressive-06-主题切换实现.md": "5.8.
|
|
335
|
-
"ui-design/references/progressive-07-速查-从头搭建一个移动端页面.md": "5.8.
|
|
336
|
-
"ui-design/references/progressive-08-表单分组规范-tabs-vs-collapsegroup-强制.md": "5.8.
|
|
337
|
-
"uniapp-mall-assets/SKILL.md": "5.8.
|
|
338
|
-
"unity-integration/SKILL.md": "5.8.
|
|
339
|
-
"unity-integration/agents/openai.yaml": "5.8.
|
|
340
|
-
"unity-integration/references/ai-app-delivery.md": "5.8.
|
|
341
|
-
"unity-integration/references/sdk-api.md": "5.8.
|
|
342
|
-
"unity-integration/references/toolbox-migration.md": "5.8.
|
|
343
|
-
"unity-integration/references/webgl-hosting.md": "5.8.
|
|
344
|
-
"v8-api-config/SKILL.md": "5.8.
|
|
345
|
-
"v8-cache-pattern/SKILL.md": "5.8.
|
|
346
|
-
"v8-crud-api/SKILL.md": "5.8.
|
|
347
|
-
"v8-crud-api/references/progressive-01-查询列表-分页.md": "5.8.
|
|
348
|
-
"v8-crud-api/references/progressive-02-where-条件语法速查.md": "5.8.
|
|
349
|
-
"v8-debugging/SKILL.md": "5.8.
|
|
350
|
-
"v8-explorer-tree/SKILL.md": "5.8.
|
|
351
|
-
"v8-export-import/SKILL.md": "5.8.
|
|
352
|
-
"v8-export-import/references/progressive-01-excellayout-高级自由布局.md": "5.8.
|
|
353
|
-
"v8-export-import/references/progressive-02-powerpoint-导出.md": "5.8.
|
|
354
|
-
"v8-export-import/references/progressive-03-安全-性能注意.md": "5.8.
|
|
355
|
-
"v8-file-upload/SKILL.md": "5.8.
|
|
356
|
-
"v8-file-upload/references/progressive-01-公有桶-vs-私有桶.md": "5.8.
|
|
357
|
-
"v8-file-upload/references/progressive-02-office-文件在线编辑版本号规则.md": "5.8.
|
|
358
|
-
"v8-formengine-http/SKILL.md": "5.8.
|
|
359
|
-
"v8-frontend-events/SKILL.md": "5.8.
|
|
360
|
-
"v8-frontend-events/references/bluetooth-print-api.md": "5.8.
|
|
361
|
-
"v8-frontend-events/references/bluetooth-print.md": "5.8.
|
|
362
|
-
"v8-frontend-events/references/progressive-01-列表事件.md": "5.8.
|
|
363
|
-
"v8-http-integration/SKILL.md": "5.8.
|
|
364
|
-
"v8-http-integration/references/progressive-01-get-请求.md": "5.8.
|
|
365
|
-
"v8-http-integration/references/progressive-02-错误处理模式.md": "5.8.
|
|
366
|
-
"v8-image-processing/SKILL.md": "5.8.
|
|
367
|
-
"v8-image-processing/agents/openai.yaml": "5.8.
|
|
368
|
-
"v8-image-processing/references/api-reference.md": "5.8.
|
|
369
|
-
"v8-menu-buttons/SKILL.md": "5.8.
|
|
370
|
-
"v8-menu-buttons/references/progressive-01-2-按钮对象-schema.md": "5.8.
|
|
371
|
-
"v8-menu-buttons/references/progressive-02-8-模式-f-后台任务按钮-长任务.md": "5.8.
|
|
372
|
-
"v8-menu-buttons/references/progressive-03-10-反模式-避免.md": "5.8.
|
|
373
|
-
"v8-mongodb/SKILL.md": "5.8.
|
|
374
|
-
"v8-mq-mqtt/SKILL.md": "5.8.
|
|
375
|
-
"v8-mq-mqtt/references/mqtt-production.md": "5.8.
|
|
376
|
-
"v8-mq-mqtt/references/progressive-01-v8-mqtt-iot-物联网.md": "5.8.
|
|
377
|
-
"v8-mq-mqtt/scripts/check-mqtt-skill-coverage.mjs": "5.8.
|
|
378
|
-
"v8-saas-multi-tenant/SKILL.md": "5.8.
|
|
379
|
-
"v8-security/SKILL.md": "5.8.
|
|
380
|
-
"v8-security/references/progressive-01-2-权限校验.md": "5.8.
|
|
381
|
-
"v8-security/references/progressive-02-7-日志记录.md": "5.8.
|
|
382
|
-
"v8-sql-query/SKILL.md": "5.8.
|
|
383
|
-
"v8-table-event/SKILL.md": "5.8.
|
|
384
|
-
"v8-table-event/references/progressive-01-informv8-js-表单打开事件.md": "5.8.
|
|
385
|
-
"v8-table-event/references/progressive-02-前端事件名-v8-eventname-可能的值.md": "5.8.
|
|
386
|
-
"v8-tcp-integration/SKILL.md": "5.8.
|
|
387
|
-
"v8-tcp-integration/agents/openai.yaml": "5.8.
|
|
388
|
-
"v8-template-engine/SKILL.md": "5.8.
|
|
389
|
-
"v8-utilities/SKILL.md": "5.8.
|
|
390
|
-
"v8-utilities/references/client-api-index.md": "5.8.
|
|
391
|
-
"v8-utilities/references/platform-http-routes.md": "5.8.
|
|
392
|
-
"v8-utilities/references/server-api-index.md": "5.8.
|
|
393
|
-
"v8-workflow/SKILL.md": "5.8.
|
|
394
|
-
"v8-workflow/references/progressive-01-节点开始-v8-事件.md": "5.8.
|
|
395
|
-
"v8-workflow/references/workflow-configuration.md": "5.8.
|
|
396
|
-
"vision-engine/SKILL.md": "5.8.
|
|
397
|
-
"vision-engine/agents/openai.yaml": "5.8.
|
|
398
|
-
"vision-engine/references/architecture-and-acceptance.md": "5.8.
|
|
399
|
-
"workspace-conventions/SKILL.md": "5.8.
|
|
400
|
-
"workspace-conventions/references/progressive-01-版本更新日志保护规则-强制.md": "5.8.
|
|
401
|
-
"workspace-conventions/references/progressive-02-microi-net-api-本地启动约定.md": "5.8.
|
|
402
|
-
"workspace-conventions/references/progressive-03-cli-与-ide-插件错版共存约定.md": "5.8.
|
|
213
|
+
".microi-skills-version.json": "5.8.8",
|
|
214
|
+
".progressive-disclosure-manifest.json": "5.8.8",
|
|
215
|
+
"README.md": "5.8.8",
|
|
216
|
+
"ai-engine/SKILL.md": "5.8.8",
|
|
217
|
+
"ai-engine/agents/openai.yaml": "5.8.8",
|
|
218
|
+
"ai-engine/references/ai-employees.md": "5.8.8",
|
|
219
|
+
"ai-engine/references/self-hosted-digital-human.md": "5.8.8",
|
|
220
|
+
"ai-platform-governance/SKILL.md": "5.8.8",
|
|
221
|
+
"ai-platform-governance/references/progressive-01-功能开关.md": "5.8.8",
|
|
222
|
+
"app-store/SKILL.md": "5.8.8",
|
|
223
|
+
"app-store/agents/openai.yaml": "5.8.8",
|
|
224
|
+
"business-blueprint/SKILL.md": "5.8.8",
|
|
225
|
+
"datasource-engine/SKILL.md": "5.8.8",
|
|
226
|
+
"datasource-engine/agents/openai.yaml": "5.8.8",
|
|
227
|
+
"dos-orm/SKILL.md": "5.8.8",
|
|
228
|
+
"dos-orm/references/api-reference.md": "5.8.8",
|
|
229
|
+
"email-engine/SKILL.md": "5.8.8",
|
|
230
|
+
"email-engine/references/v8-email.md": "5.8.8",
|
|
231
|
+
"job-engine/SKILL.md": "5.8.8",
|
|
232
|
+
"job-engine/agents/openai.yaml": "5.8.8",
|
|
233
|
+
"message-notification/SKILL.md": "5.8.8",
|
|
234
|
+
"message-notification/agents/openai.yaml": "5.8.8",
|
|
235
|
+
"message-notification/references/contracts.md": "5.8.8",
|
|
236
|
+
"microi-ai-app-auth.js": "5.8.8",
|
|
237
|
+
"microi-ai-application/SKILL.md": "5.8.8",
|
|
238
|
+
"microi-ai-application/agents/openai.yaml": "5.8.8",
|
|
239
|
+
"microi-ai-application/references/frontend-baseline.md": "5.8.8",
|
|
240
|
+
"microi-client-frontend/SKILL.md": "5.8.8",
|
|
241
|
+
"microi-client-frontend/references/progressive-01-3-动态按钮系统.md": "5.8.8",
|
|
242
|
+
"microi-client-frontend/references/progressive-02-8-运行时高频坑复盘.md": "5.8.8",
|
|
243
|
+
"microi-client-frontend/references/progressive-03-vue3-前端微服务宿主规则.md": "5.8.8",
|
|
244
|
+
"microi-codex-installer/SKILL.md": "5.8.8",
|
|
245
|
+
"microi-codex-installer/agents/openai.yaml": "5.8.8",
|
|
246
|
+
"microi-codex/SKILL.md": "5.8.8",
|
|
247
|
+
"microi-datasource-mapping/SKILL.md": "5.8.8",
|
|
248
|
+
"microi-db-schema/SKILL.md": "5.8.8",
|
|
249
|
+
"microi-db-schema/agents/openai.yaml": "5.8.8",
|
|
250
|
+
"microi-db-schema/references/core-tables.md": "5.8.8",
|
|
251
|
+
"microi-db-schema/references/form-component-options.md": "5.8.8",
|
|
252
|
+
"microi-db-schema/references/schema-overview.md": "5.8.8",
|
|
253
|
+
"microi-db-schema/references/schema.md": "5.8.8",
|
|
254
|
+
"microi-db-schema/references/table-catalog.md": "5.8.8",
|
|
255
|
+
"microi-deployment/SKILL.md": "5.8.8",
|
|
256
|
+
"microi-deployment/references/deployment-matrix.md": "5.8.8",
|
|
257
|
+
"microi-docs-coverage/SKILL.md": "5.8.8",
|
|
258
|
+
"microi-docs-coverage/references/capability-map.md": "5.8.8",
|
|
259
|
+
"microi-docs-coverage/scripts/audit-doc-skill-coverage.mjs": "5.8.8",
|
|
260
|
+
"microi-form-engine/SKILL.md": "5.8.8",
|
|
261
|
+
"microi-form-engine/references/component-catalog.md": "5.8.8",
|
|
262
|
+
"microi-form-engine/references/data-source-events.md": "5.8.8",
|
|
263
|
+
"microi-form-layout/SKILL.md": "5.8.8",
|
|
264
|
+
"microi-form-layout/references/progressive-01-3-三种分组的存储与配置.md": "5.8.8",
|
|
265
|
+
"microi-frontend-sdk/SKILL.md": "5.8.8",
|
|
266
|
+
"microi-frontend-sdk/references/progressive-01-token-当前登录用户与当前终端登录协议.md": "5.8.8",
|
|
267
|
+
"microi-left-right-layout/SKILL.md": "5.8.8",
|
|
268
|
+
"microi-microservice/SKILL.md": "5.8.8",
|
|
269
|
+
"microi-microservice/references/runtime-delivery.md": "5.8.8",
|
|
270
|
+
"microi-mobile-app-quality/SKILL.md": "5.8.8",
|
|
271
|
+
"microi-mobile-app-quality/references/progressive-01-4-重要按钮必须带图标.md": "5.8.8",
|
|
272
|
+
"microi-mobile-app-quality/references/progressive-02-9-主题切换必须真实且全局生效.md": "5.8.8",
|
|
273
|
+
"microi-solution-quotation/SKILL.md": "5.8.8",
|
|
274
|
+
"microi-solution-quotation/agents/openai.yaml": "5.8.8",
|
|
275
|
+
"microi-solution-quotation/scripts/build_solution_quote.py": "5.8.8",
|
|
276
|
+
"microi-sso/SKILL.md": "5.8.8",
|
|
277
|
+
"microi-sso/references/acceptance.md": "5.8.8",
|
|
278
|
+
"microi-sso/references/configuration-and-security.md": "5.8.8",
|
|
279
|
+
"microi-sso/references/inbound.md": "5.8.8",
|
|
280
|
+
"microi-sso/references/outbound.md": "5.8.8",
|
|
281
|
+
"microi-system-delivery/SKILL.md": "5.8.8",
|
|
282
|
+
"microi-system-delivery/references/progressive-01-标准工作流.md": "5.8.8",
|
|
283
|
+
"microi-system-delivery/references/progressive-02-自动化测试必须覆盖的坑.md": "5.8.8",
|
|
284
|
+
"microi-ui/SKILL.md": "5.8.8",
|
|
285
|
+
"microi-ui/references/progressive-01-移动端场景蓝图.md": "5.8.8",
|
|
286
|
+
"microi-uniapp-frontend/SKILL.md": "5.8.8",
|
|
287
|
+
"microi-uniapp-frontend/references/progressive-01-移动端分类-双栏列表独立滚动.md": "5.8.8",
|
|
288
|
+
"microi-uniapp-frontend/references/progressive-02-关键业务资产不得默认选中.md": "5.8.8",
|
|
289
|
+
"microi.v8.js": "5.8.8",
|
|
290
|
+
"microi/SKILL.md": "5.8.8",
|
|
291
|
+
"module-engine/SKILL.md": "5.8.8",
|
|
292
|
+
"module-engine/references/module-config.md": "5.8.8",
|
|
293
|
+
"ocr-engine/SKILL.md": "5.8.8",
|
|
294
|
+
"ocr-engine/agents/openai.yaml": "5.8.8",
|
|
295
|
+
"page-engine/SKILL.md": "5.8.8",
|
|
296
|
+
"page-engine/examples/compact-dashboard.json": "5.8.8",
|
|
297
|
+
"page-engine/references/progressive-01-所有组件类型.md": "5.8.8",
|
|
298
|
+
"page-engine/references/progressive-02-版本历史-并发保存与回滚.md": "5.8.8",
|
|
299
|
+
"performance-testing/SKILL.md": "5.8.8",
|
|
300
|
+
"playwright-e2e/SKILL.md": "5.8.8",
|
|
301
|
+
"playwright-e2e/references/progressive-01-全自动登录-免验证码-但不免密码-必读.md": "5.8.8",
|
|
302
|
+
"playwright-e2e/references/progressive-02-文字对比度与可读性自动化检查-必做.md": "5.8.8",
|
|
303
|
+
"playwright-e2e/references/progressive-03-microi-helper-模板.md": "5.8.8",
|
|
304
|
+
"playwright-e2e/references/progressive-04-ci-建议.md": "5.8.8",
|
|
305
|
+
"print-engine/SKILL.md": "5.8.8",
|
|
306
|
+
"production-readonly-audit/SKILL.md": "5.8.8",
|
|
307
|
+
"report-engine/SKILL.md": "5.8.8",
|
|
308
|
+
"report-engine/agents/openai.yaml": "5.8.8",
|
|
309
|
+
"scripts/optimize-progressive-disclosure.mjs": "5.8.8",
|
|
310
|
+
"scripts/refresh-progressive-disclosure.mjs": "5.8.8",
|
|
311
|
+
"scripts/sync-embedded-skills.mjs": "5.8.8",
|
|
312
|
+
"scripts/validate-progressive-disclosure.mjs": "5.8.8",
|
|
313
|
+
"search-engine/SKILL.md": "5.8.8",
|
|
314
|
+
"search-engine/agents/openai.yaml": "5.8.8",
|
|
315
|
+
"spider-engine/SKILL.md": "5.8.8",
|
|
316
|
+
"system-observability/SKILL.md": "5.8.8",
|
|
317
|
+
"system-observability/references/memory-incident-triage.md": "5.8.8",
|
|
318
|
+
"translate-engine/SKILL.md": "5.8.8",
|
|
319
|
+
"translate-engine/agents/openai.yaml": "5.8.8",
|
|
320
|
+
"ui-design/SKILL.md": "5.8.8",
|
|
321
|
+
"ui-design/assets/pattern-showcase/app.js": "5.8.8",
|
|
322
|
+
"ui-design/assets/pattern-showcase/index.html": "5.8.8",
|
|
323
|
+
"ui-design/assets/pattern-showcase/styles.css": "5.8.8",
|
|
324
|
+
"ui-design/assets/templates/MCI-DESIGN.md": "5.8.8",
|
|
325
|
+
"ui-design/references/design-pattern-library.md": "5.8.8",
|
|
326
|
+
"ui-design/references/mci-design-contract.md": "5.8.8",
|
|
327
|
+
"ui-design/references/motion-and-media.md": "5.8.8",
|
|
328
|
+
"ui-design/references/product-flow-recipes.md": "5.8.8",
|
|
329
|
+
"ui-design/references/progressive-01-颜色体系-css-variables-支持主题切换.md": "5.8.8",
|
|
330
|
+
"ui-design/references/progressive-02-字体.md": "5.8.8",
|
|
331
|
+
"ui-design/references/progressive-03-动效规范-丰富但不卡.md": "5.8.8",
|
|
332
|
+
"ui-design/references/progressive-04-组件风格速查.md": "5.8.8",
|
|
333
|
+
"ui-design/references/progressive-05-移动端专用规范.md": "5.8.8",
|
|
334
|
+
"ui-design/references/progressive-06-主题切换实现.md": "5.8.8",
|
|
335
|
+
"ui-design/references/progressive-07-速查-从头搭建一个移动端页面.md": "5.8.8",
|
|
336
|
+
"ui-design/references/progressive-08-表单分组规范-tabs-vs-collapsegroup-强制.md": "5.8.8",
|
|
337
|
+
"uniapp-mall-assets/SKILL.md": "5.8.8",
|
|
338
|
+
"unity-integration/SKILL.md": "5.8.8",
|
|
339
|
+
"unity-integration/agents/openai.yaml": "5.8.8",
|
|
340
|
+
"unity-integration/references/ai-app-delivery.md": "5.8.8",
|
|
341
|
+
"unity-integration/references/sdk-api.md": "5.8.8",
|
|
342
|
+
"unity-integration/references/toolbox-migration.md": "5.8.8",
|
|
343
|
+
"unity-integration/references/webgl-hosting.md": "5.8.8",
|
|
344
|
+
"v8-api-config/SKILL.md": "5.8.8",
|
|
345
|
+
"v8-cache-pattern/SKILL.md": "5.8.8",
|
|
346
|
+
"v8-crud-api/SKILL.md": "5.8.8",
|
|
347
|
+
"v8-crud-api/references/progressive-01-查询列表-分页.md": "5.8.8",
|
|
348
|
+
"v8-crud-api/references/progressive-02-where-条件语法速查.md": "5.8.8",
|
|
349
|
+
"v8-debugging/SKILL.md": "5.8.8",
|
|
350
|
+
"v8-explorer-tree/SKILL.md": "5.8.8",
|
|
351
|
+
"v8-export-import/SKILL.md": "5.8.8",
|
|
352
|
+
"v8-export-import/references/progressive-01-excellayout-高级自由布局.md": "5.8.8",
|
|
353
|
+
"v8-export-import/references/progressive-02-powerpoint-导出.md": "5.8.8",
|
|
354
|
+
"v8-export-import/references/progressive-03-安全-性能注意.md": "5.8.8",
|
|
355
|
+
"v8-file-upload/SKILL.md": "5.8.8",
|
|
356
|
+
"v8-file-upload/references/progressive-01-公有桶-vs-私有桶.md": "5.8.8",
|
|
357
|
+
"v8-file-upload/references/progressive-02-office-文件在线编辑版本号规则.md": "5.8.8",
|
|
358
|
+
"v8-formengine-http/SKILL.md": "5.8.8",
|
|
359
|
+
"v8-frontend-events/SKILL.md": "5.8.8",
|
|
360
|
+
"v8-frontend-events/references/bluetooth-print-api.md": "5.8.8",
|
|
361
|
+
"v8-frontend-events/references/bluetooth-print.md": "5.8.8",
|
|
362
|
+
"v8-frontend-events/references/progressive-01-列表事件.md": "5.8.8",
|
|
363
|
+
"v8-http-integration/SKILL.md": "5.8.8",
|
|
364
|
+
"v8-http-integration/references/progressive-01-get-请求.md": "5.8.8",
|
|
365
|
+
"v8-http-integration/references/progressive-02-错误处理模式.md": "5.8.8",
|
|
366
|
+
"v8-image-processing/SKILL.md": "5.8.8",
|
|
367
|
+
"v8-image-processing/agents/openai.yaml": "5.8.8",
|
|
368
|
+
"v8-image-processing/references/api-reference.md": "5.8.8",
|
|
369
|
+
"v8-menu-buttons/SKILL.md": "5.8.8",
|
|
370
|
+
"v8-menu-buttons/references/progressive-01-2-按钮对象-schema.md": "5.8.8",
|
|
371
|
+
"v8-menu-buttons/references/progressive-02-8-模式-f-后台任务按钮-长任务.md": "5.8.8",
|
|
372
|
+
"v8-menu-buttons/references/progressive-03-10-反模式-避免.md": "5.8.8",
|
|
373
|
+
"v8-mongodb/SKILL.md": "5.8.8",
|
|
374
|
+
"v8-mq-mqtt/SKILL.md": "5.8.8",
|
|
375
|
+
"v8-mq-mqtt/references/mqtt-production.md": "5.8.8",
|
|
376
|
+
"v8-mq-mqtt/references/progressive-01-v8-mqtt-iot-物联网.md": "5.8.8",
|
|
377
|
+
"v8-mq-mqtt/scripts/check-mqtt-skill-coverage.mjs": "5.8.8",
|
|
378
|
+
"v8-saas-multi-tenant/SKILL.md": "5.8.8",
|
|
379
|
+
"v8-security/SKILL.md": "5.8.8",
|
|
380
|
+
"v8-security/references/progressive-01-2-权限校验.md": "5.8.8",
|
|
381
|
+
"v8-security/references/progressive-02-7-日志记录.md": "5.8.8",
|
|
382
|
+
"v8-sql-query/SKILL.md": "5.8.8",
|
|
383
|
+
"v8-table-event/SKILL.md": "5.8.8",
|
|
384
|
+
"v8-table-event/references/progressive-01-informv8-js-表单打开事件.md": "5.8.8",
|
|
385
|
+
"v8-table-event/references/progressive-02-前端事件名-v8-eventname-可能的值.md": "5.8.8",
|
|
386
|
+
"v8-tcp-integration/SKILL.md": "5.8.8",
|
|
387
|
+
"v8-tcp-integration/agents/openai.yaml": "5.8.8",
|
|
388
|
+
"v8-template-engine/SKILL.md": "5.8.8",
|
|
389
|
+
"v8-utilities/SKILL.md": "5.8.8",
|
|
390
|
+
"v8-utilities/references/client-api-index.md": "5.8.8",
|
|
391
|
+
"v8-utilities/references/platform-http-routes.md": "5.8.8",
|
|
392
|
+
"v8-utilities/references/server-api-index.md": "5.8.8",
|
|
393
|
+
"v8-workflow/SKILL.md": "5.8.8",
|
|
394
|
+
"v8-workflow/references/progressive-01-节点开始-v8-事件.md": "5.8.8",
|
|
395
|
+
"v8-workflow/references/workflow-configuration.md": "5.8.8",
|
|
396
|
+
"vision-engine/SKILL.md": "5.8.8",
|
|
397
|
+
"vision-engine/agents/openai.yaml": "5.8.8",
|
|
398
|
+
"vision-engine/references/architecture-and-acceptance.md": "5.8.8",
|
|
399
|
+
"workspace-conventions/SKILL.md": "5.8.8",
|
|
400
|
+
"workspace-conventions/references/progressive-01-版本更新日志保护规则-强制.md": "5.8.8",
|
|
401
|
+
"workspace-conventions/references/progressive-02-microi-net-api-本地启动约定.md": "5.8.8",
|
|
402
|
+
"workspace-conventions/references/progressive-03-cli-与-ide-插件错版共存约定.md": "5.8.8"
|
|
403
403
|
},
|
|
404
404
|
"files": [
|
|
405
405
|
".microi-skills-version.json",
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
|
-
"version": "5.8.
|
|
2
|
+
"version": "5.8.8",
|
|
3
3
|
"versionRule": "Microi version uses three numeric parts. Each publish increments the last part; when a part exceeds 9 it carries to the previous part: 1.0.9 -> 1.1.0, 1.9.9 -> 2.0.0.",
|
|
4
4
|
"managedBy": "Microi.Agent/bump-version.js",
|
|
5
|
-
"updatedAt": "2026-10-
|
|
5
|
+
"updatedAt": "2026-10-09T17:50:10.621Z"
|
|
6
6
|
}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 1,
|
|
3
|
-
"generatedAt": "2026-10-
|
|
3
|
+
"generatedAt": "2026-10-09T17:35:16.591Z",
|
|
4
4
|
"policy": {
|
|
5
5
|
"maxEntryLines": 285,
|
|
6
6
|
"referenceBudgetLines": 245,
|
|
@@ -169,11 +169,11 @@
|
|
|
169
169
|
]
|
|
170
170
|
},
|
|
171
171
|
"microi-client-frontend": {
|
|
172
|
-
"originalSha256": "
|
|
173
|
-
"originalLines":
|
|
172
|
+
"originalSha256": "6196ee7f5b4530ce410d8e7c3f349b6ccf265331d59e83de0f7cb24863604d61",
|
|
173
|
+
"originalLines": 706,
|
|
174
174
|
"prefixSha256": "9c59063f7561713a30d5433fcaba7d9976b790758634f2a95bf827f251d7da4a",
|
|
175
175
|
"prefixBytes": 1415,
|
|
176
|
-
"entryLines":
|
|
176
|
+
"entryLines": 248,
|
|
177
177
|
"chunks": [
|
|
178
178
|
{
|
|
179
179
|
"id": "microi-client-frontend-000",
|
|
@@ -195,8 +195,8 @@
|
|
|
195
195
|
"id": "microi-client-frontend-002",
|
|
196
196
|
"ordinal": 2,
|
|
197
197
|
"destination": "microi-client-frontend/SKILL.md",
|
|
198
|
-
"sha256": "
|
|
199
|
-
"lines":
|
|
198
|
+
"sha256": "bcb1222e9884f134d9902ed4937e6cb2753e5d3ed37096229efd99646320a4bc",
|
|
199
|
+
"lines": 112,
|
|
200
200
|
"heading": "2. 表单引擎三层结构"
|
|
201
201
|
},
|
|
202
202
|
{
|
|
@@ -58,7 +58,7 @@ description: Microi.Client 源码架构指南。用于修改 Microi.Client Vue
|
|
|
58
58
|
---
|
|
59
59
|
|
|
60
60
|
<!-- /microi-progressive:chunk -->
|
|
61
|
-
<!-- microi-progressive:chunk id=microi-client-frontend-002 sha256=
|
|
61
|
+
<!-- microi-progressive:chunk id=microi-client-frontend-002 sha256=bcb1222e9884f134d9902ed4937e6cb2753e5d3ed37096229efd99646320a4bc -->
|
|
62
62
|
## 2. 表单引擎三层结构
|
|
63
63
|
|
|
64
64
|
### 模块级跨端视图
|
|
@@ -165,7 +165,8 @@ description: Microi.Client 源码架构指南。用于修改 Microi.Client Vue
|
|
|
165
165
|
- 主题色、浅色/深色、菜单子级展开方式等需要“换设备仍生效”的选择必须保存到当前 DiyToken 用户的 `sys_user` 白名单字段;`localStorage` 只作为未安装新字段租户和匿名启动阶段的兼容回退,不能作为跨设备事实源。
|
|
166
166
|
- 已安装用户偏好字段时优先级固定为“当前用户显式值 → 租户 `sys_config` → 平台安全默认”;个人菜单值 `System` 表示继承租户配置。不得让上一位用户的浏览器本地主题覆盖下一位已登录用户。
|
|
167
167
|
- 自助保存优先使用官方 `Managed` 接口引擎,由 `V8.CurrentUser.Id` 与 `V8.OsClient` 推导用户和租户,并在服务端构造固定白名单更新对象;接口参数禁止决定目标 Id/OsClient,也禁止写入 Account、Phone、Tenant、Dept、Role、Level、State、Pwd、认证因子和登录审计字段。只有缺少可复用可信原子能力时才新增 C# DTO/端点。保存成功后调用 `V8.Method.RefreshLoginUser` 刷新登录缓存,并让微服务宿主重新同步 `CurrentUser`。
|
|
168
|
-
- 右上角即时切换可以乐观应用并短防抖保存;远端保存失败时保留当前设备效果并明确提示。个人中心和右上角必须调用同一个应用包交付的白名单接口引擎(当前为 `platform-user-update-preferences`),不能分别形成两套字段、枚举或优先级。
|
|
168
|
+
- 右上角即时切换可以乐观应用并短防抖保存;远端保存失败时保留当前设备效果并明确提示。个人中心和右上角必须调用同一个应用包交付的白名单接口引擎(当前为 `platform-user-update-preferences`),不能分别形成两套字段、枚举或优先级。
|
|
169
|
+
- 导航切入或退出 `TopSide` 会重建顶栏组件;卸载前必须发送尚未保存的偏好,在途请求与后续选择共用按 store、API 地址、租户、账号和登录会话隔离的运行时队列。新顶栏继承失败状态和重试数据,旧响应不能覆盖更新的选择或跨账号合并队列;标准续签保留 `MicroiSessionId` 时也保留最终待保存选择,计算属性显式依赖 Pinia.Token。JWT 解码仅用于本地队列归属,服务端仍通过标准 DiyToken 验证授权;不得将会话凭据写入偏好存储、日志或响应。使用真实 Vue computed 和组件生命周期回归 `theme-select-autosave-lifecycle.spec.mjs` 验证卸载、在途合并、失败重试、续签及账号/租户/会话切换。
|
|
169
170
|
|
|
170
171
|
---
|
|
171
172
|
|