Projet

Général

Profil

Bug #69048

Vu : un form_parent qui pointe vers la demande elle-même au lieu de sa parente

Ajouté par Thomas Noël il y a plus d'un an. Mis à jour il y a plus d'un an.

Statut:
Fermé
Priorité:
Normal
Assigné à:
Version cible:
-
Début:
13 septembre 2022
Echéance:
% réalisé:

0%

Temps estimé:
Patch proposed:
Oui
Planning:
Non

Description

Situation vue chez un client, il faudrait enquêter pour voir comment c'est possible (ou si c'est une erreur d'usage)


Fichiers

Révisions associées

Révision e9a03ffa (diff)
Ajouté par Benjamin Dauvergne il y a plus d'un an

workflow: do not overwrite parent submission_context (#69048)

Révision 9cc3722c (diff)
Ajouté par Benjamin Dauvergne il y a plus d'un an

workflow: do not overwrite parent submission_context (#69048)

Historique

#2

Mis à jour par Thomas Noël il y a plus d'un an

Ce n'est pas une erreur d'affichage, la donnée est bien "moi même" dans le submission_context :

print(formdata.id)
3145

print(formdata.submission_context)
{
  'orig_object_type': 'formdef',
  'orig_formdef_id': '60',
  'orig_formdata_id': '3145'
}

A noter, date de création : 18 mai 2022.

#3

Mis à jour par Thomas Noël il y a plus d'un an

  • Tracker changé de Bug à Development

Je n'arrive pas à percevoir comment ça pourrait être possible dans wcs/wf/create_formdata.py ... je veux bien un regard neuf.

#4

Mis à jour par Benjamin Dauvergne il y a plus d'un an

J'ai compris, ici il manque un .copy() :

new_formdata.submission_context = formdata.submission_context or {}

quand on modifie le fils, on modifie le contexte du parent.

#5

Mis à jour par Benjamin Dauvergne il y a plus d'un an

  • Assigné à mis à Benjamin Dauvergne
#6

Mis à jour par Benjamin Dauvergne il y a plus d'un an

J'ai séparé le test du fix pour facilement vérifier que ça corrige le problème.

PS: en fait j'aurai pu modifier le premier test create_formdata pour voir le problème aussi.

#7

Mis à jour par Benjamin Dauvergne il y a plus d'un an

  • Tracker changé de Development à Bug
#8

Mis à jour par Thomas Noël il y a plus d'un an

Effectivement bogue, mais comment expliquer que c'est la demande fille qui se retrouve avec son propre id en tant que parent ? On s'attendait plutôt à ce que la demande parente comporte un submission_context erroné, mais pas la demande fille. Non ?

#10

Mis à jour par Benjamin Dauvergne il y a plus d'un an

Thomas Noël a écrit :

Effectivement bogue, mais comment expliquer que c'est la demande fille qui se retrouve avec son propre id en tant que parent ? On s'attendait plutôt à ce que la demande parente comporte un submission_context erroné, mais pas la demande fille. Non ?

Ça n'arrive que dans les demandes filles qui refont un create_formdata, les demandes initiales n'ont généralement pas un submission_context initialisé, ça explique pourquoi on ne l'a pas vu avant.

#11

Mis à jour par Thomas Noël il y a plus d'un an

  • Statut changé de Solution proposée à Solution validée

Benjamin Dauvergne a écrit :

Ça n'arrive que dans les demandes filles qui refont un create_formdata

Bien vuuu ! Ack !

#13

Mis à jour par Thomas Noël il y a plus d'un an

  • Statut changé de Solution validée à Résolu (à déployer)
commit e9a03ffacfa011afc3a2d6688085062ee6a7d64c
Author: Benjamin Dauvergne <bdauvergne@entrouvert.com>
Date:   Tue Sep 13 20:39:14 2022 +0200

    workflow: do not overwrite parent submission_context (#69048)

#14

Mis à jour par Thomas Noël il y a plus d'un an

+ hotfix en place.

#15

Mis à jour par Transition automatique il y a plus d'un an

  • Statut changé de Résolu (à déployer) à Solution déployée
#16

Mis à jour par Transition automatique il y a plus d'un an

Automatic expiration

Formats disponibles : Atom PDF