stylegallery 0.1.0 → 0.1.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (230) hide show
  1. package/AGENTS.md +4 -1
  2. package/DOMAINS.md +2 -6
  3. package/GOVERNANCE.md +10 -9
  4. package/README.md +23 -127
  5. package/consumer-reference/agent-native/v2/admission-policy.json +646 -0
  6. package/consumer-reference/agent-native/v2/material-registry.json +1 -0
  7. package/consumer-reference/agent-native/v2/schema/admission-policy.schema.json +50 -0
  8. package/consumer-reference/agent-native/v2/schema/material-manifest.schema.json +17 -0
  9. package/consumer-reference/agent-native/v2/schema/material-record.schema.json +20 -0
  10. package/consumer-reference/contract.md +1 -1
  11. package/consumer-reference/index.md +5 -3
  12. package/layout/index.md +124 -0
  13. package/log.md +51 -0
  14. package/package.json +181 -22
  15. package/scripts/agent-native/v2/experimental-extension-registry.mjs +143 -0
  16. package/scripts/agent-native/v2/extensions/a2a-projection.mjs +264 -0
  17. package/scripts/agent-native/v2/extensions/agui-projection.mjs +191 -0
  18. package/scripts/agent-native/v2/material-admission.mjs +295 -0
  19. package/scripts/agent-native/v2/material-cli-adapter.mjs +134 -0
  20. package/scripts/agent-native/v2/material-context.mjs +251 -0
  21. package/scripts/agent-native/v2/material-identity.mjs +71 -0
  22. package/scripts/agent-native/v2/material-mcp-adapter.mjs +253 -0
  23. package/scripts/agent-native/v2/material-operation-registry.mjs +123 -0
  24. package/scripts/agent-native/v2/material-queries.mjs +398 -0
  25. package/scripts/agent-native/v2/material-registry.mjs +319 -0
  26. package/scripts/sg-material-mcp.mjs +98 -0
  27. package/scripts/sg-material.mjs +27 -0
  28. package/consumer-reference/adapters/style-dictionary.config.mjs +0 -36
  29. package/consumer-reference/baselines/calibration.json +0 -260
  30. package/consumer-reference/baselines/manifest.json +0 -21
  31. package/consumer-reference/fixtures/consumer-conformance/e2e-fixture.mjs +0 -282
  32. package/consumer-reference/fixtures/consumer-conformance/manifest.json +0 -102
  33. package/consumer-reference/fixtures/consumer-conformance/runtime-proof.mjs +0 -32
  34. package/consumer-reference/fixtures/consumer-conformance/valid-migration-result.json +0 -18
  35. package/consumer-reference/fixtures/consumer-conformance/valid-migration.json +0 -142
  36. package/consumer-reference/fixtures/invalid-stable-ended-support.json +0 -19
  37. package/consumer-reference/fixtures/promotion/invalid-blocking-evidence.json +0 -26
  38. package/consumer-reference/fixtures/promotion/invalid-count-only.json +0 -29
  39. package/consumer-reference/fixtures/promotion/invalid-missing-owner-migration.json +0 -25
  40. package/consumer-reference/fixtures/promotion/invalid-normative-bypass-no-regression.json +0 -25
  41. package/consumer-reference/fixtures/promotion/invalid-related-counted-independent.json +0 -45
  42. package/consumer-reference/fixtures/promotion/invalid-stable-ended-support.json +0 -26
  43. package/consumer-reference/fixtures/promotion/manifest.json +0 -15
  44. package/consumer-reference/fixtures/promotion/valid-deferred-example.json +0 -67
  45. package/consumer-reference/fixtures/promotion/valid-normative-bypass.json +0 -67
  46. package/consumer-reference/fixtures/token-portability/invalid-cycle.json +0 -7
  47. package/consumer-reference/fixtures/token-portability/invalid-dangling-alias.json +0 -6
  48. package/consumer-reference/fixtures/token-portability/invalid-extends.json +0 -4
  49. package/consumer-reference/fixtures/token-portability/invalid-json-pointer.json +0 -7
  50. package/consumer-reference/fixtures/token-portability/invalid-resolver.json +0 -9
  51. package/consumer-reference/fixtures/token-portability/invalid-type-mismatch.json +0 -10
  52. package/consumer-reference/fixtures/token-portability/invalid-unknown-reserved.json +0 -6
  53. package/consumer-reference/fixtures/token-portability/invalid-untested-type.json +0 -6
  54. package/consumer-reference/fixtures/token-portability/valid-border.json +0 -14
  55. package/consumer-reference/fixtures/token-portability/valid-reference.json +0 -32
  56. package/consumer-reference/fixtures/token-portability/valid-whole-alias.json +0 -7
  57. package/consumer-reference/fixtures/valid-deprecated.json +0 -21
  58. package/consumer-reference/fixtures/valid-experimental.json +0 -19
  59. package/consumer-reference/generated/manifest.json +0 -40
  60. package/consumer-reference/generated/tokens.css +0 -12
  61. package/consumer-reference/policies/shared-experimental.json +0 -37
  62. package/consumer-reference/schema/ax-evidence.schema.json +0 -30
  63. package/consumer-reference/schema/baseline-manifest.schema.json +0 -55
  64. package/consumer-reference/schema/calibration-record.schema.json +0 -190
  65. package/consumer-reference/schema/capture-session.schema.json +0 -161
  66. package/consumer-reference/schema/component-state.schema.json +0 -150
  67. package/consumer-reference/schema/consumer-conformance-record.schema.json +0 -365
  68. package/consumer-reference/schema/dom-evidence.schema.json +0 -38
  69. package/consumer-reference/schema/evidence-record.schema.json +0 -81
  70. package/consumer-reference/schema/fixture-manifest.schema.json +0 -32
  71. package/consumer-reference/schema/item.schema.json +0 -188
  72. package/consumer-reference/schema/page-evidence-manifest.schema.json +0 -216
  73. package/consumer-reference/schema/page-evidence-session.schema.json +0 -119
  74. package/consumer-reference/schema/portable-tokens.schema.json +0 -104
  75. package/consumer-reference/schema/promotion-rfc.schema.json +0 -219
  76. package/consumer-reference/schema/runtime-evidence-manifest.schema.json +0 -33
  77. package/consumer-reference/schema/visual-evidence.schema.json +0 -31
  78. package/design-engineering/consumer-migration-readiness.md +0 -124
  79. package/design-engineering/interface-craft.md +0 -107
  80. package/design-engineering/reference-profiles/external-adaptation/index.md +0 -12
  81. package/design-engineering/reference-profiles/governed-local/editorial/components/button.component.json +0 -125
  82. package/design-engineering/reference-profiles/governed-local/editorial/evidence/button.evidence.json +0 -3504
  83. package/design-engineering/reference-profiles/governed-local/editorial/fixtures/button.fixture.json +0 -65
  84. package/design-engineering/reference-profiles/governed-local/editorial/generated/evidence-coverage.md +0 -23
  85. package/design-engineering/reference-profiles/governed-local/editorial/generated/keyboard-matrix.md +0 -19
  86. package/design-engineering/reference-profiles/governed-local/editorial/generated/state-matrix.md +0 -21
  87. package/design-engineering/reference-profiles/governed-local/editorial/local-foundations.json +0 -12
  88. package/design-engineering/reference-profiles/governed-local/editorial/states/button.states.json +0 -195
  89. package/design-engineering/reference-profiles/governed-local/editorial/tokens.dtcg.json +0 -17
  90. package/design-engineering/reference-profiles/governed-local/terminal/components/button.component.json +0 -125
  91. package/design-engineering/reference-profiles/governed-local/terminal/evidence/button.evidence.json +0 -3504
  92. package/design-engineering/reference-profiles/governed-local/terminal/fixtures/button.fixture.json +0 -65
  93. package/design-engineering/reference-profiles/governed-local/terminal/generated/evidence-coverage.md +0 -23
  94. package/design-engineering/reference-profiles/governed-local/terminal/generated/keyboard-matrix.md +0 -19
  95. package/design-engineering/reference-profiles/governed-local/terminal/generated/state-matrix.md +0 -21
  96. package/design-engineering/reference-profiles/governed-local/terminal/local-foundations.json +0 -12
  97. package/design-engineering/reference-profiles/governed-local/terminal/profile.json +0 -43
  98. package/design-engineering/reference-profiles/governed-local/terminal/states/button.states.json +0 -195
  99. package/design-engineering/reference-profiles/governed-local/terminal/tokens.dtcg.json +0 -17
  100. package/game-ui/classification.md +0 -82
  101. package/game-ui/reference-record.md +0 -62
  102. package/game-ui/screen-hierarchy.md +0 -107
  103. package/game-ui/unity/architecture.md +0 -166
  104. package/game-ui/unity/cli-loop.md +0 -84
  105. package/game-ui/unity/data/unity-technologies-public-repositories.json +0 -26654
  106. package/game-ui/unity/org-wiki.md +0 -146
  107. package/game-ui/unity/repository-map.md +0 -102
  108. package/game-ui/unity/ui-systems.md +0 -85
  109. package/motion/practice-reference.md +0 -145
  110. package/motion/review-workflow.md +0 -86
  111. package/motion/vocabulary.md +0 -82
  112. package/platform-guides/apple-interaction.md +0 -89
  113. package/scripts/agent-native/events.mjs +0 -113
  114. package/scripts/agent-native/immutable-store.mjs +0 -102
  115. package/scripts/artifact-metadata.mjs +0 -20
  116. package/scripts/audit-evidence-freshness.mjs +0 -308
  117. package/scripts/baseline-contract.mjs +0 -189
  118. package/scripts/baseline-schema-parity.mjs +0 -40
  119. package/scripts/build-reference-artifacts.mjs +0 -127
  120. package/scripts/calibration-raw-contract.mjs +0 -172
  121. package/scripts/capture-session-contract.mjs +0 -187
  122. package/scripts/component-state-artifact-fixture.mjs +0 -44
  123. package/scripts/component-state-contract.mjs +0 -99
  124. package/scripts/component-state-semantics.mjs +0 -128
  125. package/scripts/component-state-workflow-contract.mjs +0 -67
  126. package/scripts/component-state-workflow-negative-cases.mjs +0 -64
  127. package/scripts/consumer-conformance-contract.mjs +0 -198
  128. package/scripts/consumer-evidence-governance-contract.mjs +0 -210
  129. package/scripts/consumer-reference-case-runner.mjs +0 -93
  130. package/scripts/consumer-reference-schema.mjs +0 -155
  131. package/scripts/create-component-state-session.mjs +0 -100
  132. package/scripts/create-page-evidence-session.mjs +0 -139
  133. package/scripts/domain-document-boundaries.mjs +0 -40
  134. package/scripts/domain-validation-checks.mjs +0 -141
  135. package/scripts/evidence-artifact-contract.mjs +0 -191
  136. package/scripts/finalize-component-state-evidence.mjs +0 -165
  137. package/scripts/finalize-page-evidence.mjs +0 -197
  138. package/scripts/generate-consumer-reference-evidence.mjs +0 -154
  139. package/scripts/generate-patterns.mjs +0 -218
  140. package/scripts/governance-matrix-contract.mjs +0 -73
  141. package/scripts/governance-matrix-negative-cases.mjs +0 -114
  142. package/scripts/governance-policy-contract.mjs +0 -49
  143. package/scripts/governance-test-fixture.mjs +0 -321
  144. package/scripts/governance-workflow-negative-cases.mjs +0 -241
  145. package/scripts/governed-profile-registry.mjs +0 -125
  146. package/scripts/json-schema-formats.mjs +0 -31
  147. package/scripts/markdown-structure.mjs +0 -45
  148. package/scripts/page-artifact-metadata.mjs +0 -124
  149. package/scripts/page-evidence-contract.mjs +0 -297
  150. package/scripts/page-evidence-fixture.mjs +0 -271
  151. package/scripts/pattern-data.mjs +0 -325
  152. package/scripts/profile-record-contract.mjs +0 -140
  153. package/scripts/promotion-attestation-contract.mjs +0 -91
  154. package/scripts/promotion-boundary-test-contract.mjs +0 -92
  155. package/scripts/promotion-fixture-inventory.mjs +0 -109
  156. package/scripts/promotion-governance-contract.mjs +0 -28
  157. package/scripts/reference-artifact-path-contract.mjs +0 -28
  158. package/scripts/reference-profile-contract.mjs +0 -114
  159. package/scripts/reference-token-contract.mjs +0 -156
  160. package/scripts/run-consumer-page-evidence-ci.mjs +0 -170
  161. package/scripts/summarize-sentinel-calibration.mjs +0 -98
  162. package/scripts/test-agent-adapter-conformance.mjs +0 -250
  163. package/scripts/test-agent-conformance-receipt.mjs +0 -106
  164. package/scripts/test-agent-events.mjs +0 -81
  165. package/scripts/test-agent-execution-effects.mjs +0 -114
  166. package/scripts/test-agent-execution-fixtures.mjs +0 -140
  167. package/scripts/test-agent-execution-kernel.mjs +0 -39
  168. package/scripts/test-agent-execution-learning.mjs +0 -130
  169. package/scripts/test-agent-execution-lifecycle.mjs +0 -143
  170. package/scripts/test-agent-execution-safety.mjs +0 -158
  171. package/scripts/test-agent-execution-views.mjs +0 -117
  172. package/scripts/test-agent-identity-integrity-cases.mjs +0 -160
  173. package/scripts/test-agent-knowledge-kernel.mjs +0 -183
  174. package/scripts/test-agent-learning.mjs +0 -246
  175. package/scripts/test-agent-mcp.mjs +0 -246
  176. package/scripts/test-agent-native-schemas.mjs +0 -215
  177. package/scripts/test-agent-projections.mjs +0 -249
  178. package/scripts/test-agent-registry-mcp-integrity.mjs +0 -215
  179. package/scripts/test-agent-registry-mutations.mjs +0 -110
  180. package/scripts/test-audit-evidence-freshness.mjs +0 -177
  181. package/scripts/test-component-state-sentinel.mjs +0 -35
  182. package/scripts/test-component-state-source-contract.mjs +0 -83
  183. package/scripts/test-consumer-conformance-sentinel.mjs +0 -165
  184. package/scripts/test-consumer-reference-sentinel.mjs +0 -31
  185. package/scripts/test-generate-consumer-reference-evidence.mjs +0 -124
  186. package/scripts/test-json-cli-output.mjs +0 -151
  187. package/scripts/test-json-schema-formats.mjs +0 -40
  188. package/scripts/test-reference-adapters.mjs +0 -199
  189. package/scripts/test-renderer-purity.mjs +0 -34
  190. package/scripts/test-sg-cli.mjs +0 -129
  191. package/scripts/test-summarize-sentinel-calibration.mjs +0 -226
  192. package/scripts/test-validate-baseline-manifest.mjs +0 -234
  193. package/scripts/test-validate-component-state-artifacts.mjs +0 -243
  194. package/scripts/test-validate-component-state.mjs +0 -106
  195. package/scripts/test-validate-consumer-conformance.mjs +0 -427
  196. package/scripts/test-validate-consumer-reference-cli.mjs +0 -69
  197. package/scripts/test-validate-consumer-reference.mjs +0 -263
  198. package/scripts/test-validate-domains.mjs +0 -357
  199. package/scripts/test-validate-governance.mjs +0 -292
  200. package/scripts/test-validate-ia.mjs +0 -262
  201. package/scripts/test-validate-okf.mjs +0 -73
  202. package/scripts/test-validate-page-evidence.mjs +0 -302
  203. package/scripts/test-validate-patterns.mjs +0 -157
  204. package/scripts/test-validate-promotion-rfc.mjs +0 -250
  205. package/scripts/test-validate-reference-profiles.mjs +0 -170
  206. package/scripts/test-validate-unity-org-wiki.mjs +0 -57
  207. package/scripts/test-validate-unity-source-contracts.mjs +0 -67
  208. package/scripts/test-validate-vocabulary.mjs +0 -174
  209. package/scripts/test-validate-webpage-workflow.mjs +0 -293
  210. package/scripts/validate-baseline-manifest.mjs +0 -44
  211. package/scripts/validate-catalog.mjs +0 -65
  212. package/scripts/validate-component-state.mjs +0 -141
  213. package/scripts/validate-consumer-conformance.mjs +0 -477
  214. package/scripts/validate-consumer-reference.mjs +0 -288
  215. package/scripts/validate-domains.mjs +0 -237
  216. package/scripts/validate-governance.mjs +0 -248
  217. package/scripts/validate-ia.mjs +0 -136
  218. package/scripts/validate-links.mjs +0 -66
  219. package/scripts/validate-okf.mjs +0 -104
  220. package/scripts/validate-page-evidence.mjs +0 -191
  221. package/scripts/validate-patterns.mjs +0 -246
  222. package/scripts/validate-promotion-rfc.mjs +0 -224
  223. package/scripts/validate-reference-artifacts.mjs +0 -125
  224. package/scripts/validate-renderer-purity.mjs +0 -56
  225. package/scripts/validate-unity-org-wiki.mjs +0 -146
  226. package/scripts/validate-unity-source-contracts.mjs +0 -107
  227. package/scripts/validate-vocabulary.mjs +0 -115
  228. package/scripts/validate-webpage-workflow.mjs +0 -254
  229. package/scripts/visual-expectation-contract.mjs +0 -20
  230. package/scripts/workflow-action-contract.mjs +0 -163
