← Lesson
Detect Ping-Pong
Joeven
Run
Reset
Python loads on first run
import hashlib import json def payload_hash(obj): blob = json.dumps(obj, sort_keys=True) return hashlib.sha256(blob.encode()).hexdigest()[:10] def step(path, nxt, brief, seen): h = payload_hash({"to": nxt, "brief": brief}) if h in seen: return path, "cannot: ping-pong" if nxt in path: return path, "cannot: cycle" seen.add(h) return path + [nxt], None seen = set() path = ["intake"] path, err = step(path, "billing", "refund 99", seen) print("first", path, err) path, err = step(path, "billing", "refund 99", seen) print("repeat", path, err) path2, err2 = step(["A", "B"], "A", "please review", set()) print("cycle", path2, err2)
Run to execute this in your browser. Nothing is sent to a server.