openyida 2026.9.21 → 2026.9.22-beta.2

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.
Files changed (334) hide show
  1. package/README.md +14 -20
  2. package/bin/yida.js +6 -11
  3. package/lib/app/app-list.js +3 -7
  4. package/lib/app/canvas-compile.js +12 -22
  5. package/lib/app/check-prd-completeness.js +0 -7
  6. package/lib/app/create-app.js +1 -4
  7. package/lib/app/create-form/args.js +12 -37
  8. package/lib/app/create-form/batch.js +11 -86
  9. package/lib/app/create-form.js +86 -193
  10. package/lib/app/create-page.js +17 -84
  11. package/lib/app/custom-theme.js +0 -11
  12. package/lib/app/form-field-validator.js +41 -26
  13. package/lib/app/form-open-guard.js +10 -97
  14. package/lib/app/get-form-config.js +0 -1
  15. package/lib/app/inline-css-guard.js +31 -1
  16. package/lib/app/services/form-compiler.js +4 -2
  17. package/lib/app/theme-from-design.js +41 -144
  18. package/lib/app/theme-presets.js +1 -1
  19. package/lib/app/update-app.js +13 -63
  20. package/lib/asset/ai-image.js +9 -59
  21. package/lib/asset/asset-cmd.js +7 -18
  22. package/lib/asset/asset-plan.js +9 -102
  23. package/lib/asset/asset-resolve.js +10 -55
  24. package/lib/asset/asset-status.js +4 -5
  25. package/lib/asset/host-capabilities.js +2 -11
  26. package/lib/asset/url-verify.js +4 -19
  27. package/lib/auth/dws-sync.js +148 -0
  28. package/lib/auth/token-auth.js +73 -9
  29. package/lib/auth/token-store.js +50 -0
  30. package/lib/connector/connector-test.js +5 -19
  31. package/lib/connector/contract.js +1 -3
  32. package/lib/core/agent-capabilities.js +16 -19
  33. package/lib/core/command-manifest.js +40 -329
  34. package/lib/core/locales/en.js +17 -74
  35. package/lib/core/locales/zh.js +16 -73
  36. package/lib/core/redact.js +10 -15
  37. package/lib/core/sample.js +30 -72
  38. package/lib/core/utils.js +4 -0
  39. package/lib/design-plan/design-plan.js +4 -51
  40. package/lib/design-plan/init.js +26 -121
  41. package/lib/design-plan/materialize.js +348 -451
  42. package/lib/design-plan/normalize.js +29 -74
  43. package/lib/design-plan/parallel.js +16 -71
  44. package/lib/design-plan/patch.js +16 -63
  45. package/lib/design-plan/preview.js +8 -6
  46. package/lib/design-plan/validate.js +11 -71
  47. package/lib/process/create-process.js +50 -84
  48. package/lib/samples/openyida-scaffold/canvas-form-drawer.canvas.jsx +90 -20
  49. package/lib/samples/openyida-scaffold/canvas-nav/content.jsx +13 -93
  50. package/lib/samples/openyida-scaffold/canvas-nav/data.jsx +18 -100
  51. package/lib/samples/openyida-scaffold/canvas-nav/mixed.jsx +4 -6
  52. package/lib/samples/openyida-scaffold/canvas-nav/shared.jsx +5 -5
  53. package/lib/samples/openyida-scaffold/canvas-nav/side.jsx +2 -1
  54. package/lib/samples/openyida-scaffold/canvas-nav/sidebar.jsx +1 -1
  55. package/lib/samples/openyida-scaffold/canvas-nav/top.jsx +9 -15
  56. package/lib/samples/yida-canvas-table-form/table-form-batch-submit.canvas.jsx +83 -9
  57. package/lib/samples/yida-rechart/trend-combo.canvas.jsx +87 -14
  58. package/package.json +1 -3
  59. package/scripts/postinstall.js +3 -3
  60. package/yida-skills/SKILL.md +16 -19
  61. package/yida-skills/references/official-example-schema-patterns.md +1 -1
  62. package/yida-skills/references/yida-api.md +0 -4
  63. package/yida-skills/skills/yida-app/SKILL.md +23 -46
  64. package/yida-skills/skills/yida-app/workflow/parallel-work.md +6 -15
  65. package/yida-skills/skills/yida-app/workflow/plan/step-1-understand.md +1 -1
  66. package/yida-skills/skills/yida-app/workflow/plan/step-2-confirm.md +1 -1
  67. package/yida-skills/skills/yida-app/workflow/plan/step-4-deliver.md +15 -29
  68. package/yida-skills/skills/yida-app/workflow/plan/workflow.md +11 -29
  69. package/yida-skills/skills/yida-app/workflow/step-1-resource-context.md +2 -4
  70. package/yida-skills/skills/yida-app/workflow/step-2-design.md +9 -23
  71. package/yida-skills/skills/yida-app/workflow/step-3-create-or-reuse-app.md +4 -6
  72. package/yida-skills/skills/yida-app/workflow/step-4-forms-processes.md +4 -15
  73. package/yida-skills/skills/yida-app/workflow/step-6-main-page.md +4 -6
  74. package/yida-skills/skills/yida-app/workflow/step-7-page-code.md +9 -15
  75. package/yida-skills/skills/yida-app/workflow/step-8-publish-navigation.md +11 -25
  76. package/yida-skills/skills/yida-app/workflow/step-9-output-finish.md +28 -68
  77. package/yida-skills/skills/yida-canvas-custom-page/SKILL.md +43 -42
  78. package/yida-skills/skills/yida-canvas-custom-page/references/canvas-style-implementation-guide.md +44 -60
  79. package/yida-skills/skills/yida-canvas-custom-page/references/canvas-theme-provider.md +50 -72
  80. package/yida-skills/skills/yida-canvas-custom-page/references/component-library-guide.md +1 -13
  81. package/yida-skills/skills/yida-canvas-custom-page/references/data-bridge-guide.md +1 -140
  82. package/yida-skills/skills/yida-canvas-custom-page/references/navigation-and-entry-guide.md +72 -101
  83. package/yida-skills/skills/yida-canvas-custom-page/references/page-generation-guide.md +32 -35
  84. package/yida-skills/skills/yida-canvas-custom-page/scripts/build-canvas-theme.js +3 -29
  85. package/yida-skills/skills/yida-canvas-custom-page/scripts/canvas-theme-provider.template.jsx +6 -69
  86. package/yida-skills/skills/yida-canvas-data-binding/SKILL.md +0 -26
  87. package/yida-skills/skills/yida-create-app/SKILL.md +0 -2
  88. package/yida-skills/skills/yida-create-form-page/SKILL.md +58 -72
  89. package/yida-skills/skills/yida-create-form-page/references/advanced-form-modes.md +5 -5
  90. package/yida-skills/skills/yida-create-form-page/references/association-form-field.md +4 -4
  91. package/yida-skills/skills/yida-create-form-page/references/batch-forms.md +5 -6
  92. package/yida-skills/skills/yida-create-form-page/references/field-definition-guide.md +19 -7
  93. package/yida-skills/skills/yida-create-form-page/references/form-field-properties.md +44 -62
  94. package/yida-skills/skills/yida-create-page/SKILL.md +6 -14
  95. package/yida-skills/skills/yida-create-process/SKILL.md +2 -13
  96. package/yida-skills/skills/yida-custom-page/SKILL.md +0 -2
  97. package/yida-skills/skills/yida-custom-page/references/design-system.md +1 -1
  98. package/yida-skills/skills/yida-dashboard/SKILL.md +4 -5
  99. package/yida-skills/skills/yida-data-management/SKILL.md +2 -4
  100. package/yida-skills/skills/yida-data-management/references/data-format-guide.md +4 -4
  101. package/yida-skills/skills/yida-design/SKILL.md +14 -29
  102. package/yida-skills/skills/yida-design/references/app/blueprint.md +70 -0
  103. package/yida-skills/skills/yida-design/references/app/navigation-patterns.md +43 -0
  104. package/yida-skills/skills/yida-design/references/app/role-journey.md +30 -0
  105. package/yida-skills/skills/yida-design/references/ask-human-interaction-contract.md +42 -67
  106. package/yida-skills/skills/yida-design/references/asset-workflow.md +2 -6
  107. package/yida-skills/skills/yida-design/references/design-mode.md +4 -4
  108. package/yida-skills/skills/yida-design/references/page-quality-gates.md +38 -26
  109. package/yida-skills/skills/yida-design/references/style-design-selection.md +137 -0
  110. package/yida-skills/skills/yida-design/references/style-designs/_design-md-template.md +185 -0
  111. package/yida-skills/skills/yida-design/references/style-designs/aqua-service-progress-dashboard.md +242 -0
  112. package/yida-skills/skills/yida-design/references/style-designs/blue-insight-operations-dashboard.md +243 -0
  113. package/yida-skills/skills/yida-design/references/style-designs/blue-productivity-insight-workbench.md +242 -0
  114. package/yida-skills/skills/yida-design/references/style-designs/command-filter-card-console.md +304 -0
  115. package/yida-skills/skills/yida-design/references/style-designs/contrast-command-analytics-workbench.md +261 -0
  116. package/yida-skills/skills/yida-design/references/style-designs/dark-stage-analytic-dashboard.md +369 -0
  117. package/yida-skills/skills/yida-design/references/style-designs/filterable-card-catalog.md +354 -0
  118. package/yida-skills/skills/yida-design/references/style-designs/green-timeline-progress-workbench.md +250 -0
  119. package/yida-skills/skills/yida-design/references/style-designs/registry.md +117 -0
  120. package/yida-skills/skills/yida-design/references/style-designs/soft-analytic-workbench.md +348 -0
  121. package/yida-skills/skills/yida-design/references/style-designs/soft-blue-grid-analytic-dashboard.md +658 -0
  122. package/yida-skills/skills/yida-design/references/style-designs/soft-bordered-analytic-workbench.md +385 -0
  123. package/yida-skills/skills/yida-design/references/style-designs/soft-curated-filter-gallery.md +300 -0
  124. package/yida-skills/skills/yida-design/references/style-designs/soft-modular-analytic-workbench.md +404 -0
  125. package/yida-skills/skills/yida-design/references/style-designs/soft-progress-analytics-workbench.md +382 -0
  126. package/yida-skills/skills/yida-design/references/style-designs/soft-timeline-analytics-workbench.md +367 -0
  127. package/yida-skills/skills/yida-design/references/style-designs/teal-rail-analytics-workbench.md +341 -0
  128. package/yida-skills/skills/yida-design/references/theme/app-custom-theme-template.css +432 -350
  129. package/yida-skills/skills/yida-design/references/visual-decision-engine.md +143 -19
  130. package/yida-skills/skills/yida-design/references/visual-scaffold-recipes.md +27 -15
  131. package/yida-skills/skills/yida-design/sub_skill/page-design/SKILL.md +0 -4
  132. package/yida-skills/skills/yida-design/sub_skill/yida-design-plan/SKILL.md +8 -22
  133. package/yida-skills/skills/yida-design/sub_skill/yida-design-plan/assets/README.md +10 -14
  134. package/yida-skills/skills/yida-design/sub_skill/yida-design-plan/assets/build-plan-template.html +4 -9
  135. package/yida-skills/skills/yida-design/sub_skill/yida-design-plan/references/build-plan-compact-schema.md +27 -49
  136. package/yida-skills/skills/yida-design/sub_skill/yida-design-plan/references/build-plan-schema.md +154 -33
  137. package/yida-skills/skills/yida-design/sub_skill/yida-design-plan/references/visual-design.md +127 -48
  138. package/yida-skills/skills/yida-design/sub_skill/yida-design-plan/references/visual-theme-selection.md +51 -37
  139. package/yida-skills/skills/yida-design/sub_skill/yida-design-plan/scripts/render_build_plan.py +48 -43
  140. package/yida-skills/skills/yida-design/sub_skill/yida-design-plan/scripts/validate_design_themes.py +190 -0
  141. package/yida-skills/skills/yida-design/sub_skill/yida-design-plan/templates/design-themes/README.md +98 -0
  142. package/yida-skills/skills/yida-design/sub_skill/yida-design-plan/templates/design-themes/airy-media-grid.md +339 -0
  143. package/yida-skills/skills/yida-design/sub_skill/yida-design-plan/templates/design-themes/airy-modular-clarity.md +348 -0
  144. package/yida-skills/skills/yida-design/sub_skill/yida-design-plan/templates/design-themes/airy-structured-clarity.md +344 -0
  145. package/yida-skills/skills/yida-design/sub_skill/yida-design-plan/templates/design-themes/ambient-halo-layered.md +345 -0
  146. package/yida-skills/skills/yida-design/sub_skill/yida-design-plan/templates/design-themes/dark-focus-layered.md +355 -0
  147. package/yida-skills/skills/yida-design/sub_skill/yida-design-plan/templates/design-themes/dark-luminous-modular.md +377 -0
  148. package/yida-skills/skills/yida-design/sub_skill/yida-design-plan/templates/design-themes/deep-stage-duotone.md +352 -0
  149. package/yida-skills/skills/yida-design/sub_skill/yida-design-plan/templates/design-themes/hairline-runway-clarity.md +389 -0
  150. package/yida-skills/skills/yida-design/sub_skill/yida-design-plan/templates/design-themes/high-contrast-modular.md +364 -0
  151. package/yida-skills/skills/yida-design/sub_skill/yida-design-plan/templates/design-themes/index.json +329 -0
  152. package/yida-skills/skills/yida-design/sub_skill/yida-design-plan/templates/design-themes/interlocked-vivid-modules.md +348 -0
  153. package/yida-skills/skills/yida-design/sub_skill/yida-design-plan/templates/design-themes/matrix-grid-focus.md +345 -0
  154. package/yida-skills/skills/yida-design/sub_skill/yida-design-plan/templates/design-themes/media-rail-inspector.md +379 -0
  155. package/yida-skills/skills/yida-design/sub_skill/yida-design-plan/templates/design-themes/mist-layered-signal.md +347 -0
  156. package/yida-skills/skills/yida-design/sub_skill/yida-design-plan/templates/design-themes/modular-rail-signal.md +352 -0
  157. package/yida-skills/skills/yida-design/sub_skill/yida-design-plan/templates/design-themes/mono-grid-signal.md +386 -0
  158. package/yida-skills/skills/yida-design/sub_skill/yida-design-plan/templates/design-themes/ribbon-ledger-lift.md +384 -0
  159. package/yida-skills/skills/yida-design/sub_skill/yida-design-plan/templates/design-themes/segmented-meter-clarity.md +388 -0
  160. package/yida-skills/skills/yida-design/sub_skill/yida-design-plan/templates/design-themes/split-rail-precision.md +341 -0
  161. package/yida-skills/skills/yida-design/sub_skill/yida-design-plan/templates/design-themes/status-framed-media-grid.md +361 -0
  162. package/yida-skills/skills/yida-design/workflow/output-design.md +375 -117
  163. package/yida-skills/skills/yida-design/workflow/output-prd.md +185 -0
  164. package/yida-skills/skills/yida-design/workflow/step-1-read-brief.md +1 -1
  165. package/yida-skills/skills/yida-design/workflow/step-2-theme-system.md +29 -33
  166. package/yida-skills/skills/yida-design/workflow/step-4-wireframe-interaction.md +1 -3
  167. package/yida-skills/skills/yida-design/workflow/step-5-visual-states.md +106 -22
  168. package/yida-skills/skills/yida-design/workflow/step-6-handoff.md +22 -15
  169. package/yida-skills/skills/yida-form-permission/SKILL.md +0 -6
  170. package/yida-skills/skills/yida-image-assets/SKILL.md +50 -73
  171. package/yida-skills/skills/yida-image-assets/references/manifest-contract.md +52 -82
  172. package/yida-skills/skills/yida-image-assets/references/source-policy.md +15 -14
  173. package/yida-skills/skills/yida-integration/SKILL.md +0 -1
  174. package/yida-skills/skills/yida-login/SKILL.md +0 -2
  175. package/yida-skills/skills/yida-nav-group/SKILL.md +2 -4
  176. package/yida-skills/skills/yida-nav-shell/SKILL.md +12 -36
  177. package/yida-skills/skills/yida-nav-shell/references/nav-shell-patterns.md +136 -79
  178. package/yida-skills/skills/yida-page-config/SKILL.md +4 -13
  179. package/yida-skills/skills/yida-prd/SKILL.md +3 -5
  180. package/yida-skills/skills/yida-prd/references/app/blueprint.md +4 -4
  181. package/yida-skills/skills/yida-prd/references/app/navigation-patterns.md +3 -6
  182. package/yida-skills/skills/yida-prd/references/app/role-journey.md +3 -5
  183. package/yida-skills/skills/yida-prd/references/plan-content.md +0 -4
  184. package/yida-skills/skills/yida-prd/workflow/output-prd.md +11 -18
  185. package/yida-skills/skills/yida-prd/workflow/plan-business.md +4 -4
  186. package/yida-skills/skills/yida-prd/workflow/step-2-information-architecture.md +8 -11
  187. package/yida-skills/skills/yida-publish-page/SKILL.md +1 -9
  188. package/yida-skills/skills/yida-requirement-analysis/SKILL.md +39 -10
  189. package/yida-skills/skills/yida-requirement-analysis/workflow/prepare-brief.md +71 -40
  190. package/yida-skills/skills-index.json +16 -36
  191. package/lib/app/application-entry-urls.js +0 -31
  192. package/lib/app/application-style.js +0 -69
  193. package/lib/app/canvas-icon-exports.json +0 -6160
  194. package/lib/app/canvas-icon-guard.js +0 -87
  195. package/lib/app/canvas-navigation-guard.js +0 -84
  196. package/lib/app/canvas-path-guard.js +0 -78
  197. package/lib/app/canvas-theme-guard.js +0 -184
  198. package/lib/app/form-data-response-guard.js +0 -57
  199. package/lib/asset/asset-execution.js +0 -79
  200. package/lib/core/css-structure.js +0 -37
  201. package/lib/design/check-design.js +0 -51
  202. package/lib/design/document.js +0 -458
  203. package/lib/design/icon-contrast.js +0 -85
  204. package/lib/design/page-content.js +0 -11
  205. package/lib/design-plan/artifact-updates.js +0 -117
  206. package/lib/design-plan/confirmation.js +0 -13
  207. package/lib/design-plan/entry-navigation.js +0 -97
  208. package/lib/design-plan/navigation-policy.js +0 -38
  209. package/lib/design-plan/rebase.js +0 -60
  210. package/lib/design-plan/themes.js +0 -101
  211. package/lib/design-plan/visual-policy.js +0 -42
  212. package/lib/samples/openyida-scaffold/canvas-admin-entry.jsx +0 -62
  213. package/lib/samples/openyida-scaffold/canvas-navigation.jsx +0 -56
  214. package/lib/samples/openyida-scaffold/canvas-view-state.jsx +0 -74
  215. package/yida-skills/skills/yida-app/references/entry-navigation.md +0 -193
  216. package/yida-skills/skills/yida-canvas-custom-page/references/view-state-recovery.md +0 -52
  217. package/yida-skills/skills/yida-canvas-data-binding/references/business-action-permissions.md +0 -31
  218. package/yida-skills/skills/yida-design/references/application-style-library.md +0 -93
  219. package/yida-skills/skills/yida-design/references/application-theme-consistency.md +0 -150
  220. package/yida-skills/skills/yida-design/references/native-form-styles.md +0 -208
  221. package/yida-skills/skills/yida-design/references/navigation-decision.md +0 -53
  222. package/yida-skills/skills/yida-design/references/page-continuity.md +0 -42
  223. package/yida-skills/skills/yida-design/references/theme/application-style-recipes.css +0 -58
  224. package/yida-skills/skills/yida-design/references/theme-selection.md +0 -67
  225. package/yida-skills/skills/yida-design/scripts/validate_design_themes.py +0 -302
  226. package/yida-skills/skills/yida-design/templates/application-styles.json +0 -398
  227. package/yida-skills/skills/yida-design/templates/design-themes/README.md +0 -73
  228. package/yida-skills/skills/yida-design/templates/design-themes/app-amber/app_theme.css +0 -748
  229. package/yida-skills/skills/yida-design/templates/design-themes/app-amber/design.md +0 -274
  230. package/yida-skills/skills/yida-design/templates/design-themes/app-amber/form-layout.json +0 -15
  231. package/yida-skills/skills/yida-design/templates/design-themes/app-editorial/app_theme.css +0 -748
  232. package/yida-skills/skills/yida-design/templates/design-themes/app-editorial/design.md +0 -274
  233. package/yida-skills/skills/yida-design/templates/design-themes/app-editorial/form-layout.json +0 -14
  234. package/yida-skills/skills/yida-design/templates/design-themes/app-executive/app_theme.css +0 -748
  235. package/yida-skills/skills/yida-design/templates/design-themes/app-executive/design.md +0 -274
  236. package/yida-skills/skills/yida-design/templates/design-themes/app-executive/form-layout.json +0 -13
  237. package/yida-skills/skills/yida-design/templates/design-themes/app-finance/app_theme.css +0 -748
  238. package/yida-skills/skills/yida-design/templates/design-themes/app-finance/design.md +0 -274
  239. package/yida-skills/skills/yida-design/templates/design-themes/app-finance/form-layout.json +0 -14
  240. package/yida-skills/skills/yida-design/templates/design-themes/app-glass/app_theme.css +0 -748
  241. package/yida-skills/skills/yida-design/templates/design-themes/app-glass/design.md +0 -274
  242. package/yida-skills/skills/yida-design/templates/design-themes/app-glass/form-layout.json +0 -14
  243. package/yida-skills/skills/yida-design/templates/design-themes/app-graphite/app_theme.css +0 -748
  244. package/yida-skills/skills/yida-design/templates/design-themes/app-graphite/design.md +0 -274
  245. package/yida-skills/skills/yida-design/templates/design-themes/app-graphite/form-layout.json +0 -14
  246. package/yida-skills/skills/yida-design/templates/design-themes/app-line/app_theme.css +0 -748
  247. package/yida-skills/skills/yida-design/templates/design-themes/app-line/design.md +0 -274
  248. package/yida-skills/skills/yida-design/templates/design-themes/app-line/form-layout.json +0 -13
  249. package/yida-skills/skills/yida-design/templates/design-themes/app-neon/app_theme.css +0 -748
  250. package/yida-skills/skills/yida-design/templates/design-themes/app-neon/design.md +0 -274
  251. package/yida-skills/skills/yida-design/templates/design-themes/app-neon/form-layout.json +0 -14
  252. package/yida-skills/skills/yida-design/templates/design-themes/app-nordic/app_theme.css +0 -754
  253. package/yida-skills/skills/yida-design/templates/design-themes/app-nordic/design.md +0 -279
  254. package/yida-skills/skills/yida-design/templates/design-themes/app-nordic/form-layout.json +0 -13
  255. package/yida-skills/skills/yida-design/templates/design-themes/app-paper/app_theme.css +0 -748
  256. package/yida-skills/skills/yida-design/templates/design-themes/app-paper/design.md +0 -274
  257. package/yida-skills/skills/yida-design/templates/design-themes/app-paper/form-layout.json +0 -13
  258. package/yida-skills/skills/yida-design/templates/design-themes/app-platinum/app_theme.css +0 -748
  259. package/yida-skills/skills/yida-design/templates/design-themes/app-platinum/design.md +0 -274
  260. package/yida-skills/skills/yida-design/templates/design-themes/app-platinum/form-layout.json +0 -14
  261. package/yida-skills/skills/yida-design/templates/design-themes/app-plum/app_theme.css +0 -748
  262. package/yida-skills/skills/yida-design/templates/design-themes/app-plum/design.md +0 -274
  263. package/yida-skills/skills/yida-design/templates/design-themes/app-plum/form-layout.json +0 -14
  264. package/yida-skills/skills/yida-design/templates/design-themes/app-pop/app_theme.css +0 -758
  265. package/yida-skills/skills/yida-design/templates/design-themes/app-pop/design.md +0 -281
  266. package/yida-skills/skills/yida-design/templates/design-themes/app-pop/form-layout.json +0 -14
  267. package/yida-skills/skills/yida-design/templates/design-themes/app-sage/app_theme.css +0 -748
  268. package/yida-skills/skills/yida-design/templates/design-themes/app-sage/design.md +0 -274
  269. package/yida-skills/skills/yida-design/templates/design-themes/app-sage/form-layout.json +0 -14
  270. package/yida-skills/skills/yida-design/templates/design-themes/app-teal/app_theme.css +0 -748
  271. package/yida-skills/skills/yida-design/templates/design-themes/app-teal/design.md +0 -274
  272. package/yida-skills/skills/yida-design/templates/design-themes/app-teal/form-layout.json +0 -14
  273. package/yida-skills/skills/yida-design/templates/design-themes/app-terminal/app_theme.css +0 -754
  274. package/yida-skills/skills/yida-design/templates/design-themes/app-terminal/design.md +0 -279
  275. package/yida-skills/skills/yida-design/templates/design-themes/app-terminal/form-layout.json +0 -14
  276. package/yida-skills/skills/yida-design/templates/design-themes/app-ticket/app_theme.css +0 -752
  277. package/yida-skills/skills/yida-design/templates/design-themes/app-ticket/design.md +0 -278
  278. package/yida-skills/skills/yida-design/templates/design-themes/app-ticket/form-layout.json +0 -13
  279. package/yida-skills/skills/yida-design/templates/design-themes/app-wire/app_theme.css +0 -748
  280. package/yida-skills/skills/yida-design/templates/design-themes/app-wire/design.md +0 -274
  281. package/yida-skills/skills/yida-design/templates/design-themes/app-wire/form-layout.json +0 -14
  282. package/yida-skills/skills/yida-design/templates/design-themes/basic-tokens.json +0 -118
  283. package/yida-skills/skills/yida-design/templates/design-themes/dark-inset-hairline/app_theme.css +0 -690
  284. package/yida-skills/skills/yida-design/templates/design-themes/dark-inset-hairline/design.md +0 -382
  285. package/yida-skills/skills/yida-design/templates/design-themes/dark-inset-hairline/form-layout.json +0 -13
  286. package/yida-skills/skills/yida-design/templates/design-themes/dark-rail-fine-lines/app_theme.css +0 -691
  287. package/yida-skills/skills/yida-design/templates/design-themes/dark-rail-fine-lines/design.md +0 -380
  288. package/yida-skills/skills/yida-design/templates/design-themes/dark-rail-fine-lines/form-layout.json +0 -13
  289. package/yida-skills/skills/yida-design/templates/design-themes/dark-rail-signal-panels/app_theme.css +0 -696
  290. package/yida-skills/skills/yida-design/templates/design-themes/dark-rail-signal-panels/design.md +0 -378
  291. package/yida-skills/skills/yida-design/templates/design-themes/dark-rail-signal-panels/form-layout.json +0 -13
  292. package/yida-skills/skills/yida-design/templates/design-themes/free-creative/app_theme.css +0 -689
  293. package/yida-skills/skills/yida-design/templates/design-themes/free-creative/design.md +0 -238
  294. package/yida-skills/skills/yida-design/templates/design-themes/free-creative/form-layout.json +0 -13
  295. package/yida-skills/skills/yida-design/templates/design-themes/graphite-bevel-grid/app_theme.css +0 -692
  296. package/yida-skills/skills/yida-design/templates/design-themes/graphite-bevel-grid/design.md +0 -375
  297. package/yida-skills/skills/yida-design/templates/design-themes/graphite-bevel-grid/form-layout.json +0 -13
  298. package/yida-skills/skills/yida-design/templates/design-themes/hairline-shared-bands/app_theme.css +0 -691
  299. package/yida-skills/skills/yida-design/templates/design-themes/hairline-shared-bands/design.md +0 -362
  300. package/yida-skills/skills/yida-design/templates/design-themes/hairline-shared-bands/form-layout.json +0 -13
  301. package/yida-skills/skills/yida-design/templates/design-themes/hairline-soft-blocks/app_theme.css +0 -691
  302. package/yida-skills/skills/yida-design/templates/design-themes/hairline-soft-blocks/design.md +0 -409
  303. package/yida-skills/skills/yida-design/templates/design-themes/hairline-soft-blocks/form-layout.json +0 -13
  304. package/yida-skills/skills/yida-design/templates/design-themes/index.json +0 -464
  305. package/yida-skills/skills/yida-design/templates/design-themes/ink-glow-soft-panels/app_theme.css +0 -701
  306. package/yida-skills/skills/yida-design/templates/design-themes/ink-glow-soft-panels/design.md +0 -379
  307. package/yida-skills/skills/yida-design/templates/design-themes/ink-glow-soft-panels/form-layout.json +0 -13
  308. package/yida-skills/skills/yida-design/templates/design-themes/inset-frame-pixel-rhythm/app_theme.css +0 -691
  309. package/yida-skills/skills/yida-design/templates/design-themes/inset-frame-pixel-rhythm/design.md +0 -404
  310. package/yida-skills/skills/yida-design/templates/design-themes/inset-frame-pixel-rhythm/form-layout.json +0 -13
  311. package/yida-skills/skills/yida-design/templates/design-themes/outlined-texture-duotone/app_theme.css +0 -698
  312. package/yida-skills/skills/yida-design/templates/design-themes/outlined-texture-duotone/design.md +0 -389
  313. package/yida-skills/skills/yida-design/templates/design-themes/outlined-texture-duotone/form-layout.json +0 -13
  314. package/yida-skills/skills/yida-design/templates/design-themes/soft-inset-surfaces/app_theme.css +0 -691
  315. package/yida-skills/skills/yida-design/templates/design-themes/soft-inset-surfaces/design.md +0 -372
  316. package/yida-skills/skills/yida-design/templates/design-themes/soft-inset-surfaces/form-layout.json +0 -13
  317. package/yida-skills/skills/yida-design/templates/design-themes/soft-outline-rhythm/app_theme.css +0 -690
  318. package/yida-skills/skills/yida-design/templates/design-themes/soft-outline-rhythm/design.md +0 -455
  319. package/yida-skills/skills/yida-design/templates/design-themes/soft-outline-rhythm/form-layout.json +0 -13
  320. package/yida-skills/skills/yida-design/templates/design-themes/soft-rail-bold-band/app_theme.css +0 -698
  321. package/yida-skills/skills/yida-design/templates/design-themes/soft-rail-bold-band/design.md +0 -394
  322. package/yida-skills/skills/yida-design/templates/design-themes/soft-rail-bold-band/form-layout.json +0 -13
  323. package/yida-skills/skills/yida-design/templates/design-themes/soft-spectral-panels/app_theme.css +0 -692
  324. package/yida-skills/skills/yida-design/templates/design-themes/soft-spectral-panels/design.md +0 -391
  325. package/yida-skills/skills/yida-design/templates/design-themes/soft-spectral-panels/form-layout.json +0 -13
  326. package/yida-skills/skills/yida-design/templates/design-themes/warm-canvas-contrast-panels/app_theme.css +0 -711
  327. package/yida-skills/skills/yida-design/templates/design-themes/warm-canvas-contrast-panels/design.md +0 -408
  328. package/yida-skills/skills/yida-design/templates/design-themes/warm-canvas-contrast-panels/form-layout.json +0 -13
  329. package/yida-skills/skills/yida-design/templates/design-themes/warm-rail-muted-panels/app_theme.css +0 -692
  330. package/yida-skills/skills/yida-design/templates/design-themes/warm-rail-muted-panels/design.md +0 -383
  331. package/yida-skills/skills/yida-design/templates/design-themes/warm-rail-muted-panels/form-layout.json +0 -13
  332. package/yida-skills/skills/yida-design/templates/navigation-styles.json +0 -769
  333. package/yida-skills/skills/yida-requirement-analysis/references/experience-groups.md +0 -79
  334. package/yida-skills/skills/yida-requirement-analysis/references/handoff.md +0 -68
