Skip to content

English {#english}

Scope: After provisioning, show success animation and portal links only when readiness checks pass (DNS, Frappe, admin API probe, Zuplo); align welcome email with the same URLs; surface Employee portal, Administrator portal, Onboarding URL, Live support from CP-backed config.

Existing UI: apps/admin-web/app/page.tsxReadyToLaunchStep (step 6), Lottie progress/success, job polling.

Related plans: Plan A · Plan B · Plan C · Onboarding, provisioning, logpath, admin console


한국어 {#korean}

1. 상태 모델 (job vs activation)

개념의미UI
job.status Running/Pending파이프라인 진행진행 Lottie + 체크리스트
Failed실패에러 + trace
Completed readiness.all_passed = false파이프 끝, 검증 미통과“확인 중” 등
Completed readiness.all_passed = true활성화 가능성공 애니메이션 + 포털 + Open tenant

호환: readiness 필드 없으면 기존 동작 유지 또는 플래그 ACTIVATION_GATE_STRICT로 점진 롤아웃.

2. Readiness 체크 목록 (초안)

check_id검증실패 메시지 키
dns_a테넌트 서브도메인 DNSreadiness_dns
frappe_httpFrappe 헬스 HTTPreadiness_frappe
admin_apiAdministrator API probe(비밀 미노출)readiness_api
zuplo_routeZuplo 키/라우트 존재readiness_zuplo

실행 주체: GitHub Actions 마지막 스텝 또는 CP post-provision Worker 등 한 곳으로 통일.

3. API 계약 확장 (개념)

GET /v1/jobs/:idGET /internal/onboarding-status에 동기화:

"readiness": {
"all_passed": false,
"checked_at": "ISO8601",
"checks": [
{ "id": "dns_a", "passed": true, "detail": "optional" },
{ "id": "frappe_http", "passed": false, "detail": "timeout" }
]
}

4. 포털·지원 블록 (데이터 출처)

UI 라벨소스
Employee portalCP 테넌트 메타 또는 EMPLOYEE_PORTAL_URL_TEMPLATE
Administrator portalhttps://{slug}.pregoi.com 또는 메타
Onboarding URLclient-web 경로와 동일 상수를 CP가 반환
Live supportVariables SUPPORT_URL, SUPPORT_EMAIL

admin-web Step 6는 job JSON 위주로 렌더(하드코딩 최소화).

5. 이메일 정합

  • 템플릿 변수: tenant_id, trace_id, 위 URL 4종, origin_url_with_trace.
  • 정책 결정: readiness.all_passed 이후에만 “완료 메일” 발송할지 vs Completed 직후 발송할지.
  • 실패: 재시도 큐 + Plan B 이벤트 m_welcome_email_fail(사전에 사전에 추가).

6. 멀티레포 실행 순서

  1. CP: readiness 검증 + job API 필드.
  2. prego-ansible / Actions: 검증 스텝에서 CP 콜백.
  3. Zuplo: readiness의 zuplo 축 확인용 내부 API(또는 CP가 Zuplo Admin API 호출).
  4. admin-web: Completed + readiness 게이트 + 포털 블록.
  5. 메일 템플릿.
  6. Plan B 계측.

7. DoD

  • 스테이징: DNS만 막은 경우 Completed여도 성공 애니메이션 미표시, 이유 표시.
  • 메일 미리보기와 Step 6 URL 일치 검증.

8. 교차 참조 매트릭스

ABC
Dreadiness·메일 이벤트메일 내 trace
Help