onto-mcp 0.3.0

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 (447) hide show
  1. package/.onto/authority/core-lens-registry.yaml +134 -0
  2. package/.onto/authority/core-lexicon.yaml +1562 -0
  3. package/.onto/authority/diagnostic-codes.yaml +94 -0
  4. package/.onto/domains/accounting/competency_qs.md +384 -0
  5. package/.onto/domains/accounting/concepts.md +186 -0
  6. package/.onto/domains/accounting/conciseness_rules.md +160 -0
  7. package/.onto/domains/accounting/dependency_rules.md +239 -0
  8. package/.onto/domains/accounting/domain_scope.md +213 -0
  9. package/.onto/domains/accounting/extension_cases.md +416 -0
  10. package/.onto/domains/accounting/logic_rules.md +226 -0
  11. package/.onto/domains/accounting/structure_spec.md +298 -0
  12. package/.onto/domains/accounting-kr/competency_qs.md +562 -0
  13. package/.onto/domains/accounting-kr/concepts.md +187 -0
  14. package/.onto/domains/accounting-kr/conciseness_rules.md +125 -0
  15. package/.onto/domains/accounting-kr/dependency_rules.md +93 -0
  16. package/.onto/domains/accounting-kr/domain_scope.md +140 -0
  17. package/.onto/domains/accounting-kr/extension_cases.md +343 -0
  18. package/.onto/domains/accounting-kr/logic_rules.md +160 -0
  19. package/.onto/domains/accounting-kr/structure_spec.md +85 -0
  20. package/.onto/domains/business/competency_qs.md +263 -0
  21. package/.onto/domains/business/concepts.md +200 -0
  22. package/.onto/domains/business/conciseness_rules.md +135 -0
  23. package/.onto/domains/business/dependency_rules.md +113 -0
  24. package/.onto/domains/business/domain_scope.md +240 -0
  25. package/.onto/domains/business/extension_cases.md +249 -0
  26. package/.onto/domains/business/logic_rules.md +134 -0
  27. package/.onto/domains/business/structure_spec.md +114 -0
  28. package/.onto/domains/finance/competency_qs.md +362 -0
  29. package/.onto/domains/finance/concepts.md +194 -0
  30. package/.onto/domains/finance/conciseness_rules.md +155 -0
  31. package/.onto/domains/finance/dependency_rules.md +171 -0
  32. package/.onto/domains/finance/domain_scope.md +215 -0
  33. package/.onto/domains/finance/extension_cases.md +350 -0
  34. package/.onto/domains/finance/logic_rules.md +191 -0
  35. package/.onto/domains/finance/structure_spec.md +182 -0
  36. package/.onto/domains/llm-native-development/competency_qs.md +430 -0
  37. package/.onto/domains/llm-native-development/concepts.md +242 -0
  38. package/.onto/domains/llm-native-development/conciseness_rules.md +163 -0
  39. package/.onto/domains/llm-native-development/dependency_rules.md +216 -0
  40. package/.onto/domains/llm-native-development/domain_scope.md +197 -0
  41. package/.onto/domains/llm-native-development/extension_cases.md +474 -0
  42. package/.onto/domains/llm-native-development/logic_rules.md +123 -0
  43. package/.onto/domains/llm-native-development/prompt_interface.md +49 -0
  44. package/.onto/domains/llm-native-development/structure_spec.md +245 -0
  45. package/.onto/domains/market-intelligence/competency_qs.md +274 -0
  46. package/.onto/domains/market-intelligence/concepts.md +233 -0
  47. package/.onto/domains/market-intelligence/conciseness_rules.md +165 -0
  48. package/.onto/domains/market-intelligence/dependency_rules.md +197 -0
  49. package/.onto/domains/market-intelligence/domain_scope.md +231 -0
  50. package/.onto/domains/market-intelligence/extension_cases.md +425 -0
  51. package/.onto/domains/market-intelligence/logic_rules.md +247 -0
  52. package/.onto/domains/market-intelligence/structure_spec.md +209 -0
  53. package/.onto/domains/ontology/competency_qs.md +394 -0
  54. package/.onto/domains/ontology/concepts.md +172 -0
  55. package/.onto/domains/ontology/conciseness_rules.md +134 -0
  56. package/.onto/domains/ontology/dependency_rules.md +125 -0
  57. package/.onto/domains/ontology/domain_scope.md +114 -0
  58. package/.onto/domains/ontology/extension_cases.md +501 -0
  59. package/.onto/domains/ontology/logic_rules.md +114 -0
  60. package/.onto/domains/ontology/problem_framing_profile.md +67 -0
  61. package/.onto/domains/ontology/structure_spec.md +115 -0
  62. package/.onto/domains/palantir-foundry/RESEARCH_NOTES.md +911 -0
  63. package/.onto/domains/palantir-foundry/competency_qs.md +191 -0
  64. package/.onto/domains/palantir-foundry/competitive_comparison.md +329 -0
  65. package/.onto/domains/palantir-foundry/concepts.md +197 -0
  66. package/.onto/domains/palantir-foundry/conciseness_rules.md +245 -0
  67. package/.onto/domains/palantir-foundry/dependency_rules.md +135 -0
  68. package/.onto/domains/palantir-foundry/domain_scope.md +395 -0
  69. package/.onto/domains/palantir-foundry/extension_cases.md +210 -0
  70. package/.onto/domains/palantir-foundry/logic_rules.md +172 -0
  71. package/.onto/domains/palantir-foundry/structure_spec.md +291 -0
  72. package/.onto/domains/software-engineering/competency_qs.md +538 -0
  73. package/.onto/domains/software-engineering/concepts.md +238 -0
  74. package/.onto/domains/software-engineering/conciseness_rules.md +167 -0
  75. package/.onto/domains/software-engineering/dependency_rules.md +216 -0
  76. package/.onto/domains/software-engineering/domain_scope.md +183 -0
  77. package/.onto/domains/software-engineering/extension_cases.md +551 -0
  78. package/.onto/domains/software-engineering/logic_rules.md +240 -0
  79. package/.onto/domains/software-engineering/problem_framing_profile.md +68 -0
  80. package/.onto/domains/software-engineering/structure_spec.md +185 -0
  81. package/.onto/domains/ui-design/competency_qs.md +567 -0
  82. package/.onto/domains/ui-design/concepts.md +194 -0
  83. package/.onto/domains/ui-design/conciseness_rules.md +190 -0
  84. package/.onto/domains/ui-design/dependency_rules.md +323 -0
  85. package/.onto/domains/ui-design/domain_scope.md +340 -0
  86. package/.onto/domains/ui-design/extension_cases.md +563 -0
  87. package/.onto/domains/ui-design/logic_rules.md +349 -0
  88. package/.onto/domains/ui-design/structure_spec.md +252 -0
  89. package/.onto/domains/visual-design/competency_qs.md +472 -0
  90. package/.onto/domains/visual-design/concepts.md +147 -0
  91. package/.onto/domains/visual-design/conciseness_rules.md +186 -0
  92. package/.onto/domains/visual-design/dependency_rules.md +282 -0
  93. package/.onto/domains/visual-design/domain_scope.md +290 -0
  94. package/.onto/domains/visual-design/extension_cases.md +480 -0
  95. package/.onto/domains/visual-design/logic_rules.md +232 -0
  96. package/.onto/domains/visual-design/structure_spec.md +213 -0
  97. package/.onto/principles/llm-native-development-guideline.md +401 -0
  98. package/.onto/principles/llm-runtime-interface-principles.md +665 -0
  99. package/.onto/principles/non-specialist-communication-guideline.md +74 -0
  100. package/.onto/principles/ontology-as-code-guideline.md +243 -0
  101. package/.onto/principles/ontology-as-code-naming-charter.md +130 -0
  102. package/.onto/principles/product-locality-principle.md +129 -0
  103. package/.onto/principles/productization-charter.md +569 -0
  104. package/.onto/processes/evolve/material-kind-adapter-contract.md +113 -0
  105. package/.onto/processes/reconstruct/reconstruct-boundary-contract.md +366 -0
  106. package/.onto/processes/reconstruct/source-profile-contract.md +107 -0
  107. package/.onto/processes/reconstruct/source-profiles/code.md +72 -0
  108. package/.onto/processes/reconstruct/source-profiles/database.md +74 -0
  109. package/.onto/processes/reconstruct/source-profiles/document.md +71 -0
  110. package/.onto/processes/reconstruct/source-profiles/spreadsheet.md +79 -0
  111. package/.onto/processes/review/binding-contract.md +270 -0
  112. package/.onto/processes/review/execution-preparation-artifacts.md +281 -0
  113. package/.onto/processes/review/interpretation-contract.md +245 -0
  114. package/.onto/processes/review/issue-stance-deliberation-contract.md +761 -0
  115. package/.onto/processes/review/lens-prompt-contract.md +402 -0
  116. package/.onto/processes/review/lens-registry.md +127 -0
  117. package/.onto/processes/review/pre-dispatch-contracts.md +428 -0
  118. package/.onto/processes/review/productized-live-path.md +398 -0
  119. package/.onto/processes/review/prompt-execution-runner-contract.md +187 -0
  120. package/.onto/processes/review/record-contract.md +427 -0
  121. package/.onto/processes/review/record-field-mapping.md +337 -0
  122. package/.onto/processes/review/review-context-manifest-contract.md +356 -0
  123. package/.onto/processes/review/review-execution-ux-contract.md +809 -0
  124. package/.onto/processes/review/review-target-profile-contract.md +259 -0
  125. package/.onto/processes/review/shared-phenomenon-contract.md +129 -0
  126. package/.onto/processes/review/synthesize-prompt-contract.md +343 -0
  127. package/.onto/processes/shared/target-material-kind-contract.md +198 -0
  128. package/.onto/roles/axiology.md +81 -0
  129. package/.onto/roles/conciseness.md +36 -0
  130. package/.onto/roles/coverage.md +34 -0
  131. package/.onto/roles/dependency.md +37 -0
  132. package/.onto/roles/evolution.md +35 -0
  133. package/.onto/roles/logic.md +104 -0
  134. package/.onto/roles/pragmatics.md +32 -0
  135. package/.onto/roles/semantics.md +36 -0
  136. package/.onto/roles/structure.md +33 -0
  137. package/.onto/roles/synthesize.md +92 -0
  138. package/AGENTS.md +240 -0
  139. package/CLAUDE.md +39 -0
  140. package/README.md +287 -0
  141. package/bin/onto +92 -0
  142. package/dist/cli.js +101 -0
  143. package/dist/core-api/reconstruct-api.js +222 -0
  144. package/dist/core-api/review-api.js +1271 -0
  145. package/dist/core-runtime/cli/assemble-review-record.js +431 -0
  146. package/dist/core-runtime/cli/bootstrap-review-binding.js +186 -0
  147. package/dist/core-runtime/cli/codex-nested-dispatch.js +226 -0
  148. package/dist/core-runtime/cli/codex-nested-dispatch.test.js +390 -0
  149. package/dist/core-runtime/cli/codex-nested-teamlead-executor.js +464 -0
  150. package/dist/core-runtime/cli/codex-nested-teamlead-executor.test.js +335 -0
  151. package/dist/core-runtime/cli/codex-review-unit-executor.js +228 -0
  152. package/dist/core-runtime/cli/complete-review-session.js +64 -0
  153. package/dist/core-runtime/cli/complexity-assessment.js +153 -0
  154. package/dist/core-runtime/cli/coordinator-helpers.js +583 -0
  155. package/dist/core-runtime/cli/coordinator-state-machine-deliberation.test.js +167 -0
  156. package/dist/core-runtime/cli/coordinator-state-machine.js +794 -0
  157. package/dist/core-runtime/cli/e2e-codex-multi-agent-fixes.test.js +615 -0
  158. package/dist/core-runtime/cli/e2e-start-review-session.test.js +312 -0
  159. package/dist/core-runtime/cli/health.js +44 -0
  160. package/dist/core-runtime/cli/inline-http-review-unit-executor.js +656 -0
  161. package/dist/core-runtime/cli/inline-http-review-unit-executor.test.js +567 -0
  162. package/dist/core-runtime/cli/materialize-review-execution-preparation.js +104 -0
  163. package/dist/core-runtime/cli/materialize-review-prompt-packets.js +952 -0
  164. package/dist/core-runtime/cli/migrate-session-roots.js +118 -0
  165. package/dist/core-runtime/cli/mock-review-unit-executor.js +285 -0
  166. package/dist/core-runtime/cli/onto-tools.js +369 -0
  167. package/dist/core-runtime/cli/prepare-review-session.js +272 -0
  168. package/dist/core-runtime/cli/render-review-final-output.js +350 -0
  169. package/dist/core-runtime/cli/repo-layout-migration-replace.smoke.test.js +106 -0
  170. package/dist/core-runtime/cli/review-invoke-auto-resolution.test.js +268 -0
  171. package/dist/core-runtime/cli/review-invoke-coordinator-topology.test.js +136 -0
  172. package/dist/core-runtime/cli/review-invoke-resolver-caching.test.js +201 -0
  173. package/dist/core-runtime/cli/review-invoke-topology-dispatch.test.js +192 -0
  174. package/dist/core-runtime/cli/review-invoke.js +2030 -0
  175. package/dist/core-runtime/cli/run-review-prompt-execution.js +2152 -0
  176. package/dist/core-runtime/cli/session-root-guard.js +168 -0
  177. package/dist/core-runtime/cli/spawn-watcher.js +173 -0
  178. package/dist/core-runtime/cli/spawn-watcher.test.js +457 -0
  179. package/dist/core-runtime/cli/start-review-session.js +68 -0
  180. package/dist/core-runtime/cli/strip-wrapping-code-fence.js +56 -0
  181. package/dist/core-runtime/cli/strip-wrapping-code-fence.test.js +79 -0
  182. package/dist/core-runtime/cli/teamcreate-lens-deliberation-executor.js +412 -0
  183. package/dist/core-runtime/cli/teamcreate-lens-deliberation-executor.test.js +351 -0
  184. package/dist/core-runtime/cli/topology-executor-mapping.js +139 -0
  185. package/dist/core-runtime/cli/topology-executor-mapping.test.js +173 -0
  186. package/dist/core-runtime/cli/write-review-interpretation.js +81 -0
  187. package/dist/core-runtime/config/onto-config-cli.js +278 -0
  188. package/dist/core-runtime/config/onto-config-key-path.js +288 -0
  189. package/dist/core-runtime/config/onto-config-key-path.test.js +195 -0
  190. package/dist/core-runtime/config/onto-config-preview.js +108 -0
  191. package/dist/core-runtime/config/onto-config-preview.test.js +132 -0
  192. package/dist/core-runtime/discovery/config-chain.js +118 -0
  193. package/dist/core-runtime/discovery/config-chain.test.js +103 -0
  194. package/dist/core-runtime/discovery/config-profile.js +199 -0
  195. package/dist/core-runtime/discovery/config-profile.test.js +233 -0
  196. package/dist/core-runtime/discovery/host-detection.js +33 -0
  197. package/dist/core-runtime/discovery/host-detection.test.js +186 -0
  198. package/dist/core-runtime/discovery/installation-paths.js +21 -0
  199. package/dist/core-runtime/discovery/installation-paths.test.js +65 -0
  200. package/dist/core-runtime/discovery/lens-registry.js +60 -0
  201. package/dist/core-runtime/discovery/lens-registry.test.js +81 -0
  202. package/dist/core-runtime/discovery/onto-home.js +71 -0
  203. package/dist/core-runtime/discovery/path-normalization.js +28 -0
  204. package/dist/core-runtime/discovery/path-normalization.test.js +22 -0
  205. package/dist/core-runtime/discovery/plugin-path.js +72 -0
  206. package/dist/core-runtime/discovery/plugin-path.test.js +95 -0
  207. package/dist/core-runtime/discovery/project-root.js +47 -0
  208. package/dist/core-runtime/discovery/settings-chain.js +353 -0
  209. package/dist/core-runtime/discovery/walk-up.js +17 -0
  210. package/dist/core-runtime/evolve/adapters/code-product/compile/compile-defense.js +344 -0
  211. package/dist/core-runtime/evolve/adapters/code-product/compile/compile-defense.test.js +915 -0
  212. package/dist/core-runtime/evolve/adapters/code-product/compile/compile.js +564 -0
  213. package/dist/core-runtime/evolve/adapters/code-product/compile/compile.test.js +708 -0
  214. package/dist/core-runtime/evolve/adapters/code-product/parsers/brief-parser.js +165 -0
  215. package/dist/core-runtime/evolve/adapters/code-product/parsers/brief-parser.test.js +227 -0
  216. package/dist/core-runtime/evolve/adapters/code-product/validators/validate.js +59 -0
  217. package/dist/core-runtime/evolve/adapters/code-product/validators/validate.test.js +205 -0
  218. package/dist/core-runtime/evolve/adapters/methodology/adapter.js +16 -0
  219. package/dist/core-runtime/evolve/adapters/methodology/adapter.test.js +9 -0
  220. package/dist/core-runtime/evolve/adapters/methodology/perspectives/authority-consistency.js +298 -0
  221. package/dist/core-runtime/evolve/adapters/methodology/perspectives/authority-consistency.test.js +70 -0
  222. package/dist/core-runtime/evolve/adapters/methodology/scope-types/process.js +46 -0
  223. package/dist/core-runtime/evolve/adapters/methodology/scope-types/process.test.js +73 -0
  224. package/dist/core-runtime/evolve/adapters/registry.js +47 -0
  225. package/dist/core-runtime/evolve/adapters/registry.test.js +67 -0
  226. package/dist/core-runtime/evolve/cli.js +256 -0
  227. package/dist/core-runtime/evolve/commands/align.js +194 -0
  228. package/dist/core-runtime/evolve/commands/align.test.js +82 -0
  229. package/dist/core-runtime/evolve/commands/apply.js +161 -0
  230. package/dist/core-runtime/evolve/commands/apply.test.js +138 -0
  231. package/dist/core-runtime/evolve/commands/close.js +39 -0
  232. package/dist/core-runtime/evolve/commands/close.test.js +99 -0
  233. package/dist/core-runtime/evolve/commands/defer.js +40 -0
  234. package/dist/core-runtime/evolve/commands/defer.test.js +134 -0
  235. package/dist/core-runtime/evolve/commands/draft.js +323 -0
  236. package/dist/core-runtime/evolve/commands/draft.test.js +178 -0
  237. package/dist/core-runtime/evolve/commands/e2e-evolve-full-cycle.test.js +208 -0
  238. package/dist/core-runtime/evolve/commands/error-messages.js +125 -0
  239. package/dist/core-runtime/evolve/commands/error-messages.test.js +167 -0
  240. package/dist/core-runtime/evolve/commands/propose-align.js +222 -0
  241. package/dist/core-runtime/evolve/commands/propose-align.test.js +136 -0
  242. package/dist/core-runtime/evolve/commands/reconstruct.js +330 -0
  243. package/dist/core-runtime/evolve/commands/reconstruct.test.js +278 -0
  244. package/dist/core-runtime/evolve/commands/shared.js +22 -0
  245. package/dist/core-runtime/evolve/commands/stale-check.js +103 -0
  246. package/dist/core-runtime/evolve/commands/stale-check.test.js +84 -0
  247. package/dist/core-runtime/evolve/commands/start.js +887 -0
  248. package/dist/core-runtime/evolve/commands/start.test.js +396 -0
  249. package/dist/core-runtime/evolve/config/project-config.js +99 -0
  250. package/dist/core-runtime/evolve/config/project-config.test.js +170 -0
  251. package/dist/core-runtime/evolve/renderers/align-packet.js +280 -0
  252. package/dist/core-runtime/evolve/renderers/align-packet.test.js +332 -0
  253. package/dist/core-runtime/evolve/renderers/draft-packet.js +303 -0
  254. package/dist/core-runtime/evolve/renderers/draft-packet.test.js +377 -0
  255. package/dist/core-runtime/evolve/renderers/format.js +5 -0
  256. package/dist/core-runtime/evolve/renderers/scope-md.js +237 -0
  257. package/dist/core-runtime/evolve/renderers/scope-md.test.js +306 -0
  258. package/dist/core-runtime/govern/cli.js +369 -0
  259. package/dist/core-runtime/govern/cli.test.js +314 -0
  260. package/dist/core-runtime/govern/drift-engine.js +103 -0
  261. package/dist/core-runtime/govern/drift-engine.test.js +319 -0
  262. package/dist/core-runtime/govern/promote-principle.js +206 -0
  263. package/dist/core-runtime/govern/promote-principle.test.js +368 -0
  264. package/dist/core-runtime/govern/queue.js +81 -0
  265. package/dist/core-runtime/govern/types.js +16 -0
  266. package/dist/core-runtime/install/cli.js +530 -0
  267. package/dist/core-runtime/install/detect.js +128 -0
  268. package/dist/core-runtime/install/detect.test.js +155 -0
  269. package/dist/core-runtime/install/gitignore-update.js +74 -0
  270. package/dist/core-runtime/install/gitignore-update.test.js +64 -0
  271. package/dist/core-runtime/install/install-integration.test.js +373 -0
  272. package/dist/core-runtime/install/prompts.js +389 -0
  273. package/dist/core-runtime/install/prompts.test.js +293 -0
  274. package/dist/core-runtime/install/types.js +26 -0
  275. package/dist/core-runtime/install/validation.js +295 -0
  276. package/dist/core-runtime/install/validation.test.js +313 -0
  277. package/dist/core-runtime/install/writer.js +254 -0
  278. package/dist/core-runtime/install/writer.test.js +218 -0
  279. package/dist/core-runtime/learning/extractor.js +461 -0
  280. package/dist/core-runtime/learning/feedback.js +179 -0
  281. package/dist/core-runtime/learning/health-report.js +165 -0
  282. package/dist/core-runtime/learning/health-report.test.js +169 -0
  283. package/dist/core-runtime/learning/loader.js +388 -0
  284. package/dist/core-runtime/learning/loader.test.js +102 -0
  285. package/dist/core-runtime/learning/promote/apply-state.js +240 -0
  286. package/dist/core-runtime/learning/promote/audit-obligation.js +195 -0
  287. package/dist/core-runtime/learning/promote/collector.js +432 -0
  288. package/dist/core-runtime/learning/promote/degraded-state.js +125 -0
  289. package/dist/core-runtime/learning/promote/domain-doc-proposer.js +166 -0
  290. package/dist/core-runtime/learning/promote/e2e-promote.test.js +6385 -0
  291. package/dist/core-runtime/learning/promote/health-snapshot.js +150 -0
  292. package/dist/core-runtime/learning/promote/insight-reclassifier.js +544 -0
  293. package/dist/core-runtime/learning/promote/judgment-auditor.js +517 -0
  294. package/dist/core-runtime/learning/promote/panel-reviewer.js +1158 -0
  295. package/dist/core-runtime/learning/promote/promote-executor.js +1675 -0
  296. package/dist/core-runtime/learning/promote/promoter.js +307 -0
  297. package/dist/core-runtime/learning/promote/retirement.js +122 -0
  298. package/dist/core-runtime/learning/promote/types.js +23 -0
  299. package/dist/core-runtime/learning/prompt-sections.js +51 -0
  300. package/dist/core-runtime/learning/shared/artifact-registry-init.js +45 -0
  301. package/dist/core-runtime/learning/shared/artifact-registry.js +254 -0
  302. package/dist/core-runtime/learning/shared/audit-obligation-kernel.js +73 -0
  303. package/dist/core-runtime/learning/shared/audit-state.js +99 -0
  304. package/dist/core-runtime/learning/shared/duplicate-check.js +28 -0
  305. package/dist/core-runtime/learning/shared/llm-caller.js +831 -0
  306. package/dist/core-runtime/learning/shared/llm-caller.test.js +601 -0
  307. package/dist/core-runtime/learning/shared/llm-tool-loop.js +393 -0
  308. package/dist/core-runtime/learning/shared/mode.js +25 -0
  309. package/dist/core-runtime/learning/shared/paths.js +84 -0
  310. package/dist/core-runtime/learning/shared/paths.test.js +79 -0
  311. package/dist/core-runtime/learning/shared/patterns.js +37 -0
  312. package/dist/core-runtime/learning/shared/recoverability.js +355 -0
  313. package/dist/core-runtime/learning/shared/recovery-context.js +374 -0
  314. package/dist/core-runtime/learning/shared/scope.js +1 -0
  315. package/dist/core-runtime/learning/shared/semantic-classifier.js +94 -0
  316. package/dist/core-runtime/learning/shared/specs/apply-execution-state-spec.js +42 -0
  317. package/dist/core-runtime/learning/shared/specs/audit-state-spec.js +37 -0
  318. package/dist/core-runtime/learning/shared/specs/backup-metadata-spec.js +39 -0
  319. package/dist/core-runtime/learning/shared/specs/emergency-log-spec.js +41 -0
  320. package/dist/core-runtime/learning/shared/specs/layout-version-spec.js +38 -0
  321. package/dist/core-runtime/learning/shared/specs/promote-decisions-spec.js +43 -0
  322. package/dist/core-runtime/learning/shared/specs/promote-report-spec.js +113 -0
  323. package/dist/core-runtime/learning/shared/specs/prune-log-spec.js +36 -0
  324. package/dist/core-runtime/learning/shared/specs/recovery-resolution-spec.js +48 -0
  325. package/dist/core-runtime/learning/shared/specs/restore-manifest-spec.js +43 -0
  326. package/dist/core-runtime/learning/shared/specs/spec-helpers.js +64 -0
  327. package/dist/core-runtime/learning/usage-tracker.js +190 -0
  328. package/dist/core-runtime/learning/usage-tracker.test.js +176 -0
  329. package/dist/core-runtime/llm/llm-caller.js +649 -0
  330. package/dist/core-runtime/llm/llm-tool-loop.js +401 -0
  331. package/dist/core-runtime/llm/model-switcher.js +62 -0
  332. package/dist/core-runtime/logger.js +22 -0
  333. package/dist/core-runtime/onboard/detect-review-axes.js +122 -0
  334. package/dist/core-runtime/onboard/detect-review-axes.test.js +127 -0
  335. package/dist/core-runtime/onboard/write-review-block.js +188 -0
  336. package/dist/core-runtime/onboard/write-review-block.test.js +240 -0
  337. package/dist/core-runtime/readers/brownfield-builder.js +150 -0
  338. package/dist/core-runtime/readers/brownfield-builder.test.js +136 -0
  339. package/dist/core-runtime/readers/code-chunk-collector.js +53 -0
  340. package/dist/core-runtime/readers/code-chunk-collector.test.js +136 -0
  341. package/dist/core-runtime/readers/file-utils.js +240 -0
  342. package/dist/core-runtime/readers/file-utils.test.js +146 -0
  343. package/dist/core-runtime/readers/lexicon-citation-check.js +93 -0
  344. package/dist/core-runtime/readers/lexicon-citation-check.test.js +77 -0
  345. package/dist/core-runtime/readers/mcp-figma.js +30 -0
  346. package/dist/core-runtime/readers/mcp-figma.test.js +82 -0
  347. package/dist/core-runtime/readers/mcp-generic.js +31 -0
  348. package/dist/core-runtime/readers/mcp-generic.test.js +76 -0
  349. package/dist/core-runtime/readers/ontology-index.js +148 -0
  350. package/dist/core-runtime/readers/ontology-index.test.js +245 -0
  351. package/dist/core-runtime/readers/ontology-query.js +168 -0
  352. package/dist/core-runtime/readers/ontology-query.test.js +311 -0
  353. package/dist/core-runtime/readers/ontology-resolve.js +48 -0
  354. package/dist/core-runtime/readers/ontology-resolve.test.js +48 -0
  355. package/dist/core-runtime/readers/patterns/index.js +7 -0
  356. package/dist/core-runtime/readers/review-log.js +213 -0
  357. package/dist/core-runtime/readers/review-log.test.js +313 -0
  358. package/dist/core-runtime/readers/scan-local.js +102 -0
  359. package/dist/core-runtime/readers/scan-local.test.js +102 -0
  360. package/dist/core-runtime/readers/scan-tarball.js +121 -0
  361. package/dist/core-runtime/readers/scan-tarball.test.js +283 -0
  362. package/dist/core-runtime/readers/scan-vault.js +34 -0
  363. package/dist/core-runtime/readers/scan-vault.test.js +81 -0
  364. package/dist/core-runtime/readers/types.js +42 -0
  365. package/dist/core-runtime/readers/types.test.js +94 -0
  366. package/dist/core-runtime/readers/viewpoint-collectors.js +229 -0
  367. package/dist/core-runtime/reconstruct/artifact-types.js +1 -0
  368. package/dist/core-runtime/reconstruct/directive-validation.js +123 -0
  369. package/dist/core-runtime/reconstruct/materialize-preparation.js +251 -0
  370. package/dist/core-runtime/reconstruct/record.js +198 -0
  371. package/dist/core-runtime/reconstruct/run.js +578 -0
  372. package/dist/core-runtime/reconstruct/seed-candidate-validation.js +356 -0
  373. package/dist/core-runtime/reconstruct/source-observations.js +62 -0
  374. package/dist/core-runtime/reconstruct/source-profiles.js +73 -0
  375. package/dist/core-runtime/release-channel/release-channel.js +90 -0
  376. package/dist/core-runtime/review/artifact-types.js +13 -0
  377. package/dist/core-runtime/review/citation-audit.js +204 -0
  378. package/dist/core-runtime/review/citation-audit.test.js +165 -0
  379. package/dist/core-runtime/review/controlled-lens-deliberation.js +125 -0
  380. package/dist/core-runtime/review/execution-plan-resolver.js +247 -0
  381. package/dist/core-runtime/review/execution-plan-resolver.test.js +243 -0
  382. package/dist/core-runtime/review/execution-topology-resolver-axis-first.test.js +246 -0
  383. package/dist/core-runtime/review/execution-topology-resolver.js +401 -0
  384. package/dist/core-runtime/review/execution-topology-resolver.test.js +315 -0
  385. package/dist/core-runtime/review/failure-records.js +57 -0
  386. package/dist/core-runtime/review/inline-context-embedder.js +141 -0
  387. package/dist/core-runtime/review/inline-context-embedder.test.js +154 -0
  388. package/dist/core-runtime/review/issue-artifact-runtime.js +859 -0
  389. package/dist/core-runtime/review/legacy-mode-policy.js +88 -0
  390. package/dist/core-runtime/review/lens-completion-policy.js +17 -0
  391. package/dist/core-runtime/review/materializers-effort-persist.test.js +79 -0
  392. package/dist/core-runtime/review/materializers.js +963 -0
  393. package/dist/core-runtime/review/ontology-path-classifier.js +179 -0
  394. package/dist/core-runtime/review/ontology-path-classifier.test.js +216 -0
  395. package/dist/core-runtime/review/packet-boundary-policy.js +215 -0
  396. package/dist/core-runtime/review/packet-boundary-policy.test.js +107 -0
  397. package/dist/core-runtime/review/participating-lens-paths.js +61 -0
  398. package/dist/core-runtime/review/participating-lens-paths.test.js +73 -0
  399. package/dist/core-runtime/review/review-artifact-utils.js +287 -0
  400. package/dist/core-runtime/review/review-config-legacy-translate.js +244 -0
  401. package/dist/core-runtime/review/review-config-legacy-translate.test.js +161 -0
  402. package/dist/core-runtime/review/review-config-validator.js +289 -0
  403. package/dist/core-runtime/review/review-config-validator.test.js +236 -0
  404. package/dist/core-runtime/review/review-execution-profile.js +193 -0
  405. package/dist/core-runtime/review/review-execution-route.js +52 -0
  406. package/dist/core-runtime/review/review-progress-contract.js +123 -0
  407. package/dist/core-runtime/review/review-record-validation.js +251 -0
  408. package/dist/core-runtime/review/review-result-classification.js +379 -0
  409. package/dist/core-runtime/review/review-state-machine.js +39 -0
  410. package/dist/core-runtime/review/route-visibility.js +125 -0
  411. package/dist/core-runtime/review/shape-pipeline-audit.test.js +311 -0
  412. package/dist/core-runtime/review/shape-to-topology-id.js +117 -0
  413. package/dist/core-runtime/review/shape-to-topology-id.test.js +132 -0
  414. package/dist/core-runtime/review/topology-shape-derivation.js +155 -0
  415. package/dist/core-runtime/review/topology-shape-derivation.test.js +195 -0
  416. package/dist/core-runtime/scope-runtime/constants.js +12 -0
  417. package/dist/core-runtime/scope-runtime/constraint-pool.js +166 -0
  418. package/dist/core-runtime/scope-runtime/constraint-pool.test.js +674 -0
  419. package/dist/core-runtime/scope-runtime/domain-validation-log.js +135 -0
  420. package/dist/core-runtime/scope-runtime/domain-validation-log.test.js +156 -0
  421. package/dist/core-runtime/scope-runtime/eval-persistence.js +65 -0
  422. package/dist/core-runtime/scope-runtime/eval-persistence.test.js +84 -0
  423. package/dist/core-runtime/scope-runtime/event-pipeline.js +64 -0
  424. package/dist/core-runtime/scope-runtime/event-pipeline.test.js +450 -0
  425. package/dist/core-runtime/scope-runtime/event-store.js +39 -0
  426. package/dist/core-runtime/scope-runtime/event-store.test.js +95 -0
  427. package/dist/core-runtime/scope-runtime/gate-guard.js +348 -0
  428. package/dist/core-runtime/scope-runtime/gate-guard.test.js +1047 -0
  429. package/dist/core-runtime/scope-runtime/hash.js +4 -0
  430. package/dist/core-runtime/scope-runtime/hash.test.js +33 -0
  431. package/dist/core-runtime/scope-runtime/id.js +4 -0
  432. package/dist/core-runtime/scope-runtime/id.test.js +17 -0
  433. package/dist/core-runtime/scope-runtime/reducer.js +297 -0
  434. package/dist/core-runtime/scope-runtime/reducer.test.js +759 -0
  435. package/dist/core-runtime/scope-runtime/scope-manager.js +161 -0
  436. package/dist/core-runtime/scope-runtime/state-machine.js +309 -0
  437. package/dist/core-runtime/scope-runtime/state-machine.test.js +704 -0
  438. package/dist/core-runtime/scope-runtime/types.js +116 -0
  439. package/dist/core-runtime/scope-runtime/types.test.js +69 -0
  440. package/dist/core-runtime/target-material-kind.js +256 -0
  441. package/dist/core-runtime/translate/render-for-user.js +169 -0
  442. package/dist/core-runtime/translate/render-for-user.test.js +122 -0
  443. package/dist/mcp/server.js +1011 -0
  444. package/dist/mcp/tool-schemas.js +93 -0
  445. package/dist/providers/capability-contract.js +1 -0
  446. package/package.json +68 -0
  447. package/settings.example.json +33 -0
