(step)
| 28 | |
| 29 | /** Stable identity for a step across re-scans (phase + title). */ |
| 30 | export function stepKey(step) { |
| 31 | if (!step) return ""; |
| 32 | return (step.section || "") + "::" + (step.title || ""); |
| 33 | } |
| 34 | |
| 35 | /** |
| 36 | * The next step Autopilot should run: the first not-done step in the active |
no outgoing calls
no test coverage detected