Skip to content

Commit af60e4b

Browse files
dbejarano820claude
andcommitted
test(sensei): add manual test checklist for hook-to-sensei pipeline
Covers micro-lesson, inline-insight, command-hint, belt calibration, existing command preservation, rate limiting, and session cap. Part of DOJ-2439 (SRD-T0-1c). Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
1 parent bc0a828 commit af60e4b

File tree

1 file changed

+57
-0
lines changed

1 file changed

+57
-0
lines changed
Lines changed: 57 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,57 @@
1+
# DOJ-2439 Manual Test Checklist
2+
3+
## Prerequisites
4+
- [ ] jq installed (`jq --version`)
5+
- [ ] CodeSensei plugin installed in Claude Code
6+
- [ ] Profile exists at `~/.code-sensei/profile.json`
7+
8+
## Test 1: Micro-Lesson Trigger (First Encounter)
9+
10+
1. Delete a tech from your profile's `concepts_seen` array (e.g., remove "react")
11+
2. Ask Claude to create a `.jsx` file
12+
3. Verify: a `.json` file appears in `~/.code-sensei/pending-lessons/`
13+
4. Verify: the JSON has `"type":"micro-lesson"` and `"firstEncounter":true`
14+
5. Verify: the main context shows the delegation hint (not a full teaching prompt)
15+
6. Verify: if delegation succeeds, sensei produces a 2-3 sentence explanation
16+
7. Verify: the lesson file is deleted after delivery
17+
18+
## Test 2: Inline-Insight Trigger (Repeat Encounter)
19+
20+
1. Ensure "javascript" is in your profile's `concepts_seen` array
21+
2. Ask Claude to edit a `.js` file
22+
3. Verify: pending lesson has `"type":"inline-insight"` and `"firstEncounter":false`
23+
4. Verify: sensei produces a 1-2 sentence explanation (shorter than micro-lesson)
24+
25+
## Test 3: Command-Hint Trigger
26+
27+
1. Ask Claude to run a `git status` command
28+
2. Verify: pending lesson has `"type":"inline-insight"` or `"command-hint"`
29+
3. Verify: sensei explains briefly or skips if trivial
30+
31+
## Test 4: Belt Calibration
32+
33+
1. Set belt to "white" in profile.json
34+
2. Trigger a micro-lesson (Test 1)
35+
3. Verify: explanation uses analogies, zero jargon
36+
4. Change belt to "blue" in profile.json
37+
5. Trigger same micro-lesson
38+
6. Verify: explanation uses technical language freely
39+
40+
## Test 5: Existing Commands Unchanged
41+
42+
1. Run `/code-sensei:explain` — verify it still works as before
43+
2. Run `/code-sensei:quiz` — verify quiz flow unchanged
44+
3. Run `/code-sensei:why` — verify it still works as before
45+
4. Run `/code-sensei:progress` — verify dashboard unchanged
46+
47+
## Test 6: Rate Limiting Still Works
48+
49+
1. Rapidly create 3 files within 30 seconds
50+
2. Verify: only the first file triggers a pending lesson (rate limit = 30s)
51+
3. Exception: first encounters bypass rate limiting
52+
53+
## Test 7: Session Cap Still Works
54+
55+
1. Set `trigger_count` to 12 in `~/.code-sensei/session-state.json`
56+
2. Create a new file
57+
3. Verify: no pending lesson created (cap = 12 per session)

0 commit comments

Comments
 (0)