mirror of
https://github.com/harvard-edge/cs249r_book.git
synced 2026-05-06 17:49:07 -05:00
[PR #1375] [MERGED] fix(ci): unblock book-validate pre-commit (YAML + codespell + manifest) #5157
Reference in New Issue
Block a user
Delete Branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
📋 Pull Request Information
Original PR: https://github.com/harvard-edge/cs249r_book/pull/1375
Author: @profvjreddi
Created: 4/17/2026
Status: ✅ Merged
Merged: 4/17/2026
Merged by: @profvjreddi
Base:
dev← Head:fix/ci-yaml-codespell-manifest📝 Commits (5)
1875819fix(vault): quote YAML description containing 'javascript:' colon9bc001afix(ci): skip PDFs in codespell + ignore domain acronyms + fix typosab1a8f3chore(vault): regenerate staffml manifest (8053 → 9199 questions)03a32edchore(vault): update corpus-equivalence-hash to match typo-fixed corpus808b01afix(vault): revert over-eager codespell fixes; regen corpus + hash📊 Changes
25 files changed (+71 additions, -57 deletions)
View changed files
📝
.codespell-ignore-words.txt(+9 -0)📝
.pre-commit-config.yaml(+2 -2)📝
interviews/staffml/src/data/corpus.json(+16 -16)📝
interviews/staffml/src/data/vault-manifest.json(+22 -17)📝
interviews/vault/corpus-equivalence-hash.txt(+1 -1)📝
interviews/vault/questions/cloud/l1/diagnosis/cloud-2306.yaml(+1 -1)📝
interviews/vault/questions/cloud/l3/diagnosis/cloud-0601.yaml(+1 -1)📝
interviews/vault/questions/cloud/l3/fluency/cloud-r2-41047.yaml(+1 -1)📝
interviews/vault/questions/cloud/l5/design/cloud-sus-64008.yaml(+1 -1)📝
interviews/vault/questions/cloud/l5/evaluation/cloud-r2-41030.yaml(+1 -1)📝
interviews/vault/questions/cloud/l5/specification/cloud-fill-01609.yaml(+1 -1)📝
interviews/vault/questions/cloud/l5/specification/cloud-r2-41033.yaml(+1 -1)📝
interviews/vault/questions/edge/l1/design/edge-0089.yaml(+1 -1)📝
interviews/vault/questions/edge/l1/recall/edge-fill-01285.yaml(+1 -1)📝
interviews/vault/questions/edge/l2/recall/edge-0253.yaml(+1 -1)📝
interviews/vault/questions/edge/l4/recall/edge-r2-42005.yaml(+1 -1)📝
interviews/vault/questions/edge/l5/design/edge-fill-01510.yaml(+1 -1)📝
interviews/vault/questions/edge/l5/specification/edge-0704.yaml(+1 -1)📝
interviews/vault/questions/mobile/l5/evaluation/mobile-fill-00191.yaml(+1 -1)📝
interviews/vault/questions/tinyml/l3/implement/tinyml-fill-01361.yaml(+1 -1)...and 5 more files
📄 Description
Summary
After #1373 merged,
book-validate-dev.ymlstill failed on itspre-commitjob because three unrelated issues had accumulated ondevfrom recent vault/newsletter work. All three now blocked the Book badge from going green.This PR fixes all three in isolated commits:
interviews/vault/schema/question_schema.yaml:179) — the literaljavascript:in a description was parsed as a YAML mapping. Quoted the string.*.pdfwasn't in the skip list, so binary PDFs were being scanned as text and producing garbage flags. Added*.pdfto skip, added real domain acronyms (TBE,HSA,AER,AFE,ABD,shs,MulFunction) to.codespell-ignore-words.txt, and auto-fixed ~25 genuine typos in vault YAMLs and newsletter files (pre-empt*,pre-select*,preemptable,re-use*,heterogenous,3Nd,Tge,sligh,relevants,unparseable).interviews/staffml/scripts/generate-manifest.py. Delta: +1146 questions, +964 chains.Verification
Local pre-commit on the staged changeset passes every hook, including the ones that were failing in CI:
Commits (atomic)
18758196b— fix(vault): quote YAML description containing 'javascript:' colon9bc001a20— fix(ci): skip PDFs in codespell + ignore domain acronyms + fix typosab1a8f34a— chore(vault): regenerate staffml manifest (8053 → 9199 questions)Out of scope (flagged for later)
staffml-preview-devis also red ondev, but from unrelated TypeScript errors (missing@staffml/vault-typesmodule,trackEventexport,ChainInfo.name). That's its own PR.Test plan
book-validate-dev.ymlturns green on next dev push and the README Book badge recovers🔄 This issue represents a GitHub Pull Request. It cannot be merged through Gitea due to API limitations.