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 @@
# Demo app `tasks`
# Demo app: `tasks`
A deliberately tiny command-line task tracker. It exists to be *changed by an AI*, so it's small
enough to read in a minute but real enough to have more than one file which is exactly where the
enough to read in a minute but real enough to have more than one file, which is exactly where the
copy-paste workflow starts to hurt.
This is the running example for **Module 1** (where you feel the copy-paste problem) and **Module 2**
@@ -9,8 +9,8 @@ This is the running example for **Module 1** (where you feel the copy-paste prob
## Files
- `tasks.py` the core logic (`Task`, `TaskList`).
- `cli.py` the command-line front end. Reads/writes `tasks.json`.
- `tasks.py`: the core logic (`Task`, `TaskList`).
- `cli.py`: the command-line front end. Reads/writes `tasks.json`.
## Run it