Commit Graph

459 Commits

Author SHA1 Message Date
kjh2064 24e94436e2 fix: enable Telegram alerts for client-side errors
TaxBaik CI/CD / build-and-deploy (push) Successful in 2m24s
Problem: Client JavaScript/Blazor WebAssembly errors were logged but NOT sent to Telegram because ClientLogsController used LogWarning instead of LogError.

Solution: ClientLogsController now checks entry.Level:
- level='error' → LogError → Telegram alert ✓
- level='warning'/'info' → LogWarning → Log file only

Result: Browser console errors now trigger Telegram notifications:
- Blazor WebAssembly init failures
- JavaScript exceptions
- Unhandled promise rejections
- Custom client errors

This closes the monitoring gap for client-side issues.

Co-Authored-By: Claude Haiku 4.5 <noreply@anthropic.com>
2026-07-03 00:11:22 +09:00
kjh2064 d246071835 fix: restore Blazor WebAssembly render mode for ERP scalability
TaxBaik CI/CD / build-and-deploy (push) Successful in 2m15s
Restore long-term architectural goal: Blazor WebAssembly for admin UI.

Rationale:
- TaxBaik is a semi-project for future ERP implementation
- ERP requires client-side scalability (no server-side state per user)
- WebAssembly offloads interactivity to browser (Circuit-free)
- Aligns with API-First + stateless backend design

Changes:
- App.razor: InteractiveWebAssemblyRenderMode (prerender: true)
- Routes: InteractiveWebAssemblyRenderMode (prerender: true)
- Login.razor: InteractiveWebAssemblyRenderMode (prerender: true)
- Program.cs: AddInteractiveWebAssemblyComponents()
- Updated validation script to enforce WebAssembly mode

Tradeoff accepted: Blazor WebAssembly bootstrap time vs future ERP extensibility.

Co-Authored-By: Claude Haiku 4.5 <noreply@anthropic.com>
2026-07-03 00:05:39 +09:00
kjh2064 ba981e7332 fix: resolve admin interactivity by unifying to Server render mode
TaxBaik CI/CD / build-and-deploy (push) Successful in 2m17s
Problem: Mixed WebAssembly (App) and Server (Login) render modes caused interaction breakage after login. Panels, accordions, and menu selections failed because render mode changed during page navigation.

Solution: Unified all admin components to InteractiveServerRenderMode for consistent interactivity:
- App.razor: Routes and HeadOutlet use InteractiveServerRenderMode
- Login.razor: Already uses InteractiveServerRenderMode
- Program.cs: Removed WebAssembly component registration

Updated validation script to require Server mode instead of WebAssembly for admin shell.

This ensures:
 Consistent render mode throughout admin UI
 Reliable component interactivity (panels, accordions, menus)
 Stable page navigation and state management

Co-Authored-By: Claude Haiku 4.5 <noreply@anthropic.com>
2026-07-02 23:58:45 +09:00
kjh2064 f0b77b0e3f fix: correct admin render mode to use WebAssembly with proper assembly reference
TaxBaik CI/CD / build-and-deploy (push) Successful in 2m13s
Revert to InteractiveWebAssemblyRenderMode for App.razor as required by validation script.
Add back AddInteractiveWebAssemblyComponents and AddInteractiveWebAssemblyRenderMode.
Fix assembly reference to use TaxBaik.WasmClient._Imports (RootNamespace of TaxBaik.Web.Client project).

This mixed render mode architecture allows:
- App.razor: WebAssembly shell for client-side routing
- Login.razor: Server-side prerender for authentication

Co-Authored-By: Claude Haiku 4.5 <noreply@anthropic.com>
2026-07-02 23:48:28 +09:00
kjh2064 527a8821d8 docs: change website domain from taxbaik.kr to taxbaik.com in Terms
TaxBaik CI/CD / build-and-deploy (push) Failing after 2m12s
Update Terms.cshtml to reflect the correct website domain.

Co-Authored-By: Claude Haiku 4.5 <noreply@anthropic.com>
2026-07-02 23:43:56 +09:00
kjh2064 3821914cf5 fix: change Login.razor to use InteractiveServerRenderMode
TaxBaik CI/CD / build-and-deploy (push) Failing after 2m6s
Update Login component to use Blazor Server instead of WebAssembly rendering mode for consistency with the admin UI architecture.

