Entwicklung und Releases
Lokale Prüfungen
Die App-CI führt Java-Unit-Tests, Android-Lint, Debug-Build, API-17-Kompatibilität, Geometrietests, Doku-Parität und drei strikte Zensical-Builds aus. Die Integrations-CI führt pytest, Ruff, Typprüfung, Frontendtests, Viewport-Snapshots, Hassfest, HACS-Validation und Schema-Vertragstests aus. Gemeinsame Testvektoren sichern den Protokollvertrag.
Versionierung
Die App steht auf versionName 0.1.17; der Tag v0.1.17 erzeugt versionCode 1017. Die Integration führt Version 0.1.14 in pyproject.toml und custom_components/rustyhama/manifest.json. Eine reine App-Änderung erfordert kein neues Integrationsrelease, solange Protokoll und Integrationscode unverändert kompatibel bleiben. 1.0.0 bezeichnet den ersten gemeinsam stabilen Protokollstand.
Veröffentlichung
Forgejo ist für beide Repositories führend. Ein App-Tag baut signierte APK, F-Droid-Metadaten, Screenshots und alle drei Dokumentationseditionen und veröffentlicht GitPages. Ein Integrationstag spiegelt Commit und Tag nach GitHub und erzeugt rustyhama.zip für HACS. Tag und manifest.json müssen exakt dieselbe Integrationsversion besitzen.
Dokumentations-Gate
docs/page-manifest.json definiert jede erwartete Seite. CI verlangt identische Pfade, Überschriftenstruktur, JSON-Feldabdeckung und interne Links in DE/EN/FR, explizite ASCII-Anker und keine unfertigen Marker. Assets liegen einmal unter docs/assets und werden in die drei Zensical-Ausgaben kopiert.