krümel gärtner commit

This commit is contained in:
2026-01-02 21:19:05 +01:00
parent 173e5fa1a1
commit 3f3896a16d
4 changed files with 72 additions and 25 deletions

View File

@@ -142,8 +142,28 @@
const scoreColor = r.score > 0.8 ? 'green' : (r.score > 0.7 ? 'orange' : 'red');
const postId = payload.post_id || payload.id; // Try both
const giteaBase = 'https://194-164-194-191.sslip.io/git/kruemel/Crumb-Core-v.1/src/branch/main/';
const giteaLink = payload.file_path ? (giteaBase + payload.file_path) : null;
// Determine repository based on file path pattern
let repoName = 'Crumb-Core-v.1';
// Pattern: anything in "keks_handbuch" likely belongs to the handbook repo
if (payload.file_path && payload.file_path.includes('keks_handbuch')) {
repoName = 'OZM-Keks-Handbuch-v1';
}
// Construct dynamic Link
const giteaBase = `https://194-164-194-191.sslip.io/git/kruemel/${repoName}/src/branch/main/`;
let giteaLink = payload.file_path ? (giteaBase + payload.file_path) : null;
// Correction for Handbook: path in vector might be "docs/crumbforest/keks_handbuch/..."
// but in repo it is at root "..." or just "keks_handbuch"?
// User said: .../src/branch/main/crumbpage-27-logfile-analysis.md
// Vector has: docs/crumbforest/keks_handbuch/crumbpage-27-logfile-analysis.md
// Attempt to strip prefix if switching repo
if (repoName === 'OZM-Keks-Handbuch-v1' && giteaLink) {
// Remove "docs/crumbforest/keks_handbuch/" prefix if present to match flat repo structure
// Regex to strip the known prefix
const strippedPath = payload.file_path.replace(/^docs\/crumbforest\/keks_handbuch\//, '');
giteaLink = giteaBase + strippedPath;
}
return `
<article class="card" style="margin-bottom: 1rem;">

View File

@@ -0,0 +1,36 @@
# 🌱 Erste Schritte für Gärtner
Willkommen im Crumbforest.
Dies ist kein gewöhnliches Software-Projekt. Es ist ein digitaler Wald.
Bevor du die Axt anlegst oder neue Setzlinge pflanzt, bitten wir dich: **Atme.**
## 1. Die Philosophie
Wir bauen hier keine "Apps" für den schnellen Konsum. Wir bauen Werkzeuge zum Lernen.
- **Verstehen vor Ändern:** Kopiere keinen Code, den du nicht erklären kannst.
- **Naked Setup:** Wir nutzen Debian/FreeBSD pur. Keine Docker-Container, die Komplexität verstecken. Wir wollen die "echte" Maschine spüren.
- **Logs sind Geschichten:** Wenn etwas nicht geht, lies die Logs. Sie erzählen dir, was dem Wald fehlt.
## 2. Die goldene Regel
**Mache nichts kaputt, was du nicht reparieren kannst.**
Das System läuft stabil ("Nexus Ready"). Wenn du experimentieren willst:
1. Erstelle deinen eigenen Branch (z.B. `crumb_j`).
2. Teste lokal.
3. Nutze `strato_doctor.sh`, um die Gesundheit zu prüfen.
## 3. Bevor du startest
Lies diese Dateien (wirklich!):
- `README.md` - Der Aufbau des Waldes.
- `log_analyse_handbuch.md` - Wie man den Herzschlag des Systems liest.
## 4. Deine Werkzeuge
- **`./strato_doctor.sh`**: Dein Stethoskop. Sagt dir, ob Services laufen und wie die Latenz ist.
- **`./fix_eule.sh`**: Das Notfall-Kit, wenn permissions kaputt sind. Nutze es weise.
## 5. Kein "Coolify", kein "Vercel"
Wir wissen, dass es einfacher geht. Aber wir wählen den steinigen Pfad, weil wir lernen wollen, wie man Schuhe bindet, nicht wie man Klettverschluss benutzt.
---
*"Wer seine Logs liest, tanzt mit dem System."*
🌲 Viel Erfolg, junger Gärtner.

View File

@@ -1,6 +1,7 @@
# 🦉 Crumbforest Native Deployment
Docker-freie Installation für Linux Server mit fester IP-Adresse.
> 🌱 **Neu hier?** Lies zuerst [FIRST_STEPS_FOR_GARDENERS.md](FIRST_STEPS_FOR_GARDENERS.md), bevor du Code änderst.
## 📦 Inhalt

View File

@@ -1,27 +1,17 @@
# Deployment & Fixes Checklist
# 🌲 Crumbforest Roadmap & Maintenance
- [x] **Fix Deployment Issues**
- [x] **Docs Route**: Enable [docs_git.md](file:///Users/bmt/Downloads/crumbcrm_crumbcore_v1/app/docs/docs_git.md) in whitelist and copy file.
- [x] **Chat Stability**: Increase rate limit (60/min) and Nginx timeouts (300s).
- [x] **Vector Search**: Auto-detect embedding provider for robustness.
- [x] **SSL Setup**: Automate Certbot for `sslip.io` domain.
- [x] **TTYD / Missions**:
- [x] Create setup script ([setup_missions.sh](file:///Users/bmt/Downloads/crumbcrm_crumbcore_v1/native_crumbcore_v1/setup_missions.sh)).
- [x] Configure Nginx route `/terminal/`.
- [x] Fix TTYD 404 (Zombie process killed, Service restarted).
## 🛡️ Maintenance & Stability
- [ ] **Monitor Logs**: Regelmäßige Prüfung mit `./strato_doctor.sh`.
- [ ] **Update Validierung**: Vor jedem Server-Update `git pull` ausführen!
- [x] **Verification**
- [x] Push fixes to server.
- [x] Run updated [setup_missions.sh](file:///Users/bmt/Downloads/crumbcrm_crumbcore_v1/native_crumbcore_v1/setup_missions.sh).
- [x] **Verify Nginx Config on Server** (Critical Step).
- [x] Confirm TTYD accessible via browser.
- [x] Confirm Chat and Docs functional.
## 🌱 Community & Gardeners
- [ ] **Onboarding**: Feedback der neuen Krümel (z.B. `crumb_j`) in Docs einarbeiten.
- [ ] **Missions**: Neue Missionen für TTYD entwickeln.
- [x] 'Bugsy' Health Check features.
## 🎨 Backlog (Future)
- [ ] **Mission Selector**: Syntax-Fehler in `waldwaechter.sh` beheben.
- [ ] **Docs Reader**: 404/Empty List auf `/docs` untersuchen.
- [ ] **Debian Doktor**: 'Syslog' Option entfernen falls nicht verfügbar.
## Cosmetics & Future (Backlog)
- [ ] **Mission Selector**: Fix [stat](file:///Users/bmt/Downloads/crumbcrm_crumbcore_v1/app/routers/chat.py#232-243) syntax error in `waldwaechter.sh` (Line 720).
- [ ] **Docs Reader**: Investigate 404/Empty list on `/docs`.
- [ ] **Debian Doktor**: Remove 'Syslog' option if not available on host.
# Status: 🌲 NEXUS READY 🌲
---
*Status: 🌲 NEXUS LIVE 🌲*