1.8 KiB
1.8 KiB
AGENTS.md - Vue storybook parity rules
Scope
- Scope:
examples/v2/vue/storybook/**. - Goal: visual and story-structure parity with
examples/v2/react/storybook/**.
Source of truth
- Treat React story names, grouping, and scenario intent as canonical.
- Mirror stories one-by-one with equivalent Vue components as they are ported.
- Keep story file ownership close to React so each Vue story maps directly to its React counterpart.
Parity constraints
- If React has no Storybook equivalent for a shipped Vue parity feature, a Vue-only parity story is allowed and should be marked explicitly as a parity bridge.
- Story titles should stay aligned with React naming to preserve comparison clarity.
- Avoid introducing Vue-only scaffold abstractions that make React↔Vue story diffs harder to follow.
Implementation guidance
- Start with placeholder/minimal parity stories when a Vue component exists but is incomplete.
- Upgrade each story to full behavior parity as the corresponding Vue primitive lands.
- Prefer stable, deterministic props/data so visual comparisons remain consistent.
Story Completion Checklist (Blocking)
For each ported user-visible Vue feature, story parity is complete only if all items below are true.
- There is a Vue story that maps to the corresponding React story intent.
- Story title/grouping is aligned with React naming.
- Core interaction states are represented (default, active/loading, error/fallback where applicable).
- Slot/customization behavior is demonstrated when the feature uses Vue slots.
- Story data is deterministic and stable for side-by-side React↔Vue comparison.
- Story build and dev both succeed (
storybook build,storybook dev).
Validation
Run after meaningful changes:
pnpm -C examples/v2/vue/storybook devpnpm -C examples/v2/vue/storybook build