@@ -1,65 +0,0 @@
1
- {
2
- "schema_version": "1.0",
3
- "fixture_id": "terminal-button-runtime",
4
- "component_id": "button",
5
- "profile_id": "terminal-reference-profile",
6
- "component_record": "../components/button.component.json",
7
- "state_record": "../states/button.states.json",
8
- "scenarios": [
9
- {
10
- "id": "action-disabled-busy",
11
- "semantic_mode": "action",
12
- "label": "Command unavailable",
13
- "activation_key": "Enter",
14
- "required_channels": [
15
- "visual",
16
- "dom",
17
- "ax"
18
- ]
19
- },
20
- {
21
- "id": "action-focused",
22
- "semantic_mode": "action",
23
- "label": "Run command",
24
- "activation_key": "Enter",
25
- "required_channels": [
26
- "visual",
27
- "dom",
28
- "ax"
29
- ]
30
- },
31
- {
32
- "id": "action-loading-busy",
33
- "semantic_mode": "action",
34
- "label": "Command running",
35
- "activation_key": "Enter",
36
- "required_channels": [
37
- "visual",
38
- "dom",
39
- "ax"
40
- ]
41
- },
42
- {
43
- "id": "disclosure-expanded-loading",
44
- "semantic_mode": "disclosure",
45
- "label": "Show process log",
46
- "activation_key": "Enter",
47
- "required_channels": [
48
- "visual",
49
- "dom",
50
- "ax"
51
- ]
52
- },
53
- {
54
- "id": "toggle-focused-pressed",
55
- "semantic_mode": "toggle",
56
- "label": "Pin output",
57
- "activation_key": "Space",
58
- "required_channels": [
59
- "visual",
60
- "dom",
61
- "ax"
62
- ]
63
- }
64
- ]
65
- }
@@ -1,23 +0,0 @@
1
- ---
2
- type: Generated Evidence
3
- title: "terminal button evidence coverage"
4
- description: "Claim-scoped evidence channels and artifacts derived from canonical JSON."
5
- ---
6
-
7
- <!-- Generated from canonical JSON. Do not edit. -->
8
- # terminal button evidence coverage
9
-
10
- Claim boundary: Scenario artifacts are evidence, not visual regression baselines or accessibility certification.
11
-
12
- | Scenario | Required channels | Recorded channels | Pass records | Artifacts |
13
- | --- | --- | --- | --- | --- |
14
- | <code>action-disabled-busy</code> | <code>visual</code>, <code>dom</code>, <code>ax</code> | <code>ax</code>, <code>dom</code>, <code>visual</code> | 3 | <code>runtime/terminal-action-disabled-busy.ax.json</code><br><code>runtime/terminal-action-disabled-busy.dom.json</code><br><code>runtime/terminal-action-disabled-busy.png</code> |
15
- | <code>action-focused</code> | <code>visual</code>, <code>dom</code>, <code>ax</code> | <code>ax</code>, <code>dom</code>, <code>visual</code> | 3 | <code>runtime/terminal-action-focused.ax.json</code><br><code>runtime/terminal-action-focused.dom.json</code><br><code>runtime/terminal-action-focused.png</code> |
16
- | <code>action-loading-busy</code> | <code>visual</code>, <code>dom</code>, <code>ax</code> | <code>ax</code>, <code>dom</code>, <code>visual</code> | 3 | <code>runtime/terminal-action-loading-busy.ax.json</code><br><code>runtime/terminal-action-loading-busy.dom.json</code><br><code>runtime/terminal-action-loading-busy.png</code> |
17
- | <code>disclosure-expanded-loading</code> | <code>visual</code>, <code>dom</code>, <code>ax</code> | <code>ax</code>, <code>dom</code>, <code>visual</code> | 3 | <code>runtime/terminal-disclosure-expanded-loading.ax.json</code><br><code>runtime/terminal-disclosure-expanded-loading.dom.json</code><br><code>runtime/terminal-disclosure-expanded-loading.png</code> |
18
- | <code>toggle-focused-pressed</code> | <code>visual</code>, <code>dom</code>, <code>ax</code> | <code>ax</code>, <code>dom</code>, <code>visual</code> | 3 | <code>runtime/terminal-toggle-focused-pressed.ax.json</code><br><code>runtime/terminal-toggle-focused-pressed.dom.json</code><br><code>runtime/terminal-toggle-focused-pressed.png</code> |
19
-
20
- ## IA Navigation
21
-
22
- Parent: [Keyboard Matrix](keyboard-matrix.md).
23
- Next: [Reference Profiles](../../../index.md).
@@ -1,19 +0,0 @@
1
- ---
2
- type: Generated Evidence
3
- title: "terminal button keyboard matrix"
4
- description: "Keyboard behavior and live fixture coverage derived from canonical JSON."
5
- ---
6
-
7
- <!-- Generated from canonical JSON. Do not edit. -->
8
- # terminal button keyboard matrix
9
-
10
- | Mode | Element | Role | Keys | Behavior | Runtime scenario |
11
- | --- | --- | --- | --- | --- | --- |
12
- | <code>action</code> | button | button | <code>Enter</code>, <code>Space</code> | <code>invoke</code> | <code>action-loading-busy</code> |
13
- | <code>disclosure</code> | button | button | <code>Enter</code>, <code>Space</code> | <code>control</code> | <code>disclosure-expanded-loading</code> |
14
- | <code>toggle</code> | button | button | <code>Enter</code>, <code>Space</code> | <code>toggle</code> | <code>toggle-focused-pressed</code> |
15
-
16
- ## IA Navigation
17
-
18
- Parent: [State Matrix](state-matrix.md).
19
- Next: [Evidence Coverage](evidence-coverage.md).
@@ -1,21 +0,0 @@
1
- ---
2
- type: Generated Evidence
3
- title: "terminal button state matrix"
4
- description: "Compound state sets and channel expectations derived from canonical JSON."
5
- ---
6
-
7
- <!-- Generated from canonical JSON. Do not edit. -->
8
- # terminal button state matrix
9
-
10
- | Scenario | Mode | State set | ARIA | Visual | Activation |
11
- | --- | --- | --- | --- | --- | --- |
12
- | <code>action-disabled-busy</code> | action | <code>busy</code>, <code>disabled</code> | <code>aria-busy=true</code><br><code>aria-disabled=true</code> | <code>busy</code>, <code>disabled</code> | suppressed |
13
- | <code>action-focused</code> | action | <code>focus</code> | none | <code>focus</code>, <code>ready</code> | allowed |
14
- | <code>action-loading-busy</code> | action | <code>busy</code>, <code>focus</code>, <code>loading</code> | <code>aria-busy=true</code> | <code>busy</code>, <code>focus</code>, <code>loading</code> | suppressed |
15
- | <code>disclosure-expanded-loading</code> | disclosure | <code>busy</code>, <code>expanded</code>, <code>focus</code>, <code>loading</code> | <code>aria-busy=true</code><br><code>aria-expanded=true</code> | <code>busy</code>, <code>expanded</code>, <code>focus</code>, <code>loading</code> | allowed |
16
- | <code>toggle-focused-pressed</code> | toggle | <code>focus</code>, <code>pressed</code> | <code>aria-pressed=true</code> | <code>focus</code>, <code>pressed</code> | allowed |
17
-
18
- ## IA Navigation
19
-
20
- Parent: [Governed Local Profiles](../../index.md).
21
- Next: [Keyboard Matrix](keyboard-matrix.md).
@@ -1,12 +0,0 @@
1
- {
2
- "bindings": {
3
- "accent": "{color.accent}",
4
- "body_font_family": "SFMono-Regular, Consolas, monospace",
5
- "canvas": "{color.screen}",
6
- "content_rhythm": "{space.rhythm}",
7
- "text": "{color.ink}"
8
- },
9
- "identity": "Dark high-density operator terminal",
10
- "profile_id": "terminal-reference-profile",
11
- "schema_version": "1.0"
12
- }
@@ -1,43 +0,0 @@
1
- {
2
- "artifact_mode": "governed_local",
3
- "component_records": ["components/button.component.json"],
4
- "default": false,
5
- "environment_assumptions": {
6
- "reset": {
7
- "body_margin": "0",
8
- "box_sizing": "border-box",
9
- "figure_margin": "0"
10
- },
11
- "user_agent_styles": "Preserve semantic browser defaults except for the declared reset."
12
- },
13
- "example_only": true,
14
- "evidence_records": ["evidence/button.evidence.json"],
15
- "fixture_independence": "related",
16
- "fixture_records": ["fixtures/button.fixture.json"],
17
- "generated_records": ["generated/evidence-coverage.md", "generated/keyboard-matrix.md", "generated/state-matrix.md"],
18
- "handoff": {
19
- "record": "design-engineering/reference-profiles/governed-local/terminal/profile.json",
20
- "status": "declared"
21
- },
22
- "id": "terminal-reference-profile",
23
- "layout_source_sha": "775430bbaf4ee208a642220f440f6926d79c90a3",
24
- "local_foundations": "local-foundations.json",
25
- "maturity": "experimental",
26
- "owner": {
27
- "enforcement": "placeholder",
28
- "name": "Design Engineering owner"
29
- },
30
- "profile_kind": "governed_local",
31
- "related_fixture_set_id": "layout-identity-adversarial-pair",
32
- "review_independence": "single_account",
33
- "schema_version": "1.0",
34
- "selection": {
35
- "method": "profile_path",
36
- "required": true
37
- },
38
- "support": {
39
- "status": "active"
40
- },
41
- "state_records": ["states/button.states.json"],
42
- "tokens": "tokens.dtcg.json"
43
- }
@@ -1,195 +0,0 @@
1
- {
2
- "schema_version": "1.0",
3
- "record_kind": "state_set",
4
- "component_id": "button",
5
- "profile_id": "terminal-reference-profile",
6
- "visual_environments": [
7
- {
8
- "id": "darwin-arm64-chromium-1228",
9
- "browser": "Google Chrome for Testing 149.0.7827.55",
10
- "browser_revision": "chromium-1228",
11
- "container_image": "local-host:25.5.0",
12
- "platform": "darwin/arm64",
13
- "playwright": "1.61.0",
14
- "viewport": "1024x768"
15
- },
16
- {
17
- "id": "linux-amd64-chromium-1228",
18
- "browser": "Google Chrome for Testing 149.0.7827.55",
19
- "browser_revision": "chromium-1228",
20
- "container_image": "mcr.microsoft.com/playwright:v1.61.0-noble@sha256:57b65fdc9ceabe0ef613124c7bbe2babcf9362c4d85e382fe3b03604e84b428a",
21
- "platform": "linux/amd64",
22
- "playwright": "1.61.0",
23
- "viewport": "1024x768"
24
- }
25
- ],
26
- "scenarios": [
27
- {
28
- "id": "action-disabled-busy",
29
- "semantic_mode": "action",
30
- "states": [
31
- "busy",
32
- "disabled"
33
- ],
34
- "aria": {
35
- "busy": "true",
36
- "disabled": "true"
37
- },
38
- "expected": {
39
- "visual": [
40
- "busy",
41
- "disabled"
42
- ],
43
- "visual_image": [
44
- { "environment_id": "darwin-arm64-chromium-1228", "sha256": "sha256:d346be9e96750f636f29078d17d9871a04c2f4442b6849b029fa754c2795674e", "width": 640, "height": 56 },
45
- { "environment_id": "linux-amd64-chromium-1228", "sha256": "sha256:f28ac192821773d5d692ad978075da5b1480971e3b3bc9be8983e3eb2cd43484", "width": 640, "height": 56 }
46
- ],
47
- "dom": {
48
- "active": "false",
49
- "aria-busy": "true",
50
- "disabled": "true",
51
- "role": "button"
52
- },
53
- "ax": {
54
- "busy": true,
55
- "disabled": true,
56
- "focused": false,
57
- "role": "button"
58
- },
59
- "activation": "suppressed"
60
- }
61
- },
62
- {
63
- "id": "action-focused",
64
- "semantic_mode": "action",
65
- "states": [
66
- "focus"
67
- ],
68
- "aria": {},
69
- "expected": {
70
- "visual": [
71
- "focus",
72
- "ready"
73
- ],
74
- "visual_image": [
75
- { "environment_id": "darwin-arm64-chromium-1228", "sha256": "sha256:39b96bc2459e2f0f442ce7b709f22e46b44f49b17c52d61940dff0246108ec48", "width": 640, "height": 56 },
76
- { "environment_id": "linux-amd64-chromium-1228", "sha256": "sha256:7497f0542e2a4b77749ee47cfa7f575b640bad737c652a71610e9f86f8e5f2b8", "width": 640, "height": 56 }
77
- ],
78
- "dom": {
79
- "active": "true",
80
- "role": "button"
81
- },
82
- "ax": {
83
- "focused": true,
84
- "role": "button"
85
- },
86
- "activation": "allowed"
87
- }
88
- },
89
- {
90
- "id": "action-loading-busy",
91
- "semantic_mode": "action",
92
- "states": [
93
- "busy",
94
- "focus",
95
- "loading"
96
- ],
97
- "aria": {
98
- "busy": "true"
99
- },
100
- "expected": {
101
- "visual": [
102
- "busy",
103
- "focus",
104
- "loading"
105
- ],
106
- "visual_image": [
107
- { "environment_id": "darwin-arm64-chromium-1228", "sha256": "sha256:05cbe173a8274cfa7e6aab05713d1cb925820a7412bffceadb94d83498c17747", "width": 640, "height": 56 },
108
- { "environment_id": "linux-amd64-chromium-1228", "sha256": "sha256:1521023b829210f899d2f56750e362cbfc30e8d6045f6f78a6c553a43bf610c4", "width": 640, "height": 56 }
109
- ],
110
- "dom": {
111
- "active": "true",
112
- "aria-busy": "true",
113
- "role": "button"
114
- },
115
- "ax": {
116
- "busy": true,
117
- "focused": true,
118
- "role": "button"
119
- },
120
- "activation": "suppressed"
121
- }
122
- },
123
- {
124
- "id": "disclosure-expanded-loading",
125
- "semantic_mode": "disclosure",
126
- "states": [
127
- "busy",
128
- "expanded",
129
- "focus",
130
- "loading"
131
- ],
132
- "aria": {
133
- "busy": "true",
134
- "expanded": "true"
135
- },
136
- "expected": {
137
- "visual": [
138
- "busy",
139
- "expanded",
140
- "focus",
141
- "loading"
142
- ],
143
- "visual_image": [
144
- { "environment_id": "darwin-arm64-chromium-1228", "sha256": "sha256:d8c7ba056dd2a61ce6c85d8ec6bf56733cdc34da07678dd9b4175c7de9ab926a", "width": 640, "height": 88 },
145
- { "environment_id": "linux-amd64-chromium-1228", "sha256": "sha256:7cef4e68a5a3df50c1705c7b88936bf0988317e2f6bed92ae5c04992388126a3", "width": 640, "height": 91 }
146
- ],
147
- "dom": {
148
- "active": "true",
149
- "aria-busy": "true",
150
- "aria-expanded": "true",
151
- "role": "button"
152
- },
153
- "ax": {
154
- "busy": true,
155
- "expanded": true,
156
- "focused": true,
157
- "role": "button"
158
- },
159
- "activation": "allowed"
160
- }
161
- },
162
- {
163
- "id": "toggle-focused-pressed",
164
- "semantic_mode": "toggle",
165
- "states": [
166
- "focus",
167
- "pressed"
168
- ],
169
- "aria": {
170
- "pressed": "true"
171
- },
172
- "expected": {
173
- "visual": [
174
- "focus",
175
- "pressed"
176
- ],
177
- "visual_image": [
178
- { "environment_id": "darwin-arm64-chromium-1228", "sha256": "sha256:838229be984b8bda1ebfe6095564f1093df18fdd2ca1e6c3d5b5c086162d4692", "width": 640, "height": 56 },
179
- { "environment_id": "linux-amd64-chromium-1228", "sha256": "sha256:1c105821f16a028e974bdf00590e3d9aee8042016ee341f4efe56b4a525b867d", "width": 640, "height": 56 }
180
- ],
181
- "dom": {
182
- "active": "true",
183
- "aria-pressed": "true",
184
- "role": "button"
185
- },
186
- "ax": {
187
- "focused": true,
188
- "pressed": true,
189
- "role": "button"
190
- },
191
- "activation": "allowed"
192
- }
193
- }
194
- ]
195
- }
@@ -1,17 +0,0 @@
1
- {
2
- "color": {
3
- "$type": "color",
4
- "accent": { "$value": { "alpha": 1, "colorSpace": "srgb", "components": [0.25, 0.92, 0.55] } },
5
- "ink": { "$value": { "alpha": 1, "colorSpace": "srgb", "components": [0.76, 0.95, 0.83] } },
6
- "screen": { "$value": { "alpha": 1, "colorSpace": "srgb", "components": [0.02, 0.05, 0.04] } }
7
- },
8
- "duration": {
9
- "$type": "duration",
10
- "feedback": { "$value": { "unit": "ms", "value": 80 } }
11
- },
12
- "space": {
13
- "$type": "dimension",
14
- "page": { "$value": { "unit": "rem", "value": 1 } },
15
- "rhythm": { "$value": { "unit": "rem", "value": 0.5 } }
16
- }
17
- }
@@ -1,82 +0,0 @@
1
- ---
2
- type: Domain Guide
3
- title: Game UI Classification
4
- description: Engine-neutral method for classifying game interfaces by player task, presentation, input, state, and motion.
5
- domain: game-ui
6
- lifecycle: experimental
7
- ---
8
-
9
- # Game UI Classification
10
-
11
- Primary role: game-interface classification guide.
12
-
13
- ## Repository Boundary
14
-
15
- This guide proposes a local, project-neutral taxonomy for classifying observable game-interface behavior without assuming a specific engine or art direction. Its player-task classes and classification axes are review tools, not a universal ontology. It does not turn a visual genre into a functional category or authorize decorative properties in reusable Layout patterns.
16
-
17
- ## Reusable Method
18
-
19
- 1. Capture the rendered screen or interaction in context.
20
- 2. Assign one primary player-task class.
21
- 3. Add secondary classes only when the same surface genuinely composes responsibilities.
22
- 4. Record visual language, input, state, motion, and implementation as separate axes.
23
- 5. Attach evidence for default, exceptional, and transitional states.
24
- 6. State what is observed, inferred, and still unverified.
25
-
26
- ## Player-Task Classes
27
-
28
- | Primary class | Player question | Typical examples |
29
- | --- | --- | --- |
30
- | `hud` | What is happening during play right now? | Health, ammo, objective, marker, cooldown |
31
- | `navigation` | Where can I go next? | Main menu, pause menu, chapter or mode selection |
32
- | `dialog` | What decision or interruption needs attention? | Confirmation, reconnect, privacy, system notice |
33
- | `inventory` | What do I own, equip, compare, or improve? | Loadout, stash, equipment, crafting, upgrade |
34
- | `progression` | What did I unlock or how am I advancing? | Results, level up, rewards, rank change |
35
- | `commerce` | What can I acquire and at what cost? | Shop, offer, product detail, currency shortage |
36
- | `tutorial` | What action should I learn or perform? | Coach mark, forced step, contextual hint |
37
- | `narrative` | What story or authored event is being presented? | Dialogue, boss intro, cinematic overlay |
38
- | `system-status` | Is the application ready and connected? | Splash, loading, sign-in, reconnect, patch status |
39
- | `input-surface` | How do I directly control the game? | Virtual stick, action button, key binding |
40
-
41
- ## Classification Axes
42
-
43
- | Axis | Example values | Evidence requirement |
44
- | --- | --- | --- |
45
- | World relationship | `diegetic`, `spatial`, `overlay`, `full-screen` | Capture placement relative to play space |
46
- | Material character | `flat-graphic`, `framed`, `skeuomorphic`, `translucent`, `textural` | Capture repeated surface treatment |
47
- | Genre signal | `tactical`, `industrial`, `fantasy-ornamental`, `arcade`, `horror`, `casual` | Show repeated shape, type, icon, and material cues |
48
- | Information density | `sparse`, `standard`, `dense` | Count simultaneous choices and information groups |
49
- | Emphasis model | `typographic`, `icon-led`, `character-led`, `item-led`, `effect-led` | Identify first and second attention targets |
50
- | Input | pointer, keyboard, gamepad, touch, gaze, mixed | Exercise every declared input mode |
51
- | Motion role | affordance, activation, state change, transition, value change, reward, guidance, ambient | Record trigger, properties, timing, and interruption |
52
-
53
- ## Opinionated Guidance
54
-
55
- - Organize the gallery first by player task, then filter by presentation and implementation axes.
56
- - Use two or three visual tags supported by repeated evidence.
57
- - Classify independent player-task regions separately when a screen composes them.
58
- - Do not infer style or behavior from project, prefab, widget, scene, or class names alone.
59
-
60
- ## Platform-Specific Guidance
61
-
62
- Record engine, UI framework, render space, scaling policy, navigation system, text system, and motion system as implementation evidence. Route detailed engine hierarchy and API guidance to the matching engine-specific Game UI guide.
63
-
64
- ## Unsupported Absolutes
65
-
66
- - A genre label does not establish a visual style.
67
- - A screenshot does not prove responsive behavior, focus behavior, or motion interruption.
68
- - A production project's folder structure is not a universal architecture.
69
- - Similar appearance does not prove equivalent accessibility, performance, or interaction behavior.
70
-
71
- ## Verification Contract
72
-
73
- Verify narrow and wide surfaces, every declared input mode, long localized text, empty and loading states, disabled and error states, repeated open and close, rapid selection changes, and interrupted motion where relevant.
74
-
75
- ## Source, License, And Attribution
76
-
77
- This page is a locally authored, project-neutral proposed taxonomy. It reproduces no game assets, project-specific hierarchy, or upstream implementation samples.
78
-
79
- ## IA Navigation
80
-
81
- Parent: [Game UI](index.md).
82
- Next: [Game UI Screen Hierarchy](screen-hierarchy.md).
@@ -1,62 +0,0 @@
1
- ---
2
- type: Domain Guide
3
- title: Game UI Reference Record
4
- description: Minimum evidence record for adding a game-interface reference to StyleGallery.
5
- domain: game-ui
6
- lifecycle: experimental
7
- ---
8
-
9
- # Game UI Reference Record
10
-
11
- Primary role: gallery evidence template.
12
-
13
- ## Repository Boundary
14
-
15
- This record captures enough context to compare a game UI reference without importing its assets, source hierarchy, or implementation assumptions as gallery policy.
16
-
17
- ## Reusable Method
18
-
19
- Complete the record from rendered evidence first, then add hierarchy and implementation facts. Mark unknown fields instead of guessing from names.
20
-
21
- ## Minimum Record
22
-
23
- | Field | Required content |
24
- | --- | --- |
25
- | Identity | Entry name, source, capture date, source revision or version |
26
- | Player task | One primary class and justified secondary classes |
27
- | Presentation | Two or three visual-language tags with rendered evidence |
28
- | Hierarchy | Root, layer, screen, region, component, and control ownership |
29
- | Platform | Engine, UI framework, relevant package or runtime versions |
30
- | Surface | Render space, aspect ratios, safe area, scaling policy |
31
- | Input | Supported modes, initial focus, navigation, cancellation, focus return |
32
- | States | Default, selected, disabled, loading, error, empty, modal |
33
- | Motion | Role, trigger, properties, timing, interruption, completion |
34
- | Evidence | Screen capture, recording, hierarchy capture, relevant source paths |
35
- | Boundary | Observed facts, inferences, unknowns, and reuse restrictions |
36
-
37
- ## Opinionated Guidance
38
-
39
- Prefer a complete record to a large screenshot collection missing state, hierarchy, or input evidence. It must explain the classification and what remains unproven.
40
-
41
- ## Platform-Specific Guidance
42
-
43
- Use the matching engine-specific Game UI guide to fill implementation fields. Engine terms supplement this record; they do not replace the engine-neutral player-task and hierarchy roles.
44
-
45
- ## Unsupported Absolutes
46
-
47
- - A source path is not rendered evidence.
48
- - A polished capture is not proof of edge-state behavior.
49
- - A single aspect ratio or input mode is not broad platform coverage.
50
-
51
- ## Verification Contract
52
-
53
- Reject an entry if its primary player task, rendered state, source identity, or evidence boundary is unknown. Keep incomplete entries in draft; do not infer missing facts.
54
-
55
- ## Source, License, And Attribution
56
-
57
- Record source licensing and reuse restrictions per entry. Do not copy protected game assets into the repository merely to make the record self-contained.
58
-
59
- ## IA Navigation
60
-
61
- Parent: [Game UI](index.md).
62
- Next: [Unity UI Architecture](unity/architecture.md).
@@ -1,107 +0,0 @@
1
- ---
2
- type: Domain Guide
3
- title: Game UI Screen Hierarchy
4
- description: Engine-neutral ownership model for composing game-interface shells, screens, layers, regions, components, and controls.
5
- domain: game-ui
6
- lifecycle: experimental
7
- ---
8
-
9
- # Game UI Screen Hierarchy
10
-
11
- Primary role: engine-neutral hierarchy guide.
12
-
13
- ## Repository Boundary
14
-
15
- This hierarchy describes interface responsibility, not a required scene graph or prefab tree. Engines may realize the same roles through scenes, widgets, documents, entities, prefabs, or runtime objects.
16
-
17
- ## Reusable Method
18
-
19
- Read a game UI hierarchy from ownership outward:
20
-
21
- 1. Identify the lifetime owner.
22
- 2. Identify the active player task.
23
- 3. Separate persistent, replaceable, modal, transient, and world-linked layers.
24
- 4. Name screen regions by responsibility.
25
- 5. Find repeated components and atomic controls.
26
- 6. Record navigation, input blocking, sorting, focus, and teardown ownership.
27
-
28
- ## Reference Hierarchy
29
-
30
- ```text
31
- Application UI Root
32
- ├── Persistent Services
33
- │ ├── Input and Focus Routing
34
- │ ├── Loading and Blocking
35
- │ ├── Notifications
36
- │ └── Accessibility and Localization
37
- ├── Screen Host
38
- │ └── Active Screen
39
- │ ├── Screen Header
40
- │ ├── Primary Region
41
- │ ├── Supporting Region
42
- │ └── Screen Actions
43
- ├── HUD Layer
44
- │ ├── Player Status
45
- │ ├── World Status
46
- │ ├── Objectives
47
- │ └── Context Actions
48
- ├── Modal Layer
49
- │ ├── Blocker
50
- │ └── Dialog or Popup Stack
51
- ├── Transient Layer
52
- │ ├── Toasts
53
- │ ├── Tooltips
54
- │ └── Reward and Feedback Effects
55
- └── World-Linked UI
56
- ├── Markers
57
- ├── Labels
58
- └── Interaction Prompts
59
- ```
60
-
61
- ## Hierarchy Roles
62
-
63
- | Level | Owns | Must not silently own |
64
- | --- | --- | --- |
65
- | Application root | Cross-screen lifetime, global routing, top-level sorting | Screen-specific business state |
66
- | Layer host | Ordering, visibility policy, input blocking | Individual component presentation |
67
- | Screen | One primary player task and its navigation boundary | Unrelated global services |
68
- | Region | A stable information or action responsibility | Whole-screen lifecycle |
69
- | Component | Reusable stateful presentation unit | Global navigation policy |
70
- | Control | One direct interaction or value presentation | Hidden cross-screen side effects |
71
-
72
- ## Composition Rules
73
-
74
- - Keep persistent services independent from replaceable screen content.
75
- - Assign explicit ownership for modal blocking and modal content.
76
- - Separate popup stacks, notifications, tooltips, and reward effects when their lifetime, input, sorting, or interruption responsibilities differ.
77
- - Distinguish world-linked UI from screen-space HUD by camera, target, and lifetime ownership, not shared visual tokens.
78
- - Prefer explicit data and state inputs for repeated list cells, slots, tabs, meters, and buttons over implicit global-state access.
79
- - Preserve logical navigation order when visual sorting or animation changes.
80
-
81
- ## Opinionated Guidance
82
-
83
- A shallow tree is not automatically better than a deep tree. Prefer boundaries that make lifetime, input, sorting, and reuse obvious. Undocumented nodes used only to offset animation, scaling, or masking side effects are a fragility signal.
84
-
85
- ## Platform-Specific Guidance
86
-
87
- Map these roles to the target engine without copying the hierarchy literally. See [Unity UI Architecture](unity/architecture.md) for Unity Scene, Canvas, prefab, and runtime mapping.
88
-
89
- ## Unsupported Absolutes
90
-
91
- - Do not require one root Canvas, widget tree, or scene for every game.
92
- - Do not equate folder nesting with runtime ownership.
93
- - Do not assume a prefab, widget, or component boundary is also a navigation boundary.
94
- - Do not infer input blocking or render order from hierarchy position alone.
95
-
96
- ## Verification Contract
97
-
98
- Trace one screen from creation through teardown. Record its creator, sorting layer, input blocker, focus entry and return, what survives screen changes, and modal or transition interruption behavior.
99
-
100
- ## Source, License, And Attribution
101
-
102
- This page synthesizes recurring hierarchy responsibilities observed across game UI implementations without reproducing any project-specific object tree.
103
-
104
- ## IA Navigation
105
-
106
- Parent: [Game UI](index.md).
107
- Next: [Game UI Reference Record](reference-record.md).