# Questions & Answers

## Q1: For F1: What qualifies as "well-defined acceptance criteria" in a task description (e.g., explicit checklist, Given/When/Then, measurable outcomes)?
**Category:** clarification
**Answer:** Acceptance criteria are well-defined when they are clear, objective, and testable so that a human or AI agent can unambiguously decide whether the work is done, even with probabilistic behavior.

## Q2: For F2: Where should acceptance criteria be recorded if missing from the task description (questions.md answers, a new field in task state, or a new file)?
**Category:** other
**Answer:** Store missing acceptance criteria in a dedicated `acceptance-criteria.json` file for the task.

## Q3: For F2: Should we enforce a specific format for acceptance criteria questions/answers (bullet list, checklist, JSON)?
**Category:** other
**Answer:** Yes, enforce JSON format for acceptance criteria.

## Q4: For F3: At what point should acceptance criteria be marked as met (manual confirmation, automated verification steps, or both)?
**Category:** other
**Answer:** Criteria are marked as met when the agent tests against them and verifies they are satisfied.

## Q5: For F3: How should the "mark task done" validation behave when criteria are missing or incomplete (hard error with guidance vs. warning)?
**Category:** other
**Answer:** When marking done, loop the coding agent up to 5 times (configurable per project via config.toml) until criteria are met; otherwise fail.

## Q6: Are acceptance criteria required for all tasks, including small test/demo tasks, or should there be an opt-out?
**Category:** other
**Answer:** No exemptions for now; acceptance criteria required for all tasks.
