온보딩
app.engram.page에 처음 로그인하면 Engram이
보관함을 열기 전에 짧은 온보딩 마법사를 안내합니다. 보관함 엔드포인트에
접근하려면 약관 동의와 활성 구독 상태가 필요하기 때문에 이 마법사가
있습니다.
마법사의 내용
섹션 제목: “마법사의 내용”마법사는 두 단계입니다.
- 동의. 서비스 이용약관과 개인정보 처리방침에 동의합니다. 현재
유효한 약관 버전을 기준으로 서버 측
user_agreements테이블에 기록됩니다. 유효 버전은 컴파일 시점 상수가 아니라terms_versions테이블에서 동적으로 확인됩니다(Engram.Legal.VersionCache가 메모이제이션). - 결제. 요금제를 고르고 Paddle로 결제를 마칩니다(또는 Paddle을 완전히 건너뛰는 Free를 선택). 각 요금제의 내용은 결제 → 요금제를 참고하세요.
두 단계가 모두 끝나면 보관함 브라우저로 넘어갑니다.
보관함 접근을 막는 이유
섹션 제목: “보관함 접근을 막는 이유”백엔드는 /api/notes, /api/search, /api/folders를
RequireOnboarding 플러그로 감싸 다음을 확인합니다.
- 이 사용자가 최신 약관에 동의했는지
- 구독이 정상 상태인지(셀프 호스팅은 이 확인을 완전히 건너뜀)
둘 중 하나라도 실패하면 API가 403을 반환하고 웹 앱이 마법사로 되돌려 보냅니다. 따라서 반쯤 끝난 온보딩의 고장난 상태에 실수로 들어갈 일이 없습니다. 이 관문은 통과시켜 주거나, 빠진 단계를 해결하는 화면을 보여 줍니다.
마법사 건너뛰기 (셀프 호스팅)
섹션 제목: “마법사 건너뛰기 (셀프 호스팅)”셀프 호스팅에서는 결제가 기본적으로 꺼져 있습니다(PADDLE_API_KEY가
없으면 config :engram, :billing_enabled가 false). 마법사는 요금제
선택 단계를 건너뜁니다. 약관 동의는 한 번 해야 합니다.
마법사 다시 실행하기
섹션 제목: “마법사 다시 실행하기”직접 다시 실행할 수는 없습니다. 한 번 동의하면 통과한 것입니다. 약관이 바뀌면 Engram이 서버에서 버전을 올리고, 다음 API 호출이 403을 반환하며, 앱은 약관 동의 단계만 다시 표시합니다. 요금제 변경은 마법사가 아니라 결제 페이지에서 합니다.