chore(metodo): los dos limites de C26 y donde se sella un gate nuevo
C26 mide presencia, no autoria: cualquier valor vale y una persona escribe el suyo. Dice quien ESCRIBIO, no quien publico, y es autodeclarado — caza la ausencia, nunca un rol equivocado. Sesion: superadmin Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
This commit is contained in:
parent
35a6b1ef7a
commit
a57efc1bb6
@ -1,5 +1,5 @@
|
||||
5ff67472a10f22c9425a3d0a4395d32930010c65499a2a6ce4e958ea47311f6c metodo.md
|
||||
d911bec6c3b969cce80d0a5c500780dde348eb3b0e8d15bb4ef61dbce5c8181e bin/metodo
|
||||
4dc0daf48bbd6b7d1272de64411d33f777f5a78f9e41640db61a47d5aa3e5683 metodo.md
|
||||
648a9dacc40d3649ef2e7a93b4227b74eff9479bd03ccab1c3dd6b0f757793bf bin/metodo
|
||||
f89b71bdf31028b05075636c1763c964e379bc37a00e0357d1c23a4dd19c09aa workflows/README.md
|
||||
cc241bbecf9647c747b8525b3a6b527455cd50ca0312caa44bc3544342c8ac41 workflows/comunicacion-entre-sesiones.md
|
||||
2b9037f6dd57b5598c70a676cb728556654f05d1c5b024e7b716864659f7b884 workflows/sesion-ejecucion.md
|
||||
|
||||
@ -132,7 +132,7 @@ check_sesion_trailer() {
|
||||
[ -z "$sha" ] && continue
|
||||
n=$((n+1))
|
||||
git -C "$ROOT" log -1 --format='%B' "$sha" | grep -qE '^Sesion:[[:space:]]*\S' || {
|
||||
bad "commit sin 'Sesion:' — $(git -C "$ROOT" log -1 --format='%h %s' "$sha" | cut -c1-70) (C26)"; mal=$((mal+1)); }
|
||||
bad "commit sin 'Sesion:' — $(git -C "$ROOT" log -1 --format='%h %s' "$sha" | cut -c1-60) (C26) — si lo hiciste A MANO, vale 'Sesion: xavier'; si aún no está empujado, un 'git commit --amend' sobre TU commit lo cierra sin excepciones"; mal=$((mal+1)); }
|
||||
done <<EOF
|
||||
$(git -C "$ROOT" rev-list "$desde..HEAD" 2>/dev/null)
|
||||
EOF
|
||||
|
||||
@ -1940,6 +1940,25 @@ del rojo crónico aplicada al diseñar el gate, no después de sufrirlo.)*
|
||||
y por eso *«un commit ajeno bajo un mensaje que habla de otra cosa borra la única atribución que
|
||||
hay»*. Con el trailer, **la atribución deja de depender de que el mensaje la mencione de pasada**:
|
||||
está en un campo, es constante, y **se puede contar**.
|
||||
⛔ **Y `C26` NO distingue a una sesión que OLVIDA el trailer de una PERSONA commiteando a mano** —en
|
||||
un árbol donde el autor `git` es el mismo para todas, **no hay señal que los separe**—. ⇒ Por eso el
|
||||
gate mide **presencia**, no autoría: **cualquier valor vale**, y **una persona escribe el suyo**
|
||||
(`Sesion: <su nombre>`). Y su aviso **dice el gesto**: si aún no está empujado, **un `--amend` sobre
|
||||
tu propio commit lo cierra sin necesitar excepción**. ⭐ *Un rojo que nombra el arreglo en una línea
|
||||
no se vuelve crónico; uno que sólo acusa, sí.*
|
||||
⛔ **DOS LÍMITES, escritos para que nadie estire el gate:**
|
||||
**(1)** Dice quién **ESCRIBIÓ** el commit, **no quién lo PUBLICÓ**. Hace el `log` legible **después**;
|
||||
**lo que evita el accidente antes sigue siendo `git log origin/main..HEAD`**, y el trailer **no lo
|
||||
sustituye**.
|
||||
**(2)** Es **autodeclarado**: caza **la ausencia**, nunca un rol **equivocado**. Y un `--amend` ajeno
|
||||
**reescribe también el trailer**, así que ahí el `log` diría el rol del que enmendó.
|
||||
⇒ **De los cuatro filos, `C26` hace LEGIBLES dos y no toca los otros dos.** Es una mejora real; **no
|
||||
es el cierre de la familia**, y decirlo forma parte de tenerla.
|
||||
|
||||
⭐ **Y la regla de diseño que sale de compararlo con el gate anterior: UN GATE NUEVO SE SELLA DONDE
|
||||
EMPIEZA A PODER CUMPLIRSE, NO DONDE EMPEZÓ EL REPO.** *(Medido: el gate de los mensajes de commit
|
||||
selló en el punto de adopción del Método **con historia mala por detrás**, y necesitó **excepciones
|
||||
nominales**; el del trailer sella **el día que llega** ⇒ **cero excepciones, por construcción**.)*
|
||||
- La **representación en disco es parte del artefacto**: cuando un hash o un runtime consume el
|
||||
checkout, se fija con el repo — **eol** por `.gitattributes` y **bit de ejecución** — o el testigo
|
||||
mide el checkout, no el contenido (una DERIVA falsa en un clone sin tocar entrena a ignorar el
|
||||
|
||||
Loading…
Reference in New Issue
Block a user