commit 4843328d3c1fb02343e9fefc280ab6889f568093 from: ale date: Fri Jul 24 06:51:01 2026 UTC Corregir GotPushSupport.getDefaultTarget: sobrecarga de 2 argumentos PushSupport declara dos getDefaultTarget: la de un argumento es abstracta, pero la de (repositorio, fuente) tiene cuerpo por defecto que siempre retorna null (verificado con javap). El dialogo de Push llama a esa segunda version, y al recibir null marca el modelo con un error de 'empty target' y loadCommits corta la ejecucion antes de invocar GotOutgoingCommitsProvider -- por eso nunca aparecia el log de diagnostico agregado antes y el boton de Push quedaba deshabilitado pese a existir commits reales. Se agrega la sobrecarga faltante delegando a la de un argumento. Mismo patron de bug que CheckinEnvironment.commit() (fase de commit/rollback), donde la plataforma tambien encadena una sobrecarga con valor por defecto distinta a la que se sobreescribio. commit - ff770dc4d5be7e3ede81e0fccd9df5987c526a13 commit + 4843328d3c1fb02343e9fefc280ab6889f568093 blob - f893f92824fea712e2695c5cbf3f47507df21b36 blob + ab1df3801a0f7cce1b8044700f4e3b352fc982c4 --- src/main/kotlin/dev/nezzontli/gotvcs/push/GotPushSupport.kt +++ src/main/kotlin/dev/nezzontli/gotvcs/push/GotPushSupport.kt @@ -28,6 +28,16 @@ class GotPushSupport(private val project: Project) : P return GotPushTarget("origin", branch) } + /** + * PushSupport's two-arg overload has a *non-abstract* default body that + * always returns null (unlike the one-arg version, which is abstract) -- + * the platform calls this one, not the one-arg override above, so + * without this it silently marks every repo model with an "empty + * target" error and skips loading outgoing commits entirely. + */ + override fun getDefaultTarget(repository: GotRepository, source: GotPushSource): GotPushTarget? = + getDefaultTarget(repository) + override fun getSource(repository: GotRepository): GotPushSource = GotPushSource(repository.currentBranchName ?: "")