@hegemonart/get-design-done 1.57.1 → 1.57.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.claude-plugin/marketplace.json +26 -41
- package/.claude-plugin/plugin.json +23 -48
- package/CHANGELOG.md +91 -0
- package/README.md +166 -511
- package/SKILL.md +2 -0
- package/agents/README.md +33 -36
- package/agents/a11y-mapper.md +3 -3
- package/agents/component-benchmark-harvester.md +6 -6
- package/agents/component-benchmark-synthesizer.md +3 -3
- package/agents/compose-executor.md +3 -3
- package/agents/cost-forecaster.md +2 -2
- package/agents/design-auditor.md +7 -7
- package/agents/design-authority-watcher.md +15 -15
- package/agents/design-context-builder.md +4 -4
- package/agents/design-context-checker-gate.md +1 -1
- package/agents/design-discussant.md +2 -2
- package/agents/design-doc-writer.md +1 -1
- package/agents/design-executor.md +2 -2
- package/agents/design-figma-writer.md +2 -2
- package/agents/design-fixer.md +7 -7
- package/agents/design-integration-checker-gate.md +1 -1
- package/agents/design-integration-checker.md +1 -1
- package/agents/design-paper-writer.md +3 -3
- package/agents/design-pencil-writer.md +1 -1
- package/agents/design-planner.md +21 -0
- package/agents/design-reflector.md +39 -39
- package/agents/design-research-synthesizer.md +1 -0
- package/agents/design-start-writer.md +1 -1
- package/agents/design-update-checker.md +5 -5
- package/agents/design-verifier-gate.md +1 -1
- package/agents/design-verifier.md +52 -48
- package/agents/ds-generator.md +2 -2
- package/agents/ds-migration-planner.md +4 -4
- package/agents/email-executor.md +9 -9
- package/agents/experiment-result-ingester.md +3 -3
- package/agents/flutter-executor.md +5 -5
- package/agents/gdd-graph-refresh.md +3 -3
- package/agents/gdd-intel-updater.md +2 -2
- package/agents/motion-mapper.md +2 -2
- package/agents/motion-verifier.md +4 -4
- package/agents/pdf-executor.md +8 -8
- package/agents/perf-analyzer.md +17 -17
- package/agents/pr-commenter.md +9 -9
- package/agents/prototype-gate.md +2 -2
- package/agents/quality-gate-runner.md +1 -1
- package/agents/rollout-coordinator.md +3 -3
- package/agents/swift-executor.md +4 -4
- package/agents/ticket-sync-agent.md +6 -6
- package/agents/user-research-synthesizer.md +2 -2
- package/connections/connections.md +44 -45
- package/connections/cursor.md +73 -0
- package/connections/preview.md +3 -3
- package/dist/claude-code/.claude/skills/cache-manager/SKILL.md +3 -3
- package/dist/claude-code/.claude/skills/cache-manager/cache-policy.md +1 -1
- package/dist/claude-code/.claude/skills/design/SKILL.md +19 -0
- package/dist/claude-code/.claude/skills/explore/SKILL.md +11 -0
- package/dist/claude-code/.claude/skills/figma-write/SKILL.md +13 -2
- package/dist/claude-code/.claude/skills/paper-write/SKILL.md +54 -0
- package/dist/claude-code/.claude/skills/pencil-write/SKILL.md +54 -0
- package/dist/claude-code/.claude/skills/report-issue/SKILL.md +2 -2
- package/dist/claude-code/.claude/skills/router/SKILL.md +2 -2
- package/dist/claude-code/.claude/skills/verify/verify-procedure.md +10 -11
- package/dist/claude-code/.claude/skills/warm-cache/SKILL.md +1 -1
- package/hooks/first-run-nudge.cjs +171 -0
- package/hooks/gdd-intel-trigger.js +243 -0
- package/hooks/gdd-mcp-circuit-breaker.js +62 -7
- package/hooks/gdd-precompact-snapshot.js +50 -29
- package/hooks/gdd-protected-paths.js +150 -18
- package/hooks/gdd-risk-gate.js +93 -1
- package/hooks/gdd-sessionstart-recap.js +59 -24
- package/hooks/hooks.json +13 -4
- package/hooks/inject-using-gdd.cjs +188 -0
- package/hooks/update-check.cjs +511 -0
- package/package.json +9 -2
- package/reference/STATE-TEMPLATE.md +10 -13
- package/reference/audit-scoring.md +1 -1
- package/reference/cache-tier-doctrine.md +46 -0
- package/reference/config-schema.md +9 -9
- package/reference/i18n.md +1 -1
- package/reference/intel-schema.md +37 -2
- package/reference/meta-rules.md +4 -4
- package/reference/model-tiers.md +2 -2
- package/reference/registry.json +101 -94
- package/reference/runtime-models.md +11 -1
- package/reference/shared-preamble.md +13 -14
- package/reference/skill-graph.md +24 -1
- package/scripts/bootstrap.cjs +373 -0
- package/scripts/injection-patterns.cjs +58 -0
- package/scripts/lib/apply-reflections/incubator-proposals.cjs +57 -26
- package/scripts/lib/install/converters/codex-plugin.cjs +5 -2
- package/scripts/lib/install/converters/cursor.cjs +20 -0
- package/scripts/lib/issue-reporter/report-flow.cjs +1 -1
- package/scripts/lib/manifest/skills.json +80 -13
- package/scripts/lib/state/query-surface.cjs +67 -9
- package/scripts/lib/state/state-store.cjs +68 -26
- package/sdk/cli/commands/stage.ts +17 -0
- package/sdk/cli/index.js +14 -0
- package/skills/cache-manager/SKILL.md +3 -3
- package/skills/cache-manager/cache-policy.md +1 -1
- package/skills/design/SKILL.md +19 -0
- package/skills/explore/SKILL.md +11 -0
- package/skills/figma-write/SKILL.md +13 -2
- package/skills/paper-write/SKILL.md +54 -0
- package/skills/pencil-write/SKILL.md +54 -0
- package/skills/report-issue/SKILL.md +2 -2
- package/skills/router/SKILL.md +2 -2
- package/skills/verify/verify-procedure.md +10 -11
- package/skills/warm-cache/SKILL.md +1 -1
- package/hooks/first-run-nudge.sh +0 -82
- package/hooks/inject-using-gdd.sh +0 -72
- package/hooks/update-check.sh +0 -251
- package/scripts/lib/audit-aggregator/index.cjs +0 -219
- package/scripts/lib/hedge-ensemble.cjs +0 -217
package/reference/registry.json
CHANGED
|
@@ -8,21 +8,21 @@
|
|
|
8
8
|
"path": "reference/codex-tools.md",
|
|
9
9
|
"type": "meta-rules",
|
|
10
10
|
"phase": 21,
|
|
11
|
-
"description": "
|
|
11
|
+
"description": "Cross-harness tool map — Claude Code → OpenAI Codex CLI tool-name equivalents for the gdd-sdk runner (Read→read_file, Write/Edit→apply_patch, Bash→shell, etc.)"
|
|
12
12
|
},
|
|
13
13
|
{
|
|
14
14
|
"name": "gemini-tools",
|
|
15
15
|
"path": "reference/gemini-tools.md",
|
|
16
16
|
"type": "meta-rules",
|
|
17
17
|
"phase": 21,
|
|
18
|
-
"description": "
|
|
18
|
+
"description": "Cross-harness tool map — Claude Code → Gemini CLI tool-name equivalents for the gdd-sdk runner"
|
|
19
19
|
},
|
|
20
20
|
{
|
|
21
21
|
"name": "error-recovery",
|
|
22
22
|
"path": "reference/error-recovery.md",
|
|
23
23
|
"type": "meta-rules",
|
|
24
24
|
"phase": 20,
|
|
25
|
-
"description": "
|
|
25
|
+
"description": "Resilience recovery protocol — rate-limit + 429 + context-overflow retry guidance for the SDK runner (jittered-backoff / rate-guard / error-classifier / iteration-budget integration)"
|
|
26
26
|
},
|
|
27
27
|
{
|
|
28
28
|
"name": "component-authoring",
|
|
@@ -50,14 +50,14 @@
|
|
|
50
50
|
"path": "reference/peer-protocols.md",
|
|
51
51
|
"type": "meta-rules",
|
|
52
52
|
"phase": 27,
|
|
53
|
-
"description": "
|
|
53
|
+
"description": "ACP + ASP protocol cheat sheet for peer-CLI delegation — line-delimited JSON-RPC framing, initialize/prompt/threadStart/turn lifecycle, per-peer ACP entry points, error-path resolution semantics"
|
|
54
54
|
},
|
|
55
55
|
{
|
|
56
56
|
"name": "pseudonymization-rules",
|
|
57
57
|
"path": "reference/pseudonymization-rules.md",
|
|
58
58
|
"type": "meta-rules",
|
|
59
59
|
"phase": 30,
|
|
60
|
-
"description": "
|
|
60
|
+
"description": "Pseudonymization rule catalog (R1..R8) — replaces git identity, paths, hostname, repo origin, env-var values, email, IPs; defines stable per-user pseudonym derivation. Consumed by /gdd:update --show-privacy-diff."
|
|
61
61
|
},
|
|
62
62
|
{
|
|
63
63
|
"name": "DEPRECATIONS",
|
|
@@ -107,7 +107,7 @@
|
|
|
107
107
|
"path": "reference/bandit-integration.md",
|
|
108
108
|
"type": "meta-rules",
|
|
109
109
|
"phase": 27.5,
|
|
110
|
-
"description": "
|
|
110
|
+
"description": "Bandit production-integration cheat sheet — consultBandit + recordOutcome shim signatures, adaptive_mode gate semantics, reward function, posterior path .design/telemetry/posterior.json, call-site map (budget-enforcer + session-runner + design-reflector Section 8)"
|
|
111
111
|
},
|
|
112
112
|
{
|
|
113
113
|
"name": "brand-voice",
|
|
@@ -115,6 +115,13 @@
|
|
|
115
115
|
"type": "heuristic",
|
|
116
116
|
"description": "Voice axes, archetypes, tone-by-context, industry-context palettes"
|
|
117
117
|
},
|
|
118
|
+
{
|
|
119
|
+
"name": "cache-tier-doctrine",
|
|
120
|
+
"path": "reference/cache-tier-doctrine.md",
|
|
121
|
+
"type": "meta-rules",
|
|
122
|
+
"tier": "L3",
|
|
123
|
+
"description": "Cache-tier doctrine - L0/L1/L2/L3 lifetime tiers for prompt-cache stability, the L0 contract (two files, byte-stable, CI gate), placement rules, verification commands, and the ratchet protocol for legitimate L0 edits."
|
|
124
|
+
},
|
|
118
125
|
{
|
|
119
126
|
"name": "checklists",
|
|
120
127
|
"path": "reference/checklists.md",
|
|
@@ -475,7 +482,7 @@
|
|
|
475
482
|
"name": "insight-line.schema",
|
|
476
483
|
"path": "reference/schemas/insight-line.schema.json",
|
|
477
484
|
"type": "schema",
|
|
478
|
-
"tier": "
|
|
485
|
+
"tier": "L2",
|
|
479
486
|
"description": "JSONL schema for agent run-end insight lines written to .design/intel/insights.jsonl"
|
|
480
487
|
},
|
|
481
488
|
{
|
|
@@ -495,7 +502,7 @@
|
|
|
495
502
|
"path": "reference/schemas/mcp-gdd-tools.schema.json",
|
|
496
503
|
"type": "schema",
|
|
497
504
|
"phase": 27.7,
|
|
498
|
-
"description": "
|
|
505
|
+
"description": "Draft-07 input/output schemas for the 12 read-only tools in scripts/mcp-servers/gdd-mcp/ (gdd-mcp MCP server)"
|
|
499
506
|
},
|
|
500
507
|
{
|
|
501
508
|
"name": "meta-rules",
|
|
@@ -509,105 +516,105 @@
|
|
|
509
516
|
"path": "reference/model-prices.md",
|
|
510
517
|
"type": "data",
|
|
511
518
|
"phase": 26,
|
|
512
|
-
"description": "
|
|
519
|
+
"description": "Router — links to per-runtime price sub-tables under reference/prices/<runtime>.md (claude/codex/gemini/qwen canonical, 10 stubs); read by scripts/lib/budget-enforcer.cjs"
|
|
513
520
|
},
|
|
514
521
|
{
|
|
515
522
|
"name": "prices-claude",
|
|
516
523
|
"path": "reference/prices/claude.md",
|
|
517
524
|
"type": "data",
|
|
518
525
|
"phase": 26,
|
|
519
|
-
"description": "
|
|
526
|
+
"description": "Sub-table — Anthropic Claude Code pricing (canonical Anthropic table preserved from v1.25 model-prices.md; haiku/sonnet/opus rows + size_budget token ranges)"
|
|
520
527
|
},
|
|
521
528
|
{
|
|
522
529
|
"name": "prices-codex",
|
|
523
530
|
"path": "reference/prices/codex.md",
|
|
524
531
|
"type": "data",
|
|
525
532
|
"phase": 26,
|
|
526
|
-
"description": "
|
|
533
|
+
"description": "Sub-table — OpenAI Codex CLI pricing (gpt-5/gpt-5-mini/gpt-5-nano seed; provenance <TODO> at https://openai.com/api/pricing/)"
|
|
527
534
|
},
|
|
528
535
|
{
|
|
529
536
|
"name": "prices-gemini",
|
|
530
537
|
"path": "reference/prices/gemini.md",
|
|
531
538
|
"type": "data",
|
|
532
539
|
"phase": 26,
|
|
533
|
-
"description": "
|
|
540
|
+
"description": "Sub-table — Google Gemini CLI pricing (gemini-2.5-pro/flash/flash-lite seed; provenance <TODO> at https://ai.google.dev/pricing)"
|
|
534
541
|
},
|
|
535
542
|
{
|
|
536
543
|
"name": "prices-qwen",
|
|
537
544
|
"path": "reference/prices/qwen.md",
|
|
538
545
|
"type": "data",
|
|
539
546
|
"phase": 26,
|
|
540
|
-
"description": "
|
|
547
|
+
"description": "Sub-table — Alibaba Qwen CLI pricing (qwen3-max/plus/flash seed; provenance <TODO> at https://www.alibabacloud.com/help/en/model-studio/billing-for-models)"
|
|
541
548
|
},
|
|
542
549
|
{
|
|
543
550
|
"name": "prices-kilo",
|
|
544
551
|
"path": "reference/prices/kilo.md",
|
|
545
552
|
"type": "data",
|
|
546
553
|
"phase": 26,
|
|
547
|
-
"description": "
|
|
554
|
+
"description": "Sub-table — Kilo Code pricing (stub; runtime adapter authors fill with provenance citation in a later cycle)"
|
|
548
555
|
},
|
|
549
556
|
{
|
|
550
557
|
"name": "prices-copilot",
|
|
551
558
|
"path": "reference/prices/copilot.md",
|
|
552
559
|
"type": "data",
|
|
553
560
|
"phase": 26,
|
|
554
|
-
"description": "
|
|
561
|
+
"description": "Sub-table — GitHub Copilot CLI pricing (stub; runtime adapter authors fill with provenance citation in a later cycle)"
|
|
555
562
|
},
|
|
556
563
|
{
|
|
557
564
|
"name": "prices-cursor",
|
|
558
565
|
"path": "reference/prices/cursor.md",
|
|
559
566
|
"type": "data",
|
|
560
567
|
"phase": 26,
|
|
561
|
-
"description": "
|
|
568
|
+
"description": "Sub-table — Cursor pricing (stub; runtime adapter authors fill with provenance citation in a later cycle)"
|
|
562
569
|
},
|
|
563
570
|
{
|
|
564
571
|
"name": "prices-windsurf",
|
|
565
572
|
"path": "reference/prices/windsurf.md",
|
|
566
573
|
"type": "data",
|
|
567
574
|
"phase": 26,
|
|
568
|
-
"description": "
|
|
575
|
+
"description": "Sub-table — Windsurf pricing (stub; runtime adapter authors fill with provenance citation in a later cycle)"
|
|
569
576
|
},
|
|
570
577
|
{
|
|
571
578
|
"name": "prices-antigravity",
|
|
572
579
|
"path": "reference/prices/antigravity.md",
|
|
573
580
|
"type": "data",
|
|
574
581
|
"phase": 26,
|
|
575
|
-
"description": "
|
|
582
|
+
"description": "Sub-table — Antigravity pricing (stub; runtime adapter authors fill with provenance citation in a later cycle)"
|
|
576
583
|
},
|
|
577
584
|
{
|
|
578
585
|
"name": "prices-augment",
|
|
579
586
|
"path": "reference/prices/augment.md",
|
|
580
587
|
"type": "data",
|
|
581
588
|
"phase": 26,
|
|
582
|
-
"description": "
|
|
589
|
+
"description": "Sub-table — Augment Code pricing (stub; runtime adapter authors fill with provenance citation in a later cycle)"
|
|
583
590
|
},
|
|
584
591
|
{
|
|
585
592
|
"name": "prices-trae",
|
|
586
593
|
"path": "reference/prices/trae.md",
|
|
587
594
|
"type": "data",
|
|
588
595
|
"phase": 26,
|
|
589
|
-
"description": "
|
|
596
|
+
"description": "Sub-table — Trae pricing (stub; possibly single_tier runtime; runtime adapter authors fill with provenance citation in a later cycle)"
|
|
590
597
|
},
|
|
591
598
|
{
|
|
592
599
|
"name": "prices-codebuddy",
|
|
593
600
|
"path": "reference/prices/codebuddy.md",
|
|
594
601
|
"type": "data",
|
|
595
602
|
"phase": 26,
|
|
596
|
-
"description": "
|
|
603
|
+
"description": "Sub-table — Tencent CodeBuddy pricing (stub; runtime adapter authors fill with provenance citation in a later cycle)"
|
|
597
604
|
},
|
|
598
605
|
{
|
|
599
606
|
"name": "prices-cline",
|
|
600
607
|
"path": "reference/prices/cline.md",
|
|
601
608
|
"type": "data",
|
|
602
609
|
"phase": 26,
|
|
603
|
-
"description": "
|
|
610
|
+
"description": "Sub-table — Cline pricing (stub; BYO-API-key runtime, default model pricing only)"
|
|
604
611
|
},
|
|
605
612
|
{
|
|
606
613
|
"name": "prices-opencode",
|
|
607
614
|
"path": "reference/prices/opencode.md",
|
|
608
615
|
"type": "data",
|
|
609
616
|
"phase": 26,
|
|
610
|
-
"description": "
|
|
617
|
+
"description": "Sub-table — OpenCode pricing (stub; BYO-API-key runtime, default model pricing only)"
|
|
611
618
|
},
|
|
612
619
|
{
|
|
613
620
|
"name": "model-tiers",
|
|
@@ -620,13 +627,13 @@
|
|
|
620
627
|
"path": "reference/runtime-models.md",
|
|
621
628
|
"type": "data",
|
|
622
629
|
"phase": 26,
|
|
623
|
-
"description": "
|
|
630
|
+
"description": "Per-runtime tier→model adapter source-of-truth — 14 runtimes (claude/codex/gemini/qwen/kilo/copilot/cursor/windsurf/antigravity/augment/trae/codebuddy/cline/opencode), each row carries opus|sonnet|haiku tier map, high|medium|low reasoning-class alias, and provenance (URL + retrieval timestamp + last-validated cycle); validated against reference/schemas/runtime-models.schema.json"
|
|
624
631
|
},
|
|
625
632
|
{
|
|
626
633
|
"name": "motion",
|
|
627
634
|
"path": "reference/motion.md",
|
|
628
635
|
"type": "domain-index",
|
|
629
|
-
"description": "
|
|
636
|
+
"description": "Domain-index: motion navigation - indexes easings, spring, transition-taxonomy, interpolate, advanced, framer-motion-patterns.",
|
|
630
637
|
"phase": 45
|
|
631
638
|
},
|
|
632
639
|
{
|
|
@@ -700,14 +707,14 @@
|
|
|
700
707
|
"path": "reference/peer-cli-capabilities.md",
|
|
701
708
|
"type": "meta-rules",
|
|
702
709
|
"phase": 27,
|
|
703
|
-
"description": "
|
|
710
|
+
"description": "Peer-CLI delegation capability matrix — which peer (codex/copilot/cursor/gemini/qwen) claims which agent role, protocol (ACP/ASP), tie-break order, and opt-in gating semantics"
|
|
704
711
|
},
|
|
705
712
|
{
|
|
706
713
|
"name": "perf-budget",
|
|
707
714
|
"path": "reference/perf-budget.md",
|
|
708
715
|
"type": "meta-rules",
|
|
709
716
|
"phase": 27.6,
|
|
710
|
-
"description": "
|
|
717
|
+
"description": "Per-agent token-cost budget reference and CI regression-gate documentation; budgets sourced from current p50 + 25% buffer, CI gate fails on >25% regression vs baseline across 3 cycles; thresholds configurable via .design/budget.json"
|
|
711
718
|
},
|
|
712
719
|
{
|
|
713
720
|
"name": "performance",
|
|
@@ -775,7 +782,7 @@
|
|
|
775
782
|
"name": "start-interview",
|
|
776
783
|
"path": "reference/start-interview.md",
|
|
777
784
|
"type": "preamble",
|
|
778
|
-
"description": "Locked 5-question interview consumed by /gdd:start
|
|
785
|
+
"description": "Locked 5-question interview consumed by /gdd:start — pain, target-area, budget, framework/DS confirmation, Figma/canvas workflow"
|
|
779
786
|
},
|
|
780
787
|
{
|
|
781
788
|
"name": "style-vocabulary",
|
|
@@ -799,7 +806,7 @@
|
|
|
799
806
|
"name": "typography",
|
|
800
807
|
"path": "reference/typography.md",
|
|
801
808
|
"type": "domain-index",
|
|
802
|
-
"description": "
|
|
809
|
+
"description": "Domain-index: typography navigation - indexes type-scale heuristics, variable-fonts-loading, proportion-systems.",
|
|
803
810
|
"phase": 45
|
|
804
811
|
},
|
|
805
812
|
{
|
|
@@ -847,329 +854,329 @@
|
|
|
847
854
|
"path": "reference/skill-authoring-contract.md",
|
|
848
855
|
"type": "meta-rules",
|
|
849
856
|
"phase": 28.5,
|
|
850
|
-
"description": "
|
|
857
|
+
"description": "Skill-authoring contract — adapted from mattpocock/skills (MIT). SKILL.md <=100-line cap (warn >=100, block >=250 in CI), 1024-char description cap, <what>. Use when <triggers>. form (lax-mode default), frontmatter required fields, progressive-disclosure one-level-deep rule. Validator at scripts/validate-skill-length.cjs."
|
|
851
858
|
},
|
|
852
859
|
{
|
|
853
860
|
"name": "skill-metadata",
|
|
854
861
|
"path": "reference/skill-metadata.md",
|
|
855
862
|
"type": "meta-rules",
|
|
856
863
|
"phase": 46,
|
|
857
|
-
"description": "
|
|
864
|
+
"description": "Skill-metadata single source of truth: scripts/lib/manifest/skills.json record shape, the generate-skill-frontmatter.cjs forward/extract/check modes, the skills.json to generator to build:skills to skills/+dist build chain, the six managed frontmatter keys (canonical order, always-quoted strings) vs extra_frontmatter passthrough, the 20..1024 description budget (validate-skill-length.cjs + lint-agentskills-spec.cjs R4, lint:agentskills CI gate), and the pin metadata catalogue consumer."
|
|
858
865
|
},
|
|
859
866
|
{
|
|
860
867
|
"name": "live-mode-integration",
|
|
861
868
|
"path": "reference/live-mode-integration.md",
|
|
862
869
|
"type": "meta-rules",
|
|
863
870
|
"phase": 47,
|
|
864
|
-
"description": "
|
|
871
|
+
"description": "Live-mode contract for /gdd:live: the seven-stage pick to generate to accept loop, the Claude Preview MCP surface (preview_eval injects scripts/lib/live/runtime.cjs RUNTIME_JS, hot-swap via the data-gdd-variant marker), the six live_* telemetry events vs the four on-disk session kinds, the .design/live-sessions session file (scripts/lib/live/session-store.cjs + live-session.schema.json), the dev-time bandit feed (bandit-feed.cjs into design-variants), degraded screenshot-only mode gated on capability_matrix.mcp_support (harness-mode.cjs), and the scope guard (scope-guard.cjs)."
|
|
865
872
|
},
|
|
866
873
|
{
|
|
867
874
|
"name": "capability-gap-stage-gate",
|
|
868
875
|
"path": "reference/capability-gap-stage-gate.md",
|
|
869
876
|
"type": "meta-rules",
|
|
870
877
|
"phase": 29,
|
|
871
|
-
"description": "
|
|
878
|
+
"description": "Stage-0 → Stage-1 capability-gap gate specification. Defaults K=3 stable clusters across M=10 cycles with closed-form posterior stddev(Beta(α,β)) < 0.05 (Laplace prior matches bandit reward function). Locked behavior: gate emits a one-time user-facing prompt on crossing — NEVER an auto-stage-flip. Overridable via .design/config.json capability_gap_gate.{K,M,stddev_threshold}. Test fixtures at tests/reflector-capability-gap-aggregation.test.cjs."
|
|
872
879
|
},
|
|
873
880
|
{
|
|
874
881
|
"name": "known-failure-modes",
|
|
875
882
|
"path": "reference/known-failure-modes.md",
|
|
876
883
|
"type": "meta-rules",
|
|
877
884
|
"phase": 30,
|
|
878
|
-
"description": "
|
|
885
|
+
"description": "Triage gate catalogue — locally-fixable failure modes (id/pattern/diagnosis/remedy/severity, with optional propose_report whitelist flag) consulted by scripts/lib/issue-reporter/triage-matcher.cjs before the report-issue consent prompt."
|
|
879
886
|
},
|
|
880
887
|
{
|
|
881
888
|
"name": "gdd-threat-model",
|
|
882
889
|
"path": "reference/gdd-threat-model.md",
|
|
883
890
|
"type": "heuristic",
|
|
884
891
|
"phase": 33.5,
|
|
885
|
-
"description": "
|
|
892
|
+
"description": "STRIDE threat model of GDD's own runtime attack surface — hooks, the gdd-state + gdd-mcp MCP servers, the peer-CLI broker, the WebSocket event-stream transport, and issue-reporter outbound; maps each residual risk to the plan that closes it."
|
|
886
893
|
},
|
|
887
894
|
{
|
|
888
895
|
"name": "gdd-runtime-audit",
|
|
889
896
|
"path": "reference/gdd-runtime-audit.md",
|
|
890
897
|
"type": "heuristic",
|
|
891
898
|
"phase": 33.5,
|
|
892
|
-
"description": "
|
|
899
|
+
"description": "Static security audit of GDD's shipped runtime surface (hooks/scripts/sdk/bin) — outbound-network call sites, secret-handling sites, and external-input surfaces; human-readable companion to scripts/security/outbound-allowlist.json (the canonical active-egress allowlist the scan-outbound-network.cjs gate consumes) and reference/gdd-threat-model.md."
|
|
893
900
|
},
|
|
894
901
|
{
|
|
895
902
|
"name": "openrouter-tier-mapping",
|
|
896
903
|
"path": "reference/openrouter-tier-mapping.md",
|
|
897
904
|
"type": "heuristic",
|
|
898
905
|
"phase": 33.6,
|
|
899
|
-
"description": "
|
|
906
|
+
"description": "OpenRouter tier-mapping heuristic — maps GDD opus/sonnet/haiku onto OpenRouter catalog ids via closed-vs-open + pricing buckets (high/medium/low), with the .design/config.json#openrouter_tier_overrides escape hatch (override wins) and graceful-null → native fallback."
|
|
900
907
|
},
|
|
901
908
|
{
|
|
902
909
|
"name": "prices-openrouter",
|
|
903
910
|
"path": "reference/prices.openrouter.md",
|
|
904
911
|
"type": "data",
|
|
905
912
|
"phase": 33.6,
|
|
906
|
-
"description": "
|
|
913
|
+
"description": "Catalog-derived OpenRouter price sub-table — per-model prompt/completion $/tok snapshot of .design/cache/openrouter-models.json; derived view, the dynamic catalog is the source of truth (registry round-trip)."
|
|
907
914
|
},
|
|
908
915
|
{
|
|
909
916
|
"name": "native-platforms",
|
|
910
917
|
"path": "reference/native-platforms.md",
|
|
911
918
|
"type": "heuristic",
|
|
912
919
|
"phase": 34.1,
|
|
913
|
-
"description": "
|
|
920
|
+
"description": "Token-bridge spec — maps the canonical CSS-token form to SwiftUI Color/Font/ViewModifier, Jetpack Compose Color/Shapes/Typography/MaterialTheme, and Flutter ThemeData/ColorScheme/TextTheme, with the precision contract (color hex→8-bit channels exact, dimension px→pt/dp/logical px) defining token-identity for the round-trip."
|
|
914
921
|
},
|
|
915
922
|
{
|
|
916
923
|
"name": "email-design",
|
|
917
924
|
"path": "reference/email-design.md",
|
|
918
925
|
"type": "heuristic",
|
|
919
926
|
"phase": 34.2,
|
|
920
|
-
"description": "
|
|
927
|
+
"description": "Email-constraint catalogue — table-based layout (not flexbox/grid/position), inline styles (not a <style> block), MSO conditional comments for Outlook, dark-mode color-scheme/prefers-color-scheme handling, ~600px max-width, image/alt rules, and top-20-client quirks; the authority the email-executor generates against and the design-verifier email branch audits against, and the rule-id source for scripts/lib/email/validate-email-html.cjs."
|
|
921
928
|
},
|
|
922
929
|
{
|
|
923
930
|
"name": "print-design",
|
|
924
931
|
"path": "reference/print-design.md",
|
|
925
932
|
"type": "heuristic",
|
|
926
933
|
"phase": 34.3,
|
|
927
|
-
"description": "
|
|
934
|
+
"description": "Print-constraint catalogue — @page size/margin/marks (the print box model), bleed box + crop/registration marks, CMYK color-space awareness (subtractive, not screen RGB), font embedding/outlining (print RIPs have no web fonts), and 300dpi raster-fallback guidance; the authority the pdf-executor generates against and the design-verifier print branch audits against, and the rule-id source for scripts/lib/print/validate-print-css.cjs."
|
|
928
935
|
},
|
|
929
936
|
{
|
|
930
937
|
"name": "pr-review-integration",
|
|
931
938
|
"path": "reference/pr-review-integration.md",
|
|
932
939
|
"type": "heuristic",
|
|
933
940
|
"phase": 35.1,
|
|
934
|
-
"description": "
|
|
941
|
+
"description": "PR-inline contract — the gh-CLI shapes agents/pr-commenter.md posts against: inline review comments (gh api pulls/{n}/comments with path+line), the summary review (event=COMMENT), the gdd/design-review check-run (gh api check-runs with name/head_sha/conclusion/output.summary carrying audit pillar scores + verify pass/fail + a11y result), Preview/Chromatic screenshot-pair attachment (degrade-to-text), mandatory scripts/lib/redact.cjs on every outbound body, the GDD_DISABLE_PR_COMMENTER kill-switch, and the consent-driven branch-protection setup (scripts/apply-branch-protection.sh; GDD registers the check, never force-edits protection)."
|
|
935
942
|
},
|
|
936
943
|
{
|
|
937
944
|
"name": "notification-routing",
|
|
938
945
|
"path": "reference/notification-routing.md",
|
|
939
946
|
"type": "heuristic",
|
|
940
947
|
"phase": 35.2,
|
|
941
|
-
"description": "
|
|
948
|
+
"description": "Notification-backplane routing contract — event→channel routing (verify_fail/audit_pass/ship → slack/discord, overridable via .design/config.json#notifications.routing), the mandatory scripts/lib/redact.cjs chokepoint on every outbound body, per-channel kill-switches (GDD_DISABLE_SLACK/GDD_DISABLE_DISCORD), and the injectable-fetchImpl + degrade-to-noop transport consumed by scripts/lib/notify/dispatch.cjs (allowlisted under the outbound gate)."
|
|
942
949
|
},
|
|
943
950
|
{
|
|
944
951
|
"name": "ticket-sync",
|
|
945
952
|
"path": "reference/ticket-sync.md",
|
|
946
953
|
"type": "heuristic",
|
|
947
954
|
"phase": 35.3,
|
|
948
|
-
"description": "
|
|
955
|
+
"description": "Ticket-sync contract — the STATE <ticket_links> cycle→ticket map, the bidirectional read (decision-injector surfaces linked-ticket comments on .design open) + write (transition + redacted summary on cycle completion) flow via MCP tools (mcp__linear__* / mcp__atlassian__*; no SDK, no raw HTTP), the default status-transition map, tracker-wins conflict resolution, the mandatory scripts/lib/redact.cjs chokepoint, and the GDD_DISABLE_LINEAR/GDD_DISABLE_JIRA kill-switches. Consumed by agents/ticket-sync-agent.md."
|
|
949
956
|
},
|
|
950
957
|
{
|
|
951
958
|
"name": "export-formats",
|
|
952
959
|
"path": "reference/export-formats.md",
|
|
953
960
|
"type": "heuristic",
|
|
954
961
|
"phase": 35.5,
|
|
955
|
-
"description": "
|
|
962
|
+
"description": "/gdd:export contract — the source set (EXPERIENCE.md + DESIGN.md + DESIGN-VERIFICATION.md + decisions + screenshots), the three formats (self-contained HTML via scripts/lib/export/build-html.cjs, Paged.js-compatible print PDF rendered by the user, Notion page via the Notion MCP), mandatory scripts/lib/redact.cjs + the --pseudonymize opt-in (scripts/lib/pseudonymize.cjs), and the --pr hand-off to pr-commenter. No bundled PDF/markdown runtime."
|
|
956
963
|
},
|
|
957
964
|
{
|
|
958
965
|
"name": "finance",
|
|
959
966
|
"path": "reference/domains/finance-patterns.md",
|
|
960
967
|
"type": "heuristic",
|
|
961
968
|
"phase": 36.1,
|
|
962
|
-
"description": "
|
|
969
|
+
"description": "Tier-3 domain pack — finance/fintech UI patterns: data-table density (tabular-nums), trading-interface conventions (colorblind-safe gain/loss), regulatory disclosure placement (Reg-T, MiFID II), PCI-DSS PAN masking, number-formatting precision, real-time data states. Carries Detection signals (keywords + deps) + an Audit checklist consumed by design-context-builder Step 0F + design-auditor."
|
|
963
970
|
},
|
|
964
971
|
{
|
|
965
972
|
"name": "healthcare",
|
|
966
973
|
"path": "reference/domains/healthcare-patterns.md",
|
|
967
974
|
"type": "heuristic",
|
|
968
975
|
"phase": 36.1,
|
|
969
|
-
"description": "
|
|
976
|
+
"description": "Tier-3 domain pack — healthcare/clinical UI patterns: HIPAA-aware PHI isolation (no PHI in URLs/logs/analytics), idle auto-logout, audit-trail-as-UI, MyChart-class flows, WCAG 2.1 AAA, medical-data visualization. Surfaces risk, does not certify compliance. Detection signals + Audit checklist for Step 0F + design-auditor."
|
|
970
977
|
},
|
|
971
978
|
{
|
|
972
979
|
"name": "gaming",
|
|
973
980
|
"path": "reference/domains/gaming-patterns.md",
|
|
974
981
|
"type": "heuristic",
|
|
975
982
|
"phase": 36.1,
|
|
976
|
-
"description": "
|
|
983
|
+
"description": "Tier-3 domain pack — game UI/HUD patterns: diegetic/non-diegetic/spatial/meta HUD taxonomy, vestibular + photosensitive safety (3 flashes/sec, reduced-motion + in-game toggles), ESRB/PEGI age-gates, input-model adaptation (controller/touch/KBM), TV-safe area. Detection signals + Audit checklist for Step 0F + design-auditor."
|
|
977
984
|
},
|
|
978
985
|
{
|
|
979
986
|
"name": "civic",
|
|
980
987
|
"path": "reference/domains/civic-patterns.md",
|
|
981
988
|
"type": "heuristic",
|
|
982
989
|
"phase": 36.1,
|
|
983
|
-
"description": "
|
|
990
|
+
"description": "Tier-3 domain pack — civic/government UI patterns: Section 508 + WCAG 2.1 AA hard floor, multi-language gov forms (EN/ES/zh-Hans), Plain Writing Act (grade 6-8), USWDS, session-timeout warnings, one-thing-per-page forms. Detection signals + Audit checklist for Step 0F + design-auditor."
|
|
984
991
|
},
|
|
985
992
|
{
|
|
986
993
|
"name": "conversational-ui",
|
|
987
994
|
"path": "reference/conversational-ui.md",
|
|
988
995
|
"type": "heuristic",
|
|
989
996
|
"phase": 36.3,
|
|
990
|
-
"description": "
|
|
997
|
+
"description": "Tier-3 conversational-UI patterns (voice + chatbot): voice-flow no-input/no-match reprompts + confirmation + human handoff, multi-turn dialogue (context carryover, slot-filling, repair), prompt-as-UX (the assistant persona/tone/boundaries as a versioned design artifact), chatbot empty-states + suggested replies, voice-first onboarding, error recovery + accessibility (transcripts/captions). Carries Detection signals + an Audit checklist; loaded by design-context-builder for the conversational project type. CLI/REPL UX out of scope."
|
|
991
998
|
},
|
|
992
999
|
{
|
|
993
1000
|
"name": "ds-bootstrap-rubric",
|
|
994
1001
|
"path": "reference/ds-bootstrap-rubric.md",
|
|
995
1002
|
"type": "heuristic",
|
|
996
1003
|
"phase": 37.2,
|
|
997
|
-
"description": "
|
|
1004
|
+
"description": "Greenfield DS emission rules for /gdd:bootstrap-ds + agents/ds-generator.md: primary→9 OKLCH tints (native oklch(), no color library), never >2 brand colors, neutrals + semantic colors, modular type scale (ratio 1.2/1.25/1.333), 4pt/8pt spacing, radius + motion defaults, the 3 variants (conservative/balanced/bold), role-named CSS-custom-property emission + framework mapping, and button/input/card proof scaffolding. Deterministic math in scripts/lib/ds/token-scale.cjs."
|
|
998
1005
|
},
|
|
999
1006
|
{
|
|
1000
1007
|
"name": "design-variants",
|
|
1001
1008
|
"path": "reference/design-variants.md",
|
|
1002
1009
|
"type": "heuristic",
|
|
1003
1010
|
"phase": 38,
|
|
1004
|
-
"description": "
|
|
1011
|
+
"description": "Design-variants schema + the design_arms outcome loop: /gdd:design --variants N emits N hypothesis-tagged competing variants (<variant id component pattern hypothesis>); each (component_type, variant_pattern_hash) is a Beta(2,8) arm in scripts/lib/ds-arms/design-arms-store.cjs that learns which patterns win with USERS from A/B (experiment-result-ingester) + user-research (user-research-synthesizer) outcomes. Advisory not directive (the user always wins). Distinct from the routing bandit."
|
|
1005
1012
|
},
|
|
1006
1013
|
{
|
|
1007
1014
|
"name": "rollout-coordination",
|
|
1008
1015
|
"path": "reference/rollout-coordination.md",
|
|
1009
1016
|
"type": "heuristic",
|
|
1010
1017
|
"phase": 38.5,
|
|
1011
|
-
"description": "
|
|
1018
|
+
"description": "Rollout-coordination contract: the <rollout_status> STATE block (unrolled/staging-only/canary-N%/prod-100%), stuck detection (default 14 days), linear deployed_pct weighting feeding design_arms via verify_outcome (a 10%-rolled variant counts 0.1), and the rollout_started/advanced/stuck/verify_outcome events. Classifier scripts/lib/rollout/rollout-status.cjs; agent agents/rollout-coordinator.md; skill /gdd:rollout-status. Read-only — GDD never drives the rollout."
|
|
1012
1019
|
},
|
|
1013
1020
|
{
|
|
1014
1021
|
"name": "shadcn-v2",
|
|
1015
1022
|
"path": "reference/migrations/shadcn-v2.md",
|
|
1016
1023
|
"type": "heuristic",
|
|
1017
1024
|
"phase": 39.1,
|
|
1018
|
-
"description": "
|
|
1025
|
+
"description": "Migration rule library — shadcn/ui v1→v2 (Tailwind v4 alignment, OKLCH CSS vars, sonner, Radix React-19 refs). Migration-rules table (id/kind/from→to) + Detection + Impact; consumed by agents/ds-migration-planner.md + scripts/lib/migration/codemod-gen.cjs (proposal-only)."
|
|
1019
1026
|
},
|
|
1020
1027
|
{
|
|
1021
1028
|
"name": "tailwind-v4",
|
|
1022
1029
|
"path": "reference/migrations/tailwind-v4.md",
|
|
1023
1030
|
"type": "heuristic",
|
|
1024
1031
|
"phase": 39.1,
|
|
1025
|
-
"description": "
|
|
1032
|
+
"description": "Migration rule library — Tailwind CSS v3→v4 (@import directive, CSS-first @theme, renamed shadow/blur/radius/ring scale, opacity slash syntax, default border color). Rules + Detection + Impact; codemod-gen-consumable."
|
|
1026
1033
|
},
|
|
1027
1034
|
{
|
|
1028
1035
|
"name": "mui-v6",
|
|
1029
1036
|
"path": "reference/migrations/mui-v6.md",
|
|
1030
1037
|
"type": "heuristic",
|
|
1031
1038
|
"phase": 39.1,
|
|
1032
|
-
"description": "
|
|
1039
|
+
"description": "Migration rule library — MUI (Material UI) v5→v6 (Grid2-as-default, cssVariables theme, extendTheme/CssVarsProvider de-prefixing, theme.vars). Rules + Detection + Impact; codemod-gen-consumable."
|
|
1033
1040
|
},
|
|
1034
1041
|
{
|
|
1035
1042
|
"name": "material-3-to-4",
|
|
1036
1043
|
"path": "reference/migrations/material-3-to-4.md",
|
|
1037
1044
|
"type": "heuristic",
|
|
1038
1045
|
"phase": 39.1,
|
|
1039
|
-
"description": "
|
|
1046
|
+
"description": "Migration rule library — Material Design token migration (M3→next), grounded in the real M2→M3 token-system patterns (md.sys.color/typescale roles, @material/web mwc-→md-) — no fabricated M4 spec. Rules + Detection + Impact; codemod-gen-consumable."
|
|
1040
1047
|
},
|
|
1041
1048
|
{
|
|
1042
1049
|
"name": "cost-governance",
|
|
1043
1050
|
"path": "reference/cost-governance.md",
|
|
1044
1051
|
"type": "heuristic",
|
|
1045
1052
|
"phase": 39.2,
|
|
1046
|
-
"description": "
|
|
1053
|
+
"description": "Cost-governance contract: the per-cycle forecast model (best/typical/worst from mean ± k·σ, cyclesToCap) via scripts/lib/budget/cost-forecast.cjs; the project_cap hard-halt (disabled by default, graceful PreToolUse:Agent block, warn 50/80 + halt 100) via scripts/lib/budget/project-cap.cjs + hooks/budget-enforcer.ts; the ROI dashboard (shipped = surviving >=14d, cost-per-shipped-commit) via scripts/lib/budget/roi.cjs; and the budget_forecast/project_cap_warning/project_cap_halt events. Agent agents/cost-forecaster.md; skills /gdd:budget + /gdd:roi. Read/report-only — the hook only blocks, never spends."
|
|
1047
1054
|
},
|
|
1048
1055
|
{
|
|
1049
1056
|
"name": "multi-author-model",
|
|
1050
1057
|
"path": "reference/multi-author-model.md",
|
|
1051
1058
|
"type": "meta-rules",
|
|
1052
1059
|
"phase": 40,
|
|
1053
|
-
"description": "
|
|
1060
|
+
"description": "Team-collaboration contract: multi-writer STATE.md via a git-merge-driver with per-section semantic merge (scripts/lib/collab/section-merge.cjs — union by decision id, conflict only on same-id divergence); decision attribution line-suffix [author= co-author=] (attribution.cjs); the async review queue proposed->reviewing->approved->locked with hard locks + audited /gdd:unlock-decision (review-queue.cjs); the multi-writer advisory-lock policy (lock-policy.cjs, 30s/100ms backoff in team mode); sectional handoff gdd_cycle_mode designer|dev|full (cycle-mode.cjs); the permission model (permissions.cjs) + CI gate; decision-journal-exporter (pseudonymized, write-only Notion) + pr-commenter decision threading; opt-in cross-machine sync (sync-backend.cjs, defaults to git). Agents conflict-resolver + decision-journal-exporter; skills /gdd:review-decisions + /gdd:unlock-decision."
|
|
1054
1061
|
},
|
|
1055
1062
|
{
|
|
1056
1063
|
"name": "cli-localization",
|
|
1057
1064
|
"path": "reference/cli-localization.md",
|
|
1058
1065
|
"type": "meta-rules",
|
|
1059
1066
|
"phase": 40.5,
|
|
1060
|
-
"description": "
|
|
1067
|
+
"description": "CLI-localization contract: locale resolution (config.locale > env LANG > en) + fallback chain locale->base->en + flat-JSON message tables via scripts/lib/i18n/index.cjs; tables at scripts/lib/i18n/messages/{en,ru,uk,de,fr,zh,ja}.json (en source-complete, ru full, 5 placeholders with en fallback); the opt-in description_i18n frontmatter (descriptionFor falls back to English); /gdd:locale skill; warn-only completeness; the add-a-locale contribution path (translate table + NOTICE credit + PR). Distinct from reference/i18n.md (which covers USER-design i18n)."
|
|
1061
1068
|
},
|
|
1062
1069
|
{
|
|
1063
1070
|
"name": "skill-placeholders",
|
|
1064
1071
|
"path": "reference/skill-placeholders.md",
|
|
1065
1072
|
"type": "meta-rules",
|
|
1066
1073
|
"phase": 42,
|
|
1067
|
-
"description": "
|
|
1074
|
+
"description": "Multi-harness skill-placeholder catalogue: the four placeholders ({{command_prefix}}/{{model}}/{{config_file}}/{{ask_instruction}}) + per-harness substitution table + the \\{{...}} escape + the <!-- harness-only: a,b --> block rule. Skills authored once in source/skills/, compiled per-harness by scripts/build-skills.cjs via scripts/lib/build/factory.cjs reading scripts/lib/manifest/harnesses.json."
|
|
1068
1075
|
},
|
|
1069
1076
|
{
|
|
1070
1077
|
"name": "color",
|
|
1071
1078
|
"path": "reference/color.md",
|
|
1072
1079
|
"type": "domain-index",
|
|
1073
1080
|
"phase": 45,
|
|
1074
|
-
"description": "
|
|
1081
|
+
"description": "Domain-index: color + contrast navigation - color-theory, palette-catalog, contrast-advanced, style-vocabulary."
|
|
1075
1082
|
},
|
|
1076
1083
|
{
|
|
1077
1084
|
"name": "spatial",
|
|
1078
1085
|
"path": "reference/spatial.md",
|
|
1079
1086
|
"type": "domain-index",
|
|
1080
1087
|
"phase": 45,
|
|
1081
|
-
"description": "
|
|
1088
|
+
"description": "Domain-index: layout/spacing/composition - composition, proportion-systems, css-grid-layout, visual-hierarchy-layout, gestalt, image-optimization, data-visualization, surfaces."
|
|
1082
1089
|
},
|
|
1083
1090
|
{
|
|
1084
1091
|
"name": "interaction",
|
|
1085
1092
|
"path": "reference/interaction.md",
|
|
1086
1093
|
"type": "domain-index",
|
|
1087
1094
|
"phase": 45,
|
|
1088
|
-
"description": "
|
|
1095
|
+
"description": "Domain-index: interaction + a11y + components - accessibility, component-authoring, form-patterns, information-architecture, onboarding-progressive-disclosure, emotional-design, components/."
|
|
1089
1096
|
},
|
|
1090
1097
|
{
|
|
1091
1098
|
"name": "responsive",
|
|
1092
1099
|
"path": "reference/responsive.md",
|
|
1093
1100
|
"type": "domain-index",
|
|
1094
1101
|
"phase": 45,
|
|
1095
|
-
"description": "
|
|
1102
|
+
"description": "Domain-index: responsive + i18n + platforms - i18n, rtl-cjk-cultural, platforms, native-platforms, performance, css-grid-layout."
|
|
1096
1103
|
},
|
|
1097
1104
|
{
|
|
1098
1105
|
"name": "ux-writing",
|
|
1099
1106
|
"path": "reference/ux-writing.md",
|
|
1100
1107
|
"type": "domain-index",
|
|
1101
1108
|
"phase": 45,
|
|
1102
|
-
"description": "
|
|
1109
|
+
"description": "Domain-index: UX-writing + voice - brand-voice, style-vocabulary, anti-patterns."
|
|
1103
1110
|
},
|
|
1104
1111
|
{
|
|
1105
1112
|
"name": "copy-quality",
|
|
1106
1113
|
"path": "reference/copy-quality.md",
|
|
1107
1114
|
"type": "heuristic",
|
|
1108
1115
|
"phase": 48,
|
|
1109
|
-
"description": "
|
|
1116
|
+
"description": "Copy-quality pillar rubric: microcopy (button/CTA labels, error messages, empty states, ARIA/alt text, loading copy), voice alignment, i18n overflow lens."
|
|
1110
1117
|
},
|
|
1111
1118
|
{
|
|
1112
1119
|
"name": "debt-categories",
|
|
1113
1120
|
"path": "reference/debt-categories.md",
|
|
1114
1121
|
"type": "taxonomy",
|
|
1115
1122
|
"phase": 48,
|
|
1116
|
-
"description": "
|
|
1123
|
+
"description": "Design-debt taxonomy: debt classes (color-literal, untokenized-component, anti-pattern, contrast, density-spacing, typography-drift, a11y-text) + visible-delta x effort x prevalence priority scoring."
|
|
1117
1124
|
},
|
|
1118
1125
|
{
|
|
1119
1126
|
"name": "brief-quality-rubric",
|
|
1120
1127
|
"path": "reference/brief-quality-rubric.md",
|
|
1121
1128
|
"type": "output-contract",
|
|
1122
1129
|
"phase": 48,
|
|
1123
|
-
"description": "
|
|
1130
|
+
"description": "Brief-quality rubric: 5 anti-patterns (vague verbs, missing audience, immeasurable success criteria, scope creep, missing anti-goals) the brief-auditor surfaces."
|
|
1124
1131
|
},
|
|
1125
1132
|
{
|
|
1126
1133
|
"name": "visual-tells",
|
|
1127
1134
|
"path": "reference/visual-tells.md",
|
|
1128
1135
|
"type": "heuristic",
|
|
1129
1136
|
"phase": 49,
|
|
1130
|
-
"description": "
|
|
1137
|
+
"description": "Visual-tells catalog: 8 default-AI-aesthetic categories (default-AI-hero, gradient-spam, isometric-illustration-fallback, centered-everything-syndrome, inter-everything, purple-violet-default, glassmorphism-spam, decorative-motion-without-intent) with diagnostic regex + remediation; backs the gdd-design-quality-check hook."
|
|
1131
1138
|
},
|
|
1132
1139
|
{
|
|
1133
1140
|
"name": "reviewer-confidence-gate",
|
|
1134
1141
|
"path": "reference/reviewer-confidence-gate.md",
|
|
1135
1142
|
"type": "meta-rules",
|
|
1136
1143
|
"phase": 49,
|
|
1137
|
-
"description": "
|
|
1144
|
+
"description": "Reviewer confidence gate: 4-question Pre-Report Gate + confidence 0.0-1.0 field; HIGH/CRITICAL require >=0.8 + cited proof, <0.5 stays Tentative and never reaches design-fixer."
|
|
1138
1145
|
},
|
|
1139
1146
|
{
|
|
1140
1147
|
"name": "anti-slop-rubric",
|
|
1141
1148
|
"path": "reference/anti-slop-rubric.md",
|
|
1142
1149
|
"type": "heuristic",
|
|
1143
1150
|
"phase": 50,
|
|
1144
|
-
"description": "
|
|
1151
|
+
"description": "Verb-based anti-slop rubric: 5 orthogonal axes (Directness, Distinctness, Hierarchy, Authenticity, Density), 1-10 each; sum below 35/50 routes a finding to design-debt-crawler as aesthetic-slop. Lens-tag, not a pillar."
|
|
1145
1152
|
},
|
|
1146
1153
|
{
|
|
1147
1154
|
"name": "skill-graph",
|
|
1148
1155
|
"path": "reference/skill-graph.md",
|
|
1149
1156
|
"type": "meta-rules",
|
|
1150
1157
|
"phase": 50,
|
|
1151
|
-
"description": "
|
|
1158
|
+
"description": "Auto-generated skill composition graph (mermaid): skills grouped by lifecycle stage with composes_with and next_skills edges; regenerated by scripts/generate-skill-graph.cjs and drift-gated in CI."
|
|
1152
1159
|
},
|
|
1153
1160
|
{
|
|
1154
1161
|
"name": "instinct-format",
|
|
1155
1162
|
"path": "reference/instinct-format.md",
|
|
1156
1163
|
"type": "meta-rules",
|
|
1157
1164
|
"phase": 51,
|
|
1158
|
-
"description": "
|
|
1165
|
+
"description": "Instinct unit format: YAML frontmatter (id, trigger, confidence 0.3-0.9, domain, scope, project_id, source, cycles_seen, first/last_seen) + body; promotion gate K=2/M=2; Beta(2,8) prior; TTL decay. Stored via scripts/lib/instinct-store.cjs."
|
|
1159
1166
|
},
|
|
1160
1167
|
{
|
|
1161
1168
|
"name": "design-context-schema",
|
|
1162
1169
|
"path": "reference/design-context-schema.md",
|
|
1163
1170
|
"type": "schema",
|
|
1164
1171
|
"phase": 52,
|
|
1165
|
-
"description": "
|
|
1172
|
+
"description": "Typed DesignContext graph (keystone): 10 node types + 12 edge types, Node/Edge/Fragment/Graph shapes, two-phase mapper pattern. Schema at reference/schemas/design-context.schema.json."
|
|
1166
1173
|
},
|
|
1167
1174
|
{
|
|
1168
1175
|
"name": "design-context-tag-vocab",
|
|
1169
1176
|
"path": "reference/design-context-tag-vocab.md",
|
|
1170
1177
|
"type": "meta-rules",
|
|
1171
1178
|
"phase": 52,
|
|
1172
|
-
"description": "
|
|
1179
|
+
"description": "Controlled tag vocabulary for DesignContext nodes; validate-design-context.cjs soft-warns on unknown tags."
|
|
1173
1180
|
},
|
|
1174
1181
|
{
|
|
1175
1182
|
"name": "addendum-system-tailwind",
|
|
@@ -1178,7 +1185,7 @@
|
|
|
1178
1185
|
"phase": 54,
|
|
1179
1186
|
"kind": "system",
|
|
1180
1187
|
"composes_into": ["token-mapper", "component-taxonomy-mapper"],
|
|
1181
|
-
"description": "
|
|
1188
|
+
"description": "Stack addendum (design-system) — Tailwind CSS. v4 @theme CSS-custom-property token model vs v3 tailwind.config theme, utility-cluster-as-variant reading, arbitrary-value anti-patterns. Composed into the token + component-taxonomy mappers when detectStack reports ds=tailwind."
|
|
1182
1189
|
},
|
|
1183
1190
|
{
|
|
1184
1191
|
"name": "addendum-system-shadcn",
|
|
@@ -1187,7 +1194,7 @@
|
|
|
1187
1194
|
"phase": 54,
|
|
1188
1195
|
"kind": "system",
|
|
1189
1196
|
"composes_into": ["token-mapper", "component-taxonomy-mapper"],
|
|
1190
|
-
"description": "
|
|
1197
|
+
"description": "Stack addendum (design-system) — shadcn/ui. components.json + cn() helper signature, copy-in (not dependency) component ownership, CSS-variable theming over the Radix primitive layer. Composed into the token + component-taxonomy mappers when detectStack reports ds=shadcn."
|
|
1191
1198
|
},
|
|
1192
1199
|
{
|
|
1193
1200
|
"name": "addendum-system-radix-themes",
|
|
@@ -1196,7 +1203,7 @@
|
|
|
1196
1203
|
"phase": 54,
|
|
1197
1204
|
"kind": "system",
|
|
1198
1205
|
"composes_into": ["token-mapper", "component-taxonomy-mapper"],
|
|
1199
|
-
"description": "
|
|
1206
|
+
"description": "Stack addendum (design-system) — Radix Themes. The accent/gray scale token system, the 12-step color scales, Theme-prop driven appearance, radius/scaling config. Composed into the token + component-taxonomy mappers when detectStack reports ds=radix-themes."
|
|
1200
1207
|
},
|
|
1201
1208
|
{
|
|
1202
1209
|
"name": "addendum-system-mui",
|
|
@@ -1205,7 +1212,7 @@
|
|
|
1205
1212
|
"phase": 54,
|
|
1206
1213
|
"kind": "system",
|
|
1207
1214
|
"composes_into": ["token-mapper", "component-taxonomy-mapper"],
|
|
1208
|
-
"description": "
|
|
1215
|
+
"description": "Stack addendum (design-system) — MUI (Material UI). createTheme palette/typography/spacing tokens, the sx prop vs styled() usage, theme.vars CSS-variable mode, slot-based component anatomy. Composed into the token + component-taxonomy mappers when detectStack reports ds=mui."
|
|
1209
1216
|
},
|
|
1210
1217
|
{
|
|
1211
1218
|
"name": "addendum-system-chakra",
|
|
@@ -1214,7 +1221,7 @@
|
|
|
1214
1221
|
"phase": 54,
|
|
1215
1222
|
"kind": "system",
|
|
1216
1223
|
"composes_into": ["token-mapper", "component-taxonomy-mapper"],
|
|
1217
|
-
"description": "
|
|
1224
|
+
"description": "Stack addendum (design-system) — Chakra UI. The theme token scales (colors/space/fontSizes/radii), style-prop usage as token references, semantic tokens, recipe/variant anatomy. Composed into the token + component-taxonomy mappers when detectStack reports ds=chakra."
|
|
1218
1225
|
},
|
|
1219
1226
|
{
|
|
1220
1227
|
"name": "addendum-system-vanilla-extract",
|
|
@@ -1223,7 +1230,7 @@
|
|
|
1223
1230
|
"phase": 54,
|
|
1224
1231
|
"kind": "system",
|
|
1225
1232
|
"composes_into": ["token-mapper", "component-taxonomy-mapper"],
|
|
1226
|
-
"description": "
|
|
1233
|
+
"description": "Stack addendum (design-system) — vanilla-extract. The *.css.ts compile-time stylesheet model, createTheme / themeContract token contracts, vars as the token source, recipe() variants. Composed into the token + component-taxonomy mappers when detectStack reports ds=vanilla-extract."
|
|
1227
1234
|
},
|
|
1228
1235
|
{
|
|
1229
1236
|
"name": "addendum-system-styled-components",
|
|
@@ -1232,7 +1239,7 @@
|
|
|
1232
1239
|
"phase": 54,
|
|
1233
1240
|
"kind": "system",
|
|
1234
1241
|
"composes_into": ["token-mapper", "component-taxonomy-mapper"],
|
|
1235
|
-
"description": "
|
|
1242
|
+
"description": "Stack addendum (design-system) — styled-components. The ThemeProvider theme object as the token tree, props-driven dynamic styling, the styled() component boundary, css helper composition. Composed into the token + component-taxonomy mappers when detectStack reports ds=styled-components."
|
|
1236
1243
|
},
|
|
1237
1244
|
{
|
|
1238
1245
|
"name": "addendum-system-css-modules",
|
|
@@ -1241,7 +1248,7 @@
|
|
|
1241
1248
|
"phase": 54,
|
|
1242
1249
|
"kind": "system",
|
|
1243
1250
|
"composes_into": ["token-mapper", "component-taxonomy-mapper"],
|
|
1244
|
-
"description": "
|
|
1251
|
+
"description": "Stack addendum (design-system) — CSS Modules. The *.module.css locally-scoped class model, :root / var() custom-property tokens, composes for variant reuse, no runtime theme object. Composed into the token + component-taxonomy mappers when detectStack reports ds=css-modules."
|
|
1245
1252
|
},
|
|
1246
1253
|
{
|
|
1247
1254
|
"name": "addendum-framework-nextjs",
|
|
@@ -1250,7 +1257,7 @@
|
|
|
1250
1257
|
"phase": 54,
|
|
1251
1258
|
"kind": "framework",
|
|
1252
1259
|
"composes_into": ["component-taxonomy-mapper", "visual-hierarchy-mapper"],
|
|
1253
|
-
"description": "
|
|
1260
|
+
"description": "Stack addendum (framework) — Next.js. App Router vs Pages Router layout/route structure, server vs client component split, layout.tsx hierarchy as a screen graph, metadata/loading/error conventions. Composed into the component-taxonomy + visual-hierarchy mappers when detectStack reports framework=nextjs."
|
|
1254
1261
|
},
|
|
1255
1262
|
{
|
|
1256
1263
|
"name": "addendum-framework-remix",
|
|
@@ -1259,7 +1266,7 @@
|
|
|
1259
1266
|
"phase": 54,
|
|
1260
1267
|
"kind": "framework",
|
|
1261
1268
|
"composes_into": ["component-taxonomy-mapper", "visual-hierarchy-mapper"],
|
|
1262
|
-
"description": "
|
|
1269
|
+
"description": "Stack addendum (framework) — Remix (v2 / React Router v7 framework mode). Nested-route file conventions as a layout tree, loader/action data boundaries, Outlet composition, the route-as-screen mapping. Composed into the component-taxonomy + visual-hierarchy mappers when detectStack reports framework=remix."
|
|
1263
1270
|
},
|
|
1264
1271
|
{
|
|
1265
1272
|
"name": "addendum-framework-vite-react",
|
|
@@ -1268,7 +1275,7 @@
|
|
|
1268
1275
|
"phase": 54,
|
|
1269
1276
|
"kind": "framework",
|
|
1270
1277
|
"composes_into": ["component-taxonomy-mapper", "visual-hierarchy-mapper"],
|
|
1271
|
-
"description": "
|
|
1278
|
+
"description": "Stack addendum (framework) — Vite + React SPA. The client-only render tree, react-router route config as the screen graph, entry-point main.tsx, no server-component split. Composed into the component-taxonomy + visual-hierarchy mappers when detectStack reports framework=vite-react."
|
|
1272
1279
|
},
|
|
1273
1280
|
{
|
|
1274
1281
|
"name": "addendum-framework-astro",
|
|
@@ -1277,7 +1284,7 @@
|
|
|
1277
1284
|
"phase": 54,
|
|
1278
1285
|
"kind": "framework",
|
|
1279
1286
|
"composes_into": ["component-taxonomy-mapper", "visual-hierarchy-mapper"],
|
|
1280
|
-
"description": "
|
|
1287
|
+
"description": "Stack addendum (framework) — Astro. The .astro component model, island architecture (client:* directives) as the interactivity boundary, file-based pages routing, content collections. Composed into the component-taxonomy + visual-hierarchy mappers when detectStack reports framework=astro."
|
|
1281
1288
|
},
|
|
1282
1289
|
{
|
|
1283
1290
|
"name": "addendum-framework-sveltekit",
|
|
@@ -1286,7 +1293,7 @@
|
|
|
1286
1293
|
"phase": 54,
|
|
1287
1294
|
"kind": "framework",
|
|
1288
1295
|
"composes_into": ["component-taxonomy-mapper", "visual-hierarchy-mapper"],
|
|
1289
|
-
"description": "
|
|
1296
|
+
"description": "Stack addendum (framework) — SvelteKit. The +page / +layout route file conventions as a layout tree, load functions, slot composition, the .svelte component anatomy. Composed into the component-taxonomy + visual-hierarchy mappers when detectStack reports framework=sveltekit."
|
|
1290
1297
|
},
|
|
1291
1298
|
{
|
|
1292
1299
|
"name": "addendum-framework-storybook",
|
|
@@ -1295,7 +1302,7 @@
|
|
|
1295
1302
|
"phase": 54,
|
|
1296
1303
|
"kind": "framework",
|
|
1297
1304
|
"composes_into": ["component-taxonomy-mapper", "visual-hierarchy-mapper"],
|
|
1298
|
-
"description": "
|
|
1305
|
+
"description": "Stack addendum (framework) — Storybook. The *.stories.* files as the canonical component + variant catalogue, args/argTypes as the variant matrix, CSF story structure, the component-in-isolation taxonomy signal. Composed into the component-taxonomy + visual-hierarchy mappers when detectStack reports framework=storybook."
|
|
1299
1306
|
},
|
|
1300
1307
|
{
|
|
1301
1308
|
"name": "addendum-motion-framer-motion",
|
|
@@ -1304,7 +1311,7 @@
|
|
|
1304
1311
|
"phase": 54,
|
|
1305
1312
|
"kind": "motion",
|
|
1306
1313
|
"composes_into": ["motion-mapper"],
|
|
1307
|
-
"description": "
|
|
1314
|
+
"description": "Stack addendum (motion) — Framer Motion / motion. Seconds-unit duration trap, the spring-vs-tween default, variants/AnimatePresence/gesture props, mapping onto the instant/quick/standard/slow/narrative duration classes. Composed into the motion mapper when detectStack reports motion_libs includes framer-motion."
|
|
1308
1315
|
},
|
|
1309
1316
|
{
|
|
1310
1317
|
"name": "addendum-motion-gsap",
|
|
@@ -1313,7 +1320,7 @@
|
|
|
1313
1320
|
"phase": 54,
|
|
1314
1321
|
"kind": "motion",
|
|
1315
1322
|
"composes_into": ["motion-mapper"],
|
|
1316
|
-
"description": "
|
|
1323
|
+
"description": "Stack addendum (motion) — GSAP. Seconds-unit duration, the timeline orchestration model, ease string vocabulary, ScrollTrigger gestures, mapping tweens onto the instant/quick/standard/slow/narrative duration classes. Composed into the motion mapper when detectStack reports motion_libs includes gsap."
|
|
1317
1324
|
},
|
|
1318
1325
|
{
|
|
1319
1326
|
"name": "addendum-motion-motion-one",
|
|
@@ -1322,7 +1329,7 @@
|
|
|
1322
1329
|
"phase": 54,
|
|
1323
1330
|
"kind": "motion",
|
|
1324
1331
|
"composes_into": ["motion-mapper"],
|
|
1325
|
-
"description": "
|
|
1332
|
+
"description": "Stack addendum (motion) — Motion One. The Web Animations API foundation, seconds-unit duration, the animate() signature, spring/glide generators, mapping onto the instant/quick/standard/slow/narrative duration classes. Composed into the motion mapper when detectStack reports motion_libs includes motion-one."
|
|
1326
1333
|
},
|
|
1327
1334
|
{
|
|
1328
1335
|
"name": "addendum-motion-react-spring",
|
|
@@ -1331,7 +1338,7 @@
|
|
|
1331
1338
|
"phase": 54,
|
|
1332
1339
|
"kind": "motion",
|
|
1333
1340
|
"composes_into": ["motion-mapper"],
|
|
1334
|
-
"description": "
|
|
1341
|
+
"description": "Stack addendum (motion) — react-spring. The physics-first (no-duration) model: tension/friction/mass instead of a duration, useSpring/useTransition hooks, the gesture-driven imperative api, reconciling physics springs with the instant/quick/standard/slow/narrative duration classes. Composed into the motion mapper when detectStack reports motion_libs includes react-spring."
|
|
1335
1342
|
}
|
|
1336
1343
|
]
|
|
1337
1344
|
}
|