协作头脑风暴
brainstorming
在实现前澄清需求、探索设计选择,并形成清晰的开发方向。
acceptance-pipeline-catalog【开发与工程】Use when implementing, reviewing, or debugging a Gherkin acceptance-test pipeline with mutation testing. Covers parser, JSON IR, generator, runtime, step handlers, test runner, mutator, value mutation rules, execution, result classification, reporting, project layout, conformance, and agent setup. Based on Uncle Bob's Acceptance Pipeline Specificatio…
独立 GitHub 快照 · 自动分类 · 以原作者文档为准
Language-neutral specification for a portable acceptance-test pipeline: Gherkin feature files to JSON IR to generated acceptance tests to mutation testing. Based on Robert C. Martin's Acceptance Pipeline Specification. Contains ~50 rules across 14 categories, prioritized by impact.
Reference these rules when:
The pipeline has two modes:
Normal acceptance run:
feature file -> gherkin parser -> JSON IR -> acceptance generator -> generated tests -> test runner
Mutation run:
feature file -> gherkin parser -> base JSON IR -> mutator (one changed IR per mutation)
-> generator (tests per mutation) -> test runner (evaluate each) -> mutation report
The normal run proves the project satisfies the feature. The mutation run probes whether tests are strong enough to fail when example data changes.
| Priority | Category | Impact | Prefix | Rules |
|---|---|---|---|---|
| 1 | Parser | CRITICAL | parser- | 9 |
| 2 | JSON IR | CRITICAL | ir- | 4 |
| 3 | Generator | CRITICAL | gen- | 2 |
| 4 | Runtime | HIGH | rt- | 3 |
| 5 | Step Handlers | HIGH | handler- | 4 |
| 6 | Test Runner | HIGH | runner- | 2 |
| 7 | Mutator Core | HIGH | mut- | 4 |
| 8 | Value Mutation Rules | HIGH | val- | 10 |
| 9 | Result Classification | HIGH | result- | 2 |
| 10 | Conformance | HIGH | conform- | 1 |
| 11 | Agent Setup | HIGH | setup- | 1 |
| 12 | Mutation Execution | MEDIUM | exec- | 4 |
| 13 | Reports | MEDIUM | report- | 3 |
| 14 | Project Layout | MEDIUM | layout- | 3 |
parser-command-interface - Two positional args, exit codes 0/1/2parser-feature-declaration - Feature: keyword required, trimmed nameparser-background - Optional Background: section with Given/And stepsparser-scenarios - Scenario: and Scenario Outline: both supportedparser-steps - Given/When/Then/And keywords, keyword stored separatelyparser-parameters - Angle-bracket placeholders, not expanded by parserparser-examples-tables - Pipe-delimited tables, header row firstparser-general-rules - Blank lines, comments, whitespace, orderingparser-unsupported-syntax - Tags, rules, localized keywords, doc stringsir-feature-object - name, scenarios, optional backgroundir-scenario-object - name, steps, examples arraysir-step-object - keyword, text, optional parametersir-example-object - String-keyed, string-valued mapsgen-command-interface - Two positional args, exit codes 0/1/2gen-requirements - Embed IR, no Gherkin parsing, deterministic outputrt-responsibilities - Load IR, expand, dispatch, reportrt-scenario-expansion - One execution per example row, background prependedrt-execution-naming - Scenario name / example index naming conventionhandler-matching - Match by exact text value, not keywordhandler-world-state - Fresh world/state per scenario executionhandler-value-handling - Fetch, parse, fail on missing/malformedhandler-unsupported - Unsupported step text must fail the testrunner-interface - Input/output contract for the test runner adapterrunner-classification - Three-way: failure, success, infrastructure errormut-command-interface - CLI options, exit codes 0/1/2mut-scope - Only example cell values mutatedmut-identity - Stable deterministic IDs, paths, descriptionsmut-deep-copy - Original IR never modified in placeval-rule-order - 8 rules applied in priority orderval-comma-list - Comma-delimited list mutationval-boolean - true/false toggleval-null - null/nil/none to dithered stringval-integer - Integer plus pseudo-random deltaval-float - Float plus pseudo-random deltaval-datetime - ISO-8601 date/time shiftval-duration - Duration shift preserving syntaxval-string-dither - Character-level string editsval-determinism - Pseudo-random, deterministic for fixed inputresult-statuses - killed, survived, errorresult-classification-rules - Mapping from test outcomes to statusesconform-checklist - All 21 validation itemssetup-checklist - 15-step installation guideexec-work-directory - Per-mutation directory structureexec-workflow - Write IR, generate, run, classifyexec-parallelism - Concurrent workers, isolated directoriesexec-timeout - Full-run timeout, unfinished = errorreport-text-format - Summary line + per-result linesreport-json-format - JSON object with summary and results arrayreport-field-requirements - Required fields for summary and resultslayout-required-paths - features/, build/, acceptance/ directorieslayout-commands - gherkin-parser, acceptance-generator, gherkin-mutatorlayout-scripts - Normal acceptance and mutation scriptsRead individual reference files for detailed spec requirements and rationale:
setup-checklist firstconform-checklist| File | Description |
|---|---|
| metadata.json | Version and reference information |
| gotchas.md | Known failure points (append-only) |
| references/ | All rule files organized by prefix |