Commit Graph

70 Commits

Author SHA1 Message Date
ByungCheol 27beaf28d4 fix: 분류 관리 행 가로 오버플로우 — 이름+버튼 윗줄 / 대분류 select 아랫줄
CI / build (push) Failing after 13m50s
- 좁은 화면에서 버튼이 화면 밖으로 밀리던 문제 해결
- 행을 2단(이름·저장·삭제 / 대분류 선택)으로 분리, 버튼 sm 크기
- 추가 폼도 대분류 선택은 윗줄, 이름+추가는 아랫줄로 분리

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-06-22 23:49:39 +09:00
ByungCheol f55443b823 fix: 폼 셀렉트 높이를 input·버튼과 통일 (font 상속 리셋)
CI / build (push) Successful in 36s
- 네이티브 select 가 폰트 미상속으로 input 과 높이 달라 보이던 이질감 해소
- 전역 input/select/textarea { font: inherit } + select 기본 padding/border 정렬
- CategoryView 대분류 select 폰트 오버라이드 제거

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-06-22 23:39:37 +09:00
ByungCheol 6ab8d331e3 feat: 분류 대/소분류 UI — 관리·입력·예산·고정지출·통계
CI / build (push) Failing after 12m0s
- 분류 관리: 대분류 선택·소분류 들여쓰기(드래그 정렬 유지)
- 입력/예산/고정지출 분류 드롭다운 대분류 optgroup 그룹핑(값은 소분류명)
- 대시보드: 파이는 소분류 기준 + 대분류 합계 롤업 표시
- 릴리스 노트 33

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-06-22 23:16:46 +09:00
ByungCheol b1f85cee52 feat: 통계·가계부 UX 개선 + 계좌 탭 한 줄
CI / build (push) Failing after 14m57s
- 통계: 순자산 추이 주간(최근 3개월), 이번달 예상 지출(run-rate), 지난달 대비 지출
- 가계부: 내역→고정지출 바로 등록, 날짜별 접기/펴기(기본 접힘·오늘만 펼침·모두 토글)
- 계좌 관리 탭 한 줄(넘치면 가로 스크롤)
- 릴리스 노트 갱신(23~32)

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-06-22 22:38:22 +09:00
ByungCheol 8cc9cbb383 fix(android): 키보드(IME)가 입력폼 가리는 문제 — WebView를 키보드 위로 리사이즈
CI / build (push) Failing after 14m59s
- MainActivity 인셋 리스너에 IME 인셋 반영: 하단 패딩 = max(시스템바, 키보드 높이)
  → 키보드가 뜨면 WebView가 키보드 위로 줄어들어 입력 모달이 재배치됨
- AndroidManifest activity에 windowSoftInputMode=adjustResize 추가
- 모달은 기존 max-height+overflow로 스크롤되어 모든 필드 확인 가능
- 네이티브 전용(웹/PC 무영향) → APK 재빌드 필요

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-06-22 21:53:22 +09:00
ByungCheol 43b01da1ff docs: 고정지출 안내 — '확인 필요'로 생성 후 확정 안내
CI / build (push) Failing after 15m14s
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-06-20 17:13:26 +09:00
ByungCheol 8133963f89 feat: 이체에도 현금 지원 — ATM 출금(은행→현금) 등 현금 계좌 이체 가능
CI / build (push) Failing after 14m41s
- WALLET_KINDS에 현금 추가, 중복되던 별도 '현금' 라디오 제거
- 출금/입금 종류 모두에서 현금 선택 가능(이체 포함)
- 현금 계좌 선택 셀렉트 상시 노출, 수입/지출 현금은 '미지정'(무계좌) 허용 유지

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-06-14 15:53:56 +09:00
ByungCheol a4a4aec314 feat: 가계부·계좌관리에 현금 계좌 추가
CI / build (push) Failing after 14m41s
- 계좌 관리: '현금' 탭 + 폼(이름·초기 잔액, 발급사/계좌번호 등 미노출)
- 가계부 입력: 현금 선택 시 등록된 현금 계좌를 고를 수 있음(없으면 종전처럼 미지정)
- 고정 지출: 현금 종류 추가

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-06-14 15:43:45 +09:00
ByungCheol 9aa5f5d690 feat: 상환/납부 연회비 입력(카드 대상 시) + 원금/이자 안내
CI / build (push) Failing after 15m31s
- 대상이 카드일 때만 연회비 입력란 노출(repayTargetIsCard)
- 원금=이체·이자/연회비=지출 안내 placeholder, 검증 '원금·이자·연회비 중 하나'

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-06-12 22:52:34 +09:00
ByungCheol 9f079fcead docs: 릴리스 노트 갱신 — 투자 단순화·알림 입출금 분류·광고차단 강화·분류 학습·상환 수정
CI / build (push) Failing after 15m13s
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-06-12 22:33:01 +09:00
ByungCheol d88854d11b fix: 상환/납부를 수정(편집) 시에도 선택 가능하게
CI / build (push) Failing after 11m45s
- 구분 드롭다운의 '상환/납부'가 신규 등록에서만 보이던 제약(v-if="!editId") 제거
- 수정 중 상환/납부로 전환 시: 상환 2건(원금=이체, 이자=지출) 생성 후
  원본 1건 삭제 — 생성 성공 후 삭제 순서로 중간 실패 시 원본 보존
