이 글은 Daily Log 시리즈의 111번째 기록입니다. (총 155개)

오늘 한 일

  • 콘티온 Conti On
    • 베타 피드백 — 이미 담긴 곡을 또 넣으면 확인을 묻고, 자막이 살짝 높다는 의견에 세로 위치 미세조정을 넣음
    • 자막 위치 설정을 좌석 안내에서 빼 별도 섹션으로. 미리보기는 스크롤에 붙게(sticky) 해서 값을 만지며 바로 확인
    • 콘티 착석 토글이 곡 제목과 높이가 안 맞던 것 정렬
    • 저장 안 한 편집을 두고 나가려 하면 경고 — 자막 템플릿·자막 편집·곡 수정에 공통으로
    • 로그가 새 기능을 알아서 따라오게 — 피드가 action 목록 대신 “무엇에 대한 로그인지”로 거르게 바꿈
    • 템플릿 수정 기록에 실제로 바뀐 항목만 남게(자막 위치만 바꿔도 배경을 바꾼 것처럼 뜨던 것)
    • 설명서를 현재 기능에 맞춰 최신화
    • 코드 정리 — 6곳에 복붙돼 있던 날짜 포맷터를 한 곳으로, 자막 템플릿 화면의 설정 상태 16개를 하나로 묶음
    • 승인돼 잠긴 콘티라도 자막 담당자는 착석(좌석 안내)만 켜고 끌 수 있게 — 자막은 방송 자막 영역이라 그들 소관이라서
  • 모래게임 Sandrop
    • 열쇠 기믹을 재설계 — 빈 칸을 막던 길막을 없애고, 바스켓 자체를 잠그는 방식으로. 잠긴 바스켓은 항상 통로를 막으니 “안 막혀서 열 필요 없는” 판이 안 나온다
    • 잠금 대상은 가장 적은 색의 바스켓, 열쇠는 깊이 묻어서 파내려가야 나오게. 열쇠·자물쇠를 토큰 색으로 매칭
    • 얼음 기믹 추가 — 색 숨김에 이웃 3개가 나가야 3단계로 깨지고, 단계마다 파편이 튀고 마지막에 팡
    • crazy 레벨 — 판 전체가 물음표로 도배된 특별 관문을 60레벨마다
    • 뒤로가기를 눌러도 톱니 메뉴와 같은 일시정지 모달이 뜨게
    • 버그 넷 — 광고로 하트 받고 시작 안 되던 것, 다음 레벨 연타 시 코인 연출 중복, 난이도 배지 잘림, 김밥·부채 배경색 대비

어려웠던 점

  • 콘티온 Conti On
    • 자막 세로 위치 설정을 처음엔 좌석 안내 섹션에 뒀는데, 그 값은 자막 줄 전체에 적용되는 거라 좌석 안내에만 걸리는 것처럼 보였다. 기능이 아니라 놓인 자리가 오해를 만들었다
    • 저장 안 한 경고를 화면마다 따로 붙이면 또 갈릴 것 같아 공통으로 묶고 싶었는데, 어느 지점을 막아야 하는지(화면 이동·닫기·새로고침) 정리하는 게 일이었다
    • 로그에 새 항목을 추가할 때마다 별도 목록에도 넣어야 하는 게 걸렸다. 실제로 예전에 넣은 기능 하나가 그 목록에서 빠져 로그에 안 뜨고 있었다. “왜 수동이지”에서 시작해 분류 방식을 바꿨다
    • 자막 위치만 바꿨는데 로그엔 배경을 바꾼 것처럼 떴다. 로그를 항상 같은 내용으로 찍고 있었던 것 — 실제 바뀐 것과 기록이 따로 놀면 로그를 못 믿게 된다
    • 하루 종일 기능을 붙이다 보니 같은 코드가 여러 곳에 복붙되고 한 화면의 상태가 30개 넘게 불어 있었다. 마무리로 정리했는데, 상태를 하나로 묶을 때 읽는 쪽 코드는 안 건드리게 하는 게 관건이었다
    • 잠긴 콘티에서 착석만 예외로 허용하는데, 같은 곡이 콘티에 두 번 담길 수 있어 곡 번호로는 어느 항목인지 못 짚었다. 항목 자체의 id로 지정해야 했다
  • 모래게임 Sandrop
    • “열쇠가 도착할 때 열려야 한다”는 요청을 엔진 규칙에 넣었더니 봇이 레벨을 못 풀었다. 연출 지연은 UI에, 규칙은 엔진에 둬야 한다는 걸 되돌리며 배웠다(어제 TIL과 같은 교훈을 또 밟았다)
    • 얼음 3단계와 crazy 도배가 충돌했다. 얼음 하나 깨려고 이웃 3개를 빼야 하는데 도배 판은 그 이웃들도 다 얼어 있어서 못 푼다. crazy는 물음표로만 도배하기로
    • 얼음이 opacity만 줄면 뭘 한 건지 안 보였다. 단계마다 파편을 튀겨 “쩍” 갈라지는 걸 보이게. 감지를 집합 멤버십에서 강도 값 비교로 바꿔야 매 단계를 잡을 수 있었다
    • 난이도 배지가 잘린 이유가 폭 부족이 아니라 옆의 빈 공간과 폭을 나눠 가진 거였다. 코드 수정이 안 먹혔다고 생각했는데 앵커 문구가 달라 replace가 조용히 실패한 것도 몇 번 있었다

