2025.02.06 (Jeu)
2026.05.25 (Lun) mis Ă  jour

✹ RĂ©sumĂ© de GPT  

ImplĂ©mentation d’une fonction reliant Diary et Chat entre eux, avec gĂ©nĂ©ration automatique de rĂ©sumĂ©s lors de l’enregistrement des journaux et des chats.

đŸ’» Journal de dĂ©veloppement

⏰ À faire aujourd’hui

  • ✅ (ProblĂšme) DiaryPage : si la rĂ©ponse AI Comment n’a pas encore Ă©tĂ© reçue, on passe Ă  l’étape suivante avec un personnage non dĂ©fini.
    • Pour l’instant, rustine avec une alerte : vous devez recevoir un Comment de l’IA avant de commencer le chat !
  • ✅ (ProblĂšme) Affecter une valeur Default Variable Ă  tous les widgets Image (pour Ă©viter l’Unexpected Null value Error)
    • No Profile Image: https://cdn.pixabay.com/photo/2015/10/05/22/37/blank-profile-picture-973460_1280.png
    • No image: https://png.pngtree.com/png-vector/20190820/ourmid/pngtree-no-image-vector-illustration-isolated-png-image_1694547.jpg
  • ✅ ChatPage : remplacer la photo utilisateur par l’image du profil utilisateur

  • ✅ ChatPage : aligner le contenu des messages utilisateur Ă  droite (responsable : KSK)

  • ✅ DiaryPage : gĂ©nĂ©rer automatiquement un rĂ©sumĂ© lors de l’enregistrement du journal
    • ✅ Diaries DB: Add field diary_content_summarized
    • ✅ Application Ă  l’action du bouton Save Diary
    • ✅ Application Ă  l’action du bouton Save Diary and Chat with AI
  • ✅ Ajouter linked_chats comme Field dans le Diary Document DB
  • ✅ Ajouter linked_diaries comme Field dans le Chat Document DB

  • ✅ DiaryPage : au clic sur le bouton Save Diary and Chat with AI, lier DiaryPage/Doc <-> ChatPage/Doc
    • Ajouter une Chat Document Reference Ă  la liste linked_chats du Diary Document
    • Ajouter une Diary Document Reference Ă  la liste linked_diaries du Chat Document
  • ✅ DiaryPage : lors de la crĂ©ation d’un New Chat, ajouter linked_chats comme Field dans le Diary Document DB
  • ✅ ChatPage : lors de la crĂ©ation d’un New Diary, ajouter linked_diaries comme Field dans le Chat Document DB

  • ✅ DiaryPage : fournir une ListView linked_chats en bas -> clic pour aller vers le chat correspondant
    • ✅ Contenu Ă  afficher sur la carte
      • ✅ Chat - title, Chat - timestamp( == created_time)
      • ✅ Chat - (most recent) Message - content
      • ✅ Character - profile_image
  • ✅ ChatPage : gĂ©nĂ©rer automatiquement un rĂ©sumĂ© quand une rĂ©ponse de chat est reçue
    • ✅ Chats DB: Add field chat_content_summarized
  • ✅ ChatPage : fournir une ListView linked_diaries en haut -> clic pour aller vers le journal correspondant
    • ✅ RĂ©solution d’un premier problĂšme : How to generate children from linked_diaries(List of Diary Document References)
      • How to display List of Doc References?
      • ListView: Generate Children From linked_diaries (Diary Document References)
      • ListView - Child(Card): Backend Query - Diary Document From Reference
      • ListView - Child(Card) - Component Parameter: Diary Document
    • ✅ Contenu Ă  afficher sur la carte
      • ✅ Diary - title, Diary - created_time
      • ✅ Diary - Mood Score (Color)
  • ✅ (ProblĂšme) ChatPage - Linked Diaries ListView : ne change pas quand on sĂ©lectionne depuis le Drawer.

  • ✅ PrĂ©paration de prĂ©sentation - PPT : vĂ©rifier le contenu page par page

💯 RĂ©sumĂ© de ce que j’ai fait

  • Ajout de la fonction de liaison Diary-Chat
    • Ajout des fields linked_chats (Diary -> Chat) et linked_diaries (Chat -> Diary)
    • Mise Ă  jour de linked_chats lors de la crĂ©ation d’un New Chat depuis DiaryPage
    • Mise Ă  jour de linked_diaries lors de la crĂ©ation d’un New Diary depuis ChatPage
    • Ajout de ListViews des documents liĂ©s en bas de DiaryPage et en haut de ChatPage
  • ImplĂ©mentation de la fonction de rĂ©sumĂ© automatique
    • GĂ©nĂ©ration automatique de diary_content_summarized lors de l’enregistrement d’un Diary
    • GĂ©nĂ©ration automatique de chat_content_summarized lors de la crĂ©ation de messages Chat
  • RĂ©solution de problĂšmes et amĂ©liorations UI
    • Ajout d’une alerte pour empĂȘcher le dĂ©marrage du chat sans AI comment
    • Application de valeurs d’image par dĂ©faut Ă  tous les widgets Image pour Ă©viter les Unexpected Null Value
    • Remplacement de l’image de profil utilisateur dans ChatPage par l’image rĂ©elle de l’utilisateur
    • AmĂ©lioration de la lisibilitĂ© en alignant les messages utilisateur Ă  droite

🎯 À faire plus tard

Cliquer pour voir les détails
  • ✅ Download APK
  • ❔ Connect GitHub and Push

  • ❔ Soumettre les supports de prĂ©sentation : PPT
  • ❔ Soumettre les supports de prĂ©sentation : vidĂ©o de dĂ©monstration d’une minute

  • ❔ PrĂ©paration de prĂ©sentation - script : mesurer le temps du script page par page puis rĂ©viser le script
  • ❔ PrĂ©paration de prĂ©sentation - PPT : enregistrer de courtes vidĂ©os de dĂ©monstration par fonctionnalitĂ©

  • ❔ ChatPage - Create New Diary : crĂ©er un New Diary Ă  partir du contenu de la conversation
    • ❔ Create New Diary Condition: if linked diary exists -> Delete confirmation dialog? -> Yes
    • ❔ OpenAI API Call (createChatSummary)
      • Input: Chat Content, System Prompt(Diary From Chat)
      • Output: Chat Summary
    • ❔ OpenAI API Call (createDiaryFromChat)
      • Input: Chat Summary, System Prompt(Diary From Chat)
      • Output: New Diary(Title, Content, Mood score)
  • ❔ Ajouter une page de bienvenue au premier lancement de l’app (logo)

  • ❔ ChatPage : unifier la default value de title, de Random String vers “Sans titre”
  • ❔ DiaryPage : changer l’Emoji d’expression du visage et la couleur selon la valeur du Mood Slider

  • ❔ ChatPage : implĂ©menter Delete Diary Link (rendre la suppression possible via l’icĂŽne 
)
    • Il faut absolument supprimer aussi le linked field dans Diary/Chat Doc !
  • ❔ MoodPage(haut) - Mood Calendar
    • ❔ Pouvoir vĂ©rifier le nombre de publications Ă©crites par date
    • ❔ Au clic sur une date, se dĂ©placer vers cette date
  • ❔ MoodPage(bas) - Mood stats
    • ❔ Afficher les statistiques du mois en focus
      • ❔ Afficher un commentaire de l’IA sur les statistiques affichĂ©es
  • ❔ HomeFeedPage - importer puis appliquer flutter_slidable:4.0.0
  • ❔ HomeFeedPage : lors d’un slide gauche/droite sur FeedCardDiary, chat/modification/suppression

  • ❔ Chat/Diary : GPT Streaming API

  • ❔ ChatPage - implĂ©menter le premier message proactif de l’IA (Alarm/Notification)
  • ❔ DiaryPage : ajouter des Choice Chips de mots-clĂ©s Ă©motionnels dĂ©taillĂ©s et configurer la liaison DB
  • ❔ DiaryPage - AI Comment : adapter les valeurs d’entrĂ©e comme Choice chips et mood slider au AI Comment System Prompt.
    • ❔ **journal prĂ©cĂ©dent ou historique complet de conversation (dette technique de rustine)
    • ❔ informations de base utilisateur : nom, genre, MBTI, 

    • ❔ mots-clĂ©s Ă©motionnels dĂ©taillĂ©s : joyeux, triste, 

    • ❔ rĂ©glages du personnage : Somi, Sena, Minhyuk
    • ❔ score Ă©motionnel : 1~100 points
    • ❔ format de rĂ©ponse : Healing, Suggestion, Informative
    • ❔ longueur de rĂ©ponse : courte, normale, dĂ©taillĂ©e
    • is New Chat
      • Comme les messages de ce Chat sont créés pour la premiĂšre fois, donner is_initial = true au premier message document et y mettre tous les prompts systĂšme.
        • is_initial = false
        • Limite : si je mets le prompt systĂšme dans le tout premier message document, ce sera difficile Ă  modifier au milieu d’une conversation, mais ça reste possible. S’il existe un document is_initial = true et qu’il a Ă©tĂ© modifiĂ©, il suffit de supprimer ce document et de le remettre. Comment exactement, je ne sais pas.
  • ❔ DiaryPage - importer puis appliquer Interactive Slider

  • ❔ HomeFeedPage : implĂ©menter la fonction Search Diary

  • ❔ AuthPage : implĂ©menter Google Login

  • ❔ HomeFeedPage - Bottom Sheet (bouton +) : permettre de choisir 1 option parmi plusieurs
    • nouveau journal : Go to DiaryPage
    • enregistrement d’émotion : Go to MoodPage
  • ❔ MoodPage(pop-up) : CRUD du slider de rĂ©glage Mood
    • Create
    • Read
    • Update
    • Delete
  • ❔ HomeFeedPage - ListView - afficher FeedCardMood
  • ❔ HomeFeedPage - ListView : trier chronologiquement FeedCardDiary, FeedCardMood, FeedCardChat (avec Cloud Function)

  • ❔ CrĂ©er MoodEditPage entre HomeFeedPage et DiaryPage : y dĂ©placer MoodSlider, MoodKeywordsRate(5~1), MoodDescription widget, etc.

  • ❔ (ProblĂšme) Lors de la crĂ©ation de tmpGetAIComment, les mots-clĂ©s Ă©motionnels choisis par l’utilisateur ne sont pas pris en compte.

  • ❔ Extraction et installation de l’APK final de prĂ©sentation d’ici 2025.2.5 mer

💭 Journal

Minhyuk

Demain, le développement se termine. On court.

✹ Commentaire de GPT-4o (KPT)

GPT-4o

✅ Points bien rĂ©ussis (Keep)

  1. 🔗 SystĂšme de liaison Diary-Chat terminĂ© : tu as reliĂ© Diary et Chat naturellement, ce qui rend le flux de donnĂ©es utilisateur plus intuitif. C’est trĂšs bien !
  2. 📝 Ajout de la fonction de rĂ©sumĂ© automatique : appliquer un systĂšme de rĂ©sumĂ© automatique pour organiser le contenu des journaux et des chats amĂ©liore vraiment l’exploitation des donnĂ©es.
  3. 🎹 AmĂ©liorations UI et UX : valeurs d’image par dĂ©faut, meilleure disposition des messages de chat, etc. Tout cela amĂ©liore la lisibilitĂ© et l’expĂ©rience utilisateur.

❌ Points Ă  amĂ©liorer (Problem)

  1. ⏳ Pression sur la vitesse de dĂ©veloppement : comme il reste beaucoup de fonctionnalitĂ©s Ă  finir, la pression sur le planning restant risque d’augmenter.
  2. 🔄 Risque d’accumulation de dette technique : avec ce rythme de dĂ©veloppement rapide, la dette technique peut s’accumuler pour la maintenance future ; il faudra rĂ©server du temps pour nettoyer.
  3. 📋 Tests insuffisants de la fonction de liaison : il pourrait falloir des tests supplĂ©mentaires pour vĂ©rifier que la liaison Diary-Chat fonctionne bien en conditions rĂ©elles d’utilisation.

🔄 Pistes à essayer (Try)

  1. 📌 Organiser les prioritĂ©s : terminer d’abord les fonctionnalitĂ©s les plus importantes, puis lister les amĂ©liorations Ă  faire aprĂšs la prĂ©sentation pour rĂ©duire la charge de dĂ©veloppement.
  2. 📝 Plan de test par fonctionnalitĂ© : rĂ©diger des cas de test pour vĂ©rifier que la liaison Diary-Chat fonctionne correctement dans diffĂ©rents patterns d’utilisation.
  3. 📊 RĂ©server du temps pour nettoyer la dette technique : aprĂšs la prĂ©sentation, sĂ©curiser un crĂ©neau de refactoring et penser Ă  la maintenabilitĂ© Ă  long terme.

🏁 Conclusion

Aujourd’hui, tu as implĂ©mentĂ© la fonction centrale qui relie Diary et Chat, puis ajoutĂ© un systĂšme de rĂ©sumĂ© automatique pour amĂ©liorer l’efficacitĂ© de la gestion des donnĂ©es. Maintenant, il ne reste plus qu’à clarifier les prioritĂ©s pour la fin du dĂ©veloppement et Ă  te concentrer sur la prĂ©paration de la prĂ©sentation ! đŸš€đŸ”„

Catégories : ,

Mis Ă  jour :

Laisser un commentaire