- openEdit에서 principal/interest 초기화(이전 값 잔존 방지)
- 잘못 입력한 단순 이체/지출을 원금·이자 분리 상환으로 정정 가능

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-06-12 22:06:16 +09:00
ByungCheol dba0741cca feat: 투자 계좌를 투자금·평가액 입력형으로 단순화 (종목 관리 제거)
CI / build (push) Successful in 34s
- 종목(매수/매도/현재가) 관리 UI(InvestPortfolio) 제거 — 퇴직연금·연금처럼
  투자금(투입원금)과 현재 평가액만 입력하면 손익·수익률 자동 계산
- 계좌 펼침: 종목 포트폴리오 → 투자금/평가액/손익 요약 카드
- 폼: '현재 평가액'을 기본 입력 필드로, 안내 문구 정리
- 투자 탭 진입 시 자동 시세갱신 로직 제거(불필요)
- 백엔드 변경 없음(평가액 직접입력 경로 그대로 사용)

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-06-09 23:12:22 +09:00
ByungCheol 9807472474 feat: 알림 입금 인식 + 미확인 수입 기본 은행계좌
CI / build (push) Successful in 34s
- 네이티브 알림 필터에 입금/이체/송금 키워드 추가(입금 알림도 수집)
- 미확인(pending) 내역: 수입(입금)이면 기본 계좌종류 은행, 지출이면 카드

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-06-09 22:50:23 +09:00
ByungCheol 2cde893d55 docs: 릴리스 노트 갱신 — 데스크톱 클라이언트·브랜드 아이콘·캘린더 팝업·월별 내역·카드 매칭·이미지 업로드·에디터 팝업
CI / build (push) Successful in 34s
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-06-07 21:05:47 +09:00
ByungCheol c67c2ba7ed fix: 모바일 에디터 팝업 좌측 잘림 — Toast UI margin-left:-150px 취소
CI / build (push) Failing after 13m37s
- Toast UI 가 max-width:480px 에서 popup 에 margin-left:-150px 를 줘 좌측으로 밀려 잘렸음
- 중앙 모달 규칙에 margin:0 !important 추가 → 표/링크 팝업도 화면 중앙에 온전히 표시

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-06-07 21:00:00 +09:00
ByungCheol 7276d878dd fix: 모바일에서 에디터 팝업(표/링크 등) 화면 중앙 모달로 — 좌측 잘림 해결
CI / build (push) Failing after 14m9s
- 좁은 화면(댓글창 등)에서 Toast UI 팝업이 좌측으로 넘쳐 OK/입력칸이 잘리던 문제
- @media(max-width:768px)에서 .toastui-editor-popup 을 fixed 중앙 모달로(항상 보임)

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-06-07 20:49:28 +09:00
ByungCheol 2e2c784f4c fix: 에디터 이미지 버튼 = 바로 업로드(팝업 제거) — 댓글창 OK 잘림 해결
CI / build (push) Failing after 12m20s
- Toast UI 기본 이미지 팝업(File/URL/Description/OK)이 작은 댓글창/하단 위치에서 잘려
  OK 를 못 누르던 문제 → 커스텀 툴바 이미지 버튼으로 교체(클릭 시 바로 파일선택→업로드→삽입)