배운 점

  • (콘티온 Conti On TIL 4로 정리) 저장 안 한 편집 경고를 공통으로 — 막을 지점은 이동·닫기·새로고침 셋, Context Provider를 렌더하는 부모는 그 Context를 못 쓴다, dirty 판정은 화면마다 다르다
  • (콘티온 Conti On TIL 4로 정리) 로그 분류를 배열이 아니라 기록 시점의 entity로 — 새 기능이 자동으로 피드에 들어온다. 한 칸에 두 역할을 시키지 말 것
  • (콘티온 Conti On TIL 4으로 정리) 보여주는 것과 실제가 어긋나면 못 믿게 된다 — 로그는 바뀐 것만, 설정은 놓인 자리가 뜻을 바꾼다
  • (콘티온 Conti On TIL 4로 정리) sticky 미리보기·inline-flex 세로 정렬·막지 않고 묻기·단위 변환은 결과 수치로 검증
  • (콘티온 Conti On TIL 4로 정리) 복붙 정리와 상태 묶기 — 구조분해로 읽는 쪽은 안 건드리고, set 한 곳에 부수효과를 모으고, 반복 UI는 데이터로 편다. 정리는 기능이 일단락된 뒤에
  • (콘티온 Conti On TIL 4으로 정리) 잠긴 것 안에서 한 가지만 예외로 열기 — 권한은 도메인 소유권으로 가르고, 예외는 좁은 별도 경로로. 중복 가능한 대상은 행 id로 짚고, 그 id의 신뢰도는 데이터 상태에 달린다
  • (모래게임 Sandrop TIL 13으로 정리) 기믹을 규칙과 연출로 나누기 / 두 요청이 충돌하면 하나를 접기 / opacity만 바뀌면 뭘 한 건지 안 보인다 / 상태의 단계 변화는 값 비교로 잡기 / 문자열 replace 앵커가 어긋나면 조용히 실패한다

해야 할 일

  • 콘티온 Conti On — 착석 표시와 뱃지 충돌 실사용 확인, 후원 버튼, 공지사항 + 알림 통합, 콘티 항목 “수정됨” 표시
  • 모래게임 Sandrop — crazy 판 밸런스 확인, railSlots 5→4 검토, 배포 전 디버그 모드 제거

Series: Daily Log

