fix(demo): fijar el bundle id de iOS y alinear el magic link - #19
Closed
rndevelo wants to merge 1 commit into
Closed
fix(demo): fijar el bundle id de iOS y alinear el magic link#19rndevelo wants to merge 1 commit into
rndevelo wants to merge 1 commit into
Conversation
El bundle id venía de la plantilla de KMP como com.apptolast.login.Login$(TEAM_ID). Para un ejemplo de usar y tirar está bien; aquí no, porque esa cadena tiene que coincidir a la vez con la app de iOS registrada en Firebase, con el cliente OAuth que emitió el reversed client id del Info.plist y con MagicLinkConfig.iosBundleId. Con el sufijo, rellenar TEAM_ID en local cambiaba la identidad de la app y rompía las tres en silencio. Y aun sin rellenarlo ya había discrepancia: el bundle era com.apptolast.login.Login y el magic link decía com.apptolast.login, así que el enlace no reabría la app. Se conserva com.apptolast.login.Login, no el otro candidato, porque es el que está en el árbol hoy con TEAM_ID vacío y por tanto el único que sabemos que casa con lo registrado en la consola. El GoogleService-Info.plist está en .gitignore y no se puede comprobar desde aquí; cambiar la identidad de la app por una corazonada rompería Google Sign-In sin avisar. Si al validar en Mac resulta que Firebase tiene com.apptolast.login, el arreglo es una línea en cada uno de los dos sitios y está escrito en el spec. Sigue faltando, y queda fuera de este ticket, montar los Universal Links de apptolast.com: sin eso el magic link no vuelve a la app aunque el bundle id ya sea correcto. Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01Rkh7MzVRj5iXT2rLiqyW6A
hgarciaalberto
pushed a commit
that referenced
this pull request
Aug 19, 2026
…21) Cierra de una vez la pila 003→010, que estaba encadenada PR sobre PR. Sustituye a #14, #15, #16, #17, #18, #19 y #20. - 003 Apple Sign-In de producción en el demo y contrato correcto para Swift - 004 Cablea GitHub, Microsoft, Twitter, Facebook y teléfono en el demo (+ su spec) - 005 Revoca el token de Apple antes de borrar la cuenta - 006 Cierra también la sesión de GoogleSignIn al salir, en iOS - 007 Pasa los scopes de AppleSignInConfig al handler de iOS - 008 Fija el bundle id de iOS y alinea el magic link - 009 Sesión de teléfono completa y testeable en las dos plataformas - 010 Documenta lo que falta para construir el demo y deprecar código muerto Las ocho PRs intermedias apuntaban cada una a la rama de la anterior, y el CI solo disparaba en PRs contra develop/main, así que ninguna había pasado un check. Eso lo arregló #23. Esta pila se validó entera antes de entrar: ambos jobs en verde.
Contributor
|
Integrada en |
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.
Sale de #18.
Qué
La plantilla de KMP trae
PRODUCT_BUNDLE_IDENTIFIER=com.apptolast.login.Login.$(TEAM_ID). ComoTEAM_IDse rellena en local, rellenarlo cambiaba la identidad de la app y rompía tres cosas ala vez y en silencio: el registro de la app en Firebase, el cliente OAuth detrás del reversed
client id del
Info.plist, yMagicLinkConfig.iosBundleId.Bundle id fijo en
com.apptolast.login.Login, con un comentario en elxcconfigque dice con quétres cosas tiene que cuadrar, y
MainViewController.ktalineado.Que la app de iOS esté registrada en Firebase como
com.apptolast.login.Login. Si resulta sercom.apptolast.login, es mover esa cadena en dos sitios:Config.xcconfigyMainViewController.kt. Está anotado en el spec.Hallazgo colateral
Al correr
:composeApp:assembleDebugpara verificar esto salió quegoogle-services.jsonnoestá en el repositorio, así que el "full check before opening a PR" de
CLAUDE.mdfalla hoy paracualquiera. Se documenta en el #PREV010.
Verificado en Windows:
:custom-login:ktlintCheck+:custom-login:testDebugUnitTest(254 tests, 0 fallos). El Swift de esta rama no se ha compilado nunca: pendiente de Mac.🤖 Generated with Claude Code
https://claude.ai/code/session_01E41idMYhfgBSz2EeuNUn5Q