Projekt-Identität und -Config neu: .ai-control/config.json mit UUID und Name
- Projekt-Config zieht von ai-control.json nach .ai-control/config.json um, das Icon liegt daneben und synct mit dem Projekt. - Jedes Projekt trägt eine UUID (id) und den Anzeigenamen (name) in der Config; die UUID ist Registry-Schlüssel und project-Parameter aller Commands, der Name reine Darstellung. - Pool-Zuordnung ist maschinenlokal und liegt in der projects.json-Registry, nicht mehr in der syncbaren Projekt-Config. - open_terminal prüft die ID im Ordner gegen die Registry (verschobene oder ersetzte Ordner scheitern laut). - Import übernimmt eine mitgebrachte ID, legt Arbeitsordner und Archiv-Home an und zieht die Archiv-Permission nach. - Migration beim App-Start: Alt-Datei umziehen, Pool in die Registry, Icons aus ~/.config/ai-control/icons ins Projekt, Registry auf UUIDs. - ProjectConfig reicht unbekannte Keys per serde(flatten) durch den Round-Trip (Regressionstest config_roundtrip_erhaelt_fremde_keys).
This commit is contained in:
+3
-2
@@ -69,12 +69,13 @@ document.querySelector("header")!.addEventListener("dblclick", (e) => {
|
||||
// bis die Webview lädt).
|
||||
|
||||
interface Project {
|
||||
id: string;
|
||||
name: string;
|
||||
pool: string | null;
|
||||
terminal: { theme: string | null; icon: string | null; title: string | null };
|
||||
}
|
||||
const projects = await invoke<Project[]>("list_projects");
|
||||
const cfg = projects.find((p) => p.name === project);
|
||||
const cfg = projects.find((p) => p.id === project);
|
||||
if (cfg?.pool) {
|
||||
// Anzeigename statt Pool-ID (Ordnername).
|
||||
document.getElementById("pool")!.textContent = await invoke<string>(
|
||||
@@ -83,7 +84,7 @@ if (cfg?.pool) {
|
||||
);
|
||||
}
|
||||
document.getElementById("project-name")!.textContent =
|
||||
cfg?.terminal.title ?? project;
|
||||
cfg?.terminal.title ?? cfg?.name ?? project;
|
||||
|
||||
// Projekt-Icon vor den Titel — dieselbe data-URL wie in der Projektliste.
|
||||
if (cfg?.terminal.icon) {
|
||||
|
||||
Reference in New Issue
Block a user