File: workshop/side-quest-17-07-repo-poisoning.md
Overall Score: 4.97 / 10.0 (corpus mean: 6.15)
Flagged Dimensions:
| Dimension |
Score |
Benchmark |
Delta |
| cognitive_load |
5.9 |
≤ 800 words, ≤ 15 new concepts |
word_count 1224 (-4.1), new_concepts 23 (-4.0) |
| active_learning |
2.7 |
≥ 3 density |
-7.3 |
Root Cause (≤ 2 sentences):
The page introduces 23 new concepts (frontmatter fields like contents: read, toolsets, safe-outputs, allowed-files, protected-files.exclude, protected-files.policy, network.allowed-domains, plus the attack-scenario vocabulary) across 1,224 words — nearly triple the concept budget in 50% more words than ideal — while only 4 code blocks and 6 checklist items yield an activity density of 0.82, well under the ≥3 benchmark, despite the page containing two "Exercise" sections that read as more substantial than the density score suggests.
Evidence (quoted from the file):
Repository poisoning is what happens when a misdirected agent with write access commits changes an attacker designed — not changes the workflow author intended... The embedded YAML block in that issue body would define a job that exfiltrates ${{ secrets.GITHUB_TOKEN }} to an attacker-controlled server.
Learning Science Rationale:
Sweller's Cognitive Load Theory predicts that introducing 23 new concepts in one sitting exceeds working-memory capacity (typically 4±1 novel schema elements can be integrated per session without scaffolding), especially when the concepts are abstract security/permissions vocabulary rather than concrete, previously-encountered terms — this risks learners skimming the four defensive mechanisms (contents: read, create-pull-request, protected-files, network.allowed-domains) without deeply encoding any of them. Splitting the content into a "concept" pass and a "practice" pass would let Bloom's Apply-level exercises consolidate one mechanism at a time instead of asking learners to apply all four simultaneously in the final "Harden Your Workflow" exercise.
Improvement Prompt (for an agent):
Edit workshop/side-quest-17-07-repo-poisoning.md to reduce new-concept density and raise activity density:
1. Split the "How AW Defends Against It" section (currently introducing all 4 defenses: contents:read, safe-outputs:create-pull-request, protected-files, network.allowed-domains back to back) so each defense gets its own short "Exercise: apply this to your workflow" mini-checkpoint with a 1-2 item inline checklist immediately after its explanation, instead of deferring all practice to a single "Harden Your Workflow" exercise at the end.
2. Trim the "The Attack" narrative section by ~150-200 words: keep the exfiltration scenario but remove redundant restatement (the same scenario is explained twice — once in "The Attack" and again in "Why This Matters").
3. Keep the existing "Spot the Dangerous Frontmatter" and "Harden Your Workflow" exercises, but shorten the surrounding prose so total word count moves from ~1224 toward 950-1050.
4. Do not remove any of the four defensive mechanisms from the content — only redistribute practice opportunities earlier in the page.
5. Run `npx --yes markdownlint-cli2 "workshop/side-quest-17-07-repo-poisoning.md"` after editing.
Expected Score After Fix: 6.5 / 10.0
Generated by 🔬 Curriculum Quality Evaluator · copilot · auto · 62.1 AIC · ⌖ 23.2 AIC · ⊞ 9.5K · ◷
File:
workshop/side-quest-17-07-repo-poisoning.mdOverall Score:
4.97 / 10.0(corpus mean:6.15)Flagged Dimensions:
5.91224(-4.1), new_concepts23(-4.0)2.7-7.3Root Cause (≤ 2 sentences):
The page introduces 23 new concepts (frontmatter fields like
contents: read,toolsets,safe-outputs,allowed-files,protected-files.exclude,protected-files.policy,network.allowed-domains, plus the attack-scenario vocabulary) across 1,224 words — nearly triple the concept budget in 50% more words than ideal — while only 4 code blocks and 6 checklist items yield an activity density of 0.82, well under the ≥3 benchmark, despite the page containing two "Exercise" sections that read as more substantial than the density score suggests.Evidence (quoted from the file):
Learning Science Rationale:
Sweller's Cognitive Load Theory predicts that introducing 23 new concepts in one sitting exceeds working-memory capacity (typically 4±1 novel schema elements can be integrated per session without scaffolding), especially when the concepts are abstract security/permissions vocabulary rather than concrete, previously-encountered terms — this risks learners skimming the four defensive mechanisms (
contents: read,create-pull-request,protected-files,network.allowed-domains) without deeply encoding any of them. Splitting the content into a "concept" pass and a "practice" pass would let Bloom's Apply-level exercises consolidate one mechanism at a time instead of asking learners to apply all four simultaneously in the final "Harden Your Workflow" exercise.Improvement Prompt (for an agent):
Expected Score After Fix:
6.5 / 10.0