Commit Graph

7 Commits

Author SHA1 Message Date
kjh2064 89fa51efe2 refactor admin UX and stabilize shell
TaxBaik CI/CD / build-and-deploy (push) Failing after 2m20s
2026-07-09 00:03:33 +09:00
kjh2064 3b055bbc93 경로 최적화 완료: 상대경로 + Nginx rewrite 준비
## 완료 항목
-  index.html base href: /taxbaik/admin/
-  모든 API 경로: 상대경로
-  E2E 테스트: 로컬 완벽 통과
-  WASM 부팅: 정상

## 운영서버 필수 사항
⚠️ Nginx 설정 변경 필수:

변경 전:
location /taxbaik {
    proxy_pass         http://127.0.0.1:5001;
}

변경 후:
location /taxbaik/ {
    proxy_pass         http://127.0.0.1:5001/;
    rewrite ^/taxbaik/(.*)$ /$1 break;
}

## 이유
- PathBase 제거로 앱이 /taxbaik을 인식하지 않음
- Nginx에서 /taxbaik 프리픽스를 제거해야 함
- 이렇게 하면 로컬/운영 모두 동일한 상대경로 동작

## 테스트 결과
로컬:
 공개 페이지: 5/5 통과
 대시보드: 4/4 통과 (퀵테스트)

운영:
 Nginx 수정 후 재테스트 필요

Co-Authored-By: Claude Haiku 4.5 <noreply@anthropic.com>
2026-07-08 16:27:48 +09:00
kjh2064 d2d162d58b Make DB lock validation CI friendly
TaxBaik CI/CD / build-and-deploy (push) Successful in 3m33s
2026-07-07 16:15:46 +09:00
kjh2064 0f71e8c41f Fix admin WASM shell and E2E auth
TaxBaik CI/CD / build-and-deploy (push) Failing after 23s
2026-07-07 15:47:29 +09:00
kjh2064 35842b6765 Refine admin login flow and verification harness
TaxBaik CI/CD / build-and-deploy (push) Successful in 2m21s
2026-07-07 14:38:30 +09:00
kjh2064 e5981769b9 fix: per-page WASM render mode, Contact checkbox binding, Telegram inquiry channel
TaxBaik CI/CD / build-and-deploy (push) Successful in 2m11s
- Admin: replace the global @rendermode on <Routes>/<Router> with per-page
  render mode. Login.razor now prerenders (form visible before WASM loads);
  every other [Authorize] page stays prerender: false to avoid the
  AuthorizeRouteView blank-render regression from earlier attempts. Adds a
  "준비 중" -> "로그인" splash tied to WASM boot completion, and lets the
  authenticated-shell loading overlay stay up until AdminShell actually renders.
- Contact.cshtml: fix the "Agree" checkbox missing value="true" - a checked
  box sent the browser-default "on", which bool model binding can't parse,
  so ModelState.IsValid silently went false and OnPostAsync returned a blank
  form with no visible error on every submission. Validation summary widened
  from ModelOnly to All so this class of failure isn't silent again.
- TelegramInquiryNotificationService: read Telegram:InquiryChatId (falling
  back to ChatId) instead of only ChatId, matching the channel routing
  CLAUDE.md documents and deploy.yml already provisions as separate secrets.
- Reconcile CLAUDE.md's self-contradicting Phase 8 prerender notes (Phase 9),
  rewrite validate_admin_render.sh for the per-page design, and add a
  SmartAdmin 5.5 design reference section to DOUZONE_UX_GUIDE.md for future
  admin screens (existing screens unchanged, tracked as WBS P4-03).

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
2026-07-03 10:15:27 +09:00
kjh2064 8db3c1d220 fix: correct WebAssembly runtime filename for .NET 10
TaxBaik CI/CD / build-and-deploy (push) Failing after 2m14s
CRITICAL FIX:
.NET 10 changed the WebAssembly bootstrap filename:
- Old (Blazor 8): blazor.web.js
- New (.NET 10): blazor.webassembly.js

PROBLEM SYMPTOMS:
- blazor.web.js 404 (file doesn't exist)
- Login page blank (WASM runtime never loads)
- All admin pages non-interactive

SOLUTION:
Update TaxBaik.Web.Client/wwwroot/index.html to reference:
- FROM: /taxbaik/_framework/blazor.web.js
- TO:   /taxbaik/_framework/blazor.webassembly.js

VALIDATION:
-  .NET 10 SDK confirmed (dotnet --version)
-  publish-wasm contains blazor.webassembly.js
-  WASM assemblies present (Microsoft.AspNetCore.Components.*.wasm)

This fix unblocks:
1. Admin login page rendering
2. All interactive WebAssembly pages
3. Login → Dashboard navigation
4. API integration

Co-Authored-By: Claude Haiku 4.5 <noreply@anthropic.com>
2026-07-03 03:06:34 +09:00