Files
management/.gitlab-ci.yml
T
Thore CimbalandClaude Fable 5 e36ed337a7 feat: slice 1 - the neckbeard framework chain runs end to end
Tracer bullet of the migration design (Gate 4, slice 1): pinned v0.1.1
baseline under docs/sources/upstream/ with provenance note, the
Karpathy block moved verbatim to docs/sources/regelwerk/ (standing
rule mapped onto the sources read-only mechanism), AGENTS.md assembled
from the byte-true upstream sections plus the project section 6
(group rules condensed from the old CLAUDE.md), CLAUDE.md reduced to
the upstream pointer, WORKFLOW.md and all four templates copied,
schema.yaml extended (issue milestone/priority/status columns,
component type, wiki area vision - all flagged in the header),
validate.py and gen_status.py forked with marked extensions,
pruefe_upstream_drift.py added, STATUS.md generated, CI gains the
offline validate job, README directory link defused.

Verified: validate 0 errors 0 warnings (the three pre-existing
directory-link errors are gone), gen_status --check current,
drift check 0 findings, baseline byte-identical to the reference
checkout (10/10 files), four negative tests fire (WIP limit 3x
in-progress, waiting without wartegrund, component slug mismatch,
single-byte drift in WORKFLOW.md). gen_status needs Python >= 3.10
locally (write_text newline) - noted for the design AAR.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-08-11 12:00:00 +00:00

52 lines
1.9 KiB
YAML

# CI des management-Repos. Enthaelt bewusst nur die Stillstandspruefung — hier
# liegt Dokumentation, es gibt nichts zu bauen.
#
# Die Pruefung sucht Dinge, die leise aufgehoert haben zu funktionieren. Anlass ist
# die Retro vom 2026-08-09: sechs solcher Faelle in neun Tagen, keiner davon durch
# eine Ueberwachung gefunden.
stages:
- pruefen
# Nur geplant und von Hand. Bei jedem Doku-Commit zu laufen brächte nichts —
# die Pruefung sieht auf den Zustand des Verbunds, nicht auf diesen Commit.
stillstandspruefung:
stage: pruefen
image: python:3.12-alpine
rules:
- if: $CI_PIPELINE_SOURCE == "schedule"
- if: $CI_PIPELINE_SOURCE == "web"
variables:
LAB_CA: "$CI_PROJECT_DIR/ci/lab-ca-chain.crt"
before_script:
- apk add --no-cache curl ca-certificates >/dev/null
script:
# Ohne Token laeuft nichts — und das soll laut auffallen. Eine Pruefung, die
# sich still selbst ueberspringt, waere genau der Fehler, den sie sucht.
- |
if [ -z "$GITLAB_TOKEN" ]; then
echo "GITLAB_TOKEN fehlt (Gruppen-Token mit read_api)."
echo "Ohne Lesezugriff kann nichts geprueft werden - siehe management#31."
exit 1
fi
- python3 scripts/stillstandspruefung.py
# Befunde sind kein Betriebsausfall, aber sie sollen sichtbar bleiben. Die rote
# Pipeline ist bei uns die Alarmanlage (gitops/CLAUDE.md, TURN-Rotation).
allow_failure: false
# Offline-Gate bei jedem Push: Artefakte gegen schema.yaml, STATUS.md
# aktuell, Framework-Dateien unveraendert (Design 2026-08-11, Slice 1).
# Braucht nur den Baum - bewusst ohne Token und ohne Netz.
validate:
stage: pruefen
image: python:3.12-alpine
rules:
- if: $CI_PIPELINE_SOURCE == "push"
before_script:
- pip install --quiet pyyaml
script:
- python3 scripts/validate.py
- python3 scripts/gen_status.py --check
- python3 scripts/pruefe_upstream_drift.py
allow_failure: false