feat: Add diary entry for 2026-07-12 covering GCC migration, license change to Apache-2.0, and housekeeping updates

This commit is contained in:
2026-07-12 19:41:59 +02:00
parent 0d121b4c47
commit 086eecd190
2 changed files with 66 additions and 54 deletions
-54
View File
@@ -13,57 +13,3 @@
- `init`/`serve` (HttpListener) Subcommands; `webstatic.example/` KMU-Vorlage.
- `install.sh` (→ `/opt/GitCover/webstatic`), `LICENSE.md` (MIT), AGENTS/MEMORY/SKILLS/.hermes, plans/00.
- Verifiziert: `dotnet build -c Release` ✓; Beispiel baut de/en/vi mit i18n, Pagefind, Mermaid ✓.
## 2026-07-12 — Praxiseinsatz GCC + Tool-Erkenntnisse
### Realer Einsatz: gcc.gitcover.org auf webstatic migriert
- Zweite GitCover-Site (nach GCBoK) erfolgreich mit der `webstatic`-CLI gebaut —
validiert den Tool-Workflow (Phase 3/4) unter realen Bedingungen.
- Migration: Python-Build (`build/`, `build-env/`, `*.py`) vollständig entfernt;
Multi-Page-Modell, `*.de.md` autoritativ (DE-Quelle explizit suffixiert), Banner
(`00-banner.*.md`) 1:1 aus gcbok übernommen, Eyebrow + Titel als
`<div class="page-header">` (`.eyebrow--green` + `<h1 class="page-title">`) auf
**allen** Content-Seiten vorangestellt.
- `pagefind: false` in `webstatic.json` → Such-Toggle im Chrome ist dann
nicht funktional (bewusst, da GCC keinen Volltextindex braucht).
### Wichtige Tool-Erkenntnis (für docs/plans)
- webstatic stellt KEIN `{{ title }}`/`{{ eyebrow }}`-**Seitentoken** bereit.
Frontmatter-`title`/`eyebrow` speisen nur `<title>`/Meta (SEO) und die
Navigations-Labels. Jede Seite muss Eyebrow + Titel **selbst im Body** tragen
(wie gcbok es in der Hero-/`01-`-Datei tut) — sonst fehlen die Überschriften
auf der generierten Seite. Das ist Design-Intent, kein Bug.
### Installation: per-user ist die aktive
- Aktive Installation ist die **per-user Betatester-Install** unter
`~/.local/share/GitCover/webstatic` (Launcher `~/.local/bin/webstatic`),
**nicht** `/opt/GitCover/webstatic` (existiert nicht).
- Stand lokal `7065c07`, Remote `89f720a` → Update via `webstatic update` verfügbar.
- `plan 01` Fix 1 („veraltete `/opt`-Binary") ist damit gegenstandslos; die
übrigen Fixes 27 sind bereits im Code umgesetzt (Help/Version vor Build,
Content-Check, Artefakte aus Git, Default-Envs = `development`/`staging`/`deploy`,
`tests/README.md` vorhanden).
### Status
- Version `1.0.0.0`. Subcommands vorhanden: `build`, `serve`, `init`, `translate`, `status`.
- Environments im Code: `development` (foldet `--work`/`--preview`/`--review`),
`staging`, `deploy`. `plan 00` §6/§7 noch mit `work`/`review` veraltet — korrigiert.
### 2026-07-12 (später) — Lizenzwechsel MIT → Apache-2.0
- **Grund:** Builder implementiert an vielen Stellen patentrelevante Logik; Apache-2.0
bietet explizite **Patentlizenz (§3)** + **Retorsionsklausel** (Patentlizenz erlischt
bei Patentklage) — Schutz gegen Patent-Trolle, den MIT nicht leistet.
- `LICENSE`**`LICENSE.md`** (kanonischer Dateiname im Repo/Remote; MIT-Text durch
vollständigen Apache-2.0-Text ersetzt).
- Neue **`NOTICE`** (Repo-Root): Attribution Dritt-Komponenten `Markdig` (BSD-2),
`YamlDotNet` (MIT).
- `csproj`: `PackageLicenseExpression` = `Apache-2.0`; Description „(OSS, Apache-2.0)".
- Kompakter **SPDX-Header** (`// Copyright … // SPDX-License-Identifier: Apache-2.0`)
in alle 12 `.cs`-Dateien eingefügt (Build verifiziert, 0 Warnungen/Fehler).
- Wiederverwendbarer Baustein + Rationale in `docs/license-header.md`.
- Docs angepasst: `README.md`, `AGENTS.md`, `plans/00` §12 + Repo-Struktur,
`.hermes/skills.md`, `webstatic.example`-Inhalte, Tagebuch.
- **Hinweis Dev-Repo:** `/mnt/brx5/work/OSS/build_webstatic` ist ein eigenständiger
Checkout (Remote `git.gitcover.org:OSS/build_webstatic.git`). Dort ist `LICENSE.md`
noch MIT — bei Gelegenheit dort ebenfalls auf Apache-2.0 + `NOTICE` syncen, sonst
würde ein Pull den Wechsel im per-user-Clone überschreiben.