Skip to content
Draft
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
1 change: 1 addition & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -45,6 +45,7 @@
- **PWA & Mobile-Icon-Suite:** Vollständiges Icon-Inventar (`mobile_icons/` und `web_companion/icons/`) integriert mit Favicon, Maskable Icons und Apple Touch Icons.

### Changed
- **Dokumentationssprachen und Laufzeitlokalisierung:** README-Sprachwahl und `llms.txt` verweisen jetzt auf englische, deutsche und spanische Benutzeranleitungen; die sechs Laufzeitsprachen DE/EN/ES/ZH/JA/RU werden davon getrennt ausgewiesen. `INV-LOCAL-09` behält die reziproken EN/DE-Anleitungen als Mindestgarantie und nennt die sechs UI-Sprachen. Veraltete Testdatei-Verweise in allen drei READMEs sind durch vorhandene Dateien ersetzt. Das spanische Badge übernimmt den Master-Stand von 155 Tests und 2026-11-01. `manage_translations.py --check` bestätigte 86 Schlüssel mit 100 % Abdeckung in allen sechs Laufzeitsprachen.
- Configured `[tool.ruff]` linter in `pyproject.toml` and fixed unused imports/variables in `SQLiteViewer.py` and test modules (zero ruff lint warnings).
- Updated test badge in `README.md` and `README_de.md` to reflect 107 passing tests (100% green).
- Updated `llms.txt` Last-checked header to `2026-10-03` with 107 Pytest + 43 Node companion tests verified.
Expand Down
18 changes: 10 additions & 8 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -20,7 +20,7 @@
</p>

<p align="center">
<b>English</b> | <a href="README_de.md">Deutsch</a>
<b>English</b> | <a href="README_de.md">Deutsch</a> | <a href="README_es.md">Español</a>
</p>

> [!NOTE]
Expand Down Expand Up @@ -113,7 +113,7 @@ flowchart TD
GUI --> TabData["Data Browser Tab (Sortable Treeview & Paging)"]
GUI --> TabSchema["Schema Inspector Tab (DDL Syntax Highlighting)"]
GUI --> TabSQL["SQL Editor Tab (Interactive Execution & F9)"]
GUI --> TabSettings["Settings & i18n (DE / EN Dynamic Switcher)"]
GUI --> TabSettings["Settings & i18n (6 Runtime Locales: EN / DE / ES / ZH / JA / RU)"]

TabData -->|"Local Read-Only Query"| DBEngine["Python sqlite3 Engine (Standard Library)"]
TabSchema -->|"sqlite_master Query"| DBEngine
Expand Down Expand Up @@ -235,7 +235,7 @@ SQLiteViewer is purpose-built as a local-first desktop viewer. It compares again
| **Offline Browser Companion** (`INV-LOCAL-06`)| **YES (`web_companion/`)** | NO | NO | NO | Web Application |
| **Microsoft Store Packaging** (`INV-LOCAL-07`) | **YES (`9P6H501XB8JT`)** | Winget / MSI | Winget / MSI | Zip / Setup | None |
| **Permissive License** (`INV-LOCAL-08`) | **MIT (Zero Copyleft)** | GPLv3 (Copyleft) | Apache / Proprietary | GPLv3 (Copyleft) | Proprietary |
| **Bilingual Parity EN/DE** (`INV-LOCAL-09`) | **YES (100% Reciprocal)** | Partial UI | Partial UI | Partial UI | English Only |
| **Bilingual Parity EN/DE** (`INV-LOCAL-09`) | **Reciprocal EN/DE guide baseline; 6 runtime UI locales (EN/DE/ES/ZH/JA/RU)** | Partial UI | Partial UI | Partial UI | English Only |
| **Security SLA** (`INV-LOCAL-10`) | **48-Hour Response SLA** | Community Best Effort | Commercial SLA | Community Best Effort | Vendor SLA |

---
Expand All @@ -248,7 +248,7 @@ SQLiteViewer is purpose-built as a local-first desktop viewer. It compares again
- **SQL Query Editor:** Multi-line SQL console with query execution (`F9`), error highlighting, and timing metrics.
- **Instant Search:** Dynamic column-based filtering across active table rows.
- **Context-Aware Export:** Export visible rows directly to CSV or rich JSON (`sqliteviewer-export-v1.json`).
- **Dynamic Internationalization:** Instant runtime language switching between English and German via the UI menu.
- **Dynamic Internationalization:** Switch the runtime UI between English, German, Spanish, Chinese, Japanese, and Russian from the UI menu.
- **Offline Web Companion:** Explore exported JSON datasets in any modern browser without installing software or running a local server.
- **Single Executable & Store Ready:** Packaged for seamless Windows Store deployment (`SQLite Viewer Pro`) or standalone Python execution.