1 오늘 해낸 것 2 오늘 해낸 것 3 오늘 해낸 것 4 오늘 해낸 것 5 오늘 해낸 것 6 오늘 해낸 것 7 오늘 해낸 것 8 오늘 해낸 것 9 오늘 해낸 것 10 오늘 해낸 것 11 오늘 해낸 것 12 오늘 해낸 것 13 오늘 해낸 것 14 오늘 해낸 것 15 오늘 해낸 것 16 오늘 해낸 것 17 오늘 해낸 것 18 오늘 해낸 것 19 오늘 해낸 것 20 오늘 해낸 것 21 오늘 해낸 것 22 오늘 해낸 것 23 오늘 해낸 것 24 오늘 해낸 것 25 오늘 해낸 것 26 오늘 해낸 것 27 오늘 해낸 것 28 오늘 해낸 것 29 오늘 해낸 것 30 오늘 해낸 것 31 오늘 해낸 것 32 오늘 해낸 것 33 오늘 해낸 것 34 오늘 해낸 것 35 오늘 해낸 것 36 오늘 해낸 것 37 오늘 해낸 것 38 오늘 해낸 것 39 오늘 해낸 것 40 오늘 해낸 것 41 오늘 해낸 것 42 오늘 해낸 것 43 오늘 해낸 것 44 오늘 해낸 것 45 오늘 해낸 것 46 오늘 해낸 것 47 오늘 해낸 것 48 오늘 해낸 것 49 오늘 해낸 것 50 오늘 해낸 것 51 오늘 해낸 것 52 오늘 해낸 것 53 오늘 해낸 것 54 오늘 해낸 것 55 오늘 해낸 것 56 오늘 해낸 것 57 오늘 해낸 것 58 오늘 해낸 것 59 오늘 해낸 것 60 오늘 해낸 것 61 오늘 해낸 것 62 오늘 해낸 것 63 오늘 해낸 것 64 오늘 해낸 것 65 오늘 해낸 것 66 오늘 해낸 것 67 오늘 해낸 것 68 오늘 해낸 것 69 오늘 해낸 것 70 오늘 해낸 것 71 오늘 해낸 것 72 오늘 해낸 것 73 오늘 해낸 것 74 오늘 해낸 것 75 오늘 해낸 것 76 오늘 해낸 것 77 오늘 해낸 것 78 오늘 해낸 것 79 오늘 해낸 것 80 오늘 해낸 것 81 오늘 해낸 것 82 오늘 해낸 것 83 오늘 해낸 것 84 오늘 해낸 것 85 오늘 해낸 것 86 오늘 해낸 것 87 오늘 해낸 것 88 오늘 해낸 것 89 오늘 해낸 것 90 오늘 해낸 것 91 오늘 해낸 것 92 오늘 해낸 것 93 오늘 해낸 것 94 오늘 해낸 것 95 오늘 해낸 것 96 오늘 해낸 것 97 오늘 해낸 것 98 오늘 해낸 것 99 오늘 해낸 것 100 오늘 해낸 것 101 오늘 해낸 것 102 오늘 해낸 것 103 오늘 해낸 것 104 오늘 해낸 것 105 오늘 해낸 것 106 오늘 해낸 것 107 오늘 해낸 것 108 오늘 해낸 것 109 오늘 해낸 것 110 오늘 해낸 것 111 오늘 해낸 것 읽는 중 112 오늘 해낸 것 113 오늘 해낸 것 114 오늘 해낸 것 115 오늘 해낸 것 116 오늘 해낸 것 117 오늘 해낸 것 118 오늘 해낸 것 119 오늘 해낸 것 120 오늘 해낸 것 121 오늘 해낸 것 122 오늘 해낸 것 123 오늘 해낸 것 124 오늘 해낸 것 125 오늘 해낸 것 126 오늘 해낸 것 127 오늘 해낸 것 128 오늘 해낸 것 129 오늘 해낸 것 130 오늘 해낸 것 131 오늘 해낸 것 132 오늘 해낸 것 133 오늘 해낸 것 134 오늘 해낸 것 135 오늘 해낸 것 136 오늘 해낸 것 137 오늘 해낸 것 138 오늘 해낸 것 139 오늘 해낸 것 140 오늘 해낸 것 141 오늘 해낸 것 142 오늘 해낸 것 143 오늘 해낸 것 144 오늘 해낸 것 145 오늘 해낸 것 146 오늘 해낸 것 147 오늘 해낸 것 148 오늘 해낸 것 149 오늘 해낸 것 150 오늘 해낸 것 151 오늘 해낸 것 152 오늘 해낸 것 153 오늘 해낸 것 154 오늘 해낸 것 155 오늘 해낸 것