diff --git a/ship/SKILL.md b/ship/SKILL.md
index c7a74dd73..b42195090 100644
--- a/ship/SKILL.md
+++ b/ship/SKILL.md
@@ -2371,6 +2371,11 @@ already knows. A good test: would this insight save time in a future session? If
**Idempotency check:** Before bumping, classify the state by comparing `VERSION` against the base branch AND against `package.json`'s `version` field. Four states: FRESH (do bump), ALREADY_BUMPED (skip bump), DRIFT_STALE_PKG (sync pkg only, no re-bump), DRIFT_UNEXPECTED (stop and ask).
```bash
+if ! git rev-parse --verify origin/ >/dev/null 2>&1; then
+ echo "ERROR: Unable to resolve origin/. Run 'git fetch origin' or verify the base branch exists."
+ exit 1
+fi
+
BASE_VERSION=$(git show origin/:VERSION 2>/dev/null | tr -d '\r\n[:space:]' || echo "0.0.0.0")
CURRENT_VERSION=$(cat VERSION 2>/dev/null | tr -d '\r\n[:space:]' || echo "0.0.0.0")
[ -z "$BASE_VERSION" ] && BASE_VERSION="0.0.0.0"
diff --git a/ship/SKILL.md.tmpl b/ship/SKILL.md.tmpl
index 470068fd8..da90dd2fe 100644
--- a/ship/SKILL.md.tmpl
+++ b/ship/SKILL.md.tmpl
@@ -406,6 +406,11 @@ For each comment in `comments`:
**Idempotency check:** Before bumping, classify the state by comparing `VERSION` against the base branch AND against `package.json`'s `version` field. Four states: FRESH (do bump), ALREADY_BUMPED (skip bump), DRIFT_STALE_PKG (sync pkg only, no re-bump), DRIFT_UNEXPECTED (stop and ask).
```bash
+if ! git rev-parse --verify origin/ >/dev/null 2>&1; then
+ echo "ERROR: Unable to resolve origin/. Run 'git fetch origin' or verify the base branch exists."
+ exit 1
+fi
+
BASE_VERSION=$(git show origin/:VERSION 2>/dev/null | tr -d '\r\n[:space:]' || echo "0.0.0.0")
CURRENT_VERSION=$(cat VERSION 2>/dev/null | tr -d '\r\n[:space:]' || echo "0.0.0.0")
[ -z "$BASE_VERSION" ] && BASE_VERSION="0.0.0.0"