[PR #1339] [MERGED] fix(labs/lab01): unblock prediction widget chain #7285

Closed
opened 2026-04-24 17:23:27 -05:00 by GiteaMirror · 0 comments
Owner

📋 Pull Request Information

Original PR: https://github.com/harvard-edge/cs249r_book/pull/1339
Author: @Shashank-Tripathi-07
Created: 4/16/2026
Status: Merged
Merged: 4/16/2026
Merged by: @profvjreddi

Base: devHead: fix/lab01-prediction-widget-chain


📝 Commits (2)

  • 580c093 fix(labs/lab01): unblock prediction widget chain
  • a6c0a95 ci: retrigger with workflow fix from #1344

📊 Changes

1 file changed (+35 additions, -38 deletions)

View changed files

📝 labs/vol1/lab_01_ml_intro.py (+35 -38)

📄 Description

Problem

Each mo.stop() gate cell was returning its interactive widgets (partA_scenario/partA_fix, partB_batch, partC_target) bundled with the next prediction radio. When a prediction was None, mo.stop() halted execution and those returns never happened, breaking the entire downstream chain. Result: partB_prediction, partC_prediction, partD_prediction were never created, so the tab-building cell never ran and nothing rendered.

Fix

Matches lab_02's working pattern:

  • Each gate cell now returns only the next prediction radio
  • All interactive widgets (partA_scenario, partA_fix, partB_batch, partC_target, partD_scale) move into the final gate cell (gated on partD_prediction)
  • Widgets are created only after all four predictions are resolved, then the tab cell can reference them normally

Testing

Verified against lab_02_ml_systems.py which uses the identical pattern and works correctly.

Fixes #1317


🔄 This issue represents a GitHub Pull Request. It cannot be merged through Gitea due to API limitations.

## 📋 Pull Request Information **Original PR:** https://github.com/harvard-edge/cs249r_book/pull/1339 **Author:** [@Shashank-Tripathi-07](https://github.com/Shashank-Tripathi-07) **Created:** 4/16/2026 **Status:** ✅ Merged **Merged:** 4/16/2026 **Merged by:** [@profvjreddi](https://github.com/profvjreddi) **Base:** `dev` ← **Head:** `fix/lab01-prediction-widget-chain` --- ### 📝 Commits (2) - [`580c093`](https://github.com/harvard-edge/cs249r_book/commit/580c0938900ebf6c207afef0103582495e6b17ba) fix(labs/lab01): unblock prediction widget chain - [`a6c0a95`](https://github.com/harvard-edge/cs249r_book/commit/a6c0a957ac232c122ac8126f081e5f08f59a477f) ci: retrigger with workflow fix from #1344 ### 📊 Changes **1 file changed** (+35 additions, -38 deletions) <details> <summary>View changed files</summary> 📝 `labs/vol1/lab_01_ml_intro.py` (+35 -38) </details> ### 📄 Description ## Problem Each `mo.stop()` gate cell was returning its interactive widgets (`partA_scenario`/`partA_fix`, `partB_batch`, `partC_target`) bundled with the next prediction radio. When a prediction was `None`, `mo.stop()` halted execution and those returns never happened, breaking the entire downstream chain. Result: `partB_prediction`, `partC_prediction`, `partD_prediction` were never created, so the tab-building cell never ran and nothing rendered. ## Fix Matches `lab_02`'s working pattern: - Each gate cell now returns **only** the next prediction radio - All interactive widgets (`partA_scenario`, `partA_fix`, `partB_batch`, `partC_target`, `partD_scale`) move into the final gate cell (gated on `partD_prediction`) - Widgets are created only after all four predictions are resolved, then the tab cell can reference them normally ## Testing Verified against `lab_02_ml_systems.py` which uses the identical pattern and works correctly. Fixes #1317 --- <sub>🔄 This issue represents a GitHub Pull Request. It cannot be merged through Gitea due to API limitations.</sub>
GiteaMirror added the pull-request label 2026-04-24 17:23:27 -05:00
Sign in to join this conversation.
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: github-starred/cs249r_book#7285