← 패치노트

수정 2026-07-29

v1.36.85

brainstorm 줄번호 오보 수정(10곳) · 실행되지 않던 명령 경로에 가드

표면을 제품 정확성으로 옮겨

핵심 변경

**brainstorm 검색 결과의 줄번호가 틀렸다.** 줄번호를 text.indexOf(block) 로 구하는데, **내용이 같은 블록이 둘 이상이면 항상 첫 번째 위치**를 돌려준다 — 실측으로 3행·10행에 있는 동일 lesson 블록이 둘 다 line=3 으로 보고됐다. 사용자가 그 줄로 가면 다른 항목이 있다. _blocksWithOffset(text, sep) 로 **순회하며 오프셋을 누적**하도록 10곳 전부 전환(evidence · skill history · lessons · plan milestones · archive × _brainstormFor/사람용 두 구현). 경계 9종(CRLF · 빈 블록 · 선두/말미 · 단일 조각 · 한글 · 구분자 없음 · 빈 문자열) 검증.
**selftest 338/338 이 초록인데 brainstorm 이 통째로 죽어 있었다.** 위 수정 중 import 를 빠뜨려 _blocksWithOffset is not defined 로 명령 전체가 실패했는데도 스위트는 전부 통과했다 — **그 명령의 실행 경로가 어떤 케이스에도 없었다**. 신설 가드는 실제 명령을 spawn 해 exit 와 출력을 함께 보므로 (a) 줄번호 회귀 (b) import 누락 둘 다 잡는다(변이로 확인).
**brainstorm 은 사람용과 --json 이 서로 다른 구현을 쓴다**(--json 은 _brainstormFor, 사람용은 자체 수집 코드). **텍스트 비교로는 "skills 매칭 입력이 다르다"고 보였지만 행위로 비교하니 같은 결과를 냈다** — 텍스트 diff 가 오판이었다. 다만 검수가 **세 입력에서 두 경로가 실제로 갈린다**는 반례를 냈다(--include-code · archive-only · workspace --include). 내 픽스처로는 재현되지 않았고 제대로 고치려면 사람용 수집을 _brainstormFor 로 단일화하는 큰 리팩터가 필요해 **이번 라운드에는 하지 않았다** — 다음 라운드 과제로 명시한다. 신설 가드에는 lessons/decisions 두 표면의 **건수와 줄번호 일치**만 넣었다(그 이상은 주장하지 않는다).

GitHub 릴리스 v1.36.85 →