Skip to content

Commit 5a0e66b

Browse files
committed
docs: fix remaining review issues and align API claims
1 parent 9162db6 commit 5a0e66b

29 files changed

Lines changed: 252 additions & 264 deletions

File tree

.claude/skills/rezi-add-widget/SKILL.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -56,8 +56,8 @@ Use this skill when:
5656

5757
6. **Add design system support** (if the widget is interactive):
5858
- Register the new widget kind in `packages/core/src/widgets/protocol.ts`
59-
- Add DS props as needed (`dsVariant`, `dsTone`, `dsSize`) to the widget's props type
60-
- Wire recipe-based rendering so DS styling auto-activates when `ThemeDefinition` semantic tokens are available (no `dsVariant` required for baseline styling)
59+
- Add optional DS props as needed (`dsVariant?`, `dsTone?`, `dsSize?`) for advanced customization
60+
- Wire recipe-based rendering so baseline DS styling auto-activates when `ThemeDefinition` semantic tokens are available; DS props override defaults when specified
6161
- See `docs/guide/widget-authoring.md` for the full pattern
6262

6363
7. **Export** both props type and factory from `packages/core/src/index.ts`

.claude/skills/rezi-create-screen/SKILL.md

Lines changed: 3 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -50,7 +50,7 @@ Use this skill when:
5050
})
5151
```
5252

53-
Use `dsVariant` / `dsTone` / `dsSize` only when you need finer control.
53+
Use `dsVariant`, `dsTone`, or `dsSize` only when you need finer control.
5454

5555
2. **Use `ui.column()` or `ui.row()`** as the root container
5656

@@ -61,20 +61,18 @@ Use this skill when:
6161
const AnimatedScreen = defineWidget<{ target: number }>((props, ctx) => {
6262
const drift = useTransition(ctx, props.target, {
6363
duration: 180,
64-
easing: "easeOutExpo",
65-
onComplete: () => console.log("drift transition complete"),
64+
easing: "easeOutCubic",
6665
});
6766
const spring = useSpring(ctx, props.target, {
6867
stiffness: 190,
6968
damping: 22,
70-
onComplete: () => console.log("spring settle complete"),
7169
});
7270

7371
return ui.box(
7472
{
7573
width: Math.round(20 + drift),
7674
opacity: Math.max(0.35, Math.min(1, spring / 100)),
77-
transition: { duration: 180, easing: "easeOutBounce", properties: ["size", "opacity"] },
75+
transition: { duration: 180, easing: "easeInOutCubic", properties: ["size", "opacity"] },
7876
},
7977
[ui.text("Animated screen")],
8078
);

.claude/skills/rezi-forms/SKILL.md

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -45,12 +45,12 @@ Use this skill when:
4545
ui.field({
4646
label: "Name",
4747
error: form.errors.name,
48-
children: ui.input({ ...form.bind("name") }),
48+
children: ui.input({ id: "field-name", ...form.bind("name") }),
4949
}),
5050
ui.field({
5151
label: "Email",
5252
error: form.errors.email,
53-
children: ui.input({ ...form.bind("email") }),
53+
children: ui.input({ id: "field-email", ...form.bind("email") }),
5454
}),
5555
ui.button({ id: "submit", label: "Submit", intent: "primary", onPress: form.submit }),
5656
]);
@@ -65,7 +65,8 @@ Use this skill when:
6565

6666
## Design system note
6767

68-
Inputs are recipe-styled by default when a `ThemeDefinition` preset is active.
68+
Inputs are recipe-styled by default when semantic color tokens are available (for example via a `ThemeDefinition` preset).
69+
Manual overrides merge on top via the same `mergeTextStyle(baseStyle, ownStyle)` pattern used by the renderer.
6970
Use manual `style` only for targeted overrides (merged on top of recipe output).
7071

7172
## Verification

.claude/skills/rezi-keybindings/SKILL.md

Lines changed: 5 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -48,14 +48,13 @@ Use this skill when:
4848
ui.keybindingHelp(app.getBindings())
4949
```
5050

51-
## Overlay shortcut enforcement
51+
## Overlay shortcut hints
5252

53-
Dropdown and CommandPalette item shortcuts are enforced automatically while the
54-
overlay is open.
53+
Dropdown and CommandPalette `shortcut` fields are currently display/search hints.
5554

56-
- Declaring `shortcut: "Ctrl+S"` on a dropdown item makes `Ctrl+S` trigger that item.
57-
- Declaring `shortcut: "Ctrl+S"` on a command palette item does the same.
58-
- No manual `app.keys()` registration is needed for these overlay-local shortcuts.
55+
- `routeDropdownKey(...)` handles navigation keys (`Up`, `Down`, `Enter`, `Space`, `Escape`).
56+
- CommandPalette shows shortcut text and uses it in filtering, but does not auto-bind combos.
57+
- Register real shortcut combos explicitly with `app.keys()` or `app.modes()`.
5958

6059
## Key format reference
6160

.claude/skills/rezi-write-tests/SKILL.md

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -85,10 +85,10 @@ Use this skill when:
8585
- table emits `action: "rowPress"` with `rowIndex`
8686
- radio/select flows emit `action: "change"`
8787

88-
10. **For animation `onComplete` behavior**, test:
89-
- callback fires on finite completion
90-
- callback does not fire for retargeted mid-flight runs
91-
- callback does not fire for looping sequences
88+
10. **For animation hook behavior**, test:
89+
- supported easing presets (`linear`, quad, cubic) resolve as expected
90+
- retargeted mid-flight runs continue smoothly without jumping
91+
- looping sequences (`loop: true`) remain active and deterministic
9292