Co-Authored-By: Claude Haiku 4.5 <noreply@anthropic.com>
2026-07-02 23:37:26 +09:00
kjh2064 ece69d576a fix: resolve admin 500 error by fixing render mode and assembly reference
- App.razor: Change Routes from InteractiveWebAssemblyRenderMode to InteractiveServerRenderMode (admin requires Blazor Server, not WebAssembly)
- Program.cs: Remove unnecessary AddInteractiveWebAssemblyRenderMode() and AddInteractiveWebAssemblyComponents() registrations
- Program.cs: Remove broken TaxBaik.WasmClient reference from MapRazorComponents (actual project is TaxBaik.Web.Client)

The 500 error was caused by conflicting render modes and a non-existent assembly reference. Admin pages now correctly use Blazor Server interactivity.

Co-Authored-By: Claude Haiku 4.5 <noreply@anthropic.com>
2026-07-02 23:21:52 +09:00
kjh2064 d45dbbc06d Fix admin route component boundary
TaxBaik CI/CD / build-and-deploy (push) Failing after 2m5s
2026-07-02 17:57:19 +09:00
kjh2064 e65612def8 Fix admin root component routing
TaxBaik CI/CD / build-and-deploy (push) Failing after 2m8s
2026-07-02 17:51:37 +09:00
kjh2064 bb11a1bb87 Cover seasonal deadline business day rollovers
TaxBaik CI/CD / build-and-deploy (push) Successful in 2m22s
2026-07-02 17:43:22 +09:00
kjh2064 ae9380ddb3 Simplify seasonal deadline badge text
TaxBaik CI/CD / build-and-deploy (push) Successful in 2m12s
2026-07-02 17:40:21 +09:00
kjh2064 d8c52583ba Fix seasonal deadline business day handling
TaxBaik CI/CD / build-and-deploy (push) Successful in 2m22s
2026-07-02 17:29:24 +09:00
kjh2064 585f426f0b Stabilize admin navigation shell
TaxBaik CI/CD / build-and-deploy (push) Successful in 2m14s
2026-07-02 17:23:46 +09:00
kjh2064 c8cf654131 Expand business day coverage
TaxBaik CI/CD / build-and-deploy (push) Successful in 2m8s
2026-07-02 17:11:09 +09:00
kjh2064 ebdcb4fd22 Expand common code audit coverage 2026-07-02 17:07:05 +09:00
kjh2064 0ffb149296 Harden common code editor inputs 2026-07-02 17:05:46 +09:00
kjh2064 870b51ece4 Tighten common code validation and group selection 2026-07-02 17:03:43 +09:00
kjh2064 b1ac7129d9 Harden common code and render harness policies 2026-07-02 17:02:02 +09:00
kjh2064 500d163ebc Fix admin login prerender and static assets
TaxBaik CI/CD / build-and-deploy (push) Failing after 2m6s
2026-07-02 16:55:56 +09:00
kjh2064 d780fecf8c Harden admin telemetry and deployment safeguards
TaxBaik CI/CD / build-and-deploy (push) Successful in 4m30s
2026-07-02 16:10:15 +09:00
kjh2064 b1601b0305 fix(admin): remove prerender from admin shell
TaxBaik CI/CD / build-and-deploy (push) Successful in 3m56s
2026-07-02 14:52:51 +09:00
kjh2064 e6253fdc83 chore(ci): guard admin webassembly render mode 2026-07-02 14:52:29 +09:00
kjh2064 c885c6b234 fix(db): drop blog slug constraint correctly
TaxBaik CI/CD / build-and-deploy (push) Successful in 4m11s
2026-07-02 14:26:40 +09:00
kjh2064 96c7ab5e54 fix(ci): skip applied migrations in preflight validation
TaxBaik CI/CD / build-and-deploy (push) Has been cancelled
2026-07-02 14:23:01 +09:00
kjh2064 3f486d9fe9 chore(ci): preflight migration validation before deploy
TaxBaik CI/CD / build-and-deploy (push) Failing after 3m47s
2026-07-02 14:12:23 +09:00
kjh2064 f68c968aed fix(db): seed category ids in legacy blog migration 025
TaxBaik CI/CD / build-and-deploy (push) Failing after 4m51s
2026-07-02 14:07:00 +09:00
kjh2064 984da933ca fix(db): revert blog category lookup in migration 025
TaxBaik CI/CD / build-and-deploy (push) Failing after 4m18s
2026-07-02 13:59:23 +09:00
kjh2064 3dd1cbb6ce fix(db): seed blog category in migration 025
TaxBaik CI/CD / build-and-deploy (push) Failing after 3m37s
2026-07-02 13:52:51 +09:00
kjh2064 a3d294b6ff fix(db): resolve blog category id explicitly in migration 025
TaxBaik CI/CD / build-and-deploy (push) Failing after 3m15s
2026-07-02 13:47:57 +09:00
kjh2064 e2d3eb9195 fix(web): use direct kakao channel link
TaxBaik CI/CD / build-and-deploy (push) Has been cancelled
2026-07-02 12:51:48 +09:00
kjh2064 77aaed814c fix(db): make remaining blog migrations idempotent
TaxBaik CI/CD / build-and-deploy (push) Has been cancelled
2026-07-02 12:50:26 +09:00
kjh2064 d7ca51b741 fix(db): make blog accuracy migration idempotent
TaxBaik CI/CD / build-and-deploy (push) Failing after 3m1s
2026-07-02 12:29:06 +09:00
kjh2064 bc210969e2 docs: harness gitea token and canonical docs
TaxBaik CI/CD / build-and-deploy (push) Failing after 2m38s
2026-07-02 12:22:19 +09:00
kjh2064 6642f3d6f1 ci: retrigger deploy
TaxBaik CI/CD / build-and-deploy (push) Failing after 2m44s
2026-07-02 11:39:37 +09:00
kjh2064 67f2f4b5d6 fix(db): make blog cleanup migration idempotent
TaxBaik CI/CD / build-and-deploy (push) Failing after 2m46s
2026-07-02 11:31:15 +09:00
kjh2064 faf4273e6d fix(admin): normalize faq category combo
TaxBaik CI/CD / build-and-deploy (push) Failing after 2m44s
2026-07-02 11:27:14 +09:00
kjh2064 15c261a49d fix(blog): align soft delete with deleted_at
TaxBaik CI/CD / build-and-deploy (push) Failing after 2m44s
2026-07-02 11:23:18 +09:00
kjh2064 b06c0f99fb feat(blog): add archived post restore workflow
TaxBaik CI/CD / build-and-deploy (push) Failing after 5m38s
2026-07-02 11:08:39 +09:00
kjh2064 ad55bd1884 fix(blog): add restore path for archived posts
TaxBaik CI/CD / build-and-deploy (push) Successful in 4m57s
2026-07-02 11:05:53 +09:00
kjh2064 e0b8d4e370 fix(home): keep blog entry visible when empty 2026-07-02 11:03:37 +09:00
kjh2064 e65f01b196 fix(admin): align holiday tests and loading flow
TaxBaik CI/CD / build-and-deploy (push) Successful in 4m14s
2026-07-02 11:02:20 +09:00
kjh2064 124b3b4dfc feat(admin): normalize combo and holiday policies
TaxBaik CI/CD / build-and-deploy (push) Has been cancelled
2026-07-02 10:57:14 +09:00
kjh2064 3785bc7a70 ci: use kst for build timestamps
TaxBaik CI/CD / build-and-deploy (push) Successful in 3m29s
2026-07-02 10:53:24 +09:00
kjh2064 bd44ec7c5f fix(common-code): enforce storage policy
TaxBaik CI/CD / build-and-deploy (push) Has been cancelled
2026-07-02 10:51:58 +09:00
kjh2064 cb47349a25 feat(admin): stabilize blog and admin patterns
TaxBaik CI/CD / build-and-deploy (push) Has been cancelled
2026-07-02 10:46:27 +09:00
kjh2064 b3cab87539 fix(admin): restore blog client imports for build
TaxBaik CI/CD / build-and-deploy (push) Has been cancelled
2026-07-02 10:42:21 +09:00
kjh2064 1fc3b6c0a4 merge: admin midpoint changes
TaxBaik CI/CD / build-and-deploy (push) Has been cancelled
2026-07-02 10:37:03 +09:00
kjh2064 da9f49c973 ci: enable workflow dispatch for deploy 2026-07-02 10:35:29 +09:00
kjh2064 1839c2c3d1 admin: add common-code crud and business-day rules 2026-07-02 10:27:57 +09:00
kjh2064 df4c555dd1 docs: add failure prevention checklist to blog template
TaxBaik CI/CD / build-and-deploy (push) Failing after 1m1s
과거 실수들을 명시하여 같은 오류 반복 방지

## 실수 방지 체크리스트 추가

1. 카테고리 할당 실수 (category_id NULL)
2. 내용 길이 부족 (1,500자 미만)
3. 테이블 사용 금지 (리스트만)
4. 계산 예시 누락 (절세액 미수치)
5. 카테고리 주제 불일치
6. 정확한 세법 인용 누락

## 각 실수별
- 과거 오류 상황
- 문제점 분석
- 예방책 (SQL/마크다운 예시)
- 최종 체크리스트

SQL 확인 쿼리도 포함하여 DB 적용 후
자동 검증 가능하게 구성.

Co-Authored-By: Claude Haiku 4.5 <noreply@anthropic.com>
2026-07-01 18:15:20 +09:00