본문으로 건너뛰기
cccskills
무료GitHub에 공개

dotnet-techne-story-qa

Use when verifying a story or ticket implementation against its spec and acceptance criteria - per-AC verdicts with file:line evidence and proving tests, code reuse and design conformance, dead code, stale docs, comment discipline. Finds the spec from an explicit path, the ticket key in the branch name, or plan files - and asks rather than guessing. For defect-hunting code review use dotnet-techne-code-review instead. Keywords: story QA, acceptance criteria, spec conformance, AC coverage, definition of done, dead code check, reuse check, comment check, verify story, QA this branch.

한국어 요약은 준비 중입니다. 원문 설명을 표시하고 있습니다.

실행 점수 미검증

설치 방법 보기

포함된 파일(5)

  • SKILL.md5.2 KB
  • references/comment-rules.md2.1 KB
  • references/falsification.md3.5 KB
  • references/qa-output-contract.md5.3 KB
  • references/spec-discovery.md3.1 KB

SKILL.md(원문)

설치하기 전에 에이전트에게 전달되는 지시 내용을 확인할 수 있습니다.

Story QA (single context)

Check an implementation against the story that asked for it. Answer one question: do the acceptance criteria hold, and what will hurt later? Every answer carries a file:line. Every finding survives an attempt to kill it before it reaches the reader. This is the portable single-context variant; hosts with subagent support run the same dimensions as a parallel fan-out (Claude Code: /dotnet-qa; Codex: the dotnet-techne-qa-pipeline skill; OpenCode: /dotnet-qa). A repo-local QA skill, when one exists, is tuned to that repo - prefer it there.

Boundary

Code review (dotnet-techne-code-review) hunts defects across a diff. This checks a diff against a contract: acceptance criteria, reuse, design conformance, dead code. Same branch, different question - run both when the story is large. Report findings. Change nothing.

Hard gates

Stop and fix these before continuing; they are not style preferences.

  1. Story reference unclear -> ask. Never guess a ticket (see spec discovery below). A QA check against the wrong story is worse than none.
  2. No reference -> no claim. Cut the sentence instead of softening it.
  3. No break test -> no finding. An unfalsified finding stays in your notes.
  4. Read before you judge. Booting, building, and running beats inferring from source.

Core workflow

  1. Target: the story diff - current branch vs its merge-base with the default branch, unless the user names another target. No diff - halt and say so. List the changed files with line counts; read the production code whole for small stories, whole-in-blast-radius for large ones.
  2. Spec: resolve via references/spec-discovery.md and write the AC list down verbatim before reading code (judging against a remembered AC drifts toward the code). No-spec mode only when the user explicitly chooses it; announce the skipped acceptance dimension.
  3. Contract source of truth: if the ticket names an external schema, consumer test suite, WSDL, or OpenAPI document, read it - and read the consumer, not just the schema. This is the step that separates "looks right" from "verified".
  4. Acceptance audit (spec mode only): for each AC, verdict IMPLEMENTED / PARTIAL / MISSING with file:line evidence, plus the proving test - read the test before claiming what it covers; a type-only assertion proves nothing behavioral. Run it: build the project, run the tests, record the counts and warnings - a passing suite you executed outranks a test file you read. Sweep exhaustively where the cost is low (all 23 hand-written names, not a sample). Check constraints and out-of-scope declarations; cross-check claimed file/task lists against git diff --name-only. The story narrative is testimony, not evidence.
  5. Reuse and design: reinvented helpers (search the solution for existing equivalents), missing adoption of the change's own new behavior (needs a supersession signal), conformance to the project's established patterns and siblings, and the convention this foundation sets that later stories will copy.
  6. Dead code: deletion check (removed code whose contract was neither re-established nor retired), newly-dead code nothing reaches (verify with solution-wide searches including tests), stale words - docs, log texts, test names describing behavior that no longer exists.
  7. Comment discipline: check every comment the diff adds or touches against references/comment-rules.md (host-repo conventions override it - say which you applied). Record the exact replacement line (or "delete") per finding.
  8. Negative space: the strongest findings often live outside the AC list. What does the running system need that no story covers? What does the story defer, and does the deferral fail loudly or silently? Tag these backlog.
  9. Falsify every finding: apply references/falsification.md
    • build the strongest argument each finding is wrong, test it, and record survived / weakened / dead. Expect to kill some of your own; disproved suspicions go in Dropped, which is an honesty signal, not a footnote.
  10. Report per references/qa-output-contract.md - gate and verdict line first, then summary, AC coverage, findings (ranked by consequence), Dropped, Checked, Yours to call. Persist .episteme/QA-<slug>.md unless the user asks for report-only. Afterwards you may offer to apply the comment-line fixes; apply them ONLY after the user explicitly confirms.