- 서버 업로드(URL) 그대로

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-06-07 20:16:14 +09:00
ByungCheol f7f75b7fb1 revert: 게시판 에디터를 Toast UI 위지윅으로 통일(PC 포함)
CI / build (push) Failing after 14m53s
- PC 전용 textarea/썸네일 방식 제거 — 글 흐름(이미지 아래 설명 등)이 불편하다는 피드백 반영
- 모든 플랫폼 위지윅(이미지 인라인). PC 한글 첫 자음 중복은 감수(tui.editor Windows IME 업스트림 버그)
- 서버 이미지 업로드(addImageBlobHook)는 유지 — 화면 변화 없는 개선(base64 미사용)

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-06-07 20:03:44 +09:00
ByungCheol f45014f827 feat: PC 에디터 이미지를 첨부(썸네일)로 분리 — 본문 텍스트에 URL 미노출 + 썸네일 확대
CI / build (push) Failing after 11m37s
- 이미지 마크다운(![](url))을 본문 textarea 에서 분리해 별도 첨부 목록으로 관리
  · 저장 시 본문 끝에 합쳐 emit, 편집 로드 시 본문/이미지 분리
  · 썸네일 120px 확대 + 제거(×) 버튼
- 텍스트는 깨끗하게(긴 URL 미노출), 이미지는 썸네일로 확인

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-06-07 19:57:00 +09:00
ByungCheol cbc6245cc7 feat: PC 에디터 이미지 썸네일 — 편집창 안에서 올린 이미지 확인
CI / build (push) Successful in 35s
- 본문의 ![](url) 이미지를 파싱해 툴바 아래 썸네일 줄로 표시(서버URL·데이터URI 모두)
- 미리보기 탭/패널 제거(한글 IME 위해 textarea 유지), 썸네일로 업로드 확인

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-06-07 19:47:19 +09:00
ByungCheol bfba296b91 feat: 에디터 이미지 = 서버 업로드(URL) + 업로드 안내 메시지
CI / build (push) Successful in 35s
- PC 에디터: 🖼 → 압축 → 서버 업로드 → 본문에 ![](/api/images/{id}) 삽입(base64 제거)
- Toast UI(웹/APK): addImageBlobHook 으로 동일하게 서버 업로드(base64 대체)
- 업로드 중/실패 안내 메시지 표시

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-06-07 19:17:44 +09:00
ByungCheol 0238e0b22f feat: PC 마크다운 에디터에 이미지 추가(파일 선택 → 압축 → base64 임베드)
CI / build (push) Failing after 13m52s
- 이미지 버튼: 파일 선택 → imageToBlob(1280px·JPEG0.85)로 압축 → ![alt](data:...) 삽입
- 웹 에디터처럼 본문에 임베드(별도 서버 저장 없음), 단 압축으로 용량 절감

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-06-07 18:14:40 +09:00
ByungCheol b4aa5c2ad0 feat: PC용 툴바 마크다운 에디터 (한글 IME 정상)
CI / build (push) Successful in 34s
- Toast UI 는 Windows IME 와 충돌(업스트림 버그)하므로 PC(Electron)에선 textarea 기반
  마크다운 에디터 사용: 툴바(제목·굵게·기울임·취소선·인용·목록·체크·링크·코드·구분선) + Write/Preview 탭
