promptdojo_

Challenge the recommendation, then rerun the memo — step 7 of 7

Checkpoint

One last thing before we move on. Same surface as a write step — but the lesson doesn't complete until this passes.

Checkpoint: the ship gate — the whole chapter as one function. A memo leaves the building only if all four hold:

  1. The cleaning log reconciles: rows_in − rows_out equals the sum of the log's dropped list. Reason if not: cleaning log does not reconcile
  2. Every number traces: each claim's ref is non-None, exists in the memo's results, and matches its value. Reason if not: untraced number in memo
  3. The challenge is real: challenger is non-empty, differs from author, and all three triad legs are in answered. Reason if not: challenge missing or self-signed
  4. Rerun matches: the two fingerprints are equal. Reason if not: rerun drift

Write ship_gate(memo) returning ("SHIP", []) or ("HOLD", reasons) with reasons in check order 1-4. The report loop is provided.

Expected output:

M-1: SHIP
M-2: HOLD — untraced number in memo; rerun drift
M-3: HOLD — cleaning log does not reconcile; challenge missing or self-signed
M-4: HOLD — challenge missing or self-signed

full-screen editor opens — close anytime to keep reading.