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
+4 -5
View File
@@ -17,8 +17,8 @@ purpose — each piece is a wall the autonomous agent has to land behind.
- **Module 9** — issues as an agent's task specification, including the `ready` label and the idea of
an agent as an *assignee*. An issue is the agent's input here.
- **Module 6** — branches. The agent's work goes on a branch, never straight onto `main`.
- **Modules 10 and 11** — the PR review gate and the full issue → branch → PR → review → merge → close
loop. The PR *is* the unit of supervision in this module.
- **Modules 10 and 11** — the PR review gate and the full issue → branch → implementation → PR →
review → merge → close loop. The PR *is* the unit of supervision in this module.
- **Modules 13 and 14** — tests and CI. The automated gate that runs on the agent's PR.
- **Module 15** — security scanning as another gate on the same pushes. Autonomy makes this
non-optional, not optional.
@@ -177,9 +177,8 @@ ask you to trust the model more. It asks you to trust your gates more, and to ha
## The AI angle
A generic automation lesson would teach you to script a runner job. What's specific to AI here is
that **the actor inside the job is non-deterministic and persuasive**, and that changes what
"automation" has to mean:
Scripting a runner job is ordinary automation. What's specific to AI here is that **the actor inside
the job is non-deterministic and persuasive**, and that changes what "automation" has to mean:
- **The output is a proposal, not a result.** A normal scheduled job (back up the database, rotate
logs) you trust to *complete*. An agent job you trust only to *propose* — because its output is a