Trace-driven debugging — turn a 4-hour panic into a 20-minute investigation — step 5 of 9
The detector needs a fingerprint for each row that's hashable so
it can go into a set. args is a dict (not hashable). Wrap it in
frozenset(...) over its .items() so two dicts with the same
content produce the same fingerprint regardless of key order.
Fill the blank.
Expected output:
distinct calls: 2
⌘↵ runs the editor.read, then continue.
Trace-driven debugging — turn a 4-hour panic into a 20-minute investigation — step 5 of 9
The detector needs a fingerprint for each row that's hashable so
it can go into a set. args is a dict (not hashable). Wrap it in
frozenset(...) over its .items() so two dicts with the same
content produce the same fingerprint regardless of key order.
Fill the blank.
Expected output:
distinct calls: 2
⌘↵ runs the editor.read, then continue.