From f5138173886a57dbede385bbb598072ba1c9dea7 Mon Sep 17 00:00:00 2001 From: enlineawork Date: Fri, 11 Sep 2026 12:36:32 -0300 Subject: [PATCH] =?UTF-8?q?chore:=20restaurar=20MainViewModel=20y=20aplica?= =?UTF-8?q?r=20cambios=20m=C3=ADnimos=200.19.0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../workflows/restore-mainviewmodel-once.yml | 86 +++++++++++++++++++ 1 file changed, 86 insertions(+) create mode 100644 .github/workflows/restore-mainviewmodel-once.yml diff --git a/.github/workflows/restore-mainviewmodel-once.yml b/.github/workflows/restore-mainviewmodel-once.yml new file mode 100644 index 0000000..1a2ef95 --- /dev/null +++ b/.github/workflows/restore-mainviewmodel-once.yml @@ -0,0 +1,86 @@ +name: Restore Android MainViewModel once + +on: + push: + branches: + - 'release/android-0.19.0-final-field-flow' + +permissions: + contents: write + +jobs: + restore: + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v4 + with: + ref: release/android-0.19.0-final-field-flow + fetch-depth: 0 + + - name: Restore MainViewModel from main and apply only 0.19.0 changes + run: | + set -Eeuo pipefail + git fetch origin main + git show origin/main:android-app/app/src/main/java/com/korexlabs/dhinspeccion/MainViewModel.kt > android-app/app/src/main/java/com/korexlabs/dhinspeccion/MainViewModel.kt + python - <<'PY' + from pathlib import Path + p = Path('android-app/app/src/main/java/com/korexlabs/dhinspeccion/MainViewModel.kt') + text = p.read_text() + replacements = [ + ( + ' accuracyM: Double?,\n ) {\n val visitId = visit?.id ?: return\n if (visit?.status != "IN_PROGRESS") {', + ' accuracyM: Double?,\n description: String? = null,\n ) {\n val visitId = visit?.id ?: return\n if (visit?.status != "IN_PROGRESS") {' + ), + ( + ' commonName = commonName?.trim()?.takeIf { it.isNotBlank() },\n attributes = attributes,', + ' commonName = commonName?.trim()?.takeIf { it.isNotBlank() },\n description = description?.trim()?.takeIf { it.isNotBlank() },\n attributes = attributes,' + ), + ( + 'error = "Ya existe un Acta en borrador. Bloqueala o cancelala antes de crear la siguiente."', + 'error = "Ya existe un Acta en elaboración. Cerrala o cancelala antes de crear la siguiente."' + ), + ( + 'error = "Creá o seleccioná el Acta en borrador antes de registrar Hallazgos."', + 'error = "Creá o seleccioná el Acta en elaboración antes de registrar Hallazgos."' + ), + ( + 'error = "No hay un Acta en borrador seleccionada."', + 'error = "No hay un Acta en elaboración seleccionada."' + ), + ( + 'notice = "Ausencia del responsable registrada. La manifestación de empresa quedará pendiente y deberá resolverse antes de sellar el Acta."', + 'notice = "Ausencia del responsable registrada. La manifestación de empresa quedará pendiente y deberá resolverse antes de firmar y cerrar el Acta."' + ), + ( + 'notice = "Acta bloqueada. Su contenido quedó inmutable; ahora deben resolverse las firmas y manifestaciones."', + 'notice = "Acta cerrada y pendiente de firma. Su contenido quedó inmutable; las firmas y manifestaciones pueden completarse a continuación."' + ), + ( + 'error = "Un Acta bloqueada es inmutable y no puede volver a borrador."', + 'error = "Un Acta pendiente de firma es inmutable y no puede volver a edición."' + ), + ( + 'notice = "${selectedAct?.code ?: "Acta"} SELLADA e inmutable. Podés crear otra Acta o continuar hacia el cierre de la Inspección."', + 'notice = "${selectedAct?.code ?: "Acta"} firmada y cerrada. Podés crear otra Acta o continuar hacia el cierre de la Inspección."' + ), + ( + 'notice = "Inspección cerrada. Todas sus Actas quedaron SELLADAS y disponibles para el circuito de oficina."', + 'notice = "Inspección cerrada. Todas sus Actas quedaron firmadas y disponibles para el circuito de oficina."' + ), + ] + for old, new in replacements: + if old not in text: + raise SystemExit(f'Pattern not found: {old}') + text = text.replace(old, new, 1) + p.write_text(text) + PY + + - name: Commit restore and remove temporary workflow + run: | + set -Eeuo pipefail + git config user.name 'DH Android Finalizer' + git config user.email 'android-finalizer@dhv2.local' + git rm .github/workflows/restore-mainviewmodel-once.yml + git add android-app/app/src/main/java/com/korexlabs/dhinspeccion/MainViewModel.kt + git commit -m 'fix(android): preservar ViewModel estable en release final' + git push origin HEAD:release/android-0.19.0-final-field-flow