#!/usr/bin/env bash set -Eeuo pipefail ROOT="$(cd "$(dirname "${BASH_SOURCE[0]}")/.." && pwd)" LAYOUT="$ROOT/web-v2/src/layout/AppLayout.tsx" APP="$ROOT/web-v2/src/app/App.tsx" PAGE="$ROOT/web-v2/src/pages/InventoryCreatePage.tsx" for file in "$LAYOUT" "$APP" "$PAGE"; do test -f "$file" || { echo "F4 WEB contract: falta $file" exit 1 } done if grep -Fq "label: 'Relevamientos'" "$LAYOUT"; then echo "F4 WEB contract: Relevamientos no debe volver al menĂº principal" exit 1 fi if grep -Fq 'path="/relevamiento/*"' "$APP"; then echo "F4 WEB contract: Survey/Relevamiento no debe volver a exponer rutas activas" exit 1 fi grep -Fq 'path="/inventarios/nuevo"' "$APP" grep -Fq 'InventoryCreatePage' "$APP" for kind in AREA YACIMIENTO INSTALACION SUBINSTALACION; do grep -Fq "kind: '$kind'" "$PAGE" done if grep -Fq "kind: 'EQUIPO'" "$PAGE"; then echo "F4 WEB contract: el alta guiada no debe restaurar EQUIPO como quinto nivel estructural" exit 1 fi grep -Fq 'getInventoryFamilyFindings' "$PAGE" echo 'F4 WEB contract: OK'