260224:1606 20260224:1600 V1.8.0
All checks were successful
Build and Deploy / deploy (push) Successful in 6m25s
All checks were successful
Build and Deploy / deploy (push) Successful in 6m25s
This commit is contained in:
65
.agents/skills/speckit.quizme/SKILL.md
Normal file
65
.agents/skills/speckit.quizme/SKILL.md
Normal file
@@ -0,0 +1,65 @@
|
||||
---
|
||||
name: speckit.quizme
|
||||
description: Challenge the specification with Socratic questioning to identify logical gaps, unhandled edge cases, and robustness issues.
|
||||
handoffs:
|
||||
- label: Clarify Spec Requirements
|
||||
agent: speckit.clarify
|
||||
prompt: Clarify specification requirements
|
||||
---
|
||||
|
||||
## User Input
|
||||
|
||||
```text
|
||||
$ARGUMENTS
|
||||
```
|
||||
|
||||
You **MUST** consider the user input before proceeding (if not empty).
|
||||
|
||||
## Role
|
||||
|
||||
You are the **Antigravity Red Teamer**. Your role is to play the "Socratic Teacher" and challenge specifications for logical fallacies, naive assumptions, and happy-path bias. You find the edge cases that others miss and force robustness into the design.
|
||||
|
||||
## Task
|
||||
|
||||
### Outline
|
||||
|
||||
Goal: Act as a "Red Team" or "Socratic Teacher" to challenge the current feature specification. Unlike `speckit.clarify` (which looks for missing definitions), `speckit.quizme` looks for logical fallacies, race conditions, naive assumptions, and "happy path" bias.
|
||||
|
||||
Execution steps:
|
||||
|
||||
1. **Setup**: Run `../scripts/bash/check-prerequisites.sh --json` from repo root and parse FEATURE_DIR.
|
||||
|
||||
2. **Load Spec**: Read `spec.md` and `plan.md` (if exists).
|
||||
|
||||
3. **Analyze for Weaknesses** (Internal Thought Process):
|
||||
- Identify "Happy Path" assumptions (e.g., "User clicks button and saves").
|
||||
- Look for temporal/state gaps (e.g., "What if the user clicks twice?", "What if the network fails mid-save?").
|
||||
- Challenge business logic (e.g., "You allow deleting users, but what happens to their data?").
|
||||
- Challenge security (e.g., "You rely on client-side validation here, but what if I curl the API?").
|
||||
|
||||
4. **The Quiz Loop**:
|
||||
- Present 3-5 challenging scenarios *one by one*.
|
||||
- Format:
|
||||
> **Scenario**: [Describe a plausible edge case or failure]
|
||||
> **Current Spec**: [Quote where the spec implies behavior or is silent]
|
||||
> **The Quiz**: What should the system do here?
|
||||
|
||||
- Wait for user answer.
|
||||
- Critique the answer:
|
||||
- If user says "It errors", ask "What error? To whom? Logged where?"
|
||||
- If user says "It shouldn't happen", ask "How do you prevent it?"
|
||||
|
||||
5. **Capture & Refine**:
|
||||
- For each resolved scenario, generate a new requirement or edge case bullet.
|
||||
- Ask user for permission to add it to `spec.md`.
|
||||
- On approval, append to `Edge Cases` or `Requirements` section.
|
||||
|
||||
6. **Completion**:
|
||||
- Report number of scenarios covered.
|
||||
- List new requirements added.
|
||||
|
||||
## Operating Principles
|
||||
|
||||
- **Be a Skeptic**: Don't assume the happy path works.
|
||||
- **Focus on "When" and "If"**: When high load, If network drops, When concurrent edits.
|
||||
- **Don't be annoying**: Focus on *critical* flaws, not nitpicks.
|
||||
Reference in New Issue
Block a user