Fix: Correctly parse generated_sections in knowledge card API
Created by: Edouard-Legoupil
The update_knowledge_card_section endpoint was failing to correctly parse the generated_sections field from the database. The code was using a direct json.loads() call, which would raise an error if the database driver had already deserialized the JSONB column into a Python dictionary.
This change replaces the direct call with a more robust parsing logic that checks the type of the generated_sections field first. It now handles both string and dictionary types, preventing potential errors when editing and saving a knowledge card section. This robust logic is consistent with other endpoints in the API that handle the same data.
- Does my code meet the quality standards for releasing packages?
- Does the reviewer have all the information to validate the features/issues without too much research?
- Does the customer who will validate the associated tickets have the information to do so without wasting time?
Issues to validate to close :
-
issue #
Processed issues to keep open or in progress:
-
issue #
Checklist:
-
Does the package check go local? -
Does the CI pass? -
Are the added / fixed features documented, tested? -
Are the added features / solved problems briefly presented in the PR message? -
Are the changes related to tickets / issues that I have listed in the commits and in the PR itself? -
Are the tickets in "review" mode in the Project Tracking Board? -
Does each ticket, if it is to be closed after acceptance of the PR, contain a comment that tells how to validate it?