mirror of
https://github.com/harvard-edge/cs249r_book.git
synced 2026-05-23 15:35:52 -05:00
[PR #1542] [CLOSED] fix: close issues 1531, 1532, 1502, 1508 #8251
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/1542
Author: @Shashank-Tripathi-07
Created: 4/25/2026
Status: ❌ Closed
Base:
dev← Head:fix/close-issues-1531-1532-1502-1508📝 Commits (1)
158a2cffix: close issues 1531, 1532, 1502, 1508📊 Changes
36 files changed (+96 additions, -48 deletions)
View changed files
➕
.codespellrc(+3 -0)📝
interviews/vault/questions/tinyml/tinyml-0384.yaml(+14 -13)📝
labs/vol1/lab_00_introduction.py(+1 -1)📝
labs/vol1/lab_01_ml_intro.py(+1 -1)📝
labs/vol1/lab_02_ml_systems.py(+1 -1)📝
labs/vol1/lab_03_ml_workflow.py(+1 -1)📝
labs/vol1/lab_04_data_engr.py(+1 -1)📝
labs/vol1/lab_05_nn_compute.py(+1 -1)📝
labs/vol1/lab_06_nn_arch.py(+1 -1)📝
labs/vol1/lab_07_ml_frameworks.py(+1 -1)📝
labs/vol1/lab_08_model_train.py(+1 -1)📝
labs/vol1/lab_09_data_selection.py(+1 -1)📝
labs/vol1/lab_10_model_compress.py(+1 -1)📝
labs/vol1/lab_11_hw_accel.py(+1 -1)📝
labs/vol1/lab_12_perf_bench.py(+1 -1)📝
labs/vol1/lab_13_model_serving.py(+1 -1)📝
labs/vol1/lab_14_ml_ops.py(+1 -1)📝
labs/vol1/lab_15_responsible_engr.py(+1 -1)📝
labs/vol1/lab_16_ml_conclusion.py(+1 -1)📝
labs/vol2/lab_01_introduction.py(+1 -1)...and 16 more files
📄 Description
Closes #1531, Closes #1532, Closes #1502, Closes #1508
fix(labs): bump mlsysim wheel ref 0.1.0 to 0.1.1 in all 33 labs
pyproject.tomlwas bumped to0.1.1in PR #1523 but themicropip.install()URLs in every lab still pointed to0.1.0. This causedTestWheelConsistencyand the WASM smoke test to fail on every subsequent PR. Bulk-replaced across all 33 labs inlabs/vol1/andlabs/vol2/.fix(ci): add .codespellrc to suppress false positive spell check failures
The codespell check has been failing on every PR because there was no ignore list. Added
.codespellrcat the repo root:socratiq/src_shadow(vendored/compiled JS, not hand-written)clos(Clos network topology),fpr(False Positive Rate),rin(ring buffer variable),ans,fo,curren(contributor name "Curren Iyer")fix(staffml): correct tinyml-0384 KWS question
Option 3 distractor used a valid throughput approach (4 x 80 = 320 MFLOPS) then poisoned it with a false MHz=MFLOPS equivalence, which penalized students who reasoned correctly. Replaced with an unambiguously wrong distractor. Also:
common_mistakeupdated to flag the MHz vs MFLOPS confusionfix(tinytorch): strip solution blocks when creating student notebooks
tito module startwas creating notebooks fromsrc/verbatim via jupytext, including all working implementations between### BEGIN SOLUTION/### END SOLUTIONmarkers. Students received solved notebooks instead of blank scaffolding._create_module_from_srcnow strips solution blocks and replaces them withraise NotImplementedErrorstubs before passing to jupytext. A_strip_solutionsstatic method handles the stripping. Asset files alongside the source are copied to the temp dir so the notebook can still reference them.Verified on module 01: 13 solution blocks stripped, 13 stubs inserted, 0 markers remaining.
Test plan
uv run --with pytest python -m pytest tests/inmlsysim/-- 363 passed_strip_solutionsverified directly onsrc/01_tensor/01_tensor.pyTestWheelConsistencywill pass: all 33 labs now referencemlsysim-0.1.1.codespellrc🔄 This issue represents a GitHub Pull Request. It cannot be merged through Gitea due to API limitations.