refactor : 호스팅 대상을 서버에 물어본다 - #58
Merged
Merged
Conversation
어제 넣은 운영 감춤(env 분기)을 걷어내고 서버 조회로 바꾼다. env 분기는 임시 방편이었다. 빌드 시점에 굳어서 운영 빌드로 dev 에 붙이면 옵션이 잘못 사라지고, 백엔드가 운영에 승격되면 그 gate 를 지워야 하는데 잊기 쉬웠다. 그때 반대 방향으로 어긋난다 — 서버는 지원하는데 화면이 계속 감춘다. `GET /domains/hosting-targets` 는 **어댑터가 등록된 대상만** 준다. enum 이나 OpenAPI 스펙보다 정확하다 — enum 에 있어도 어댑터가 없으면 고르는 순간 실패하는데 이 목록에는 아예 안 들어온다(GCP 가 그 경우다). 그래서 화면이 목록을 들고 있지 않게 된다. 오늘 운영에 "고를 수는 있는데 누르면 실패하는" 옵션이 나갔던 것이 그 어긋남이었고, 이제 구조적으로 안 생긴다. **조회 실패를 정상 경로로 다룬다.** 운영 백엔드에는 아직 이 엔드포인트가 없어서 404 가 나는데, 그때 운영이 실제로 지원하는 둘로 떨어진다. 화면에 오류를 띄우지 않는다 — 사용자가 할 수 있는 일이 없고, 폴백이 맞는 답이기 때문이다. 나중에 운영에도 생기면 폴백은 저절로 안 쓰이게 된다. 라벨은 전체 목록에서 찾는다. 이미 붙여둔 도메인이 서버가 더는 지원하지 않는 대상이어도 이름은 제대로 보여야 한다. 한 가지 잃는 것: 서버가 안 주는 대상은 "곧 지원" 으로도 안 보인다(GCP 가 그렇다). 어댑터가 없는 것을 곧 온다고 말하는 것보다는 낫다고 봤다. Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
아직 응답이 없을 때 빈 목록으로 두면 한 프레임 동안 고를 것이 하나도 없는 select 가 되고, 기본값(GITHUB_PAGES)에 맞는 항목이 없어 빈 칸처럼 보인다. 화면이 잠깐 고장 난 것처럼 읽히는데, 실제로는 그냥 기다리는 중이다. 두 대상은 어디서나 되므로 먼저 보여주고 응답이 오면 늘어난다. 폴백을 오류 경로에만 쓰지 않고 로딩 값으로도 쓰는 셈이다 — 둘 다 "아직 서버 말을 못 들었다" 는 같은 상황이다. Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
어제 넣은 운영 감춤(env 분기)을 걷어내고 서버 조회로 바꿉니다.
env 분기는 임시 방편이었습니다
빌드 시점에 굳어서:
서버가 더 정확합니다
GET /domains/hosting-targets는 어댑터가 등록된 대상만 줍니다. enum이나 OpenAPI 스펙보다 정확합니다 — enum에 있어도 어댑터가 없으면 고르는 순간 실패하는데, 이 목록에는 아예 안 들어옵니다(GCP가 그 경우입니다).그래서 화면이 목록을 들고 있지 않게 됩니다. 오늘 운영에 "고를 수는 있는데 누르면 실패하는" 옵션이 나갔던 게 그 어긋남이었고, 이제 구조적으로 안 생깁니다.
조회 실패를 정상 경로로 다룹니다
운영 백엔드에는 아직 이 엔드포인트가 없어 404가 납니다. 그때 운영이 실제로 지원하는 둘로 떨어집니다.
화면에 오류를 띄우지 않습니다 — 사용자가 할 수 있는 일이 없고, 폴백이 맞는 답이기 때문입니다. 나중에 운영에도 생기면 폴백은 저절로 안 쓰이게 됩니다.
잃는 것 하나
서버가 안 주는 대상은 "곧 지원"으로도 안 보입니다(GCP). 어댑터가 없는 것을 곧 온다고 말하는 것보다는 낫다고 봤습니다.
라벨은 전체 목록에서 찾습니다 — 이미 붙여둔 도메인이 서버가 더는 지원하지 않는 대상이어도 이름은 제대로 보여야 합니다.
검증
typecheck · lint · 프로덕션 빌드 통과. dev에 엔드포인트 존재·운영에 부재를 OpenAPI로 확인했습니다.