Files
taxbaik/scripts/validate_admin_render.sh
T
kjh2064 d246071835
TaxBaik CI/CD / build-and-deploy (push) Successful in 2m15s
fix: restore Blazor WebAssembly render mode for ERP scalability
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

30 lines
940 B
Bash

#!/usr/bin/env bash
set -euo pipefail
app_file="TaxBaik.Web/Components/Admin/App.razor"
login_file="TaxBaik.Web/Components/Admin/Pages/Login.razor"
for file in "$app_file" "$login_file"; do
if [ ! -f "$file" ]; then
echo "Missing admin render file: $file" >&2
exit 1
fi
done
if ! grep -nE "InteractiveWebAssemblyRenderMode\\(prerender: true\\)" "$app_file" >/dev/null; then
echo "Admin shell must use InteractiveWebAssemblyRenderMode(prerender: true)." >&2
exit 1
fi
if grep -nE "InteractiveServerRenderMode|prerender: true" "$app_file" | grep -v "InteractiveWebAssemblyRenderMode(prerender: true)" >/dev/null; then
echo "Admin shell render mode violation detected." >&2
exit 1
fi
if ! grep -nE "InteractiveWebAssemblyRenderMode\\(prerender: true\\)" "$login_file" >/dev/null; then
echo "Login page must use InteractiveWebAssemblyRenderMode(prerender: true)." >&2
exit 1
fi
echo "Admin render harness passed."