carson 3.30.1 → 3.30.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 6f1c9bdf439edf6f4c50dbf4c2640ec87cf0cf7f5aacd7960d16c2d32600a0c3
4
- data.tar.gz: b82620a9e4524b9e08c7851f9de133967ce64284c7d2c57a71d87df7055ce8a1
3
+ metadata.gz: 3d81e341c8b680889a883ac964de779e488168c08b692b4bc550d18309a2cd79
4
+ data.tar.gz: 59334525ce9d1b7952917e1a69dee01f4056900c0bfde09da191c1246ed0a087
5
5
  SHA512:
6
- metadata.gz: 9433570c67b8f8b793eba64969356c6ec92775515e8291079518b0be7a4f051183eb20e19d23e0d6456a38a95c875f06d9e6d7536b434c30ec69fe36d63b0c4e
7
- data.tar.gz: 7b82e7e07750d8e0ac4d0502a95e86925e210c1cca5b0c0e33355604cc4910819f46c57b002c9b7d9fd8dd4c312b4bc4cfba26192875e1a23818498343a4b0d0
6
+ metadata.gz: 56ef060de2589540f6f87425fd49e147ee40577f9f6b8539152f06028100539c19b68d318e6dccb2376dc4666b05b3273b3989025b17510aeeb5866e2f32785e
7
+ data.tar.gz: 064f48a6b0b8db74484dd8584bcfa1b352caca8c68bb0662106ef235362486da602e654f5e1377495b7612df7a362ed00221e0737326224fd67aa0d514ca4b6f
data/RELEASE.md CHANGED
@@ -5,6 +5,17 @@ Release-note scope rule:
5
5
  - `RELEASE.md` records only version deltas, breaking changes, and migration actions.
6
6
  - Operational usage guides live in `MANUAL.md` and `API.md`.
7
7
 
8
+ ## 3.30.2
9
+
10
+ ### What changed
11
+
12
+ - **Recovery hints re-enter through Carson, not blocked raw commands** — Delivery error recovery messages no longer suggest raw `gh pr create`, `gh pr merge`, or `git rebase` commands. All recovery paths now guide the user back through Carson. Freshness blocks say "refresh this branch onto the target, then `carson deliver`" instead of teaching raw git recipes.
13
+ - **Fast PR indentation guard restored** — The Ruby indentation guard in CI now correctly handles access modifier detection, fixing false positives that blocked PRs.
14
+
15
+ ### No migration required
16
+
17
+ - Existing workflows continue to work unchanged.
18
+
8
19
  ## 3.30.1
9
20
 
10
21
  ### What changed
data/VERSION CHANGED
@@ -1 +1 @@
1
- 3.30.1
1
+ 3.30.2
@@ -288,7 +288,7 @@ module Carson
288
288
  when :blocked
289
289
  result[ :outcome ] = "blocked"
290
290
  result[ :waited_seconds ] = elapsed_settle_seconds( started_at: started_at )
291
- result[ :recovery ] = "git rebase #{config.git_remote}/#{main} && carson deliver" if evaluation[ :cause ] == "freshness"
291
+ result[ :recovery ] = "refresh this branch onto #{config.git_remote}/#{main}, then carson deliver" if evaluation[ :cause ] == "freshness"
292
292
  apply_handoff!(
293
293
  result: result,
294
294
  reason: evaluation.fetch( :reason ),
@@ -809,10 +809,9 @@ module Carson
809
809
 
810
810
  def freshness_recovery( freshness: )
811
811
  remote_ref = freshness.fetch( :remote_ref )
812
- return "git rebase #{remote_ref} && carson deliver" if freshness.fetch( :status ) == :behind
812
+ return "refresh this branch onto #{remote_ref}, then carson deliver" if freshness.fetch( :status ) == :behind
813
813
 
814
- remote, main = remote_ref.split( "/", 2 )
815
- "git fetch #{remote} #{main} && carson deliver"
814
+ "carson deliver (once #{remote_ref} is reachable)"
816
815
  end
817
816
 
818
817
  def deliver_merge_attempt_cap
@@ -898,7 +897,7 @@ module Carson
898
897
  reason: "freshness_behind",
899
898
  cause: "freshness",
900
899
  summary: "branch is behind #{remote_main}",
901
- recovery: "git rebase #{remote_main} && carson deliver"
900
+ recovery: "refresh this branch onto #{remote_main}, then carson deliver"
902
901
  } if merge_state == "BEHIND"
903
902
 
904
903
  return {
@@ -1127,7 +1126,7 @@ module Carson
1127
1126
 
1128
1127
  if lease_stderr.to_s.include?( "stale info" )
1129
1128
  result[ :error ] = "force-with-lease rejected — another push landed on #{branch} since your last fetch"
1130
- result[ :recovery ] = "git fetch #{remote} #{branch} && carson deliver"
1129
+ result[ :recovery ] = "inspect newer commits on #{branch}, reconcile, then carson deliver"
1131
1130
  else
1132
1131
  error_text = lease_stderr.to_s.strip
1133
1132
  error_text = "push failed (force-with-lease)" if error_text.empty?
@@ -1175,7 +1174,7 @@ module Carson
1175
1174
  error_text = stderr.to_s.strip
1176
1175
  error_text = "pr create failed" if error_text.empty?
1177
1176
  result[ :error ] = error_text
1178
- result[ :recovery ] = "gh pr create --title '#{pr_title}' --head #{branch}"
1177
+ result[ :recovery ] = "carson deliver"
1179
1178
  return [ nil, nil ]
1180
1179
  end
1181
1180
 
@@ -1274,7 +1273,7 @@ module Carson
1274
1273
  error_text = stderr.to_s.strip
1275
1274
  error_text = "merge failed" if error_text.empty?
1276
1275
  result[ :error ] = error_text
1277
- result[ :recovery ] = "gh pr merge #{number} --#{method}"
1276
+ result[ :recovery ] = "carson deliver"
1278
1277
  EXIT_ERROR
1279
1278
  end
1280
1279
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: carson
3
3
  version: !ruby/object:Gem::Version
4
- version: 3.30.1
4
+ version: 3.30.2
5
5
  platform: ruby
6
6
  authors:
7
7
  - Hailei Wang