style(no-slop): remove every em-dash + banned words across all modules + capstone

Apply the no-ai-slop standard (now binding in AGENTS.md): the em-dash character is
banned outright (restructured, not blind-replaced), plus the banned word/phrase
list (delve, leverage, robust, seamless, truly, unlock, etc.). 0 em-dashes remain
in modules + capstone; the only "robust" left is the planted M10 ai-change.patch
trap. Module H1 titles use a colon separator.

All deliberate teaching devices preserved; labs compile/parse (py/sh/yaml/json);
no junk. AGENTS.md updated with the hard no-slop rules.

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 23:21:09 -04:00
parent 513d7e7ac8
commit 389ac2e460
99 changed files with 1324 additions and 1315 deletions
@@ -1,7 +1,7 @@
# Agent prompt issue #42, branch `feature/42-count`
# Agent prompt: issue #42, branch `feature/42-count`
Run this in the `tasks-app-42-count` worktree. This agent's work is genuinely parallel with #43
(docs) different files and deliberately collides with #44 (clear) at `cli.py`'s dispatch chain.
(docs), which touches different files, and deliberately collides with #44 (clear) at `cli.py`'s dispatch chain.
---
@@ -10,13 +10,13 @@ You are working in this worktree only. Do not touch any other folder.
**Task:** Add a `count` command to `cli.py` that prints the number of *pending* (not-done) tasks.
- Add a new `elif command == "count":` branch to the dispatch in `main()` in `cli.py`.
- Use the existing `TaskList.pending()` method from `tasks.py` do not change `tasks.py`.
- Use the existing `TaskList.pending()` method from `tasks.py`; do not change `tasks.py`.
- Print just the integer, e.g. `3`.
**Acceptance criteria:**
- `python cli.py count` prints the number of pending tasks and exits 0.
- No other files change. (`README.md`, `CHANGELOG.md`, and `tasks.py` are owned by other agents
- No other files change. (`README.md`, `CHANGELOG.md`, and `tasks.py` are owned by other agents;
stay out of them.)
When done, commit your work on this branch with a message referencing #42, then push the branch. Stop
@@ -1,13 +1,13 @@
# Agent prompt issue #43, branch `feature/43-docs`
# Agent prompt: issue #43, branch `feature/43-docs`
Run this in the `tasks-app-43-docs` worktree. This agent owns documentation only different files
Run this in the `tasks-app-43-docs` worktree. This agent owns documentation only, different files
from every other agent in the fleet, so it merges cleanly no matter what the others do. This is what
a *genuinely* parallel split looks like: disjoint files, no shared interface.
---
You are working in this worktree only. Do not touch any other folder, and do not edit `cli.py` or
`tasks.py` code is owned by other agents.
`tasks.py`; code is owned by other agents.
**Task:** Document the `tasks-app` and start a changelog.
@@ -15,7 +15,7 @@ You are working in this worktree only. Do not touch any other folder, and do not
and `done <index>`. Show an example invocation for each.
- Create `CHANGELOG.md` with a "Keep a Changelog"style `## [Unreleased]` section and an `### Added`
list. (Other agents are adding commands in parallel; leave a placeholder line noting that new
commands are landing the human will reconcile the exact list at merge.)
commands are landing; the human will reconcile the exact list at merge.)
**Acceptance criteria:**
@@ -1,7 +1,7 @@
# Agent prompt issue #44, branch `feature/44-clear`
# Agent prompt: issue #44, branch `feature/44-clear`
Run this in the `tasks-app-44-clear` worktree. **This agent deliberately collides with #42.** Both
add a new `elif` to the same dispatch chain in `cli.py` same file, same region. That's the
add a new `elif` to the same dispatch chain in `cli.py`: same file, same region. That's the
agent-vs-agent merge conflict the lab wants you to predict in Part A and resolve in Part C. It is not
a mistake in the lab; it is the lesson. Two agents on the same file is a *joint*, not a seam.