Files
ai-workflow-course/modules/12-revert-reset-and-recovery/lab/bad-clear-snippet.py
T
claude c098933f25
Sync course wiki / sync-wiki (push) Successful in 4s
De-slop: remove every em-dash + banned words across all modules + capstone (#94)
Co-authored-by: claude <claude@jpaul.io>
Co-committed-by: claude <claude@jpaul.io>
2026-06-22 23:21:22 -04:00

20 lines
985 B
Python

# Module 12 lab: the deliberately BROKEN `clear` command.
#
# Paste the elif block below into cli.py's main(), alongside the other
# `elif command == "..."` branches (e.g. right after the "done" branch).
# Do NOT paste this header or the import line into cli.py if json is already
# imported there (it is); just the elif block.
#
# Why it's broken: it "works" once (prints a friendly message), but it writes
# the state file in the WRONG SHAPE. The next time the app loads tasks.json,
# load() tries to build Task(**t) from a plain string and crashes. Classic
# AI plausibility trap: reviews fine, runs fine once, breaks the next command.
#
# This exists so the lab's bad merge is deterministic across every learner.
elif command == "clear":
# BAD on purpose: dumps a bare string list instead of a list of task
# dicts, so the next load() -> Task(**t) blows up with a TypeError.
STATE.write_text(json.dumps(["cleared"]))
print("cleared all tasks")