@@ -0,0 +1,341 @@
1
+ ---
2
+ name: "{{PROJECT_NAME}}"
3
+ description: 以白色画布、细线分区、条件式边缘辅助轨和双重对比焦点构成中等密度、低阴影的精密主题。
4
+ themeId: split-rail-precision
5
+ tokens:
6
+ application-global:
7
+ colors:
8
+ "--pod-page-bg-color": "var(--color-white, #fff)"
9
+ "--color-white": "#FFFFFF"
10
+ "--color-brand1-1": "<基于 --color-brand1-6 生成的实际色值:与白色混合 12%,用于悬停>"
11
+ "--color-brand1-2": "<基于 --color-brand1-6 生成的实际色值:与白色混合 88%,用于平台品牌浅色>"
12
+ "--color-brand1-3": "<基于 --color-brand1-6 生成的实际色值:与白色混合 94%,用于浅色导航框架>"
13
+ "--color-brand1-5": "<基于 --color-brand1-6 生成的实际色值:与黑色混合 18%,用于深色导航框架>"
14
+ "--color-brand1-6": "{{PRIMARY_COLOR}}"
15
+ "--color-brand1-9": "<基于 --color-brand1-6 生成的实际色值:与黑色混合 12%,用于按下与激活>"
16
+ "--color-brand1-10": "<基于 --color-brand1-6 生成的实际色值:与白色混合 62%,用于禁用>"
17
+ "--color-line1-1": "#EEEEEE"
18
+ "--color-line1-2": "#DDDDDD"
19
+ "--color-fill1-1": "#F7F7F7"
20
+ "--color-fill1-2": "#F2F2F2"
21
+ "--color-fill1-3": "#E8E8E8"
22
+ "--color-fill1-10": "rgba(255, 255, 255, 0.96)"
23
+ "--color-text1-4": "#102B3A"
24
+ "--color-text1-10": "#666666"
25
+ "--color-text1-3": "#999999"
26
+ typography:
27
+ base:
28
+ "--font-family-base": "Inter, ui-sans-serif, -apple-system, BlinkMacSystemFont, 'Segoe UI', 'PingFang SC', 'Microsoft YaHei', sans-serif"
29
+ subhead:
30
+ "--font-size-subhead": 24px
31
+ "--font-weight-subhead": 650
32
+ "--font-lineheight-subhead": 1.3
33
+ body-2:
34
+ "--font-size-body-2": 16px
35
+ "--font-weight-body-2": 600
36
+ "--font-lineheight-body-2": 1.4
37
+ body-1:
38
+ "--font-size-body-1": 14px
39
+ "--font-weight-body-1": 400
40
+ "--font-lineheight-body-1": 1.5
41
+ table:
42
+ "--font-size-table": 14px
43
+ "--font-weight-table": 400
44
+ "--font-lineheight-table": 1.45
45
+ caption:
46
+ "--font-size-caption": 12px
47
+ "--font-weight-caption": 400
48
+ "--font-lineheight-caption": 1.4
49
+ spacing:
50
+ "--s-1": 4px
51
+ "--s-2": 8px
52
+ "--s-3": 12px
53
+ "--s-4": 16px
54
+ "--s-6": 24px
55
+ "--s-8": 32px
56
+ rounded:
57
+ "--corner-zero": 0px
58
+ "--corner-1": 4px
59
+ "--corner-2": 8px
60
+ "--corner-3": 10px
61
+ "--corner-4": 12px
62
+ "--corner-5": 16px
63
+ "--corner-circle": 50%
64
+ "--corner-semicircle": 500px
65
+ custom-page:
66
+ colors:
67
+ "--oyd-structural-ink": "#102B3A"
68
+ "--oyd-focus-hatch": "repeating-linear-gradient(135deg, color-mix(in srgb, var(--color-brand1-6) 72%, transparent) 0 2px, transparent 2px 8px)"
69
+ "--oyd-rating-accent": "#F5B21A"
70
+ "--oyd-verification-accent": "#6875F5"
71
+ typography:
72
+ metric-primary:
73
+ "--font-size-metric-primary": 28px
74
+ "--font-weight-metric-primary": 600
75
+ "--font-lineheight-metric-primary": 1.2
76
+ ---
77
+
78
+ # {{PROJECT_NAME}} design.md
79
+
80
+ ## 设计总览
81
+
82
+ - 业务领域:{{BUSINESS_DOMAIN}}
83
+ - 产品形态:{{EXPERIENCE_TOPOLOGY}}
84
+ - 主题来源:{{THEME_SOURCE}}
85
+ - 项目约束:{{PROJECT_CONSTRAINTS}}
86
+
87
+ 本主题以近白画布、纯白内容表面和极细分隔线建立清晰秩序,页面整体保持中等密度,卡片内部使用 16-24px 的舒适留白。视觉焦点由主题色与深色结构墨色形成双重对比,但两者合计不超过页面面积的 15%。当页面同时存在主要任务与独立辅助内容时,可采用主内容区加边缘辅助轨;摘要使用独立描边卡,主图表以中性基准柱、主题色实际柱、短基准帽和斜纹焦点构成,明细区通过标签导航、轻工具栏、进度条与符号化等级信息维持高扫描效率。
88
+
89
+ ### 风格定位与应用说明
90
+
91
+ - 核心气质是“线性分区、精密数据纹理、轻表面、双重对比焦点”;具有摘要、比较、进度或对象列表的内容最能发挥记忆点,但这不是页面类型限制。
92
+ - 所有页面共享本主题的全应用 Token 和基础组件语言;逐页视觉应用根据项目实际页面、页面模式和真实内容生成,视觉记忆点仅在满足内容契约时使用。
93
+ - 构图迁移时保留细线边界、独立描边卡、主题色与结构墨色的角色分工、线性图标、紧凑工具栏和内部溢出机制;边缘辅助轨仅在内容契约成立时使用。
94
+ - 内容不匹配时,将斜纹焦点、基准帽、标签下划线或对象列表节奏迁移到已有槽位;无合法承载则 `recipe_only`,需要新增业务能力则 `suggest_only`。
95
+
96
+ ### 视觉 DNA
97
+
98
+ | 设计母体 | 可见证据与置信度 | 复用规则与实现钩子 | 缺失后的失败表现 |
99
+ | --- | --- | --- | --- |
100
+ | 条件式边缘辅助轨 | 主要内容与独立窄轨由贯穿全高的 1px 分隔线切开,窄轨内部纵向组织摘要、趋势与对象列表。`observed` | 不可变机制是明确边界、独立滚动与同一阅读方向;比例和模块顺序由 PRD 决定。仅在主次内容同时存在时使用 `grid-template-columns: minmax(0, 7fr) minmax(320px, 3fr)`。 | 所有信息混入同一列,辅助信息抢占主任务,或无依据地在所有页面强制侧栏。 |
101
+ | 独立描边摘要序列 | 同层摘要以四个等宽、低圆角、无阴影的独立卡片横向排列,标签弱、数字强。`observed` | 保持等宽等高、1px 边界、明确卡间 gap 与标签—主值两层;数量、标签与数据由 PRD 决定。 | 退化为彩色大卡或紧密拼接组,失去线性节奏与独立状态感。 |
102
+ | 基准帽与斜纹焦点图表 | 柱形同时包含浅色基准、短横基准帽、主题色实际值;选中柱叠加斜纹并显示双层 tooltip。`observed` | 保留“基准—实际—焦点”三层编码、低对比网格和固定绘图区;图表类型与数据可替换,斜纹从 `--color-brand1-6` 派生。 | 退化为普通单色柱图,比较语义与交互焦点消失。 |
103
+ | 标签驱动明细带 | 标签导航、搜索筛选操作、浅色表头和长行列表沿同一水平基线组织,进度与等级信息图形化。`observed` | 保留激活下划线、工具栏等高、表头弱填充、行分隔和尾部弱操作;字段与标签来自 PRD。 | 列表变成高边框表格,导航、筛选和内容层级割裂。 |
104
+ | 头像化对象序列 | 辅助轨中的对象以圆形标识、两级文本、可选验证标记和细行分隔构成。`observed` | 保持 40px 圆形视觉锚点、两级信息与右侧轻标记;对象类型、图像和状态由 PRD 决定。 | 退化为无锚点文字清单或彩色宫格,扫描与可信度下降。 |
105
+
106
+ ### 视觉记忆点应用策略
107
+
108
+ | 视觉记忆组件或构图 | 内容契约 | 落地策略 | 可迁移机制与适配目标 | 无匹配内容时 |
109
+ | --- | --- | --- | --- | --- |
110
+ | 条件式边缘辅助轨 | `content_contract`: 页面同时存在高优先级主任务与可独立阅读的辅助摘要、趋势或对象列表。 | `render_policy: adapt_existing_slot`;`direct_trigger`: PRD 同时提供 `primary_content_panel` 与 `supporting_panel`。 | `transferable_mechanism`: 全高细分隔、独立滚动、窄轨纵向节奏;`adaptation_targets`: 已有主内容与辅助内容槽位;折叠时辅助内容排在主任务后。 | `fallback`: 契约不成立时按 PRD 使用单列、表单、列表或详情结构;`forbidden`: 不得为保持分栏新增摘要、趋势、排行或对象。 |
111
+ | 独立描边摘要序列 | `content_contract`: 至少两个同层级摘要字段,字段可独立表达。 | `render_policy: prd_match_only`;`direct_trigger`: PRD 明确存在可比较或并列摘要。 | `transferable_mechanism`: 等宽等高、1px 边界、低圆角、标签弱值强;`adaptation_targets`: `primary_summary`、`primary_metrics`。 | `fallback`: 单个摘要使用普通面板;`forbidden`: 不得编造指标、状态或数量。 |
112
+ | 基准焦点复合图表 | `content_contract`: 真实数据包含实际值与目标、上限、基准或第二比较序列。 | `render_policy: prd_match_only`;`direct_trigger`: PRD 提供可验证的双层比较关系。 | `transferable_mechanism`: 中性基准、主题实际、短帽标记、斜纹焦点和双层 tooltip;`adaptation_targets`: `primary_content_panel`、比较进度、区间轨迹。 | `fallback`: 只有单序列时移除基准帽与第二 tooltip,保留轻网格和焦点斜纹;`forbidden`: 不得虚构目标、基准或比较值。 |
113
+ | 标签驱动明细带 | `content_contract`: 同一数据集合存在真实分类视图或状态筛选,并包含结构化明细。 | `render_policy: prd_match_only`;`direct_trigger`: PRD 指定标签筛选与表格或列表。 | `transferable_mechanism`: 激活下划线、等高工具栏、浅表头、图形化进度与弱尾部操作;`adaptation_targets`: `detail_table`、`detail_list`。 | `fallback`: 无分类时删除标签带,仅保留工具栏与明细;`forbidden`: 不得新增筛选类别、字段、等级或操作。 |
114
+ | 头像化对象序列 | `content_contract`: 存在对象集合,且每项有主名称与至少一项辅助信息。 | `render_policy: adapt_existing_slot`;`direct_trigger`: PRD 有对象推荐、最近访问、负责人或相关项列表。 | `transferable_mechanism`: 圆形视觉锚点、两级文本、细分隔和可选语义标记;`adaptation_targets`: `supporting_panel`、`detail_list`。 | `fallback`: 无真实图像时使用首字母或线性图标;`forbidden`: 不得生成虚假对象、头像、评分或认证。 |
115
+
116
+ - 先匹配 `content_contract`,再决定是否渲染组件本体;不能为了保留视觉记忆点而新增 PRD 未要求的字段、数据、入口、对象或流程。
117
+ - 每页优先清楚落地 1-3 个与 PRD 匹配的主记忆点,不要求全部组件同时出现。
118
+ - 无合法业务承载时保留为 `recipe_only`;若需要新增业务能力则使用 `suggest_only`,不进入默认实现。
119
+
120
+ ### 设计变量范围
121
+
122
+ `tokens.application-global` 是原生表单、流程页面和自定义页面共同遵守的全应用契约;本主题使用无彩色灰阶、深色结构文字、4px 基础间距与 4-16px 圆角阶梯。`tokens.custom-page` 只补充页面底层、独立结构墨色、主题派生斜纹、评分语义色、验证语义色与全局层缺少的主指标数字。图表网格复用 `--color-line1-1`,次序列与进度轨道复用 `--color-fill1-3 / --color-fill1-2`,tooltip 复用 `--color-fill1-10`,避免同值同义 Token。
123
+
124
+ ## 色彩
125
+
126
+ - 色彩来源:{{COLOR_SOURCE}}
127
+ - 颜色 Token 的名称和值以文档顶部 YAML 的 `tokens` 为唯一事实源;AI 可以根据主题调整色值,不改变宜搭应用全局变量名。
128
+ - 画布与表面接近同色,以细线、浅填充和深色结构墨色建立层级;主题色只负责交互焦点与主要数据,结构墨色负责标题、基线和第二视觉锚点。
129
+
130
+ ### 设计变量消费规则
131
+
132
+ | 固定消费语义 | 消费 Token | 作用域 |
133
+ | --- | --- | --- |
134
+ | 主题色交互元素悬停 | `--color-brand1-1` | 应用全局 |
135
+ | 平台预留品牌浅色;自定义页不主动绑定 | `--color-brand1-2` | 应用全局 |
136
+ | 浅色导航框架背景 | `--color-brand1-3` | 应用全局 |
137
+ | 深色导航框架背景 | `--color-brand1-5` | 应用全局 |
138
+ | 全应用主题主色;主操作、关键焦点、链接、选中和主要数据 | `--color-brand1-6` | 应用全局 |
139
+ | 主题色交互元素激活或按下 | `--color-brand1-9` | 应用全局 |
140
+ | 主题色交互元素禁用状态 | `--color-brand1-10` | 应用全局 |
141
+ | 弱分隔线、图表网格与表格行线 | `--color-line1-1` | 应用全局 |
142
+ | 输入框、按钮和面板常规边界 | `--color-line1-2` | 应用全局 |
143
+ | 页面底层画布 | `--pod-page-bg-color` | 自定义页 |
144
+ | 面板、卡片、弹窗和表单容器 | `--color-white` | 应用全局 |
145
+ | 深色结构线、图表基线与第二视觉锚点 | `--oyd-structural-ink` | 自定义页 |
146
+ | 选中数据的主题派生斜纹 | `--oyd-focus-hatch` | 自定义页 |
147
+ | 等级或评分符号 | `--oyd-rating-accent` | 自定义页 |
148
+ | 已验证身份标记 | `--oyd-verification-accent` | 自定义页 |
149
+ | 菜单悬停、弱标签和默认浅填充 | `--color-fill1-1` | 应用全局 |
150
+ | 菜单点击和中性选中底、进度轨道 | `--color-fill1-2` | 应用全局 |
151
+ | 更重中性填充、图表次序列 | `--color-fill1-3` | 应用全局 |
152
+ | 标题、核心数字、正文和主要图标 | `--color-text1-4` | 应用全局 |
153
+ | 表格表头和输入框 placeholder | `--color-text1-10` | 应用全局 |
154
+ | 辅助说明、坐标轴、时间和元信息 | `--color-text1-3` | 应用全局 |
155
+
156
+ `--color-brand1-6` 是唯一主题色种子,最终项目必须把七个 Brand Token 写成实际色值。无品牌色时可选择中明度、高对比的冷色作为默认锚点。白色与无彩色灰阶占页面面积至少 80%,主题色与结构墨色合计不超过 15%。评分色和验证色具有独立、固定语义,不参与主题同色推演,也不得替代成功、警告、错误或信息状态色。
157
+
158
+ ### 本主题的配色约束
159
+
160
+ - `--color-line1-1 / --color-line1-2`、`--color-fill1-1 / --color-fill1-2 / --color-fill1-3`、`--color-text1-10 / --color-text1-3` 均为 `neutral-gray`,其 Hex 满足 `R = G = B`;`--color-fill1-10` 为白色等通道 rgba 浮层。
161
+ - 本主题没有 `theme-gray`;如需带主题倾向的浅底,必须生成期声明为 `--color-brand1-6` 3% + `#F7F7F7` 97%,并在实例化时写入实际值,不得保留固定偏色灰。
162
+ - `--color-text1-4` 与 `--oyd-structural-ink` 是明确的深色结构墨色,不声明为灰色,也不随主题色变化。
163
+ - 主题色只用于主操作、关键焦点、选中状态和主要数据;不得铺满画布或普通卡片。
164
+ - 成功、警告、错误和信息状态直接消费平台语义色,并配合文字、图标或方向符号;`custom-page` 不重复声明同义状态 Token。
165
+ - 同一图表最多两种主视觉角色:主题实际值与结构墨色基准;中性次序列不算独立强调色。斜纹由 `--color-brand1-6` 派生,评分与验证色只用于各自语义。
166
+
167
+ ## 字体与排版
168
+
169
+ - 全局只使用 `tokens.application-global.typography.base` 的字体栈。
170
+ - 普通页面标题映射 `tokens.application-global.typography.subhead`,面板标题映射 `body-2`,正文与内容标题映射 `body-1`,表格映射 `table`,元信息映射 `caption`。
171
+ - `subhead` 为 24px / 650 / 1.3;`body-2` 为 16px / 600 / 1.4;`body-1` 为 14px / 400 / 1.5;`table` 为 14px / 400 / 1.45;`caption` 为 12px / 400 / 1.4。
172
+ - `tokens.custom-page.typography.metric-primary` 为 28px / 600 / 1.2,仅用于摘要主值,因为全局层没有独立主指标语义,不得替代页面标题。
173
+ - 数值启用 `font-variant-numeric: tabular-nums`;摘要主值单行,面板标题最多两行,表格主文本单行省略并提供完整值。
174
+ - 图标使用 1.5px 线性描边、圆端点;正文图标 16-18px、面板图标 20px、对象视觉锚点 40px。图标与首行文本视觉居中,不以 emoji 代替功能图标。
175
+
176
+ ## 布局与间距
177
+
178
+ - 所有间距消费 YAML 的 `--s-1` 至 `--s-8`:图标与文字用 `--s-2`,控件组合用 `--s-3`,卡片内距用 `--s-4 / --s-6`,大区块间距用 `--s-6`。
179
+ - 全页面基础规则:内容区最大宽度 1760px,安全边距 24px;父级 Grid/Flex 统一使用 `gap`;同类面板拉伸对齐,长内容内部处理。
180
+ - 只有当 PRD 同时提供主要内容与独立辅助内容时,才启用约 7:3 的边缘辅助轨;否则遵守页面模式要求的单列、列表、表单、详情或流程布局。
181
+ - `page_identity`、`global_actions`、`primary_metrics`、`primary_content_panel`、`supporting_panel`、`detail_table/detail_list` 是否出现及顺序由 PRD 决定。
182
+
183
+ ### 布局稳定性硬规则
184
+
185
+ - 桌面端主网格使用 `align-items: stretch`;禁止瀑布流和 `align-items: start`。
186
+ - 面板使用 `height: 100%`、`min-width: 0`、`min-height: 0`、`display: flex`、`flex-direction: column`;标题固定,内容区 `flex: 1; min-height: 0`。
187
+ - `metric_card` 高 120-144px;小型摘要图表 220-280px;复合 `chart_panel` 380-460px;边缘辅助面板 220-360px;`detail_panel` 首屏高 420-620px;可选 `quick_action_item` 高 72-88px。
188
+ - 图表绘图区固定 280-340px;表格、列表和长文本在面板内部滚动、截断或折叠,不撑破网格。
189
+ - ≥1280px 且内容契约成立:7:3 分栏、辅助轨独立滚动;768-1279px:主辅改为上下排列,辅助轨可成为 2 列网格;<768px:全部单列,辅助内容排在主任务后,可解除等高但保留控件高度与溢出策略。摘要序列从 4 列降为 2 列再降为 1 列。
190
+ - 若边缘辅助轨内容契约不成立,以上各断点均按 PRD 页面模式折叠,不生成空白侧栏。
191
+
192
+ ## 表面与层级
193
+
194
+ - 常规面板使用 `--color-white`、1px `--color-line1-1` 边界、`0 1px 2px rgba(0,0,0,0.02)` 微阴影;大区块可以仅用贯穿分隔线而不包卡。
195
+ - tooltip 和 popover 使用 `--color-fill1-10`、`--color-line1-2` 与 `0 8px 24px rgba(0,0,0,0.10)`;弹窗同层但扩大到 `--corner-4`。
196
+ - 禁止大面积渐变、毛玻璃与强辉光;斜纹只用于选中数据焦点或无图像对象占位,不作装饰背景。
197
+ - 嵌套层级采用浅填充或分隔线二选一;内层不得继续叠加同强度边框与阴影。
198
+
199
+ ## 圆角与形状
200
+
201
+ - `--corner-1` 4px 用于状态块与进度条;`--corner-2` 8px 用于输入、按钮和 tooltip;`--corner-3` 10px 用于摘要卡;`--corner-4` 12px 用于常规面板;`--corner-5` 16px 用于大型浮层。
202
+ - `--corner-semicircle` 仅用于计数、标签、进度条和短状态;`--corner-circle` 用于图标按钮、头像和对象视觉锚点。
203
+ - 同一网格层级圆角一致;不使用超大软圆角,也不随机混用直角与圆角。
204
+
205
+ ## 组件
206
+
207
+ ### 按钮与操作
208
+
209
+ 按钮仅使用 28px 行内、32px 紧凑工具栏、36px 常规、40px 强调四档;图标按钮使用同档正方形。默认 `--corner-2`,主按钮消费 `--color-brand1-6`,次按钮白底细边,文字型操作以主题色文字加 1px 下划线表达。hover、active 分别消费 `--color-brand1-1 / --color-brand1-9`,focus 为 2px 主题色外环加 2px offset;disabled 同时降低文字和边界对比并移除点击反馈。同一操作区只保留一个主操作。
210
+
211
+ ### 输入与筛选控件
212
+
213
+ 紧凑工具栏 32px、常规表单 36px、宽松搜索与选择器 40px。白色表面、`--color-line1-2` 边界、`--corner-2`;placeholder 用 `--color-text1-10`。focus 显示主题色边界与外环,error 消费平台错误色并配合文本。搜索、筛选和新增操作在同一工具栏保持等高,窄屏按组换行。
214
+
215
+ ### 卡片与面板
216
+
217
+ 摘要卡使用 `--corner-3`、常规面板用 `--corner-4`;内距为 `--s-4 / --s-6`。卡片标题区固定,内容区 `flex: 1`。大区块优先使用细分隔线而非层层套卡;只有内容可独立理解、独立操作或需要稳定边界时才包卡。
218
+
219
+ ### 独立描边摘要序列
220
+
221
+ 固定公式:2-4 个 `metric_card` + 等宽 Grid + `--s-4 / --s-6` gap + 1px `--color-line1-1` 边界。卡内按“弱标签—主值”垂直排列,主值消费 `metric-primary`;辅助状态放在标签旁或主值下,但不抢主值。每张卡保持同高、无彩色背景、无显著阴影。禁止替换为大面积主题色卡、拼接组或不同高度的 Masonry 卡片。
222
+
223
+ ### 基准焦点复合图表
224
+
225
+ 固定公式:标题与时间切换 + 左侧可选摘要列表 + 固定绘图区。每个数据位包含浅灰基准柱、主题色实际柱和 1-2px 深色基准帽;当前焦点叠加 `--oyd-focus-hatch`,tooltip 分别贴近比较层并避免遮挡。网格消费 `--color-line1-1`,次序列消费 `--color-fill1-3`,基准线消费 `--oyd-structural-ink`。无双层真实数据时移除基准帽,禁止伪造比较值。
226
+
227
+ ### 标签驱动明细带
228
+
229
+ 固定公式:可横向滚动的标签带 + 标题/工具栏 + 44px 浅表头 + 64-72px 数据行。激活标签使用主题色顶线或底线与字重变化,计数使用胶囊;工具栏控件等高。进度以 `--color-fill1-2` 轨道承载主题色实际值,等级用符号与数字共同表达。禁止把标签做成高饱和彩色按钮组,禁止以星形或颜色作为唯一等级信息。
230
+
231
+ ### 头像化对象序列
232
+
233
+ 固定公式:40px 圆形锚点 + 两级文本 + 可选右侧语义标记 + 1px 行分隔。真实图像存在时使用图像;无图像时用首字母、线性图标或 `--oyd-focus-hatch` 占位。验证标记仅在真实状态存在时消费 `--oyd-verification-accent`;评分仅在真实评分存在时消费 `--oyd-rating-accent`。禁止生成虚假头像、评分或认证。
234
+
235
+ ### 图表或主内容面板
236
+
237
+ 复合柱图与双线趋势图均使用固定高度、低对比网格、最多两个主要视觉角色。双线趋势中,主要线使用 `--oyd-structural-ink` 或主题色,次线使用 `--color-fill1-3`,仅终点或焦点显示节点;下方范围控制器为 28-32px 高。所有图表提供文本摘要、键盘焦点和非纯颜色区分。
238
+
239
+ ### 表格与列表
240
+
241
+ 表头高 44px,使用 `--color-fill1-1`;数据行高 64-72px,仅保留水平分隔。主文本左对齐,数字右对齐并使用等宽数字;进度单元由轨道、实际值和百分比组成;等级单元由图标加文本值组成;尾部操作为 28/32px 图标按钮。表体固定高度内滚动、表头 sticky,长文本省略且可访问完整值。
242
+
243
+ ### 快捷入口(推断)
244
+
245
+ 未观察到独立快捷入口,因此只保留 `inferred / render_policy: recipe_only` 配方:PRD 明确存在高频入口时,使用独立区块、2-4 个等宽项、72-88px 高、白底细边、单色线性图标与短标签;移动端改为 2 列或横向滚动。禁止默认彩色宫格,禁止塞入明细工具栏或辅助轨尾部。
246
+
247
+ ### 状态与交互
248
+
249
+ - 悬停:120-160ms 内改变边界、浅填充或下划线,不改变尺寸和字重。
250
+ - 按下:80-120ms 使用 `--color-brand1-9` 或 1px 内收反馈。
251
+ - 聚焦:控件显示清楚 focus ring;纯图标按钮必须有可访问名称。
252
+ - 加载:保持卡片、图表与列表固定高度,使用骨架或稳定占位。
253
+ - 空态与错误:保留原结构,提供简短说明与下一步操作,不整块染色。
254
+ - 禁用与选中:禁用结合低对比边界、图标和文案;选中结合主题色线、斜纹或标记,不只依赖颜色。
255
+ - 动效:常规 120-180ms `ease-out`,浮层 160-220ms;`prefers-reduced-motion` 下关闭位移和逐项动画。
256
+
257
+ ## 项目应用
258
+
259
+ ### 项目上下文与主题应用
260
+
261
+ - 当前产品形态:{{EXPERIENCE_TOPOLOGY}}
262
+ - 主题在当前项目中的应用说明:{{PRODUCT_TOPOLOGY_APPLICATION}}
263
+
264
+ 产品形态只提供任务与内容上下文,不决定主题资格。原生页面和自定义页面共同继承全应用颜色、字体、间距与圆角;自定义页面仅在需要结构墨色、斜纹焦点、评分、验证或主指标数字时消费页面级 Token。
265
+
266
+ ### 页面模式
267
+
268
+ {{PAGE_PATTERN_SUMMARY}}
269
+
270
+ 页面模式决定任务、内容和模块;本主题只规定视觉表达。边缘辅助轨、复合图表、标签带和对象列表都必须经过内容契约,不得把所有页面强制改造成同一结构。
271
+
272
+ ### 逐页视觉应用
273
+
274
+ {{PAGE_APPLICATIONS}}
275
+
276
+ 实例化时只展开项目真实存在的页面,并说明中性槽位、跨度、高度、移动端顺序与采用的视觉 DNA。页面无需使用全部组件母体,但采用对应信息类型时必须遵守构图公式。
277
+
278
+ ### 素材要求
279
+
280
+ - 页面图片需求:{{PAGE_IMAGE_NEEDS}}
281
+ - 素材缺口:{{ASSET_GAPS}}
282
+ - 图片、图表、缩略图和辅助图形必须有真实来源;缺少素材时使用结构化数据或中性占位,不编造对象、指标、等级或图片地址。
283
+
284
+ ## 设计规范与禁忌
285
+
286
+ ### 必须做到
287
+
288
+ - 无条件保护白色表面、无彩色灰阶、细线分区、低阴影和双重对比角色;颜色角色必须与 YAML 一致。
289
+ - 内容契约满足时,边缘辅助轨必须保留全高分隔、独立滚动和主后辅的响应式顺序;描边摘要必须等宽等高。
290
+ - 复合比较数据存在时,必须保护基准柱、实际柱、短基准帽、斜纹焦点与双层 tooltip;无比较数据时主动降级。
291
+ - 分类明细存在时,必须保护标签下划线、等高工具栏、浅表头、图形化进度和非纯颜色等级信息。
292
+ - 对象集合存在时,必须保护圆形锚点、两级文本、细分隔和真实状态标记。
293
+ - 同类面板等高、图表高度固定、长内容内部处理、父级 gap 统一;完整实现状态、响应式、键盘访问与 reduced motion。
294
+
295
+ ### 禁止项
296
+
297
+ - 禁止复制模板来源中的业务内容,或让本文件覆盖 PRD 的内容决策。
298
+ - 禁止把主题色铺满画布、普通卡片或大面积面板;禁止把默认色相当作视觉 DNA。
299
+ - 禁止把边缘辅助轨、固定列数或模块顺序写成所有页面的无条件结构;无辅助内容时不得留空轨。
300
+ - 禁止把独立描边摘要改成彩色大卡或拼接组;禁止把基准焦点图表简化成无比较层的通用柱图。
301
+ - 禁止把标签明细做成厚重按钮页签与全边框表格;禁止用虚假头像、评分或认证填充对象列表。
302
+ - 禁止瀑布流、自由高度卡片、`align-items: start`、无固定高度图表、长内容撑破父级和零散 margin 拼接。
303
+ - 禁止默认后台质感、无依据装饰和与主题不一致的组件库默认样式。
304
+
305
+ ### 错误与正确
306
+
307
+ - 错误:所有页面固定 7:3 分栏;正确:主辅内容契约成立时启用边缘轨,否则保持 PRD 页面模式。
308
+ - 错误:摘要卡使用不同色块和强阴影;正确:等宽独立描边卡、统一高度、标签弱值强。
309
+ - 错误:图表只有普通主题色柱;正确:真实比较存在时使用中性基准、主题实际、短帽与斜纹焦点。
310
+ - 错误:标签、工具栏和表格各自悬浮;正确:沿同一水平节奏组成连续明细带。
311
+ - 错误:对象列表用彩色宫格与虚假状态;正确:圆形锚点、两级文本、细分隔和真实语义标记。
312
+ - 错误:主题色铺满页面;正确:主题色连接主操作、主要数据、选中与焦点,大部分表面保持中性。
313
+ - 错误:卡片随内容自由增高;正确:同类卡片固定高度,长内容内部滚动或截断。
314
+
315
+ ### AI 使用提示
316
+
317
+ 先读取 PRD,再解析 `{{PRIMARY_COLOR}}` 并生成七个实际 Brand Token。所有页面先继承全应用 Token 与基础组件语言,再按内容契约选择独立描边摘要、边缘辅助轨、复合图表、标签明细或对象序列。构图只作为配方,不创造内容;主题色只改色相,不改变线性分区、双重对比、基准帽、斜纹焦点、密度、形状和交互机制。页面级 Token 已完成全局语义复用扫描,禁止重新声明网格、tooltip、次序列或进度轨道的同义 Token。
318
+
319
+ ### 交付自检
320
+
321
+ - [ ] 全部内容和模块是否来自 PRD,而非模板来源?
322
+ - [ ] 边缘辅助轨是否仅在主辅内容契约成立时出现,并具有折叠与回退规则?
323
+ - [ ] 独立描边摘要是否等宽等高、标签弱值强且无彩色大底?
324
+ - [ ] 复合图表是否仅使用真实基准关系,并保护基准帽、斜纹焦点与固定高度?
325
+ - [ ] 标签明细是否保护下划线、等高工具栏、浅表头、进度和非纯颜色等级表达?
326
+ - [ ] 对象序列是否保护圆形锚点、两级文本、细分隔和真实标记?
327
+ - [ ] 每个组件或布局记忆点是否都有 `content_contract`、`render_policy`、迁移目标和回退策略?
328
+ - [ ] 固定比例、辅助轨和模块顺序是否未被写成全页面硬规则?
329
+ - [ ] 未触发组件是否没有强行渲染,视觉迁移是否没有新增业务内容?
330
+ - [ ] 主题色同色演变是否由 `--color-brand1-6` 派生,独立评分与验证色是否角色明确?
331
+ - [ ] `custom-page` 是否没有与全局层同值同义或角色重叠的 Token?
332
+ - [ ] 文字对比是否保持 `text1-4` 高于 `text1-10`、`text1-10` 高于 `text1-3`?
333
+ - [ ] 主题身份、DNA、组件标题和总结是否没有绑定默认色相或页面类型?
334
+ - [ ] 描述中的中等密度、局部留白、低阴影、细线与小面积主题色是否与正文和 Token 一致?
335
+ - [ ] 所有灰色 Token 是否为 `neutral-gray` 且满足 `R = G = B`;如新增 `theme-gray` 是否声明种子、基底、比例和实例化要求?
336
+ - [ ] 所有真实页面是否共享全应用 Token,视觉记忆点是否按内容契约条件式落地?
337
+ - [ ] `{{PAGE_APPLICATIONS}}` 是否只展开真实页面?
338
+ - [ ] 同类面板是否等高,图表是否固定高度,长内容是否内部处理?
339
+ - [ ] hover、active、focus、loading、empty、error、disabled、selected 是否完整且不跳动?
340
+ - [ ] 移动端折叠、触控目标、键盘访问、对比度、非纯颜色状态与 reduced motion 是否达标?
341
+ - [ ] 最终项目 `design.md` 是否替换全部占位符并写入七个 Brand Token 实际色值?