Skip to content

docs: harden branch content classification against renames - #5461

Draft
luvs01 wants to merge 1 commit into
lidge-jun:devfrom
luvs01:fix/455-branch-classification
Draft

luvs01 wants to merge 1 commit into
lidge-jun:devfrom
luvs01:fix/455-branch-classification

Conversation

@luvs01

@luvs01 luvs01 commented Sep 21, 2026

Copy link
Copy Markdown
Contributor

Motivation

  • The T3 content test collected the branch path set with rename detection enabled, so a rename contributed only its destination; a branch that renamed a file could be misclassified as LANDED when dev retained the source.

Description

  • Collect the path set with git diff --no-renames --name-only so both the deleted source and added destination are emitted, and document why rename detection must be off.

Testing

  • Documentation-only change; no code path exercised.

Review readiness checklist

This PR stays in draft until every box below is ticked. Tick all four boxes once the requirements are met:

  • All CI tests are green on my local testing.

  • I pushed my PR to the latest dev commit.

  • I resolved all correct Codex and CodeRabbit findings.

  • My PR is ready for review.

@coderabbitai

coderabbitai Bot commented Sep 21, 2026

Copy link
Copy Markdown
Contributor

Important

Draft PR not reviewed

Draft PRs are not automatically reviewed by default.

  • Trigger a manual review

To automatically review draft PRs, update your CodeRabbit configuration:

reviews:
  auto_review:
    drafts: true

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands.

@github-actions

Copy link
Copy Markdown
Contributor

Deterministic PR hygiene checks passed.

@github-actions github-actions Bot added documentation Improvements or additions to documentation review-ready labels Sep 21, 2026
@github-actions

github-actions Bot commented Sep 21, 2026

Copy link
Copy Markdown
Contributor

✅ READY

  • all PR quality gates passed; the review readiness checklist is complete.

Review readiness checklist

  • ✅ All CI tests are green on my local testing.
  • ✅ I pushed my PR to the latest dev commit.
  • ✅ I resolved all correct Codex and CodeRabbit findings.
  • ✅ My PR is ready for review.

4/4 boxes ticked.

Automatic ready-for-review conversion failed; please mark the pull request ready manually if it is still a draft.
The review-ready label marks this PR as ready; review automation runs independently.
Maintainers: @lidge-jun @Ingwannu

@lidge-jun

Copy link
Copy Markdown
Owner

리뷰 · 우선순위 22 / 80

이 PR은 브랜치를 지워도 되는지 적힌 기록 한 줄을 고칩니다. 바뀌는 파일은 devlog/_fin/260904_repo_hygiene_campaign/010_method.md 하나이고, 돌아가는 프로그램은 없습니다.

이 캠페인은 이미 끝났습니다. 로컬 브랜치 71개를 지운 뒤 마감 기록까지 있습니다.

지울지는 네 가지 검사로 정합니다. 이 저장소는 스쿼시 머지를 씁니다. 커밋이 dev의 조상인지만 보면, 이미 들어간 작업도 "아직이다"로 남습니다. 그래서 3번 검사(T3)가 중요합니다. 브랜치가 건드린 파일 목록을 뽑고, 그 파일만 dev와 비교합니다. 차이가 없으면 "이미 반영됨(LANDED)"으로 보고 지워도 된다고 합니다.

예전 목록 명령은 git diff --name-only입니다. git은 이름 바꾸기를 기본으로 알아챕니다. 그러면 목록에 새 이름만 남고, 지워진 옛 이름은 빠집니다. dev가 그 새 파일을 따로 가지고 있고 옛 파일은 그대로 두면, 고른 파일만 비교한 결과는 비어 있습니다. 브랜치와 dev의 파일 전체가 다른데도 LANDED가 됩니다. 이 PR은 목록 명령에 --no-renames를 붙여 옛 이름과 새 이름을 둘 다 뽑게 하고, 그 이유를 문단으로 적습니다.

라인 devlog/_fin/260904_repo_hygiene_campaign/010_method.md 25-30 - 문단은 지금 쓰는 규칙처럼 적혀 있습니다. 같은 파일 아래의 삭제 71개는 이 옵션 없이 집계된 결과입니다. 기록을 이렇게 고치면, 그때도 --no-renames로 지운 것처럼 읽힙니다.

라인 devlog/_fin/260904_repo_hygiene_campaign/000_plan.md 25 - 같은 3번 검사가 예전 명령 그대로입니다.

라인 devlog/_fin/260904_repo_hygiene_campaign/100_pr_verdicts.md 5 - PR을 분류할 때도 git diff --name-only origin/dev...<head>라고만 되어 있습니다. 010만 고치면 같은 폴더의 방법이 둘로 갈라집니다.

라인 devlog/_fin/260904_repo_hygiene_campaign/010_method.md 11 - 판정에 쓰는 두 번째 비교에는 --no-renames가 없습니다. 목록에 옛 경로가 들어가면 그 차이는 보통 빈 결과가 아니므로, 본문이 말한 잘못은 첫 명령 수정으로 막힙니다. 이 파일은 예전에 실패한 검사를 브랜치 이름(feat/macos-app, cursor-call-prerebase-260818)으로 적었습니다. 이번 경우는 그런 예시가 없습니다.

메인테이너의 판단이 필요한 지점

끝난 _fin 기록에 고친 명령을 넣을지, 다음에 브랜치를 지울 때 볼 곳에만 적을지입니다. 두 번째 git diff에도 --no-renames를 붙일지도 정하면 됩니다. 이번 설명의 구멍은 목록을 뽑는 첫 명령으로 막힙니다.

너의 추천

이름 바꾸기를 끄라는 설명은 맞습니다. 베이스는 dev입니다. types.ts/config.ts를 나누는 변경이 아니고, 같은 주제로 열린 PR은 이것뿐입니다. 본문을 그때 실행한 명령인 것처럼 덮어쓰지 마세요. "2026-09-21 이후에 다시 돌릴 때는 --no-renames를 쓴다. 마감 때 지운 71개는 이 옵션이 없었다"라고 날짜를 적어 두세요. 000_plan.md100_pr_verdicts.md의 같은 명령도 같이 고치세요. 잘못 LANDED가 된 브랜치가 있으면 이름을 한 줄 남기고, 없으면 측정된 사고가 아니라 미리 막는 주의라고 적으세요. 이 PR을 머지해도 지금 브랜치를 지우는 동작은 바뀌지 않습니다.

이 댓글은 grok-bot이 작성했습니다

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

documentation Improvements or additions to documentation review-ready

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants