Page Notes (capture GTD) et lancement desktop en fenêtre-app - #28
Merged
Conversation
…e-app Fait de Kairos le point d'entrée unique de la méthode GTD : une nouvelle page /kairos/notes (entre Accueil et Jour dans la navigation) capture des idées en texte libre, sans friction, avant toute décision de priorité ou d'échéance. Chaque note se convertit en un clic en tâche titre-seul, qui atterrit dans la boîte de réception « À traiter » de la vue Jour ; la note d'origine est archivée et liée (jamais supprimée), consultable dans une section repliée avec un lien vers la tâche créée. Capture, édition inline et actions se font en AJAX sans rechargement de page (repli complet en 303 sans JS, même contrat que la vue Jour). En parallèle, l'exécutable de bureau (Windows/Linux) s'ouvre désormais en fenêtre d'application (Chromium --app=URL, profil dédié) plutôt qu'un onglet de navigateur classique, avec repli automatique et silencieux sur l'ancien comportement si aucun navigateur de la famille Chromium n'est installé — aucun réglage, aucune option à activer. L'icône Kairos est répercutée sur cette fenêtre via un manifest web app + des PNG générés depuis packaging/make_icon.py, embarqués par les trois cibles de packaging sans changement de configuration. Implémenté en 3 volets parallélisés (agents sonnet/haiku, fichiers disjoints) puis intégré : page Notes, lancement fenêtre-app, assets icône. Documentation tracée dans docs/spec/ (nouveau notes-capture.md, mise à jour de accueil-navigation.md/modele-donnees.md/packaging-lancement.md/ vue-jour-gtd.md) conformément au workflow spec-first du dépôt. Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_012rz3jgonqVHP4fzQsJh8oP
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.
Summary
Fait de Kairos le point d'entrée unique de la méthode GTD, en deux volets liés par une même vision, plus un troisième volet support :
1. Page Notes — capture GTD (
/kairos/notes)Note(app/tasks_models.py), créé automatiquement en base au démarrage (pas de migration nécessaire, nouvelle table).2. Lancement desktop en fenêtre-app
--app=URL, profil dédié isolé du profil personnel) plutôt qu'un onglet de navigateur classique — le ressenti d'une vraie application de bureau.app/desktop_browser.py(logique pure, testable indépendamment d'uvicorn/threading/verrou de fichier).KAIROS_BROWSERdisponible pour forcer un binaire précis (tests/CI, utilisateur avancé).3. Icône répercutée sur la fenêtre-app
packaging/make_icon.pyétendu pour générerstatic/icon-192.png,static/icon-512.png,static/apple-touch-icon.pngdepuis le même dessin que l'icône.icoexistante.static/manifest.webmanifest(PWA standard,display: standalone).templates/base.htmlréférence ces assets — embarqués automatiquement par les trois cibles de packaging (dev, PyInstaller desktop, APK Android) sans changement de configuration,static/étant copié à l'identique partout.Documentation tracée dans
docs/spec/conformément au workflow spec-first du dépôt : nouveaudocs/spec/notes-capture.md(besoin métier + solution technique), mise à jour deaccueil-navigation.md(6ᵉ entrée nav),modele-donnees.md(entitéNote),packaging-lancement.md(mode app + repli + assets icône),vue-jour-gtd.md(référence croisée).Méthode : implémenté en 3 volets parallélisés (agents sonnet/haiku sur des fichiers disjoints, worktrees isolés) puis intégré, relu et complété (le panneau d'édition inline des notes manquait à l'intégration — ajouté avec sa couverture de tests avant ce commit).
Test plan
pytest(suite complète, 434 tests) — vert/kairos/notes, présente et inactive ailleursmanifest.webmanifestJSON valide--app=) et repli — nécessite un poste desktop Windows/Linux avec/sans navigateur Chromium installé, non exécutable dans le sandbox de développement (la détection/le repli sont couverts par les tests unitaires avecsys.platform/shutil.whichsimulés)🤖 Generated with Claude Code
Generated by Claude Code