Skip to content

Commit 0a356d7

Browse files
committed
docs(devlog): PR lidge-jun#527's dropped commit is not equivalent to what dev has
The plan assumed 1ba588e could simply be skipped because dev already carries 9dd3c42. Measured: same six files, but dev's version is +122 lines larger (208 vs 86 insertions, 150 differing range-diff lines) — it is a rewrite that absorbed review feedback, not a rename. Skipping the commit blindly and resolving conflicts toward the PR side would have silently reverted those 122 lines. The rebase procedure now pins dev as the canonical side and requires a post-cherry-pick diff against origin/dev to prove the delta is confined to the stale app-server warning.
1 parent cc4960e commit 0a356d7

1 file changed

Lines changed: 34 additions & 0 deletions

File tree

devlog/_plan/260728_bug_bundle_resolution/040_pr527_rebase.md

Lines changed: 34 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -72,6 +72,40 @@ git cherry-pick a64aa5856
7272
> 동등하지 않으면 `a64aa5856`가 미묘하게 다른 베이스 위에 얹히고 누락된 델타가
7373
> **조용히 사라진다.** 차이가 있으면 건너뛰지 말고 충돌로 해소한다.
7474
75+
### C 단계 실측 결과 — **동등하지 않다**
76+
77+
```
78+
$ git diff --stat 1ba588eff~1 1ba588eff | tail -1
79+
6 files changed, 86 insertions(+), 14 deletions(-)
80+
81+
$ git diff --stat 9dd3c42da~1 9dd3c42da | tail -1
82+
6 files changed, 208 insertions(+), 15 deletions(-)
83+
84+
$ git range-diff 9dd3c42da~1..9dd3c42da 1ba588eff~1..1ba588eff | rg -c '^\s+[-+]'
85+
150
86+
```
87+
88+
파일 목록은 6개로 **동일**하다:
89+
`src/codex/catalog/sync.ts`, `src/codex/refresh.ts`, `src/codex/sync.ts`,
90+
`tests/codex-refresh.test.ts`, `tests/codex-sync-api.test.ts`,
91+
`tests/injection-model-api.test.ts`.
92+
93+
그런데 dev의 `9dd3c42da`**+122줄 더 많다.** range-diff 차이 라인 150줄.
94+
`9dd3c42da``1ba588eff`의 재작성본이며 그 **상위집합**으로 보인다
95+
(리뷰 반영으로 커버리지가 늘어난 형태).
96+
97+
**따라서 계획의 "그냥 건너뛴다"는 그대로 실행하면 안 된다.** 수정된 절차:
98+
99+
1. `a64aa5856`만 체리픽하되, **충돌이 나는 것이 정상**이다 — `a64aa5856`
100+
`1ba588eff` 위에 쓰였고 dev에는 그 상위집합이 있다.
101+
2. 충돌 해소 시 **dev(`9dd3c42da`) 쪽을 무조건 정본**으로 삼는다. `1ba588eff`
102+
버전의 코드가 남으면 리뷰 반영분이 되돌려진다.
103+
3. `a64aa5856`**새로 추가하는 것만** 얹는다 — stale app-server 경고.
104+
4. 체리픽 후 `git diff origin/dev -- src/codex/` 로 실제 델타가 stale 경고에만
105+
국한되는지 확인한다. `9dd3c42da`의 라인이 사라졌으면 잘못된 해소다.
106+
107+
이 확인이 없었으면 dev의 리뷰 반영분 122줄이 조용히 되돌려질 수 있었다.
108+
75109
### 3. 충돌 해소 규칙
76110

77111
두 테스트 파일에서 충돌이 나면:

0 commit comments

Comments
 (0)