Standardize this app's sign-in page on the shared pattern (reference: Moonbase 0.134.0 src/app/login/page.tsx; spec: platform docs/first-party-app-guide.md §2b):
Brand (mark + name + tagline) above one centered card.
Card leads with a full-width primary button Sign in with OTM → /sso/authorize?aud=<audience>&next=<same-origin path>.
Muted line under it: Your OTM account — Face ID, Touch ID or a passkey works there.
Other ways to sign in — small text button that swaps the card body to the local method(s), unchanged, ending with a small Sign in with OTM link back. No "or" divider.
Rules: lead with OTM only when the app is actually wired (secret + audience present, read server-side); never remove the local method; keep the app's own palette. The OTM admin's own /signin says "Sign in to your Over the Moon account" (0.148.3).
Standardize this app's sign-in page on the shared pattern (reference: Moonbase 0.134.0 `src/app/login/page.tsx`; spec: platform `docs/first-party-app-guide.md` §2b):
1. Brand (mark + name + tagline) above one centered card.
2. Card leads with a full-width **primary** button **Sign in with OTM** → `/sso/authorize?aud=<audience>&next=<same-origin path>`.
3. Muted line under it: *Your OTM account — Face ID, Touch ID or a passkey works there.*
4. **Other ways to sign in** — small text button that swaps the card body to the local method(s), unchanged, ending with a small *Sign in with OTM* link back. No "or" divider.
5. `?reason=` sentences for not_enabled / invalid_token / link_already_used / no_account / server_error.
Rules: lead with OTM only when the app is actually wired (secret + audience present, read server-side); never remove the local method; keep the app's own palette. The OTM admin's own `/signin` says "Sign in to your Over the Moon account" (0.148.3).
Done = page matches, version + changelog bumped, checks green, deployed.
Shipped in 0.6.1 (41e09d0), deployed 2026-10-19. names has no sign-in page and no local accounts, so the standard’s no-local-method form applies: the existing Sign in with OTM link is now the single primary action with the passkey helper line under it; nothing else to offer under “Other ways”. Verified live.
Shipped in 0.6.1 (41e09d0), deployed 2026-10-19. names has no sign-in page and no local accounts, so the standard’s no-local-method form applies: the existing Sign in with OTM link is now the single primary action with the passkey helper line under it; nothing else to offer under “Other ways”. Verified live.
Blocking a user prevents them from interacting with repositories, such as opening or commenting on pull requests or issues. Learn more about blocking a user.
Standardize this app's sign-in page on the shared pattern (reference: Moonbase 0.134.0
src/app/login/page.tsx; spec: platformdocs/first-party-app-guide.md§2b):/sso/authorize?aud=<audience>&next=<same-origin path>.?reason=sentences for not_enabled / invalid_token / link_already_used / no_account / server_error.Rules: lead with OTM only when the app is actually wired (secret + audience present, read server-side); never remove the local method; keep the app's own palette. The OTM admin's own
/signinsays "Sign in to your Over the Moon account" (0.148.3).Done = page matches, version + changelog bumped, checks green, deployed.
Shipped in 0.6.1 (
41e09d0), deployed 2026-10-19. names has no sign-in page and no local accounts, so the standard’s no-local-method form applies: the existing Sign in with OTM link is now the single primary action with the passkey helper line under it; nothing else to offer under “Other ways”. Verified live.