Code RoomHuman checkpoints for risky backfill
HardPrep Room Coding #4093

Human checkpoints for risky backfill

Vibe & agenticAlgorithms & data structuresSenior–Staff~24 min

You're tasking an agent with a risky change: a backfill that rewrites a `users.region` column for 80 million rows in Postgres, derived from a new geo-lookup, while the table is in active use. The agent is capable of writing the whole migration, the backfill job, and the rollback. Where exactly do you insert human-in-the-loop checkpoints, and which steps do you refuse to let it run autonomously no matter how good the code looks?

Implement
gate_backfill_steps(step_lines: list[str], sample_row_limit: int) → list[str]
Examples
in[["draft_migration|no|yes|0","dry_run_on_snapshot|no|yes|80000000","backfill_batch|yes|yes|1000","drop_old_column|yes|no|80000000"],1000]out["auto","auto","checkpoint","human_only"]
in[["shadow_write_new_column|yes|yes|10","backfill_all_rows|yes|yes|80000000"],5000]out["checkpoint","human_only"]
What a strong answer looks like

Treat the AI’s output as a draft to verify, not an answer to trust. Name the specific flaw and the input that triggers it, say how you’d catch it (tests, edge cases, reading critically), and how you’d re-prompt or decompose to get it right.

0:00 of about 24 min

Vibe & agentic: describe the solution in plain language (or narrate it) and the coach grades your approach.

Which questions mattered is sealed until you submit. Telling you now would just be handing over the edge cases.