Etat residuel en base, carte du package et docs remises d'aplomb

- sysprompt, utilisateurs appairés, codes d'appairage et etat du job de build
  passent en base ; ne restent des fichiers que la cle E2E, les certificats et
  les journaux (le log de build reste un fichier : des milliers de lignes)
- doc.go remis a jour (run.go, store.go, les deux services, tools/assemble-ui)
- README et notes de release ne pretendent plus que la racine ne contient que
  six dossiers : c'etait faux
This commit is contained in:
nathaninline committed 2026-08-07 17:51:59 +02:00
1 parent 29bfe236cd
commit 7ecd869da0
6 files changed
+67 -84

No files matched your search

+4 -22
View File
@@ -1,6 +1,6 @@
// web_sysprompt.go — prompt système personnalisé de l'utilisateur, persisté
// CÔTÉ SERVEUR ($AJEAN_HOME/sysprompt.txt) et partagé entre appareils, comme la
// conversation elle-même. Historique : avant la conversation serveur (v0.4.x),
// CÔTÉ SERVEUR (en base) et partagé entre appareils, comme la conversation
// elle-même. Historique : avant la conversation serveur (v0.4.x),
// l'UI envoyait son prompt système dans chaque requête /api/chat ; depuis,
// /api/chat/send ne porte que le message → le champ de l'UI n'avait plus aucun
// effet. Il est maintenant lu ici par la génération (chat_conversation.go), et
@@ -10,32 +10,14 @@ package ajean
import (
"encoding/json"
"net/http"
"os"
"path/filepath"
"strings"
)
func sysPromptPath() string { return filepath.Join(AjeanHome(), "sysprompt.txt") }
// readSysPrompt renvoie le prompt système personnalisé ("" si absent).
func readSysPrompt() string {
b, err := os.ReadFile(sysPromptPath())
if err != nil {
return ""
}
return strings.TrimSpace(string(b))
}
func readSysPrompt() string { return getStr(bkState, "sysprompt") }
func saveSysPrompt(text string) error {
text = strings.TrimSpace(text)
if text == "" {
err := os.Remove(sysPromptPath())
if os.IsNotExist(err) {
return nil
}
return err
}
return os.WriteFile(sysPromptPath(), []byte(text+"\n"), 0o644)
return putStr(bkState, "sysprompt", strings.TrimSpace(text))
}
// handleSysPrompt :