Case Studies
Inventory Alerts
Inventory logic flags records whose stock has reached a reorder threshold.
threshold checks
A threshold check turns a numeric comparison into a small decision list.
Inventory Alerts
inventory_alerts.py
Replay: real traced execution (multi-file project)
items = [
{"sku": "pen", "stock": 8},
{"sku": "notebook", "stock": 3},
{"sku": "marker", "stock": 12},
]
reorder_level = 5
alerts = []
for item in items:
if item["stock"] <= reorder_level:
alerts.append(item["sku"])
print("alerts=" + ",".join(alerts))
items = [
{"sku": "pen", "stock": 8},
{"sku": "notebook", "stock": 3},
{"sku": "marker", "stock": 12},
]
reorder_level = 10
alerts = []
for item in items:
if item["stock"] <= reorder_level:
alerts.append(item["sku"])
print("alerts=" + ",".join(alerts))
items ← [{'sku': 'pen', 'stock': 8}, {'sku': 'notebook', 'stock': 3}, {'sku': 'marker', 'stock': 12}]
1items→ [{'sku': 'pen', 'stock': 8}, {'sku': 'notebook', 'stock': 3}, {'sku': 'marker', 'stock': 12}] = [2 {"sku": "pen", "stock": 8},3 {"sku": "notebook", "stock": 3},4 {"sku": "marker", "stock": 12},5]67reorder_level→ 5 = 5 #@reorder_level=1089alerts→ [] = []10for item in items:for item in items:
pass 1 of 39alerts = []10for item{'sku': 'pen', 'stock': 8} in items[{'sku': 'pen', 'stock': 8}, {'sku': 'notebook', 'stock': 3}, {'sku': 'marker', 'stock': 12}]:11 if item["stock"] <= reorder_level:12 alerts.append(item["sku"])All 3 passes — pass 1 is the card above pass itemitem[”stock”]reorder_levelitem[”sku”]alerts1 {'sku': 'pen', 'stock': 8} — — — — 2 {'sku': 'notebook', 'stock': 3} 3 5 notebook [] → ['notebook'] 3 {'sku': 'marker', 'stock': 12} — — — — alerts ← ['notebook']
10for item in items:11 if item["stock"]3 <= reorder_level5:12 alerts→ ['notebook'].append(item["sku"]notebook)print("alerts=" + ",".join(alerts))
14print("alerts=" + ",".join(alerts['notebook']))outputalerts=notebook
items ← [{'sku': 'pen', 'stock': 8}, {'sku': 'notebook', 'stock': 3}, {'sku': 'marker', 'stock': 12}]
1items→ [{'sku': 'pen', 'stock': 8}, {'sku': 'notebook', 'stock': 3}, {'sku': 'marker', 'stock': 12}] = [2 {"sku": "pen", "stock": 8},3 {"sku": "notebook", "stock": 3},4 {"sku": "marker", "stock": 12},5]67reorder_level→ 10 = 1089alerts→ [] = []10for item in items:for item in items:
pass 1 of 39alerts = []10for item{'sku': 'pen', 'stock': 8} in items[{'sku': 'pen', 'stock': 8}, {'sku': 'notebook', 'stock': 3}, {'sku': 'marker', 'stock': 12}]:11 if item["stock"] <= reorder_level:12 alerts.append(item["sku"])All 3 passes — pass 1 is the card above pass itemitem[”stock”]reorder_levelitem[”sku”]alerts1 {'sku': 'pen', 'stock': 8} 8 10 pen [] → ['pen'] 2 {'sku': 'notebook', 'stock': 3} 3 10 notebook ['pen'] → ['pen', 'notebook'] 3 {'sku': 'marker', 'stock': 12} — — — — alerts ← ['pen']
pass 1 of 210for item in items:11 if item["stock"]8 <= reorder_level10:12 alerts→ ['pen'].append(item["sku"]pen)alerts ← ['pen', 'notebook']
pass 2 of 210for item in items:11 if item["stock"]3 <= reorder_level10:12 alerts→ ['pen', 'notebook'].append(item["sku"]notebook)print("alerts=" + ",".join(alerts))
14print("alerts=" + ",".join(alerts['pen', 'notebook']))outputalerts=pen,notebook