위저드를 걷는 동안 '로그인이 만료되었습니다' 가 떴다. 만료가 아니라 **한 번도 로그인한 적이 없는 것**이었다(자동 로그인 계정이 없으면 ensureAutoSession 이 즉시 끝난다). 문구가 사실과 달라 고장으로 읽혔다. - features/auth/EditorSignInGate: 에디터에 들어갈 때만 로그인을 받는다. 위저드 1~5단계는 요구하지 않는다 — 만들어 보기도 전에 막으면 아무도 안 만든다. /login 으로 튕기지 않는 이유는 위저드에서 쌓은 상태를 들고 돌아올 방법을 사장님이 알 수 없기 때문이다 - features/auth/SignInForm: 로그인 화면과 관문이 같은 폼을 쓴다. 두 벌로 두면 토큰을 심는 순서(signIn → me)가 한쪽에서만 지켜지고, 그 실수는 "로그인은 됐는데 계속 401" 로 나타난다 - usePlaceSearch: 토큰이 없을 때의 문구에서 '만료' 를 걷어낸다. 검색은 서버가 토큰을 요구하므로 (place.py 전 엔드포인트가 IsValidAccessToken) 프론트가 없앨 수 있는 제약이 아니다 tsc·eslint·vite build 통과 |
||
|---|---|---|
| .. | ||
| public | ||
| src | ||
| .env.example | ||
| components.json | ||
| eslint.config.js | ||
| index.html | ||
| orval.config.ts | ||
| package.json | ||
| tsconfig.json | ||
| vite.config.ts | ||