@@ -0,0 +1,340 @@
1
+ ---
2
+ version: 2
3
+ last_updated: "2026-03-31"
4
+ source: manual
5
+ status: established
6
+ ---
7
+
8
+ # UI Design Domain — Domain Scope Definition
9
+
10
+ This is the reference document used by coverage to identify "what should exist but is missing."
11
+ This domain applies when **reviewing** the structure, patterns, and interaction design of user interfaces (UI).
12
+
13
+ > **Boundary with visual-design domain**: visual-design covers the "visual expression system" including color, typography, composition, and branding. This domain covers "the structure through which the interface accommodates user intent and communicates results." Button color and typeface are under visual-design's jurisdiction; where a button is placed, what feedback it provides, and when it is disabled are under this domain's jurisdiction.
14
+
15
+ ## Key Sub-Areas
16
+
17
+ Classification axis: **UI design concern** — Classified by the design concern that the interface must address.
18
+
19
+ Applicability markers:
20
+ - **(required)**: Must be addressed in any UI design review. Absence indicates a fundamental gap
21
+ - **(when applicable)**: Address when the system's feature set includes the relevant pattern. Condition type: feature existence (binary — the feature either exists or does not)
22
+ - **(scale-dependent)**: Becomes required beyond a scale threshold documented per item. Condition type: scale threshold (a quantitative boundary is crossed)
23
+
24
+ `(when applicable)` and `(scale-dependent)` are **mutually exclusive** (ME). `(when applicable)` triggers on binary feature presence. `(scale-dependent)` triggers when a continuous scale metric exceeds a threshold. No item carries both.
25
+
26
+ Compound-condition handling:
27
+ - If a concern depends on both feature presence and scale, split it into two statements: the feature-level concern uses `(when applicable)`, and the governance/systemization concern uses `(scale-dependent)`
28
+ - Do not encode mixed conditions such as "when applicable and large-scale" into a single marker. Mixed triggers hide the primary enforcement point and make coverage checks non-deterministic
29
+ - If applicability is unknown at review time, record the unknown explicitly. Do not upgrade an unknown condition to `(required)` by default
30
+
31
+ Scale axes for `(scale-dependent)` items:
32
+ - **Screen count**: Number of distinct screens/views in the product
33
+ - **User type count**: Number of distinct user roles or personas
34
+ - **Data volume**: Volume of data items displayed, stored, or manipulated
35
+
36
+ ### Navigation
37
+ - **Information Architecture** (required): Content classification and hierarchy, menu structure, sitemap/app map
38
+ - **Navigation Patterns** (required): Global navigation (top bar/sidebar), local navigation (tabs/segments), secondary navigation (breadcrumbs/pagination)
39
+ - **Navigation Paths** (required): Path count and depth to reach desired information/functionality; abandonment rate impact of deeper paths
40
+ - **Search** (when applicable): Search UI patterns, filters/sorting, autocomplete, no-results state
41
+
42
+ ### Forms and Input
43
+ - **Form Structure** (required): Field grouping, logical order, multi-step division, required/optional distinction
44
+ - **Input Types** (required): Text, selection (select/radio/checkbox), date/time, file upload, free input vs restricted input
45
+ - **Validation** (required): Real-time vs on-submit validation, inline error messages, error summary, success feedback
46
+ - **Input Aids** (required): Placeholders, help text, input masks, default values, autocomplete
47
+
48
+ ### Feedback and Status
49
+ - **System Feedback** (required): Success/failure/warning/info messages, notifications, toasts, banners
50
+ - **Loading States** (required): Spinners, skeleton screens, progress bars, optimistic updates
51
+ - **Empty States** (required): No data, no search results, first-use state — each requires different guidance
52
+ - **Error States** (required): Network errors, permission errors, 404, 500, type-specific error pages/states
53
+
54
+ ### Data Display
55
+ - **Lists and Tables** (required): List view, table, card view, grid view — selection criteria based on data characteristics
56
+ - **Sorting and Filtering** (required): Sort criteria display, active filter display, filter reset, compound filters
57
+ - **Pagination** (required): Page numbers, infinite scroll, "load more" button — selection based on data volume and browsing patterns
58
+ - **Data Visualization** (when applicable): Chart/graph interactions (hover info, zoom, filter), dashboard composition
59
+
60
+ ### Modals and Overlays
61
+ - **Modal Dialogs** (required): Usage criteria, close mechanisms, focus trap, background interaction blocking
62
+ - **Dropdowns/Popovers** (required): Trigger elements, placement, collision avoidance, close conditions
63
+ - **Bottom Sheets/Drawers** (when applicable): Mobile bottom sheets, side drawers, slide-overs — usage context and close gestures
64
+
65
+ ### Action and Decision
66
+ - **CTA Design** (required): Visual and positional distinction between primary and secondary actions
67
+ - **Destructive Actions** (required): Confirmation patterns for deletion/non-cancelable operations; undo provision
68
+ - **Choice and Comparison** (when applicable): Option presentation methods, comparison UI, recommendation/default selection
69
+ - **Onboarding** (when applicable): First-use guidance, feature discovery, coach marks, tours
70
+
71
+ ### Responsive UI Adaptation
72
+ - **Component Adaptation** (required): Component variations based on screen size (desktop table → mobile card, top bar → bottom navigation)
73
+ - **Content Priority** (required): Criteria for what to keep vs reduce/hide when screen shrinks
74
+ - **Touch vs Pointer** (required): Touch target size (44×44px minimum per WCAG 2.5.5), touch alternatives for hover-dependent interactions
75
+
76
+ ### Accessible Interaction
77
+ - **Keyboard Navigation** (required): Tab order, focus management, keyboard shortcuts, skip links
78
+ - **Screen Reader** (required): ARIA roles, states, properties, live regions
79
+ - **Cognitive Load Management** (required): Progressive disclosure, preventing cognitive overload, consistent pattern usage
80
+
81
+ ### Design System Architecture
82
+ - **Token System** (scale-dependent): Design tokens (color, spacing, typography, elevation) as the single source of truth for visual consistency. Scale threshold: screen count >10 or multiple contributing teams
83
+ - **Component Library** (scale-dependent): Reusable component inventory, component API design (props/variants/slots), composition patterns. Scale threshold: screen count >15 or user type count >3
84
+ - **Pattern Documentation** (scale-dependent): Component usage guidelines, do/don't examples, accessibility requirements per component. Scale threshold: component library >20 distinct components
85
+ - **Governance** (scale-dependent): Contribution model, versioning strategy, deprecation process, adoption metrics. Scale threshold: multiple teams consuming the design system
86
+
87
+ ### Micro-interaction & Animation
88
+ - **Transition Design** (when applicable): Page transitions, state transitions (expand/collapse, show/hide), loading-to-content transitions
89
+ - **Feedback Animation** (when applicable): Button press responses, success/error animations, pull-to-refresh
90
+ - **Motion System** (scale-dependent): Easing curves, duration scales, motion principles (functional vs decorative). Scale threshold: 5+ distinct animation types
91
+ - **Reduced Motion** (required): Respect `prefers-reduced-motion` media query — accessibility requirement, not optional enhancement
92
+
93
+ ## Normative System Classification
94
+
95
+ Standards governing UI design operate at four distinct tiers with different enforcement mechanisms and change velocity.
96
+
97
+ | Tier | Name | Enforcement Mechanism | Change Velocity | Examples |
98
+ |------|------|----------------------|-----------------|---------|
99
+ | Tier-1a | Accessibility Standards | **Legal obligation** + browser/device enforcement | Slow (years) | WCAG 2.2, WAI-ARIA 1.2, ADA, EAA |
100
+ | Tier-1b | Platform Standards | **OS/app store review** + device API constraints | Slow (years) | Apple HIG mandatory, Material Design mandatory, system gestures |
101
+ | Tier-2 | Design System / Framework | Design system linting/tokens, component library constraints | Medium (quarterly) | Internal design system, Material Design 3 optional, Carbon, Ant Design |
102
+ | Tier-3 | Industry Principles / Heuristics | Design review, usability testing | Fast (per incident) | Nielsen's Heuristics, Fitts's Law, Hick's Law, Gestalt Principles |
103
+
104
+ **Ordering principle**: Binding force determines priority: **Tier-1a > Tier-1b > Tier-2 > Tier-3**. When rules from different tiers conflict, the higher tier prevails. This ordering aligns with the existing Source of Truth priority in dependency_rules.md.
105
+
106
+ Tier classification decision tree:
107
+ 1. **Tier-1a**: Would non-conformance create an accessibility/legal violation or contradict browser/assistive-technology processing rules?
108
+ 2. **Tier-1b**: If not Tier-1a, is the rule enforced by OS conventions, device APIs, or app store/platform review expectations?
109
+ 3. **Tier-2**: If not Tier-1a/1b, is the rule enforced by an internal design system, component library, token system, or lintable design governance?
110
+ 4. **Tier-3**: If none of the above apply, treat it as an industry heuristic, usability principle, or project-level design judgment
111
+
112
+ Tier-1 internal classification axis:
113
+ - **Primary split inside Tier-1**: enforcement domain, not abstraction level. Tier-1a owns accessibility/legal/assistive-technology processing baselines. Tier-1b owns platform-review/API/device-behavior baselines
114
+ - **Expansion rule**: do not create a new Tier-1x merely because a clause is stricter or more specific. Extend Tier-1 only when a new enforcement domain exists that cannot be represented as accessibility/legal or platform/review/API
115
+
116
+ Secondary ordering within Tier-1:
117
+ 1. **Within Tier-1a**: browser/assistive-technology processing requirements and legally binding accessibility requirements override interpretation techniques or implementation advice
118
+ 2. **Within Tier-1b**: non-overridable OS/device/API constraints override app-store/review-blocking requirements, which override reference-only platform guidance
119
+ 3. **If still tied**: prefer the narrower rule governing the concrete interaction under review, then document the overridden peer rule and rationale
120
+
121
+ **UI-specific enforcement mechanisms** (distinct from software engineering's compiler/lint/code review):
122
+ - **Tier-1a**: Automated accessibility audit tools (axe-core, Lighthouse, WAVE), legal compliance audits, browser-enforced behaviors (focus management, ARIA processing)
123
+ - **Tier-1b**: App store review rejection, OS API constraints (e.g., iOS system gestures cannot be overridden)
124
+ - **Tier-2**: Design system linting (Stylelint with token rules, ESLint component plugins), design tool plugins (Figma lint)
125
+ - **Tier-3**: Design review sessions, usability testing, heuristic evaluation checklists — no automated enforcement
126
+
127
+ ### Source of Truth Priority Mapping
128
+
129
+ | Existing SoT Priority | Tier Mapping | Rationale |
130
+ |----------------------|-------------|-----------|
131
+ | Accessibility standards | **Tier-1a** | Legal obligation + browser/device enforcement |
132
+ | Platform guidelines | **Tier-1b** | OS/app store review + device API constraints |
133
+ | Internal pattern library | **Tier-2** | Design system = internal pattern library |
134
+
135
+ Tier-3 is a new layer not in the original SoT hierarchy — experiential rules with no binding enforcement, overridable by any higher tier without justification.
136
+
137
+ ### Relationship Between Tier and Abstraction Layer (L)
138
+
139
+ The normative tier axis (`[Tier-1a]`..`[Tier-3]`) is defined here. The abstraction layer axis (`[L1]`/`[L2]`/`[L3]`) is defined in concepts.md. The two axes are independently defined but not all combinations are occupied:
140
+
141
+ - **Tier-1a × L3** and **Tier-1b × L3** are structurally empty: Tier-1 standards do not exist at the domain-specific/practical level
142
+ - **Tier-3 × L1** is structurally empty: Industry heuristics do not exist at the platform/standard level
143
+
144
+ | | L1 (Platform/Standard) | L2 (Pattern/Principle) | L3 (Domain/Practical) |
145
+ |---|---|---|---|
146
+ | **Tier-1a** | WCAG 2.2 spec, WAI-ARIA spec | WCAG interpretation patterns | (empty) |
147
+ | **Tier-1b** | Apple HIG spec, Material mandatory | Platform adaptation patterns | (empty) |
148
+ | **Tier-2** | Design token specification | Component composition patterns | Team-specific usage conventions |
149
+ | **Tier-3** | (empty) | Nielsen heuristics, Gestalt laws | Project-specific design decisions |
150
+
151
+ ## Cross-Cutting Concerns
152
+
153
+ Cross-cutting concerns span multiple sub-areas. Defined here because their enforcement points are distributed across multiple files.
154
+
155
+ Admission criteria:
156
+ - A concern qualifies as cross-cutting only if it spans **3 or more** Key Sub-Areas
157
+ - No single sub-area can own the concern without hiding an essential enforcement point or causing duplicated rules elsewhere
158
+ - The concern requires inference path fragments in **2 or more** owner files
159
+ - The concern creates a reusable verification lens (CQ-worthy), not a one-off topic or example
160
+
161
+ Non-qualifier rule:
162
+ - If one sub-area still has a clear primary enforcement point, keep the concern in that sub-area and use cross-references rather than promoting it to cross-cutting
163
+
164
+ Scale guardrail:
165
+ - If the number of cross-cutting concerns exceeds **Key Sub-Areas / 3**, revisit the taxonomy before adding more. At that point the cross-cutting layer is starting to replace, rather than supplement, the sub-area structure
166
+
167
+ ### Consistency
168
+
169
+ Identical concepts should have identical representations; deviations must be intentional and justified. Three sub-types:
170
+
171
+ 1. **Internal consistency** (same pattern repeated within the product):
172
+ - Enforcement: logic_rules.md §Constraint Conflict Checks + structure_spec.md §UI Design Required Elements
173
+ - Detection: Pattern inventory comparison within the product
174
+
175
+ 2. **External consistency** (conformance to platform and industry conventions):
176
+ - Enforcement: domain_scope.md §Reference Standards/Frameworks + dependency_rules.md §Source of Truth Management
177
+ - Detection: Comparison against platform guidelines and industry patterns
178
+
179
+ 3. **Intentional deviation with rationale requirement**: Deviation must document why it provides a better outcome than conformance.
180
+ - Enforcement: logic_rules.md §Constraint Conflict Checks
181
+ - Detection: Deviation audit — any inconsistency without documented rationale is a defect
182
+
183
+ **Judgment rule**: An inconsistency is a defect unless it has a documented rationale. Burden of proof is on the deviator.
184
+
185
+ ### Performance Perception
186
+
187
+ Spans Feedback and Status, Loading States, and Micro-interaction & Animation. Concerns how users perceive system responsiveness (distinct from actual performance).
188
+
189
+ - Perception thresholds (Nielsen 1993): 0-100ms = instantaneous, 100-1000ms = noticeable delay, >1000ms = perceived as a separate task, >10s = attention lost
190
+ - Implementation thresholds are adapted from these and owned by logic_rules.md §Feedback Logic (0-300ms = no indicator, 300ms-1s = spinner, 1-10s = skeleton/progress, 10s+ = background processing)
191
+
192
+ ## Required Concept Categories
193
+
194
+ The "Risk if Missing" column describes the abstract consequence. The "Example of Failure" column provides a concrete, observable case.
195
+
196
+ | Category | Description | Risk if Missing | Example of Failure |
197
+ |----------|------------|----------------|-------------------|
198
+ | Navigation structure | Route system for users to reach destinations | Users get lost, increased abandonment | Settings page reachable only through 5-level nested menu; users contact support |
199
+ | Input and validation | Data collection and error prevention/guidance | Form completion rate decreases, incorrect data | Phone field accepts free text; 30% of numbers unparseable, breaking SMS verification |
200
+ | Feedback system | Communication of system status and action results | Users cannot know results, anxiety | After "Submit Order," no confirmation for 4s; users click again, creating duplicates |
201
+ | Error/empty state | Guidance and recovery for exceptional situations | User abandonment, dead ends | Search returns no results: blank page, no explanation, no suggestions |
202
+ | Call to action | Distinction/placement of primary and secondary actions | Decision paralysis | Checkout shows 3 equally-styled buttons; conversion drops 20% |
203
+ | Information density | Information amount/composition per screen | Cognitive overload or inefficiency | Dashboard shows 40+ ungrouped metrics; users cannot find their 3 relevant ones |
204
+ | Accessible interaction | Keyboard, screen reader, diverse input support | User exclusion, legal violations | Custom dropdown has no keyboard support; screen reader users cannot complete the form |
205
+ | Source of truth | Authoritative standard for pattern decisions | Pattern inconsistency proliferation | Three teams implement different date pickers with conflicting formats and behaviors |
206
+ | Responsive adaptation | Layout rules for different screen sizes/inputs | Broken layouts, unusable on mobile | Data table with horizontal scroll on mobile; no alternative view |
207
+ | Design system coherence | Token and component consistency across product | Visual drift, maintenance cost | After 2 years without governance, product uses 47 distinct shades of blue |
208
+ | State transition continuity | Communication of changes between states | Users lose context | List-to-detail navigation with no transition; detail appears with no connection to the tapped item |
209
+
210
+ ## Reference Standards/Frameworks
211
+
212
+ This file is the **single source of truth for external standard version information** within the ui-design domain. Other files reference standards without version numbers; the version in this table governs.
213
+
214
+ | Standard/Framework | Version | Application Area | Core Content | When to Apply |
215
+ |-------------------|---------|-----------------|--------------|---------------|
216
+ | WCAG | 2.2 (2023) | Accessibility | Perceivable, operable, understandable, robust. 78 criteria across A/AA/AAA | Every UI review; legal for public-facing web |
217
+ | WAI-ARIA | 1.2 (2023) | Accessibility | Roles, states, properties for dynamic UI. 82 roles, 48 states/properties | Custom interactive components |
218
+ | ISO 9241 | 9241-110:2020 | Usability | Interaction principles: task suitability, self-descriptiveness, expectation conformity, learnability, controllability, error robustness, engagement | System-level usability evaluation |
219
+ | Nielsen's 10 Heuristics | 1994/2020 | Overall UI | System status visibility, consistency, error prevention, recognition over recall | Heuristic evaluation; design review |
220
+ | Fitts's Law | — | Layout | Target distance × size → click time. Primary actions: large and close | CTA placement, touch targets |
221
+ | Hick's Law | — | Decision | Decision time ∝ log(choices). Limit or categorize | Menu design, option presentation |
222
+ | Miller's Law | — | Information architecture | Working memory: 7±2 chunks | Navigation items, form sections |
223
+ | Jakob's Law | — | Consistency | Users expect cross-product consistency | Convention audit |
224
+ | Gestalt Principles | — | Visual grouping | Proximity, similarity, closure, continuity, figure-ground, common fate | Layout, grouping, hierarchy |
225
+ | Material Design | 3 (2023) | Android/Cross-platform | Components, interactions, motion, color, typography | Android (mandatory); others (reference) |
226
+ | Apple HIG | 2024 | iOS/macOS | Platform patterns, system gestures, SF Symbols, Dynamic Type | iOS/macOS (mandatory); cross-platform (reference) |
227
+ | Inclusive Design Principles | Microsoft (2016) | Inclusion | Recognize exclusion, learn from diversity, solve for one — extend to many | Inclusive review; persona development |
228
+
229
+ ### External-Standard Derivation Markers
230
+
231
+ Rules and thresholds materially derived from external standards may carry grep-friendly source markers in their owner files. Use the following format:
232
+
233
+ - `<!-- derived-from: WCAG 2.2, SC 1.3.1 -->`
234
+ - `<!-- derived-from: WCAG 2.2, SC 2.2.1; also SC 2.2.6 -->`
235
+
236
+ Marker usage rule:
237
+ - Add a marker when the rule would likely need review if the external standard version changes
238
+ - Add a marker when the derived threshold or prohibition is not obvious from the surrounding prose
239
+ - Keep the marker in the **rule-owning file**. This file remains the version SSOT only; it does not own the downstream rule text
240
+
241
+ ## Bias Detection Criteria
242
+
243
+ A triggered criterion indicates a review coverage problem, not necessarily a design defect.
244
+
245
+ ### Coverage Distribution
246
+
247
+ - If ⌈N/2.5⌉ or more of the Key Sub-Areas (§Key Sub-Areas) are not represented → **insufficient coverage**. **N** = the number of `###` subsections under §Key Sub-Areas (count at review time — do not hard-code). At review time the reviewer counts the current `###` headings under §Key Sub-Areas and computes the threshold from N, so adding or removing a sub-area updates the threshold automatically without editing this rule
248
+ - If a specific sub-area accounts for >70% of total findings → **sub-area bias**
249
+
250
+ ### State and Exception Coverage
251
+
252
+ - If only the happy path is defined and error/empty states are missing → **exception state gap**
253
+ - If only desktop UI is defined and mobile adaptation is missing → **responsive absence** (when mobile applicable)
254
+ - If input UI exists but validation patterns are missing → **validation system absence**
255
+ - If async operations exist but loading/failure states are missing → **status communication absence**
256
+ - If only visual patterns exist without keyboard/screen reader support → **accessibility gap**
257
+
258
+ ### Governance and Ownership
259
+
260
+ - If 2+ core patterns have no designated source of truth → **authority undesignated**
261
+ - If 3+ CTAs of equal emphasis exist on a single screen → **action guidance competition**
262
+ - If the review ignores design system tokens/components → **design system blindness** (when a design system exists)
263
+ - If animation is present but no motion system or `prefers-reduced-motion` is evaluated → **animation excess without governance**
264
+ - If zero transition/animation exists and the review does not flag it → **animation absence unevaluated**
265
+
266
+ ### Context Bias
267
+
268
+ - If the design assumes a single platform when the product serves multiple → **platform bias**
269
+ - If international users are served but text expansion, RTL, date/number formatting are unevaluated → **internationalization absence**
270
+
271
+ ## Inter-Document Contract
272
+
273
+ ### Rule Ownership
274
+
275
+ | Cross-cutting Topic | Owner File | Other Files |
276
+ |---|---|---|
277
+ | Dependency direction rules | dependency_rules.md | structure_spec.md (references only) |
278
+ | Source of Truth priority | dependency_rules.md | domain_scope.md (tier mapping), logic_rules.md (references) |
279
+ | Concept definitions | concepts.md | All other files reference, do not redefine |
280
+ | Structural coherence rules | structure_spec.md §UI Design Required Elements | Other files reference |
281
+ | Conciseness criteria | conciseness_rules.md | Other files reference |
282
+ | Competency questions | competency_qs.md | Other files provide inference path targets |
283
+ | Behavioral quantitative thresholds | logic_rules.md §Feedback Logic, §Fitts's Law Application | structure_spec.md (structural thresholds only) |
284
+ | Structural quantitative thresholds | structure_spec.md | logic_rules.md (behavioral only) |
285
+ | External-standard derivation markers | owner file of each derived rule | domain_scope.md (version SSOT only) |
286
+ | Constraint conflict resolution | logic_rules.md §Constraint Conflict Checks | dependency_rules.md (cascading failures) |
287
+ | Consistency (cross-cutting) | domain_scope.md §Cross-Cutting Concerns | logic_rules.md, structure_spec.md, dependency_rules.md |
288
+
289
+ ### Required Substance per Sub-area
290
+
291
+ Each sub-area in Key Sub-Areas must have corresponding substance in at least one of:
292
+ - concepts.md: term definitions
293
+ - logic_rules.md or structure_spec.md or dependency_rules.md: operational rules
294
+ - competency_qs.md: verification questions
295
+
296
+ A sub-area with declaration but no substance in any file is a "ghost sub-area" — must be populated or annotated with applicability conditions.
297
+
298
+ ### Cross-cutting Concern Attribution
299
+
300
+ When a concern spans multiple sub-areas, attribute to the sub-area with the **primary enforcement point**:
301
+
302
+ 1. **Primary enforcement point**: The sub-area whose rules would be violated. Example: touch target sizing spans Responsive UI Adaptation and Accessible Interaction. Primary: Accessible Interaction (WCAG 2.5.5 violation is the enforcement driver)
303
+ 2. **Secondary references**: Other sub-areas reference primary rules, do not duplicate
304
+ 3. **Tie-breaking**: If enforcement is equally distributed, attribute to the sub-area with fewer existing items
305
+
306
+ ### Classification Axis Relationships
307
+
308
+ | File | Axis | Facet |
309
+ |---|---|---|
310
+ | domain_scope.md | UI design concern | What design concerns exist (scope) |
311
+ | logic_rules.md | UI construction concern | What concerns are governed by behavioral rules |
312
+ | competency_qs.md | verification concern | What concerns must be verified |
313
+
314
+ ### Sub-area to CQ Section Mapping
315
+
316
+ | Sub-area | CQ Sections | Coverage |
317
+ |---|---|---|
318
+ | Navigation | CQ-N | Full |
319
+ | Forms and Input | CQ-FI | Full |
320
+ | Feedback and Status | CQ-FS | Full |
321
+ | Data Display | CQ-DD | Full |
322
+ | Modals and Overlays | CQ-MO | Full |
323
+ | Action and Decision | CQ-AD | Full |
324
+ | Responsive UI Adaptation | CQ-R | Full |
325
+ | Accessible Interaction | CQ-AC | Full |
326
+ | Design System Architecture | CQ-DS | Full |
327
+ | Micro-interaction & Animation | CQ-MI | Full |
328
+
329
+ Cross-cutting CQ section:
330
+ - CQ-CO (Consistency) — spans all sub-areas; see §Cross-Cutting Concerns for inference path distribution
331
+
332
+ ## Related Documents
333
+ - concepts.md — Term definitions, abstraction layer ([L1]/[L2]/[L3]) classification
334
+ - structure_spec.md — Structural requirements and quantitative structural thresholds
335
+ - logic_rules.md — Behavioral rules, temporal/spatial thresholds, constraint conflict checks
336
+ - dependency_rules.md — Dependency direction rules, Source of Truth management
337
+ - competency_qs.md — Verification questions organized by CQ-ID sections
338
+ - extension_cases.md — Growth and contraction scenarios with impact analysis
339
+ - conciseness_rules.md — Conciseness criteria for review output
340
+ - concepts.md §Abstraction Layer Reference — [L1]/[L2]/[L3] definitions and Tier×L relationship