- textarea(v-model)라 한글 IME 정상. 웹/APK 는 Toast UI 위지윅 유지

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-06-07 18:08:23 +09:00
ByungCheol 9c61f888a5 fix: PC(Electron) 본문 입력을 일반 textarea로 — 한글 IME 중복 완전 해결
CI / build (push) Failing after 12m11s
- Toast UI 위지윅·마크다운(CodeMirror) 둘 다 Electron 한글 IME 첫 자음 중복 발생
  (제목 등 일반 input 은 정상) → PC 에선 본문을 일반 textarea(v-model, 네이티브 IME)로 입력
- 웹/APK 는 기존 Toast UI 위지윅 유지

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-06-07 17:56:20 +09:00
ByungCheol 7f6a4c62e5 fix: PC(Electron) 위지윅 한글 IME 중복 → 에디터를 마크다운 모드로 전환
CI / build (push) Failing after 12m48s
- 진단: 제목(일반 입력)은 정상, 본문 위지윅(contenteditable)만 첫 자음 중복 → ProseMirror+Electron IME 버그
- MarkdownEditor: Electron 감지 시 initialEditType='markdown'(텍스트 기반 입력) → IME 정상. 웹/APK는 위지윅 유지
- 앞서의 불필요한 조합(composition) 처리 코드 제거(원인이 아니었음)

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-06-07 17:50:43 +09:00
ByungCheol 561c56a8e0 fix: PC(Electron) 한글 IME 첫 글자 중복 입력 수정
CI / build (push) Failing after 15m13s
- webPreferences spellcheck:false — Chromium 맞춤법 검사기가 한글 조합을 방해해
  첫 자음이 중복('ㅅ사')되던 Electron 알려진 버그 회피 (APK/모바일은 정상이라 데스크톱 전용 이슈)

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-06-07 17:43:17 +09:00
ByungCheol f86f8343ef fix: 게시판 에디터 한글 IME 첫 자음 중복 입력 수정
CI / build (push) Failing after 13m5s
- MarkdownEditor: IME 조합(compositionstart~end) 중에는 getMarkdown/emit 보류,
  조합 완료 시 한 번만 반영 → 조합 중 직렬화로 자음이 중복되던('ㅅ사') 문제 해소
- 조합 중에는 watch 의 setMarkdown 도 건너뜀

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-06-07 17:30:26 +09:00
ByungCheol dc31cf4bfa fix: 데스크톱 캐시로 인한 최신 화면 미반영 해결 + HTML no-cache
CI / build (push) Failing after 13m13s
- electron/main.cjs: 시작 시 HTTP 캐시 클리어 → 라이브 사이트 최신 프론트 항상 로드
  (루트 '/' HTML 이 캐시돼 옛 번들이 뜨던 문제 — '로그인 전 사이드바' 미반영 원인)
- nginx: location / 에 Cache-Control no-cache 추가(웹/PWA 진입 HTML 항상 최신)

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-06-07 17:25:21 +09:00
ByungCheol 0f9f7b4507 feat: PC 로그인 전 빈 사이드바 제거(중앙 정렬) + 데스크톱 창 크기 기억
CI / build (push) Failing after 10m45s
- App.vue: 비로그인 시 사이드바 숨김·단일 컬럼 그리드 → 콘텐츠가 창 중앙 정렬
  (프론트 변경이라 데스크톱은 재설치 없이 자동 반영)
- electron/main.cjs: 기본 창 1024x720 + 마지막 크기/위치/최대화 상태 저장·복원

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-06-07 17:17:42 +09:00
ByungCheol 786f7aae61 feat: 웹 안내 페이지에 PC 버전(Windows) 다운로드 링크 추가
CI / build (push) Failing after 14m5s
- WebOnlyNotice: PC 버전 다운로드 버튼(/download/SlimBudget-Setup.exe) + 모바일(준비 중)
- nginx: /download/ 위치 추가 — 배포(dist 교체)에 안 지워지는 /var/www/sb-downloads 에서 서빙
- 설치파일 이름 고정(SlimBudget-Setup.exe)

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-06-07 16:54:28 +09:00
ByungCheol 9de26cf417 feat: 데스크톱 클라이언트가 라이브 사이트 직접 로드 — 프론트 변경 자동 반영(재설치 불필요)
CI / build (push) Failing after 14m5s
- electron/main.cjs: dist 번들 → https://app.sblog.kr 직접 로드
  · 같은 출처라 webSecurity:false(CORS 우회) 제거, 오프라인 시 '다시 시도' 안내 화면
  · 앱 외 도메인 링크만 기본 브라우저로
