claude
535d067a3d
feat(blog): CI screenshots for Unit 3 (red) and Capstone (green)
...
CI / check (pull_request) Successful in 8s
The last two inline screenshots for the blog series, both real captures from
recklessop/m11-worktrees-demo (scratch CI demo repo):
- u3-ci-red.png: the failed CI run on PR #5 (wip: refactor
TaskList.add). Lint pass, Security scan pass,
Tests FAIL. The Test step is expanded so the
assertion that caught the regression is visible.
Screenshot target for Unit 3's "CI turns red on
a bad commit; then someone fixes it" story.
- capstone-ci-green.png: the green Checks panel on PR #4 (feat: add count
command). Lint pass, Tests pass, Security scan
pass — the exact "lint + tests + security scan
all passing" gate the capstone placeholder
asks for.
Both captured by Justin. Uploaded to WP as media 17204 (red) and 17205
(green). Embedded in scheduled drafts #17134 (Unit 3, Tue 2026-08-11) and
#17140 (Capstone, Thu 2026-08-20). All 17 blog posts now have their images
in place; the entire series through 2026-08-20 is queued.
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com >
Claude-Session: https://claude.ai/code/session_01TfzV5QvtPDz8LJS3Pu5VLT
2026-07-02 17:19:30 -04:00
claude
019426b7d1
Inline screenshots: M12, Unit 4, Unit 5 (final terminal batch) ( #127 )
...
CI / check (push) Successful in 6s
Sync to GitHub mirror / sync (push) Successful in 10s
Co-authored-by: claude <claude@jpaul.io >
Co-committed-by: claude <claude@jpaul.io >
2026-07-02 16:59:28 -04:00
claude
7c5920dc1a
Inline screenshots for the M11 (collaboration) post ( #126 )
...
CI / check (push) Successful in 6s
Sync to GitHub mirror / sync (push) Successful in 10s
Co-authored-by: claude <claude@jpaul.io >
Co-committed-by: claude <claude@jpaul.io >
2026-07-02 16:03:27 -04:00
claude
361ae4bb8d
Port PR #2 from GitHub: tighten tasks-app scope note ( #125 )
...
CI / check (push) Successful in 6s
Sync course wiki / sync-wiki (push) Successful in 3s
Sync to GitHub mirror / sync (push) Successful in 11s
Co-authored-by: claude <claude@jpaul.io >
Co-committed-by: claude <claude@jpaul.io >
2026-07-02 15:58:03 -04:00
claude
f61c46fe19
Inline screenshot for the M10 (reviewing) blog post ( #124 )
...
CI / check (push) Successful in 6s
Sync to GitHub mirror / sync (push) Successful in 8s
Co-authored-by: claude <claude@jpaul.io >
Co-committed-by: claude <claude@jpaul.io >
2026-07-02 15:45:48 -04:00
claude
bdbb91f1d1
Inline screenshot for the M9 (issues) blog post ( #123 )
...
CI / check (push) Successful in 8s
Sync to GitHub mirror / sync (push) Successful in 9s
Co-authored-by: claude <claude@jpaul.io >
Co-committed-by: claude <claude@jpaul.io >
2026-07-02 15:37:00 -04:00
claude
164559fcb5
Inline screenshots for the M8 blog post ( #122 )
...
CI / check (push) Successful in 7s
Sync to GitHub mirror / sync (push) Successful in 9s
Co-authored-by: claude <claude@jpaul.io >
Co-committed-by: claude <claude@jpaul.io >
2026-07-02 15:16:39 -04:00
claude
585aeabd9a
Inline screenshot for the M7 (worktrees) blog post ( #121 )
...
CI / check (push) Successful in 7s
Sync to GitHub mirror / sync (push) Successful in 9s
Co-authored-by: claude <claude@jpaul.io >
Co-committed-by: claude <claude@jpaul.io >
2026-07-02 15:01:51 -04:00
claude
efc5161698
Inline terminal screenshot for the M6 blog post ( #120 )
...
CI / check (push) Successful in 7s
Sync to GitHub mirror / sync (push) Successful in 8s
Co-authored-by: claude <claude@jpaul.io >
Co-committed-by: claude <claude@jpaul.io >
2026-07-02 14:58:03 -04:00
claude
60989dc640
Inline terminal screenshot for the M5 blog post ( #119 )
...
CI / check (push) Successful in 8s
Sync to GitHub mirror / sync (push) Successful in 8s
Co-authored-by: claude <claude@jpaul.io >
Co-committed-by: claude <claude@jpaul.io >
2026-07-02 14:53:32 -04:00
claude
5c745e9748
Inline terminal screenshots for the M4 blog post ( #118 )
...
CI / check (push) Successful in 8s
Sync to GitHub mirror / sync (push) Successful in 9s
Co-authored-by: claude <claude@jpaul.io >
Co-committed-by: claude <claude@jpaul.io >
2026-07-02 14:43:53 -04:00
claude
1be4e5b56c
Inline terminal screenshots for the M3 blog post ( #117 )
...
CI / check (push) Successful in 6s
Sync to GitHub mirror / sync (push) Successful in 8s
Co-authored-by: claude <claude@jpaul.io >
Co-committed-by: claude <claude@jpaul.io >
2026-07-01 10:42:53 -04:00
claude
11b1995d77
Crop inline M2 screenshots to terminal-only ( #116 )
...
CI / check (push) Successful in 6s
Sync to GitHub mirror / sync (push) Successful in 11s
Co-authored-by: claude <claude@jpaul.io >
Co-committed-by: claude <claude@jpaul.io >
2026-07-01 10:37:30 -04:00
claude
c4479e1041
Inline terminal screenshots for the M2 blog post ( #115 )
...
CI / check (push) Successful in 6s
Sync to GitHub mirror / sync (push) Successful in 8s
Co-authored-by: claude <claude@jpaul.io >
Co-committed-by: claude <claude@jpaul.io >
2026-07-01 10:31:00 -04:00
claude
dec55e4c9f
GitHub social-preview image (1280x640) ( #114 )
...
CI / check (push) Successful in 7s
Sync to GitHub mirror / sync (push) Successful in 9s
Co-authored-by: claude <claude@jpaul.io >
Co-committed-by: claude <claude@jpaul.io >
2026-06-24 23:25:34 -04:00
claude
75d9e2b419
Featured images for the 17 blog posts + square hero ( #113 )
...
CI / check (push) Successful in 7s
Sync to GitHub mirror / sync (push) Successful in 10s
Co-authored-by: claude <claude@jpaul.io >
Co-committed-by: claude <claude@jpaul.io >
2026-06-24 22:54:22 -04:00
claude
125802616d
Drop the bad gh-mirror/ exclude (it blocked the auto-heal) ( #112 )
...
CI / check (push) Successful in 7s
Sync to GitHub mirror / sync (push) Successful in 10s
Co-authored-by: claude <claude@jpaul.io >
Co-committed-by: claude <claude@jpaul.io >
2026-06-24 21:43:45 -04:00
claude
c46715b811
Fix sync workflow self-include (polluted GitHub with gh-mirror/) ( #111 )
...
CI / check (push) Successful in 7s
Sync to GitHub mirror / sync (push) Successful in 9s
Co-authored-by: claude <claude@jpaul.io >
Co-committed-by: claude <claude@jpaul.io >
2026-06-24 21:41:13 -04:00
claude
9b6658563b
Auto-sync Gitea main to GitHub mirror on every push ( #110 )
...
CI / check (push) Successful in 7s
Sync to GitHub mirror / sync (push) Successful in 10s
Co-authored-by: claude <claude@jpaul.io >
Co-committed-by: claude <claude@jpaul.io >
2026-06-24 21:38:40 -04:00
claude
556b5a7256
M15: change planted secret pattern + note hosted-forge push protection ( #109 )
...
Sync course wiki / sync-wiki (push) Successful in 5s
CI / check (push) Successful in 7s
Co-authored-by: claude <claude@jpaul.io >
Co-committed-by: claude <claude@jpaul.io >
2026-06-24 21:12:57 -04:00
claude
70d91722b7
Prep docs/syllabus/README for github.com/recklessop public mirror ( #108 )
...
Sync course wiki / sync-wiki (push) Successful in 5s
CI / check (push) Successful in 7s
Co-authored-by: claude <claude@jpaul.io >
Co-committed-by: claude <claude@jpaul.io >
2026-06-24 21:10:08 -04:00
justin
58f54ce745
Module 8: walk through GitHub PAT setup, link SSH as optional ( #106 ) ( #107 )
...
Sync course wiki / sync-wiki (push) Successful in 4s
CI / check (push) Successful in 7s
Co-authored-by: Justin Paul <justin@jpaul.me >
Co-committed-by: Justin Paul <justin@jpaul.me >
2026-06-23 20:32:04 -04:00
claude
95e5911957
Use python3 as the canonical command name course-wide ( #104 ) ( #105 )
CI / check (push) Successful in 7s
Sync course wiki / sync-wiki (push) Successful in 4s
2026-06-23 20:25:05 -04:00
claude
7f439212ac
Self-contained, skip-friendly lab starting points ( #103 )
...
Sync course wiki / sync-wiki (push) Successful in 5s
CI / check (push) Successful in 6s
Co-authored-by: claude <claude@jpaul.io >
Co-committed-by: claude <claude@jpaul.io >
2026-06-23 18:24:36 -04:00
justin
74f23534c0
Module prereqs: sort Prerequisites lists numerically ascending ( #102 )
CI / check (push) Successful in 5s
Sync course wiki / sync-wiki (push) Successful in 5s
2026-06-23 14:06:28 -04:00
claude
edf3f34336
Add CI (build+test) and tools/check.sh ( #101 )
...
CI / check (push) Successful in 5s
Co-authored-by: claude <claude@jpaul.io >
Co-committed-by: claude <claude@jpaul.io >
2026-06-23 09:48:32 -04:00
justin
8e0ae0d58a
Merge pull request 'Module 6: reframe Part C around the AI silently auto-resolving conflicts' ( #99 ) from claude/issue-97 into main
...
Sync course wiki / sync-wiki (push) Successful in 5s
Reviewed-on: #99
2026-06-23 09:07:34 -04:00
justin
0f8e7497a4
Module 6: reframe Part C around the AI silently auto-resolving conflicts ( #97 )
...
A current frontier editor-agent told to "merge X into Y" resolves the
conflict and completes the merge in one turn, so the learner never sees a
marker. The old Part C assumed Git would stop and ask. Rework the lab into
a three-beat sequence: witness the conflict once (agent stop-on-conflict
idiom, as in Module 26), undo it with `git merge --abort`, then let the AI
merge for real and auto-resolve while the learner does the one job still
theirs: verify with `git diff` after every merge.
Updates the matching surfaces so they tell one story: learning objective
#4 , the Merge-conflicts key concept, the AI-angle bullet, the
Where-it-breaks bullet, Check-for-understanding, the blog mirror, and the
make-conflict.sh on-screen guidance (read the markers yourself first).
Closes #97
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com >
Claude-Session: https://claude.ai/code/session_01KCv6VTpBG6Zo4xR4AvUQpj
2026-06-23 09:03:40 -04:00
claude
173f39ac44
De-slop internal docs + config (repo now fully em-dash-free) ( #98 )
...
Sync course wiki / sync-wiki (push) Successful in 4s
Co-authored-by: claude <claude@jpaul.io >
Co-committed-by: claude <claude@jpaul.io >
2026-06-23 08:51:38 -04:00
claude
863435915c
De-slop the syllabus and the blog (em-dashes + banned words) ( #96 )
...
Co-authored-by: claude <claude@jpaul.io >
Co-committed-by: claude <claude@jpaul.io >
2026-06-23 07:28:55 -04:00
claude
66c15800c3
Remove em-dashes from the wiki generator + README ( #95 )
...
Sync course wiki / sync-wiki (push) Successful in 5s
Co-authored-by: claude <claude@jpaul.io >
Co-committed-by: claude <claude@jpaul.io >
2026-06-22 23:25:31 -04:00
claude
c098933f25
De-slop: remove every em-dash + banned words across all modules + capstone ( #94 )
...
Sync course wiki / sync-wiki (push) Successful in 4s
Co-authored-by: claude <claude@jpaul.io >
Co-committed-by: claude <claude@jpaul.io >
2026-06-22 23:21:22 -04:00
claude
513d7e7ac8
Reframe sweep M7-27 + capstone (AI drives git, lesson=theory, de-slop) ( #93 )
...
Sync course wiki / sync-wiki (push) Successful in 11s
Co-authored-by: claude <claude@jpaul.io >
Co-committed-by: claude <claude@jpaul.io >
2026-06-22 21:58:36 -04:00
claude
a29823f4b3
Reframe M1-6: AI drives git, lesson=theory, de-slop + issue fixes ( #92 )
...
Sync course wiki / sync-wiki (push) Successful in 4s
Co-authored-by: claude <claude@jpaul.io >
Co-committed-by: claude <claude@jpaul.io >
2026-06-22 21:41:31 -04:00
claude
2467f25901
Lock direction: AI-drives-git reframe + lesson=theory + Claude Code example ( #91 )
...
Co-authored-by: claude <claude@jpaul.io >
Co-committed-by: claude <claude@jpaul.io >
2026-06-22 21:31:37 -04:00
claude
1522721a9a
Add prev/next textbook nav to wiki pages ( #77 )
...
Sync course wiki / sync-wiki (push) Successful in 4s
Co-authored-by: claude <claude@jpaul.io >
Co-committed-by: claude <claude@jpaul.io >
2026-06-22 19:22:00 -04:00
claude
3671541d6b
Fill blog course-link placeholders with the course URL ( #76 )
...
Co-authored-by: claude <claude@jpaul.io >
Co-committed-by: claude <claude@jpaul.io >
2026-06-22 19:15:32 -04:00
claude
e5960c17ab
Run wiki sync on docker runners (skip cleanly without token) ( #75 )
...
Sync course wiki / sync-wiki (push) Successful in 3s
Co-authored-by: claude <claude@jpaul.io >
Co-committed-by: claude <claude@jpaul.io >
2026-06-22 19:02:47 -04:00
claude
b0efe4912d
Fix README wiki link (absolute URL; relative form 404s in Gitea) ( #74 )
...
Sync course wiki / sync-wiki (push) Has been cancelled
Co-authored-by: claude <claude@jpaul.io >
Co-committed-by: claude <claude@jpaul.io >
2026-06-22 18:55:52 -04:00
claude
a3ff56e570
Update learner working-dir path to ~/ai-workflow-course after rename ( #73 )
...
Sync course wiki / sync-wiki (push) Has been cancelled
Co-authored-by: claude <claude@jpaul.io >
Co-committed-by: claude <claude@jpaul.io >
2026-06-22 18:54:23 -04:00
claude
3c1c94fb1a
Generate the course textbook into the wiki from modules/ (CI sync) ( #72 )
...
Sync course wiki / sync-wiki (push) Has been cancelled
Co-authored-by: claude <claude@jpaul.io >
Co-committed-by: claude <claude@jpaul.io >
2026-06-22 18:53:11 -04:00
claude
b974dce5f8
Update in-repo references after rename to ai-workflow-course ( #71 )
...
Co-authored-by: claude <claude@jpaul.io >
Co-committed-by: claude <claude@jpaul.io >
2026-06-22 18:35:55 -04:00
justin
a4ea86fd23
Merge pull request 'docs(blog): jpaul.me blog series for the course (17 posts)' ( #69 ) from claude/blog-posts into main
...
Reviewed-on: justin/the-workflow-course#69
2026-06-22 18:05:37 -04:00
claude
ba66f8a622
Reframe Module 9 worked-examples off already-built features ( #40 ) ( #70 )
...
Co-authored-by: claude <claude@jpaul.io >
Co-committed-by: claude <claude@jpaul.io >
2026-06-22 17:51:57 -04:00
claude
f47ccee96d
docs(blog): add 17-post jpaul.me blog series for the course
...
A standalone blog/ folder (not course content) with drafts for jpaul.me:
an announcement, a getting-started piece, then a hybrid weekly series —
one post per module for Units 1-2 (posts 03-13) and one per unit for the
back half (14-16) plus a capstone finale (17). Each post carries WordPress
metadata, a [COURSE LINK] placeholder, and [insert screenshot] blocks for
Justin to fill before publishing. README.md holds the manifest + checklist.
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com >
Claude-Session: https://claude.ai/code/session_015EghAChc9UbcF78t55mfdf
2026-06-22 17:49:00 -04:00
claude
f743bb671b
Voice + consistency: vary stock formulas, vendor-balance orient.py, unify loop (#48,#49,#51) ( #68 )
...
Co-authored-by: claude <claude@jpaul.io >
Co-committed-by: claude <claude@jpaul.io >
2026-06-22 17:45:33 -04:00
claude
f7011d4211
Strengthen M1 Seam 1; fix M6 conflict labels (#36,#37) ( #67 )
...
Co-authored-by: claude <claude@jpaul.io >
Co-committed-by: claude <claude@jpaul.io >
2026-06-22 17:35:47 -04:00
claude
3f096c71ff
Recovery editor note + refresh CI action pins + scaffold M15 merge (#43,#44,#50) ( #66 )
...
Co-authored-by: claude <claude@jpaul.io >
Co-committed-by: claude <claude@jpaul.io >
2026-06-22 17:30:41 -04:00
claude
315cb2c190
Container/runner/MCP lab polish (#41,#42,#45,#46) ( #65 )
...
Co-authored-by: claude <claude@jpaul.io >
Co-committed-by: claude <claude@jpaul.io >
2026-06-22 17:21:16 -04:00
claude
6691755060
Module 8 polish: backup check, credentials, forge, prices (#38,#39,#47,#52) ( #64 )
...
Co-authored-by: claude <claude@jpaul.io >
Co-committed-by: claude <claude@jpaul.io >
2026-06-22 17:15:40 -04:00