4.6 KiB
4.6 KiB
- 잘 되는 코드 건들지 않기 — 버그 수정 시 정상 코드 수정 금지, 최소 지점만 수정
- 코드 수정 시 주석 + 커밋 메시지 둘 다 제시 — 인라인
[태그명 YYYY-MM-DD]+ 작업 단락 끝에 git commit 메시지 제안 (사용자가 직접 입력) - 작업 완료 = 코드+인수인계서/메모리, 커밋은 2단계 — 같은 응답에 코드+docs+memory 모두 작성. 단 커밋은 1차 코드만→해시확보→[TBD-CODE] 치환→2차 docs/memory. 커밋 메시지 2개 제시.
- 커밋 로그 파일 위치 — qcast-front 는 post-commit 훅으로
memory/commit_log.txt에 매 커밋 자동 append - 오버 이동은 평행 위치까지 클램핑 — useMovementSetting handleSave OVER_GUARD. 정책 flag
OVER_MOVE_POLICY(clamp/reject/passthrough) 상단 상수로 전환 가능 - moveLine + offset 이중 적용 방지 — drawHelpLine 호출 전 roof.moveFlowLine/moveUpDown 설정 금지. 순서: baseLines 복원 → drawHelpLine(moveLine 없이) → moveLine 속성 복원
- OVER 클램프 후 빨강 보조선 미해결 — 평행 직전까지 이동하면 eaveHelpLine(빨강) 이 계속 그려지는 별건 이슈, 2026-04-27 이후 재개 예정
- 평행 이동 SK 붕괴 근본원인/수정 — dy 적용 경로 2곳(moving/buildRaw)을 인덱스 직접 매핑 + Set 합집합으로 전환
- 페어링 인덱스 master = roofLines — skeleton-utils 정렬 master 를 wallLines→roofLines 로 변경, leftTop 최저좌표→CCW. 2026-05-06 ensureCounterClockwiseLines graph 키도 0.1 round 통일 (drift 보강)
- SHOULDER_ABSORBED 임계 < 10 통일 — skip/HIP_SKIP/_out 4경로/SK-VERTEX-PROXIMITY 가드 임계·범위, OVER_EPS=0.5→planeSize=5 대응
- SK 이동 로직 회귀 체크리스트 — V1 트랙 회귀 검증 5 시나리오
- v2.0 설계 방향 (휴면) — 2026-05-06 휴면. 사용자 명령 전까지 참조 금지
- v2.0 핵심 불변식 (휴면) — 2026-05-06 휴면. 사용자 명령 전까지 참조 금지
- 디버그 라벨 QPolygon 인라인 — 별도 util 파일 금지. 라벨 코드는 QPolygon.js 인라인, NEXT_PUBLIC_RUN_MODE==='local' 가드.
- 좌표 매칭 tolerance 는 UI drift 고려해 넉넉히 — 매칭용 isSamePoint 는 0.5, 기본 0.1 은 UI/Big.js drift 로 매칭 실패 빈발
- V1 단일 트랙 (V2 휴면) — 2026-05-06 V2 휴면. 사용자 명령 전까지 V2 언급/참조 금지
- 화면 표시 vs 내부 실질값 분리 — 라벨 흔들림 수정은 표시 단계 보정 우선, 좌표 round 추적은 별건. setActualSize axis 평균이 첫 적용 케이스.
- 명령 받으면 관련 파일 전체 확인 후 이행 — 단일 파일 추측 수정 금지. 흐름 전체 추적 후 수정 지점 결정.
- 2차 마루이동 ridge 클릭불가 보강 — useMovementSetting [type] effect 에 canvas 레벨 ridge selectable=true fallback 추가
- phantom ridge 다운스트림 cull — createInnerLinesFromSkeleton 종료 직전 zero-length+dead-end ridge 2단계 cull. SK builder drift phantom 흡수.
- HIP/RIDGE 분류 임계 5.0mm — addRawLine isDiagonal 임계 0.1→5.0. 벽이동 drift 로 ridge 가 hip 로 변하는 문제 차단.
- 마루이동 x/y-overlap 사전필터 — useMovementSetting FLOW_LINE 거리최소필터 이전 overlap 사전필터. 2차 이동 반대측 wall 오선택 차단.
- hip pitch 폴백 — processEavesEdge:2915 outerLine.pitch ?? roof.pitch ?? 0. hip 의 plane===actual 메뉴토글 무효 버그 수정.
- auxiliaryLine integrate 제외 — integrateExtensionLines sk-finder 에서 aux 제외. ext+aux 코너끝점 손실 → split 실패 차단.
- 저구배+특정기와 안내 alert — 6종 기와(和瓦A/B,平板瓦C/D,S瓦,セメント瓦)+寸 2~2.5미만 시 시공 매뉴얼 안내 alert(OK만). util
roof-pitch-warning.js