Expand Down Expand Up @@ -372,7 +372,7 @@ SQLiteViewer strictly adheres to the ten foundational system invariants of the `
| `INV-LOCAL-06` | **Offline Browser Companion** | Includes zero-dependency HTML/JS companion (`web_companion/`) for client-side review. |
| `INV-LOCAL-07` | **Standard Store Packaging** | Clean AppX/MSIX manifest compatibility with verified Store ID `9P6H501XB8JT`. |
| `INV-LOCAL-08` | **100% Permissive Open Source** | Pure MIT License. Zero copyleft encumbrance on user databases or pipelines. |
| `INV-LOCAL-09` | **Bilingual Parity EN/DE** | Full reciprocal English/German user guides and runtime UI localization. |
| `INV-LOCAL-09` | **Bilingual Parity EN/DE** | Reciprocal English/German user guides remain the documentation baseline; runtime UI supports six locales (EN/DE/ES/ZH/JA/RU). |
| `INV-LOCAL-10` | **Security & Vulnerability SLA** | Documented 48-hour response SLA for security and vulnerability disclosures. |

---
Expand Down Expand Up @@ -422,11 +422,13 @@ pytest -ra -v
```

Test coverage includes:
- `tests/test_sql_execution.py`: Safe query execution, error trapping, and data types.
- `tests/test_translations.py`: Complete key parity across English and German locales.
- `tests/test_execute_sql.py`: SQL execution and query-result/export behavior.
- `tests/test_i18n_translations_complete.py`: Translation-catalog completeness across six runtime locales.
- `tests/test_i18n_translator.py` and `tests/test_i18n_gui_contract.py`: Translator and runtime UI language-handling contracts.
- `tests/test_ui_accessibility.py`: Tooltips, keyboard navigation, shortcuts, and dialogs.
- `tests/test_cli_db_argument.py`: Filepath validation and CLI parameter handling.
- `tests/test_store_screenshots.py`: High-resolution asset generation and Store guidelines.
- `tests/test_metadata.py`: Automated contract verification for banner safety (`HOOK-BANNER-ASSET-01`), Mermaid diagram syntax, 16-point bilingual parity, target personas, and comparative matrix consistency.
- `tests/test_metadata.py`: Banner safety (`HOOK-BANNER-ASSET-01`), Mermaid syntax, repository metadata and documentation contracts, target personas, and comparative-matrix consistency.

---

Expand Down
18 changes: 10 additions & 8 deletions README_de.md
Original file line number Diff line number Diff line change
Expand Up @@ -20,7 +20,7 @@
</p>

<p align="center">
<a href="README.md">English</a> | <b>Deutsch</b>
<a href="README.md">English</a> | <b>Deutsch</b> | <a href="README_es.md">Español</a>
</p>

> [!NOTE]
Expand Down Expand Up @@ -113,7 +113,7 @@ flowchart TD
GUI --> TabData["Tabellen-Browser Tab (Sortierbares Grid & Paging)"]
GUI --> TabSchema["Schema-Inspektor Tab (DDL Syntax-Anzeige)"]
GUI --> TabSQL["SQL-Editor Tab (Interaktive Abfragen & F9)"]
GUI --> TabSettings["Einstellungen & i18n (DE / EN Sprachumschaltung)"]
GUI --> TabSettings["Einstellungen & i18n (6 Laufzeitsprachen: DE / EN / ES / ZH / JA / RU)"]

TabData -->|"Lokale Lese-Abfrage"| DBEngine["Python sqlite3 Engine (Standardbibliothek)"]
TabSchema -->|"sqlite_master Abfrage"| DBEngine
Expand Down Expand Up @@ -235,7 +235,7 @@ SQLiteViewer wurde als fokussiertes, lokales Desktop-Werkzeug konzipiert. Die Ge
| **Offline Browser-Companion** (`INV-LOCAL-06`)| **JA (`web_companion/`)** | NEIN | NEIN | NEIN | Reine Web-App |
| **Microsoft Store Paketierung** (`INV-LOCAL-07`) | **JA (`9P6H501XB8JT`)** | Winget / MSI | Winget / MSI | Zip / Setup | Keine Desktop-App |
| **Permissive Lizenz** (`INV-LOCAL-08`) | **MIT (Zero Copyleft)** | GPLv3 (Copyleft) | Apache / Kommerziell | GPLv3 (Copyleft) | Proprietär |
| **Zweisprachige Parität EN/DE** (`INV-LOCAL-09`) | **JA (100% Wechselseitig)**| Teilweise UI | Teilweise UI | Teilweise UI | Nur Englisch |
| **Zweisprachige Parität EN/DE** (`INV-LOCAL-09`) | **Reziproke EN/DE-Handbücher; 6 Laufzeitsprachen (DE/EN/ES/ZH/JA/RU)**| Teilweise UI | Teilweise UI | Teilweise UI | Nur Englisch |
| **Sicherheits-SLA** (`INV-LOCAL-10`) | **48h Reaktions-SLA** | Community Best Effort | Kommerzielles SLA | Community Best Effort | Anbieter-SLA |

