fix(voice/consistency): vary stock formulas, vendor-balance orient.py, unify the loop

- Vary 11 instances of two boilerplate openers ("A generic X course…" /
  "Strip away X…") across 10 modules so they read as distinct, concrete prose;
  kept the few deliberate, voice-distinct uses; locked exemplars untouched.
- M23 orient.py: detect a vendor-balanced set of AI-instruction filenames
  (AGENTS.md/CLAUDE.md/GEMINI.md/.cursorrules/.cursor/rules/copilot-instructions)
  instead of singling out one vendor. Still runs.
- Render the collaboration loop consistently as seven stations
  (issue->branch->implementation->PR->review->merge->closed) in M25/M26 to match
  M11 and the syllabus.

Closes #48
Closes #49
Closes #51

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01TfzV5QvtPDz8LJS3Pu5VLT
This commit is contained in:
2026-06-22 17:45:20 -04:00
parent f7011d4211
commit 7e8046a57f
12 changed files with 35 additions and 33 deletions
@@ -185,9 +185,8 @@ Learn the primitive here on two; the orchestration comes later.
## The AI angle
A generic devops course would mention worktrees as a niche convenience for the human who hates
stashing. For AI-assisted work they're closer to essential, for a reason specific to how agents
behave:
Worktrees look like a niche convenience — a way to dodge `git stash` when you switch branches. For
AI-assisted work they're closer to essential, for a reason specific to how agents behave:
- **An agent assumes its working directory is stable.** It reads files, reasons about them, and
writes them back over a session that can run for many minutes. If a *second* agent (or you,