Wiki Checklist Format

How DoR and DoD wiki pages are structured for automated parsing

Overview

How It Works

Skills fetch checklist criteria from ADO wiki pages at runtime -- the wiki is the single source of truth.

Wiki as Config

The /dx-dor, /dx-req, and /dx-req-dod skills fetch criteria from ADO wiki pages configured in .ai/config.yaml. Editing the wiki page immediately changes what the skill checks — no code changes needed.

Config Keys

scm:
wiki-dor-url: "https://myorg.visualstudio.com/..."
wiki-dod-url: "https://myorg.visualstudio.com/..."

Both URLs are required. Skills error if not configured.

Structure

Page Structure

DoR uses checkbox format, DoD uses table format. Both share the same section heading and scoring conventions.

DoR wiki page template (checkbox format)
# Definition of Ready -- Checklist

> **Who validates:** Tech Lead / DoR Agent
> **When:** Before "Ready for Development"

## 1. Section Name

- [ ] **Criterion name** `required` — What the agent checks
- [ ] **Another criterion** `recommended` — Advisory check
- [ ] **Human check** `human` — Only human can verify

> **Skip:** When this section can be skipped.

## 2. Next Section

...

## Scoring

- All `required` pass -> **Ready for Development**
- 1-2 `required` fail -> **Can proceed -- expect clarification**
- 3+ `required` fail -> **Needs more detail**
DoD wiki page template (table format)
# Definition of Done -- Checklist

> **Who validates:** DoD Agent / Tech Lead
> **When:** Before PR merge

## 1. Section Name

| Criterion | Who checks | What to verify |
|-----------|-----------|----------------|
| Criterion name | Agent | What the agent checks |
| Another criterion | Human | What a human verifies |

**Skip trigger:** When this section can be skipped.

## Scoring

**Scoring:**
- All automated criteria pass -> pass verdict
- 1-2 automated failures -> partial verdict
- 3+ automated failures -> fail verdict
Format

Required Elements

Section headings, criteria tables, and scoring rules.

Section Headings

  • Use ## N. Section Title format (numbered, with period)
  • Sections are parsed in order — numbering defines the sequence
  • Non-numbered ## headings (like ## Completion Summary) are metadata, not checklist sections

Criteria Checkboxes

Each section contains checkboxes in this format:

  • - [ ] Name tag — Description
  • Name — bold criterion name
  • Tag — inline code: required, recommended, or human
  • Description — what the agent checks or the human verifies

Tag Values

TagMeaningSkill Behavior
requiredAutomated check — must passEvaluates programmatically — PASS or FAIL
recommendedAutomated check — advisoryWARN at most, never FAIL
humanRequires human judgmentAlways WARN — agent cannot verify
Features

Skip Triggers and Scoring

Conditional skipping and verdict thresholds.

Skip Triggers

Optional blockquotes after criteria define when a section can be skipped (marked SKIP). DoR uses > Skip:, DoD uses Skip trigger:. The text is parsed as natural language. Common patterns:

  • “Pure configuration or content-only changes"
  • "Backend-only or infrastructure changes"
  • "Change type is X or Y”

Scoring Rules

Skills look for a **Scoring:** block with bullet points defining verdicts:

  • “All automated criteria pass” — pass verdict
  • ”1-2 automated failures” — partial verdict
  • ”3+ automated failures” — fail verdict
DoR

DoR-Specific Patterns

Detection patterns and sub-criteria unique to Definition of Ready.

Detection Patterns

The hint text after in each checkbox describes what the skill checks:

  • Clear: [Brand/Market] Verb + Feature — check title matches pattern
  • Direct link with node-id — look for Figma URL with node-id parameter
  • Field table or “no dialog changes” — look for table pattern or explicit skip

The agent interprets hints using its understanding of the story content. Hints are guidance, not rigid regex patterns.

Minimal DoR section example
## 1. Story Basics

- [ ] **Title and description** `required` — Title non-empty, Description non-empty
- [ ] **Acceptance criteria** `required` — AC section exists with at least 1 testable condition
DoD

DoD-Specific Patterns

Evidence checks unique to Definition of Done.

Evidence Checks

The DoD “What to verify” column describes evidence the skill looks for:

  • File existence checks: explain.md exists
  • ADO state checks: At least one linked PR exists in ADO
  • Codebase checks: Test files exist for changed components
  • Step status checks: All steps in implement.md marked done
DoD section with skip trigger
## 2. Testing

| Criterion | Who checks | What to verify |
|-----------|-----------|----------------|
| Tests written | Agent | Test files exist for changed components |
| Tests pass | Agent | Build step completed successfully |

**Skip trigger:** Pure configuration or content-only changes may not require tests.
Maintenance

Maintaining Wiki Pages

Edit directly in ADO -- changes take effect immediately.

How to Edit

  • Edit wiki pages directly in ADO — changes take effect immediately
  • Skills fetch the latest wiki content on every run (no caching)
  • Adding new sections or criteria automatically extends what the skill checks
  • Removing criteria removes them from the check — no code changes needed

Common Pitfalls

  • DoR: Checkbox format must be exact: - [ ] Name tag — Description
  • DoD: Table format must be exact: pipe-separated, header + separator + data rows
  • Use ## N. Title format for checklist sections (numbered with period)
  • Non-numbered headings are treated as metadata, not sections
Troubleshooting

Troubleshooting

Common issues when skills cannot parse wiki pages.

"wiki-dor-url not configured"

Add the URL to .ai/config.yaml under the scm: section. Both wiki-dor-url and wiki-dod-url are required.

Skill does not recognize a criterion

For DoR pages, check that the checkbox format is exact: - [ ] Name tag — Description. For DoD pages, check that the table has three columns, pipe-separated, with the header row matching Criterion | Who checks | What to verify.

New section not being checked

Ensure the heading uses the ## N. Title format (numbered, with period after the number). Non-numbered headings are metadata.

"Could not fetch wiki page"

Verify the URL is correct — it should be a full URL including the wiki identifier and page path.

KAI by Dragan Filipovic