fad4006f60
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
1.6 KiB
1.6 KiB
id, title, status, type, domain, scope, priority, depends, blocks, related, created, updated, tags
| id | title | status | type | domain | scope | priority | depends | blocks | related | created | updated | tags |
|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 59 | init_kotlin_app genera gradlew stub no funcional | completado | feature | app-scoped | alta | 2026-05-10 | 2026-05-17 |
Sintoma
Al scaffoldear app Kotlin con fn run init_kotlin_app <name>, el gradlew generado es un stub que delega a gradle/wrapper/gradlew (no existe) y luego a gradle system (no instalado). Resultado: silenciosamente falla.
Reproducir
./fn run init_kotlin_app foo_app
cd apps/foo_app
./gradlew :app:assembleDebug
# (no output, exit silente)
Causa
bash/functions/pipelines/init_kotlin_app.sh linea ~XXX genera placeholder gradlew. No descarga gradle-wrapper.jar real ni invoca gradle wrapper --gradle-version 8.6.
Workaround actual
Copiar wrapper de otra app:
cp apps/voice_guide/frontend/android/gradle/wrapper/gradle-wrapper.jar <new_app>/gradle/wrapper/
cp apps/voice_guide/frontend/android/gradlew <new_app>/gradlew
chmod +x <new_app>/gradlew
Fix propuesto
Una de:
- Descargar
gradle-wrapper.jardesdehttps://raw.githubusercontent.com/gradle/gradle/v8.6.0/gradle/wrapper/gradle-wrapper.jar(~60KB) durante scaffold + escribirgradlewreal (no stub). - Vendor del wrapper jar en
bash/functions/pipelines/templates/kotlin/gradle-wrapper.jary copiar al scaffold. - Detectar gradle system, invocar
gradle wrapper --gradle-version 8.6post-mkdir.
Recomendado: vendor (option B) — sin dependencia de red en cada scaffold.
Validacion
Tras fix, ./fn run init_kotlin_app smoke && cd apps/smoke && ./gradlew --version debe imprimir Gradle 8.6 sin errores.