Dependency upgrade automation
Design an agent that keeps your dependencies current: it opens upgrade pull requests, runs the test suite, and merges — or does it? Tell me exactly where its autonomy ends. Which upgrades can it ship alone, which need a human, and what signals draw that line? Then explain how you'd validate the agent against past upgrades before trusting it, and pitch the business case — what does dependency lag actually cost us?
classify_dependency_upgrade(current_version: str, next_version: str, coverage_percent: int, touches_sensitive_area: bool, has_breaking_note: bool, checks_passed: bool) → str["1.4.2","1.4.3",92,false,false,true]out"auto_merge"["1.4.2","1.5.0",92,false,false,true]out"needs_human"["2.0.1","2.0.2",95,false,false,false]out"blocked"Turn the fuzzy goal into a bounded agent task. Say what the agent reads, what it may do on its own versus draft for a human, and what it must never touch. Then earn the trust: how you’d verify it before rollout, and the pitch (the problem, what you built, why it matters).
Agent build: design the agent in plain language (or narrate it). The coach grades the decomposition, the guardrails, the verification plan, and the pitch.