@microi.net/cli 5.5.5 → 5.5.7

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.
@@ -1,31 +1,31 @@
1
1
  {
2
- "builtAt": "2026-09-06T20:17:43.884Z",
2
+ "builtAt": "2026-09-07T15:19:22.454Z",
3
3
  "source": "../microi.skills",
4
4
  "extension": {
5
5
  "name": "v8-engine",
6
- "version": "5.5.5",
6
+ "version": "5.5.7",
7
7
  "publisher": "Microi"
8
8
  },
9
9
  "skills": {
10
- "version": "5.5.5",
10
+ "version": "5.5.7",
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.VSCode/bump-version.js"
13
13
  },
14
14
  "output": {
15
15
  "dir": "dist/microi.skills",
16
- "files": 183,
16
+ "files": 184,
17
17
  "skills": 67,
18
- "bytes": 2376914
18
+ "bytes": 2392106
19
19
  },
20
20
  "fileHashes": {
21
- ".microi-skills-version.json": "1f8fa563c48abe4b00bded600135fb4bcdbbf7101da641d96501662db67021e3",
21
+ ".microi-skills-version.json": "073d86322a2875dc3b5523d3cd7b7d6e0e02a3b77e9220a36350229446509f6c",
22
22
  ".progressive-disclosure-manifest.json": "11c3cb160643398b48ed8f82e8848ffd086a549ce664b90d659660980d805ff4",
23
23
  "README.md": "bb09053c6ce4ce3fb4add46c62f4bc2ecd7fa5589e1c206c1aa59f655ca140ec",
24
24
  "ai-engine/SKILL.md": "3a098b42f3f918104e825967c3b61fa3fac32d4f7a55fb5529650aa1c29c7baa",
25
25
  "ai-engine/agents/openai.yaml": "40deb07801006a46b9a7f0020d13251955eeadd04c8e591160210479936f8b5b",
26
26
  "ai-platform-governance/SKILL.md": "84ca4bcacf15deecd0c04dc1a664b23041a6a5f020d3a5288c5458b5e7da4b8e",
27
27
  "ai-platform-governance/references/progressive-01-功能开关.md": "ea46fb02267e9e3ace3d9d72e67b02183c61e5c198f4b2f27e8196d6ee6d0bec",
28
- "app-store/SKILL.md": "49f698cddc890a7573a364c8968f14136269052a5d91416cb5a01d70b4139769",
28
+ "app-store/SKILL.md": "d011140b61119bc544a1e0854d009e8f33c203722f62bc96e21f08962d363f9f",
29
29
  "app-store/agents/openai.yaml": "eda8f5cf043e7b8fb0e4fb3acf0625fef95eb49586b43187ced277cd0ae4a2c4",
30
30
  "business-blueprint/SKILL.md": "01619a3b6d37b5b67649ee59d2701301222006d3b943882b2802b1721c58f8a9",
31
31
  "datasource-engine/SKILL.md": "bed8352f1d43b55145e1c492d1ea0ca1ec8750b5c4d74e1e80cd71aa7b9a2e6f",
@@ -43,13 +43,13 @@
43
43
  "microi-ai-application/SKILL.md": "de48dd57de350dcc3e605bc5075ff0d6cfa33e7f7e450e59cbdd6afe32e02e0b",
44
44
  "microi-ai-application/agents/openai.yaml": "d3dfc4d0f2fda3391e90e661ca9d8d051cb43824b011d1a88e99db135870454f",
45
45
  "microi-ai-application/references/frontend-baseline.md": "c21a2d38292fd8d445a7538afb45d609881f624f32d39c0fc4bbbb3c2fa64a74",
46
- "microi-client-frontend/SKILL.md": "097c2dc3b06741678bcaccca6eb24bb4b65770e356f5f947d5d9b087a2e8ae8c",
46
+ "microi-client-frontend/SKILL.md": "73c75058bf1158791433391b708295f70e30860612e49dcd03559f5f1cae5ed1",
47
47
  "microi-client-frontend/references/progressive-01-3-动态按钮系统.md": "3aa2cdbd37ed6ff6927ba76b7fbd15a4e0855d8b84e77603793182a778a33438",
48
48
  "microi-client-frontend/references/progressive-02-8-运行时高频坑复盘.md": "0f796b5a89181cb40edc351337f43a3b4495c9a96101f661425222a42a5e5a4f",
49
49
  "microi-client-frontend/references/progressive-03-vue3-前端微服务宿主规则.md": "bf78d9d2e2d6d1a8315f44f04f21889b21d845a02801d5f8e0eb11b3f490b6d1",
50
50
  "microi-codex-installer/SKILL.md": "75bec07d087167ab6343c816d07d9c7e1e850871a05737f31aec115e7fa3cdce",
51
51
  "microi-codex-installer/agents/openai.yaml": "e531219b74a70204893a156b1c22c69013a4c9d24b132ead912746b1b312cf80",
52
- "microi-codex/SKILL.md": "61f5e6ffad986766be3d4d09a4111a2c4fd7a1b2247e2fb48ca0e22dd3b9c2d6",
52
+ "microi-codex/SKILL.md": "43e8b810d1ff19a647788c81013ab547d0a7c4c02e0ba0c0a88f0e0d6bea5a78",
53
53
  "microi-datasource-mapping/SKILL.md": "619c022b668f928129abef10e3f502f2ca0d2dee6e341ccd55f61fdbbcdd9661",
54
54
  "microi-db-schema/SKILL.md": "2967dbce22581f05ea390b3e29744d065640e100927001e5fd1bff118ab8c627",
55
55
  "microi-db-schema/agents/openai.yaml": "c725a2be4c904472f9e46dc4b49aa642c9f3a4437c91a28ba7cc27167497ede7",
@@ -58,12 +58,12 @@
58
58
  "microi-db-schema/references/schema-overview.md": "8c8fa4dec1f30fc98d2afcb9a3dd529b308e9ea18bf57c6d9dd1c12a1d3beafb",
59
59
  "microi-db-schema/references/schema.md": "1aec0aaaa6e2be82ba9cee738dbe6f089077055bea6b8dc2647763f04349c680",
60
60
  "microi-db-schema/references/table-catalog.md": "e060409694e6a16dd6051693744140de4dba40ed798afd15354539aa16faf649",
61
- "microi-deployment/SKILL.md": "5a699ae5c45455c495ebfc25372444129dc997ba3c41f3e822e9c70591e12abc",
61
+ "microi-deployment/SKILL.md": "3ad299870bc06c8318d693614ef2e5031ff1a1908dfaf94e62c15aaa435a2e55",
62
62
  "microi-deployment/references/deployment-matrix.md": "49c71b3b0d5cf0cb6bea36a8460b13ba46033adbeda89f097e10ea392ed04ceb",
63
63
  "microi-docs-coverage/SKILL.md": "44d2e633946af233bdd5a59a9fb74a8613e82031fa2f4635a2664fff0ad6c210",
64
64
  "microi-docs-coverage/references/capability-map.md": "9a6acb6c641dedff486918094ef26a134bb94db9122302b1c51fe6a27dc1828f",
65
65
  "microi-docs-coverage/scripts/audit-doc-skill-coverage.mjs": "ebd57f17f2ebae499bfa59ad17830db458590feb76f7f0f20219ff0987b33af3",
66
- "microi-form-engine/SKILL.md": "0916b5a7a90df26ae8cd9725217d1e0c07bc6389924666b579a5260c713c36c0",
66
+ "microi-form-engine/SKILL.md": "d5e2dcdf9e28ed44b38fdb873fa829f94efa7a9f2472590984da7cb31b87c8a2",
67
67
  "microi-form-engine/references/component-catalog.md": "f43fee6bc00e72f99efe286a94f46d8920f6159ec1a9745391f641acf7bdf249",
68
68
  "microi-form-engine/references/data-source-events.md": "acae97de68c729745fc831a546cbdee4feb598c10f6b667b678cc6513a3e9e22",
69
69
  "microi-form-layout/SKILL.md": "ce4278f50cd5cea54a20b082525b1a94b58baa7745a27bec626b71725affa061",
@@ -116,7 +116,8 @@
116
116
  "search-engine/SKILL.md": "c1c33ed02a91a6e8d482f05208a0d49c3dc6639165c9cc017e0e270db0d7ee7e",
117
117
  "search-engine/agents/openai.yaml": "5ddbe54965386287b00eba1cd7e38f3c7058edc437538f12ddb165f96f75a6eb",
118
118
  "spider-engine/SKILL.md": "e24018f7ab2a07706a70bb592adb7a2f91f0a66e3f9bc944593e18731c53d77e",
119
- "system-observability/SKILL.md": "bd79725bf077a28c814f3da4d3a2ef83b80ba0fe8690552fe30beff2b7911d7c",
119
+ "system-observability/SKILL.md": "7ac1018522988a8e3b3d2c96e824b9cae21ad33f04afb778739217d20f6968be",
120
+ "system-observability/references/memory-incident-triage.md": "c82232675aa50afbd1dfb00111c1eddcf8c59e4a0f75768b797dd49672c6fed8",
120
121
  "translate-engine/SKILL.md": "a2fd7a15abc6a5559971a2969d216e02efedad5f0456bf95bd27d14029cad5a5",
121
122
  "translate-engine/agents/openai.yaml": "8eb47e08a691219bbe22a797ddbdf73234ec77f86e5724bc735fb0738d899112",
122
123
  "ui-design/SKILL.md": "fadf47fe594196136bdc358cd43fc0a8d512daa602cdac0c116510c256334138",
@@ -197,195 +198,196 @@
197
198
  "vision-engine/SKILL.md": "45df0a30fc756810f357424e96993807c775be2ce979d985247dcf3b3fbcf1e8",
198
199
  "vision-engine/agents/openai.yaml": "df86e872fb640346958114aa6dc78bba70ed1b26a30948976109b1f194e7da21",
199
200
  "vision-engine/references/architecture-and-acceptance.md": "e33d27de82d3f610cd692067135e02e478374f3d5230314ff22e1de68e83b104",
200
- "workspace-conventions/SKILL.md": "f07f8176196e2909a54b3be11594a1a1c9b6f2e112e6a5bb84cea90902d4143b",
201
+ "workspace-conventions/SKILL.md": "2dc38b6bda2b6806cdfa1cb05ee9edf05b4ae5b98e668a8528d2309f0b484266",
201
202
  "workspace-conventions/references/progressive-01-版本更新日志保护规则-强制.md": "2e355834a34e3a2f947b3891fc442a69a7e815ac8942c75c17a591a738202e9c",
202
203
  "workspace-conventions/references/progressive-02-microi-net-api-本地启动约定.md": "6720c8700972ca2b0b0b4378a137b70763542a280043c75d79d551be1f57b308",
203
204
  "workspace-conventions/references/progressive-03-cli-与-ide-插件错版共存约定.md": "86db1f03700fd54dd824d28c553c678202e8f74b796fd0f9d91f63bf53a530b1"
204
205
  },
205
206
  "fileVersions": {
206
- ".microi-skills-version.json": "5.5.5",
207
- ".progressive-disclosure-manifest.json": "5.5.5",
208
- "README.md": "5.5.5",
209
- "ai-engine/SKILL.md": "5.5.5",
210
- "ai-engine/agents/openai.yaml": "5.5.5",
211
- "ai-platform-governance/SKILL.md": "5.5.5",
212
- "ai-platform-governance/references/progressive-01-功能开关.md": "5.5.5",
213
- "app-store/SKILL.md": "5.5.5",
214
- "app-store/agents/openai.yaml": "5.5.5",
215
- "business-blueprint/SKILL.md": "5.5.5",
216
- "datasource-engine/SKILL.md": "5.5.5",
217
- "datasource-engine/agents/openai.yaml": "5.5.5",
218
- "dos-orm/SKILL.md": "5.5.5",
219
- "dos-orm/references/api-reference.md": "5.5.5",
220
- "email-engine/SKILL.md": "5.5.5",
221
- "email-engine/references/v8-email.md": "5.5.5",
222
- "job-engine/SKILL.md": "5.5.5",
223
- "job-engine/agents/openai.yaml": "5.5.5",
224
- "message-notification/SKILL.md": "5.5.5",
225
- "message-notification/agents/openai.yaml": "5.5.5",
226
- "message-notification/references/contracts.md": "5.5.5",
227
- "microi-ai-app-auth.js": "5.5.5",
228
- "microi-ai-application/SKILL.md": "5.5.5",
229
- "microi-ai-application/agents/openai.yaml": "5.5.5",
230
- "microi-ai-application/references/frontend-baseline.md": "5.5.5",
231
- "microi-client-frontend/SKILL.md": "5.5.5",
232
- "microi-client-frontend/references/progressive-01-3-动态按钮系统.md": "5.5.5",
233
- "microi-client-frontend/references/progressive-02-8-运行时高频坑复盘.md": "5.5.5",
234
- "microi-client-frontend/references/progressive-03-vue3-前端微服务宿主规则.md": "5.5.5",
235
- "microi-codex-installer/SKILL.md": "5.5.5",
236
- "microi-codex-installer/agents/openai.yaml": "5.5.5",
237
- "microi-codex/SKILL.md": "5.5.5",
238
- "microi-datasource-mapping/SKILL.md": "5.5.5",
239
- "microi-db-schema/SKILL.md": "5.5.5",
240
- "microi-db-schema/agents/openai.yaml": "5.5.5",
241
- "microi-db-schema/references/core-tables.md": "5.5.5",
242
- "microi-db-schema/references/form-component-options.md": "5.5.5",
243
- "microi-db-schema/references/schema-overview.md": "5.5.5",
244
- "microi-db-schema/references/schema.md": "5.5.5",
245
- "microi-db-schema/references/table-catalog.md": "5.5.5",
246
- "microi-deployment/SKILL.md": "5.5.5",
247
- "microi-deployment/references/deployment-matrix.md": "5.5.5",
248
- "microi-docs-coverage/SKILL.md": "5.5.5",
249
- "microi-docs-coverage/references/capability-map.md": "5.5.5",
250
- "microi-docs-coverage/scripts/audit-doc-skill-coverage.mjs": "5.5.5",
251
- "microi-form-engine/SKILL.md": "5.5.5",
252
- "microi-form-engine/references/component-catalog.md": "5.5.5",
253
- "microi-form-engine/references/data-source-events.md": "5.5.5",
254
- "microi-form-layout/SKILL.md": "5.5.5",
255
- "microi-form-layout/references/progressive-01-3-三种分组的存储与配置.md": "5.5.5",
256
- "microi-frontend-sdk/SKILL.md": "5.5.5",
257
- "microi-frontend-sdk/references/progressive-01-token-当前登录用户与当前终端登录协议.md": "5.5.5",
258
- "microi-left-right-layout/SKILL.md": "5.5.5",
259
- "microi-microservice/SKILL.md": "5.5.5",
260
- "microi-microservice/references/runtime-delivery.md": "5.5.5",
261
- "microi-mobile-app-quality/SKILL.md": "5.5.5",
262
- "microi-mobile-app-quality/references/progressive-01-4-重要按钮必须带图标.md": "5.5.5",
263
- "microi-mobile-app-quality/references/progressive-02-9-主题切换必须真实且全局生效.md": "5.5.5",
264
- "microi-solution-quotation/SKILL.md": "5.5.5",
265
- "microi-solution-quotation/agents/openai.yaml": "5.5.5",
266
- "microi-solution-quotation/scripts/build_solution_quote.py": "5.5.5",
267
- "microi-sso/SKILL.md": "5.5.5",
268
- "microi-sso/references/acceptance.md": "5.5.5",
269
- "microi-sso/references/configuration-and-security.md": "5.5.5",
270
- "microi-sso/references/inbound.md": "5.5.5",
271
- "microi-sso/references/outbound.md": "5.5.5",
272
- "microi-system-delivery/SKILL.md": "5.5.5",
273
- "microi-system-delivery/references/progressive-01-标准工作流.md": "5.5.5",
274
- "microi-system-delivery/references/progressive-02-自动化测试必须覆盖的坑.md": "5.5.5",
275
- "microi-ui/SKILL.md": "5.5.5",
276
- "microi-ui/references/progressive-01-移动端场景蓝图.md": "5.5.5",
277
- "microi-uniapp-frontend/SKILL.md": "5.5.5",
278
- "microi-uniapp-frontend/references/progressive-01-移动端分类-双栏列表独立滚动.md": "5.5.5",
279
- "microi-uniapp-frontend/references/progressive-02-关键业务资产不得默认选中.md": "5.5.5",
280
- "microi.v8.js": "5.5.5",
281
- "module-engine/SKILL.md": "5.5.5",
282
- "module-engine/references/module-config.md": "5.5.5",
283
- "ocr-engine/SKILL.md": "5.5.5",
284
- "ocr-engine/agents/openai.yaml": "5.5.5",
285
- "page-engine/SKILL.md": "5.5.5",
286
- "page-engine/references/progressive-01-所有组件类型.md": "5.5.5",
287
- "page-engine/references/progressive-02-版本历史-并发保存与回滚.md": "5.5.5",
288
- "performance-testing/SKILL.md": "5.5.5",
289
- "playwright-e2e/SKILL.md": "5.5.5",
290
- "playwright-e2e/references/progressive-01-全自动登录-免验证码-但不免密码-必读.md": "5.5.5",
291
- "playwright-e2e/references/progressive-02-文字对比度与可读性自动化检查-必做.md": "5.5.5",
292
- "playwright-e2e/references/progressive-03-microi-helper-模板.md": "5.5.5",
293
- "playwright-e2e/references/progressive-04-ci-建议.md": "5.5.5",
294
- "print-engine/SKILL.md": "5.5.5",
295
- "production-readonly-audit/SKILL.md": "5.5.5",
296
- "report-engine/SKILL.md": "5.5.5",
297
- "report-engine/agents/openai.yaml": "5.5.5",
298
- "scripts/optimize-progressive-disclosure.mjs": "5.5.5",
299
- "scripts/refresh-progressive-disclosure.mjs": "5.5.5",
300
- "scripts/validate-progressive-disclosure.mjs": "5.5.5",
301
- "search-engine/SKILL.md": "5.5.5",
302
- "search-engine/agents/openai.yaml": "5.5.5",
303
- "spider-engine/SKILL.md": "5.5.5",
304
- "system-observability/SKILL.md": "5.5.5",
305
- "translate-engine/SKILL.md": "5.5.5",
306
- "translate-engine/agents/openai.yaml": "5.5.5",
307
- "ui-design/SKILL.md": "5.5.5",
308
- "ui-design/assets/pattern-showcase/app.js": "5.5.5",
309
- "ui-design/assets/pattern-showcase/index.html": "5.5.5",
310
- "ui-design/assets/pattern-showcase/styles.css": "5.5.5",
311
- "ui-design/assets/templates/MCI-DESIGN.md": "5.5.5",
312
- "ui-design/references/design-pattern-library.md": "5.5.5",
313
- "ui-design/references/mci-design-contract.md": "5.5.5",
314
- "ui-design/references/motion-and-media.md": "5.5.5",
315
- "ui-design/references/product-flow-recipes.md": "5.5.5",
316
- "ui-design/references/progressive-01-颜色体系-css-variables-支持主题切换.md": "5.5.5",
317
- "ui-design/references/progressive-02-字体.md": "5.5.5",
318
- "ui-design/references/progressive-03-动效规范-丰富但不卡.md": "5.5.5",
319
- "ui-design/references/progressive-04-组件风格速查.md": "5.5.5",
320
- "ui-design/references/progressive-05-移动端专用规范.md": "5.5.5",
321
- "ui-design/references/progressive-06-主题切换实现.md": "5.5.5",
322
- "ui-design/references/progressive-07-速查-从头搭建一个移动端页面.md": "5.5.5",
323
- "ui-design/references/progressive-08-表单分组规范-tabs-vs-collapsegroup-强制.md": "5.5.5",
324
- "uniapp-mall-assets/SKILL.md": "5.5.5",
325
- "unity-integration/SKILL.md": "5.5.5",
326
- "unity-integration/agents/openai.yaml": "5.5.5",
327
- "unity-integration/references/ai-app-delivery.md": "5.5.5",
328
- "unity-integration/references/sdk-api.md": "5.5.5",
329
- "unity-integration/references/toolbox-migration.md": "5.5.5",
330
- "unity-integration/references/webgl-hosting.md": "5.5.5",
331
- "v8-api-config/SKILL.md": "5.5.5",
332
- "v8-cache-pattern/SKILL.md": "5.5.5",
333
- "v8-crud-api/SKILL.md": "5.5.5",
334
- "v8-crud-api/references/progressive-01-查询列表-分页.md": "5.5.5",
335
- "v8-crud-api/references/progressive-02-where-条件语法速查.md": "5.5.5",
336
- "v8-debugging/SKILL.md": "5.5.5",
337
- "v8-explorer-tree/SKILL.md": "5.5.5",
338
- "v8-export-import/SKILL.md": "5.5.5",
339
- "v8-export-import/references/progressive-01-excellayout-高级自由布局.md": "5.5.5",
340
- "v8-export-import/references/progressive-02-powerpoint-导出.md": "5.5.5",
341
- "v8-export-import/references/progressive-03-安全-性能注意.md": "5.5.5",
342
- "v8-file-upload/SKILL.md": "5.5.5",
343
- "v8-file-upload/references/progressive-01-公有桶-vs-私有桶.md": "5.5.5",
344
- "v8-file-upload/references/progressive-02-office-文件在线编辑版本号规则.md": "5.5.5",
345
- "v8-formengine-http/SKILL.md": "5.5.5",
346
- "v8-frontend-events/SKILL.md": "5.5.5",
347
- "v8-frontend-events/references/bluetooth-print-api.md": "5.5.5",
348
- "v8-frontend-events/references/bluetooth-print.md": "5.5.5",
349
- "v8-frontend-events/references/progressive-01-列表事件.md": "5.5.5",
350
- "v8-http-integration/SKILL.md": "5.5.5",
351
- "v8-http-integration/references/progressive-01-get-请求.md": "5.5.5",
352
- "v8-http-integration/references/progressive-02-错误处理模式.md": "5.5.5",
353
- "v8-image-processing/SKILL.md": "5.5.5",
354
- "v8-image-processing/agents/openai.yaml": "5.5.5",
355
- "v8-image-processing/references/api-reference.md": "5.5.5",
356
- "v8-menu-buttons/SKILL.md": "5.5.5",
357
- "v8-menu-buttons/references/progressive-01-2-按钮对象-schema.md": "5.5.5",
358
- "v8-menu-buttons/references/progressive-02-8-模式-f-后台任务按钮-长任务.md": "5.5.5",
359
- "v8-menu-buttons/references/progressive-03-10-反模式-避免.md": "5.5.5",
360
- "v8-mongodb/SKILL.md": "5.5.5",
361
- "v8-mq-mqtt/SKILL.md": "5.5.5",
362
- "v8-mq-mqtt/references/mqtt-production.md": "5.5.5",
363
- "v8-mq-mqtt/references/progressive-01-v8-mqtt-iot-物联网.md": "5.5.5",
364
- "v8-mq-mqtt/scripts/check-mqtt-skill-coverage.mjs": "5.5.5",
365
- "v8-saas-multi-tenant/SKILL.md": "5.5.5",
366
- "v8-security/SKILL.md": "5.5.5",
367
- "v8-security/references/progressive-01-2-权限校验.md": "5.5.5",
368
- "v8-security/references/progressive-02-7-日志记录.md": "5.5.5",
369
- "v8-sql-query/SKILL.md": "5.5.5",
370
- "v8-table-event/SKILL.md": "5.5.5",
371
- "v8-table-event/references/progressive-01-informv8-js-表单打开事件.md": "5.5.5",
372
- "v8-table-event/references/progressive-02-前端事件名-v8-eventname-可能的值.md": "5.5.5",
373
- "v8-tcp-integration/SKILL.md": "5.5.5",
374
- "v8-tcp-integration/agents/openai.yaml": "5.5.5",
375
- "v8-template-engine/SKILL.md": "5.5.5",
376
- "v8-utilities/SKILL.md": "5.5.5",
377
- "v8-utilities/references/client-api-index.md": "5.5.5",
378
- "v8-utilities/references/platform-http-routes.md": "5.5.5",
379
- "v8-utilities/references/server-api-index.md": "5.5.5",
380
- "v8-workflow/SKILL.md": "5.5.5",
381
- "v8-workflow/references/progressive-01-节点开始-v8-事件.md": "5.5.5",
382
- "vision-engine/SKILL.md": "5.5.5",
383
- "vision-engine/agents/openai.yaml": "5.5.5",
384
- "vision-engine/references/architecture-and-acceptance.md": "5.5.5",
385
- "workspace-conventions/SKILL.md": "5.5.5",
386
- "workspace-conventions/references/progressive-01-版本更新日志保护规则-强制.md": "5.5.5",
387
- "workspace-conventions/references/progressive-02-microi-net-api-本地启动约定.md": "5.5.5",
388
- "workspace-conventions/references/progressive-03-cli-与-ide-插件错版共存约定.md": "5.5.5"
207
+ ".microi-skills-version.json": "5.5.7",
208
+ ".progressive-disclosure-manifest.json": "5.5.7",
209
+ "README.md": "5.5.7",
210
+ "ai-engine/SKILL.md": "5.5.7",
211
+ "ai-engine/agents/openai.yaml": "5.5.7",
212
+ "ai-platform-governance/SKILL.md": "5.5.7",
213
+ "ai-platform-governance/references/progressive-01-功能开关.md": "5.5.7",
214
+ "app-store/SKILL.md": "5.5.7",
215
+ "app-store/agents/openai.yaml": "5.5.7",
216
+ "business-blueprint/SKILL.md": "5.5.7",
217
+ "datasource-engine/SKILL.md": "5.5.7",
218
+ "datasource-engine/agents/openai.yaml": "5.5.7",
219
+ "dos-orm/SKILL.md": "5.5.7",
220
+ "dos-orm/references/api-reference.md": "5.5.7",
221
+ "email-engine/SKILL.md": "5.5.7",
222
+ "email-engine/references/v8-email.md": "5.5.7",
223
+ "job-engine/SKILL.md": "5.5.7",
224
+ "job-engine/agents/openai.yaml": "5.5.7",
225
+ "message-notification/SKILL.md": "5.5.7",
226
+ "message-notification/agents/openai.yaml": "5.5.7",
227
+ "message-notification/references/contracts.md": "5.5.7",
228
+ "microi-ai-app-auth.js": "5.5.7",
229
+ "microi-ai-application/SKILL.md": "5.5.7",
230
+ "microi-ai-application/agents/openai.yaml": "5.5.7",
231
+ "microi-ai-application/references/frontend-baseline.md": "5.5.7",
232
+ "microi-client-frontend/SKILL.md": "5.5.7",
233
+ "microi-client-frontend/references/progressive-01-3-动态按钮系统.md": "5.5.7",
234
+ "microi-client-frontend/references/progressive-02-8-运行时高频坑复盘.md": "5.5.7",
235
+ "microi-client-frontend/references/progressive-03-vue3-前端微服务宿主规则.md": "5.5.7",
236
+ "microi-codex-installer/SKILL.md": "5.5.7",
237
+ "microi-codex-installer/agents/openai.yaml": "5.5.7",
238
+ "microi-codex/SKILL.md": "5.5.7",
239
+ "microi-datasource-mapping/SKILL.md": "5.5.7",
240
+ "microi-db-schema/SKILL.md": "5.5.7",
241
+ "microi-db-schema/agents/openai.yaml": "5.5.7",
242
+ "microi-db-schema/references/core-tables.md": "5.5.7",
243
+ "microi-db-schema/references/form-component-options.md": "5.5.7",
244
+ "microi-db-schema/references/schema-overview.md": "5.5.7",
245
+ "microi-db-schema/references/schema.md": "5.5.7",
246
+ "microi-db-schema/references/table-catalog.md": "5.5.7",
247
+ "microi-deployment/SKILL.md": "5.5.7",
248
+ "microi-deployment/references/deployment-matrix.md": "5.5.7",
249
+ "microi-docs-coverage/SKILL.md": "5.5.7",
250
+ "microi-docs-coverage/references/capability-map.md": "5.5.7",
251
+ "microi-docs-coverage/scripts/audit-doc-skill-coverage.mjs": "5.5.7",
252
+ "microi-form-engine/SKILL.md": "5.5.7",
253
+ "microi-form-engine/references/component-catalog.md": "5.5.7",
254
+ "microi-form-engine/references/data-source-events.md": "5.5.7",
255
+ "microi-form-layout/SKILL.md": "5.5.7",
256
+ "microi-form-layout/references/progressive-01-3-三种分组的存储与配置.md": "5.5.7",
257
+ "microi-frontend-sdk/SKILL.md": "5.5.7",
258
+ "microi-frontend-sdk/references/progressive-01-token-当前登录用户与当前终端登录协议.md": "5.5.7",
259
+ "microi-left-right-layout/SKILL.md": "5.5.7",
260
+ "microi-microservice/SKILL.md": "5.5.7",
261
+ "microi-microservice/references/runtime-delivery.md": "5.5.7",
262
+ "microi-mobile-app-quality/SKILL.md": "5.5.7",
263
+ "microi-mobile-app-quality/references/progressive-01-4-重要按钮必须带图标.md": "5.5.7",
264
+ "microi-mobile-app-quality/references/progressive-02-9-主题切换必须真实且全局生效.md": "5.5.7",
265
+ "microi-solution-quotation/SKILL.md": "5.5.7",
266
+ "microi-solution-quotation/agents/openai.yaml": "5.5.7",
267
+ "microi-solution-quotation/scripts/build_solution_quote.py": "5.5.7",
268
+ "microi-sso/SKILL.md": "5.5.7",
269
+ "microi-sso/references/acceptance.md": "5.5.7",
270
+ "microi-sso/references/configuration-and-security.md": "5.5.7",
271
+ "microi-sso/references/inbound.md": "5.5.7",
272
+ "microi-sso/references/outbound.md": "5.5.7",
273
+ "microi-system-delivery/SKILL.md": "5.5.7",
274
+ "microi-system-delivery/references/progressive-01-标准工作流.md": "5.5.7",
275
+ "microi-system-delivery/references/progressive-02-自动化测试必须覆盖的坑.md": "5.5.7",
276
+ "microi-ui/SKILL.md": "5.5.7",
277
+ "microi-ui/references/progressive-01-移动端场景蓝图.md": "5.5.7",
278
+ "microi-uniapp-frontend/SKILL.md": "5.5.7",
279
+ "microi-uniapp-frontend/references/progressive-01-移动端分类-双栏列表独立滚动.md": "5.5.7",
280
+ "microi-uniapp-frontend/references/progressive-02-关键业务资产不得默认选中.md": "5.5.7",
281
+ "microi.v8.js": "5.5.7",
282
+ "module-engine/SKILL.md": "5.5.7",
283
+ "module-engine/references/module-config.md": "5.5.7",
284
+ "ocr-engine/SKILL.md": "5.5.7",
285
+ "ocr-engine/agents/openai.yaml": "5.5.7",
286
+ "page-engine/SKILL.md": "5.5.7",
287
+ "page-engine/references/progressive-01-所有组件类型.md": "5.5.7",
288
+ "page-engine/references/progressive-02-版本历史-并发保存与回滚.md": "5.5.7",
289
+ "performance-testing/SKILL.md": "5.5.7",
290
+ "playwright-e2e/SKILL.md": "5.5.7",
291
+ "playwright-e2e/references/progressive-01-全自动登录-免验证码-但不免密码-必读.md": "5.5.7",
292
+ "playwright-e2e/references/progressive-02-文字对比度与可读性自动化检查-必做.md": "5.5.7",
293
+ "playwright-e2e/references/progressive-03-microi-helper-模板.md": "5.5.7",
294
+ "playwright-e2e/references/progressive-04-ci-建议.md": "5.5.7",
295
+ "print-engine/SKILL.md": "5.5.7",
296
+ "production-readonly-audit/SKILL.md": "5.5.7",
297
+ "report-engine/SKILL.md": "5.5.7",
298
+ "report-engine/agents/openai.yaml": "5.5.7",
299
+ "scripts/optimize-progressive-disclosure.mjs": "5.5.7",
300
+ "scripts/refresh-progressive-disclosure.mjs": "5.5.7",
301
+ "scripts/validate-progressive-disclosure.mjs": "5.5.7",
302
+ "search-engine/SKILL.md": "5.5.7",
303
+ "search-engine/agents/openai.yaml": "5.5.7",
304
+ "spider-engine/SKILL.md": "5.5.7",
305
+ "system-observability/SKILL.md": "5.5.7",
306
+ "system-observability/references/memory-incident-triage.md": "5.5.7",
307
+ "translate-engine/SKILL.md": "5.5.7",
308
+ "translate-engine/agents/openai.yaml": "5.5.7",
309
+ "ui-design/SKILL.md": "5.5.7",
310
+ "ui-design/assets/pattern-showcase/app.js": "5.5.7",
311
+ "ui-design/assets/pattern-showcase/index.html": "5.5.7",
312
+ "ui-design/assets/pattern-showcase/styles.css": "5.5.7",
313
+ "ui-design/assets/templates/MCI-DESIGN.md": "5.5.7",
314
+ "ui-design/references/design-pattern-library.md": "5.5.7",
315
+ "ui-design/references/mci-design-contract.md": "5.5.7",
316
+ "ui-design/references/motion-and-media.md": "5.5.7",
317
+ "ui-design/references/product-flow-recipes.md": "5.5.7",
318
+ "ui-design/references/progressive-01-颜色体系-css-variables-支持主题切换.md": "5.5.7",
319
+ "ui-design/references/progressive-02-字体.md": "5.5.7",
320
+ "ui-design/references/progressive-03-动效规范-丰富但不卡.md": "5.5.7",
321
+ "ui-design/references/progressive-04-组件风格速查.md": "5.5.7",
322
+ "ui-design/references/progressive-05-移动端专用规范.md": "5.5.7",
323
+ "ui-design/references/progressive-06-主题切换实现.md": "5.5.7",
324
+ "ui-design/references/progressive-07-速查-从头搭建一个移动端页面.md": "5.5.7",
325
+ "ui-design/references/progressive-08-表单分组规范-tabs-vs-collapsegroup-强制.md": "5.5.7",
326
+ "uniapp-mall-assets/SKILL.md": "5.5.7",
327
+ "unity-integration/SKILL.md": "5.5.7",
328
+ "unity-integration/agents/openai.yaml": "5.5.7",
329
+ "unity-integration/references/ai-app-delivery.md": "5.5.7",
330
+ "unity-integration/references/sdk-api.md": "5.5.7",
331
+ "unity-integration/references/toolbox-migration.md": "5.5.7",
332
+ "unity-integration/references/webgl-hosting.md": "5.5.7",
333
+ "v8-api-config/SKILL.md": "5.5.7",
334
+ "v8-cache-pattern/SKILL.md": "5.5.7",
335
+ "v8-crud-api/SKILL.md": "5.5.7",
336
+ "v8-crud-api/references/progressive-01-查询列表-分页.md": "5.5.7",
337
+ "v8-crud-api/references/progressive-02-where-条件语法速查.md": "5.5.7",
338
+ "v8-debugging/SKILL.md": "5.5.7",
339
+ "v8-explorer-tree/SKILL.md": "5.5.7",
340
+ "v8-export-import/SKILL.md": "5.5.7",
341
+ "v8-export-import/references/progressive-01-excellayout-高级自由布局.md": "5.5.7",
342
+ "v8-export-import/references/progressive-02-powerpoint-导出.md": "5.5.7",
343
+ "v8-export-import/references/progressive-03-安全-性能注意.md": "5.5.7",
344
+ "v8-file-upload/SKILL.md": "5.5.7",
345
+ "v8-file-upload/references/progressive-01-公有桶-vs-私有桶.md": "5.5.7",
346
+ "v8-file-upload/references/progressive-02-office-文件在线编辑版本号规则.md": "5.5.7",
347
+ "v8-formengine-http/SKILL.md": "5.5.7",
348
+ "v8-frontend-events/SKILL.md": "5.5.7",
349
+ "v8-frontend-events/references/bluetooth-print-api.md": "5.5.7",
350
+ "v8-frontend-events/references/bluetooth-print.md": "5.5.7",
351
+ "v8-frontend-events/references/progressive-01-列表事件.md": "5.5.7",
352
+ "v8-http-integration/SKILL.md": "5.5.7",
353
+ "v8-http-integration/references/progressive-01-get-请求.md": "5.5.7",
354
+ "v8-http-integration/references/progressive-02-错误处理模式.md": "5.5.7",
355
+ "v8-image-processing/SKILL.md": "5.5.7",
356
+ "v8-image-processing/agents/openai.yaml": "5.5.7",
357
+ "v8-image-processing/references/api-reference.md": "5.5.7",
358
+ "v8-menu-buttons/SKILL.md": "5.5.7",
359
+ "v8-menu-buttons/references/progressive-01-2-按钮对象-schema.md": "5.5.7",
360
+ "v8-menu-buttons/references/progressive-02-8-模式-f-后台任务按钮-长任务.md": "5.5.7",
361
+ "v8-menu-buttons/references/progressive-03-10-反模式-避免.md": "5.5.7",
362
+ "v8-mongodb/SKILL.md": "5.5.7",
363
+ "v8-mq-mqtt/SKILL.md": "5.5.7",
364
+ "v8-mq-mqtt/references/mqtt-production.md": "5.5.7",
365
+ "v8-mq-mqtt/references/progressive-01-v8-mqtt-iot-物联网.md": "5.5.7",
366
+ "v8-mq-mqtt/scripts/check-mqtt-skill-coverage.mjs": "5.5.7",
367
+ "v8-saas-multi-tenant/SKILL.md": "5.5.7",
368
+ "v8-security/SKILL.md": "5.5.7",
369
+ "v8-security/references/progressive-01-2-权限校验.md": "5.5.7",
370
+ "v8-security/references/progressive-02-7-日志记录.md": "5.5.7",
371
+ "v8-sql-query/SKILL.md": "5.5.7",
372
+ "v8-table-event/SKILL.md": "5.5.7",
373
+ "v8-table-event/references/progressive-01-informv8-js-表单打开事件.md": "5.5.7",
374
+ "v8-table-event/references/progressive-02-前端事件名-v8-eventname-可能的值.md": "5.5.7",
375
+ "v8-tcp-integration/SKILL.md": "5.5.7",
376
+ "v8-tcp-integration/agents/openai.yaml": "5.5.7",
377
+ "v8-template-engine/SKILL.md": "5.5.7",
378
+ "v8-utilities/SKILL.md": "5.5.7",
379
+ "v8-utilities/references/client-api-index.md": "5.5.7",
380
+ "v8-utilities/references/platform-http-routes.md": "5.5.7",
381
+ "v8-utilities/references/server-api-index.md": "5.5.7",
382
+ "v8-workflow/SKILL.md": "5.5.7",
383
+ "v8-workflow/references/progressive-01-节点开始-v8-事件.md": "5.5.7",
384
+ "vision-engine/SKILL.md": "5.5.7",
385
+ "vision-engine/agents/openai.yaml": "5.5.7",
386
+ "vision-engine/references/architecture-and-acceptance.md": "5.5.7",
387
+ "workspace-conventions/SKILL.md": "5.5.7",
388
+ "workspace-conventions/references/progressive-01-版本更新日志保护规则-强制.md": "5.5.7",
389
+ "workspace-conventions/references/progressive-02-microi-net-api-本地启动约定.md": "5.5.7",
390
+ "workspace-conventions/references/progressive-03-cli-与-ide-插件错版共存约定.md": "5.5.7"
389
391
  },
390
392
  "files": [
391
393
  ".microi-skills-version.json",
@@ -487,6 +489,7 @@
487
489
  "search-engine/agents/openai.yaml",
488
490
  "spider-engine/SKILL.md",
489
491
  "system-observability/SKILL.md",
492
+ "system-observability/references/memory-incident-triage.md",
490
493
  "translate-engine/SKILL.md",
491
494
  "translate-engine/agents/openai.yaml",
492
495
  "ui-design/SKILL.md",
@@ -1,6 +1,6 @@
1
1
  {
2
- "version": "5.5.5",
2
+ "version": "5.5.7",
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.VSCode/bump-version.js",
5
- "updatedAt": "2026-09-06T20:15:18.246Z"
5
+ "updatedAt": "2026-09-07T15:12:52.375Z"
6
6
  }
@@ -230,18 +230,19 @@ description: Microi 应用商城开发、打包、安装和升级规范。用于
230
230
  - 通用规则:只要副本映射仍属于当前发布契约,本地独立源码和内嵌副本能从共同基线安全合并,官网单独缺少内嵌引擎应视为不完整副本。JSON 合并前只从共同基线恢复该引擎的结构骨架;有官网独立文件时继续把它作为官网代码侧,无独立文件时把共同基线代码视为官网未修改,再执行正文三方合并并将结果写回内嵌副本。写回后必须按 `SysApiEngines.length` 重算 `PackageInfo.ApiEngineCount`。若共同基线引擎 Id 已被其它 Key 占用,或任意两侧同一代码位置实现冲突,仍必须失败关闭;不得通过覆盖/重建整个共同基线来掩盖问题。
231
231
  - 自动化检查:同时覆盖共同基线不存在的首次新增、共同基线存在但官网缺失且本地升级、官网内嵌缺失但官网独立源码升级、共同基线 Id 被其它 Key 占用四种状态;断言声明引擎数等于实际数组长度;再用真实 `microi_itdos` 只读资源重放,确认候选含目标引擎且独立源码与内嵌代码相同,正式发布后执行 SHA 回读和零变更幂等重跑。
232
232
 
233
- ## 复盘:老租户 NULL 数据阻止物理列收紧
233
+ ## 复盘:旧包非空约束阻止租户升级与启动
234
234
 
235
235
  - 触发场景:商城应用包把既有字段从可空升级为 `NOT NULL DEFAULT ...`,老租户的物理列已经存在,但历史记录仍为 `NULL`;导入器直接执行 `ALTER TABLE ... MODIFY COLUMN ... NOT NULL` 时,MySQL 报 `Invalid use of NULL value`,整个安装分片失败。
236
236
  - 根因:物理列同步只比较类型、可空性、默认值和注释,没有在收紧可空性前迁移存量数据。列默认值只影响后续写入,不会自动修复既有 `NULL`。
237
- - 通用规则:当包要求 `NOT NULL`、目标列仍可空且存在历史 `NULL` 时,必须先用包内明确声明的默认值参数化回填,再执行列约束变更;包未声明默认值时失败关闭并报告影响行数,禁止猜测业务值。该步骤必须可重复执行,并允许多节点并发重试后得到同一结果。
238
- - 自动化检查:构造可空旧列及多条 `NULL` 行,断言导入器按“统计 NULL → 参数化回填 → `MODIFY ... NOT NULL`”顺序执行;覆盖字符串、整数、零行、缺失默认值、重复执行,以及商城包中全部发布协议状态字段。
237
+ - 通用规则:除主键 `Id` 外,平台普通物理列一律允许 `NULL`。导入器必须将历史 `PhysicalColumns.IS_NULLABLE=NO` 归一为允许为空,不收紧已有列,不为迁就非空约束而回填零/空串/租户值;业务必填由表单与后端事件校验。默认值独立保留。启动前必需的核心表必须在共享租约内完成可空兼容,再插入运行时接口;不能等商城运行后才修复商城自身的启动前置结构。
238
+ - 自动化检查:构造 `V8Limit NOT NULL` 无默认值的旧表、含 `NULL` 的历史记录及带默认值/注释/排序规则/索引的列;同时覆盖普通列已允许 NULL 但被 DROP DEFAULT 的情况,使用 `SELECT DEFAULT(列) FROM 表 LIMIT 0` 识别元数据无法区分的缺失默认标志。断言 Id 仍为主键、旧数据和列属性保留,随后省略可选字段的 INSERT 成功;同版本重启和二次安装不重复 DDL 或回填业务值。
239
239
 
240
240
  ## 复盘:应用新增菜单未自动授予系统管理员完整权限
241
241
 
242
242
  - 触发场景:应用首次安装或版本更新新增了 `sys_menu`,菜单数据已经存在,但系统管理员看不到入口或只能执行部分按钮;再次人工到角色管理中勾选后才恢复。
243
243
  - 根因:安装器只导入菜单,没有在同一事务内写入 `sys_rolelimit`;历史补丁又把单个管理员角色 Id 和五项旧权限硬编码,只能修复某个菜单,遗漏 `Read`、自定义按钮及其它 `Level >= 9999` 管理员角色。
244
- - 通用规则:安装器只对本次真正新增或从删除状态重新引入的菜单自动授权,不扩大既有菜单的客户权限策略。目标角色必须从当前租户实时读取全部有效 `sys_role.Level >= 9999` 记录;基础权限固定为 `Read/Add/Edit/Del/Export/Import`,并合并菜单 `MoreBtns/ExportMoreBtns/BatchSelectMoreBtns/PageBtns/PageTabs/FormBtns` 中每个按钮的 `Id + Name`,不得加入 `NoDetail/NoSearch` 这类限制权限。
244
+ - 通用规则:安装器只对本次真正新增或从删除状态重新引入的菜单自动授权,不扩大既有菜单的客户权限策略。目标角色必须从当前租户实时读取全部有效 `sys_role.Level >= 9999` 记录;基础权限固定为 `Read/Add/Edit/Del/Export/Import`,并合并菜单 `MoreBtns/ExportMoreBtns/BatchSelectMoreBtns/PageBtns/PageTabs/FormBtns` 中每个按钮的 `Id + Name`,不得加入 `NoDetail/NoSearch` 这类限制权限。
245
+ - 旧账号等级兼容仅限已校验官方平台包:没有上述角色时,可检查固定旧内置角色 `5db47859-35a3-411a-a1f7-99482e057d24` 的 `998/9998` 级记录。仅当至少一个活动账号的数据库 `Level >= 9999` 且该角色所有未删除持有者均为系统管理员时,才为该角色补充本次新增菜单权限;保持角色等级和用户绑定,禁止推广到普通自定义角色。角色引用同时识别字符串数组和 `[{Id:...}]`,不相信引用对象中的缓存 Level。
245
246
  - 幂等与失败边界:已有 `sys_rolelimit` 只能合并、不得删除历史自定义权限;新增行使用“租户 + 角色 + 菜单”的确定性 Id,并在并发主键冲突后重新回读合并。找不到系统管理员、查询失败或任一权限写入失败必须让整个安装事务回滚,不能出现“菜单成功但管理员无权”的半成品。通过 FormEngine 写入以触发共享授权缓存失效。
246
247
  - 自动化检查:覆盖多个系统管理员、已有部分权限、自定义按钮既有 JSON 字符串也有数组、删除菜单恢复、重复安装零新增、两个节点同时插入后合并,以及既有菜单更新不自动扩权;发布门同时校验独立导入器与商城包内嵌副本都包含该能力。
247
248
 
@@ -306,7 +307,7 @@ description: Microi 应用商城开发、打包、安装和升级规范。用于
306
307
  - 触发场景:同一轮主租户批量任务在不同子租户分别报“数据集目标表尚未创建”“接口引擎写入后 HTTP 状态不一致”“既有菜单 Url 唯一冲突”或“未找到 OsClient”;父任务若在目录阶段对全部目标做有副作用自举,还会让一个坏租户阻断其余已可执行租户。
307
308
  - 包结构闭包:任何 `DataSets.TableName` 都必须由同一包的 `DiyTables + DiyFields + DDLStatements + PhysicalColumns` 完整创建或由显式依赖声明保证先安装,不能只因为官方母库已有该表就省略。契约测试要逐个数据集反向验证目标表、主键、字段和物理 DDL,并在真实缺表旧租户执行首次安装与重复安装。
308
309
  - 配置子表种子不能硬编码官方父记录 Id。`InsertIfMissing` 数据集可声明 `ParentBinding:{Field:'SysConfigId',TableName:'sys_config',MatchField:'IsEnable',MatchValue:1}`,仅在目标端查询恰好一条父记录 Id,先绑定外键再检查冲突。0 条、多条、查询失败或不安全标识立即失败;不能覆盖父配置值。导出器须保留该声明,旧导入器必须先升级,不能忽略绑定后按官方 Id 写入。
309
- - 大表物理兼容必须覆盖全部 DDL 路径:`BIT` 不能落入 `varchar` 默认映射,整数显示宽度与纯标签/注释差异不能触发改列;同一个包的字段元数据变化交给物理列阶段统一比较,不能先改再改回。只有默认值变化时使用 `ALTER COLUMN ... SET/DROP DEFAULT`、强回读并禁止 COPY 回退,不能用完整 `MODIFY COLUMN` 重写类型/字符集/历史行;空字符串默认值不等同于无默认值。安装器时间辅助必须自包含,应用文件落库等新增分支也不得直接依赖租户的 DateNow。
310
+ - 大表物理兼容必须覆盖全部 DDL 路径:`BIT` 不能落入 `varchar` 默认映射,整数显示宽度与纯标签/注释差异不能触发改列;同一个包的字段元数据变化交给物理列阶段统一比较,不能先改再改回。普通标量列仅默认值变化时使用 `ALTER COLUMN ... SET DEFAULT`,移除旧值必须设为 `NULL`,禁止 `DROP DEFAULT` 留下省略字段时触发 1364 的标志;强回读并禁止 COPY 回退。TEXT/BLOB 的缺失默认标志只能保留完整定义执行 `MODIFY COLUMN` 修复,不能用不支持的 `ALTER COLUMN SET DEFAULT NULL`。空字符串默认值不等同于 NULL。安装器时间辅助必须自包含,应用文件落库等新增分支也不得直接依赖租户的 DateNow。
310
311
  - 受管接口状态:旧库 `diy_field` 元数据可能落后于 `sys_apiengine` 物理列,导致 FormEngine 返回成功却忽略 `IsEnable/StopHttp`。仅对受信官方 `Managed` 接口的固定布尔控制列,允许在 FormEngine 写后不一致时按稳定 Id 参数化校准物理列、清理租户缓存并严格二次回读;源码、匿名权限、ApiAddress 和租户扩展不得借此绕过三方冲突或所有权保护,二次回读仍不一致必须整包失败。
311
312
  - 菜单与目录隔离:更新既有菜单发生 Url 唯一冲突时,优先保留目标租户当前唯一路由;确需新路由时使用有界、可回读的稳定后缀,不得字符串拼 SQL。子租户目录发现必须是无副作用读取;运行时缺失在单目标投递前按 `sys_osclients` 受控热加载并只记录该租户失败,已经排队的子任务继续监控到终态,禁止一个 `未找到OsClient` 提前终止整批。
312
313
  - 百租户并发边界:父协调任务继续使用集群级防重键;子安装任务必须使用固定商城工作器 `ConcurrencyKey` 在当前运行环境内串行。不能根据 `OsClient` 推断物理库隔离,因为多个子租户可能共享同一数据库;只有未来能由服务端权威连接指纹证明互不共享物理库并建立分组锁时,才允许在不同物理库组间并行。
@@ -176,6 +176,8 @@ description: Microi.Client 源码架构指南。用于修改 Microi.Client Vue
176
176
 
177
177
  ### 本地 ApiBase 与 OsClient 解析(强制)
178
178
 
179
+ - `app.use(router)` 会立即触发首个路由守卫。守卫中的 SSO、认证、菜单请求必须等待 `initApp()` 完成真实租户和系统配置初始化;初始化失败时取消导航并保留启动错误界面。释放初始化等待必须早于 `router.isReady()`,避免彼此等待;禁止将缓存尚未建立时的 `GetOsClient()` 默认值 `iTdos` 发给客户服务器。
180
+
179
181
  - `src/config.json.ApiBaseDev` 是本地默认 API;URL 中 `#` 之前的 `ApiBase`、`OsClient` 必须同时
180
182
  高于 `index.html`、config、Pinia 与 localStorage。解析统一走
181
183
  `src/utils/runtime-endpoint-query.js`,禁止在新入口另写正则形成不同优先级。
@@ -30,6 +30,7 @@ Codex Router 启动后会异步调用 bundled CLI 的 `microi update --backgroun
30
30
  - 接口引擎、表单事件、模块、字段、工作流和数据库结构:先用 `action="list_tools"` / `describe_tool`,再调用对应原始 `microi_*` 工具。写工具必须保留确认口令、审计与回读。
31
31
  - 远程执行与调试:读取 `v8-debugging/SKILL.md`。Codex 用“获取源码 → 远程执行 → 定位堆栈/日志 → 最小补丁 → 再执行”的结构化循环代替 VS Code DAP 的可视化逐行面板;不得把未执行的源码检查称为真机调试成功。
32
32
  - 性能测试:读取 `performance-testing/SKILL.md`,限制并发并输出样本、P95/P99、错误率和停止条件。
33
+ - 系统日志、内存吃满、OOM 与接口/V8 异常分配:读取 `system-observability/SKILL.md` 及其内存事故手册,使用专用 MCP 的 `Capabilities` → `Memory` → 事故历史/详情 → `Trace`,先查采集质量再归因。
33
34
  - 微应用:读取 `microi-microservice/SKILL.md`,使用 scaffold、source sync、stream publish 和发布回读原工具;本地构建前遵守内存保护。
34
35
  - Playwright:读取 `playwright-e2e/SKILL.md`,使用当前已登录浏览器或受控 Playwright;报告必须来自实际页面执行。
35
36
  - 其他领域:从本插件同级 Skills 里选择最小相关 Skill,并完整读取后执行。
@@ -22,6 +22,8 @@ description: Microi 安装、部署、升级和本地运行指南。用于 Docke
22
22
 
23
23
  ## 先确认部署类型
24
24
 
25
+ 用户明确要求同版本仅发布 Docker 热修复时,运行 `Microi一键编译发布.sh --docker-only-hotfix` 并选择后端镜像方案。该入口保持当前版本,禁止 NuGet、文档和官方资源数据库发布,同时保留 Full、候选源码一致性、混淆后冒烟和镜像门禁。修复应进入本地源码及捆绑资源,由目标程序启动升级;不得通过直接改生产表结构代替源码修复。
26
+
25
27
  | 场景 | 推荐入口 |
26
28
  |---|---|
27
29
  | 生产 Linux、快速安装、可滚动升级 | Docker/Compose |
@@ -169,6 +171,8 @@ Microi API 安装时,`AppSettings` 与同名容器环境变量只允许以下
169
171
 
170
172
  ## 禁止事项
171
173
 
174
+ - 启动字段门禁必须检查核心普通列的可空约束,不能仅以“字段存在”判定就绪。旧库非空列在程序共享租约内放宽为 `NULL`,保留 Id/数据库主键、列类型、默认值、注释和索引;同版本热修复也需回读真实结构。修复必须在插入启动接口之前执行,禁止通过逐次补默认值掩盖结构问题。
175
+
172
176
  - 不把数据库/Redis/MinIO 密码写入仓库、日志、命令回显或最终答复。
173
177
  - 不因容器更新而删除数据库卷、对象存储卷或日志 spool。
174
178
  - 不在所有节点同时硬重启。