9393
## Running tests
9494

.codex/skills/rezi-add-widget/SKILL.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -56,8 +56,8 @@ Use this skill when:
5656

5757
6. **Add design system support** (if the widget is interactive):
5858
- Register the new widget kind in `packages/core/src/widgets/protocol.ts`
59-
- Add DS props as needed (`dsVariant`, `dsTone`, `dsSize`) to the widget's props type
60-
- Wire recipe-based rendering so DS styling auto-activates when `ThemeDefinition` semantic tokens are available (no `dsVariant` required for baseline styling)
59+
- Add optional DS props as needed (`dsVariant?`, `dsTone?`, `dsSize?`) for advanced customization
60+
- Wire recipe-based rendering so baseline DS styling auto-activates when `ThemeDefinition` semantic tokens are available; DS props override defaults when specified
6161
- See `docs/guide/widget-authoring.md` for the full pattern
6262

6363
7. **Export** both props type and factory from `packages/core/src/index.ts`

.codex/skills/rezi-create-screen/SKILL.md

Lines changed: 3 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -50,7 +50,7 @@ Use this skill when:
5050
})
5151
```
5252

53-
Use `dsVariant` / `dsTone` / `dsSize` only when you need finer control.
53+
Use `dsVariant`, `dsTone`, or `dsSize` only when you need finer control.
5454

5555
2. **Use `ui.column()` or `ui.row()`** as the root container
5656

@@ -61,20 +61,18 @@ Use this skill when:
6161
const AnimatedScreen = defineWidget<{ target: number }>((props, ctx) => {
6262
const drift = useTransition(ctx, props.target, {
6363
duration: 180,
64-
easing: "easeOutExpo",
65-
onComplete: () => console.log("drift transition complete"),
64+
easing: "easeOutCubic",
6665
});
6766
const spring = useSpring(ctx, props.target, {
6867
stiffness: 190,
6968
damping: 22,
70-
onComplete: () => console.log("spring settle complete"),
7169
});
7270

7371
return ui.box(
7472
{
7573
width: Math.round(20 + drift),
7674
opacity: Math.max(0.35, Math.min(1, spring / 100)),
77-
transition: { duration: 180, easing: "easeOutBounce", properties: ["size", "opacity"] },
75+
transition: { duration: 180, easing: "easeInOutCubic", properties: ["size", "opacity"] },
7876
},
7977
[ui.text("Animated screen")],
8078
);

.codex/skills/rezi-forms/SKILL.md

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -45,12 +45,12 @@ Use this skill when:
4545
ui.field({
4646
label: "Name",
4747
error: form.errors.name,
48-
children: ui.input({ ...form.bind("name") }),
48+
children: ui.input({ id: "field-name", ...form.bind("name") }),
4949
}),
5050
ui.field({
5151
label: "Email",
5252
error: form.errors.email,
53-
children: ui.input({ ...form.bind("email") }),
53+
children: ui.input({ id: "field-email", ...form.bind("email") }),
5454
}),
5555
ui.button({ id: "submit", label: "Submit", intent: "primary", onPress: form.submit }),
5656
]);
@@ -65,7 +65,8 @@ Use this skill when:
6565

6666
## Design system note
6767

68-
Inputs are recipe-styled by default when a `ThemeDefinition` preset is active.
68+
Inputs are recipe-styled by default when semantic color tokens are available (for example via a `ThemeDefinition` preset).
69+
Manual overrides merge on top via the same `mergeTextStyle(baseStyle, ownStyle)` pattern used by the renderer.
6970
Use manual `style` only for targeted overrides (merged on top of recipe output).
7071

7172
## Verification

.codex/skills/rezi-keybindings/SKILL.md

Lines changed: 5 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -48,14 +48,13 @@ Use this skill when:
4848
ui.keybindingHelp(app.getBindings())
4949
```
5050

51-
## Overlay shortcut enforcement
51+
## Overlay shortcut hints
5252

53-
Dropdown and CommandPalette item shortcuts are enforced automatically while the
54-
overlay is open.
53+
Dropdown and CommandPalette `shortcut` fields are currently display/search hints.
5554

56-
- Declaring `shortcut: "Ctrl+S"` on a dropdown item makes `Ctrl+S` trigger that item.
57-
- Declaring `shortcut: "Ctrl+S"` on a command palette item does the same.
58-
- No manual `app.keys()` registration is needed for these overlay-local shortcuts.
55+
- `routeDropdownKey(...)` handles navigation keys (`Up`, `Down`, `Enter`, `Space`, `Escape`).
56+
- CommandPalette shows shortcut text and uses it in filtering, but does not auto-bind combos.
57+
- Register real shortcut combos explicitly with `app.keys()` or `app.modes()`.
5958

6059
## Key format reference
6160

.codex/skills/rezi-write-tests/SKILL.md

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -85,10 +85,10 @@ Use this skill when:
8585
- table emits `action: "rowPress"` with `rowIndex`
8686
- radio/select flows emit `action: "change"`
8787

88-
10. **For animation `onComplete` behavior**, test:
89-
- callback fires on finite completion
90-
- callback does not fire for retargeted mid-flight runs
91-
- callback does not fire for looping sequences
88+
10. **For animation hook behavior**, test:
89+
- supported easing presets (`linear`, quad, cubic) resolve as expected
90+
- retargeted mid-flight runs continue smoothly without jumping
91+
- looping sequences (`loop: true`) remain active and deterministic
9292

9393
## Running tests
9494

0 commit comments

Comments
 (0)