@bonesofspring/ai-rules 0.2.14 → 0.2.15
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/CHANGELOG.md +16 -1
- package/package.json +2 -1
- package/presets/_shared/core/agent-team/agent-team-intake.md +2 -2
- package/presets/_shared/core/agent-team/agent-team-orchestrator.md +4 -4
- package/presets/_shared/core/architecture/feature-delivery-workflow.md +27 -27
- package/presets/_shared/core/architecture/reference-features.template.md +23 -23
- package/presets/_shared/core/meta/preset-layering.md +12 -12
- package/presets/_shared/core/meta/preset-no-cross-stack-leakage.md +1 -1
- package/presets/_shared/core/meta/preset-pr-checklist.md +6 -6
- package/presets/_shared/core/meta/preset-token-budget.md +3 -3
- package/presets/_shared/core/quality/code-quality-and-refactoring.md +19 -19
- package/presets/_shared/core/quality/design-guidance.md +54 -54
- package/presets/_shared/core/review/code-review-mr.md +4 -4
- package/presets/_shared/core/review/technical-retro.md +3 -3
- package/presets/claude/go/MCP.md +7 -7
- package/presets/claude/go/README.md +3 -3
- package/presets/claude/go/agents/README.md +2 -2
- package/presets/claude/go/agents/task-router.md +13 -13
- package/presets/claude/go/commands/README.md +8 -8
- package/presets/claude/go/commands/feature-continue.md +21 -21
- package/presets/claude/go/commands/feature-start.md +16 -16
- package/presets/claude/go/commands/task-continue.md +14 -14
- package/presets/claude/go/commands/task.md +32 -32
- package/presets/claude/go/commands/technical-retro.md +38 -38
- package/presets/claude/go/rules/architecture/boundaries.md +10 -10
- package/presets/claude/go/rules/stack/README.md +1 -1
- package/presets/claude/go/rules/stack/go-app-core.md +11 -11
- package/presets/claude/go/rules/tooling-and-review/README.md +1 -1
- package/presets/claude/go/rules/tooling-and-review/agent-team-intake.md +2 -2
- package/presets/claude/go/rules/tooling-and-review/agent-team-orchestrator.md +4 -4
- package/presets/claude/go/rules/tooling-and-review/code-quality.md +21 -20
- package/presets/claude/go/rules/tooling-and-review/code-review.md +4 -4
- package/presets/claude/go/rules/tooling-and-review/design-guidance.md +54 -54
- package/presets/claude/go/rules/tooling-and-review/post-change-test.md +1 -1
- package/presets/claude/go/rules/tooling-and-review/preset-layering.md +12 -13
- package/presets/claude/go/rules/tooling-and-review/preset-no-cross-stack-leakage.md +1 -2
- package/presets/claude/go/rules/tooling-and-review/preset-pr-checklist.md +6 -7
- package/presets/claude/go/rules/tooling-and-review/preset-token-budget.md +3 -4
- package/presets/claude/go/rules/tooling-and-review/preset-twin-sync.md +0 -1
- package/presets/claude/go/rules/tooling-and-review/technical-retro.md +3 -3
- package/presets/claude/go/team/README.md +1 -1
- package/presets/claude/ios-swift/CLAUDE.md +16 -16
- package/presets/claude/ios-swift/MCP.md +10 -8
- package/presets/claude/ios-swift/README.md +8 -8
- package/presets/claude/ios-swift/agents/README.md +11 -11
- package/presets/claude/ios-swift/agents/feature-developer.md +1 -1
- package/presets/claude/ios-swift/agents/task-analyst.md +1 -1
- package/presets/claude/ios-swift/agents/task-router.md +18 -18
- package/presets/claude/ios-swift/commands/README.md +48 -10
- package/presets/claude/ios-swift/commands/feature-continue.md +9 -41
- package/presets/claude/ios-swift/commands/feature-start.md +19 -16
- package/presets/claude/ios-swift/commands/task-continue.md +14 -14
- package/presets/claude/ios-swift/commands/task.md +33 -33
- package/presets/claude/ios-swift/commands/technical-retro.md +61 -38
- package/presets/claude/ios-swift/rules/README.md +7 -7
- package/presets/claude/ios-swift/rules/api-and-data/README.md +1 -1
- package/presets/claude/ios-swift/rules/api-and-data/networking.md +31 -31
- package/presets/claude/ios-swift/rules/api-and-data/persistence.md +13 -13
- package/presets/claude/ios-swift/rules/architecture/README.md +1 -1
- package/presets/claude/ios-swift/rules/architecture/boundaries.md +20 -20
- package/presets/claude/ios-swift/rules/architecture/feature-delivery.md +31 -30
- package/presets/claude/ios-swift/rules/architecture/module-public-api.md +11 -11
- package/presets/claude/ios-swift/rules/architecture/reference-features.md +25 -22
- package/presets/claude/ios-swift/rules/stack/README.md +1 -1
- package/presets/claude/ios-swift/rules/stack/ios-app-core.md +10 -10
- package/presets/claude/ios-swift/rules/stack/swift-conventions.md +17 -17
- package/presets/claude/ios-swift/rules/testing/README.md +1 -1
- package/presets/claude/ios-swift/rules/testing/ui.md +27 -27
- package/presets/claude/ios-swift/rules/testing/unit.md +25 -25
- package/presets/claude/ios-swift/rules/tooling-and-review/README.md +5 -2
- package/presets/claude/ios-swift/rules/tooling-and-review/agent-team-intake.md +2 -2
- package/presets/claude/ios-swift/rules/tooling-and-review/agent-team-orchestrator.md +51 -21
- package/presets/claude/ios-swift/rules/tooling-and-review/code-quality.md +25 -24
- package/presets/claude/ios-swift/rules/tooling-and-review/code-review.md +40 -39
- package/presets/claude/ios-swift/rules/tooling-and-review/design-guidance.md +54 -54
- package/presets/claude/ios-swift/rules/tooling-and-review/post-change-build.md +18 -18
- package/presets/claude/ios-swift/rules/tooling-and-review/preset-layering.md +12 -13
- package/presets/claude/ios-swift/rules/tooling-and-review/preset-no-cross-stack-leakage.md +1 -2
- package/presets/claude/ios-swift/rules/tooling-and-review/preset-pr-checklist.md +6 -7
- package/presets/claude/ios-swift/rules/tooling-and-review/preset-token-budget.md +3 -4
- package/presets/claude/ios-swift/rules/tooling-and-review/preset-twin-sync.md +0 -1
- package/presets/claude/ios-swift/rules/tooling-and-review/security-ios.md +14 -14
- package/presets/claude/ios-swift/rules/tooling-and-review/technical-retro.md +4 -4
- package/presets/claude/ios-swift/rules/tooling-and-review/xcode-tooling.md +11 -11
- package/presets/claude/ios-swift/rules/ui-and-accessibility/README.md +1 -1
- package/presets/claude/ios-swift/rules/ui-and-accessibility/navigation.md +13 -13
- package/presets/claude/ios-swift/rules/ui-and-accessibility/swiftui.md +39 -39
- package/presets/claude/ios-swift/rules/ui-and-accessibility/viewmodels.md +24 -24
- package/presets/claude/ios-swift/skills/README.md +3 -3
- package/presets/claude/ios-swift/team/README.md +6 -2
- package/presets/claude/java/MCP.md +5 -5
- package/presets/claude/java/agents/README.md +2 -2
- package/presets/claude/java/agents/task-router.md +13 -13
- package/presets/claude/java/commands/README.md +8 -8
- package/presets/claude/java/commands/feature-continue.md +21 -21
- package/presets/claude/java/commands/feature-start.md +16 -16
- package/presets/claude/java/commands/task-continue.md +14 -14
- package/presets/claude/java/commands/task.md +32 -32
- package/presets/claude/java/commands/technical-retro.md +38 -38
- package/presets/claude/java/rules/architecture/boundaries.md +10 -10
- package/presets/claude/java/rules/stack/README.md +1 -1
- package/presets/claude/java/rules/stack/java-app-core.md +9 -9
- package/presets/claude/java/rules/tooling-and-review/README.md +1 -1
- package/presets/claude/java/rules/tooling-and-review/agent-team-intake.md +2 -2
- package/presets/claude/java/rules/tooling-and-review/agent-team-orchestrator.md +4 -4
- package/presets/claude/java/rules/tooling-and-review/code-quality.md +21 -20
- package/presets/claude/java/rules/tooling-and-review/code-review.md +5 -4
- package/presets/claude/java/rules/tooling-and-review/design-guidance.md +55 -54
- package/presets/claude/java/rules/tooling-and-review/post-change-test.md +1 -1
- package/presets/claude/java/rules/tooling-and-review/preset-layering.md +12 -13
- package/presets/claude/java/rules/tooling-and-review/preset-no-cross-stack-leakage.md +1 -2
- package/presets/claude/java/rules/tooling-and-review/preset-pr-checklist.md +6 -7
- package/presets/claude/java/rules/tooling-and-review/preset-token-budget.md +3 -4
- package/presets/claude/java/rules/tooling-and-review/preset-twin-sync.md +0 -1
- package/presets/claude/java/rules/tooling-and-review/technical-retro.md +3 -3
- package/presets/claude/java/team/README.md +1 -1
- package/presets/claude/mcp-ts/MCP.md +5 -5
- package/presets/claude/mcp-ts/agents/task-router.md +7 -7
- package/presets/claude/mcp-ts/commands/README.md +1 -1
- package/presets/claude/mcp-ts/commands/feature-continue.md +8 -8
- package/presets/claude/mcp-ts/commands/feature-start.md +17 -17
- package/presets/claude/mcp-ts/commands/task-continue.md +14 -14
- package/presets/claude/mcp-ts/commands/task.md +32 -32
- package/presets/claude/mcp-ts/commands/technical-retro.md +54 -54
- package/presets/claude/mcp-ts/rules/architecture/mcp-server-boundaries.md +2 -2
- package/presets/claude/mcp-ts/rules/stack/mcp-ts-app-core.md +9 -9
- package/presets/claude/mcp-ts/rules/tooling-and-review/agent-team-intake.md +3 -3
- package/presets/claude/mcp-ts/rules/tooling-and-review/agent-team-orchestrator.md +4 -4
- package/presets/claude/mcp-ts/rules/tooling-and-review/code-quality.md +21 -20
- package/presets/claude/mcp-ts/rules/tooling-and-review/code-review.md +5 -4
- package/presets/claude/mcp-ts/rules/tooling-and-review/design-guidance.md +55 -54
- package/presets/claude/mcp-ts/rules/tooling-and-review/post-change-test.md +1 -1
- package/presets/claude/mcp-ts/rules/tooling-and-review/preset-layering.md +12 -13
- package/presets/claude/mcp-ts/rules/tooling-and-review/preset-no-cross-stack-leakage.md +1 -2
- package/presets/claude/mcp-ts/rules/tooling-and-review/preset-pr-checklist.md +6 -7
- package/presets/claude/mcp-ts/rules/tooling-and-review/preset-token-budget.md +3 -4
- package/presets/claude/mcp-ts/rules/tooling-and-review/preset-twin-sync.md +0 -1
- package/presets/claude/mcp-ts/rules/tooling-and-review/technical-retro.md +3 -3
- package/presets/claude/next/CLAUDE.md +17 -17
- package/presets/claude/next/MCP.md +8 -8
- package/presets/claude/next/README.md +16 -16
- package/presets/claude/next/agents/README.md +19 -19
- package/presets/claude/next/agents/feature-developer.md +1 -1
- package/presets/claude/next/agents/task-analyst.md +1 -1
- package/presets/claude/next/agents/task-router.md +16 -16
- package/presets/claude/next/commands/README.md +9 -9
- package/presets/claude/next/commands/feature-continue.md +21 -21
- package/presets/claude/next/commands/feature-start.md +16 -16
- package/presets/claude/next/commands/task-continue.md +14 -14
- package/presets/claude/next/commands/task.md +33 -33
- package/presets/claude/next/commands/technical-retro.md +38 -38
- package/presets/claude/next/rules/README.md +12 -12
- package/presets/claude/next/rules/api-and-data/README.md +6 -6
- package/presets/claude/next/rules/api-and-data/api-services.md +42 -42
- package/presets/claude/next/rules/api-and-data/http-client.md +22 -21
- package/presets/claude/next/rules/api-and-data/store-rtk.md +60 -60
- package/presets/claude/next/rules/architecture/README.md +8 -8
- package/presets/claude/next/rules/architecture/architecture-boundaries-ui.md +6 -6
- package/presets/claude/next/rules/architecture/architecture-boundaries.md +44 -44
- package/presets/claude/next/rules/architecture/feature-delivery-workflow.md +39 -39
- package/presets/claude/next/rules/architecture/layer-barrel-exports.md +30 -29
- package/presets/claude/next/rules/architecture/public-imports.md +13 -13
- package/presets/claude/next/rules/architecture/reference-features.md +16 -16
- package/presets/claude/next/rules/stack/README.md +9 -9
- package/presets/claude/next/rules/stack/arrow-functions.md +7 -7
- package/presets/claude/next/rules/stack/navigation-router-ui.md +6 -6
- package/presets/claude/next/rules/stack/navigation-router.md +37 -37
- package/presets/claude/next/rules/stack/next-app-core.md +17 -17
- package/presets/claude/next/rules/stack/next-app-router.md +17 -17
- package/presets/claude/next/rules/stack/no-type-assertion.md +28 -28
- package/presets/claude/next/rules/stack/types-jsdoc.md +31 -20
- package/presets/claude/next/rules/testing/README.md +5 -5
- package/presets/claude/next/rules/testing/playwright-agents.md +1 -1
- package/presets/claude/next/rules/testing/tests-e2e-structure.md +48 -47
- package/presets/claude/next/rules/testing/tests-unit.md +50 -51
- package/presets/claude/next/rules/tooling-and-review/README.md +9 -9
- package/presets/claude/next/rules/tooling-and-review/agent-team-intake.md +2 -2
- package/presets/claude/next/rules/tooling-and-review/agent-team-orchestrator.md +4 -4
- package/presets/claude/next/rules/tooling-and-review/code-quality.md +25 -24
- package/presets/claude/next/rules/tooling-and-review/code-review-mr.md +4 -4
- package/presets/claude/next/rules/tooling-and-review/design-guidance.md +54 -54
- package/presets/claude/next/rules/tooling-and-review/package-manager.md +7 -7
- package/presets/claude/next/rules/tooling-and-review/post-change-lint.md +22 -22
- package/presets/claude/next/rules/tooling-and-review/preset-layering.md +12 -13
- package/presets/claude/next/rules/tooling-and-review/preset-no-cross-stack-leakage.md +1 -2
- package/presets/claude/next/rules/tooling-and-review/preset-pr-checklist.md +6 -7
- package/presets/claude/next/rules/tooling-and-review/preset-token-budget.md +3 -4
- package/presets/claude/next/rules/tooling-and-review/preset-twin-sync.md +0 -1
- package/presets/claude/next/rules/tooling-and-review/technical-retro.md +4 -4
- package/presets/claude/next/rules/ui-and-accessibility/README.md +7 -7
- package/presets/claude/next/rules/ui-and-accessibility/css-property-order.md +3 -3
- package/presets/claude/next/rules/ui-and-accessibility/no-props-spread.md +18 -18
- package/presets/claude/next/rules/ui-and-accessibility/react-a11y-coding.md +20 -20
- package/presets/claude/next/rules/ui-and-accessibility/react-ui.md +63 -63
- package/presets/claude/next/skills/README.md +4 -4
- package/presets/claude/next/skills/feature-delivery/SKILL.md +1 -1
- package/presets/claude/next/team/README.md +2 -2
- package/presets/claude/nuxt/CLAUDE.md +19 -19
- package/presets/claude/nuxt/MCP.md +8 -8
- package/presets/claude/nuxt/README.md +18 -18
- package/presets/claude/nuxt/agents/README.md +38 -31
- package/presets/claude/nuxt/agents/feature-developer.md +1 -1
- package/presets/claude/nuxt/agents/task-analyst.md +1 -1
- package/presets/claude/nuxt/agents/task-router.md +22 -22
- package/presets/claude/nuxt/commands/README.md +48 -10
- package/presets/claude/nuxt/commands/feature-continue.md +9 -41
- package/presets/claude/nuxt/commands/feature-start.md +19 -16
- package/presets/claude/nuxt/commands/task-continue.md +14 -14
- package/presets/claude/nuxt/commands/task.md +33 -33
- package/presets/claude/nuxt/commands/technical-retro.md +61 -38
- package/presets/claude/nuxt/rules/README.md +5 -5
- package/presets/claude/nuxt/rules/api-and-data/README.md +6 -6
- package/presets/claude/nuxt/rules/api-and-data/api-services.md +44 -43
- package/presets/claude/nuxt/rules/api-and-data/store-pinia.md +27 -26
- package/presets/claude/nuxt/rules/architecture/README.md +8 -8
- package/presets/claude/nuxt/rules/architecture/architecture-boundaries-ui.md +8 -7
- package/presets/claude/nuxt/rules/architecture/architecture-boundaries.md +59 -58
- package/presets/claude/nuxt/rules/architecture/feature-delivery-workflow.md +45 -44
- package/presets/claude/nuxt/rules/architecture/layer-barrel-exports.md +32 -31
- package/presets/claude/nuxt/rules/architecture/public-imports.md +15 -14
- package/presets/claude/nuxt/rules/architecture/reference-features.md +18 -17
- package/presets/claude/nuxt/rules/stack/README.md +8 -8
- package/presets/claude/nuxt/rules/stack/navigation-router-ui.md +6 -6
- package/presets/claude/nuxt/rules/stack/navigation-router.md +37 -37
- package/presets/claude/nuxt/rules/stack/no-type-assertion.md +30 -29
- package/presets/claude/nuxt/rules/stack/nuxt-app-core.md +17 -16
- package/presets/claude/nuxt/rules/stack/types-jsdoc.md +23 -22
- package/presets/claude/nuxt/rules/testing/README.md +5 -5
- package/presets/claude/nuxt/rules/testing/tests-e2e-structure.md +45 -45
- package/presets/claude/nuxt/rules/testing/tests-unit.md +52 -52
- package/presets/claude/nuxt/rules/tooling-and-review/README.md +9 -9
- package/presets/claude/nuxt/rules/tooling-and-review/agent-team-intake.md +3 -2
- package/presets/claude/nuxt/rules/tooling-and-review/agent-team-orchestrator.md +5 -4
- package/presets/claude/nuxt/rules/tooling-and-review/anti-sycophancy-discipline.md +1 -0
- package/presets/claude/nuxt/rules/tooling-and-review/code-quality.md +26 -24
- package/presets/claude/nuxt/rules/tooling-and-review/code-review-mr.md +6 -5
- package/presets/claude/nuxt/rules/tooling-and-review/design-guidance.md +55 -54
- package/presets/claude/nuxt/rules/tooling-and-review/package-manager.md +9 -8
- package/presets/claude/nuxt/rules/tooling-and-review/post-change-lint.md +24 -23
- package/presets/claude/nuxt/rules/tooling-and-review/preset-layering.md +13 -13
- package/presets/claude/nuxt/rules/tooling-and-review/preset-no-cross-stack-leakage.md +2 -2
- package/presets/claude/nuxt/rules/tooling-and-review/preset-pr-checklist.md +7 -7
- package/presets/claude/nuxt/rules/tooling-and-review/preset-token-budget.md +3 -4
- package/presets/claude/nuxt/rules/tooling-and-review/preset-twin-sync.md +1 -1
- package/presets/claude/nuxt/rules/tooling-and-review/technical-retro.md +5 -4
- package/presets/claude/nuxt/rules/ui-and-accessibility/README.md +7 -7
- package/presets/claude/nuxt/rules/ui-and-accessibility/vue-ui.md +7 -6
- package/presets/claude/nuxt/skills/README.md +4 -4
- package/presets/claude/nuxt/skills/feature-delivery/SKILL.md +1 -1
- package/presets/claude/nuxt/team/README.md +8 -4
- package/presets/claude/php-hexagonal/MCP.md +7 -7
- package/presets/claude/php-hexagonal/agents/README.md +3 -3
- package/presets/claude/php-hexagonal/agents/task-router.md +12 -12
- package/presets/claude/php-hexagonal/commands/README.md +9 -9
- package/presets/claude/php-hexagonal/commands/feature-continue.md +21 -21
- package/presets/claude/php-hexagonal/commands/feature-start.md +16 -16
- package/presets/claude/php-hexagonal/commands/task-continue.md +14 -14
- package/presets/claude/php-hexagonal/commands/task.md +32 -32
- package/presets/claude/php-hexagonal/commands/technical-retro.md +38 -38
- package/presets/claude/php-hexagonal/rules/architecture/boundaries.md +11 -10
- package/presets/claude/php-hexagonal/rules/stack/README.md +1 -1
- package/presets/claude/php-hexagonal/rules/stack/php-app-core.md +11 -10
- package/presets/claude/php-hexagonal/rules/tooling-and-review/README.md +1 -1
- package/presets/claude/php-hexagonal/rules/tooling-and-review/agent-team-intake.md +2 -2
- package/presets/claude/php-hexagonal/rules/tooling-and-review/agent-team-orchestrator.md +4 -4
- package/presets/claude/php-hexagonal/rules/tooling-and-review/code-quality.md +21 -21
- package/presets/claude/php-hexagonal/rules/tooling-and-review/code-review.md +4 -4
- package/presets/claude/php-hexagonal/rules/tooling-and-review/design-guidance.md +54 -54
- package/presets/claude/php-hexagonal/rules/tooling-and-review/post-change-test.md +1 -1
- package/presets/claude/php-hexagonal/rules/tooling-and-review/preset-layering.md +12 -13
- package/presets/claude/php-hexagonal/rules/tooling-and-review/preset-no-cross-stack-leakage.md +1 -2
- package/presets/claude/php-hexagonal/rules/tooling-and-review/preset-pr-checklist.md +6 -7
- package/presets/claude/php-hexagonal/rules/tooling-and-review/preset-token-budget.md +3 -4
- package/presets/claude/php-hexagonal/rules/tooling-and-review/preset-twin-sync.md +0 -1
- package/presets/claude/php-hexagonal/rules/tooling-and-review/technical-retro.md +3 -3
- package/presets/claude/php-hexagonal/team/README.md +1 -1
- package/presets/claude/php-laravel/agents/README.md +3 -3
- package/presets/claude/php-laravel/agents/task-router.md +14 -14
- package/presets/claude/php-laravel/commands/README.md +9 -9
- package/presets/claude/php-laravel/commands/feature-continue.md +21 -21
- package/presets/claude/php-laravel/commands/feature-start.md +16 -16
- package/presets/claude/php-laravel/commands/task-continue.md +14 -14
- package/presets/claude/php-laravel/commands/task.md +32 -32
- package/presets/claude/php-laravel/commands/technical-retro.md +38 -38
- package/presets/claude/php-laravel/rules/api-and-data/events-listeners.md +1 -1
- package/presets/claude/php-laravel/rules/architecture/boundaries.md +11 -11
- package/presets/claude/php-laravel/rules/stack/laravel-app-core.md +8 -8
- package/presets/claude/php-laravel/rules/tooling-and-review/agent-team-intake.md +3 -2
- package/presets/claude/php-laravel/rules/tooling-and-review/agent-team-orchestrator.md +4 -4
- package/presets/claude/php-laravel/rules/tooling-and-review/code-quality.md +21 -20
- package/presets/claude/php-laravel/rules/tooling-and-review/code-review.md +4 -5
- package/presets/claude/php-laravel/rules/tooling-and-review/design-guidance.md +54 -54
- package/presets/claude/php-laravel/rules/tooling-and-review/post-change-test.md +1 -1
- package/presets/claude/php-laravel/rules/tooling-and-review/preset-layering.md +13 -13
- package/presets/claude/php-laravel/rules/tooling-and-review/preset-no-cross-stack-leakage.md +2 -2
- package/presets/claude/php-laravel/rules/tooling-and-review/preset-pr-checklist.md +7 -7
- package/presets/claude/php-laravel/rules/tooling-and-review/preset-token-budget.md +4 -4
- package/presets/claude/php-laravel/rules/tooling-and-review/preset-twin-sync.md +1 -1
- package/presets/claude/php-laravel/rules/tooling-and-review/technical-retro.md +4 -3
- package/presets/claude/php-laravel/team/README.md +1 -1
- package/presets/claude/svelte/CLAUDE.md +17 -17
- package/presets/claude/svelte/MCP.md +8 -8
- package/presets/claude/svelte/README.md +1 -1
- package/presets/claude/svelte/agents/README.md +37 -30
- package/presets/claude/svelte/agents/feature-developer.md +1 -1
- package/presets/claude/svelte/agents/task-analyst.md +1 -1
- package/presets/claude/svelte/agents/task-router.md +19 -18
- package/presets/claude/svelte/commands/README.md +48 -10
- package/presets/claude/svelte/commands/feature-continue.md +9 -41
- package/presets/claude/svelte/commands/feature-start.md +19 -16
- package/presets/claude/svelte/commands/task-continue.md +14 -14
- package/presets/claude/svelte/commands/task.md +33 -33
- package/presets/claude/svelte/commands/technical-retro.md +61 -38
- package/presets/claude/svelte/rules/README.md +2 -2
- package/presets/claude/svelte/rules/api-and-data/README.md +6 -6
- package/presets/claude/svelte/rules/api-and-data/api-services.md +14 -14
- package/presets/claude/svelte/rules/api-and-data/store-svelte.md +26 -26
- package/presets/claude/svelte/rules/architecture/README.md +8 -8
- package/presets/claude/svelte/rules/architecture/architecture-boundaries-ui.md +7 -7
- package/presets/claude/svelte/rules/architecture/architecture-boundaries.md +19 -19
- package/presets/claude/svelte/rules/architecture/feature-delivery-workflow.md +26 -26
- package/presets/claude/svelte/rules/architecture/layer-barrel-exports.md +31 -31
- package/presets/claude/svelte/rules/architecture/public-imports.md +8 -8
- package/presets/claude/svelte/rules/architecture/reference-features.md +18 -18
- package/presets/claude/svelte/rules/stack/README.md +8 -8
- package/presets/claude/svelte/rules/stack/navigation-router-ui.md +1 -1
- package/presets/claude/svelte/rules/stack/navigation-router.md +6 -6
- package/presets/claude/svelte/rules/stack/no-type-assertion.md +29 -29
- package/presets/claude/svelte/rules/stack/svelte-app-core.md +16 -16
- package/presets/claude/svelte/rules/stack/types-jsdoc.md +22 -22
- package/presets/claude/svelte/rules/testing/README.md +5 -5
- package/presets/claude/svelte/rules/testing/tests-e2e-structure.md +45 -46
- package/presets/claude/svelte/rules/testing/tests-unit.md +17 -17
- package/presets/claude/svelte/rules/tooling-and-review/README.md +9 -9
- package/presets/claude/svelte/rules/tooling-and-review/agent-team-intake.md +2 -2
- package/presets/claude/svelte/rules/tooling-and-review/agent-team-orchestrator.md +9 -9
- package/presets/claude/svelte/rules/tooling-and-review/code-quality.md +25 -24
- package/presets/claude/svelte/rules/tooling-and-review/code-review-mr.md +5 -5
- package/presets/claude/svelte/rules/tooling-and-review/design-guidance.md +54 -54
- package/presets/claude/svelte/rules/tooling-and-review/package-manager.md +8 -8
- package/presets/claude/svelte/rules/tooling-and-review/post-change-lint.md +23 -23
- package/presets/claude/svelte/rules/tooling-and-review/preset-layering.md +12 -13
- package/presets/claude/svelte/rules/tooling-and-review/preset-no-cross-stack-leakage.md +1 -2
- package/presets/claude/svelte/rules/tooling-and-review/preset-pr-checklist.md +6 -7
- package/presets/claude/svelte/rules/tooling-and-review/preset-token-budget.md +3 -4
- package/presets/claude/svelte/rules/tooling-and-review/preset-twin-sync.md +0 -1
- package/presets/claude/svelte/rules/tooling-and-review/technical-retro.md +4 -4
- package/presets/claude/svelte/rules/ui-and-accessibility/README.md +7 -7
- package/presets/claude/svelte/rules/ui-and-accessibility/svelte-ui.md +6 -6
- package/presets/claude/svelte/skills/README.md +4 -4
- package/presets/claude/svelte/skills/feature-delivery/SKILL.md +1 -1
- package/presets/claude/svelte/team/README.md +8 -4
- package/presets/cursor/go/AGENTS.md +10 -10
- package/presets/cursor/go/MCP.md +7 -7
- package/presets/cursor/go/README.md +4 -4
- package/presets/cursor/go/agents/README.md +3 -3
- package/presets/cursor/go/agents/task-router.md +13 -13
- package/presets/cursor/go/commands/README.md +23 -23
- package/presets/cursor/go/commands/feature-continue.md +8 -8
- package/presets/cursor/go/commands/feature-start.md +17 -17
- package/presets/cursor/go/commands/task-continue.md +14 -14
- package/presets/cursor/go/commands/task.md +32 -32
- package/presets/cursor/go/commands/technical-retro.md +49 -49
- package/presets/cursor/go/rules/README.md +3 -3
- package/presets/cursor/go/rules/agent-team-intake.mdc +2 -2
- package/presets/cursor/go/rules/agent-team-orchestrator.mdc +4 -4
- package/presets/cursor/go/rules/architecture-boundaries.mdc +10 -10
- package/presets/cursor/go/rules/code-quality-and-refactoring.mdc +21 -20
- package/presets/cursor/go/rules/code-review-mr.mdc +4 -4
- package/presets/cursor/go/rules/design-guidance.mdc +54 -54
- package/presets/cursor/go/rules/go-app-core.mdc +11 -11
- package/presets/cursor/go/rules/post-change-test.mdc +1 -1
- package/presets/cursor/go/rules/preset-layering.mdc +12 -13
- package/presets/cursor/go/rules/preset-no-cross-stack-leakage.mdc +1 -2
- package/presets/cursor/go/rules/preset-pr-checklist.mdc +6 -7
- package/presets/cursor/go/rules/preset-token-budget.mdc +3 -4
- package/presets/cursor/go/rules/preset-twin-sync.mdc +0 -1
- package/presets/cursor/go/rules/technical-retro.mdc +3 -3
- package/presets/cursor/go/team/README.md +1 -1
- package/presets/cursor/ios-swift/AGENTS.md +20 -20
- package/presets/cursor/ios-swift/MCP.md +8 -8
- package/presets/cursor/ios-swift/README.md +9 -9
- package/presets/cursor/ios-swift/agents/README.md +7 -7
- package/presets/cursor/ios-swift/agents/feature-developer.md +1 -1
- package/presets/cursor/ios-swift/agents/task-analyst.md +1 -1
- package/presets/cursor/ios-swift/agents/task-router.md +16 -16
- package/presets/cursor/ios-swift/commands/README.md +23 -23
- package/presets/cursor/ios-swift/commands/feature-continue.md +8 -8
- package/presets/cursor/ios-swift/commands/feature-start.md +17 -17
- package/presets/cursor/ios-swift/commands/task-continue.md +14 -14
- package/presets/cursor/ios-swift/commands/task.md +33 -33
- package/presets/cursor/ios-swift/commands/technical-retro.md +50 -50
- package/presets/cursor/ios-swift/rules/README.md +23 -23
- package/presets/cursor/ios-swift/rules/agent-team-intake.mdc +2 -2
- package/presets/cursor/ios-swift/rules/agent-team-orchestrator.mdc +2 -2
- package/presets/cursor/ios-swift/rules/architecture-boundaries.mdc +20 -20
- package/presets/cursor/ios-swift/rules/code-quality-and-refactoring.mdc +25 -24
- package/presets/cursor/ios-swift/rules/code-review-mr.mdc +40 -40
- package/presets/cursor/ios-swift/rules/design-guidance.mdc +54 -54
- package/presets/cursor/ios-swift/rules/feature-delivery-workflow.mdc +30 -30
- package/presets/cursor/ios-swift/rules/ios-app-core.mdc +10 -10
- package/presets/cursor/ios-swift/rules/module-public-api.mdc +11 -11
- package/presets/cursor/ios-swift/rules/navigation-coordinators.mdc +13 -13
- package/presets/cursor/ios-swift/rules/networking-services.mdc +31 -31
- package/presets/cursor/ios-swift/rules/persistence-data.mdc +13 -13
- package/presets/cursor/ios-swift/rules/post-change-build.mdc +18 -18
- package/presets/cursor/ios-swift/rules/preset-layering.mdc +12 -13
- package/presets/cursor/ios-swift/rules/preset-no-cross-stack-leakage.mdc +1 -2
- package/presets/cursor/ios-swift/rules/preset-pr-checklist.mdc +6 -7
- package/presets/cursor/ios-swift/rules/preset-token-budget.mdc +3 -4
- package/presets/cursor/ios-swift/rules/preset-twin-sync.mdc +0 -1
- package/presets/cursor/ios-swift/rules/reference-features.mdc +22 -22
- package/presets/cursor/ios-swift/rules/security-ios.mdc +14 -14
- package/presets/cursor/ios-swift/rules/state-and-viewmodels.mdc +24 -24
- package/presets/cursor/ios-swift/rules/swift-conventions.mdc +17 -17
- package/presets/cursor/ios-swift/rules/swiftui-ui.mdc +39 -39
- package/presets/cursor/ios-swift/rules/technical-retro.mdc +4 -4
- package/presets/cursor/ios-swift/rules/tests-ui.mdc +27 -26
- package/presets/cursor/ios-swift/rules/tests-unit.mdc +25 -25
- package/presets/cursor/ios-swift/rules/xcode-tooling.mdc +11 -11
- package/presets/cursor/ios-swift/skills/README.md +3 -3
- package/presets/cursor/ios-swift/team/README.md +1 -1
- package/presets/cursor/java/AGENTS.md +10 -10
- package/presets/cursor/java/MCP.md +6 -6
- package/presets/cursor/java/agents/README.md +3 -3
- package/presets/cursor/java/agents/task-router.md +13 -13
- package/presets/cursor/java/commands/README.md +23 -23
- package/presets/cursor/java/commands/feature-continue.md +8 -8
- package/presets/cursor/java/commands/feature-start.md +17 -17
- package/presets/cursor/java/commands/task-continue.md +14 -14
- package/presets/cursor/java/commands/task.md +32 -32
- package/presets/cursor/java/commands/technical-retro.md +49 -49
- package/presets/cursor/java/rules/README.md +2 -2
- package/presets/cursor/java/rules/agent-team-intake.mdc +2 -2
- package/presets/cursor/java/rules/agent-team-orchestrator.mdc +4 -4
- package/presets/cursor/java/rules/architecture-boundaries.mdc +10 -10
- package/presets/cursor/java/rules/code-quality-and-refactoring.mdc +21 -20
- package/presets/cursor/java/rules/code-review-mr.mdc +4 -4
- package/presets/cursor/java/rules/design-guidance.mdc +54 -54
- package/presets/cursor/java/rules/java-app-core.mdc +9 -9
- package/presets/cursor/java/rules/post-change-test.mdc +1 -1
- package/presets/cursor/java/rules/preset-layering.mdc +12 -13
- package/presets/cursor/java/rules/preset-no-cross-stack-leakage.mdc +1 -2
- package/presets/cursor/java/rules/preset-pr-checklist.mdc +6 -7
- package/presets/cursor/java/rules/preset-token-budget.mdc +3 -4
- package/presets/cursor/java/rules/preset-twin-sync.mdc +0 -1
- package/presets/cursor/java/rules/technical-retro.mdc +3 -3
- package/presets/cursor/java/team/README.md +1 -1
- package/presets/cursor/mcp-ts/AGENTS.md +6 -6
- package/presets/cursor/mcp-ts/MCP.md +5 -5
- package/presets/cursor/mcp-ts/agents/task-router.md +7 -7
- package/presets/cursor/mcp-ts/commands/README.md +1 -1
- package/presets/cursor/mcp-ts/commands/feature-continue.md +8 -8
- package/presets/cursor/mcp-ts/commands/feature-start.md +17 -17
- package/presets/cursor/mcp-ts/commands/task-continue.md +14 -14
- package/presets/cursor/mcp-ts/commands/task.md +32 -32
- package/presets/cursor/mcp-ts/commands/technical-retro.md +50 -50
- package/presets/cursor/mcp-ts/rules/README.md +1 -1
- package/presets/cursor/mcp-ts/rules/agent-team-intake.mdc +3 -3
- package/presets/cursor/mcp-ts/rules/agent-team-orchestrator.mdc +4 -4
- package/presets/cursor/mcp-ts/rules/code-quality-and-refactoring.mdc +21 -20
- package/presets/cursor/mcp-ts/rules/code-review-mr.mdc +5 -4
- package/presets/cursor/mcp-ts/rules/design-guidance.mdc +55 -54
- package/presets/cursor/mcp-ts/rules/mcp-server-boundaries.mdc +2 -2
- package/presets/cursor/mcp-ts/rules/mcp-ts-app-core.mdc +9 -9
- package/presets/cursor/mcp-ts/rules/post-change-test.mdc +1 -1
- package/presets/cursor/mcp-ts/rules/preset-layering.mdc +12 -13
- package/presets/cursor/mcp-ts/rules/preset-no-cross-stack-leakage.mdc +1 -2
- package/presets/cursor/mcp-ts/rules/preset-pr-checklist.mdc +6 -7
- package/presets/cursor/mcp-ts/rules/preset-token-budget.mdc +3 -4
- package/presets/cursor/mcp-ts/rules/preset-twin-sync.mdc +0 -1
- package/presets/cursor/mcp-ts/rules/technical-retro.mdc +3 -3
- package/presets/cursor/next/AGENTS.md +15 -15
- package/presets/cursor/next/MCP.md +9 -9
- package/presets/cursor/next/README.md +9 -9
- package/presets/cursor/next/agents/README.md +22 -22
- package/presets/cursor/next/agents/feature-developer.md +1 -1
- package/presets/cursor/next/agents/task-analyst.md +1 -1
- package/presets/cursor/next/agents/task-router.md +16 -16
- package/presets/cursor/next/commands/README.md +22 -22
- package/presets/cursor/next/commands/feature-continue.md +8 -8
- package/presets/cursor/next/commands/feature-start.md +17 -17
- package/presets/cursor/next/commands/task-continue.md +14 -14
- package/presets/cursor/next/commands/task.md +33 -33
- package/presets/cursor/next/commands/technical-retro.md +49 -49
- package/presets/cursor/next/rules/README.md +52 -52
- package/presets/cursor/next/rules/agent-team-intake.mdc +2 -2
- package/presets/cursor/next/rules/agent-team-orchestrator.mdc +4 -4
- package/presets/cursor/next/rules/api-services.mdc +43 -43
- package/presets/cursor/next/rules/architecture-boundaries-ui.mdc +7 -7
- package/presets/cursor/next/rules/architecture-boundaries.mdc +45 -45
- package/presets/cursor/next/rules/arrow-functions.mdc +8 -8
- package/presets/cursor/next/rules/code-quality-and-refactoring.mdc +25 -24
- package/presets/cursor/next/rules/code-review-mr.mdc +5 -5
- package/presets/cursor/next/rules/css-property-order-stylelint.mdc +4 -4
- package/presets/cursor/next/rules/design-guidance.mdc +54 -54
- package/presets/cursor/next/rules/feature-delivery-workflow.mdc +43 -43
- package/presets/cursor/next/rules/http-client.mdc +23 -22
- package/presets/cursor/next/rules/layer-barrel-exports.mdc +31 -30
- package/presets/cursor/next/rules/navigation-router-stack.mdc +37 -37
- package/presets/cursor/next/rules/navigation-router-ui.mdc +7 -7
- package/presets/cursor/next/rules/next-app-core.mdc +16 -16
- package/presets/cursor/next/rules/next-app-router.mdc +17 -17
- package/presets/cursor/next/rules/no-props-spread.mdc +20 -20
- package/presets/cursor/next/rules/no-type-assertion-as-import-export.mdc +29 -29
- package/presets/cursor/next/rules/package-manager.mdc +8 -8
- package/presets/cursor/next/rules/post-change-lint.mdc +22 -22
- package/presets/cursor/next/rules/preset-layering.mdc +12 -13
- package/presets/cursor/next/rules/preset-no-cross-stack-leakage.mdc +1 -2
- package/presets/cursor/next/rules/preset-pr-checklist.mdc +6 -7
- package/presets/cursor/next/rules/preset-token-budget.mdc +3 -4
- package/presets/cursor/next/rules/preset-twin-sync.mdc +0 -1
- package/presets/cursor/next/rules/public-imports.mdc +14 -14
- package/presets/cursor/next/rules/react-a11y-coding.mdc +21 -21
- package/presets/cursor/next/rules/react-ui.mdc +66 -66
- package/presets/cursor/next/rules/reference-features.mdc +17 -17
- package/presets/cursor/next/rules/store-rtk.mdc +60 -60
- package/presets/cursor/next/rules/technical-retro.mdc +4 -4
- package/presets/cursor/next/rules/tests-e2e-structure.mdc +46 -46
- package/presets/cursor/next/rules/tests-unit.mdc +51 -52
- package/presets/cursor/next/rules/types-jsdoc.mdc +29 -22
- package/presets/cursor/next/skills/feature-delivery/SKILL.md +1 -1
- package/presets/cursor/next/team/README.md +2 -2
- package/presets/cursor/nuxt/AGENTS.md +15 -15
- package/presets/cursor/nuxt/MCP.md +9 -9
- package/presets/cursor/nuxt/README.md +10 -10
- package/presets/cursor/nuxt/agents/README.md +30 -30
- package/presets/cursor/nuxt/agents/feature-developer.md +1 -1
- package/presets/cursor/nuxt/agents/task-analyst.md +1 -1
- package/presets/cursor/nuxt/agents/task-router.md +16 -16
- package/presets/cursor/nuxt/commands/README.md +24 -24
- package/presets/cursor/nuxt/commands/feature-continue.md +8 -8
- package/presets/cursor/nuxt/commands/feature-start.md +17 -17
- package/presets/cursor/nuxt/commands/task-continue.md +14 -14
- package/presets/cursor/nuxt/commands/task.md +33 -33
- package/presets/cursor/nuxt/commands/technical-retro.md +50 -50
- package/presets/cursor/nuxt/rules/README.md +53 -53
- package/presets/cursor/nuxt/rules/agent-team-intake.mdc +2 -2
- package/presets/cursor/nuxt/rules/agent-team-orchestrator.mdc +4 -4
- package/presets/cursor/nuxt/rules/api-services.mdc +43 -43
- package/presets/cursor/nuxt/rules/architecture-boundaries-ui.mdc +7 -7
- package/presets/cursor/nuxt/rules/architecture-boundaries.mdc +58 -58
- package/presets/cursor/nuxt/rules/code-quality-and-refactoring.mdc +25 -24
- package/presets/cursor/nuxt/rules/code-review-mr.mdc +5 -5
- package/presets/cursor/nuxt/rules/design-guidance.mdc +54 -54
- package/presets/cursor/nuxt/rules/feature-delivery-workflow.mdc +44 -44
- package/presets/cursor/nuxt/rules/layer-barrel-exports.mdc +31 -31
- package/presets/cursor/nuxt/rules/navigation-router-stack.mdc +38 -38
- package/presets/cursor/nuxt/rules/navigation-router-ui.mdc +7 -7
- package/presets/cursor/nuxt/rules/no-type-assertion-as-import-export.mdc +29 -29
- package/presets/cursor/nuxt/rules/nuxt-app-core.mdc +16 -16
- package/presets/cursor/nuxt/rules/package-manager.mdc +8 -8
- package/presets/cursor/nuxt/rules/post-change-lint.mdc +23 -23
- package/presets/cursor/nuxt/rules/preset-layering.mdc +12 -13
- package/presets/cursor/nuxt/rules/preset-no-cross-stack-leakage.mdc +1 -2
- package/presets/cursor/nuxt/rules/preset-pr-checklist.mdc +6 -7
- package/presets/cursor/nuxt/rules/preset-token-budget.mdc +3 -4
- package/presets/cursor/nuxt/rules/preset-twin-sync.mdc +0 -1
- package/presets/cursor/nuxt/rules/public-imports.mdc +14 -14
- package/presets/cursor/nuxt/rules/reference-features.mdc +17 -17
- package/presets/cursor/nuxt/rules/store-pinia.mdc +26 -26
- package/presets/cursor/nuxt/rules/technical-retro.mdc +4 -4
- package/presets/cursor/nuxt/rules/tests-e2e-structure.mdc +45 -46
- package/presets/cursor/nuxt/rules/tests-unit.mdc +51 -52
- package/presets/cursor/nuxt/rules/types-jsdoc.mdc +22 -22
- package/presets/cursor/nuxt/rules/vue-ui.mdc +6 -6
- package/presets/cursor/nuxt/skills/feature-delivery/SKILL.md +1 -1
- package/presets/cursor/nuxt/team/README.md +2 -2
- package/presets/cursor/php-hexagonal/AGENTS.md +11 -11
- package/presets/cursor/php-hexagonal/MCP.md +7 -7
- package/presets/cursor/php-hexagonal/agents/README.md +4 -4
- package/presets/cursor/php-hexagonal/agents/task-router.md +12 -12
- package/presets/cursor/php-hexagonal/commands/README.md +25 -25
- package/presets/cursor/php-hexagonal/commands/feature-continue.md +8 -8
- package/presets/cursor/php-hexagonal/commands/feature-start.md +17 -17
- package/presets/cursor/php-hexagonal/commands/task-continue.md +14 -14
- package/presets/cursor/php-hexagonal/commands/task.md +32 -32
- package/presets/cursor/php-hexagonal/commands/technical-retro.md +49 -49
- package/presets/cursor/php-hexagonal/rules/README.md +2 -2
- package/presets/cursor/php-hexagonal/rules/agent-team-intake.mdc +2 -2
- package/presets/cursor/php-hexagonal/rules/agent-team-orchestrator.mdc +4 -4
- package/presets/cursor/php-hexagonal/rules/architecture-boundaries.mdc +10 -10
- package/presets/cursor/php-hexagonal/rules/code-quality-and-refactoring.mdc +20 -20
- package/presets/cursor/php-hexagonal/rules/code-review-mr.mdc +4 -4
- package/presets/cursor/php-hexagonal/rules/design-guidance.mdc +54 -54
- package/presets/cursor/php-hexagonal/rules/php-app-core.mdc +10 -10
- package/presets/cursor/php-hexagonal/rules/post-change-test.mdc +1 -1
- package/presets/cursor/php-hexagonal/rules/preset-layering.mdc +12 -13
- package/presets/cursor/php-hexagonal/rules/preset-no-cross-stack-leakage.mdc +1 -2
- package/presets/cursor/php-hexagonal/rules/preset-pr-checklist.mdc +6 -7
- package/presets/cursor/php-hexagonal/rules/preset-token-budget.mdc +3 -4
- package/presets/cursor/php-hexagonal/rules/preset-twin-sync.mdc +0 -1
- package/presets/cursor/php-hexagonal/rules/technical-retro.mdc +3 -3
- package/presets/cursor/php-hexagonal/team/README.md +1 -1
- package/presets/cursor/php-laravel/AGENTS.md +10 -10
- package/presets/cursor/php-laravel/agents/README.md +4 -4
- package/presets/cursor/php-laravel/agents/task-router.md +14 -14
- package/presets/cursor/php-laravel/commands/README.md +25 -25
- package/presets/cursor/php-laravel/commands/feature-continue.md +8 -8
- package/presets/cursor/php-laravel/commands/feature-start.md +17 -17
- package/presets/cursor/php-laravel/commands/task-continue.md +14 -14
- package/presets/cursor/php-laravel/commands/task.md +32 -32
- package/presets/cursor/php-laravel/commands/technical-retro.md +50 -50
- package/presets/cursor/php-laravel/rules/README.md +2 -2
- package/presets/cursor/php-laravel/rules/agent-team-intake.mdc +2 -2
- package/presets/cursor/php-laravel/rules/agent-team-orchestrator.mdc +4 -4
- package/presets/cursor/php-laravel/rules/architecture-boundaries.mdc +11 -11
- package/presets/cursor/php-laravel/rules/code-quality-and-refactoring.mdc +20 -20
- package/presets/cursor/php-laravel/rules/code-review-mr.mdc +4 -5
- package/presets/cursor/php-laravel/rules/design-guidance.mdc +54 -54
- package/presets/cursor/php-laravel/rules/events-listeners.mdc +1 -1
- package/presets/cursor/php-laravel/rules/laravel-app-core.mdc +8 -8
- package/presets/cursor/php-laravel/rules/post-change-test.mdc +1 -1
- package/presets/cursor/php-laravel/rules/preset-layering.mdc +12 -13
- package/presets/cursor/php-laravel/rules/preset-no-cross-stack-leakage.mdc +1 -2
- package/presets/cursor/php-laravel/rules/preset-pr-checklist.mdc +6 -7
- package/presets/cursor/php-laravel/rules/preset-token-budget.mdc +3 -4
- package/presets/cursor/php-laravel/rules/preset-twin-sync.mdc +0 -1
- package/presets/cursor/php-laravel/rules/technical-retro.mdc +3 -3
- package/presets/cursor/php-laravel/team/README.md +1 -1
- package/presets/cursor/svelte/AGENTS.md +15 -15
- package/presets/cursor/svelte/MCP.md +9 -9
- package/presets/cursor/svelte/README.md +9 -9
- package/presets/cursor/svelte/agents/README.md +29 -29
- package/presets/cursor/svelte/agents/feature-developer.md +1 -1
- package/presets/cursor/svelte/agents/task-analyst.md +1 -1
- package/presets/cursor/svelte/agents/task-router.md +16 -16
- package/presets/cursor/svelte/commands/README.md +24 -24
- package/presets/cursor/svelte/commands/feature-continue.md +8 -8
- package/presets/cursor/svelte/commands/feature-start.md +17 -17
- package/presets/cursor/svelte/commands/task-continue.md +14 -14
- package/presets/cursor/svelte/commands/task.md +33 -33
- package/presets/cursor/svelte/commands/technical-retro.md +50 -50
- package/presets/cursor/svelte/rules/README.md +34 -34
- package/presets/cursor/svelte/rules/agent-team-intake.mdc +2 -2
- package/presets/cursor/svelte/rules/agent-team-orchestrator.mdc +4 -4
- package/presets/cursor/svelte/rules/api-services.mdc +14 -14
- package/presets/cursor/svelte/rules/architecture-boundaries-ui.mdc +7 -7
- package/presets/cursor/svelte/rules/architecture-boundaries.mdc +19 -19
- package/presets/cursor/svelte/rules/code-quality-and-refactoring.mdc +25 -24
- package/presets/cursor/svelte/rules/code-review-mr.mdc +5 -5
- package/presets/cursor/svelte/rules/design-guidance.mdc +54 -54
- package/presets/cursor/svelte/rules/feature-delivery-workflow.mdc +26 -26
- package/presets/cursor/svelte/rules/layer-barrel-exports.mdc +31 -31
- package/presets/cursor/svelte/rules/navigation-router-stack.mdc +6 -6
- package/presets/cursor/svelte/rules/navigation-router-ui.mdc +1 -1
- package/presets/cursor/svelte/rules/no-type-assertion-as-import-export.mdc +29 -29
- package/presets/cursor/svelte/rules/package-manager.mdc +8 -8
- package/presets/cursor/svelte/rules/post-change-lint.mdc +23 -23
- package/presets/cursor/svelte/rules/preset-layering.mdc +12 -13
- package/presets/cursor/svelte/rules/preset-no-cross-stack-leakage.mdc +1 -2
- package/presets/cursor/svelte/rules/preset-pr-checklist.mdc +6 -7
- package/presets/cursor/svelte/rules/preset-token-budget.mdc +3 -4
- package/presets/cursor/svelte/rules/preset-twin-sync.mdc +0 -1
- package/presets/cursor/svelte/rules/public-imports.mdc +8 -8
- package/presets/cursor/svelte/rules/reference-features.mdc +17 -17
- package/presets/cursor/svelte/rules/store-svelte.mdc +26 -26
- package/presets/cursor/svelte/rules/svelte-app-core.mdc +16 -16
- package/presets/cursor/svelte/rules/svelte-ui.mdc +6 -6
- package/presets/cursor/svelte/rules/technical-retro.mdc +4 -4
- package/presets/cursor/svelte/rules/tests-e2e-structure.mdc +45 -46
- package/presets/cursor/svelte/rules/tests-unit.mdc +17 -17
- package/presets/cursor/svelte/rules/types-jsdoc.mdc +22 -22
- package/presets/cursor/svelte/skills/feature-delivery/SKILL.md +1 -1
- package/presets/cursor/svelte/team/README.md +2 -2
|
@@ -1,71 +1,72 @@
|
|
|
1
1
|
---
|
|
2
|
-
description:
|
|
2
|
+
description: Architectural boundaries and import rules
|
|
3
3
|
paths:
|
|
4
4
|
- api/**/*
|
|
5
5
|
- stores/**/*
|
|
6
6
|
- types/**/*
|
|
7
7
|
- lib/**/*
|
|
8
8
|
---
|
|
9
|
-
|
|
9
|
+
|
|
10
|
+
# Layer boundaries
|
|
10
11
|
|
|
11
12
|
- **UI (`pages/**`, `components/**`, `layouts/**`)**:
|
|
12
|
-
-
|
|
13
|
-
-
|
|
14
|
-
-
|
|
15
|
-
-
|
|
13
|
+
- May import: `components/**`, `composables/**`, `stores/**` (public), types from `~/types` / `@/types` and enums from `~/types/enums` / `@/types/enums` (**only as in `public-imports.mdc`**), API contract — **only** `import … from '~/api'` / `from '@/api'` (**`public-imports.mdc`**).
|
|
14
|
+
- Must not:
|
|
15
|
+
- call the HTTP client directly (`$fetch` / ofetch outside `lib/clients`);
|
|
16
|
+
- know backend DTO details — only domain types.
|
|
16
17
|
- **Store (`stores/**`)** — Pinia `defineStore` only (`store-pinia.mdc`):
|
|
17
|
-
-
|
|
18
|
-
-
|
|
19
|
-
-
|
|
20
|
-
-
|
|
21
|
-
-
|
|
22
|
-
- **API (`api/**`)** —
|
|
23
|
-
-
|
|
24
|
-
-
|
|
25
|
-
-
|
|
26
|
-
-
|
|
27
|
-
|
|
28
|
-
## UI
|
|
29
|
-
|
|
30
|
-
-
|
|
31
|
-
-
|
|
32
|
-
-
|
|
33
|
-
|
|
34
|
-
##
|
|
35
|
-
|
|
36
|
-
-
|
|
37
|
-
-
|
|
38
|
-
-
|
|
39
|
-
-
|
|
40
|
-
|
|
41
|
-
##
|
|
42
|
-
|
|
43
|
-
-
|
|
44
|
-
|
|
45
|
-
#
|
|
46
|
-
|
|
47
|
-
-
|
|
48
|
-
-
|
|
49
|
-
-
|
|
50
|
-
-
|
|
51
|
-
-
|
|
52
|
-
|
|
53
|
-
#
|
|
54
|
-
|
|
55
|
-
-
|
|
56
|
-
-
|
|
57
|
-
-
|
|
58
|
-
-
|
|
59
|
-
- API: `api/services/OrdersApi/OrderCheckout/**` (
|
|
60
|
-
-
|
|
61
|
-
|
|
62
|
-
#
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
-
|
|
66
|
-
-
|
|
67
|
-
-
|
|
68
|
-
-
|
|
18
|
+
- May import: other `stores/**` (public), services and public API entities — **only** from `~/api` / `@/api` (**`public-imports.mdc`**), types from `~/types` / `@/types` and enums from `~/types/enums` / `@/types/enums` (**`public-imports.mdc`**).
|
|
19
|
+
- Must not:
|
|
20
|
+
- depend on specific UI components / pages;
|
|
21
|
+
- work with global/window API directly.
|
|
22
|
+
- Backend calls — only through services imported from `~/api` / `@/api`; **transport** response and error types (from `@/types`, same shape as the application HTTP client) in **Pinia actions** are acceptable if the API layer is structured that way (`http-client.mdc`, `store-pinia.mdc`).
|
|
23
|
+
- **API (`api/**`)** — implementation in `services/**`, `clients/**`, re-export in `api/index.ts`:
|
|
24
|
+
- Inside the layer: types from `@/types` and enums from `@/types/enums` (**`public-imports.mdc`**); imports `@/api/services/**`, `@/api/clients/**`, relative paths between layer files (`http-client.mdc`, `api-services.mdc`).
|
|
25
|
+
- Must not:
|
|
26
|
+
- pull in UI or store;
|
|
27
|
+
- mix HTTP and domain layers — use mappers.
|
|
28
|
+
|
|
29
|
+
## UI and API access (`~/api` / `@/api`)
|
|
30
|
+
|
|
31
|
+
- By default, scenarios that **change server state** and coordinate multiple steps go through **Pinia actions** (`defineStore`, feature pattern in the repository).
|
|
32
|
+
- Direct calls to service methods imported from **`~/api` / `@/api`** from UI are allowed only in **narrow cases**: mainly **reads** or actions **without needing the result in Pinia**; same **domain types** a store action would use; **do not** duplicate an existing store scenario and **do not** pass DTOs into components.
|
|
33
|
+
- Prefer structuring such calls like **neighboring features** in the repository (composable facade, `use*`, etc.).
|
|
34
|
+
|
|
35
|
+
## Ports and adapters (short map)
|
|
36
|
+
|
|
37
|
+
- **Inbound adapter**: UI — user input, display; depends on store and domain types, not transport.
|
|
38
|
+
- **Scenario orchestration**: store (Pinia actions) — calls services, puts **domain** models in state after mapping.
|
|
39
|
+
- **Outbound port (backend contract)**: public API **`~/api` / `@/api`** (barrel `api/index.ts`; implementation — in `api/services/**`, etc., see `public-imports.mdc`).
|
|
40
|
+
- **Outbound adapter**: shared HTTP implementation in **`lib/clients/**`** and instances in **`api/clients/**`** (wrap `$fetch` / ofetch).
|
|
41
|
+
|
|
42
|
+
## Feature as a slice
|
|
43
|
+
|
|
44
|
+
- For a complex feature, align names and terms (**ubiquitous language** of the domain) in types, getters/actions, services, and UI; folder structure — as in neighboring features in the repository.
|
|
45
|
+
|
|
46
|
+
# Import rules
|
|
47
|
+
|
|
48
|
+
- Always use the `~/` or `@/` alias for cross-layer imports (as established in the repo); respect `#imports`.
|
|
49
|
+
- Within one module/feature, relative imports are OK, but **without climbing above the feature root** (avoid `../../../`).
|
|
50
|
+
- When components, composables, utilities, and other modules reach into another layer or feature, use only **public API** (barrel/index files and explicitly exported entities); no deep imports into other features' internal files; for regulated layers — **`layer-barrel-exports.mdc`** and `public-imports.mdc`; for the API layer from outside `api/**` — **`public-imports.mdc`** (only `~/api` / `@/api`).
|
|
51
|
+
- When adding new code, check:
|
|
52
|
+
- if the module is reusable — it should depend only on "lower" layers (types, utils, api), not on pages.
|
|
53
|
+
|
|
54
|
+
# Feature organization
|
|
55
|
+
|
|
56
|
+
- For complex features (for example, `OrderCheckout`):
|
|
57
|
+
- Page / route: `pages/**` and/or `components/pages/OrderCheckoutPage/**`.
|
|
58
|
+
- Local components: `components/**` subdirectories inside the page.
|
|
59
|
+
- Related store: `stores/orderCheckout.ts` (or the neighboring Pinia module scheme in the repo).
|
|
60
|
+
- API: `api/services/OrdersApi/OrderCheckout/**` (root service name from the project scheme).
|
|
61
|
+
- Types: `types/**` with export through barrel **`types/index.ts`** (`public-imports.mdc`).
|
|
62
|
+
|
|
63
|
+
# Agent requirement
|
|
64
|
+
|
|
65
|
+
When adding new functionality:
|
|
66
|
+
- Place files in the **appropriate layers**.
|
|
67
|
+
- Check existing features with similar structure and **repeat their organization**.
|
|
68
|
+
- Do not "short-circuit" layers (for example, do not call API directly from a component just to simplify).
|
|
69
|
+
- **Forbidden:** RTK / Redux (`createSlice`, `createAsyncThunk`, `useDispatch`, `stores/slices/**` as the canon).
|
|
69
70
|
|
|
70
71
|
## Incorrect
|
|
71
72
|
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
---
|
|
2
|
-
description:
|
|
2
|
+
description: End-to-end checklist for a new feature and the “layer → Cursor rule” matrix. Use when implementing features via feature-developer or feature-delivery skill.
|
|
3
3
|
paths:
|
|
4
4
|
- pages/**/*
|
|
5
5
|
- components/**/*
|
|
@@ -8,76 +8,77 @@ paths:
|
|
|
8
8
|
- composables/**/*
|
|
9
9
|
- types/**/*
|
|
10
10
|
---
|
|
11
|
+
|
|
11
12
|
<!-- shared-core: architecture/feature-delivery-workflow.md -->
|
|
12
13
|
|
|
13
|
-
#
|
|
14
|
+
# Feature delivery (end-to-end order)
|
|
14
15
|
|
|
15
16
|
## Stack notes
|
|
16
17
|
|
|
17
|
-
|
|
18
|
+
Typical feature with backend data and shared state. Layer details — `architecture-boundaries.mdc`, `nuxt-app-core.mdc`.
|
|
18
19
|
|
|
19
|
-
##
|
|
20
|
+
## Checklist (work order)
|
|
20
21
|
|
|
21
|
-
1.
|
|
22
|
-
2.
|
|
23
|
-
3.
|
|
24
|
-
4.
|
|
25
|
-
5.
|
|
26
|
-
6. **UI** —
|
|
27
|
-
7.
|
|
28
|
-
8.
|
|
29
|
-
9.
|
|
22
|
+
1. **Domain types** — `types/**`, export via barrel (`public-imports.mdc`, **`layer-barrel-exports.mdc`**); JSDoc — `types-jsdoc.mdc`.
|
|
23
|
+
2. **API contract** — DTOs where the repo uses them; domain types in `@/types`.
|
|
24
|
+
3. **Mappers** — DTO → domain in `*responseMappers.ts` (`api-services.mdc`).
|
|
25
|
+
4. **Services** — clients `api/clients/**`, barrel `@/api` (`api-services.mdc`, `http-client.mdc`, **`layer-barrel-exports.mdc`**). No `fetch` from UI/store.
|
|
26
|
+
5. **State** — `defineStore` / Pinia actions (`store-pinia.mdc`); actions → services from `~/api` / `@/api`.
|
|
27
|
+
6. **UI** — types from `@/types`, no DTOs (`vue-ui.mdc`, `architecture-boundaries-ui.mdc`, `no-v-bind-spread.mdc`).
|
|
28
|
+
7. **Mocks** — per repo layout; register in `mocks/handlers.ts` (see below).
|
|
29
|
+
8. **Tests** — unit for mappers (`tests-unit.mdc`); e2e from `*.cases.md` (`tests-e2e-structure.mdc`, `playwright-agents.mdc`).
|
|
30
|
+
9. **Completion** — **`post-change-lint.mdc`**: `lint:js` + `lint:css` + `typecheck`; package manager — `package-manager.mdc`.
|
|
30
31
|
|
|
31
|
-
##
|
|
32
|
+
## Data flow (orientation)
|
|
32
33
|
|
|
33
34
|
```mermaid
|
|
34
35
|
flowchart LR
|
|
35
|
-
subgraph transport [
|
|
36
|
+
subgraph transport [Transport]
|
|
36
37
|
HttpClient[HttpClient]
|
|
37
38
|
end
|
|
38
|
-
DTO[DTO] --> Mappers[
|
|
39
|
-
Mappers --> Domain[
|
|
40
|
-
Domain --> Service[API
|
|
39
|
+
DTO[DTO] --> Mappers[Mappers]
|
|
40
|
+
Mappers --> Domain[Domain types]
|
|
41
|
+
Domain --> Service[API service]
|
|
41
42
|
Service --> HttpClient
|
|
42
43
|
Service --> Action[Pinia action]
|
|
43
44
|
Action --> Store[Store]
|
|
44
45
|
Store --> UI[UI]
|
|
45
46
|
```
|
|
46
47
|
|
|
47
|
-
##
|
|
48
|
+
## Registration by layer
|
|
48
49
|
|
|
49
|
-
1.
|
|
50
|
-
2. **API** — `api/services/<ServiceRoot>/<Segment>/`;
|
|
51
|
-
3.
|
|
52
|
-
4. **Store** — `stores/<featureName>.ts` (`defineStore`);
|
|
53
|
-
5. **UI** — `pages/**`, `components/pages/<FeatureName>Page/**`
|
|
54
|
-
6. **Unit** — `*.spec.ts`;
|
|
50
|
+
1. **Types** — `types/**`; domain model is the source of truth for UI and store.
|
|
51
|
+
2. **API** — `api/services/<ServiceRoot>/<Segment>/`; public exports (incl. **path constants** for mocks) → **`api/index.ts`**.
|
|
52
|
+
3. **Mocks (MSW)** — `mocks/data/<feature>/`; handlers in **`mocks/handlers.ts`**. Paths from `@/api`; do not duplicate URL strings. Check browser worker and Node `setupServer` if both are used.
|
|
53
|
+
4. **Store** — `stores/<featureName>.ts` (`defineStore`); optional composable facade in `composables/**`. Registration via `@pinia/nuxt` / the repo’s accepted pattern — **not** RTK `reducers.ts` / `middleware/**`.
|
|
54
|
+
5. **UI** — `pages/**`, `components/pages/<FeatureName>Page/**` and/or `components/**`; data via store / composables.
|
|
55
|
+
6. **Unit** — `*.spec.ts`; mappers and non-trivial logic are required.
|
|
55
56
|
7. **E2E** — `tests/e2e/<Area>/<plan>.cases.md` + `*.spec.ts`.
|
|
56
57
|
|
|
57
|
-
##
|
|
58
|
+
## Partial scenarios
|
|
58
59
|
|
|
59
|
-
|
|
|
60
|
-
|
|
61
|
-
|
|
|
62
|
-
|
|
|
63
|
-
|
|
|
64
|
-
|
|
|
65
|
-
|
|
|
60
|
+
| Task | Minimum actions |
|
|
61
|
+
|------|-----------------|
|
|
62
|
+
| API + types only | Types, service, mappers, `@/api` barrel; unit for mapper. |
|
|
63
|
+
| Mocks only | Path in `@/api`; handlers + `mocks/handlers.ts`. |
|
|
64
|
+
| Store only | Pinia actions via `@/api`; `stores/<feature>.ts`. |
|
|
65
|
+
| UI only | Store state; no HTTP/DTO. |
|
|
66
|
+
| E2E only | `*.cases.md` + spec; page object. |
|
|
66
67
|
|
|
67
|
-
##
|
|
68
|
+
## Anti-patterns
|
|
68
69
|
|
|
69
|
-
- DTO
|
|
70
|
-
- HTTP
|
|
71
|
-
- Deep-import `@/api/services/**`
|
|
72
|
-
- `{...props}` / `v-bind="$attrs"` spread
|
|
73
|
-
- RTK / Redux (`createSlice`, `createAsyncThunk`, `stores/slices/**`
|
|
74
|
-
- **Ubiquitous language:**
|
|
70
|
+
- DTO in UI or untyped store.
|
|
71
|
+
- HTTP client from a component/Pinia action bypassing the service.
|
|
72
|
+
- Deep-import `@/api/services/**` from UI/store.
|
|
73
|
+
- `{...props}` / `v-bind="$attrs"` spread without an explicit list — `no-v-bind-spread.mdc`.
|
|
74
|
+
- RTK / Redux (`createSlice`, `createAsyncThunk`, `stores/slices/**` as the canon).
|
|
75
|
+
- **Ubiquitous language:** Domain/type names reflect the feature’s subject domain — do not mix transport/framework terms into the domain without need.
|
|
75
76
|
- Load `design-guidance` (rule stem) when assessing structure, smells, or pattern fit.
|
|
76
77
|
|
|
77
|
-
##
|
|
78
|
+
## Matrix: zone → rules
|
|
78
79
|
|
|
79
|
-
|
|
|
80
|
-
|
|
80
|
+
| Zone | Rules |
|
|
81
|
+
|------|-------|
|
|
81
82
|
| `api/clients/**`, `lib/clients/**` | `http-client.mdc`, `tests-unit.mdc` (behavior) |
|
|
82
83
|
| `api/services/**` | `api-services.mdc`, `layer-barrel-exports.mdc`, `http-client.mdc` |
|
|
83
84
|
| `stores/**` | `store-pinia.mdc`, `architecture-boundaries.mdc`, `public-imports.mdc` |
|
|
@@ -85,4 +86,4 @@ flowchart LR
|
|
|
85
86
|
| `types/**` | `public-imports.mdc`, `types-jsdoc.mdc`, `layer-barrel-exports.mdc` |
|
|
86
87
|
| `tests/e2e/**` | `tests-e2e-structure.mdc`, `playwright-agents.mdc` |
|
|
87
88
|
|
|
88
|
-
|
|
89
|
+
When adding or extending a feature, **walk the checklist** and the rules from the table for affected zones.
|
|
@@ -1,60 +1,61 @@
|
|
|
1
1
|
---
|
|
2
|
-
description:
|
|
2
|
+
description: Two-level barrel exports for layers with a regulated public API
|
|
3
3
|
paths: **/index.ts
|
|
4
4
|
---
|
|
5
|
-
# Barrel-экспорты слоёв с public API
|
|
6
5
|
|
|
7
|
-
|
|
6
|
+
# Barrel exports for layers with a public API
|
|
8
7
|
|
|
9
|
-
|
|
8
|
+
## When to apply
|
|
10
9
|
|
|
11
|
-
|
|
12
|
-
- deep-импорты внутрь слоя **запрещены** снаружи (ESLint `no-restricted-imports`, правила `public-imports.mdc`).
|
|
10
|
+
For **any layer** (directory, package, bounded context) that has:
|
|
13
11
|
|
|
14
|
-
|
|
12
|
+
- a **root barrel** — single import point for external consumers;
|
|
13
|
+
- deep imports into the layer **forbidden** from outside (ESLint `no-restricted-imports`, `public-imports.mdc` rules).
|
|
15
14
|
|
|
16
|
-
|
|
15
|
+
Example alias/entry points across projects: `@/api`, `@/types`, `@/core`, `@/store`, `packages/foo`.
|
|
17
16
|
|
|
18
|
-
|
|
19
|
-
2. **Корневой public API** — barrel слоя (например `src/<layer>/index.ts`).
|
|
17
|
+
## Two barrel levels
|
|
20
18
|
|
|
21
|
-
|
|
19
|
+
1. **Local** — `index.ts` of a module/feature inside the layer.
|
|
20
|
+
2. **Root public API** — layer barrel (e.g. `src/<layer>/index.ts`).
|
|
22
21
|
|
|
23
|
-
|
|
22
|
+
**Inside** the layer — relative imports and paths between submodules. **Outside** — only the root barrel and **explicitly allowed** secondary entry points (if fixed in project rules, e.g. `@/types/enums`).
|
|
24
23
|
|
|
25
|
-
|
|
24
|
+
## What to re-export outward
|
|
26
25
|
|
|
27
|
-
|
|
26
|
+
Only symbols that **must be available** to layer consumers: public functions/services/facades, contract types, constants and helpers needed by other layers or tests.
|
|
28
27
|
|
|
29
|
-
|
|
28
|
+
**Do not re-export:** internal adapters, mappers, transport details, intermediate objects used to assemble a facade inside the layer.
|
|
30
29
|
|
|
31
|
-
|
|
30
|
+
Grouping in the root barrel — **per repository convention** (orient on neighboring modules of the same layer).
|
|
32
31
|
|
|
33
|
-
|
|
32
|
+
## Agent checklist (required)
|
|
34
33
|
|
|
35
|
-
|
|
36
|
-
2. Создать/обновить **локальный** `index.ts` — только публичные символы.
|
|
37
|
-
3. Если в слое есть **фасад/агрегатор** (`*ApiService.ts`, `rootReducer`, …) — подключить модуль там.
|
|
38
|
-
4. Добавить **реэкспорт** новых публичных символов в **корневой barrel** слоя.
|
|
39
|
-
5. **Проверка:** grep по имени символа или пути `./<Module>` в корневом barrel; снаружи слоя нет deep-импортов.
|
|
34
|
+
When adding or substantially extending a **module inside a regulated layer**:
|
|
40
35
|
|
|
41
|
-
|
|
36
|
+
1. Identify the layer, its **root barrel**, and extra entry points (`public-imports.mdc`).
|
|
37
|
+
2. Create/update the **local** `index.ts` — public symbols only.
|
|
38
|
+
3. If the layer has a **facade/aggregator** (`*ApiService.ts`, `rootReducer`, …) — wire the module there.
|
|
39
|
+
4. Add a **re-export** of new public symbols in the layer’s **root barrel**.
|
|
40
|
+
5. **Verify:** grep for the symbol name or path `./<Module>` in the root barrel; no deep imports from outside the layer.
|
|
42
41
|
|
|
43
|
-
|
|
42
|
+
The module is **not ready** until the checklist passes.
|
|
44
43
|
|
|
45
|
-
|
|
46
|
-
2. ESLint `no-restricted-imports` — паттерны `@/<layer>/*` с исключением barrel.
|
|
47
|
-
3. `architecture-boundaries.mdc`, README проекта.
|
|
44
|
+
## How to find regulated layers in the repository
|
|
48
45
|
|
|
49
|
-
|
|
46
|
+
1. `public-imports.mdc` rules in `.cursor/rules/`.
|
|
47
|
+
2. ESLint `no-restricted-imports` — `@/<layer>/*` patterns with barrel exception.
|
|
48
|
+
3. `architecture-boundaries.mdc`, project README.
|
|
50
49
|
|
|
51
|
-
|
|
52
|
-
|
|
50
|
+
## In this repository
|
|
51
|
+
|
|
52
|
+
| Layer | Root barrel | Import rule |
|
|
53
|
+
|-------|-------------|-------------|
|
|
53
54
|
| API | `api/index.ts` | `public-imports.mdc` |
|
|
54
55
|
| Types | `types/index.ts` | `public-imports.mdc` (+ `@/types/enums`) |
|
|
55
56
|
| Core | `core/index.ts` | ESLint: `@/core/index` |
|
|
56
57
|
|
|
57
|
-
|
|
58
|
+
Two-level illustration (API): local `services/.../<Feature>/index.ts` → facade `*ApiService.ts` → `api/index.ts`.
|
|
58
59
|
## Incorrect
|
|
59
60
|
|
|
60
61
|
```ts
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
---
|
|
2
|
-
description:
|
|
2
|
+
description: Import domain types and API only through public barrels @/types and @/api
|
|
3
3
|
paths:
|
|
4
4
|
- pages/**/*
|
|
5
5
|
- components/**/*
|
|
@@ -8,16 +8,17 @@ paths:
|
|
|
8
8
|
- composables/**/*
|
|
9
9
|
- types/**/*
|
|
10
10
|
---
|
|
11
|
-
# Публичные импорты (`@/types`, `@/api`)
|
|
12
11
|
|
|
13
|
-
|
|
12
|
+
# Public imports (`@/types`, `@/api`)
|
|
13
|
+
|
|
14
|
+
**Collisions:** type imports — `@/types` section below; API outside `api/**` — `@/api` section below (mirrors ESLint `no-restricted-imports` in `eslint.config.mjs`).
|
|
14
15
|
|
|
15
16
|
## `@/types`
|
|
16
17
|
|
|
17
|
-
-
|
|
18
|
-
-
|
|
19
|
-
- **
|
|
20
|
-
-
|
|
18
|
+
- **Public types API** — barrel `types/index.ts`; import types only as `@/types` (or `@/types/index`).
|
|
19
|
+
- **Forbidden** to bypass the barrel: `@/types/<anything>`, except enums.
|
|
20
|
+
- **Enums** — only `@/types/enums` / `@/types/enums.ts`.
|
|
21
|
+
- Inside `types/**` — relative imports between layer files.
|
|
21
22
|
|
|
22
23
|
```typescript
|
|
23
24
|
// ✅
|
|
@@ -28,23 +29,23 @@ import { SomeEnum } from '@/types/enums'
|
|
|
28
29
|
import type { TUserProfile } from '@/types/User.types'
|
|
29
30
|
```
|
|
30
31
|
|
|
31
|
-
|
|
32
|
+
New public types — re-export in `types/index.ts` per **`layer-barrel-exports.mdc`**.
|
|
32
33
|
|
|
33
34
|
## `@/api`
|
|
34
35
|
|
|
35
|
-
-
|
|
36
|
-
-
|
|
37
|
-
-
|
|
36
|
+
- **Public API** — barrel `api/index.ts`. Outside `api/**` — only `import … from '@/api'` (or `@/api/index`).
|
|
37
|
+
- **Forbidden** from outside the layer: `@/api/<anything>`, except `@/api/index`.
|
|
38
|
+
- Inside `api/**` — relative imports and `@/api/services/**`, `@/api/clients/**`.
|
|
38
39
|
|
|
39
40
|
```typescript
|
|
40
|
-
// ✅
|
|
41
|
+
// ✅ in store, UI, lib outside api
|
|
41
42
|
import { MedcardApiService } from '@/api'
|
|
42
43
|
|
|
43
|
-
// ❌
|
|
44
|
+
// ❌ outside api
|
|
44
45
|
import { MedcardApiService } from '@/api/services/MedcardApiService/MedcardApiService'
|
|
45
46
|
```
|
|
46
47
|
|
|
47
|
-
|
|
48
|
+
New public API symbols — re-export in `api/index.ts` per **`layer-barrel-exports.mdc`**.
|
|
48
49
|
## Incorrect
|
|
49
50
|
|
|
50
51
|
```ts
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
---
|
|
2
|
-
description:
|
|
2
|
+
description: Repository reference features — copy structure when implementing new tasks. Fill paths after init in the target repo.
|
|
3
3
|
paths:
|
|
4
4
|
- pages/**/*
|
|
5
5
|
- components/**/*
|
|
@@ -8,42 +8,43 @@ paths:
|
|
|
8
8
|
- composables/**/*
|
|
9
9
|
- types/**/*
|
|
10
10
|
---
|
|
11
|
+
|
|
11
12
|
<!-- shared-core: architecture/reference-features.template.md -->
|
|
12
13
|
|
|
13
|
-
#
|
|
14
|
+
# Reference features
|
|
14
15
|
|
|
15
16
|
## Stack notes
|
|
16
17
|
|
|
17
|
-
|
|
18
|
+
Before implementing, find a feature of the same type and **mirror its structure**; do not invent a new file organization.
|
|
18
19
|
|
|
19
20
|
Taxonomy / shared core: [`presets/_shared/README.md`](../../../../_shared/README.md) · [Preset contribution guide](../../../../docs/PRESET-CONTRIBUTION.md).
|
|
20
21
|
|
|
21
|
-
##
|
|
22
|
+
## Reference table
|
|
22
23
|
|
|
23
|
-
|
|
24
|
+
Replace **TBD** with real paths after team agreement (or on `ai-rules init` in the target repo):
|
|
24
25
|
|
|
25
|
-
|
|
|
26
|
-
|
|
26
|
+
| Layer | Reference | What to copy |
|
|
27
|
+
|-------|-----------|--------------|
|
|
27
28
|
| UI page | **TBD** `components/pages/<Example>/` | `components/`, `*.data.ts`, `styles.ts`, barrel |
|
|
28
29
|
| Store | **TBD** `stores/<example>.ts` | `defineStore`, actions, getters, types |
|
|
29
30
|
| API service | **TBD** `api/services/<example>/` | service, mappers, barrel |
|
|
30
31
|
| Types module | **TBD** `types/<example>/` | domain types, JSDoc, barrel export |
|
|
31
|
-
| Unit tests | **TBD**
|
|
32
|
+
| Unit tests | **TBD** next to the reference mapper/service | `*.spec.ts`, describe/it naming |
|
|
32
33
|
| E2E area | **TBD** `tests/e2e/<Area>/` | `*.cases.md`, page objects, `_shared/` |
|
|
33
34
|
|
|
34
|
-
##
|
|
35
|
+
## How to use
|
|
35
36
|
|
|
36
|
-
1.
|
|
37
|
-
2.
|
|
38
|
-
3.
|
|
39
|
-
4.
|
|
37
|
+
1. Identify affected layers from `decomposition.md` or the task.
|
|
38
|
+
2. Open the reference from the table (after paths are filled).
|
|
39
|
+
3. Mirror naming, file order, import patterns, and tests.
|
|
40
|
+
4. If there is no reference — pick the **closest** existing feature of the same layer and record the choice in the handoff.
|
|
40
41
|
|
|
41
42
|
## Living conventions
|
|
42
43
|
|
|
43
44
|
Post-init gotchas / patterns / decisions: **`.cursor/team/conventions.md`** (and the twin tool path if both Cursor and Claude are installed). Consumer-owned; not always-on. See root `AGENTS.md` § Living conventions.
|
|
44
45
|
|
|
45
|
-
##
|
|
46
|
+
## Related rules
|
|
46
47
|
|
|
47
|
-
- `code-quality-and-refactoring.mdc` —
|
|
48
|
-
- `feature-delivery-workflow.mdc` —
|
|
49
|
-
- skill `feature-delivery` — end-to-end
|
|
48
|
+
- `code-quality-and-refactoring.mdc` — repeat patterns, no deep-import.
|
|
49
|
+
- `feature-delivery-workflow.mdc` — layer order.
|
|
50
|
+
- skill `feature-delivery` — end-to-end scenario.
|
|
@@ -1,12 +1,12 @@
|
|
|
1
1
|
# Stack (Nuxt 3, Vue, TypeScript)
|
|
2
2
|
|
|
3
|
-
|
|
3
|
+
Framework- and language-level rules.
|
|
4
4
|
|
|
5
|
-
|
|
|
6
|
-
|
|
7
|
-
| `nuxt-app-core.md` |
|
|
5
|
+
| File | Contents | Loading |
|
|
6
|
+
|------|----------|---------|
|
|
7
|
+
| `nuxt-app-core.md` | Stack, `pages/`/`components/`/`stores/` structure, layers | session start |
|
|
8
8
|
| `script-setup-conventions.md` | `<script setup>` conventions | `paths: **/*.{vue,ts}` |
|
|
9
|
-
| `no-type-assertion.md` |
|
|
10
|
-
| `navigation-router-ui.md` |
|
|
11
|
-
| `navigation-router.md` |
|
|
12
|
-
| `types-jsdoc.md` | JSDoc
|
|
9
|
+
| `no-type-assertion.md` | Limit `as` at module boundaries | on-demand |
|
|
10
|
+
| `navigation-router-ui.md` | Navigation in UI components (slim) | `paths: pages/**,layouts/**,middleware/**,components/**` |
|
|
11
|
+
| `navigation-router.md` | Full navigation stack audit (Nuxt file-based routing) | `paths: pages/**,layouts/**,middleware/**,nuxt.config.*` |
|
|
12
|
+
| `types-jsdoc.md` | JSDoc in `types` | `paths: types/**/*.ts` |
|
|
@@ -4,11 +4,11 @@ paths: pages/**/*,layouts/**/*,middleware/**/*,components/**/*
|
|
|
4
4
|
|
|
5
5
|
# Navigation in UI components
|
|
6
6
|
|
|
7
|
-
|
|
7
|
+
Before links, programmatic navigation, or URL work in UI:
|
|
8
8
|
|
|
9
|
-
1. **`package.json`** workspace
|
|
10
|
-
2.
|
|
11
|
-
3.
|
|
12
|
-
4.
|
|
9
|
+
1. **`package.json`** of the app workspace — `nuxt` vs plain `vue-router` SPA.
|
|
10
|
+
2. **Neighboring imports** in the same feature (`navigateTo`, `<NuxtLink>`, `useRouter` / `useRoute` vs `from 'vue-router'`).
|
|
11
|
+
3. **Project wrappers** (`~/components/...` Link) — preferred over raw router API.
|
|
12
|
+
4. **Default (preset):** Nuxt 3 file-based routing → `navigateTo` + `<NuxtLink>` + `useRouter` / `useRoute` (`nuxt-app-core.mdc`, `nuxt-pages-routing.mdc`).
|
|
13
13
|
|
|
14
|
-
|
|
14
|
+
Full audit (route tree, hybrids, lockfile): **`navigation-router-stack.mdc`** — when editing `pages/**`, `layouts/**`, `middleware/**`, `nuxt.config.*`.
|