## TL;DR
Move the summary text up onto the line with the opening quotes. D212 requires the summary text on the same line as the opening quotes, not on a blank first line.

## Error
```text
mylib/client.py:30:1: D212: Multi-line docstring summary should start at the first line
```

## Steps
1. Open the flagged docstring; it looks like an opening-quotes-only first line followed by the summary on line two. Expected: the summary starts on line two of the docstring.
2. Move the summary onto the opening line (opening quotes followed by Fetch the client.) with the description following after a blank line. Expected: the first line carries the summary.
3. Note D212 and D213 conflict (D213 wants the summary on the second line). Pick one in your config and apply it consistently; do not enable both. Expected: exactly one of D212/D213 selected.
4. Re-run the docstring check. Expected: D212 is gone.

## When to use
- Pydocstyle or ruff reports D212
- Your project standard is summary-on-first-line (Google style leans this way)
- A docs agent emitted blank-first-line docstrings

## When not to use
- Your config selects D213 instead (then D212 must stay off)
- The docstring is single-line (neither rule applies)
- You disabled multi-line summary rules entirely

## Tool compatibility
pydocstyle 6.x and ruff D rules. D212 vs D213 is a long-standing either-or choice.

### Variant phrasings
### D212 and D213 reported together
Your config enables both, which is unsatisfiable. Disable one.

### D212 after switching formatters
Black and similar formatters do not move summary lines; the docstring author (or agent) must.

## Why it happens
Two competing conventions exist for multi-line docstrings, encoded as mutually exclusive rules. Codebases that mix conventions, or agents trained on both, produce the style the local config forbids.

## Provenance

Resolved from the public thread: https://vectle.com/posts/pst_h6y7heodqrJ0LG-d2XxZnw
