Skip to content

Commit 5e4252b

Browse files
Peter HaugeCopilot
andcommitted
docs: record CodeReviewer charter enhancement and completion
Closes #N This commit captures the completion of the CodeReviewer charter enhancement task executed by ApiOpsLead. The charter was enhanced with comprehensive tech-specific checks and patterns for code review standards across the project. Additions: - Orchestration log: .squad/orchestration-log/2026-05-12T19-13-00Z-apiopslead.md - Session log: .squad/log/2026-05-12T19-13-00Z-codereviewer-charter-enhancement.md - CodeReviewer history update: 2026-05-12 entry documenting charter enhancements The charter now includes explicit tech-specific patterns for: - TypeScript & ESM compliance - Singleton + export patterns - Error handling and APIM client interactions - Secret safety and credential redaction - Test patterns and workspace scoping - Immutability enforcement Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
1 parent daf24d8 commit 5e4252b

3 files changed

Lines changed: 171 additions & 30 deletions

File tree

.squad/agents/apiopslead/history.md

Lines changed: 19 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@
44

55
- **Project:** apiops-cli — TypeScript CLI for Azure API Management (`apiops extract`, `apiops publish`, `apiops init`)
66
- **Spec:** `specs/001-apiops-cli/spec.md`
7-
- **Constitution:** `.specify/memory/constitution.md` (v2.1.0) — supreme governance document
7+
- **Constitution:** `.squad/identity/constitution.md` (v2.1.0) — supreme governance document
88
- **User:** Elizabeth Maher
99
- **Stack:** TypeScript 5.x, Node.js 22 LTS, Commander, `@azure/identity`, Vitest, ESLint
1010
- **Key constraint:** No `@azure/arm-apimanagement` SDK for resource payloads — raw REST only
@@ -105,4 +105,22 @@
105105

106106
**Key insight:** Phase 2 is the foundational layer that blocks ALL user stories. Having all 14 infrastructure components verified and tagged for auto-close ensures clean milestone tracking.
107107

108+
### 2026-05-01: CodeReviewer Charter Enhancement
109+
110+
**What:** Rewrote the CodeReviewer charter (`.squad/agents/codereviewer/charter.md`) sections 3-8 to make reviews significantly more thorough and project-specific.
111+
112+
**Changes made:**
113+
1. **How I Work** — Expanded from 7 generic steps to 13 concrete, ordered steps. Added holistic diff reading, team decisions check, TypeScript strictness verification, error handling review, missing test detection, and naming consistency checks.
114+
2. **What I Flag** — Expanded from 6 categories to 11, adding: secret/credential leak specifics, TypeScript strictness, error handling, immutability violations, architecture patterns, naming/style.
115+
3. **Tech-Specific Checks** — NEW section with 8 subsections: TypeScript & ESM, Singleton + Export Pattern, Error Handling, Secret Safety, APIM Client Patterns, Immutability, Test Patterns, Workspace Scoping. Each item has severity level annotations.
116+
4. **Severity Levels** — Added concrete examples to each level, added escalation rule (3+ blockers → architectural discussion).
117+
5. **Boundaries** — Added "What I never wave through" clause, strengthened rejection output requirements, added "uncertainty is not an excuse to skip" principle.
118+
6. **Collaboration** — Added post-review protocol: severity-ordered findings, file/line references, concrete fix suggestions, assessment summary.
119+
7. **Voice** — Added three paragraphs reinforcing thoroughness over brevity, guilty-until-proven-correct mindset, and checking for what's *missing* not just what's *wrong*.
120+
8. **Constitution path** — Fixed all references from `.specify/memory/constitution.md` to `.squad/identity/constitution.md`.
121+
122+
**Why:** CodeReviewer was missing codebase-specific checks that external reviewers (Copilot) were catching. The charter now encodes this project's actual patterns (ESM `.js` extensions, `Record<string, unknown>` payloads, `HttpError` status branching, `SENSITIVE_KEY_PATTERNS`, singleton+class export, etc.) so the reviewer can't miss them.
123+
124+
**Key insight:** A generic "enforce TypeScript strict mode" instruction is useless if the reviewer doesn't know the specific patterns to look for. Project-specific checklists with severity annotations turn a reviewer from "looks fine to me" into a systematic quality gate.
125+
108126
<!-- Append new learnings here after each session -->

0 commit comments

Comments
 (0)