⚙️ 🤖 doc-rel.sh ist nicht mehr ausführbar (100644) — Taskfile-Gate greift, Werkzeug startet nicht #10

Open
opened 2026-08-29 13:34:27 +02:00 by holm · 0 comments
Owner
Dimension Bewertung Einschätzung
Aufwand █░░░░░░░░░ Trivial — ein Modus-Bit
Nutzen █████████░ Sehr hoch — ohne das Bit startet das Werkzeug auf keinem Gerät
Bruchhäufigkeit ██████░░░░ Mittel-hoch — jedes mv einer Tempdatei über das Script wiederholt es
Nachhaltigkeit ████░░░░░░ Mittel — das Bit allein schützt nicht, das Taskfile-Gate ist die eigentliche Sollbruchstelle
Dringlichkeit ████████░░ Hoch — betrifft den ausgelieferten Stand v0.1.3

Befund

doc-rel.sh steht im Repo seit db30657 auf 100644 (vorher 100755).
Damit greift das Gate [ -x "$DOCREL" ] in TaskfileMain.yml nicht mehr, und
task template:release -- meldet:

release: kein RELEASES-File und kein doc-rel.sh (…/doc-rel/doc-rel.sh) — nichts zu tun

Das ist die gefährliche Variante: es liest sich wie Entwarnung, nicht wie
„Werkzeug fehlt"
— exit 1, aber der Text sagt „nichts zu tun". Wer unter
Zeitdruck arbeitet, hakt das ab und sucht die Versionen wieder von Hand,
also genau das, was der neue SKILL:docker-Abschnitt abstellen soll.

Der falsche Modus steckt im Index, nicht nur in einem Checkout — jeder
frische Clone und jede toolctl-Worktree erbt ihn. Betroffen ist der
ausgelieferte Stand v0.1.3.

Ursache

Selbst verursacht: beim Multi-Digest-Fix wurde die Datei über eine Tempdatei
neu geschrieben und mit mv an ihren Platz geschoben. mv ersetzt die Datei
samt Modus (Tempdatei: 644) — anders als cp, das den Zielmodus behält.
Merker für künftige Script-Umbauten: nach jedem mv über ein Script
ls -l prüfen, oder gleich cp verwenden.

Gemeldet von v00-egw-stack, das beim ersten Nutzen des neuen Skill-Abschnitts
darüber stolperte.

Fix

  • chmod +x doc-rel.sh + git update-index --chmod=+x doc-rel.sh
  • Vorschlag zusätzlich (Fremdrepo, nicht hier umsetzbar): das Gate in
    TaskfileMain.yml von -x auf -f umstellen und mit bash "$DOCREL"
    aufrufen. Dann macht ein verlorenes Modus-Bit das Werkzeug nicht wieder
    unsichtbar. Das ist Task-Struktur (Repo holmShellTools) und wird laut
    SKILL:docker nicht eigenmächtig geändert — liegt bei Holm.

🤖 angelegt von Claude v00 (API/Token holm)

| Dimension | Bewertung | Einschätzung | |---|---|---| | Aufwand | `█░░░░░░░░░` | Trivial — ein Modus-Bit | | Nutzen | `█████████░` | Sehr hoch — ohne das Bit startet das Werkzeug auf keinem Gerät | | Bruchhäufigkeit | `██████░░░░` | Mittel-hoch — jedes `mv` einer Tempdatei über das Script wiederholt es | | Nachhaltigkeit | `████░░░░░░` | Mittel — das Bit allein schützt nicht, das Taskfile-Gate ist die eigentliche Sollbruchstelle | | Dringlichkeit | `████████░░` | Hoch — betrifft den ausgelieferten Stand v0.1.3 | ## Befund `doc-rel.sh` steht im Repo seit `db30657` auf **100644** (vorher `100755`). Damit greift das Gate `[ -x "$DOCREL" ]` in `TaskfileMain.yml` nicht mehr, und `task template:release --` meldet: ``` release: kein RELEASES-File und kein doc-rel.sh (…/doc-rel/doc-rel.sh) — nichts zu tun ``` Das ist die gefährliche Variante: **es liest sich wie Entwarnung, nicht wie „Werkzeug fehlt"** — exit 1, aber der Text sagt „nichts zu tun". Wer unter Zeitdruck arbeitet, hakt das ab und sucht die Versionen wieder von Hand, also genau das, was der neue `SKILL:docker`-Abschnitt abstellen soll. Der falsche Modus steckt **im Index**, nicht nur in einem Checkout — jeder frische Clone und jede toolctl-Worktree erbt ihn. Betroffen ist der ausgelieferte Stand v0.1.3. ## Ursache Selbst verursacht: beim Multi-Digest-Fix wurde die Datei über eine Tempdatei neu geschrieben und mit `mv` an ihren Platz geschoben. `mv` ersetzt die Datei samt Modus (Tempdatei: 644) — anders als `cp`, das den Zielmodus behält. Merker für künftige Script-Umbauten: nach jedem `mv` über ein Script `ls -l` prüfen, oder gleich `cp` verwenden. Gemeldet von `v00-egw-stack`, das beim ersten Nutzen des neuen Skill-Abschnitts darüber stolperte. ## Fix - `chmod +x doc-rel.sh` + `git update-index --chmod=+x doc-rel.sh` - Vorschlag zusätzlich (Fremdrepo, **nicht** hier umsetzbar): das Gate in `TaskfileMain.yml` von `-x` auf `-f` umstellen und mit `bash "$DOCREL"` aufrufen. Dann macht ein verlorenes Modus-Bit das Werkzeug nicht wieder unsichtbar. Das ist Task-Struktur (Repo `holmShellTools`) und wird laut `SKILL:docker` nicht eigenmächtig geändert — liegt bei Holm. > 🤖 angelegt von Claude v00 (API/Token holm)
Sign in to join this conversation.
No description provided.