openyida 2026.9.21 → 2026.9.22-beta.1

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 +145 -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,243 @@
1
+ ---
2
+ version: alpha
3
+ template_type: visual_dna_preset
4
+ name: blue-insight-operations-dashboard
5
+ design_id: blue-insight-operations-dashboard
6
+ design_status: draft
7
+ description: "适用于顶部指标、主趋势图、右侧洞察卡、活动表和团队列表的蓝色运营分析仪表盘视觉 DNA。"
8
+ scenes: [dashboard, analytics_home, operations_overview, executive_summary, team_overview]
9
+ density: medium-high
10
+ layout: metric_row_chart_insight_table_side_list
11
+ tone: [clean, confident, structured, crisp, analytical]
12
+ tags: [blue_dashboard, sparkline_metrics, area_chart, insight_cards, activity_table]
13
+ avoid: [media_gallery, marketing_landing_page, single_form, immersive_dark_screen]
14
+ selection:
15
+ best_for: [运营概览页, 管理看板, 指标分析页, 团队概览页, 活动追踪页]
16
+ user_intent: [查看核心指标, 分析主趋势, 阅读洞察提醒, 跟进近期活动, 对比成员或对象状态]
17
+ visual_tone: [浅灰背景, 白色圆角卡片, 蓝色主图表, 彩色洞察卡片, 清晰表格]
18
+ avoid_for: [强图片展示, 低信息门户, 纯录入流程, 暗色大屏]
19
+ policies:
20
+ prd_first: true
21
+ content_neutral: true
22
+ no_source_locked_content: true
23
+ quick_actions_rendered_by_prd: true
24
+ theme_can_change_hue_not_dna: true
25
+ visual_dna:
26
+ - id: sparkline_metric_cards
27
+ name: 火花线指标卡组
28
+ confidence: observed
29
+ hooks: [metric_card, pastel_icon_square, large_number, delta_text, sparkline]
30
+ invariant: [顶部四张指标卡等宽横排, 左上为浅色图标方块, 中部大数字, 下方变化文本, 右下角有彩色火花线]
31
+ variable: [指标数量, 图标语义, 数值格式, 变化方向, 火花线颜色]
32
+ - id: primary_area_trend_panel
33
+ name: 主面积趋势面板
34
+ confidence: observed
35
+ hooks: [area_chart, smooth_line, tooltip_card, vertical_marker, range_select]
36
+ invariant: [左侧主面板占据最大面积, 标题区显示主数值和变化, 折线使用蓝色实线与浅色面积填充, hover 有垂直虚线和白色 tooltip]
37
+ variable: [指标类型, 时间范围, 数据单位, tooltip 内容, 主题色]
38
+ - id: pastel_insight_stack
39
+ name: 彩色洞察卡堆叠
40
+ confidence: observed
41
+ hooks: [insight_rail, pastel_card, icon_tile, chevron, soft_tint_background]
42
+ invariant: [右侧洞察面板内有 3 个左右浅色提示卡, 每张卡有图标方块、标题、两行摘要和右箭头, 色彩低饱和且不污染外层面板]
43
+ variable: [洞察数量, 图标语义, 状态级别, 文案长度, 主题色派生]
44
+ - id: activity_table_panel
45
+ name: 活动明细表面板
46
+ confidence: observed
47
+ hooks: [activity_table, avatar_cell, action_icon, status_pill, row_menu]
48
+ invariant: [底部左侧使用记录表, 行内头像或对象标识、动作图标、时间和状态胶囊齐全, 表格分隔线细且行高稳定]
49
+ variable: [列定义, 行数据, 状态集合, 行操作, 图标语义]
50
+ - id: compact_progress_side_list
51
+ name: 紧凑进度侧列表
52
+ confidence: observed
53
+ hooks: [side_list, avatar, progress_bar, percentage_text, view_all_link]
54
+ invariant: [右下侧列表在卡片内纵向排列, 每行头像/图标、两行文本、右侧进度条和百分比, 标题栏有查看入口]
55
+ variable: [列表对象, 进度含义, 行数, 排序方式, 头像或图标]
56
+ theme_adaptation:
57
+ accepts_theme_color: true
58
+ strategy: replace_hue_preserve_visual_mechanism
59
+ input: theme_color
60
+ replace_tokens: [tokens.colors.brand, tokens.colors.brand-strong, tokens.colors.brand-soft, tokens.colors.focus-ring]
61
+ derive_tokens: [tokens.colors.chart-primary, tokens.colors.chart-fill, tokens.colors.insight-positive, tokens.colors.insight-warning, tokens.colors.insight-info]
62
+ preserve_tokens: [tokens.colors.bg-page, tokens.colors.surface, tokens.colors.surface-muted, tokens.colors.text-primary, tokens.colors.text-secondary, tokens.colors.border-subtle]
63
+ rules:
64
+ - theme_color_only_changes_accent_hue
65
+ - preserve_light_gray_canvas
66
+ - keep_insight_cards_pastel
67
+ - do_not_tint_all_metric_cards
68
+ tokens:
69
+ colors:
70
+ bg-page: "#F3F6FA"
71
+ surface: "#FFFFFF"
72
+ surface-muted: "#F7F9FC"
73
+ text-primary: "#0F172A"
74
+ text-secondary: "#64748B"
75
+ text-tertiary: "#94A3B8"
76
+ border-subtle: "#E1E7F0"
77
+ brand: "#2169D9"
78
+ brand-strong: "#1756B8"
79
+ brand-soft: "#E8F1FF"
80
+ chart-primary: "#2169D9"
81
+ chart-fill: "rgba(33,105,217,0.14)"
82
+ insight-positive: "#EAF8EE"
83
+ insight-info: "#F5EDFF"
84
+ insight-warning: "#FFF8E6"
85
+ positive: "#18A957"
86
+ focus-ring: "#8CB8F5"
87
+ typography:
88
+ fontFamily: "Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, Segoe UI, sans-serif"
89
+ page-title: { fontSize: 34, fontWeight: 750, lineHeight: 1.15, letterSpacing: 0 }
90
+ panel-title: { fontSize: 22, fontWeight: 750, lineHeight: 1.25, letterSpacing: 0 }
91
+ metric-number: { fontSize: 32, fontWeight: 800, lineHeight: 1.05, letterSpacing: 0 }
92
+ hero-number: { fontSize: 40, fontWeight: 800, lineHeight: 1, letterSpacing: 0 }
93
+ body: { fontSize: 16, fontWeight: 450, lineHeight: 1.45, letterSpacing: 0 }
94
+ caption: { fontSize: 14, fontWeight: 450, lineHeight: 1.35, letterSpacing: 0 }
95
+ spacing:
96
+ page-x-desktop: 40
97
+ page-y-desktop: 34
98
+ grid-gap: 28
99
+ panel-x: 28
100
+ panel-y: 28
101
+ rounded:
102
+ panel: 12
103
+ card: 12
104
+ control: 8
105
+ pill: 999
106
+ shadow:
107
+ panel: "0 1px 2px rgba(15,23,42,0.04)"
108
+ layout_stability:
109
+ grid_align_items: stretch
110
+ panel_display: flex-column
111
+ panel_height: "100%"
112
+ overflow_policy: internal_scroll_or_truncate
113
+ spacing_policy: parent_gap_only
114
+ equal_height_rule: same_row_panels_align
115
+ fixed_height_tokens:
116
+ metric_card: 190px
117
+ chart_panel: 560px
118
+ insight_panel: 560px
119
+ activity_panel: 420px
120
+ side_list_panel: 420px
121
+ table_row: 76px
122
+ quality_anchors:
123
+ - id: metric_sparkline_finish
124
+ name: 火花线指标完成度
125
+ required_when: PRD 包含多个核心指标
126
+ rule: 每张指标卡都需要图标方块、大数字、变化文本和右下火花线。
127
+ - id: chart_tooltip_marker
128
+ name: 趋势图浮层与垂直标记
129
+ required_when: PRD 包含主趋势或周期对比
130
+ rule: 主图表使用平滑折线、面积填充、点位、垂直虚线和白色 tooltip。
131
+ - id: pastel_insight_cards
132
+ name: 彩色洞察卡
133
+ required_when: PRD 包含建议、提醒、风险、机会或洞察摘要
134
+ rule: 洞察卡使用低饱和背景、图标方块、右箭头和两行摘要,色块不能过重。
135
+ - id: activity_status_table
136
+ name: 活动状态表格
137
+ required_when: PRD 包含活动记录或操作历史
138
+ rule: 表格行含头像/图标、动作、时间、状态胶囊和更多操作。
139
+ - id: progress_side_list
140
+ name: 进度侧列表
141
+ required_when: PRD 包含成员、对象或项目进度
142
+ rule: 每行有头像/图标、标题、副标题、进度条和百分比。
143
+ quality_floor:
144
+ target: polished_sample_level
145
+ avoid_default_admin_feel: true
146
+ requires_visible_micro_detail: true
147
+ minimum_craft_signals: [sparkline_cards, area_chart_tooltip, pastel_insight_stack, status_pills, progress_bars, subtle_borders]
148
+ components:
149
+ panel: { surface: tokens.colors.surface, rounded: tokens.rounded.panel, border: "1px solid tokens.colors.border-subtle", shadow: tokens.shadow.panel }
150
+ metric_card: { minHeight: 190, iconShape: pastel_square, sparkline: true }
151
+ chart: { height: 390, lineStyle: smooth, tooltip: white_card_with_marker }
152
+ insight_card: { height: 130, rounded: tokens.rounded.card, iconTile: true, chevron: true }
153
+ table: { rowHeight: 76, headerHeight: 58, statusStyle: pill }
154
+ progress_bar: { height: 8, rounded: tokens.rounded.pill }
155
+ modules:
156
+ quick_actions:
157
+ confidence: inferred
158
+ render_policy: prd_only
159
+ placement: page_header_or_after_metric_row
160
+ item_count: 2-6
161
+ insight_panel:
162
+ confidence: observed
163
+ render_policy: prd_only
164
+ placement: right_of_primary_chart
165
+ activity_table:
166
+ confidence: observed
167
+ render_policy: prd_only
168
+ placement: lower_left
169
+ ---
170
+
171
+ # Blue Insight Operations Dashboard DESIGN.md
172
+
173
+ > front matter 是给流程和生成器读取的结构化配置;人工评审优先阅读下方正文。若两者冲突,风格选择、换色策略和 token 数值以前面的 YAML 为准,使用边界和业务取舍以正文为准。
174
+
175
+ ## 1. 快速理解
176
+
177
+ 这是一个经典、清晰、蓝色主导的运营分析仪表盘视觉 DNA。它由顶部火花线指标卡、主面积趋势图、右侧彩色洞察卡、底部活动表和进度侧列表组成。PRD 管业务内容,DESIGN.md 管视觉机制。主题色可以替换蓝色主图表和强调控件,但不能改变浅灰画布、白色卡片和彩色洞察堆叠。
178
+
179
+ ## 2. 使用边界
180
+
181
+ 适用于运营概览、管理看板、团队状态、活动追踪和指标分析。不适合单一表单、强媒体页面、暗色大屏或低信息门户。禁止复制任何视觉材料中的业务标题、人名、职位、项目、日期、金额、百分比和洞察文案。
182
+
183
+ ## 3. 设计风格选择与换色逻辑
184
+
185
+ 当 PRD 有多个 KPI、一个主趋势、若干洞察提醒、活动记录和进度列表时选择该风格。主题色只替换主图表、火花线、链接、focus ring 和部分图标底;背景、卡片、表格分隔线、低饱和洞察卡结构保持。
186
+
187
+ ## 4. 视觉 DNA
188
+
189
+ `sparkline_metric_cards` 让指标卡既可扫读又有趋势细节。`primary_area_trend_panel` 是主视觉,需要面积填充和 tooltip。`pastel_insight_stack` 用柔和彩色卡表达提醒和建议。`activity_table_panel` 用表格承载近期记录。`compact_progress_side_list` 用头像或图标加进度条表达对象状态。
190
+
191
+ ## 5. 视觉品质基线
192
+
193
+ 指标卡必须有火花线,不能只是数字。主趋势图必须有渐变面积、垂直标记和 tooltip。洞察卡必须有低饱和背景、图标方块和右箭头。活动表要有状态胶囊和行操作。进度列表要有头像/图标、进度条和百分比。
194
+
195
+ ## 6. 布局规则
196
+
197
+ ```text
198
+ page_shell
199
+ page_identity + date_filter
200
+ metric_row
201
+ main_grid: primary_chart + insight_stack
202
+ lower_grid: activity_table + progress_side_list
203
+ ```
204
+
205
+ 主 grid 使用 `align-items: stretch`。同排面板等高。面板 `height: 100%`、`min-width: 0`、`min-height: 0`。图表和表格固定高度,长内容截断,间距由父级 `gap` 控制。
206
+
207
+ ## 7. PRD 槽位映射
208
+
209
+ | PRD 内容类型 | 视觉槽位 | 规则 |
210
+ | --- | --- | --- |
211
+ | 多个核心指标 | `metric_row` | 等宽卡片加火花线。 |
212
+ | 主趋势或周期对比 | `primary_area_trend_panel` | 面积图加 tooltip。 |
213
+ | 洞察、提醒、风险、机会 | `insight_panel` | 彩色低饱和卡片堆叠。 |
214
+ | 活动或记录 | `activity_table` | 头像/图标、动作、时间、状态。 |
215
+ | 对象进度 | `progress_side_list` | 进度条和百分比。 |
216
+
217
+ ## 8. 组件规则
218
+
219
+ 卡片圆角 12px,细边框。指标卡图标方块 48px,火花线放右下。主图表线宽 3px,面积透明度 12-18%。洞察卡背景低饱和,行高稳定。状态胶囊使用浅底。进度条高度 8px。
220
+
221
+ ## 9. 响应式与可访问性
222
+
223
+ 桌面为两列主内容;中宽下右侧面板下移;移动端按指标、图表、洞察、活动、进度排列。图表 tooltip 在触控端可点击固定。状态不能只用颜色。
224
+
225
+ ## 10. 禁止项
226
+
227
+ - 禁止复制具体业务内容、人物、项目和示例数据。
228
+ - 禁止默认图表、裸表格、无火花线指标卡。
229
+ - 禁止主题色污染洞察卡和背景。
230
+ - 禁止卡片自由高度造成错位。
231
+ - 禁止长内容撑破面板。
232
+
233
+ ## 11. Agent 使用提示
234
+
235
+ 先读 PRD,确认 KPI、趋势、洞察、活动和进度列表是否存在。再按主题色替换蓝色强调。实现时必须保留火花线、面积图 tooltip、洞察卡堆叠、状态表和进度侧列表。
236
+
237
+ ## 12. 交付自检清单
238
+
239
+ - 内容是否全部来自 PRD。
240
+ - 视觉 DNA 是否按 PRD 条件落地。
241
+ - 主题色是否只改强调色。
242
+ - 图表、表格、列表是否有完整微细节。
243
+ - 响应式、键盘焦点和状态可访问性是否达标。
@@ -0,0 +1,242 @@
1
+ ---
2
+ version: alpha
3
+ template_type: visual_dna_preset
4
+ name: blue-productivity-insight-workbench
5
+ design_id: blue-productivity-insight-workbench
6
+ design_status: draft
7
+ description: "适用于指标概览、柱状趋势、右侧行动栏和记录表并重的蓝色生产力工作台视觉 DNA。"
8
+ scenes: [dashboard, workbench, productivity_home, operations_overview, task_center]
9
+ density: medium-high
10
+ layout: metric_row_large_chart_right_rail_table
11
+ tone: [clean, focused, professional, bordered, calm]
12
+ tags: [blue_dashboard, metric_cards, bar_chart, right_rail, action_table]
13
+ avoid: [marketing_landing_page, immersive_media_page, dark_big_screen, freeform_canvas]
14
+ selection:
15
+ best_for: [生产力工作台, 任务概览页, 周期分析页, 行动中心, 记录管理页]
16
+ user_intent: [查看周期成果, 识别待处理事项, 跟进今日任务, 检索记录列表]
17
+ visual_tone: [白底浅灰画布, 细边框卡片, 蓝色主操作, 右侧纵向洞察栏, 克制高效]
18
+ avoid_for: [强视觉营销, 图片优先页面, 单一长表单, 没有行动队列的低信息页]
19
+ policies:
20
+ prd_first: true
21
+ content_neutral: true
22
+ no_source_locked_content: true
23
+ quick_actions_rendered_by_prd: true
24
+ theme_can_change_hue_not_dna: true
25
+ visual_dna:
26
+ - id: command_filter_header
27
+ name: 命令与筛选头部
28
+ confidence: observed
29
+ hooks: [primary_button, secondary_button, date_range_control, sort_filter_buttons, page_identity]
30
+ invariant: [顶部左侧为页面身份和辅助说明, 中部或右侧承载主次操作, 日期范围与排序筛选在同一水平线, 控件都使用细边框圆角]
31
+ variable: [标题文案, 操作数量, 筛选维度, 日期语义, 主题色]
32
+ - id: bordered_metric_row
33
+ name: 细边框指标横排
34
+ confidence: observed
35
+ hooks: [metric_card, large_number, split_caption, positive_delta, equal_width_grid]
36
+ invariant: [四个左右等宽指标卡横排, 卡片白底细边框, 数字大且紧凑, 辅助文本分两段或一段, 正向变化用小面积绿色文本]
37
+ variable: [指标数量, 指标名称, 数值格式, 变化语义, 卡片数量]
38
+ - id: large_bar_analytics_panel
39
+ name: 大幅柱状分析面板
40
+ confidence: observed
41
+ hooks: [bar_chart, dashed_threshold, metric_strip, insight_callout, panel_actions]
42
+ invariant: [主图表面板占左侧最大面积, 顶部有面板标题和操作图标, 图表上方有摘要条和浅色洞察块, 柱状图使用圆角竖条和虚线阈值]
43
+ variable: [图表类型, 时间粒度, 阈值数量, 洞察文案, 统计项]
44
+ - id: stacked_action_rail
45
+ name: 右侧堆叠行动栏
46
+ confidence: observed
47
+ hooks: [side_rail, focus_card, tabbed_panel, summary_card, avatar_stack, small_pills]
48
+ invariant: [右侧窄栏由多个等宽卡片纵向堆叠, 每个卡片内部有标题栏和右箭头或分页, 重点卡使用内嵌白卡和胶囊状态]
49
+ variable: [行动类型, 卡片数量, 状态集合, 参与者或对象展示, 标签页]
50
+ - id: utility_record_table
51
+ name: 工具化记录表
52
+ confidence: observed
53
+ hooks: [checkbox_table, filter_button, search_icon, row_actions, platform_or_type_chip]
54
+ invariant: [底部表格横跨左主栏, 表头轻量, 行高稳定, 首列复选框, 右上角有筛选搜索更多和跳转图标]
55
+ variable: [列定义, 行数据, 行操作, 图标语义, 搜索筛选]
56
+ theme_adaptation:
57
+ accepts_theme_color: true
58
+ strategy: replace_hue_preserve_visual_mechanism
59
+ input: theme_color
60
+ replace_tokens: [tokens.colors.brand, tokens.colors.brand-strong, tokens.colors.brand-soft, tokens.colors.focus-ring]
61
+ derive_tokens: [tokens.colors.chart-primary, tokens.colors.chart-threshold, tokens.colors.status-info, tokens.colors.insight-soft]
62
+ preserve_tokens: [tokens.colors.bg-page, tokens.colors.surface, tokens.colors.surface-muted, tokens.colors.text-primary, tokens.colors.text-secondary, tokens.colors.border-subtle]
63
+ rules:
64
+ - theme_color_only_changes_accent_hue
65
+ - do_not_tint_page_background
66
+ - preserve_thin_bordered_cards
67
+ - keep_primary_action_prominent_but_small_area
68
+ tokens:
69
+ colors:
70
+ bg-page: "#F7F8FA"
71
+ surface: "#FFFFFF"
72
+ surface-muted: "#F7F9FC"
73
+ text-primary: "#0F172A"
74
+ text-secondary: "#4B5563"
75
+ text-tertiary: "#8B95A1"
76
+ border-subtle: "#D9DEE7"
77
+ brand: "#2367C9"
78
+ brand-strong: "#1C55AA"
79
+ brand-soft: "#EAF2FF"
80
+ chart-primary: "#2D6CCB"
81
+ chart-threshold: "#2D6CCB"
82
+ insight-soft: "#F5FAFF"
83
+ positive: "#159447"
84
+ warning: "#D97706"
85
+ danger: "#D85C67"
86
+ focus-ring: "#8EB8F2"
87
+ typography:
88
+ fontFamily: "Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, Segoe UI, sans-serif"
89
+ page-title: { fontSize: 28, fontWeight: 750, lineHeight: 1.2, letterSpacing: 0 }
90
+ panel-title: { fontSize: 18, fontWeight: 700, lineHeight: 1.3, letterSpacing: 0 }
91
+ metric-number: { fontSize: 40, fontWeight: 750, lineHeight: 1.05, letterSpacing: 0 }
92
+ body: { fontSize: 15, fontWeight: 450, lineHeight: 1.45, letterSpacing: 0 }
93
+ caption: { fontSize: 13, fontWeight: 450, lineHeight: 1.35, letterSpacing: 0 }
94
+ spacing:
95
+ page-x-desktop: 32
96
+ page-y-desktop: 28
97
+ grid-gap: 24
98
+ panel-x: 28
99
+ panel-y: 24
100
+ rounded:
101
+ panel: 16
102
+ card: 14
103
+ control: 10
104
+ pill: 999
105
+ shadow:
106
+ panel: "0 1px 2px rgba(15,23,42,0.03)"
107
+ layout_stability:
108
+ grid_align_items: stretch
109
+ panel_display: flex-column
110
+ panel_height: "100%"
111
+ overflow_policy: internal_scroll_or_truncate
112
+ spacing_policy: parent_gap_only
113
+ equal_height_rule: same_row_panels_align
114
+ fixed_height_tokens:
115
+ metric_card: 160px
116
+ chart_panel: 560px
117
+ side_card_large: 310px
118
+ side_card_small: 250px
119
+ table_row: 58px
120
+ quality_anchors:
121
+ - id: action_filter_header
122
+ name: 操作筛选头部
123
+ required_when: PRD 包含创建、开始、调度、排序或筛选
124
+ rule: 主次操作、日期范围、排序筛选要在同一视觉系统内,按钮边框和圆角一致。
125
+ - id: bordered_metric_cards
126
+ name: 细边框指标卡组
127
+ required_when: PRD 提供多个核心指标
128
+ rule: 指标卡横向等宽,数字、变化和补充文本层级清晰,不使用厚重阴影。
129
+ - id: threshold_bar_chart
130
+ name: 阈值柱状图
131
+ required_when: PRD 包含周期分布、频次、容量或用量数据
132
+ rule: 柱状图使用圆角竖条、虚线阈值、左侧标签和上方摘要条。
133
+ - id: stacked_right_rail
134
+ name: 堆叠右侧行动栏
135
+ required_when: PRD 包含今日焦点、下一步、摘要或提醒
136
+ rule: 右侧卡片等宽纵向堆叠,标题栏、箭头、胶囊和头像细节完整。
137
+ - id: table_toolbar_finish
138
+ name: 表格工具栏完成度
139
+ required_when: PRD 包含可检索记录
140
+ rule: 表格标题右侧必须有筛选、搜索、更多或跳转等工具,行内状态和操作齐全。
141
+ quality_floor:
142
+ target: polished_sample_level
143
+ avoid_default_admin_feel: true
144
+ requires_visible_micro_detail: true
145
+ minimum_craft_signals: [thin_borders, primary_secondary_actions, rounded_bar_chart, right_rail_cards, table_toolbar, avatar_pills]
146
+ components:
147
+ panel: { surface: tokens.colors.surface, rounded: tokens.rounded.panel, border: "1px solid tokens.colors.border-subtle", shadow: tokens.shadow.panel }
148
+ metric_card: { minHeight: 160, rounded: tokens.rounded.panel, border: "1px solid tokens.colors.border-subtle" }
149
+ button_primary: { height: 44, rounded: tokens.rounded.control, surface: tokens.colors.brand, text: "#FFFFFF" }
150
+ button_secondary: { height: 44, rounded: tokens.rounded.control, border: "1px solid tokens.colors.brand" }
151
+ chart: { height: 330, barRadius: 999, thresholdStyle: dashed }
152
+ table: { rowHeight: 58, headerHeight: 54, checkboxColumn: true }
153
+ modules:
154
+ quick_actions:
155
+ confidence: inferred
156
+ render_policy: prd_only
157
+ placement: top_command_bar_or_independent_section
158
+ item_count: 2-6
159
+ right_rail:
160
+ confidence: observed
161
+ render_policy: prd_only
162
+ placement: persistent_right_column
163
+ detail_table:
164
+ confidence: observed
165
+ render_policy: prd_only
166
+ placement: lower_main_column
167
+ ---
168
+
169
+ # Blue Productivity Insight Workbench DESIGN.md
170
+
171
+ > front matter 是给流程和生成器读取的结构化配置;人工评审优先阅读下方正文。若两者冲突,风格选择、换色策略和 token 数值以前面的 YAML 为准,使用边界和业务取舍以正文为准。
172
+
173
+ ## 1. 快速理解
174
+
175
+ 这个视觉 DNA 是白底、细边框、蓝色主操作的生产力工作台。核心结构是顶部命令筛选、横排指标卡、大幅柱状分析面板、右侧堆叠行动栏和底部记录表。PRD 决定具体内容,DESIGN.md 决定视觉层级和组件工艺。主题色只替换主操作、图表和 focus ring,不改变细边框和右侧栏机制。
176
+
177
+ ## 2. 使用边界
178
+
179
+ 适合任务中心、周期分析、行动跟进、团队或项目概览等中高密工作台。不适合营销页、图片页面、沉浸大屏、纯表单。不得复制视觉材料中的个人名、专属活动名、工具品牌、具体日期、时间、数量或文案。没有行动队列时,不要强行渲染右侧栏。
180
+
181
+ ## 3. 设计风格选择与换色逻辑
182
+
183
+ 当 PRD 同时包含核心指标、周期图表、右侧焦点卡和记录列表时选择该风格。主题色替换 `brand`、图表柱、按钮和 focus ring;背景、白色面板、浅灰边框、表格分隔线和右栏堆叠结构保持。
184
+
185
+ ## 4. 视觉 DNA
186
+
187
+ `command_filter_header` 负责把页面身份、主次操作和筛选控制组织在一行。`bordered_metric_row` 用等宽指标卡建立扫读入口。`large_bar_analytics_panel` 是主分析区域,柱状图必须有圆角条、阈值线和摘要条。`stacked_action_rail` 是右侧持续上下文,承载焦点、下一步和摘要。`utility_record_table` 是记录落地层,必须有工具栏和稳定行高。
188
+
189
+ ## 5. 视觉品质基线
190
+
191
+ 头部操作要呈现主次关系;指标卡要靠细边框和数字层级,而不是厚阴影;柱状图不能使用默认样式,需有圆角、阈值和轻网格;右侧栏卡片要有分页、箭头、胶囊、头像或状态细节;表格必须有筛选搜索和行操作。
192
+
193
+ ## 6. 布局规则
194
+
195
+ ```text
196
+ page_shell
197
+ command_filter_header
198
+ metric_row
199
+ main_grid
200
+ chart_and_table_column
201
+ stacked_right_rail
202
+ ```
203
+
204
+ 主 grid 使用 `align-items: stretch`。左主栏和右栏同高策略由父级控制。面板 `height: 100%`、`min-width: 0`、`min-height: 0`。柱状图固定高度,右栏内部可滚动,表格行固定高度,间距只用父级 `gap`。
205
+
206
+ ## 7. PRD 槽位映射
207
+
208
+ | PRD 内容类型 | 视觉槽位 | 规则 |
209
+ | --- | --- | --- |
210
+ | 全局操作和筛选 | `command_filter_header` | 主次按钮、日期、筛选排序同层。 |
211
+ | 核心指标 | `metric_row` | 细边框等宽卡片,不强造数字。 |
212
+ | 周期分布或容量数据 | `large_chart_panel` | 优先圆角柱状图;无数据时用同等品质主内容面板。 |
213
+ | 今日焦点、下一步、提醒 | `right_rail` | 右侧堆叠卡片,由 PRD 决定数量。 |
214
+ | 记录列表 | `detail_table` | 表格工具栏、复选框、行操作齐全。 |
215
+
216
+ ## 8. 组件规则
217
+
218
+ 卡片圆角 14-16px,1px 边框,轻阴影或无阴影。主按钮使用实底,次按钮白底描边。指标数字 36-42px。柱状图条宽稳定、端点全圆角,阈值线虚线。右栏卡片内嵌子卡可用浅蓝或白底。表格首列复选框,末列更多操作。
219
+
220
+ ## 9. 响应式与可访问性
221
+
222
+ 桌面端右栏固定在右侧;中等宽度右栏下移;移动端按头部、指标、图表、右栏卡片、表格顺序纵向。触控目标不小于 44px。图标按钮有标签。状态用颜色加文字或图标。
223
+
224
+ ## 10. 禁止项
225
+
226
+ - 禁止复制具体业务、人物、专属活动、工具品牌、日期和示例数字。
227
+ - 禁止让主题色污染背景或所有卡片。
228
+ - 禁止默认柱状图、裸表格、无工具栏列表。
229
+ - 禁止自由高度右栏卡片和零散 margin。
230
+ - 禁止 PRD 没有行动队列时强加右栏。
231
+
232
+ ## 11. Agent 使用提示
233
+
234
+ 先读 PRD 判断是否存在指标、周期分析、行动栏和记录表。再按主题色替换蓝色强调。实现时必须保留细边框、圆角柱状图、右栏堆叠卡片和工具化表格。
235
+
236
+ ## 12. 交付自检清单
237
+
238
+ - 内容是否来自 PRD。
239
+ - 指标、图表、右栏、表格是否按 PRD 条件落地。
240
+ - 主题色是否只改写强调色。
241
+ - 面板边框、稳定高度和父级 gap 是否正确。
242
+ - 组件状态、响应式、可访问性是否完整。