ai-design-context 0.4.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/AGENTS.md +156 -0
- package/CHANGELOG.md +71 -0
- package/CODE_OF_CONDUCT.md +29 -0
- package/CONTRIBUTING.md +128 -0
- package/LICENSE +21 -0
- package/README.md +283 -0
- package/RELEASE_NOTES_v0.1.0.md +45 -0
- package/RELEASE_NOTES_v0.3.0.md +47 -0
- package/RELEASE_NOTES_v0.4.0.md +29 -0
- package/RELEASE_READINESS.md +107 -0
- package/ROADMAP.md +60 -0
- package/SECURITY.md +40 -0
- package/assets/logo.svg +9 -0
- package/benchmarks/README.md +19 -0
- package/benchmarks/chat.md +37 -0
- package/benchmarks/mobile-home-screen.md +38 -0
- package/benchmarks/notes-app.md +37 -0
- package/benchmarks/settings.md +37 -0
- package/benchmarks/shopping-list.md +37 -0
- package/benchmarks/todo-app.md +144 -0
- package/checklists/DESIGN_QA.md +102 -0
- package/checklists/GENERATED_INDEX.md +7 -0
- package/docs/AGENT_CONTEXT.md +111 -0
- package/docs/BENCHMARK.md +170 -0
- package/docs/DESIGNLINT_READINESS.md +110 -0
- package/docs/DESIGN_SYSTEM.md +23 -0
- package/docs/EVALUATION_RUBRIC.md +154 -0
- package/docs/GITHUB_SETUP.md +28 -0
- package/docs/GLOSSARY.md +45 -0
- package/docs/INDEX.md +109 -0
- package/docs/KNOWLEDGE_ENGINE.md +594 -0
- package/docs/MOBILE_FIRST.md +18 -0
- package/docs/NPM_RELEASE.md +43 -0
- package/docs/PATTERN_SPEC.md +113 -0
- package/docs/PHILOSOPHY.md +25 -0
- package/docs/PRODUCT_THINKING.md +26 -0
- package/docs/STYLE_GUIDE.md +49 -0
- package/docs/TRACEABILITY.md +45 -0
- package/evidence/README.md +64 -0
- package/evidence/TEMPLATE.md +46 -0
- package/evidence/chat/.gitkeep +1 -0
- package/evidence/mobile-home/.gitkeep +1 -0
- package/evidence/notes/.gitkeep +1 -0
- package/evidence/settings/.gitkeep +1 -0
- package/evidence/shopping/.gitkeep +1 -0
- package/evidence/todo/.gitkeep +1 -0
- package/evidence/todo/2026-06-25-codex-gpt-5/EVALUATION.md +66 -0
- package/evidence/todo/2026-06-25-codex-gpt-5/README.md +40 -0
- package/evidence/todo/2026-06-25-codex-gpt-5/ai-design-rules/generated-output.md +163 -0
- package/evidence/todo/2026-06-25-codex-gpt-5/ai-design-rules/metadata.json +38 -0
- package/evidence/todo/2026-06-25-codex-gpt-5/ai-design-rules/notes.md +20 -0
- package/evidence/todo/2026-06-25-codex-gpt-5/ai-design-rules/prompt.md +16 -0
- package/evidence/todo/2026-06-25-codex-gpt-5/ai-design-rules/scores.md +18 -0
- package/evidence/todo/2026-06-25-codex-gpt-5/baseline/generated-output.md +98 -0
- package/evidence/todo/2026-06-25-codex-gpt-5/baseline/metadata.json +19 -0
- package/evidence/todo/2026-06-25-codex-gpt-5/baseline/notes.md +19 -0
- package/evidence/todo/2026-06-25-codex-gpt-5/baseline/prompt.md +9 -0
- package/evidence/todo/2026-06-25-codex-gpt-5/baseline/scores.md +18 -0
- package/evidence/todo/2026-09-28-codex-paired-todo/EVALUATION.md +70 -0
- package/evidence/todo/2026-09-28-codex-paired-todo/README.md +52 -0
- package/evidence/todo/2026-09-28-codex-paired-todo/ai-design-rules/GENERATION_NOTES.md +133 -0
- package/evidence/todo/2026-09-28-codex-paired-todo/ai-design-rules/app.js +289 -0
- package/evidence/todo/2026-09-28-codex-paired-todo/ai-design-rules/context/context-preserving-preview.json +443 -0
- package/evidence/todo/2026-09-28-codex-paired-todo/ai-design-rules/context/daily-home-surface.json +373 -0
- package/evidence/todo/2026-09-28-codex-paired-todo/ai-design-rules/context/quick-capture.json +301 -0
- package/evidence/todo/2026-09-28-codex-paired-todo/ai-design-rules/context/sources-read.txt +36 -0
- package/evidence/todo/2026-09-28-codex-paired-todo/ai-design-rules/generated-output.md +11 -0
- package/evidence/todo/2026-09-28-codex-paired-todo/ai-design-rules/index.html +64 -0
- package/evidence/todo/2026-09-28-codex-paired-todo/ai-design-rules/launch-prompt.md +1 -0
- package/evidence/todo/2026-09-28-codex-paired-todo/ai-design-rules/metadata.json +55 -0
- package/evidence/todo/2026-09-28-codex-paired-todo/ai-design-rules/notes.md +15 -0
- package/evidence/todo/2026-09-28-codex-paired-todo/ai-design-rules/parent-status-message.md +1 -0
- package/evidence/todo/2026-09-28-codex-paired-todo/ai-design-rules/prompt.md +49 -0
- package/evidence/todo/2026-09-28-codex-paired-todo/ai-design-rules/runtime-checks.json +776 -0
- package/evidence/todo/2026-09-28-codex-paired-todo/ai-design-rules/scores.md +20 -0
- package/evidence/todo/2026-09-28-codex-paired-todo/ai-design-rules/screenshots/desktop-completed.png +0 -0
- package/evidence/todo/2026-09-28-codex-paired-todo/ai-design-rules/screenshots/desktop-default.png +0 -0
- package/evidence/todo/2026-09-28-codex-paired-todo/ai-design-rules/screenshots/desktop-detail-reduced-motion.png +0 -0
- package/evidence/todo/2026-09-28-codex-paired-todo/ai-design-rules/screenshots/desktop-detail.png +0 -0
- package/evidence/todo/2026-09-28-codex-paired-todo/ai-design-rules/screenshots/desktop-empty.png +0 -0
- package/evidence/todo/2026-09-28-codex-paired-todo/ai-design-rules/screenshots/desktop-keyboard-focus.png +0 -0
- package/evidence/todo/2026-09-28-codex-paired-todo/ai-design-rules/screenshots/desktop-save-error.png +0 -0
- package/evidence/todo/2026-09-28-codex-paired-todo/ai-design-rules/screenshots/desktop-saved.png +0 -0
- package/evidence/todo/2026-09-28-codex-paired-todo/ai-design-rules/screenshots/desktop-saving.png +0 -0
- package/evidence/todo/2026-09-28-codex-paired-todo/ai-design-rules/screenshots/desktop-validation.png +0 -0
- package/evidence/todo/2026-09-28-codex-paired-todo/ai-design-rules/screenshots/mobile-completed.png +0 -0
- package/evidence/todo/2026-09-28-codex-paired-todo/ai-design-rules/screenshots/mobile-default.png +0 -0
- package/evidence/todo/2026-09-28-codex-paired-todo/ai-design-rules/screenshots/mobile-detail-reduced-motion.png +0 -0
- package/evidence/todo/2026-09-28-codex-paired-todo/ai-design-rules/screenshots/mobile-detail.png +0 -0
- package/evidence/todo/2026-09-28-codex-paired-todo/ai-design-rules/screenshots/mobile-empty.png +0 -0
- package/evidence/todo/2026-09-28-codex-paired-todo/ai-design-rules/screenshots/mobile-keyboard-focus.png +0 -0
- package/evidence/todo/2026-09-28-codex-paired-todo/ai-design-rules/screenshots/mobile-save-error.png +0 -0
- package/evidence/todo/2026-09-28-codex-paired-todo/ai-design-rules/screenshots/mobile-saved.png +0 -0
- package/evidence/todo/2026-09-28-codex-paired-todo/ai-design-rules/screenshots/mobile-saving.png +0 -0
- package/evidence/todo/2026-09-28-codex-paired-todo/ai-design-rules/screenshots/mobile-validation.png +0 -0
- package/evidence/todo/2026-09-28-codex-paired-todo/ai-design-rules/source-hashes.json +5 -0
- package/evidence/todo/2026-09-28-codex-paired-todo/ai-design-rules/styles.css +122 -0
- package/evidence/todo/2026-09-28-codex-paired-todo/baseline/GENERATION_NOTES.md +86 -0
- package/evidence/todo/2026-09-28-codex-paired-todo/baseline/app.js +303 -0
- package/evidence/todo/2026-09-28-codex-paired-todo/baseline/generated-output.md +11 -0
- package/evidence/todo/2026-09-28-codex-paired-todo/baseline/index.html +71 -0
- package/evidence/todo/2026-09-28-codex-paired-todo/baseline/launch-prompt.md +1 -0
- package/evidence/todo/2026-09-28-codex-paired-todo/baseline/metadata.json +55 -0
- package/evidence/todo/2026-09-28-codex-paired-todo/baseline/notes.md +15 -0
- package/evidence/todo/2026-09-28-codex-paired-todo/baseline/parent-status-message.md +1 -0
- package/evidence/todo/2026-09-28-codex-paired-todo/baseline/prompt.md +49 -0
- package/evidence/todo/2026-09-28-codex-paired-todo/baseline/runtime-checks.json +772 -0
- package/evidence/todo/2026-09-28-codex-paired-todo/baseline/scores.md +20 -0
- package/evidence/todo/2026-09-28-codex-paired-todo/baseline/screenshots/desktop-completed.png +0 -0
- package/evidence/todo/2026-09-28-codex-paired-todo/baseline/screenshots/desktop-default.png +0 -0
- package/evidence/todo/2026-09-28-codex-paired-todo/baseline/screenshots/desktop-detail-reduced-motion.png +0 -0
- package/evidence/todo/2026-09-28-codex-paired-todo/baseline/screenshots/desktop-detail.png +0 -0
- package/evidence/todo/2026-09-28-codex-paired-todo/baseline/screenshots/desktop-empty.png +0 -0
- package/evidence/todo/2026-09-28-codex-paired-todo/baseline/screenshots/desktop-keyboard-focus.png +0 -0
- package/evidence/todo/2026-09-28-codex-paired-todo/baseline/screenshots/desktop-save-error.png +0 -0
- package/evidence/todo/2026-09-28-codex-paired-todo/baseline/screenshots/desktop-saved.png +0 -0
- package/evidence/todo/2026-09-28-codex-paired-todo/baseline/screenshots/desktop-saving.png +0 -0
- package/evidence/todo/2026-09-28-codex-paired-todo/baseline/screenshots/desktop-validation.png +0 -0
- package/evidence/todo/2026-09-28-codex-paired-todo/baseline/screenshots/mobile-completed.png +0 -0
- package/evidence/todo/2026-09-28-codex-paired-todo/baseline/screenshots/mobile-default.png +0 -0
- package/evidence/todo/2026-09-28-codex-paired-todo/baseline/screenshots/mobile-detail-reduced-motion.png +0 -0
- package/evidence/todo/2026-09-28-codex-paired-todo/baseline/screenshots/mobile-detail.png +0 -0
- package/evidence/todo/2026-09-28-codex-paired-todo/baseline/screenshots/mobile-empty.png +0 -0
- package/evidence/todo/2026-09-28-codex-paired-todo/baseline/screenshots/mobile-keyboard-focus.png +0 -0
- package/evidence/todo/2026-09-28-codex-paired-todo/baseline/screenshots/mobile-save-error.png +0 -0
- package/evidence/todo/2026-09-28-codex-paired-todo/baseline/screenshots/mobile-saved.png +0 -0
- package/evidence/todo/2026-09-28-codex-paired-todo/baseline/screenshots/mobile-saving.png +0 -0
- package/evidence/todo/2026-09-28-codex-paired-todo/baseline/screenshots/mobile-validation.png +0 -0
- package/evidence/todo/2026-09-28-codex-paired-todo/baseline/source-hashes.json +5 -0
- package/evidence/todo/2026-09-28-codex-paired-todo/baseline/styles.css +9 -0
- package/evidence/todo/2026-09-28-codex-paired-todo/capture-ai-design-rules.js +60 -0
- package/evidence/todo/2026-09-28-codex-paired-todo/capture-baseline.js +60 -0
- package/evidence/todo/2026-09-28-codex-paired-todo/common/brief.md +35 -0
- package/evidence/todo/2026-09-28-codex-paired-todo/common/knowledge-files.json +127 -0
- package/evidence/todo/2026-09-28-codex-paired-todo/common/knowledge.patch +890 -0
- package/evidence/todo/2026-09-28-codex-paired-todo/common/review-context.json +550 -0
- package/evidence/todo/2026-09-28-codex-paired-todo/common/seed.json +86 -0
- package/evidence/todo/2026-09-28-codex-paired-todo/common/setup.json +47 -0
- package/evidence/todo/2026-09-28-codex-paired-todo/common/technical-envelope.md +11 -0
- package/evidence/todo/2026-09-28-codex-paired-todo/layout-metrics.json +133 -0
- package/evidence/todo/2026-09-28-codex-paired-todo/layout-probe.js +15 -0
- package/examples/GENERATED_INDEX.md +8 -0
- package/examples/INDEX.md +16 -0
- package/examples/README.md +15 -0
- package/examples/consequential-action-confirmation-reference.md +83 -0
- package/examples/todo-app-benchmark.md +117 -0
- package/examples/todo-reference/README.md +29 -0
- package/examples/todo-reference/app.js +154 -0
- package/examples/todo-reference/favicon.svg +4 -0
- package/examples/todo-reference/index.html +67 -0
- package/examples/todo-reference/review-evidence/2026-07-15/desktop-default.png +0 -0
- package/examples/todo-reference/review-evidence/2026-07-15/desktop-detail.png +0 -0
- package/examples/todo-reference/review-evidence/2026-07-15/mobile-detail.png +0 -0
- package/examples/todo-reference/review-evidence/2026-07-15/mobile-error.png +0 -0
- package/examples/todo-reference/styles.css +241 -0
- package/graph/GENERATED_GRAPH.md +71 -0
- package/observations/README.md +23 -0
- package/observations/accessibility/reduced-interaction-motion.md +49 -0
- package/observations/accessibility/textual-error-recovery.md +50 -0
- package/observations/accessibility/visible-keyboard-focus.md +49 -0
- package/observations/ai/agent-consequential-action-controls.md +56 -0
- package/observations/ai/agent-work-visibility-and-intervention.md +51 -0
- package/observations/ai/figma-agent-context-and-skills.md +52 -0
- package/observations/finance/high-risk-wallet-recovery-flows.md +55 -0
- package/observations/finance/market-interface-adaptive-trading-surfaces.md +55 -0
- package/observations/interaction/chrome-scoped-view-transitions.md +52 -0
- package/observations/interaction/figma-motion-as-system-capability.md +53 -0
- package/observations/mobile/mobile-bottom-sheet-choice-contracts.md +55 -0
- package/observations/performance/reserved-loading-space.md +51 -0
- package/observations/product-repos/pinned-ai-design-rules-integration.md +49 -0
- package/observations/visual/apple-liquid-glass-functional-layer.md +52 -0
- package/observations/visual/chrome-content-first-adaptive-ui.md +51 -0
- package/observations/visual/material-3-expressive-system.md +52 -0
- package/package.json +65 -0
- package/patterns/GENERATED_INDEX.md +13 -0
- package/patterns/INDEX.md +41 -0
- package/patterns/README.md +5 -0
- package/patterns/consequential-action-confirmation.md +127 -0
- package/patterns/context-preserving-preview.md +145 -0
- package/patterns/daily-home-surface.md +134 -0
- package/patterns/mobile-primary-action.md +110 -0
- package/patterns/object-status-list.md +114 -0
- package/patterns/progressive-detail.md +113 -0
- package/patterns/quick-capture.md +132 -0
- package/prompts/CONSEQUENTIAL_ACTION_REVIEW.md +100 -0
- package/prompts/DESIGN_EVIDENCE_REVIEW.md +49 -0
- package/prompts/GENERATED_INDEX.md +11 -0
- package/prompts/INDEX.md +24 -0
- package/prompts/PROTOTYPE_REVIEW.md +189 -0
- package/prompts/QUICK_CAPTURE_STATE_REVIEW.md +74 -0
- package/prompts/TODO_APP_BENCHMARK.md +88 -0
- package/registry/objects.json +568 -0
- package/registry/relationships.json +972 -0
- package/research/GENERATED_INDEX.md +18 -0
- package/research/INDEX.md +40 -0
- package/research/accessibility/keyboard-focus-and-interaction-motion.md +62 -0
- package/research/accessibility/textual-error-recovery.md +57 -0
- package/research/performance/reserved-loading-space.md +56 -0
- package/research/products/apple-reminders.md +59 -0
- package/research/products/arc.md +61 -0
- package/research/products/linear.md +62 -0
- package/research/products/telegram.md +61 -0
- package/research/products/things-3.md +60 -0
- package/research/ux/contextual-agentic-interface.md +68 -0
- package/research/ux/high-risk-operational-flows.md +89 -0
- package/research/ux/motion-as-state-continuity.md +71 -0
- package/research/visual/expressive-system-ui-2026.md +75 -0
- package/reviews/GENERATED_INDEX.md +9 -0
- package/reviews/README.md +25 -0
- package/reviews/consequential-action-confirmation-review.md +92 -0
- package/reviews/todo-app-benchmark-reference-review.md +86 -0
- package/reviews/todo-reference-fixture-review.md +77 -0
- package/rules/GENERATED_INDEX.md +23 -0
- package/rules/INDEX.md +37 -0
- package/rules/accessibility/A11Y-001.md +58 -0
- package/rules/accessibility/A11Y-002.md +55 -0
- package/rules/accessibility/A11Y-003.md +54 -0
- package/rules/accessibility/A11Y-004.md +54 -0
- package/rules/ia/IA-001.md +60 -0
- package/rules/ia/IA-002.md +61 -0
- package/rules/performance/PERF-001.md +55 -0
- package/rules/product/PRD-001.md +61 -0
- package/rules/product/PRD-002.md +61 -0
- package/rules/ux/UX-001.md +58 -0
- package/rules/ux/UX-002.md +61 -0
- package/rules/ux/UX-003.md +60 -0
- package/rules/ux/UX-004.md +61 -0
- package/rules/ux/UX-005.md +62 -0
- package/rules/ux/UX-006.md +69 -0
- package/rules/visual/VIS-001.md +59 -0
- package/rules/visual/VIS-002.md +59 -0
- package/schema/checklist.schema.json +21 -0
- package/schema/common.schema.json +178 -0
- package/schema/observation.schema.json +21 -0
- package/schema/pattern.schema.json +21 -0
- package/schema/prompt.schema.json +21 -0
- package/schema/reference-project.schema.json +21 -0
- package/schema/research.schema.json +21 -0
- package/schema/review.schema.json +21 -0
- package/schema/rule.schema.json +21 -0
- package/skills/README.md +48 -0
- package/skills/accessibility-reviewer/SKILL.md +101 -0
- package/skills/agent-context/SKILL.md +34 -0
- package/skills/agent-context/agents/openai.yaml +4 -0
- package/skills/design-evidence-researcher/SKILL.md +47 -0
- package/skills/design-evidence-researcher/agents/openai.yaml +4 -0
- package/skills/design-reviewer/SKILL.md +113 -0
- package/skills/design-system-architect/SKILL.md +101 -0
- package/skills/information-architect/SKILL.md +97 -0
- package/skills/interaction-designer/SKILL.md +104 -0
- package/skills/knowledge-graph-architect/SKILL.md +96 -0
- package/skills/mobile-ux-expert/SKILL.md +105 -0
- package/skills/motion-designer/SKILL.md +100 -0
- package/skills/performance-reviewer/SKILL.md +97 -0
- package/skills/product-designer/SKILL.md +104 -0
- package/skills/prompt-architect/SKILL.md +105 -0
- package/skills/reference-driven-design/SKILL.md +119 -0
- package/skills/ux-reviewer/SKILL.md +99 -0
- package/skills/visual-designer/SKILL.md +107 -0
- package/starter-kit/AGENTS.md +37 -0
- package/starter-kit/BOOTSTRAP.md +13 -0
- package/starter-kit/INSTALL_WITH_AGENT.md +133 -0
- package/starter-kit/PROJECT_INTEGRATION.md +60 -0
- package/starter-kit/README.md +41 -0
- package/starter-kit/benchmarks/BENCHMARK_CHECKLIST.md +10 -0
- package/starter-kit/docs/DESIGN_DECISIONS.md +22 -0
- package/starter-kit/docs/INFORMATION_ARCHITECTURE.md +25 -0
- package/starter-kit/docs/PERSONAS.md +14 -0
- package/starter-kit/docs/PRD.md +32 -0
- package/starter-kit/docs/USER_FLOWS.md +19 -0
- package/starter-kit/reviews/DESIGN_REVIEW.md +49 -0
- package/starter-kit/templates/FEATURE_TEMPLATE.md +36 -0
- package/starter-kit/templates/TASK_TEMPLATE.md +22 -0
- package/templates/CHECKLIST_TEMPLATE.md +43 -0
- package/templates/OBSERVATION_TEMPLATE.md +41 -0
- package/templates/PATTERN_TEMPLATE.md +100 -0
- package/templates/PROMPT_TEMPLATE.md +46 -0
- package/templates/PROTOTYPE_REVIEW.md +50 -0
- package/templates/REFERENCE_PROJECT_TEMPLATE.md +49 -0
- package/templates/REVIEW_TEMPLATE.md +55 -0
- package/templates/RULE_TEMPLATE.md +57 -0
- package/tools/cli.mjs +46 -0
- package/tools/context.mjs +342 -0
- package/tools/designlint.mjs +77 -0
- package/tools/generate-indexes.mjs +621 -0
- package/tools/init.mjs +99 -0
- package/tools/validate-benchmark-evidence.mjs +248 -0
- package/tools/validate-knowledge.mjs +481 -0
|
@@ -0,0 +1,71 @@
|
|
|
1
|
+
<!doctype html>
|
|
2
|
+
<html lang="en">
|
|
3
|
+
<head>
|
|
4
|
+
<meta charset="utf-8">
|
|
5
|
+
<meta name="viewport" content="width=device-width, initial-scale=1">
|
|
6
|
+
<meta name="theme-color" content="#f6f7f3">
|
|
7
|
+
<title>Daylight — Your everyday list</title>
|
|
8
|
+
<link rel="stylesheet" href="styles.css">
|
|
9
|
+
<script src="app.js" defer></script>
|
|
10
|
+
</head>
|
|
11
|
+
<body>
|
|
12
|
+
<div class="app-shell">
|
|
13
|
+
<aside class="sidebar" aria-label="App navigation">
|
|
14
|
+
<a class="brand" href="#main"><span class="brand-mark" aria-hidden="true">✳</span> daylight<span class="brand-dot">.</span></a>
|
|
15
|
+
<p class="brand-caption">A little more headspace.</p>
|
|
16
|
+
<nav class="views" aria-label="Task views">
|
|
17
|
+
<button class="view-button active" data-view="today" aria-current="page"><svg viewBox="0 0 24 24" aria-hidden="true"><circle cx="12" cy="12" r="4"/><path d="M12 2v2m0 16v2M2 12h2m16 0h2M5 5l1.5 1.5m11 11L19 19M5 19l1.5-1.5m11-11L19 5"/></svg><span>Today</span><span class="nav-count" id="today-count">11</span></button>
|
|
18
|
+
<button class="view-button" data-view="all"><svg viewBox="0 0 24 24" aria-hidden="true"><rect x="5" y="3" width="14" height="18" rx="3"/><path d="M9 8h6M9 12h6M9 16h4"/></svg><span>All tasks</span><span class="nav-count" id="all-count">11</span></button>
|
|
19
|
+
</nav>
|
|
20
|
+
<div class="sidebar-footer"><span class="small-sun" aria-hidden="true">☀</span><p>One thing at a time.<br><span>You’ve got this.</span></p></div>
|
|
21
|
+
</aside>
|
|
22
|
+
|
|
23
|
+
<main id="main" tabindex="-1">
|
|
24
|
+
<header class="page-header">
|
|
25
|
+
<div><p class="eyebrow">MONDAY, SEPTEMBER 28</p><h1 id="view-title">Today<span class="title-dot" aria-hidden="true">.</span></h1><p class="page-description" id="view-description">A clear list for a lighter day.</p></div>
|
|
26
|
+
<span class="remaining-badge" id="remaining-badge">11 left</span>
|
|
27
|
+
</header>
|
|
28
|
+
|
|
29
|
+
<form id="add-form" class="quick-add">
|
|
30
|
+
<span class="add-symbol" aria-hidden="true">+</span>
|
|
31
|
+
<label class="sr-only" for="new-task">New task</label>
|
|
32
|
+
<input id="new-task" name="title" placeholder="What do you need to do?" maxlength="180" autocomplete="off" required>
|
|
33
|
+
<button id="add-button" type="submit">Add<span class="desktop-label"> task</span><span aria-hidden="true"> ↵</span></button>
|
|
34
|
+
</form>
|
|
35
|
+
<p class="capture-hint">New tasks are added to today. Details can wait.</p>
|
|
36
|
+
<div id="save-feedback" class="save-feedback" role="status" aria-live="polite" aria-atomic="true"></div>
|
|
37
|
+
|
|
38
|
+
<section class="task-section" aria-labelledby="tasks-heading" aria-busy="true" id="task-section">
|
|
39
|
+
<div class="section-heading"><h2 id="tasks-heading">YOUR LIST</h2><span id="list-count"></span></div>
|
|
40
|
+
<div id="task-list" class="task-list"></div>
|
|
41
|
+
<div id="empty-state" class="empty-state" hidden>
|
|
42
|
+
<div class="empty-icon" aria-hidden="true">✓</div>
|
|
43
|
+
<h2 id="empty-title">A little room to breathe.</h2>
|
|
44
|
+
<p id="empty-description">Add your first task and take the day one thing at a time.</p>
|
|
45
|
+
<button class="text-button" id="empty-add">Add a task <span aria-hidden="true">↗</span></button>
|
|
46
|
+
</div>
|
|
47
|
+
</section>
|
|
48
|
+
|
|
49
|
+
<details class="completed-section" id="completed-section">
|
|
50
|
+
<summary><span>Completed</span><span id="completed-count" class="completed-count">1</span><span class="chevron" aria-hidden="true">⌄</span></summary>
|
|
51
|
+
<div id="completed-list" class="task-list"></div>
|
|
52
|
+
</details>
|
|
53
|
+
<footer class="main-footer"><span aria-hidden="true">◌</span> Your list, at your pace.</footer>
|
|
54
|
+
</main>
|
|
55
|
+
</div>
|
|
56
|
+
|
|
57
|
+
<dialog id="task-dialog" aria-labelledby="detail-heading">
|
|
58
|
+
<form id="detail-form">
|
|
59
|
+
<header class="dialog-header"><div><p class="eyebrow">THE LITTLE DETAILS</p><h2 id="detail-heading">Task details</h2></div><button type="button" id="close-detail" class="icon-button" aria-label="Close task details">×</button></header>
|
|
60
|
+
<label for="detail-title">Task</label>
|
|
61
|
+
<input id="detail-title" maxlength="180" required>
|
|
62
|
+
<label for="detail-date">Date <span class="optional">Optional</span></label>
|
|
63
|
+
<input id="detail-date" type="date">
|
|
64
|
+
<label for="detail-notes">Notes <span class="optional">Optional</span></label>
|
|
65
|
+
<textarea id="detail-notes" rows="5" maxlength="3000" placeholder="Anything you want to remember…"></textarea>
|
|
66
|
+
<div id="detail-feedback" class="detail-feedback" role="status" aria-live="polite" aria-atomic="true"></div>
|
|
67
|
+
<div class="dialog-actions"><button class="secondary-button" id="cancel-detail" type="button">Cancel</button><button class="primary-button" id="save-detail" type="submit">Save changes</button></div>
|
|
68
|
+
</form>
|
|
69
|
+
</dialog>
|
|
70
|
+
</body>
|
|
71
|
+
</html>
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
You are the baseline generator in an authorized controlled benchmark. Read and execute exactly ${RUN_ROOT}/baseline/prompt.md. Your ownership is solely ${RUN_ROOT}/baseline. You are not alone in the workspace: do not inspect or change sibling outputs or revert others' edits. Use only this prompt and its common seed data; no repository/design-skill exploration, no browser/network, no subagents. Maximum 10 minutes including checks. Save raw app and GENERATION_NOTES.md; parent will evaluate without post-generation fixes. Report completion, files, checks, elapsed time, limitations. Do not score your output.
|
|
@@ -0,0 +1,55 @@
|
|
|
1
|
+
{
|
|
2
|
+
"scenario": "Todo App",
|
|
3
|
+
"run_type": "baseline",
|
|
4
|
+
"date": "2026-09-28",
|
|
5
|
+
"model": "Inherited Codex session model; exact backend model identifier not exposed",
|
|
6
|
+
"provider": "OpenAI",
|
|
7
|
+
"generation_surface": "Codex collaboration.spawn_agent; fork_turns=none; worker role",
|
|
8
|
+
"temperature": "Not exposed; inherited identically, no model or reasoning override",
|
|
9
|
+
"tool_access": [
|
|
10
|
+
"filesystem read/write",
|
|
11
|
+
"shell syntax checks"
|
|
12
|
+
],
|
|
13
|
+
"implementation_target": "Static HTML/CSS/JavaScript; no build dependencies or external assets",
|
|
14
|
+
"evaluator": "Codex parent agent (internal, unblinded; not independent)",
|
|
15
|
+
"rubric_version": "docs/EVALUATION_RUBRIC.md@3d9a6a70c47b7008a47dafd24a4aeef2855b07f2",
|
|
16
|
+
"evidence_level": "rendered",
|
|
17
|
+
"screenshots": [
|
|
18
|
+
"baseline/screenshots/desktop-completed.png",
|
|
19
|
+
"baseline/screenshots/desktop-default.png",
|
|
20
|
+
"baseline/screenshots/desktop-detail-reduced-motion.png",
|
|
21
|
+
"baseline/screenshots/desktop-detail.png",
|
|
22
|
+
"baseline/screenshots/desktop-empty.png",
|
|
23
|
+
"baseline/screenshots/desktop-keyboard-focus.png",
|
|
24
|
+
"baseline/screenshots/desktop-save-error.png",
|
|
25
|
+
"baseline/screenshots/desktop-saved.png",
|
|
26
|
+
"baseline/screenshots/desktop-saving.png",
|
|
27
|
+
"baseline/screenshots/desktop-validation.png",
|
|
28
|
+
"baseline/screenshots/mobile-completed.png",
|
|
29
|
+
"baseline/screenshots/mobile-default.png",
|
|
30
|
+
"baseline/screenshots/mobile-detail-reduced-motion.png",
|
|
31
|
+
"baseline/screenshots/mobile-detail.png",
|
|
32
|
+
"baseline/screenshots/mobile-empty.png",
|
|
33
|
+
"baseline/screenshots/mobile-keyboard-focus.png",
|
|
34
|
+
"baseline/screenshots/mobile-save-error.png",
|
|
35
|
+
"baseline/screenshots/mobile-saved.png",
|
|
36
|
+
"baseline/screenshots/mobile-saving.png",
|
|
37
|
+
"baseline/screenshots/mobile-validation.png"
|
|
38
|
+
],
|
|
39
|
+
"limitation": "Single pair with inherited Codex configuration; exact backend version and sampling settings unexposed. Prompt-enforced isolation on a shared host, not OS isolation. Internal unblinded evaluator. No physical mobile keyboard, screen-reader, cross-browser, formal contrast or performance audit. No general output-quality claim.",
|
|
40
|
+
"time_budget_minutes": 10,
|
|
41
|
+
"generation_elapsed_seconds": 429,
|
|
42
|
+
"source_sha256": {
|
|
43
|
+
"index.html": "542a5453c2dd816e2572f4f9a03472a0a3196361963e0c6c8f4cee2d53f0328c",
|
|
44
|
+
"styles.css": "3d3687bdcd0dfdb2df2021acbbca49c17521a9c8d931c270ab1cefe446d27bac",
|
|
45
|
+
"app.js": "2c15e81d2ef006e10c9727ab92ce5995126e84c7ed9cc2f8016b74f5674cef78"
|
|
46
|
+
},
|
|
47
|
+
"knowledge_commit": "3d9a6a70c47b7008a47dafd24a4aeef2855b07f2",
|
|
48
|
+
"knowledge_patch_sha256": "a26da973623d431c7258c64c7092352b03bce590154763be67b20cfabb90a03a",
|
|
49
|
+
"scenario_sha256": "368b10d4e3db8850d282010560e96e520b87737bc014a0385c30c45fd5b68f3d",
|
|
50
|
+
"common_brief_sha256": "5b35c4e957e106467c870fa10e70132cad6ef03fb7a390ad6edfdcfea7526ff7",
|
|
51
|
+
"seed_sha256": "09426e774f630cf8d673ade4a30c049d5e2e98ad661160e1ba71db85416728b4",
|
|
52
|
+
"original_prompt_sha256": "48d86268ed0f02de13b5081e6f47789e7214eeefdb650adf539197dea9a0aba5",
|
|
53
|
+
"stored_prompt_sha256": "ad94f35e6f195c6e97b61f06ddd54ad7394b4d77a9554c415178bf9f94f66d3d",
|
|
54
|
+
"prompt_path_redaction": "Transient absolute paths replaced with ${RUN_ROOT} and ${KNOWLEDGE_ROOT}; other prompt text unchanged."
|
|
55
|
+
}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
# Evaluator notes
|
|
2
|
+
|
|
3
|
+
Condition: `baseline`. See [generation notes](GENERATION_NOTES.md) for the generator's actual sources, timing and static checks.
|
|
4
|
+
|
|
5
|
+
The parent rendered this frozen output in Headless Chrome 153.0.8010.53, locale en-GB, light scheme, device scale 1, at 390×844 and 1440×900 CSS pixels. The evaluator knew the condition and helped author the tested knowledge; this is internal, unblinded evaluation.
|
|
6
|
+
|
|
7
|
+
Both viewport runs checked default/empty states, controlled save delay, one injected failure, retry without duplicates, completion, detail open/close with source scroll/focus restoration, immediate dismissal, reduced motion, failed edit and retry, reload persistence, keyboard traversal, and blank validation. Twenty PNGs are stored, ten per viewport. [Runtime results](runtime-checks.json) contain state and geometry observations; [layout measurements](../layout-metrics.json) compare the same mobile elements before/during/after failure.
|
|
8
|
+
|
|
9
|
+
The detail source row was centered before clicking to avoid Playwright scrolling an obscured click target behind the fixed capture dock. The capture pass was repeated with that harness correction for both versions. Initial screenshots were also normalized to a blurred active element. App source was never modified.
|
|
10
|
+
|
|
11
|
+
No JavaScript page errors were observed in the scripted passes. The initial local server returned a non-product 404 for `/favicon.ico`. Native dialog behavior was tested only in this browser. Reduced motion had the same content and return path; screenshots alone do not establish timing.
|
|
12
|
+
|
|
13
|
+
The automated path follows Tab from a fresh page without activating optional skip links or undisclosed shortcuts. Its count describes that path with the supplied twelve-task seed, not a universal accessibility measure. Touch measurements inspect actual controls and enclosing checkbox labels, not icon dimensions.
|
|
14
|
+
|
|
15
|
+
Source hashes still match the generator freeze. Absolute machine paths in text artifacts were replaced with portable tokens; raw HTML/CSS/JS and PNGs were not changed.
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
Status only: please report elapsed time and current stage when convenient. Keep the original 10-minute budget and do not alter the implementation scope. Parent has the rendering/evaluation environment ready.
|
|
@@ -0,0 +1,49 @@
|
|
|
1
|
+
Implement the brief below in your owned output directory: ${RUN_ROOT}/baseline
|
|
2
|
+
|
|
3
|
+
You are not alone in the workspace. Never modify, revert, or inspect the other run's files. Do not spawn agents. Use a fresh implementation. You own only this output directory. Work independently with a maximum of 10 minutes from starting this task; record elapsed time and stop with the current output if the budget expires.
|
|
4
|
+
|
|
5
|
+
Shared technical envelope:
|
|
6
|
+
- Static index.html, styles.css, app.js; no dependencies, frameworks, build step, external fonts/images/assets, network or browser tools. Filesystem and shell syntax checks only. Parent will render both frozen outputs afterward.
|
|
7
|
+
- Use the exact deterministic task data from ${RUN_ROOT}/common/seed.json; localStorage persistence is allowed. Treat 2026-09-28 as today for the initial seed. Do not edit the common inputs.
|
|
8
|
+
- Expose non-product testing hooks on window.__benchmark: reset('seed'|'empty') resets local data and renders; setSaveDelay(milliseconds) sets delay for later save operations; failNextSave() makes the next save fail exactly once; getState() returns a serializable snapshot including tasks. Default delay is 500 ms. Hooks are evaluator-only, not visible product controls.
|
|
9
|
+
- Document hook usage, exact state reproduction, local serving, checks, known limitations, and actual sources read in GENERATION_NOTES.md. Do not assign scores or claim rendered validation.
|
|
10
|
+
- Include empty, loading, failed-save and successful-save states. The evaluator will use the same viewports (390x844 and 1440x900), data and sequences. Decide the UI and interactions yourself from the brief.
|
|
11
|
+
- Save only your own application and notes. Do not inspect an existing implementation or another run's output. Do not modify repository tooling or knowledge files.
|
|
12
|
+
|
|
13
|
+
Condition: baseline. Use only this brief, technical envelope, and common seed data. Do not read AI Design Rules repository files, design skills, rules, patterns, prompts, examples, other conversation history, or the sibling output. This explicitly controlled baseline omits that knowledge.
|
|
14
|
+
|
|
15
|
+
## Product Brief
|
|
16
|
+
|
|
17
|
+
Create a modern consumer todo app for everyday personal task management.
|
|
18
|
+
|
|
19
|
+
The app should help a busy person capture tasks quickly, see what matters today, complete tasks, and inspect optional details without turning the product into a project management dashboard.
|
|
20
|
+
|
|
21
|
+
## Expected User
|
|
22
|
+
|
|
23
|
+
- Adult consumer managing personal errands, reminders, and daily tasks.
|
|
24
|
+
- Uses mobile frequently and desktop occasionally.
|
|
25
|
+
- Wants low friction more than advanced planning.
|
|
26
|
+
|
|
27
|
+
## Expected Platform
|
|
28
|
+
|
|
29
|
+
- Responsive web app.
|
|
30
|
+
- Must work well at mobile width around 390px.
|
|
31
|
+
- Desktop layout may use additional space but must preserve the same product model.
|
|
32
|
+
|
|
33
|
+
## Constraints
|
|
34
|
+
|
|
35
|
+
- No authentication flow required.
|
|
36
|
+
- No team collaboration required.
|
|
37
|
+
- No analytics dashboard.
|
|
38
|
+
- No project management concepts such as sprints, roadmaps, or velocity.
|
|
39
|
+
- Include realistic empty, loading, and error states.
|
|
40
|
+
- Include accessible labels and touch-friendly controls.
|
|
41
|
+
- Keep optional metadata secondary.
|
|
42
|
+
|
|
43
|
+
## Core User Tasks
|
|
44
|
+
|
|
45
|
+
- Add a task quickly.
|
|
46
|
+
- See today's tasks.
|
|
47
|
+
- Mark a task complete.
|
|
48
|
+
- Inspect or edit task details.
|
|
49
|
+
- Recover from a failed save.
|