---
Expand All @@ -248,7 +248,7 @@ SQLiteViewer wurde als fokussiertes, lokales Desktop-Werkzeug konzipiert. Die Ge
- **SQL-Abfrage-Editor:** Mehrzeilige SQL-Konsole mit Ausführung per `F9`, Zeilenzähler und Laufzeitmessung.
- **Echtzeit-Suche:** Schnelles Filtern sichtbarer Zeilen über alle Spalten hinweg.
- **Kontextsensitiver Export:** Gezielter Export aktiver Tabellen- oder Abfragedaten als CSV oder strukturiertes JSON (`sqliteviewer-export-v1.json`).
- **Dynamische Internationalisierung:** Umschaltung zwischen Deutsch und Englisch im laufenden Betrieb über das Menü.
- **Dynamische Internationalisierung:** Sprachwechsel im laufenden Betrieb zwischen Deutsch, Englisch, Spanisch, Chinesisch, Japanisch und Russisch über das UI-Menü.
- **Offline Web-Companion:** Analyse exportierter JSON-Datensätze im Browser ohne Server und ohne Netzwerkzugriff.
- **Store-zertifiziert:** Vollständig vorbereitet für den Microsoft Store (`SQLite Viewer Pro`) und als eigenständiges Python-Skript nutzbar.

Expand Down Expand Up @@ -372,7 +372,7 @@ SQLiteViewer erfüllt alle zehn System-Invarianten des `open-bricks`- und `file-
| `INV-LOCAL-06` | **Offline Browser-Companion** | Mitgeliefertes HTML/JS-Werkzeug (`web_companion/`) zur serverlosen Betrachtung. |
| `INV-LOCAL-07` | **Standard Store-Paketierung** | Saubere AppX/MSIX-Kompatibilität mit registrierter Store-ID `9P6H501XB8JT`. |
| `INV-LOCAL-08` | **100% Permissive Open-Source-Lizenz** | Reines MIT. Keine Copyleft-Verpflichtungen auf Benutzerdaten oder Pipelines. |
| `INV-LOCAL-09` | **Zweisprachige Parität EN/DE** | Vollständig wechselseitige Dokumentation und dynamische Lokalisierung im Interface. |
| `INV-LOCAL-09` | **Zweisprachige Parität EN/DE** | Die reziproken englischen und deutschen Benutzerhandbücher bleiben die Dokumentationsbasis; die Laufzeitoberfläche unterstützt sechs Sprachen (DE/EN/ES/ZH/JA/RU). |
| `INV-LOCAL-10` | **Sicherheits- & Vulnerability-SLA** | Dokumentierte 48-Stunden-Reaktionszeit bei gemeldeten Sicherheitsvorfällen. |

---
Expand Down Expand Up @@ -422,11 +422,13 @@ pytest -ra -v
```

Enthaltene Testmodule:
- `tests/test_sql_execution.py`: Sichere Abfrageausführung, Fehlerbehandlung und Datentypen.
- `tests/test_translations.py`: Vollständige Schlüsselparität zwischen deutscher und englischer Übersetzung.
- `tests/test_execute_sql.py`: SQL-Ausführung sowie Verhalten von Abfrageergebnissen und Exporten.
- `tests/test_i18n_translations_complete.py`: Vollständigkeit des Übersetzungskatalogs in sechs Laufzeitsprachen.
- `tests/test_i18n_translator.py` und `tests/test_i18n_gui_contract.py`: Verträge für Translator und Sprachwechsel im Laufzeit-Interface.
- `tests/test_ui_accessibility.py`: Tooltips, Tastaturnavigation, Tastenkürzel und Dialoge.
- `tests/test_cli_db_argument.py`: Pfadvalidierung und CLI-Parameterprüfung.
- `tests/test_store_screenshots.py`: Asset-Generierung für die Windows-Store-Präsenz.
- `tests/test_metadata.py`: Vertragstests für Banner-Schutz (`HOOK-BANNER-ASSET-01`), Mermaid-Syntax, zweisprachige Parität, Zielgruppen und Vergleichsmatrix.
- `tests/test_metadata.py`: Banner-Schutz (`HOOK-BANNER-ASSET-01`), Mermaid-Syntax, Repository-Metadaten und Dokumentationsstruktur, Zielgruppen und Vergleichsmatrix.

---

Expand Down
Loading
Loading