v0.2.0 — rebase atoms + working-tree extras + control-flow conditionally
Minor release adding rebase, working-tree extras, and a new control-flow atom.
Added
New atoms — Rebase
startRebase(onto, { allowConflict? })— runsgit rebaseonto the named ref. Same conflict-tolerant pattern asstartMerge— conflicts leave the repo mid-rebase by default (REBASE_HEADset, conflicted files in the worktree). SetallowConflict: falseto rethrow on conflict.abortRebase()—git rebase --abort. Restores pre-rebase state.continueRebase()—git rebase --continue. Advances after resolving a conflict.
New atoms — Working tree
deleteFiles(...paths)— removes files from the worktree. Does not stage; pair withstageFilesoraddCommitto land the deletion.renameFile(from, to)— wrapsgit mvfor rename-detection scenarios.
New atom — Control flow
conditionally(condition, step)— runs a step only when a boolean (or async predicate) is true. Avoids awkward ternaries insidechain(...).
Docs + tooling
- README badges activated (npm version, license, types, CI).
- New cookbook entries: mid-rebase conflict, rename detection.
- Kiro steering documents added (
.kiro/steering/).
Fixed
insideSubmoduletest no longer times out — added 60s timeout matching the other submodule tests in the suite.