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.
- package/.onto/authority/core-lens-registry.yaml +134 -0
- package/.onto/authority/core-lexicon.yaml +1562 -0
- package/.onto/authority/diagnostic-codes.yaml +94 -0
- package/.onto/domains/accounting/competency_qs.md +384 -0
- package/.onto/domains/accounting/concepts.md +186 -0
- package/.onto/domains/accounting/conciseness_rules.md +160 -0
- package/.onto/domains/accounting/dependency_rules.md +239 -0
- package/.onto/domains/accounting/domain_scope.md +213 -0
- package/.onto/domains/accounting/extension_cases.md +416 -0
- package/.onto/domains/accounting/logic_rules.md +226 -0
- package/.onto/domains/accounting/structure_spec.md +298 -0
- package/.onto/domains/accounting-kr/competency_qs.md +562 -0
- package/.onto/domains/accounting-kr/concepts.md +187 -0
- package/.onto/domains/accounting-kr/conciseness_rules.md +125 -0
- package/.onto/domains/accounting-kr/dependency_rules.md +93 -0
- package/.onto/domains/accounting-kr/domain_scope.md +140 -0
- package/.onto/domains/accounting-kr/extension_cases.md +343 -0
- package/.onto/domains/accounting-kr/logic_rules.md +160 -0
- package/.onto/domains/accounting-kr/structure_spec.md +85 -0
- package/.onto/domains/business/competency_qs.md +263 -0
- package/.onto/domains/business/concepts.md +200 -0
- package/.onto/domains/business/conciseness_rules.md +135 -0
- package/.onto/domains/business/dependency_rules.md +113 -0
- package/.onto/domains/business/domain_scope.md +240 -0
- package/.onto/domains/business/extension_cases.md +249 -0
- package/.onto/domains/business/logic_rules.md +134 -0
- package/.onto/domains/business/structure_spec.md +114 -0
- package/.onto/domains/finance/competency_qs.md +362 -0
- package/.onto/domains/finance/concepts.md +194 -0
- package/.onto/domains/finance/conciseness_rules.md +155 -0
- package/.onto/domains/finance/dependency_rules.md +171 -0
- package/.onto/domains/finance/domain_scope.md +215 -0
- package/.onto/domains/finance/extension_cases.md +350 -0
- package/.onto/domains/finance/logic_rules.md +191 -0
- package/.onto/domains/finance/structure_spec.md +182 -0
- package/.onto/domains/llm-native-development/competency_qs.md +430 -0
- package/.onto/domains/llm-native-development/concepts.md +242 -0
- package/.onto/domains/llm-native-development/conciseness_rules.md +163 -0
- package/.onto/domains/llm-native-development/dependency_rules.md +216 -0
- package/.onto/domains/llm-native-development/domain_scope.md +197 -0
- package/.onto/domains/llm-native-development/extension_cases.md +474 -0
- package/.onto/domains/llm-native-development/logic_rules.md +123 -0
- package/.onto/domains/llm-native-development/prompt_interface.md +49 -0
- package/.onto/domains/llm-native-development/structure_spec.md +245 -0
- package/.onto/domains/market-intelligence/competency_qs.md +274 -0
- package/.onto/domains/market-intelligence/concepts.md +233 -0
- package/.onto/domains/market-intelligence/conciseness_rules.md +165 -0
- package/.onto/domains/market-intelligence/dependency_rules.md +197 -0
- package/.onto/domains/market-intelligence/domain_scope.md +231 -0
- package/.onto/domains/market-intelligence/extension_cases.md +425 -0
- package/.onto/domains/market-intelligence/logic_rules.md +247 -0
- package/.onto/domains/market-intelligence/structure_spec.md +209 -0
- package/.onto/domains/ontology/competency_qs.md +394 -0
- package/.onto/domains/ontology/concepts.md +172 -0
- package/.onto/domains/ontology/conciseness_rules.md +134 -0
- package/.onto/domains/ontology/dependency_rules.md +125 -0
- package/.onto/domains/ontology/domain_scope.md +114 -0
- package/.onto/domains/ontology/extension_cases.md +501 -0
- package/.onto/domains/ontology/logic_rules.md +114 -0
- package/.onto/domains/ontology/problem_framing_profile.md +67 -0
- package/.onto/domains/ontology/structure_spec.md +115 -0
- package/.onto/domains/palantir-foundry/RESEARCH_NOTES.md +911 -0
- package/.onto/domains/palantir-foundry/competency_qs.md +191 -0
- package/.onto/domains/palantir-foundry/competitive_comparison.md +329 -0
- package/.onto/domains/palantir-foundry/concepts.md +197 -0
- package/.onto/domains/palantir-foundry/conciseness_rules.md +245 -0
- package/.onto/domains/palantir-foundry/dependency_rules.md +135 -0
- package/.onto/domains/palantir-foundry/domain_scope.md +395 -0
- package/.onto/domains/palantir-foundry/extension_cases.md +210 -0
- package/.onto/domains/palantir-foundry/logic_rules.md +172 -0
- package/.onto/domains/palantir-foundry/structure_spec.md +291 -0
- package/.onto/domains/software-engineering/competency_qs.md +538 -0
- package/.onto/domains/software-engineering/concepts.md +238 -0
- package/.onto/domains/software-engineering/conciseness_rules.md +167 -0
- package/.onto/domains/software-engineering/dependency_rules.md +216 -0
- package/.onto/domains/software-engineering/domain_scope.md +183 -0
- package/.onto/domains/software-engineering/extension_cases.md +551 -0
- package/.onto/domains/software-engineering/logic_rules.md +240 -0
- package/.onto/domains/software-engineering/problem_framing_profile.md +68 -0
- package/.onto/domains/software-engineering/structure_spec.md +185 -0
- package/.onto/domains/ui-design/competency_qs.md +567 -0
- package/.onto/domains/ui-design/concepts.md +194 -0
- package/.onto/domains/ui-design/conciseness_rules.md +190 -0
- package/.onto/domains/ui-design/dependency_rules.md +323 -0
- package/.onto/domains/ui-design/domain_scope.md +340 -0
- package/.onto/domains/ui-design/extension_cases.md +563 -0
- package/.onto/domains/ui-design/logic_rules.md +349 -0
- package/.onto/domains/ui-design/structure_spec.md +252 -0
- package/.onto/domains/visual-design/competency_qs.md +472 -0
- package/.onto/domains/visual-design/concepts.md +147 -0
- package/.onto/domains/visual-design/conciseness_rules.md +186 -0
- package/.onto/domains/visual-design/dependency_rules.md +282 -0
- package/.onto/domains/visual-design/domain_scope.md +290 -0
- package/.onto/domains/visual-design/extension_cases.md +480 -0
- package/.onto/domains/visual-design/logic_rules.md +232 -0
- package/.onto/domains/visual-design/structure_spec.md +213 -0
- package/.onto/principles/llm-native-development-guideline.md +401 -0
- package/.onto/principles/llm-runtime-interface-principles.md +665 -0
- package/.onto/principles/non-specialist-communication-guideline.md +74 -0
- package/.onto/principles/ontology-as-code-guideline.md +243 -0
- package/.onto/principles/ontology-as-code-naming-charter.md +130 -0
- package/.onto/principles/product-locality-principle.md +129 -0
- package/.onto/principles/productization-charter.md +569 -0
- package/.onto/processes/evolve/material-kind-adapter-contract.md +113 -0
- package/.onto/processes/reconstruct/reconstruct-boundary-contract.md +366 -0
- package/.onto/processes/reconstruct/source-profile-contract.md +107 -0
- package/.onto/processes/reconstruct/source-profiles/code.md +72 -0
- package/.onto/processes/reconstruct/source-profiles/database.md +74 -0
- package/.onto/processes/reconstruct/source-profiles/document.md +71 -0
- package/.onto/processes/reconstruct/source-profiles/spreadsheet.md +79 -0
- package/.onto/processes/review/binding-contract.md +270 -0
- package/.onto/processes/review/execution-preparation-artifacts.md +281 -0
- package/.onto/processes/review/interpretation-contract.md +245 -0
- package/.onto/processes/review/issue-stance-deliberation-contract.md +761 -0
- package/.onto/processes/review/lens-prompt-contract.md +402 -0
- package/.onto/processes/review/lens-registry.md +127 -0
- package/.onto/processes/review/pre-dispatch-contracts.md +428 -0
- package/.onto/processes/review/productized-live-path.md +398 -0
- package/.onto/processes/review/prompt-execution-runner-contract.md +187 -0
- package/.onto/processes/review/record-contract.md +427 -0
- package/.onto/processes/review/record-field-mapping.md +337 -0
- package/.onto/processes/review/review-context-manifest-contract.md +356 -0
- package/.onto/processes/review/review-execution-ux-contract.md +809 -0
- package/.onto/processes/review/review-target-profile-contract.md +259 -0
- package/.onto/processes/review/shared-phenomenon-contract.md +129 -0
- package/.onto/processes/review/synthesize-prompt-contract.md +343 -0
- package/.onto/processes/shared/target-material-kind-contract.md +198 -0
- package/.onto/roles/axiology.md +81 -0
- package/.onto/roles/conciseness.md +36 -0
- package/.onto/roles/coverage.md +34 -0
- package/.onto/roles/dependency.md +37 -0
- package/.onto/roles/evolution.md +35 -0
- package/.onto/roles/logic.md +104 -0
- package/.onto/roles/pragmatics.md +32 -0
- package/.onto/roles/semantics.md +36 -0
- package/.onto/roles/structure.md +33 -0
- package/.onto/roles/synthesize.md +92 -0
- package/AGENTS.md +240 -0
- package/CLAUDE.md +39 -0
- package/README.md +287 -0
- package/bin/onto +92 -0
- package/dist/cli.js +101 -0
- package/dist/core-api/reconstruct-api.js +222 -0
- package/dist/core-api/review-api.js +1271 -0
- package/dist/core-runtime/cli/assemble-review-record.js +431 -0
- package/dist/core-runtime/cli/bootstrap-review-binding.js +186 -0
- package/dist/core-runtime/cli/codex-nested-dispatch.js +226 -0
- package/dist/core-runtime/cli/codex-nested-dispatch.test.js +390 -0
- package/dist/core-runtime/cli/codex-nested-teamlead-executor.js +464 -0
- package/dist/core-runtime/cli/codex-nested-teamlead-executor.test.js +335 -0
- package/dist/core-runtime/cli/codex-review-unit-executor.js +228 -0
- package/dist/core-runtime/cli/complete-review-session.js +64 -0
- package/dist/core-runtime/cli/complexity-assessment.js +153 -0
- package/dist/core-runtime/cli/coordinator-helpers.js +583 -0
- package/dist/core-runtime/cli/coordinator-state-machine-deliberation.test.js +167 -0
- package/dist/core-runtime/cli/coordinator-state-machine.js +794 -0
- package/dist/core-runtime/cli/e2e-codex-multi-agent-fixes.test.js +615 -0
- package/dist/core-runtime/cli/e2e-start-review-session.test.js +312 -0
- package/dist/core-runtime/cli/health.js +44 -0
- package/dist/core-runtime/cli/inline-http-review-unit-executor.js +656 -0
- package/dist/core-runtime/cli/inline-http-review-unit-executor.test.js +567 -0
- package/dist/core-runtime/cli/materialize-review-execution-preparation.js +104 -0
- package/dist/core-runtime/cli/materialize-review-prompt-packets.js +952 -0
- package/dist/core-runtime/cli/migrate-session-roots.js +118 -0
- package/dist/core-runtime/cli/mock-review-unit-executor.js +285 -0
- package/dist/core-runtime/cli/onto-tools.js +369 -0
- package/dist/core-runtime/cli/prepare-review-session.js +272 -0
- package/dist/core-runtime/cli/render-review-final-output.js +350 -0
- package/dist/core-runtime/cli/repo-layout-migration-replace.smoke.test.js +106 -0
- package/dist/core-runtime/cli/review-invoke-auto-resolution.test.js +268 -0
- package/dist/core-runtime/cli/review-invoke-coordinator-topology.test.js +136 -0
- package/dist/core-runtime/cli/review-invoke-resolver-caching.test.js +201 -0
- package/dist/core-runtime/cli/review-invoke-topology-dispatch.test.js +192 -0
- package/dist/core-runtime/cli/review-invoke.js +2030 -0
- package/dist/core-runtime/cli/run-review-prompt-execution.js +2152 -0
- package/dist/core-runtime/cli/session-root-guard.js +168 -0
- package/dist/core-runtime/cli/spawn-watcher.js +173 -0
- package/dist/core-runtime/cli/spawn-watcher.test.js +457 -0
- package/dist/core-runtime/cli/start-review-session.js +68 -0
- package/dist/core-runtime/cli/strip-wrapping-code-fence.js +56 -0
- package/dist/core-runtime/cli/strip-wrapping-code-fence.test.js +79 -0
- package/dist/core-runtime/cli/teamcreate-lens-deliberation-executor.js +412 -0
- package/dist/core-runtime/cli/teamcreate-lens-deliberation-executor.test.js +351 -0
- package/dist/core-runtime/cli/topology-executor-mapping.js +139 -0
- package/dist/core-runtime/cli/topology-executor-mapping.test.js +173 -0
- package/dist/core-runtime/cli/write-review-interpretation.js +81 -0
- package/dist/core-runtime/config/onto-config-cli.js +278 -0
- package/dist/core-runtime/config/onto-config-key-path.js +288 -0
- package/dist/core-runtime/config/onto-config-key-path.test.js +195 -0
- package/dist/core-runtime/config/onto-config-preview.js +108 -0
- package/dist/core-runtime/config/onto-config-preview.test.js +132 -0
- package/dist/core-runtime/discovery/config-chain.js +118 -0
- package/dist/core-runtime/discovery/config-chain.test.js +103 -0
- package/dist/core-runtime/discovery/config-profile.js +199 -0
- package/dist/core-runtime/discovery/config-profile.test.js +233 -0
- package/dist/core-runtime/discovery/host-detection.js +33 -0
- package/dist/core-runtime/discovery/host-detection.test.js +186 -0
- package/dist/core-runtime/discovery/installation-paths.js +21 -0
- package/dist/core-runtime/discovery/installation-paths.test.js +65 -0
- package/dist/core-runtime/discovery/lens-registry.js +60 -0
- package/dist/core-runtime/discovery/lens-registry.test.js +81 -0
- package/dist/core-runtime/discovery/onto-home.js +71 -0
- package/dist/core-runtime/discovery/path-normalization.js +28 -0
- package/dist/core-runtime/discovery/path-normalization.test.js +22 -0
- package/dist/core-runtime/discovery/plugin-path.js +72 -0
- package/dist/core-runtime/discovery/plugin-path.test.js +95 -0
- package/dist/core-runtime/discovery/project-root.js +47 -0
- package/dist/core-runtime/discovery/settings-chain.js +353 -0
- package/dist/core-runtime/discovery/walk-up.js +17 -0
- package/dist/core-runtime/evolve/adapters/code-product/compile/compile-defense.js +344 -0
- package/dist/core-runtime/evolve/adapters/code-product/compile/compile-defense.test.js +915 -0
- package/dist/core-runtime/evolve/adapters/code-product/compile/compile.js +564 -0
- package/dist/core-runtime/evolve/adapters/code-product/compile/compile.test.js +708 -0
- package/dist/core-runtime/evolve/adapters/code-product/parsers/brief-parser.js +165 -0
- package/dist/core-runtime/evolve/adapters/code-product/parsers/brief-parser.test.js +227 -0
- package/dist/core-runtime/evolve/adapters/code-product/validators/validate.js +59 -0
- package/dist/core-runtime/evolve/adapters/code-product/validators/validate.test.js +205 -0
- package/dist/core-runtime/evolve/adapters/methodology/adapter.js +16 -0
- package/dist/core-runtime/evolve/adapters/methodology/adapter.test.js +9 -0
- package/dist/core-runtime/evolve/adapters/methodology/perspectives/authority-consistency.js +298 -0
- package/dist/core-runtime/evolve/adapters/methodology/perspectives/authority-consistency.test.js +70 -0
- package/dist/core-runtime/evolve/adapters/methodology/scope-types/process.js +46 -0
- package/dist/core-runtime/evolve/adapters/methodology/scope-types/process.test.js +73 -0
- package/dist/core-runtime/evolve/adapters/registry.js +47 -0
- package/dist/core-runtime/evolve/adapters/registry.test.js +67 -0
- package/dist/core-runtime/evolve/cli.js +256 -0
- package/dist/core-runtime/evolve/commands/align.js +194 -0
- package/dist/core-runtime/evolve/commands/align.test.js +82 -0
- package/dist/core-runtime/evolve/commands/apply.js +161 -0
- package/dist/core-runtime/evolve/commands/apply.test.js +138 -0
- package/dist/core-runtime/evolve/commands/close.js +39 -0
- package/dist/core-runtime/evolve/commands/close.test.js +99 -0
- package/dist/core-runtime/evolve/commands/defer.js +40 -0
- package/dist/core-runtime/evolve/commands/defer.test.js +134 -0
- package/dist/core-runtime/evolve/commands/draft.js +323 -0
- package/dist/core-runtime/evolve/commands/draft.test.js +178 -0
- package/dist/core-runtime/evolve/commands/e2e-evolve-full-cycle.test.js +208 -0
- package/dist/core-runtime/evolve/commands/error-messages.js +125 -0
- package/dist/core-runtime/evolve/commands/error-messages.test.js +167 -0
- package/dist/core-runtime/evolve/commands/propose-align.js +222 -0
- package/dist/core-runtime/evolve/commands/propose-align.test.js +136 -0
- package/dist/core-runtime/evolve/commands/reconstruct.js +330 -0
- package/dist/core-runtime/evolve/commands/reconstruct.test.js +278 -0
- package/dist/core-runtime/evolve/commands/shared.js +22 -0
- package/dist/core-runtime/evolve/commands/stale-check.js +103 -0
- package/dist/core-runtime/evolve/commands/stale-check.test.js +84 -0
- package/dist/core-runtime/evolve/commands/start.js +887 -0
- package/dist/core-runtime/evolve/commands/start.test.js +396 -0
- package/dist/core-runtime/evolve/config/project-config.js +99 -0
- package/dist/core-runtime/evolve/config/project-config.test.js +170 -0
- package/dist/core-runtime/evolve/renderers/align-packet.js +280 -0
- package/dist/core-runtime/evolve/renderers/align-packet.test.js +332 -0
- package/dist/core-runtime/evolve/renderers/draft-packet.js +303 -0
- package/dist/core-runtime/evolve/renderers/draft-packet.test.js +377 -0
- package/dist/core-runtime/evolve/renderers/format.js +5 -0
- package/dist/core-runtime/evolve/renderers/scope-md.js +237 -0
- package/dist/core-runtime/evolve/renderers/scope-md.test.js +306 -0
- package/dist/core-runtime/govern/cli.js +369 -0
- package/dist/core-runtime/govern/cli.test.js +314 -0
- package/dist/core-runtime/govern/drift-engine.js +103 -0
- package/dist/core-runtime/govern/drift-engine.test.js +319 -0
- package/dist/core-runtime/govern/promote-principle.js +206 -0
- package/dist/core-runtime/govern/promote-principle.test.js +368 -0
- package/dist/core-runtime/govern/queue.js +81 -0
- package/dist/core-runtime/govern/types.js +16 -0
- package/dist/core-runtime/install/cli.js +530 -0
- package/dist/core-runtime/install/detect.js +128 -0
- package/dist/core-runtime/install/detect.test.js +155 -0
- package/dist/core-runtime/install/gitignore-update.js +74 -0
- package/dist/core-runtime/install/gitignore-update.test.js +64 -0
- package/dist/core-runtime/install/install-integration.test.js +373 -0
- package/dist/core-runtime/install/prompts.js +389 -0
- package/dist/core-runtime/install/prompts.test.js +293 -0
- package/dist/core-runtime/install/types.js +26 -0
- package/dist/core-runtime/install/validation.js +295 -0
- package/dist/core-runtime/install/validation.test.js +313 -0
- package/dist/core-runtime/install/writer.js +254 -0
- package/dist/core-runtime/install/writer.test.js +218 -0
- package/dist/core-runtime/learning/extractor.js +461 -0
- package/dist/core-runtime/learning/feedback.js +179 -0
- package/dist/core-runtime/learning/health-report.js +165 -0
- package/dist/core-runtime/learning/health-report.test.js +169 -0
- package/dist/core-runtime/learning/loader.js +388 -0
- package/dist/core-runtime/learning/loader.test.js +102 -0
- package/dist/core-runtime/learning/promote/apply-state.js +240 -0
- package/dist/core-runtime/learning/promote/audit-obligation.js +195 -0
- package/dist/core-runtime/learning/promote/collector.js +432 -0
- package/dist/core-runtime/learning/promote/degraded-state.js +125 -0
- package/dist/core-runtime/learning/promote/domain-doc-proposer.js +166 -0
- package/dist/core-runtime/learning/promote/e2e-promote.test.js +6385 -0
- package/dist/core-runtime/learning/promote/health-snapshot.js +150 -0
- package/dist/core-runtime/learning/promote/insight-reclassifier.js +544 -0
- package/dist/core-runtime/learning/promote/judgment-auditor.js +517 -0
- package/dist/core-runtime/learning/promote/panel-reviewer.js +1158 -0
- package/dist/core-runtime/learning/promote/promote-executor.js +1675 -0
- package/dist/core-runtime/learning/promote/promoter.js +307 -0
- package/dist/core-runtime/learning/promote/retirement.js +122 -0
- package/dist/core-runtime/learning/promote/types.js +23 -0
- package/dist/core-runtime/learning/prompt-sections.js +51 -0
- package/dist/core-runtime/learning/shared/artifact-registry-init.js +45 -0
- package/dist/core-runtime/learning/shared/artifact-registry.js +254 -0
- package/dist/core-runtime/learning/shared/audit-obligation-kernel.js +73 -0
- package/dist/core-runtime/learning/shared/audit-state.js +99 -0
- package/dist/core-runtime/learning/shared/duplicate-check.js +28 -0
- package/dist/core-runtime/learning/shared/llm-caller.js +831 -0
- package/dist/core-runtime/learning/shared/llm-caller.test.js +601 -0
- package/dist/core-runtime/learning/shared/llm-tool-loop.js +393 -0
- package/dist/core-runtime/learning/shared/mode.js +25 -0
- package/dist/core-runtime/learning/shared/paths.js +84 -0
- package/dist/core-runtime/learning/shared/paths.test.js +79 -0
- package/dist/core-runtime/learning/shared/patterns.js +37 -0
- package/dist/core-runtime/learning/shared/recoverability.js +355 -0
- package/dist/core-runtime/learning/shared/recovery-context.js +374 -0
- package/dist/core-runtime/learning/shared/scope.js +1 -0
- package/dist/core-runtime/learning/shared/semantic-classifier.js +94 -0
- package/dist/core-runtime/learning/shared/specs/apply-execution-state-spec.js +42 -0
- package/dist/core-runtime/learning/shared/specs/audit-state-spec.js +37 -0
- package/dist/core-runtime/learning/shared/specs/backup-metadata-spec.js +39 -0
- package/dist/core-runtime/learning/shared/specs/emergency-log-spec.js +41 -0
- package/dist/core-runtime/learning/shared/specs/layout-version-spec.js +38 -0
- package/dist/core-runtime/learning/shared/specs/promote-decisions-spec.js +43 -0
- package/dist/core-runtime/learning/shared/specs/promote-report-spec.js +113 -0
- package/dist/core-runtime/learning/shared/specs/prune-log-spec.js +36 -0
- package/dist/core-runtime/learning/shared/specs/recovery-resolution-spec.js +48 -0
- package/dist/core-runtime/learning/shared/specs/restore-manifest-spec.js +43 -0
- package/dist/core-runtime/learning/shared/specs/spec-helpers.js +64 -0
- package/dist/core-runtime/learning/usage-tracker.js +190 -0
- package/dist/core-runtime/learning/usage-tracker.test.js +176 -0
- package/dist/core-runtime/llm/llm-caller.js +649 -0
- package/dist/core-runtime/llm/llm-tool-loop.js +401 -0
- package/dist/core-runtime/llm/model-switcher.js +62 -0
- package/dist/core-runtime/logger.js +22 -0
- package/dist/core-runtime/onboard/detect-review-axes.js +122 -0
- package/dist/core-runtime/onboard/detect-review-axes.test.js +127 -0
- package/dist/core-runtime/onboard/write-review-block.js +188 -0
- package/dist/core-runtime/onboard/write-review-block.test.js +240 -0
- package/dist/core-runtime/readers/brownfield-builder.js +150 -0
- package/dist/core-runtime/readers/brownfield-builder.test.js +136 -0
- package/dist/core-runtime/readers/code-chunk-collector.js +53 -0
- package/dist/core-runtime/readers/code-chunk-collector.test.js +136 -0
- package/dist/core-runtime/readers/file-utils.js +240 -0
- package/dist/core-runtime/readers/file-utils.test.js +146 -0
- package/dist/core-runtime/readers/lexicon-citation-check.js +93 -0
- package/dist/core-runtime/readers/lexicon-citation-check.test.js +77 -0
- package/dist/core-runtime/readers/mcp-figma.js +30 -0
- package/dist/core-runtime/readers/mcp-figma.test.js +82 -0
- package/dist/core-runtime/readers/mcp-generic.js +31 -0
- package/dist/core-runtime/readers/mcp-generic.test.js +76 -0
- package/dist/core-runtime/readers/ontology-index.js +148 -0
- package/dist/core-runtime/readers/ontology-index.test.js +245 -0
- package/dist/core-runtime/readers/ontology-query.js +168 -0
- package/dist/core-runtime/readers/ontology-query.test.js +311 -0
- package/dist/core-runtime/readers/ontology-resolve.js +48 -0
- package/dist/core-runtime/readers/ontology-resolve.test.js +48 -0
- package/dist/core-runtime/readers/patterns/index.js +7 -0
- package/dist/core-runtime/readers/review-log.js +213 -0
- package/dist/core-runtime/readers/review-log.test.js +313 -0
- package/dist/core-runtime/readers/scan-local.js +102 -0
- package/dist/core-runtime/readers/scan-local.test.js +102 -0
- package/dist/core-runtime/readers/scan-tarball.js +121 -0
- package/dist/core-runtime/readers/scan-tarball.test.js +283 -0
- package/dist/core-runtime/readers/scan-vault.js +34 -0
- package/dist/core-runtime/readers/scan-vault.test.js +81 -0
- package/dist/core-runtime/readers/types.js +42 -0
- package/dist/core-runtime/readers/types.test.js +94 -0
- package/dist/core-runtime/readers/viewpoint-collectors.js +229 -0
- package/dist/core-runtime/reconstruct/artifact-types.js +1 -0
- package/dist/core-runtime/reconstruct/directive-validation.js +123 -0
- package/dist/core-runtime/reconstruct/materialize-preparation.js +251 -0
- package/dist/core-runtime/reconstruct/record.js +198 -0
- package/dist/core-runtime/reconstruct/run.js +578 -0
- package/dist/core-runtime/reconstruct/seed-candidate-validation.js +356 -0
- package/dist/core-runtime/reconstruct/source-observations.js +62 -0
- package/dist/core-runtime/reconstruct/source-profiles.js +73 -0
- package/dist/core-runtime/release-channel/release-channel.js +90 -0
- package/dist/core-runtime/review/artifact-types.js +13 -0
- package/dist/core-runtime/review/citation-audit.js +204 -0
- package/dist/core-runtime/review/citation-audit.test.js +165 -0
- package/dist/core-runtime/review/controlled-lens-deliberation.js +125 -0
- package/dist/core-runtime/review/execution-plan-resolver.js +247 -0
- package/dist/core-runtime/review/execution-plan-resolver.test.js +243 -0
- package/dist/core-runtime/review/execution-topology-resolver-axis-first.test.js +246 -0
- package/dist/core-runtime/review/execution-topology-resolver.js +401 -0
- package/dist/core-runtime/review/execution-topology-resolver.test.js +315 -0
- package/dist/core-runtime/review/failure-records.js +57 -0
- package/dist/core-runtime/review/inline-context-embedder.js +141 -0
- package/dist/core-runtime/review/inline-context-embedder.test.js +154 -0
- package/dist/core-runtime/review/issue-artifact-runtime.js +859 -0
- package/dist/core-runtime/review/legacy-mode-policy.js +88 -0
- package/dist/core-runtime/review/lens-completion-policy.js +17 -0
- package/dist/core-runtime/review/materializers-effort-persist.test.js +79 -0
- package/dist/core-runtime/review/materializers.js +963 -0
- package/dist/core-runtime/review/ontology-path-classifier.js +179 -0
- package/dist/core-runtime/review/ontology-path-classifier.test.js +216 -0
- package/dist/core-runtime/review/packet-boundary-policy.js +215 -0
- package/dist/core-runtime/review/packet-boundary-policy.test.js +107 -0
- package/dist/core-runtime/review/participating-lens-paths.js +61 -0
- package/dist/core-runtime/review/participating-lens-paths.test.js +73 -0
- package/dist/core-runtime/review/review-artifact-utils.js +287 -0
- package/dist/core-runtime/review/review-config-legacy-translate.js +244 -0
- package/dist/core-runtime/review/review-config-legacy-translate.test.js +161 -0
- package/dist/core-runtime/review/review-config-validator.js +289 -0
- package/dist/core-runtime/review/review-config-validator.test.js +236 -0
- package/dist/core-runtime/review/review-execution-profile.js +193 -0
- package/dist/core-runtime/review/review-execution-route.js +52 -0
- package/dist/core-runtime/review/review-progress-contract.js +123 -0
- package/dist/core-runtime/review/review-record-validation.js +251 -0
- package/dist/core-runtime/review/review-result-classification.js +379 -0
- package/dist/core-runtime/review/review-state-machine.js +39 -0
- package/dist/core-runtime/review/route-visibility.js +125 -0
- package/dist/core-runtime/review/shape-pipeline-audit.test.js +311 -0
- package/dist/core-runtime/review/shape-to-topology-id.js +117 -0
- package/dist/core-runtime/review/shape-to-topology-id.test.js +132 -0
- package/dist/core-runtime/review/topology-shape-derivation.js +155 -0
- package/dist/core-runtime/review/topology-shape-derivation.test.js +195 -0
- package/dist/core-runtime/scope-runtime/constants.js +12 -0
- package/dist/core-runtime/scope-runtime/constraint-pool.js +166 -0
- package/dist/core-runtime/scope-runtime/constraint-pool.test.js +674 -0
- package/dist/core-runtime/scope-runtime/domain-validation-log.js +135 -0
- package/dist/core-runtime/scope-runtime/domain-validation-log.test.js +156 -0
- package/dist/core-runtime/scope-runtime/eval-persistence.js +65 -0
- package/dist/core-runtime/scope-runtime/eval-persistence.test.js +84 -0
- package/dist/core-runtime/scope-runtime/event-pipeline.js +64 -0
- package/dist/core-runtime/scope-runtime/event-pipeline.test.js +450 -0
- package/dist/core-runtime/scope-runtime/event-store.js +39 -0
- package/dist/core-runtime/scope-runtime/event-store.test.js +95 -0
- package/dist/core-runtime/scope-runtime/gate-guard.js +348 -0
- package/dist/core-runtime/scope-runtime/gate-guard.test.js +1047 -0
- package/dist/core-runtime/scope-runtime/hash.js +4 -0
- package/dist/core-runtime/scope-runtime/hash.test.js +33 -0
- package/dist/core-runtime/scope-runtime/id.js +4 -0
- package/dist/core-runtime/scope-runtime/id.test.js +17 -0
- package/dist/core-runtime/scope-runtime/reducer.js +297 -0
- package/dist/core-runtime/scope-runtime/reducer.test.js +759 -0
- package/dist/core-runtime/scope-runtime/scope-manager.js +161 -0
- package/dist/core-runtime/scope-runtime/state-machine.js +309 -0
- package/dist/core-runtime/scope-runtime/state-machine.test.js +704 -0
- package/dist/core-runtime/scope-runtime/types.js +116 -0
- package/dist/core-runtime/scope-runtime/types.test.js +69 -0
- package/dist/core-runtime/target-material-kind.js +256 -0
- package/dist/core-runtime/translate/render-for-user.js +169 -0
- package/dist/core-runtime/translate/render-for-user.test.js +122 -0
- package/dist/mcp/server.js +1011 -0
- package/dist/mcp/tool-schemas.js +93 -0
- package/dist/providers/capability-contract.js +1 -0
- package/package.json +68 -0
- 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
|