[curriculum-eval] .github/skills/curriculum-quantitative-assessment/curriculum_assessment.py: checkpoint_quality, scaffolding — regex misses emoji
Maintainers usually reply within 2 days
Nobody has claimed this yet.
Assessment
- Difficulty
- 2/5
- Estimated time
- 1-3 hours
- Newbie friendliness
- 86/100
- Issue type
- Bug
- Clarity
- Clearly specified
- Activity status
- Active
- Tech stack
- python
- Domain
- testing-qa, tooling
Research direction
Start in .github/skills/curriculum-quantitative-assessment/curriculum_assessment.py by reading CHECKPOINT_RE and the has_prereq_section logic in collect_metrics_from_text. Re-run the rubric against workshop/*.md and spot-check 04-github-actions-intro.md, 05-agentic-workflows-intro.md, and side-quest-17-07-repo-poisoning.md; done means both emoji glyph and shortcode headings are detected without changing other scoring logic.
Written by the indexing model from the issue text.
Description
File: .github/skills/curriculum-quantitative-assessment/curriculum_assessment.py (corpus-wide impact: 90–93 of 93 workshop files)
Overall Score: N/A — systemic tooling defect, not a single-page score
Corpus Mean: 6.09 / 10.0 (artificially depressed by this bug)
Flagged Dimensions (aggregate impact):
| Dimension | Score (current) | Benchmark | Delta |
|---|---|---|---|
| checkpoint_quality | 0.0 for 90/93 files |
10.0 if ≥4 checklist items |
-10.0 (should be ~7.5–10 for most files) |
| scaffolding | 5.0 for 93/93 files |
10.0 if prereq/before-you-start section present |
-5.0 (should be 10.0 for ~86 files) |
Root Cause (≤ 2 sentences):
CHECKPOINT_RE = re.compile(r"##\s+✅\s*Checkpoint", ...) and the prerequisite-section regex r"##\s+📋\s*Before You Start" only match literal emoji glyphs, but this workshop's actual convention (used on nearly every page) is GitHub-flavored Markdown emoji shortcodes: ## :white_check_mark: Checkpoint and ## :clipboard: Before You Start. Because the regexes never match the shortcode form, has_checkpoint is False for 90 of 93 files and has_prereq_section is False for all 93 files, even though the content is present and well-formed.
Evidence (quoted from the file):
workshop/04-github-actions-intro.mdcontains## :clipboard: Before You Startand## :white_check_mark: Checkpointwith 5 checklist items — yetrubric-results.jsonreports"has_checkpoint": false, "has_prereq_section": false, "checkpoint_quality": 0.0, "scaffolding": 5.0"for this file. The same pattern repeats forside-quest-17-07-repo-poisoning.md,side-quest-11-06-anthropic-key.md,05-agentic-workflows-intro.md, and 86 other files.
Learning Science Rationale:
This is not a learning-science issue but a measurement-validity issue: per classical test theory, a rubric that systematically fails to detect a construct (checkpoints, scaffolding) it claims to measure produces scores with poor construct validity, making cross-file and cross-run comparisons (including the trend analysis in score-history.json) unreliable. Two of six weighted dimensions (weight 2.0 and 1.5 of 10.5 total, ≈33% of the composite) are affected, so this single defect can shift overall_score by roughly 0.5–1.1 points per file — enough to flip several files across the "below threshold" line used to select findings.
Improvement Prompt (for an agent):
In .github/skills/curriculum-quantitative-assessment/curriculum_assessment.py, update the
regex patterns used to detect checkpoints and prerequisite sections so they also match
GitHub emoji-shortcode headings, not just literal emoji glyphs. Specifically:
1. Update CHECKPOINT_RE so it matches both:
- "## ✅ Checkpoint" (literal emoji)
- "## :white_check_mark: Checkpoint" (shortcode)
Example: CHECKPOINT_RE = re.compile(
r"##\s+(?:✅|:white_check_mark:)\s*Checkpoint", re.IGNORECASE)
2. Update the has_prereq_section detection in collect_metrics_from_text so it matches both:
- "## 📋 Before You Start" (literal emoji)
- "## :clipboard: Before You Start" (shortcode)
- "## Prerequisites" (already handled)
Example:
re.search(r"##\s+(?:📋|:clipboard:)\s*Before You Start", raw, re.IGNORECASE)
or re.search(r"##\s+Prerequisites", raw, re.IGNORECASE)
3. Re-run the rubric against workshop/*.md and confirm has_checkpoint and
has_prereq_section now report True for files that use the :white_check_mark: and
:clipboard: shortcode headings (spot-check 04-github-actions-intro.md,
05-agentic-workflows-intro.md, and side-quest-17-07-repo-poisoning.md).
4. Do not change any other scoring logic, weights, or thresholds in this file.
Expected Score After Fix: Corpus mean rises from 6.09 / 10.0 toward an estimated 7.0–7.5 / 10.0, since ~90 files gain full scaffolding credit (5.0 → 10.0) and most gain checkpoint_quality credit (0.0 → 7.5–10.0 based on their existing 4+ checklist items.
Generated by 🔬 Curriculum Quality Evaluator · copilot · auto · 90.7 AIC · ⌖ 21.1 AIC · ⊞ 9K · ◷
- expires on Sep 26, 2026, 7:53 AM UTC
- Dominant language
- JavaScript
- Stars
- 49
- Forks
- 20
- Avg merge
- 7h 29m
- Merged PRs (30d)
- 35
Getting set up
We have not checked this project's setup files yet. Start from its README, and see our first-contribution guide for the general steps.
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
More from githubnext/gh-aw-workshop
-
curriculum documentation quality
Difficulty 2/5 1-3 hours Newbie friendliness 90/100
githubnext/gh-aw-workshop#3811 ·
Maintainers usually reply within 2 days
-
curriculum documentation quality
Difficulty 1/5 1-3 hours Newbie friendliness 92/100
githubnext/gh-aw-workshop#3812 ·
Maintainers usually reply within 2 days
-
curriculum documentation quality
Difficulty 2/5 1-3 hours Newbie friendliness 82/100
githubnext/gh-aw-workshop#3809 ·
Maintainers usually reply within 2 days
-
documentation
Difficulty 2/5 1-3 hours Newbie friendliness 88/100
githubnext/gh-aw-workshop#3807 ·
Maintainers usually reply within 2 days
-
documentation
Difficulty 1/5 1-3 hours Newbie friendliness 88/100
githubnext/gh-aw-workshop#3805 ·
Maintainers usually reply within 2 days
All issues in githubnext/gh-aw-workshop
Similar issues
-
factory-active factory-automatic task-bug-reproduction-success task-identify-harness-labels-done task-identify-issue-type-done
Difficulty 2/5 1-3 hours Newbie friendliness 90/100
vercel/ai#21528 · 3 comments ·
Maintainers usually reply within 1 day
-
Difficulty 2/5 1-3 hours Newbie friendliness 88/100
Maintainers usually reply within 1 day
-
status: waiting triage
Difficulty 2/5 1-3 hours Newbie friendliness 84/100
freeCodeCamp/freeCodeCamp#70412 ·
Maintainers usually reply within 1 day
-
Difficulty 2/5 1-3 hours Newbie friendliness 88/100
rohitg00/ai-engineering-from-scratch#490 ·
Maintainers usually reply within 1 day
-
Difficulty 2/5 1-3 hours Newbie friendliness 88/100
Maintainers usually reply within 6 days