Repository navigation
docs: Admin-Hub Feature-Spec (Werkzeuge-Sektion: Browser, Quick Notes, Dateimanager, Systemmonitor) - #12
Merged
Conversation
…, file manager, system monitor)
This was referenced Aug 22, 2026
Toqsick
added a commit
that referenced
this pull request
Sep 29, 2026
…odies Spiegel der GitHub-Stände vom 2026-09-30: sieben MLA-Next-Milestones (#12-#18 auf GitHub), 17 Issues #90-#106 (Label track:mla-next) und die ausgearbeiteten Bodies der Roadmap-Issues #58-#87. Nur neue Dateien unter docs/mla-next/; kein Code, keine Policy, kein Packaging. Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
Toqsick
added a commit
that referenced
this pull request
Sep 30, 2026
* docs(mla): add isolated GTK scaffold and coding-agent master plan * docs(mla): add scaffold setup, IPC contract and verification gates * docs(mla): add SDD execution plan (gate 0, baseline, la_core spike + registry) * docs(mla): gate 0 automated verification on zorin (wayland + x11) * docs(mla): complete gate 0 wayland evidence chain (review fix) * docs(mla): add A0 baseline and evidence map * feat(la_core): minimal headless spike per issue #59 (probe contract, compile exe) * feat(la_core): module descriptor + registry validation per issue #60 * feat(la_core): registry lifecycle - single-flight activation, reverse stop per issue #60 * docs(mla): check off gate 1 spike + registry portions with evidence * docs(mla): true up gate evidence (final review fix) * chore(analyze): adopt analyzer excludes auto-written by flutter tool * fix(la_core): align sdk bound with committed lockfile (^3.11.0) * style(la_core): apply dart format to registry and tests * ci(mla): run la_core gates and headless compile in Dart workflow * fix(analyze): exclude nested packages from root analyzer (monorepo) * docs(mla): mirror MLA-Next milestones/issues and elaborated roadmap bodies Spiegel der GitHub-Stände vom 2026-09-30: sieben MLA-Next-Milestones (#12-#18 auf GitHub), 17 Issues #90-#106 (Label track:mla-next) und die ausgearbeiteten Bodies der Roadmap-Issues #58-#87. Nur neue Dateien unter docs/mla-next/; kein Code, keine Policy, kein Packaging. Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com> * refactor(la_core): reine Parser aus der App in den Kern verschieben (#93) Schnitt 1 von #93: es wandern nur Modelle und Parse-Funktionen, die Runner bleiben app-seitig (sie hängen an Linux.runCommandWithCustomArguments bzw. CommandHelper, ein Umzug würde runInShell/expandCommand/kDebugMode verschieben). Neu in packages/la_core: parseDfOutput + DeviceInfo, parsePsOutput + ProcessStat, parseUptime + Uptime, parseLoadAvg, MemoryInfo.parseFreeOutput + MemoryInfo. Die Rümpfe sind 1:1 aus der App übernommen, nur static -> Top-Level; @immutable entfällt, damit der Kern dependency-frei bleibt. Neu: test/parsers_test.dart mit denselben Fixtures wie der App-Test, inline - eine gemeinsame Fixture-Ablage ist #94 und von diesem Schnitt blockiert. dart test 14 -> 30. Das SDK-Bound bleibt bei ^3.11.0 (bf4942b, deckungsgleich mit packages/la_core/pubspec.lock); ergänzt ist nur ein Kommentar, der erklärt, warum ein Absenken kein No-op wäre: die Spracheversion steuert, welche Formatierer-Regeln `dart format` auf das Paket anwendet. Co-Authored-By: Claude Code <noreply@anthropic.com> * refactor(linux): Parser-Aufrufe an la_core delegieren (#93) Die drei Fassaden lib/linux/{linux_filesystem,linux_process,linux_system}.dart halten nur noch Klassenrumpf und Runner; die Parser-statics delegieren prefixed an la_core und die Modelle werden re-exportiert: import 'package:la_core/la_core.dart' as core; export 'package:la_core/la_core.dart' show DeviceInfo; Das Präfix ist Pflicht, nicht Stil: ein unqualifizierter Aufruf im Body eines gleichnamigen static bindet über den Class-Scope auf sich selbst und ergäbe eine Endlosrekursion, die sauber kompiliert und von keinem Analyzer-Gate gefangen wird. lib/services/system_stats_service.dart bekommt import UND export von MemoryInfo: ein export importiert nicht in dieselbe Library, der import deckt den eigenen Scope (Feld SystemStats.memory, Aufruf in refresh), der export hält package:linux_assistant/... als Bezugsweg für den bestehenden Test offen. SystemStats und SystemStatsService bleiben unverändert app-seitig. test/system_parsers_test.dart bleibt byte-identisch (kein Diff). Gates: la_core dart test 30/30, analyze/format/compile exe + Headless-Probe grün; App flutter test +184, gezielter Parser-Test +22, flutter analyze sauber, dart format 0 changed, tool/check-versions.sh konsistent, Python 49 OK. Nebenbei, unabhängig von #93: flutter pub get hat die gegen die installierte Flutter 3.47.5 veraltete pubspec.lock neu aufgelöst - intl 0.20.2 -> 0.20.3 (flutter_localizations verlangt intl ^0.20.3), test_api 0.7.12, matcher 0.12.20, meta 1.19.0, vector_math 2.4.3; die sdks-Zeile steht damit auf dart >=3.11.0, was zum SDK-Bound von la_core passt. Co-Authored-By: Claude Code <noreply@anthropic.com> * docs(mla): Gate-1-Nachweis für #93 Schnitt 1 (Parser-Umzug) Handoff-Abschnitt zu den Commits 94b5ef8 und 755665c: Basis-SHA, Pfade der verschobenen Parser, die zwei Fallen (Class-Scope-Schatten im Delegator, export importiert nicht), alle tatsächlich ausgeführten Gates mit Ausgabe, nicht ausgeführte Gates (CI triggert den Branch nicht; kein Runner- Verhaltensnachweis) und Rückfallplan. Dazu die festgehaltene Planabweichung: das SDK-Bound blieb ^3.11.0 statt wie geplant auf ^3.4.0 zu sinken. Unabhängige Verifikation durch den read-only Workflow mla-93-parser-move-verify (vier Linsen + Synthese, 5 Agenten): Synthese-Verdikt PASS ohne Blocker; Endlosrekursion, gespaltener Typ und Logikdrift gezielt ausgeschlossen, Rümpfe gegen 513def1 byte-identisch. Festgehalten sind auch die Einschränkungen der Runde: leere Belegketten der Linsen 1/2/4, bewegter Arbeitsbaum während der Verifikation, und die Formatierer-Methodik (dart format liest die Spracheversion aus .dart_tool/package_config.json - erst dart pub get, dann formatieren). Co-Authored-By: Claude Code <noreply@anthropic.com> * docs(mla): Push-Status im #93-Handoff nachziehen Der Handoff-Abschnitt in VERIFY.md stand nach dem Push noch auf "unpushed" und listete nur zwei der drei Commits. Jetzt: drei Commits, gepusht als Fast-Forward 513def1..080becf. Im Rückfallplan entfällt der reset-Weg, weil der Branch geteilt ist -- revert ist der gangbare Pfad. Co-Authored-By: Claude Code <noreply@anthropic.com> * feat(mla): Modul-Registry und HubModule-Adapter ersetzen acht Navigations-Switches (#60) Die acht navigationsrelevanten switch-Blöcke in lib/layouts/hub/hub_shell.dart sind durch Lookups in die neue Registry lib/layouts/hub/hub_module.dart ersetzt (HubModule, hubModules, hubModuleOf). Die Enums HubSection/HubTool ziehen dorthin um und werden von hub_shell.dart re-exportiert. Die neun Einträge reichen je einen ModuleDescriptor aus packages/la_core durch — la_core bleibt unangetastet und Flutter-frei. HubModule ergänzt den Kern um Icon, Tier, screenBuilder und isAvailable(Environment). Vier neue ARB-Keys (browser, quickNotes, fileManager, systemMonitor) in allen vier ARB-Dateien plus regenerierte app_localizations*.dart. SystemStatsService bekommt den nur lesenden Test-Seam sectionActive. en/de sind byte-identisch: die Charakterisierungstests H1–H8 wurden zuerst gegen den alten switch-Code geschrieben und blieben unverändert grün. Für it/fi zeigen die vier Werkzeugtitel jetzt echte Übersetzungen statt des englischen _tr-Fallbacks — vom l10n-Gate erzwungen, nicht gewählt. Tests: test/hub_navigation_test.dart (H1–H9), test/hub_module_registry_test.dart (T1–T7), test/hub_test_harness.dart. Voller Lauf +200 grün. Der Abschnitt „Abnahme #60" in docs/mla-next/VERIFY.md belegt alle Gates mit ausgegebener Ausgabe. Co-Authored-By: Claude Code <noreply@anthropic.com> * docs(mla): Abnahme-Abschnitt für #60 in VERIFY.md Basis-SHA, Gate-Tabelle mit tatsächlichen Ausgaben, Rest-Switch-Beweis, Abnahmekriterien, Synthese-Verdikt (PASS), akzeptierte Befunde, nicht ausgeführte Gates, Test-Nebenwirkung, Planabweichungen, Leak-Grep-Einordnung und Rückfallplan. Dazu drei alte Stellen korrigiert: la_core dart test 14 -> 30, Gate-1-Box für #60 mit geliefertem Adapter, HubModule-Adapter nicht mehr als offen geführt. Co-Authored-By: Claude Code <noreply@anthropic.com> * docs: Nutzernamen aus Handoff-Auszügen entfernen (öffentliches Repo) Journal- und pkexec-Auszüge in drei Handoff-Dateien trugen den lokalen Nutzernamen (viermal unix-user/pkexec bzw. eine uid-Zeile, dazu ein --home-Pfad) sowie einen absoluten Repo-Pfad. Ersetzt durch <user> bzw. $HOME. Kein Code, keine Aussage geändert. Co-Authored-By: Claude Code <noreply@anthropic.com> --------- Co-authored-by: Claude Sonnet 5.5 <noreply@anthropic.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
🛠️ Admin-Hub: Feature-Spezifikation für v0.8
Erweitert die Sidebar (v0.7.1) um eine „Werkzeuge"-Sektion mit vier Features:
brave → brave-browser → xdg-open), konfigurierbar~/.local/share/linux-assistant/notes/), Autosave, Master-Detail, Monospace-Editordart:io(kein Shell-out), Breadcrumbs, Destructive-Confirms, Symlink-Policy/proc(CPU/RAM/Disks/Netz/Thermal) + optionalnvidia-smi, 1s-Refresh mit Performance-BudgetDesign-Integration
MintYColorsThemeExtension (keine Hardcodes)MintYText.mono(Editor)Abhängigkeiten
Reine Spezifikation – kein App-Code.