리뷰

아직 리뷰가 없습니다. 사용해 본 소감을 남겨 주세요.

댓글

로그인 없이 쓸 수 있습니다. 사용 후기, 질문, 작동하지 않은 환경 등을 편하게 남겨 주세요.

아직 댓글이 없습니다. 첫 댓글을 남겨 보세요.

보내면 바로 공개됩니다. 이메일 주소나 전화번호 같은 개인 정보는 쓰지 마세요. URL은 2개까지입니다.

0 / 1,000자

이 양식은 reCAPTCHA로 보호되며 Google 개인정보처리방침 및 서비스 약관이 적용됩니다.

같은 저장소의 스킬

Use when reviewing PRs/diffs/branches/documents for .NET quality, correctness, performance, security, data access, messaging, and observability. Includes adversarial critical-thinking mode for skeptical/cynical review requests. Keywords: code review, review PR, review diff, critical review, cynical review, adversarial review, production readiness, low GC, AOT, security review.

한국어 요약은 준비 중입니다. 원문 설명을 표시하고 있습니다.

Metalnib/dotnet-episteme-skills122026년 9월 9일 업데이트

Use when you need CRAP score and coverage risk analysis to find high-risk code before refactoring or release. Keywords: CRAP score, risk hotspots, cyclomatic complexity, test coverage gaps, coverage threshold.

한국어 요약은 준비 중입니다. 원문 설명을 표시하고 있습니다.

Metalnib/dotnet-episteme-skills122026년 9월 9일 업데이트

Use when reviewing a .NET pull request for breaking changes that may affect other microservice repositories. Detects cross-repo API, DTO, endpoint, EF entity, and NuGet-package breaks, and checks whether a compatible downstream PR already exists. Keywords: cross-repo impact, breaking change, microservice compatibility, downstream break, compatible PR, blast radius review, api compatibility, contract break, dto shape change, endpoint break.

한국어 요약은 준비 중입니다. 원문 설명을 표시하고 있습니다.

Metalnib/dotnet-episteme-skills122026년 9월 9일 업데이트

Use when designing or changing public C#/.NET APIs with compatibility and versioning constraints. Keywords: breaking change, API design, backward compatibility, binary compatibility, deprecation strategy, versioning.

한국어 요약은 준비 중입니다. 원문 설명을 표시하고 있습니다.

Metalnib/dotnet-episteme-skills122026년 9월 9일 업데이트

Use when writing or refactoring modern C# with maintainability and performance standards. Keywords: coding standards, C# best practices, refactor C#, records, pattern matching, async best practices.

한국어 요약은 준비 중입니다. 원문 설명을 표시하고 있습니다.

Metalnib/dotnet-episteme-skills122026년 9월 9일 업데이트

Use when choosing .NET concurrency patterns for async I/O, queues, pipelines, or thread safety. Keywords: async/await, channels, dataflow, Rx, lock contention, producer consumer, parallel processing.

한국어 요약은 준비 중입니다. 원문 설명을 표시하고 있습니다.

Metalnib/dotnet-episteme-skills122026년 9월 9일 업데이트

Metalnib의 스킬 모두 보기

이 스킬의 문제 신고