tdd-workflow-principles
FabienSalles/claude-marketplace
ACTIVATE when the user wants to build, implement, or develop any new feature, endpoint, or user story using TDD, test-first, or red-green-refactor methodology. ACTIVATE for '/feature-tdd-dev', 'TDD', 'test first', 'red-green-refactor' alongside building something new. Covers cross-language TDD workflow: cross-layer iterations, happy-path first, working app at each GREEN, bug-fix-first-test, mocks-hide-bugs pitfall, interface design (deep modules), tests-survive-refactor heuristic, common rationalizations. Language-specific test runner commands and module wiring (PHPUnit, vitest, NestJS modules, Symfony container) live in phpunit:php-tdd-workflow / vitest:vitest-tdd-workflow. DO NOT use for: splitting a spec or story into shippable slices, or judging whether a split is vertical or horizontal (see product:vertical-slice).
git
FabienSalles/claude-marketplace
ACTIVATE for any git or PR operation — create/choose a branch, open or update a PR, "est-ce mergé ?", choose a base, rebase/merge, commit, push, force-push, worktree, cherry-pick, fork. ACTIVATE on 'branche', 'PR', 'merge', 'rebase', 'squash', 'fixup', 'historique', 'base main', 'fork', 'gh pr', 'commit', 'push', 'mets à jour', 'est-ce mergé'. Covers Fabien's transverse git conventions — fetch before reasoning on remote state, never ask what a command answers, branch/commit discipline, English conventional commits without AI trailer, history shape (reshape before the first push, fixup over fix-on-fix, ask before pushing a branch that repairs itself, reshape unasked under a non-manual policy), PR (French title, ultra-succinct body, draft for WIP, fork targets parent), force-push and worktree guardrails, manual index mode. DO NOT use for Eres-specific fork conventions (see Eres marketplace).
delivery
FabienSalles/claude-marketplace
ACTIVATE whenever an iteration or slice has to reach production without blocking on the rest of the work, or when a change touches behaviour that already exists and users depend on. ACTIVATE for 'feature flag', 'can we ship this half-done', 'breaking change', 'BC break', 'backward compatible', 'schema migration', 'zero-downtime migration', 'expand contract', 'dark launch', 'canary', 'progressive rollout', 'strangler', 'branch by abstraction', 'kill switch', 'remove the flag', 'deploy vs release'. Picks the cheapest flag mechanism that fits THIS project (env var → config → DB → SaaS), designs the change as additive so nothing existing breaks, and plans the cleanup slice that deletes the flag and the old path once it is live. DO NOT use for: deciding how to cut the work into slices (see product:vertical-slice), Git branching workflow, or CI/CD pipeline configuration.
vertical-slice
FabienSalles/claude-marketplace
ACTIVATE whenever a functional spec, user story, Jira US, GitHub issue or feature request has to be broken into iterations, slices, tickets or steps — including inside /goal:run-issue Phase 3, /spec-first-dev, and any planning where you are about to write a list of iterations. ACTIVATE for 'découper', 'split this story', 'too big', 'vertical slicing', 'horizontal slicing', 'INVEST', 'SPIDR', 'iterations', 'MVP first', 'what do we build first', 'this story cannot be split'. Provides 17 splitting techniques, a selection procedure that picks and combines them from the feature's real axis of complexity, the technical constraints and the execution mode (human review vs autonomous agent), plus the anti-patterns that produce fake slices. DO NOT use for: sequencing work inside one already-thin slice (that is TDD — see craft:tdd-workflow-principles), or for how to ship a slice safely (see product:delivery).
vitest-tdd-workflow
FabienSalles/claude-marketplace
ACTIVATE when building new features, endpoints, or user stories using TDD with Vitest in a TypeScript/NestJS context. ACTIVATE for '/feature-tdd-dev', 'TDD', 'red-green-refactor' in TS context. Provides Vitest/NestJS-specific TDD examples and commands; cross-language TDD workflow (cross-layer iterations, RED-GREEN-REFACTOR, working app, bug-fix-first-test, mocks-hiding-bugs) lives in craft:tdd-workflow-principles. DO NOT use for: test writing conventions (see vitest:vitest-test-conventions), PHP TDD (see phpunit:php-tdd-workflow).
testing-principles
FabienSalles/claude-marketplace
ACTIVATE when writing or modifying tests, creating test classes/files, using test doubles, factories, or data providers. ACTIVATE for 'DAMP', 'spy vs mock', 'what NOT to test', 'AAA', 'test naming', 'factory test', 'parameterized test', 'interface test', 'UI test', 'assert visible content', 'locate vs assert', 'selector', 'count by class'. Covers cross-language testing principles: DAMP over DRY, AAA/GWT pattern, spy over mock, what NOT to test, factory functions, parameterized tests, structured assertions, interface tests coupling to perceivable content not technical wiring. Language-specific tooling (Prophecy, vi.fn/vi.mock, PHPUnit annotations, it.each syntax) lives in phpunit:php-test-conventions / vitest:vitest-test-conventions.