Skip to content

Add a recap to every chapter and show a real retraction transaction - #53

Merged
thiagooak merged 1 commit into
mainfrom
fix/ped-09-recap-and-retraction
Sep 21, 2026
Merged

thiagooak merged 1 commit into
mainfrom
fix/ped-09-recap-and-retraction

Conversation

@thiagooak

Copy link
Copy Markdown
Owner

Summary

Implements the two "cheap items" from #38 (PED-09):

  • Chapter recaps: every chapter now ends with a 3-bullet "You can now" recap, naming what the reader can actually do after finishing it. Styled with a new .recap/.recap-label CSS class (a muted top border, distinct from the yellow .try box, since a recap summarizes rather than prompts an action). Applied to 15 of the 16 chapters — index.edn is skipped deliberately, since it's the course's intro/overview page and there's nothing yet to recap.
  • Real retraction example: the Time Travel chapter's history section now shows the actual transaction data behind Clefairy's Generation VI type change — a :db/retract and a :db/add in the same transaction, addressed by [:pokemon/number "035"] lookup ref rather than a raw entity id (which isn't stable across runs of the in-memory database). Verified against the live dataset's history via REPL before writing it into the page.

Out of scope, left untouched per prior discussion: the "Where to next" page, the capstone chapter, the transactable-database idea, and everything related to #33/#34/#35 or the still-open #39/PR #50.

Verification

  • clojure.edn/read-string over every chapter file — all parse cleanly
  • clojure -X:test — 32 tests, 503 assertions, 0 failures, 0 errors (matches baseline, no regressions)
  • End-to-end rendering via app.core/chapter-response for querying, time-travel, rules, and pull — confirmed the new markup renders with the recap-label class present, and that db/retract plus the "035" lookup ref appear correctly in the rendered Time Travel page

Closes #38

🤖 Generated with Claude Code

Each chapter now ends with a 3-bullet "You can now" recap, styled as a
plain top-bordered block via a new .recap CSS class. index.edn is
skipped since it's the course's intro overview, not a lesson to recap.

Time Travel's history section also gets the actual transaction data
for the Clefairy Normal->Fairy change, verified against the live
history: a :db/retract and a :db/add in the same Generation VI
transaction, addressed by lookup ref so the example doesn't depend on
a runtime-assigned entity id.

Closes #38

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
@thiagooak
thiagooak merged commit e66dd97 into main Sep 21, 2026
2 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

PED-09: No recap, capstone, next steps, or way to write data

1 participant