- package.json: 설치파일에 dist 미포함·build:electron 제거(원격 로드라 불필요)
- .env.electron 삭제

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-06-07 16:39:28 +09:00
ByungCheol c128948d39 feat: 계좌 이용내역 월별 표시 — 길어지는 스크롤 해소
CI / build (push) Successful in 34s
- 계좌(은행/카드) 펼침 시 전체 평면 리스트 대신 월 단위로 표시
  · ◀ YYYY.MM ▶ 월 네비게이션(데이터 있는 월만, 빈 달 건너뜀) + 그 달 합계
  · 기본은 내역이 있는 가장 최근 월, 월 필터는 클라이언트단(walletEntries 재사용, 백엔드 무변경)

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-06-07 16:29:54 +09:00
ByungCheol cb5cf1f0bf feat: 브랜드 앱 아이콘 + Windows 데스크톱(Electron) 클라이언트
CI / build (push) Failing after 12m35s
- 앱 아이콘: 브랜드(초록 #00bc7e + 흰 막대 차트) 적응형 아이콘 생성(@capacitor/assets)
  · assets/ 에 SVG 소스 + 전 해상도 mipmap 재생성, 적응형 XML 인셋 제거(배경 풀블리드)
- 데스크톱: Electron 로 dist 를 감싼 Windows 설치파일(.exe)
  · vite electron 모드(상대 base)·라우터 해시 히스토리·App 게이트 Electron 감지
  · webSecurity:false 로 file:// CORS 우회, 백엔드는 https://app.sblog.kr/api
  · scripts: build:electron / electron:dev / electron:build(electron-builder NSIS)

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-06-07 16:20:55 +09:00
ByungCheol 095ba942eb feat: 홈 캘린더 일별 내역 팝업(모달)화 + 릴리스 노트 갱신
CI / build (push) Failing after 10m39s
- HomeView: 날짜 탭 시 아래 인라인 패널 대신 중앙 팝업으로 내역 표시(시인성)
  · @mouseenter 제거로 터치 '두 번 탭' 버그 해소(단일 탭 동작)
- docs/release-2026-06-06.md: 이어진 세션 변경(하단 내비·설정/계정·매매수정·보안·테스트/배포·안드로이드) 추가

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-06-06 17:09:05 +09:00
ByungCheol 006fc87f70 feat: 투자 매매내역 최근N+전체보기 모달·매매 수정 + 안드로이드 인셋 보정
CI / build (push) Successful in 26s
- InvestPortfolio: 인라인은 최근 5건만, 초과분은 '전체 보기' 스크롤 모달
- 매매 행에 수정(✏)/삭제 버튼 — PUT /trades/{id} 로 매매 수정
- MainActivity: 콘텐츠 루트에 시스템 바 인셋 패딩(CONSUMED) — 에지투에지 소프트키/상태바 겹침 보정

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-06-06 16:42:47 +09:00
ByungCheol 16b4bce136 feat: 바텀 내비 하단 고정(소프트키 위)·아이콘화 + 비밀번호 변경 정보변경 화면 통합
CI / build (push) Failing after 14m36s
- AppBottomNav: position fixed 하단 고정(스크롤 무관 상시 노출), 아이콘 전용(28px)
- MainActivity: 시스템 바 인셋만큼 웹뷰 패딩 — 에지투에지(targetSdk36)에서 소프트키 겹침 해소
- ProfileEditView: 정보변경 화면에 비밀번호 변경 섹션 흡수(현재 비밀번호 재사용)
- AppHeader 비밀번호 아이콘·App.vue ChangePasswordModal 마운트 제거(진입점 일원화)

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-06-06 15:49:07 +09:00
ByungCheol e76b5383d3 fix: 바텀 내비게이션 라벨 가독성 개선
CI / build (push) Failing after 14m36s
- 라벨 0.68→0.8rem·굵기 500·불투명도 0.92, 아이콘 22→25px, 바 높이 56→62px
- 텍스트가 너무 작아 메뉴 구분이 안 되던 문제 해소

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-06-06 15:29:56 +09:00
ByungCheol 15222c1971 @
CI / build (push) Failing after 14m35s
chore: 번들 청크 경고 한도 상향 — 마크다운 에디터는 라우트 지연 로딩

- toast-ui 에디터(~1MB)는 게시판 작성/상세에서만 동적 로딩되어 메인 번들과 분리됨
- 의도된 지연 청크이므로 chunkSizeWarningLimit 1200 으로 현실화

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
@
2026-06-06 15:04:15 +09:00
ByungCheol 43e2de6c3c ci: 배포 워크플로에 테스트 게이트 추가 — 실패 시 배포 중단
CI / build (push) Failing after 11m1s
- deploy.yaml 은 CI와 별개로 push:[main]에 트리거되며 테스트를 건너뛰고 있었음
  (백엔드 bootJar -x test, 프론트 테스트 스텝 없음) → 게이트 무력
- 배포 잡 안에서 테스트를 먼저 실행하도록 변경(Gitea는 워크플로 간 needs 불안정)
  · 백엔드: clean bootJar -x test → clean build (test 포함)
  · 프론트: Install → Test(npm test) → Build 순으로 분리

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-06-06 14:27:37 +09:00
ByungCheol c9ff605ac9 feat: 앱 하단 내비게이션·설정/계정정보·가입정보 변경 + 프론트 테스트·CI 게이트
CI / build (push) Failing after 10m29s
- 하단 내비게이션(뒤로/앞으로/홈/새로고침/설정), 사이드바 홈 제거
- 설정 화면: 계정정보·앱 버전(package.json)·App Data 삭제
- 가입정보 변경: 비밀번호 재인증 → 이름/이메일 수정
- 로그인 후 대시보드(/) 이동, 로그인 전 햄버거·네이버 로그인 버튼 숨김
- Vitest 도입(32): authApi/accountApi 와이어링, auth/ui 스토어, 로그인 플로우
- CI(.gitea): npm test 게이트 추가

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-06-06 14:08:01 +09:00
ByungCheol c5e4c2dad7 feat: 웹 안내페이지(앱전용)·회원가입 제한/봇차단·카드 인식 보정
- 웹(브라우저)은 안내 페이지만, 실제 이용은 앱(Capacitor). 개발모드는 예외
- 회원가입: 약관동의, 관리자 제한 토글, 진입부터 차단, 허니팟
- 카드 알림: pending 건 계좌종류 '카드' 기본선택(현금 X), 확인실패 시 HTTP 상태 표시
- 네이티브 알림필터: '카드' 키워드 제거+광고성 표현 차단
- docs/release-2026-06-06.md 정리

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-06-06 00:16:50 +09:00
ByungCheol 4e6a89fd7a feat: 홈 일별 캘린더·시세 갱신·게시판 카테고리·약관동의·계좌 마스킹
- 홈: 6월 예산 아래 일별 수입/지출 캘린더(마우스오버/탭 시 내역 목록)
- 투자: 시세 자동조회 버튼/진입 시 갱신, 보유종목 2줄 표기, 평가액 직접입력
- 게시판: 커뮤니티/짠테크 수다방/재테크 팁 분리, 사이드바 영역 구분선
- 회원가입: 이용약관·개인정보 수집 동의(필수 체크)
- 보안: 계좌번호 화면 마스킹(끝 4자리+눈 토글)
- 정기→고정지출, 내역/정기 라디오·sticky 저장, 태그 드래그 정렬
- fix: 모바일웹 새로고침 시 로그인 팝업(restore localStorage 우선)

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-06-04 05:01:33 +09:00
ByungCheol 67aa635dd8 refactor: 메뉴 평탄화 + 홈/가계부 대시보드 통합 + 통계 분리
CI / build (push) Failing after 12m23s
- 사이드바: '가계부' 상위 메뉴 제거, 단일 레벨로(홈/가계부 내역/통계/정기거래/계좌/분류/예산/태그/자유게시판)
- 자유게시판을 가계부 메뉴들 아래로 이동
- 홈(/)을 통합 대시보드로, 기존 가계부 대시보드 차트는 통계(/account/stats)로 이동
- /account → /account/entries 리다이렉트, 대시보드 제목 '통계'로

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-06-03 19:03:56 +09:00
ByungCheol 3be1d8792c feat: 카드 결제 알림 자동인식 네이티브 플러그인
CI / build (push) Failing after 11m11s
- CardNotifListenerService: 결제 알림(금액+승인/결제/카드) 가로채 백엔드로 전송
  (토큰은 Capacitor Preferences에서, 결제성 알림만 전송)
- CardNotifPlugin: 알림 접근 권한 확인/설정 열기
- AndroidManifest 서비스 등록, MainActivity 플러그인 등록
- 가계부 화면: 네이티브 미허용 시 '알림 접근 권한' 안내 배너

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-06-03 18:55:48 +09:00
ByungCheol 633aa54274 feat: 카드 알림 자동인식 - 확인 필요 배지/확정 UI/카운트
CI / build (push) Failing after 14m50s
- 미확인(pending) 내역에 '확인필요' 배지 + 행 강조 + '확인' 버튼(즉시 확정)
- 수정 저장 시 미확인 건은 확정 처리
- 가계부 헤더에 '확인 필요 N건' 카운트 배지
- accountApi: pendingCount/confirmEntry

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-06-03 18:51:43 +09:00
ByungCheol 8f8744ba4b fix: 모바일 웹 가계부 내역 진입 불가(청크 로드 실패) 해결
CI / build (push) Failing after 12m17s
- @capacitor/camera 정적 import 제거 → 네이티브에서만 동적 import
  (웹은 카메라를 호출하지도 않는데 정적 import가 AccountView 청크 평가를 깨뜨려
   모바일 웹에서 진입 시 청크 로드 실패 → onError 새로고침 → 로그인 루프 발생)
- router.onError 경로별 1회 새로고침으로 제한(무한 루프 방지) + 성공 시 플래그 정리

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-06-03 18:29:00 +09:00
ByungCheol f45be09ff1 fix: 배포 후 청크 로드 실패 시 자동 새로고침 + index.html no-cache
CI / build (push) Failing after 14m26s
- 모바일 웹에서 옛 index.html 캐시가 삭제된 옛 청크를 불러 메뉴(가계부 내역 등)가
  안 열리는 문제 → router.onError 로 청크 실패 감지 시 목적지로 전체 새로고침
- nginx 설정에 index.html no-cache 추가(재발 방지) — 서버 적용 필요

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-06-03 18:11:51 +09:00
ByungCheol 7acd2163fb feat: 영수증 등록 방식 선택을 커스텀 레이어 팝업으로 변경
CI / build (push) Failing after 14m14s
- OS 기본 프롬프트 대신 앱 톤의 모달(카메라 촬영 / 갤러리에서 선택 카드)
- 네이티브: CameraSource.Camera / Photos 직접 호출, 웹: file input(capture 토글) 폴백

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-06-03 18:07:01 +09:00
ByungCheol f50859140d feat: 영수증 인식 중 무한 로딩 바 표시
CI / build (push) Failing after 14m26s
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-06-03 18:01:51 +09:00
ByungCheol 537cea31b0 feat: 영수증 OCR 상호명→메모, 카드사 감지→카드 자동선택
CI / build (push) Failing after 15m1s
- 상호 추출 개선(GS25 등 숫자 포함 상호 허용, 날짜·전화·사업자·주소 제외)
- 카드 결제 영수증의 카드사 감지 → 등록된 카드(issuer/name 매칭) 자동 선택
- 매칭 실패해도 카드결제면 계좌종류를 카드로 좁혀줌
- 결과 표시에 💳카드명 추가

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-06-03 17:56:18 +09:00