BADM 554 Box Sync
This directory contains a machine-generated snapshot of selected files from the BADM 554 Box workspace. K-ai reads these files to answer questions about the LD-team-owned course design state.
Canonical source: Box folder BADM 554 (Sachdev) / Development / 2026_Fall1_Sachdev/ (renamed from BADM 554 MSBAi (Sachdev) by 2026-09-12). Owned by the Learning Design (LD) team — Cheng Li is the active editor.
This snapshot: machine-readable derivative. Never edit these files directly — they will be overwritten on the next sync. To change content, edit the canonical Excel files in Box.
What’s in this directory
| File | Source on Box | Contents |
|---|---|---|
course-map.md |
Course Map.xlsx (file id 2237327519421) |
Course Learning Outcomes (CLOs), assessment-strategy weights, module-by-module learning objectives, aligned assessments, multimedia, suggested readings |
activity-roster.md |
Instructional Activity Roster.xlsx (file id 2237265073438) |
The M#I# item table — every lecture video, demo, live session, and instructional resource by module |
_last-synced.md |
(this directory) | Last-sync metadata: timestamp, file ids, sha1s, who last edited the canonical Box files |
How K-ai uses this
When a query mentions BADM 554, K-ai greps the msba-online repo. These files surface alongside the hand-curated courses/badm554_data_foundations.md:
- Hand-curated file (
badm554_data_foundations.md) → narrative design, philosophy, OLAP-first arc, pivoter framing, recruiting copy, etc. - Sync files (this directory) → live LD-team data: CLO numbering, module item codes, video lengths, assessment percentages, etc.
K-ai’s reply will cite both as appropriate.
How it syncs
Automatic: scripts/box-autosync.py runs by launchd at 08:00, 12:00, 16:00 and 20:00 US Central on Vishal’s Mac. It looks each file up by its Box file ID (not its folder path, so renames and folder moves do not break it), regenerates activity-roster.md (and course-map.md, once the Course Map is filled in) when the Excel content changes, and commits + pushes; VPS K-ai picks it up on its next git pull. _last-synced.md shows each file’s current Box path and when it was last edited on Box.
If a file becomes unreachable, or its layout changes to one the parser does not recognise, the run exits with an error and the box-autosync heartbeat alerts within 14 hours. Manual run: scripts/.venv/bin/python scripts/box-autosync.py (--dry-run --force previews all courses without writing).