# Self Review Checklist

> Use this skill before submitting code for review or merging a pull request. Covers a pre-merge checklist of common mistakes to catch across code quality, testing, security, and documentation. Invoke when the user says "review my code", "pre-merge check", "self-review", "am I ready to submit", or before opening a PR.

- Skill: `theinterneti/self-review-checklist-2` (Agent Skill)
- Install (CLI): `npx skillmds@latest add theinterneti/self-review-checklist-2`
- Raw SKILL.md: https://api.skillmd.com/api/skills/theinterneti/self-review-checklist-2/raw
- Safety review: pending
- Works with: Claude Code, Claude.ai, OpenAI Codex
- Category: Security
- Author: theinterneti (https://skillmd.com/u/theinterneti)
- Updated: 2026-09-17
- Page: https://skillmd.com/skills/theinterneti/self-review-checklist-2

---


### Self-Review Checklist (TTA.dev)

Run through this checklist before marking any task or PR as complete.

#### Code Quality

- [ ] All new functions have type annotations (`str | None`, not `Optional[str]`)
- [ ] All public functions have Google-style docstrings
- [ ] No manual retry/timeout/cache loops — use primitives
- [ ] State passed via `WorkflowContext`, not globals
- [ ] Import order: stdlib → third-party → local

#### Testing

- [ ] 100% coverage on new code
- [ ] Tests follow AAA pattern (Arrange-Act-Assert)
- [ ] Uses `MockPrimitive` for mocking (not real implementations)
- [ ] Uses `@pytest.mark.asyncio` on async tests
- [ ] Tests cover success, failure, and edge cases
- [ ] No external dependencies in tests (databases, APIs, filesystem)

#### Security

- [ ] No secrets or credentials in code
- [ ] No new `eval()`, `exec()`, or `subprocess.shell=True`
- [ ] URL validation uses `urlparse()`, not substring checks

#### Quality Gate

- [ ] `uv run ruff format --check .` — zero violations
- [ ] `uv run ruff check .` — zero violations
- [ ] `uvx pyright ttadev/` — zero errors
- [ ] `uv run pytest -v` — all tests pass

#### Documentation

- [ ] README updated if public API changed
- [ ] Code examples are copy-paste runnable
- [ ] Changed files have updated docstrings

#### Deep Reference

- Testing details: [`docs/agent-guides/testing-architecture.md`](../../docs/agent-guides/testing-architecture.md)
- Python standards: [`docs/agent-guides/python-standards.md`](../../docs/agent-guides/python-standards.md)

