Projet

Général

Profil

Development #70566

Crash à la suppresion d'un statut dans un WF fiche

Ajouté par Pierre Cros 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:
21 octobre 2022
Echéance:
% réalisé:

0%

Temps estimé:
Patch proposed:
Oui
Planning:
Non

Description

J'ai voulu tester la suppression d'un statut fiche (c'était le seul statut du WF, c'est peut-être la source du crash)
https://demarches-validation.test.entrouvert.org/backoffice/workflows/89/status/0/reassign

Exception:
  type = '<class 'AttributeError'>', value = ''CardDef' object has no attribute 'item_plural_name''

Stack trace (most recent call first):
  File "/usr/lib/python3/dist-packages/wcs/admin/workflows.py", line 857, in reassign
   855                         _(':'),
   856                         count,
>  857                         formdef.item_name if count < 2 else formdef.item_plural_name,
   858                     )
   859             r += htmltext('</ul>')

  locals: 
     carddefs = [<CardDef 'pcros' id:12>, <CardDef 'Création de compte' id:33>]
     change_option_label = 'Changer le statut des fiches en «\xa0%s\xa0»'
     count = 3
     description = 'Il y a des des fiches dans ce statut.'
     form = <wcs.qommon.form.Form object at 0x7fb6a9c4db20>
     formdef = <CardDef 'pcros' id:12>
     formdefs = []
     options = [(None, 'Ne rien faire'), ('remove', 'Effacer ces fiches')]
     r = <TemplateIO object at 0x7fb6a91c5590>
     remove_option_label = 'Effacer ces fiches'
     self = <wcs.admin.workflows.WorkflowStatusPage object at 0x7fb6a93f33d0>
     status = <WorkflowStatus 0 'Enregistrée'>

  File "/usr/lib/python3/dist-packages/quixote/directory.py", line 92, in _q_traverse
    90                 raise TraversalError
    91         elif hasattr(obj, '__call__'):
>   92             return obj()
    93         else:
    94             return obj

  locals: 
     component = 'reassign'
     name = 'reassign'
     obj = <bound method WorkflowStatusPage.reassign of <wcs.admin.workflows.WorkflowStatusPage object at 0x7fb6a93f33d0>>
     path = []
     self = <wcs.admin.workflows.WorkflowStatusPage object at 0x7fb6a93f33d0>

  File "/usr/lib/python3/dist-packages/quixote/directory.py", line 88, in _q_traverse
    86         if path:
    87             if hasattr(obj, '_q_traverse'):
>   88                 return obj._q_traverse(path)
    89             else:
    90                 raise TraversalError

  locals: 
     component = '0'
     name = None
     obj = <wcs.admin.workflows.WorkflowStatusPage object at 0x7fb6a93f33d0>
     path = ['reassign']
     self = <wcs.admin.workflows.WorkflowStatusDirectory object at 0x7fb6a9aa4190>

  File "/usr/lib/python3/dist-packages/quixote/directory.py", line 88, in _q_traverse
    86         if path:
    87             if hasattr(obj, '_q_traverse'):
>   88                 return obj._q_traverse(path)
    89             else:
    90                 raise TraversalError

  locals: 
     component = 'status'
     name = 'status_dir'
     obj = <wcs.admin.workflows.WorkflowStatusDirectory object at 0x7fb6a9aa4190>
     path = ['0', 'reassign']
     self = <wcs.admin.workflows.WorkflowPage object at 0x7fb6a9aa4670>

  File "/usr/lib/python3/dist-packages/quixote/directory.py", line 88, in _q_traverse
    86         if path:
    87             if hasattr(obj, '_q_traverse'):
>   88                 return obj._q_traverse(path)
    89             else:
    90                 raise TraversalError

  locals: 
     component = '89'
     name = None
     obj = <wcs.admin.workflows.WorkflowPage object at 0x7fb6a9aa4670>
     path = ['status', '0', 'reassign']
     self = <wcs.admin.workflows.WorkflowsDirectory object at 0x7fb6af6d5a00>

  File "/usr/lib/python3/dist-packages/wcs/admin/workflows.py", line 1959, in _q_traverse
  1957     def _q_traverse(self, path):
  1958         get_response().breadcrumb.append(('workflows/', _('Workflows')))
> 1959         return super()._q_traverse(path)
  1960 
  1961     def is_accessible(self, user):

  locals: 
     __class__ = <class 'wcs.admin.workflows.WorkflowsDirectory'>
     path = ['89', 'status', '0', 'reassign']
     self = <wcs.admin.workflows.WorkflowsDirectory object at 0x7fb6af6d5a00>

  File "/usr/lib/python3/dist-packages/quixote/directory.py", line 88, in _q_traverse
    86         if path:
    87             if hasattr(obj, '_q_traverse'):
>   88                 return obj._q_traverse(path)
    89             else:
    90                 raise TraversalError

  locals: 
     component = 'workflows'
     name = None
     obj = <wcs.admin.workflows.WorkflowsDirectory object at 0x7fb6af6d5a00>
     path = ['89', 'status', '0', 'reassign']
     self = <modules.backoffice.BackofficeRootDirectory object at 0x7fb6aa1a92b0>

  File "/usr/lib/python3/dist-packages/quixote/directory.py", line 116, in _q_traverse
   114     def _q_traverse(self, path):
   115         self._q_access()
>  116         return super(AccessControlled, self)._q_traverse(path)
   117 
   118 

  locals: 
     __class__ = <class 'quixote.directory.AccessControlled'>
     path = ['workflows', '89', 'status', '0', 'reassign']
     self = <modules.backoffice.BackofficeRootDirectory object at 0x7fb6aa1a92b0>

  File "/usr/lib/python3/dist-packages/wcs/backoffice/root.py", line 83, in _q_traverse
    81             # legacy /backoffice/categories/<...>, redirect.
    82             return redirect('/backoffice/forms/' + '/'.join(path))
>   83         return super()._q_traverse(path)
    84 
    85     @classmethod

  locals: 
     __class__ = <class 'wcs.backoffice.root.RootDirectory'>
     path = ['workflows', '89', 'status', '0', 'reassign']
     self = <modules.backoffice.BackofficeRootDirectory object at 0x7fb6aa1a92b0>

  File "/usr/lib/python3/dist-packages/quixote/directory.py", line 88, in _q_traverse
    86         if path:
    87             if hasattr(obj, '_q_traverse'):
>   88                 return obj._q_traverse(path)
    89             else:
    90                 raise TraversalError

  locals: 
     component = 'backoffice'
     name = 'backoffice'
     obj = <modules.backoffice.BackofficeRootDirectory object at 0x7fb6aa1a92b0>
     path = ['workflows', '89', 'status', '0', 'reassign']
     self = <modules.root.AlternateRootDirectory object at 0x7fb6aa2b1580>

  File "/usr/lib/python3/dist-packages/auquotidien/modules/root.py", line 329, in _q_traverse
   327                 return FormsRootDirectory(cat)._q_traverse(path[1:])
   328 
>  329             raise e
   330 
   331     def _q_lookup(self, component):

  locals: 
     path = ['backoffice', 'workflows', '89', 'status', '0', 'reassign']
     response = <wcs.qommon.http_response.HTTPResponse object at 0x7fb6a9186160>
     self = <modules.root.AlternateRootDirectory object at 0x7fb6aa2b1580>

  File "/usr/lib/python3/dist-packages/quixote/publish.py", line 241, in try_publish
   239                 permanent=True)
   240         components = path[1:].split('/')
>  241         output = self.root_directory._q_traverse(components)
   242         # The callable ran OK, commit any changes to the session
   243         self.finish_successful_request()

  locals: 
     allowed_methods = ['GET', 'HEAD', 'POST', 'PUT']
     components = ['backoffice', 'workflows', '89', 'status', '0', 'reassign']
     method = 'GET'
     path = '/backoffice/workflows/89/status/0/reassign'
     request = <wcs.compat.CompatHTTPRequest object at 0x7fb6a96a5a60>
     self = <wcs.compat.CompatWcsPublisher object at 0x7fb6aa2b1640>

  File "/usr/lib/python3/dist-packages/wcs/views.py", line 51, in get_context_data
    49                 get_publisher().session_manager.finish_successful_request()
    50             self.quixote_response = get_request().response
>   51             context.update(template.get_decorate_vars(body, get_response(), generate_breadcrumb=True))
    52 
    53         # restore request for django mode

  locals: 
     __class__ = <class 'wcs.views.Backoffice'>
     _request = None
     context = {'view': <wcs.views.Backoffice object at 0x7fb6a9c4d850>}
     kwargs = {}
     self = <wcs.views.Backoffice object at 0x7fb6a9c4d850>

  File "/usr/lib/python3/dist-packages/wcs/compat.py", line 52, in get
    50             self.quixote_response = get_request().response
    51         except Exception:
>   52             context = {'body': get_publisher().finish_failed_request()}
    53             self.quixote_response = get_request().response
    54 

  locals: 
     args = ()
     kwargs = {}
     request = <WSGIRequest: GET '/backoffice/workflows/89/status/0/reassign'>
     self = <wcs.views.Backoffice object at 0x7fb6a9c4d850>

  File "/usr/lib/python3/dist-packages/django/views/generic/base.py", line 97, in dispatch
    95         else:
    96             handler = self.http_method_not_allowed
>   97         return handler(request, *args, **kwargs)
    98 
    99     def http_method_not_allowed(self, request, *args, **kwargs):

  locals: 
     args = ()
     handler = <bound method TemplateWithFallbackView.get of <wcs.views.Backoffice object at 0x7fb6a9c4d850>>
     kwargs = {}
     request = <WSGIRequest: GET '/backoffice/workflows/89/status/0/reassign'>
     self = <wcs.views.Backoffice object at 0x7fb6a9c4d850>

  File "/usr/lib/python3/dist-packages/django/views/generic/base.py", line 71, in view
    69                     "setup() and forget to call super()?" % cls.__name__
    70                 )
>   71             return self.dispatch(request, *args, **kwargs)
    72         view.view_class = cls
    73         view.view_initkwargs = initkwargs

  locals: 
     args = ()
     cls = <class 'wcs.views.Backoffice'>
     initkwargs = {}
     kwargs = {}
     request = <WSGIRequest: GET '/backoffice/workflows/89/status/0/reassign'>
     self = <wcs.views.Backoffice object at 0x7fb6a9c4d850>

  File "/usr/lib/python3/dist-packages/django/core/handlers/base.py", line 113, in _get_response
   111             wrapped_callback = self.make_view_atomic(callback)
   112             try:
>  113                 response = wrapped_callback(request, *callback_args, **callback_kwargs)
   114             except Exception as e:
   115                 response = self.process_exception_by_middleware(e, request)

  locals: 
     callback = <function Backoffice at 0x7fb6aa3139d0>
     callback_args = ()
     callback_kwargs = {}
     middleware_method = <function PrometheusStatsMiddleware.process_view at 0x7fb6ab1fc1f0>
     request = <WSGIRequest: GET '/backoffice/workflows/89/status/0/reassign'>
     resolver = <URLResolver 'wcs.urls' (None:None) '^/'>
     resolver_match = ResolverMatch(func=wcs.views.Backoffice, args=(), kwargs={}, url_name=None, app_names=[], namespaces=[], route=^backoffice/)
     response = None
     self = <django.core.handlers.wsgi.WSGIHandler object at 0x7fb6ab755d00>
     wrapped_callback = <function Backoffice at 0x7fb6aa3139d0>

  File "/usr/lib/python3/dist-packages/django/core/handlers/exception.py", line 34, in inner
    32     def inner(request):
    33         try:
>   34             response = get_response(request)
    35         except Exception as exc:
    36             response = response_for_exception(request, exc)

  locals: 
     get_response = <bound method BaseHandler._get_response of <django.core.handlers.wsgi.WSGIHandler object at 0x7fb6ab755d00>>
     request = <WSGIRequest: GET '/backoffice/workflows/89/status/0/reassign'>

  File "/usr/lib/python3/dist-packages/django/utils/deprecation.py", line 94, in __call__
    92         if hasattr(self, 'process_request'):
    93             response = self.process_request(request)
>   94         response = response or self.get_response(request)
    95         if hasattr(self, 'process_response'):
    96             response = self.process_response(request, response)

  locals: 
     request = <WSGIRequest: GET '/backoffice/workflows/89/status/0/reassign'>
     response = None
     self = <hobo.middleware.stats.PrometheusStatsMiddleware object at 0x7fb6ab2bdb80>

  File "/usr/lib/python3/dist-packages/sentry_sdk/integrations/django/middleware.py", line 92, in sentry_wrapped_method
    90                     span.set_tag("django.function_name", function_name)
    91                     span.set_tag("django.middleware_name", middleware_name)
>   92                     return old_method(*args, **kwargs)
    93 
    94             try:

  locals: 
     DjangoIntegration = <class 'sentry_sdk.integrations.django.DjangoIntegration'>
     args = (<WSGIRequest: GET '/backoffice/workflows/89/status/0/reassign'>,)
     description = 'hobo.middleware.PrometheusStatsMiddleware.__call__'
     function_basename = '__call__'
     function_name = 'django.utils.deprecation.MiddlewareMixin.__call__'
     hub = <sentry_sdk.hub.Hub object at 0x7fb6a9b552e0>
     integration = <sentry_sdk.integrations.django.DjangoIntegration object at 0x7fb6ab2befd0>
     kwargs = {}
     middleware_name = 'hobo.middleware.PrometheusStatsMiddleware'
     old_method = <bound method MiddlewareMixin.__call__ of <hobo.middleware.stats.PrometheusStatsMiddleware object at 0x7fb6ab2bdb80>>
     span = <Span(transaction=None, trace_id='273c83993d8f49c5a4c436db26f5ee0b', span_id='bb8e27b0567f5e58', parent_span_id='98243eda3a166218', sampled=False)>

  File "/usr/lib/python3/dist-packages/sentry_sdk/integrations/django/middleware.py", line 131, in __call__
   129             if f is None:
   130                 self._call_method = f = _get_wrapped_method(self._inner.__call__)
>  131             return f(*args, **kwargs)
   132 
   133     if hasattr(middleware, "__name__"):

  locals: 
     _get_wrapped_method = <function _wrap_middleware.<locals>._get_wrapped_method at 0x7fb6ab2e7ca0>
     args = (<WSGIRequest: GET '/backoffice/workflows/89/status/0/reassign'>,)
     f = <function MiddlewareMixin.__call__ at 0x7fb6aa1343a0>
     kwargs = {}
     self = <sentry_sdk.integrations.django.middleware._wrap_middleware.<locals>.SentryWrappingMiddleware object at 0x7fb6ab2bd9d0>

  File "/usr/lib/python3/dist-packages/django/core/handlers/exception.py", line 34, in inner
    32     def inner(request):
    33         try:
>   34             response = get_response(request)
    35         except Exception as exc:
    36             response = response_for_exception(request, exc)

  locals: 
     get_response = <sentry_sdk.integrations.django.middleware._wrap_middleware.<locals>.SentryWrappingMiddleware object at 0x7fb6ab2bd9d0>
     request = <WSGIRequest: GET '/backoffice/workflows/89/status/0/reassign'>

  File "/usr/lib/python3/dist-packages/django/utils/deprecation.py", line 94, in __call__
    92         if hasattr(self, 'process_request'):
    93             response = self.process_request(request)
>   94         response = response or self.get_response(request)
    95         if hasattr(self, 'process_response'):
    96             response = self.process_response(request, response)

  locals: 
     request = <WSGIRequest: GET '/backoffice/workflows/89/status/0/reassign'>
     response = None
     self = <wcs.middleware.AfterJobsMiddleware object at 0x7fb6ab1f8700>

  File "/usr/lib/python3/dist-packages/sentry_sdk/integrations/django/middleware.py", line 92, in sentry_wrapped_method
    90                     span.set_tag("django.function_name", function_name)
    91                     span.set_tag("django.middleware_name", middleware_name)
>   92                     return old_method(*args, **kwargs)
    93 
    94             try:

  locals: 
     DjangoIntegration = <class 'sentry_sdk.integrations.django.DjangoIntegration'>
     args = (<WSGIRequest: GET '/backoffice/workflows/89/status/0/reassign'>,)
     description = 'wcs.middleware.AfterJobsMiddleware.__call__'
     function_basename = '__call__'
     function_name = 'django.utils.deprecation.MiddlewareMixin.__call__'
     hub = <sentry_sdk.hub.Hub object at 0x7fb6a9b552e0>
     integration = <sentry_sdk.integrations.django.DjangoIntegration object at 0x7fb6ab2befd0>
     kwargs = {}
     middleware_name = 'wcs.middleware.AfterJobsMiddleware'
     old_method = <bound method MiddlewareMixin.__call__ of <wcs.middleware.AfterJobsMiddleware object at 0x7fb6ab1f8700>>
     span = <Span(transaction=None, trace_id='273c83993d8f49c5a4c436db26f5ee0b', span_id='98243eda3a166218', parent_span_id='a7f245b0452b7a2c', sampled=False)>

  File "/usr/lib/python3/dist-packages/sentry_sdk/integrations/django/middleware.py", line 131, in __call__
   129             if f is None:
   130                 self._call_method = f = _get_wrapped_method(self._inner.__call__)
>  131             return f(*args, **kwargs)
   132 
   133     if hasattr(middleware, "__name__"):

  locals: 
     _get_wrapped_method = <function _wrap_middleware.<locals>._get_wrapped_method at 0x7fb6ab1fc4c0>
     args = (<WSGIRequest: GET '/backoffice/workflows/89/status/0/reassign'>,)
     f = <function MiddlewareMixin.__call__ at 0x7fb6aa134310>
     kwargs = {}
     self = <sentry_sdk.integrations.django.middleware._wrap_middleware.<locals>.SentryWrappingMiddleware object at 0x7fb6ab1f8670>

  File "/usr/lib/python3/dist-packages/django/core/handlers/exception.py", line 34, in inner
    32     def inner(request):
    33         try:
>   34             response = get_response(request)
    35         except Exception as exc:
    36             response = response_for_exception(request, exc)

  locals: 
     get_response = <sentry_sdk.integrations.django.middleware._wrap_middleware.<locals>.SentryWrappingMiddleware object at 0x7fb6ab1f8670>
     request = <WSGIRequest: GET '/backoffice/workflows/89/status/0/reassign'>

  File "/usr/lib/python3/dist-packages/wcs/middleware.py", line 149, in process_request
   147                 status=503,
   148             ).render()
>  149         return self.get_response(request)

  locals: 
     maintenance_mode = None
     pub = <wcs.compat.CompatWcsPublisher object at 0x7fb6aa2b1640>
     request = <WSGIRequest: GET '/backoffice/workflows/89/status/0/reassign'>
     self = <wcs.middleware.MaintenanceMiddleware object at 0x7fb6ab1f8a00>

  File "/usr/lib/python3/dist-packages/django/utils/deprecation.py", line 93, in __call__
    91         response = None
    92         if hasattr(self, 'process_request'):
>   93             response = self.process_request(request)
    94         response = response or self.get_response(request)
    95         if hasattr(self, 'process_response'):

  locals: 
     request = <WSGIRequest: GET '/backoffice/workflows/89/status/0/reassign'>
     response = None
     self = <wcs.middleware.MaintenanceMiddleware object at 0x7fb6ab1f8a00>

  File "/usr/lib/python3/dist-packages/sentry_sdk/integrations/django/middleware.py", line 92, in sentry_wrapped_method
    90                     span.set_tag("django.function_name", function_name)
    91                     span.set_tag("django.middleware_name", middleware_name)
>   92                     return old_method(*args, **kwargs)
    93 
    94             try:

  locals: 
     DjangoIntegration = <class 'sentry_sdk.integrations.django.DjangoIntegration'>
     args = (<WSGIRequest: GET '/backoffice/workflows/89/status/0/reassign'>,)
     description = 'wcs.middleware.MaintenanceMiddleware.__call__'
     function_basename = '__call__'
     function_name = 'django.utils.deprecation.MiddlewareMixin.__call__'
     hub = <sentry_sdk.hub.Hub object at 0x7fb6a9b552e0>
     integration = <sentry_sdk.integrations.django.DjangoIntegration object at 0x7fb6ab2befd0>
     kwargs = {}
     middleware_name = 'wcs.middleware.MaintenanceMiddleware'
     old_method = <bound method MiddlewareMixin.__call__ of <wcs.middleware.MaintenanceMiddleware object at 0x7fb6ab1f8a00>>
     span = <Span(transaction=None, trace_id='273c83993d8f49c5a4c436db26f5ee0b', span_id='a7f245b0452b7a2c', parent_span_id='8e9f216c61a71544', sampled=False)>

  File "/usr/lib/python3/dist-packages/sentry_sdk/integrations/django/middleware.py", line 131, in __call__
   129             if f is None:
   130                 self._call_method = f = _get_wrapped_method(self._inner.__call__)
>  131             return f(*args, **kwargs)
   132 
   133     if hasattr(middleware, "__name__"):

  locals: 
     _get_wrapped_method = <function _wrap_middleware.<locals>._get_wrapped_method at 0x7fb6ab1fca60>
     args = (<WSGIRequest: GET '/backoffice/workflows/89/status/0/reassign'>,)
     f = <function MiddlewareMixin.__call__ at 0x7fb6aa134280>
     kwargs = {}
     self = <sentry_sdk.integrations.django.middleware._wrap_middleware.<locals>.SentryWrappingMiddleware object at 0x7fb6ab1f89a0>

  File "/usr/lib/python3/dist-packages/django/core/handlers/exception.py", line 34, in inner
    32     def inner(request):
    33         try:
>   34             response = get_response(request)
    35         except Exception as exc:
    36             response = response_for_exception(request, exc)

  locals: 
     get_response = <sentry_sdk.integrations.django.middleware._wrap_middleware.<locals>.SentryWrappingMiddleware object at 0x7fb6ab1f89a0>
     request = <WSGIRequest: GET '/backoffice/workflows/89/status/0/reassign'>

  File "/usr/lib/python3/dist-packages/django/utils/deprecation.py", line 94, in __call__
    92         if hasattr(self, 'process_request'):
    93             response = self.process_request(request)
>   94         response = response or self.get_response(request)
    95         if hasattr(self, 'process_response'):
    96             response = self.process_response(request, response)

  locals: 
     request = <WSGIRequest: GET '/backoffice/workflows/89/status/0/reassign'>
     response = None
     self = <wcs.compat.PublishErrorMiddleware object at 0x7fb6ab1f8ca0>

  File "/usr/lib/python3/dist-packages/sentry_sdk/integrations/django/middleware.py", line 92, in sentry_wrapped_method
    90                     span.set_tag("django.function_name", function_name)
    91                     span.set_tag("django.middleware_name", middleware_name)
>   92                     return old_method(*args, **kwargs)
    93 
    94             try:

  locals: 
     DjangoIntegration = <class 'sentry_sdk.integrations.django.DjangoIntegration'>
     args = (<WSGIRequest: GET '/backoffice/workflows/89/status/0/reassign'>,)
     description = 'wcs.compat.PublishErrorMiddleware.__call__'
     function_basename = '__call__'
     function_name = 'django.utils.deprecation.MiddlewareMixin.__call__'
     hub = <sentry_sdk.hub.Hub object at 0x7fb6a9b552e0>
     integration = <sentry_sdk.integrations.django.DjangoIntegration object at 0x7fb6ab2befd0>
     kwargs = {}
     middleware_name = 'wcs.compat.PublishErrorMiddleware'
     old_method = <bound method MiddlewareMixin.__call__ of <wcs.compat.PublishErrorMiddleware object at 0x7fb6ab1f8ca0>>
     span = <Span(transaction=None, trace_id='273c83993d8f49c5a4c436db26f5ee0b', span_id='8e9f216c61a71544', parent_span_id='aac7e32dd1f4bd9c', sampled=False)>

  File "/usr/lib/python3/dist-packages/sentry_sdk/integrations/django/middleware.py", line 131, in __call__
   129             if f is None:
   130                 self._call_method = f = _get_wrapped_method(self._inner.__call__)
>  131             return f(*args, **kwargs)
   132 
   133     if hasattr(middleware, "__name__"):

  locals: 
     _get_wrapped_method = <function _wrap_middleware.<locals>._get_wrapped_method at 0x7fb6ab1fcd30>
     args = (<WSGIRequest: GET '/backoffice/workflows/89/status/0/reassign'>,)
     f = <function MiddlewareMixin.__call__ at 0x7fb6aa1341f0>
     kwargs = {}
     self = <sentry_sdk.integrations.django.middleware._wrap_middleware.<locals>.SentryWrappingMiddleware object at 0x7fb6ab1f8c40>

  File "/usr/lib/python3/dist-packages/django/core/handlers/exception.py", line 34, in inner
    32     def inner(request):
    33         try:
>   34             response = get_response(request)
    35         except Exception as exc:
    36             response = response_for_exception(request, exc)

  locals: 
     get_response = <sentry_sdk.integrations.django.middleware._wrap_middleware.<locals>.SentryWrappingMiddleware object at 0x7fb6ab1f8c40>
     request = <WSGIRequest: GET '/backoffice/workflows/89/status/0/reassign'>

  File "/usr/lib/python3/dist-packages/django/utils/deprecation.py", line 94, in __call__
    92         if hasattr(self, 'process_request'):
    93             response = self.process_request(request)
>   94         response = response or self.get_response(request)
    95         if hasattr(self, 'process_response'):
    96             response = self.process_response(request, response)

  locals: 
     request = <WSGIRequest: GET '/backoffice/workflows/89/status/0/reassign'>
     response = None
     self = <django.middleware.clickjacking.XFrameOptionsMiddleware object at 0x7fb6ab2030a0>

  File "/usr/lib/python3/dist-packages/sentry_sdk/integrations/django/middleware.py", line 92, in sentry_wrapped_method
    90                     span.set_tag("django.function_name", function_name)
    91                     span.set_tag("django.middleware_name", middleware_name)
>   92                     return old_method(*args, **kwargs)
    93 
    94             try:

  locals: 
     DjangoIntegration = <class 'sentry_sdk.integrations.django.DjangoIntegration'>
     args = (<WSGIRequest: GET '/backoffice/workflows/89/status/0/reassign'>,)
     description = 'django.middleware.clickjacking.XFrameOptionsMiddleware.__call__'
     function_basename = '__call__'
     function_name = 'django.utils.deprecation.MiddlewareMixin.__call__'
     hub = <sentry_sdk.hub.Hub object at 0x7fb6a9b552e0>
     integration = <sentry_sdk.integrations.django.DjangoIntegration object at 0x7fb6ab2befd0>
     kwargs = {}
     middleware_name = 'django.middleware.clickjacking.XFrameOptionsMiddleware'
     old_method = <bound method MiddlewareMixin.__call__ of <django.middleware.clickjacking.XFrameOptionsMiddleware object at 0x7fb6ab2030a0>>
     span = <Span(transaction=None, trace_id='273c83993d8f49c5a4c436db26f5ee0b', span_id='aac7e32dd1f4bd9c', parent_span_id='83c73a14802b5279', sampled=False)>

  File "/usr/lib/python3/dist-packages/sentry_sdk/integrations/django/middleware.py", line 131, in __call__
   129             if f is None:
   130                 self._call_method = f = _get_wrapped_method(self._inner.__call__)
>  131             return f(*args, **kwargs)
   132 
   133     if hasattr(middleware, "__name__"):

  locals: 
     _get_wrapped_method = <function _wrap_middleware.<locals>._get_wrapped_method at 0x7fb6ab2010d0>
     args = (<WSGIRequest: GET '/backoffice/workflows/89/status/0/reassign'>,)
     f = <function MiddlewareMixin.__call__ at 0x7fb6aa134160>
     kwargs = {}
     self = <sentry_sdk.integrations.django.middleware._wrap_middleware.<locals>.SentryWrappingMiddleware object at 0x7fb6ab1f8f10>

  File "/usr/lib/python3/dist-packages/django/core/handlers/exception.py", line 34, in inner
    32     def inner(request):
    33         try:
>   34             response = get_response(request)
    35         except Exception as exc:
    36             response = response_for_exception(request, exc)

  locals: 
     get_response = <sentry_sdk.integrations.django.middleware._wrap_middleware.<locals>.SentryWrappingMiddleware object at 0x7fb6ab1f8f10>
     request = <WSGIRequest: GET '/backoffice/workflows/89/status/0/reassign'>

  File "/usr/lib/python3/dist-packages/django/utils/deprecation.py", line 94, in __call__
    92         if hasattr(self, 'process_request'):
    93             response = self.process_request(request)
>   94         response = response or self.get_response(request)
    95         if hasattr(self, 'process_response'):
    96             response = self.process_response(request, response)

  locals: 
     request = <WSGIRequest: GET '/backoffice/workflows/89/status/0/reassign'>
     response = None
     self = <wcs.middleware.PublisherInitialisationMiddleware object at 0x7fb6ab203340>

  File "/usr/lib/python3/dist-packages/sentry_sdk/integrations/django/middleware.py", line 92, in sentry_wrapped_method
    90                     span.set_tag("django.function_name", function_name)
    91                     span.set_tag("django.middleware_name", middleware_name)
>   92                     return old_method(*args, **kwargs)
    93 
    94             try:

  locals: 
     DjangoIntegration = <class 'sentry_sdk.integrations.django.DjangoIntegration'>
     args = (<WSGIRequest: GET '/backoffice/workflows/89/status/0/reassign'>,)
     description = 'wcs.middleware.PublisherInitialisationMiddleware.__call__'
     function_basename = '__call__'
     function_name = 'django.utils.deprecation.MiddlewareMixin.__call__'
     hub = <sentry_sdk.hub.Hub object at 0x7fb6a9b552e0>
     integration = <sentry_sdk.integrations.django.DjangoIntegration object at 0x7fb6ab2befd0>
     kwargs = {}
     middleware_name = 'wcs.middleware.PublisherInitialisationMiddleware'
     old_method = <bound method MiddlewareMixin.__call__ of <wcs.middleware.PublisherInitialisationMiddleware object at 0x7fb6ab203340>>
     span = <Span(transaction=None, trace_id='273c83993d8f49c5a4c436db26f5ee0b', span_id='83c73a14802b5279', parent_span_id='94eaaf16b467af4a', sampled=False)>

  File "/usr/lib/python3/dist-packages/sentry_sdk/integrations/django/middleware.py", line 131, in __call__
   129             if f is None:
   130                 self._call_method = f = _get_wrapped_method(self._inner.__call__)
>  131             return f(*args, **kwargs)
   132 
   133     if hasattr(middleware, "__name__"):

  locals: 
     _get_wrapped_method = <function _wrap_middleware.<locals>._get_wrapped_method at 0x7fb6ab201550>
     args = (<WSGIRequest: GET '/backoffice/workflows/89/status/0/reassign'>,)
     f = <function MiddlewareMixin.__call__ at 0x7fb6aa2ad940>
     kwargs = {}
     self = <sentry_sdk.integrations.django.middleware._wrap_middleware.<locals>.SentryWrappingMiddleware object at 0x7fb6ab2032e0>

  File "/usr/lib/python3/dist-packages/django/core/handlers/exception.py", line 34, in inner
    32     def inner(request):
    33         try:
>   34             response = get_response(request)
    35         except Exception as exc:
    36             response = response_for_exception(request, exc)

  locals: 
     get_response = <sentry_sdk.integrations.django.middleware._wrap_middleware.<locals>.SentryWrappingMiddleware object at 0x7fb6ab2032e0>
     request = <WSGIRequest: GET '/backoffice/workflows/89/status/0/reassign'>

  File "/usr/lib/python3/dist-packages/django/utils/deprecation.py", line 94, in __call__
    92         if hasattr(self, 'process_request'):
    93             response = self.process_request(request)
>   94         response = response or self.get_response(request)
    95         if hasattr(self, 'process_response'):
    96             response = self.process_response(request, response)

  locals: 
     request = <WSGIRequest: GET '/backoffice/workflows/89/status/0/reassign'>
     response = None
     self = <hobo.middleware.common.HoboCommonMiddleware object at 0x7fb6ab203790>

  File "/usr/lib/python3/dist-packages/hobo/middleware/common.py", line 10, in __call__
     8     def __call__(self, *args, **kwargs):
     9         self.will_redirect_with_slash = False
>   10         return super().__call__(*args, **kwargs)
    11 
    12     def should_redirect_with_slash(self, request):

  locals: 
     __class__ = <class 'hobo.middleware.common.HoboCommonMiddleware'>
     args = (<WSGIRequest: GET '/backoffice/workflows/89/status/0/reassign'>,)
     kwargs = {}
     self = <hobo.middleware.common.HoboCommonMiddleware object at 0x7fb6ab203790>

  File "/usr/lib/python3/dist-packages/sentry_sdk/integrations/django/middleware.py", line 92, in sentry_wrapped_method
    90                     span.set_tag("django.function_name", function_name)
    91                     span.set_tag("django.middleware_name", middleware_name)
>   92                     return old_method(*args, **kwargs)
    93 
    94             try:

  locals: 
     DjangoIntegration = <class 'sentry_sdk.integrations.django.DjangoIntegration'>
     args = (<WSGIRequest: GET '/backoffice/workflows/89/status/0/reassign'>,)
     description = 'hobo.middleware.common.HoboCommonMiddleware.__call__'
     function_basename = '__call__'
     function_name = 'hobo.middleware.common.HoboCommonMiddleware.__call__'
     hub = <sentry_sdk.hub.Hub object at 0x7fb6a9b552e0>
     integration = <sentry_sdk.integrations.django.DjangoIntegration object at 0x7fb6ab2befd0>
     kwargs = {}
     middleware_name = 'hobo.middleware.common.HoboCommonMiddleware'
     old_method = <bound method HoboCommonMiddleware.__call__ of <hobo.middleware.common.HoboCommonMiddleware object at 0x7fb6ab203790>>
     span = <Span(transaction=None, trace_id='273c83993d8f49c5a4c436db26f5ee0b', span_id='94eaaf16b467af4a', parent_span_id='834b952ce015d5dd', sampled=False)>

  File "/usr/lib/python3/dist-packages/sentry_sdk/integrations/django/middleware.py", line 131, in __call__
   129             if f is None:
   130                 self._call_method = f = _get_wrapped_method(self._inner.__call__)
>  131             return f(*args, **kwargs)
   132 
   133     if hasattr(middleware, "__name__"):

  locals: 
     _get_wrapped_method = <function _wrap_middleware.<locals>._get_wrapped_method at 0x7fb6ab201820>
     args = (<WSGIRequest: GET '/backoffice/workflows/89/status/0/reassign'>,)
     f = <function HoboCommonMiddleware.__call__ at 0x7fb6aa2ad8b0>
     kwargs = {}
     self = <sentry_sdk.integrations.django.middleware._wrap_middleware.<locals>.SentryWrappingMiddleware object at 0x7fb6ab2034c0>

  File "/usr/lib/python3/dist-packages/django/core/handlers/exception.py", line 34, in inner
    32     def inner(request):
    33         try:
>   34             response = get_response(request)
    35         except Exception as exc:
    36             response = response_for_exception(request, exc)

  locals: 
     get_response = <sentry_sdk.integrations.django.middleware._wrap_middleware.<locals>.SentryWrappingMiddleware object at 0x7fb6ab2034c0>
     request = <WSGIRequest: GET '/backoffice/workflows/89/status/0/reassign'>

  File "/usr/lib/python3/dist-packages/hobo/middleware/maintenance.py", line 46, in __call__
    44                 request, 'hobo/maintenance/maintenance_page.html', context=context, status=503
    45             ).render()
>   46         return self.get_response(request)

  locals: 
     maintenance_mode = None
     request = <WSGIRequest: GET '/backoffice/workflows/89/status/0/reassign'>
     self = <hobo.middleware.maintenance.MaintenanceMiddleware object at 0x7fb6ab203f70>

  File "/usr/lib/python3/dist-packages/sentry_sdk/integrations/django/middleware.py", line 92, in sentry_wrapped_method
    90                     span.set_tag("django.function_name", function_name)
    91                     span.set_tag("django.middleware_name", middleware_name)
>   92                     return old_method(*args, **kwargs)
    93 
    94             try:

  locals: 
     DjangoIntegration = <class 'sentry_sdk.integrations.django.DjangoIntegration'>
     args = (<WSGIRequest: GET '/backoffice/workflows/89/status/0/reassign'>,)
     description = 'hobo.middleware.maintenance.MaintenanceMiddleware.__call__'
     function_basename = '__call__'
     function_name = 'hobo.middleware.maintenance.MaintenanceMiddleware.__call__'
     hub = <sentry_sdk.hub.Hub object at 0x7fb6a9b552e0>
     integration = <sentry_sdk.integrations.django.DjangoIntegration object at 0x7fb6ab2befd0>
     kwargs = {}
     middleware_name = 'hobo.middleware.maintenance.MaintenanceMiddleware'
     old_method = <bound method MaintenanceMiddleware.__call__ of <hobo.middleware.maintenance.MaintenanceMiddleware object at 0x7fb6ab203f70>>
     span = <Span(transaction=None, trace_id='273c83993d8f49c5a4c436db26f5ee0b', span_id='834b952ce015d5dd', parent_span_id='8919e0b9b072af84', sampled=False)>

  File "/usr/lib/python3/dist-packages/sentry_sdk/integrations/django/middleware.py", line 131, in __call__
   129             if f is None:
   130                 self._call_method = f = _get_wrapped_method(self._inner.__call__)
>  131             return f(*args, **kwargs)
   132 
   133     if hasattr(middleware, "__name__"):

  locals: 
     _get_wrapped_method = <function _wrap_middleware.<locals>._get_wrapped_method at 0x7fb6ab2083a0>
     args = (<WSGIRequest: GET '/backoffice/workflows/89/status/0/reassign'>,)
     f = <function MaintenanceMiddleware.__call__ at 0x7fb6aa2ad820>
     kwargs = {}
     self = <sentry_sdk.integrations.django.middleware._wrap_middleware.<locals>.SentryWrappingMiddleware object at 0x7fb6ab203f10>

  File "/usr/lib/python3/dist-packages/django/core/handlers/exception.py", line 34, in inner
    32     def inner(request):
    33         try:
>   34             response = get_response(request)
    35         except Exception as exc:
    36             response = response_for_exception(request, exc)

  locals: 
     get_response = <sentry_sdk.integrations.django.middleware._wrap_middleware.<locals>.SentryWrappingMiddleware object at 0x7fb6ab203f10>
     request = <WSGIRequest: GET '/backoffice/workflows/89/status/0/reassign'>

  File "/usr/lib/python3/dist-packages/django/utils/deprecation.py", line 94, in __call__
    92         if hasattr(self, 'process_request'):
    93             response = self.process_request(request)
>   94         response = response or self.get_response(request)
    95         if hasattr(self, 'process_response'):
    96             response = self.process_response(request, response)

  locals: 
     request = <WSGIRequest: GET '/backoffice/workflows/89/status/0/reassign'>
     response = None
     self = <hobo.middleware.cors.CORSMiddleware object at 0x7fb6ab209250>

  File "/usr/lib/python3/dist-packages/sentry_sdk/integrations/django/middleware.py", line 92, in sentry_wrapped_method
    90                     span.set_tag("django.function_name", function_name)
    91                     span.set_tag("django.middleware_name", middleware_name)
>   92                     return old_method(*args, **kwargs)
    93 
    94             try:

  locals: 
     DjangoIntegration = <class 'sentry_sdk.integrations.django.DjangoIntegration'>
     args = (<WSGIRequest: GET '/backoffice/workflows/89/status/0/reassign'>,)
     description = 'hobo.middleware.cors.CORSMiddleware.__call__'
     function_basename = '__call__'
     function_name = 'django.utils.deprecation.MiddlewareMixin.__call__'
     hub = <sentry_sdk.hub.Hub object at 0x7fb6a9b552e0>
     integration = <sentry_sdk.integrations.django.DjangoIntegration object at 0x7fb6ab2befd0>
     kwargs = {}
     middleware_name = 'hobo.middleware.cors.CORSMiddleware'
     old_method = <bound method MiddlewareMixin.__call__ of <hobo.middleware.cors.CORSMiddleware object at 0x7fb6ab209250>>
     span = <Span(transaction=None, trace_id='273c83993d8f49c5a4c436db26f5ee0b', span_id='8919e0b9b072af84', parent_span_id='8140efa37fac9568', sampled=False)>

  File "/usr/lib/python3/dist-packages/sentry_sdk/integrations/django/middleware.py", line 131, in __call__
   129             if f is None:
   130                 self._call_method = f = _get_wrapped_method(self._inner.__call__)
>  131             return f(*args, **kwargs)
   132 
   133     if hasattr(middleware, "__name__"):

  locals: 
     _get_wrapped_method = <function _wrap_middleware.<locals>._get_wrapped_method at 0x7fb6ab2088b0>
     args = (<WSGIRequest: GET '/backoffice/workflows/89/status/0/reassign'>,)
     f = <function MiddlewareMixin.__call__ at 0x7fb6aa2ad790>
     kwargs = {}
     self = <sentry_sdk.integrations.django.middleware._wrap_middleware.<locals>.SentryWrappingMiddleware object at 0x7fb6ab2091f0>

  File "/usr/lib/python3/dist-packages/django/core/handlers/exception.py", line 34, in inner
    32     def inner(request):
    33         try:
>   34             response = get_response(request)
    35         except Exception as exc:
    36             response = response_for_exception(request, exc)

  locals: 
     get_response = <sentry_sdk.integrations.django.middleware._wrap_middleware.<locals>.SentryWrappingMiddleware object at 0x7fb6ab2091f0>
     request = <WSGIRequest: GET '/backoffice/workflows/89/status/0/reassign'>

  File "/usr/lib/python3/dist-packages/django/utils/deprecation.py", line 94, in __call__
    92         if hasattr(self, 'process_request'):
    93             response = self.process_request(request)
>   94         response = response or self.get_response(request)
    95         if hasattr(self, 'process_response'):
    96             response = self.process_response(request, response)

  locals: 
     request = <WSGIRequest: GET '/backoffice/workflows/89/status/0/reassign'>
     response = None
     self = <hobo.middleware.version.VersionMiddleware object at 0x7fb6ab2094f0>

  File "/usr/lib/python3/dist-packages/sentry_sdk/integrations/django/middleware.py", line 92, in sentry_wrapped_method
    90                     span.set_tag("django.function_name", function_name)
    91                     span.set_tag("django.middleware_name", middleware_name)
>   92                     return old_method(*args, **kwargs)
    93 
    94             try:

  locals: 
     DjangoIntegration = <class 'sentry_sdk.integrations.django.DjangoIntegration'>
     args = (<WSGIRequest: GET '/backoffice/workflows/89/status/0/reassign'>,)
     description = 'hobo.middleware.VersionMiddleware.__call__'
     function_basename = '__call__'
     function_name = 'django.utils.deprecation.MiddlewareMixin.__call__'
     hub = <sentry_sdk.hub.Hub object at 0x7fb6a9b552e0>
     integration = <sentry_sdk.integrations.django.DjangoIntegration object at 0x7fb6ab2befd0>
     kwargs = {}
     middleware_name = 'hobo.middleware.VersionMiddleware'
     old_method = <bound method MiddlewareMixin.__call__ of <hobo.middleware.version.VersionMiddleware object at 0x7fb6ab2094f0>>
     span = <Span(transaction=None, trace_id='273c83993d8f49c5a4c436db26f5ee0b', span_id='8140efa37fac9568', parent_span_id='a63913231b7f879f', sampled=False)>

  File "/usr/lib/python3/dist-packages/sentry_sdk/integrations/django/middleware.py", line 131, in __call__
   129             if f is None:
   130                 self._call_method = f = _get_wrapped_method(self._inner.__call__)
>  131             return f(*args, **kwargs)
   132 
   133     if hasattr(middleware, "__name__"):

  locals: 
     _get_wrapped_method = <function _wrap_middleware.<locals>._get_wrapped_method at 0x7fb6ab208b80>
     args = (<WSGIRequest: GET '/backoffice/workflows/89/status/0/reassign'>,)
     f = <function MiddlewareMixin.__call__ at 0x7fb6aa2ad700>
     kwargs = {}
     self = <sentry_sdk.integrations.django.middleware._wrap_middleware.<locals>.SentryWrappingMiddleware object at 0x7fb6ab209490>

  File "/usr/lib/python3/dist-packages/django/core/handlers/exception.py", line 34, in inner
    32     def inner(request):
    33         try:
>   34             response = get_response(request)
    35         except Exception as exc:
    36             response = response_for_exception(request, exc)

  locals: 
     get_response = <sentry_sdk.integrations.django.middleware._wrap_middleware.<locals>.SentryWrappingMiddleware object at 0x7fb6ab209490>
     request = <WSGIRequest: GET '/backoffice/workflows/89/status/0/reassign'>

  File "/usr/lib/python3/dist-packages/django/utils/deprecation.py", line 94, in __call__
    92         if hasattr(self, 'process_request'):
    93             response = self.process_request(request)
>   94         response = response or self.get_response(request)
    95         if hasattr(self, 'process_response'):
    96             response = self.process_response(request, response)

  locals: 
     request = <WSGIRequest: GET '/backoffice/workflows/89/status/0/reassign'>
     response = None
     self = <hobo.middleware.xforwardedfor.XForwardedForMiddleware object at 0x7fb6ab209880>

  File "/usr/lib/python3/dist-packages/sentry_sdk/integrations/django/middleware.py", line 92, in sentry_wrapped_method
    90                     span.set_tag("django.function_name", function_name)
    91                     span.set_tag("django.middleware_name", middleware_name)
>   92                     return old_method(*args, **kwargs)
    93 
    94             try:

  locals: 
     DjangoIntegration = <class 'sentry_sdk.integrations.django.DjangoIntegration'>
     args = (<WSGIRequest: GET '/backoffice/workflows/89/status/0/reassign'>,)
     description = 'hobo.middleware.xforwardedfor.XForwardedForMiddleware.__call__'
     function_basename = '__call__'
     function_name = 'django.utils.deprecation.MiddlewareMixin.__call__'
     hub = <sentry_sdk.hub.Hub object at 0x7fb6a9b552e0>
     integration = <sentry_sdk.integrations.django.DjangoIntegration object at 0x7fb6ab2befd0>
     kwargs = {}
     middleware_name = 'hobo.middleware.xforwardedfor.XForwardedForMiddleware'
     old_method = <bound method MiddlewareMixin.__call__ of <hobo.middleware.xforwardedfor.XForwardedForMiddleware object at 0x7fb6ab209880>>
     span = <Span(transaction=None, trace_id='273c83993d8f49c5a4c436db26f5ee0b', span_id='a63913231b7f879f', parent_span_id='9a53cc64c57feba5', sampled=False)>

  File "/usr/lib/python3/dist-packages/sentry_sdk/integrations/django/middleware.py", line 131, in __call__
   129             if f is None:
   130                 self._call_method = f = _get_wrapped_method(self._inner.__call__)
>  131             return f(*args, **kwargs)
   132 
   133     if hasattr(middleware, "__name__"):

  locals: 
     _get_wrapped_method = <function _wrap_middleware.<locals>._get_wrapped_method at 0x7fb6ab208e50>
     args = (<WSGIRequest: GET '/backoffice/workflows/89/status/0/reassign'>,)
     f = <function MiddlewareMixin.__call__ at 0x7fb6aa2ad670>
     kwargs = {}
     self = <sentry_sdk.integrations.django.middleware._wrap_middleware.<locals>.SentryWrappingMiddleware object at 0x7fb6ab2097f0>

  File "/usr/lib/python3/dist-packages/django/core/handlers/exception.py", line 34, in inner
    32     def inner(request):
    33         try:
>   34             response = get_response(request)
    35         except Exception as exc:
    36             response = response_for_exception(request, exc)

  locals: 
     get_response = <sentry_sdk.integrations.django.middleware._wrap_middleware.<locals>.SentryWrappingMiddleware object at 0x7fb6ab2097f0>
     request = <WSGIRequest: GET '/backoffice/workflows/89/status/0/reassign'>

  File "/usr/lib/python3/dist-packages/django/utils/deprecation.py", line 94, in __call__
    92         if hasattr(self, 'process_request'):
    93             response = self.process_request(request)
>   94         response = response or self.get_response(request)
    95         if hasattr(self, 'process_response'):
    96             response = self.process_response(request, response)

  locals: 
     request = <WSGIRequest: GET '/backoffice/workflows/89/status/0/reassign'>
     response = None
     self = <hobo.middleware.utils.StoreRequestMiddleware object at 0x7fb6ab209b20>

  File "/usr/lib/python3/dist-packages/sentry_sdk/integrations/django/middleware.py", line 92, in sentry_wrapped_method
    90                     span.set_tag("django.function_name", function_name)
    91                     span.set_tag("django.middleware_name", middleware_name)
>   92                     return old_method(*args, **kwargs)
    93 
    94             try:

  locals: 
     DjangoIntegration = <class 'sentry_sdk.integrations.django.DjangoIntegration'>
     args = (<WSGIRequest: GET '/backoffice/workflows/89/status/0/reassign'>,)
     description = 'hobo.middleware.utils.StoreRequestMiddleware.__call__'
     function_basename = '__call__'
     function_name = 'django.utils.deprecation.MiddlewareMixin.__call__'
     hub = <sentry_sdk.hub.Hub object at 0x7fb6a9b552e0>
     integration = <sentry_sdk.integrations.django.DjangoIntegration object at 0x7fb6ab2befd0>
     kwargs = {}
     middleware_name = 'hobo.middleware.utils.StoreRequestMiddleware'
     old_method = <bound method MiddlewareMixin.__call__ of <hobo.middleware.utils.StoreRequestMiddleware object at 0x7fb6ab209b20>>
     span = <Span(transaction=None, trace_id='273c83993d8f49c5a4c436db26f5ee0b', span_id='9a53cc64c57feba5', parent_span_id='a4d1245ad1384d7d', sampled=False)>

  File "/usr/lib/python3/dist-packages/sentry_sdk/integrations/django/middleware.py", line 131, in __call__
   129             if f is None:
   130                 self._call_method = f = _get_wrapped_method(self._inner.__call__)
>  131             return f(*args, **kwargs)
   132 
   133     if hasattr(middleware, "__name__"):

  locals: 
     _get_wrapped_method = <function _wrap_middleware.<locals>._get_wrapped_method at 0x7fb6ab20c280>
     args = (<WSGIRequest: GET '/backoffice/workflows/89/status/0/reassign'>,)
     f = <function MiddlewareMixin.__call__ at 0x7fb6aa2ad5e0>
     kwargs = {}
     self = <sentry_sdk.integrations.django.middleware._wrap_middleware.<locals>.SentryWrappingMiddleware object at 0x7fb6ab209ac0>

  File "/usr/lib/python3/dist-packages/django/core/handlers/exception.py", line 34, in inner
    32     def inner(request):
    33         try:
>   34             response = get_response(request)
    35         except Exception as exc:
    36             response = response_for_exception(request, exc)

  locals: 
     get_response = <sentry_sdk.integrations.django.middleware._wrap_middleware.<locals>.SentryWrappingMiddleware object at 0x7fb6ab209ac0>
     request = <WSGIRequest: GET '/backoffice/workflows/89/status/0/reassign'>

  File "/usr/lib/python3/dist-packages/django/utils/deprecation.py", line 94, in __call__
    92         if hasattr(self, 'process_request'):
    93             response = self.process_request(request)
>   94         response = response or self.get_response(request)
    95         if hasattr(self, 'process_response'):
    96             response = self.process_response(request, response)

  locals: 
     request = <WSGIRequest: GET '/backoffice/workflows/89/status/0/reassign'>
     response = None
     self = <hobo.middleware.cors.CORSMiddleware object at 0x7fb6ab209dc0>

  File "/usr/lib/python3/dist-packages/sentry_sdk/integrations/django/middleware.py", line 92, in sentry_wrapped_method
    90                     span.set_tag("django.function_name", function_name)
    91                     span.set_tag("django.middleware_name", middleware_name)
>   92                     return old_method(*args, **kwargs)
    93 
    94             try:

  locals: 
     DjangoIntegration = <class 'sentry_sdk.integrations.django.DjangoIntegration'>
     args = (<WSGIRequest: GET '/backoffice/workflows/89/status/0/reassign'>,)
     description = 'hobo.middleware.cors.CORSMiddleware.__call__'
     function_basename = '__call__'
     function_name = 'django.utils.deprecation.MiddlewareMixin.__call__'
     hub = <sentry_sdk.hub.Hub object at 0x7fb6a9b552e0>
     integration = <sentry_sdk.integrations.django.DjangoIntegration object at 0x7fb6ab2befd0>
     kwargs = {}
     middleware_name = 'hobo.middleware.cors.CORSMiddleware'
     old_method = <bound method MiddlewareMixin.__call__ of <hobo.middleware.cors.CORSMiddleware object at 0x7fb6ab209dc0>>
     span = <Span(transaction=None, trace_id='273c83993d8f49c5a4c436db26f5ee0b', span_id='a4d1245ad1384d7d', parent_span_id='9efe056ac48db0f5', sampled=False)>

  File "/usr/lib/python3/dist-packages/sentry_sdk/integrations/django/middleware.py", line 131, in __call__
   129             if f is None:
   130                 self._call_method = f = _get_wrapped_method(self._inner.__call__)
>  131             return f(*args, **kwargs)
   132 
   133     if hasattr(middleware, "__name__"):

  locals: 
     _get_wrapped_method = <function _wrap_middleware.<locals>._get_wrapped_method at 0x7fb6ab20c550>
     args = (<WSGIRequest: GET '/backoffice/workflows/89/status/0/reassign'>,)
     f = <function MiddlewareMixin.__call__ at 0x7fb6aa2ad550>
     kwargs = {}
     self = <sentry_sdk.integrations.django.middleware._wrap_middleware.<locals>.SentryWrappingMiddleware object at 0x7fb6ab209d60>

  File "/usr/lib/python3/dist-packages/django/core/handlers/exception.py", line 34, in inner
    32     def inner(request):
    33         try:
>   34             response = get_response(request)
    35         except Exception as exc:
    36             response = response_for_exception(request, exc)

  locals: 
     get_response = <sentry_sdk.integrations.django.middleware._wrap_middleware.<locals>.SentryWrappingMiddleware object at 0x7fb6ab209d60>
     request = <WSGIRequest: GET '/backoffice/workflows/89/status/0/reassign'>

  File "/usr/lib/python3/dist-packages/django/utils/deprecation.py", line 94, in __call__
    92         if hasattr(self, 'process_request'):
    93             response = self.process_request(request)
>   94         response = response or self.get_response(request)
    95         if hasattr(self, 'process_response'):
    96             response = self.process_response(request, response)

  locals: 
     request = <WSGIRequest: GET '/backoffice/workflows/89/status/0/reassign'>
     response = None
     self = <hobo.middleware.version.VersionMiddleware object at 0x7fb6ab20e0a0>

  File "/usr/lib/python3/dist-packages/sentry_sdk/integrations/django/middleware.py", line 92, in sentry_wrapped_method
    90                     span.set_tag("django.function_name", function_name)
    91                     span.set_tag("django.middleware_name", middleware_name)
>   92                     return old_method(*args, **kwargs)
    93 
    94             try:

  locals: 
     DjangoIntegration = <class 'sentry_sdk.integrations.django.DjangoIntegration'>
     args = (<WSGIRequest: GET '/backoffice/workflows/89/status/0/reassign'>,)
     description = 'hobo.middleware.VersionMiddleware.__call__'
     function_basename = '__call__'
     function_name = 'django.utils.deprecation.MiddlewareMixin.__call__'
     hub = <sentry_sdk.hub.Hub object at 0x7fb6a9b552e0>
     integration = <sentry_sdk.integrations.django.DjangoIntegration object at 0x7fb6ab2befd0>
     kwargs = {}
     middleware_name = 'hobo.middleware.VersionMiddleware'
     old_method = <bound method MiddlewareMixin.__call__ of <hobo.middleware.version.VersionMiddleware object at 0x7fb6ab20e0a0>>
     span = <Span(transaction=None, trace_id='273c83993d8f49c5a4c436db26f5ee0b', span_id='9efe056ac48db0f5', parent_span_id='8e976d1f336df36c', sampled=False)>

  File "/usr/lib/python3/dist-packages/sentry_sdk/integrations/django/middleware.py", line 131, in __call__
   129             if f is None:
   130                 self._call_method = f = _get_wrapped_method(self._inner.__call__)
>  131             return f(*args, **kwargs)
   132 
   133     if hasattr(middleware, "__name__"):

  locals: 
     _get_wrapped_method = <function _wrap_middleware.<locals>._get_wrapped_method at 0x7fb6ab20c820>
     args = (<WSGIRequest: GET '/backoffice/workflows/89/status/0/reassign'>,)
     f = <function MiddlewareMixin.__call__ at 0x7fb6aa2ad4c0>
     kwargs = {}
     self = <sentry_sdk.integrations.django.middleware._wrap_middleware.<locals>.SentryWrappingMiddleware object at 0x7fb6ab20e040>

  File "/usr/lib/python3/dist-packages/django/core/handlers/exception.py", line 34, in inner
    32     def inner(request):
    33         try:
>   34             response = get_response(request)
    35         except Exception as exc:
    36             response = response_for_exception(request, exc)

  locals: 
     get_response = <sentry_sdk.integrations.django.middleware._wrap_middleware.<locals>.SentryWrappingMiddleware object at 0x7fb6ab20e040>
     request = <WSGIRequest: GET '/backoffice/workflows/89/status/0/reassign'>

  File "/usr/lib/python3/dist-packages/django/utils/deprecation.py", line 94, in __call__
    92         if hasattr(self, 'process_request'):
    93             response = self.process_request(request)
>   94         response = response or self.get_response(request)
    95         if hasattr(self, 'process_response'):
    96             response = self.process_response(request, response)

  locals: 
     request = <WSGIRequest: GET '/backoffice/workflows/89/status/0/reassign'>
     response = None
     self = <hobo.middleware.xforwardedfor.XForwardedForMiddleware object at 0x7fb6ab20e340>

  File "/usr/lib/python3/dist-packages/sentry_sdk/integrations/django/middleware.py", line 92, in sentry_wrapped_method
    90                     span.set_tag("django.function_name", function_name)
    91                     span.set_tag("django.middleware_name", middleware_name)
>   92                     return old_method(*args, **kwargs)
    93 
    94             try:

  locals: 
     DjangoIntegration = <class 'sentry_sdk.integrations.django.DjangoIntegration'>
     args = (<WSGIRequest: GET '/backoffice/workflows/89/status/0/reassign'>,)
     description = 'hobo.middleware.xforwardedfor.XForwardedForMiddleware.__call__'
     function_basename = '__call__'
     function_name = 'django.utils.deprecation.MiddlewareMixin.__call__'
     hub = <sentry_sdk.hub.Hub object at 0x7fb6a9b552e0>
     integration = <sentry_sdk.integrations.django.DjangoIntegration object at 0x7fb6ab2befd0>
     kwargs = {}
     middleware_name = 'hobo.middleware.xforwardedfor.XForwardedForMiddleware'
     old_method = <bound method MiddlewareMixin.__call__ of <hobo.middleware.xforwardedfor.XForwardedForMiddleware object at 0x7fb6ab20e340>>
     span = <Span(transaction=None, trace_id='273c83993d8f49c5a4c436db26f5ee0b', span_id='8e976d1f336df36c', parent_span_id='add456424e564f1e', sampled=False)>

  File "/usr/lib/python3/dist-packages/sentry_sdk/integrations/django/middleware.py", line 131, in __call__
   129             if f is None:
   130                 self._call_method = f = _get_wrapped_method(self._inner.__call__)
>  131             return f(*args, **kwargs)
   132 
   133     if hasattr(middleware, "__name__"):

  locals: 
     _get_wrapped_method = <function _wrap_middleware.<locals>._get_wrapped_method at 0x7fb6ab20caf0>
     args = (<WSGIRequest: GET '/backoffice/workflows/89/status/0/reassign'>,)
     f = <function MiddlewareMixin.__call__ at 0x7fb6aa2ad430>
     kwargs = {}
     self = <sentry_sdk.integrations.django.middleware._wrap_middleware.<locals>.SentryWrappingMiddleware object at 0x7fb6ab20e2e0>

  File "/usr/lib/python3/dist-packages/django/core/handlers/exception.py", line 34, in inner
    32     def inner(request):
    33         try:
>   34             response = get_response(request)
    35         except Exception as exc:
    36             response = response_for_exception(request, exc)

  locals: 
     get_response = <sentry_sdk.integrations.django.middleware._wrap_middleware.<locals>.SentryWrappingMiddleware object at 0x7fb6ab20e2e0>
     request = <WSGIRequest: GET '/backoffice/workflows/89/status/0/reassign'>

  File "/usr/lib/python3/dist-packages/django/utils/deprecation.py", line 94, in __call__
    92         if hasattr(self, 'process_request'):
    93             response = self.process_request(request)
>   94         response = response or self.get_response(request)
    95         if hasattr(self, 'process_response'):
    96             response = self.process_response(request, response)

  locals: 
     request = <WSGIRequest: GET '/backoffice/workflows/89/status/0/reassign'>
     response = None
     self = <hobo.middleware.utils.StoreRequestMiddleware object at 0x7fb6ab20e5e0>

  File "/usr/lib/python3/dist-packages/sentry_sdk/integrations/django/middleware.py", line 92, in sentry_wrapped_method
    90                     span.set_tag("django.function_name", function_name)
    91                     span.set_tag("django.middleware_name", middleware_name)
>   92                     return old_method(*args, **kwargs)
    93 
    94             try:

  locals: 
     DjangoIntegration = <class 'sentry_sdk.integrations.django.DjangoIntegration'>
     args = (<WSGIRequest: GET '/backoffice/workflows/89/status/0/reassign'>,)
     description = 'hobo.middleware.utils.StoreRequestMiddleware.__call__'
     function_basename = '__call__'
     function_name = 'django.utils.deprecation.MiddlewareMixin.__call__'
     hub = <sentry_sdk.hub.Hub object at 0x7fb6a9b552e0>
     integration = <sentry_sdk.integrations.django.DjangoIntegration object at 0x7fb6ab2befd0>
     kwargs = {}
     middleware_name = 'hobo.middleware.utils.StoreRequestMiddleware'
     old_method = <bound method MiddlewareMixin.__call__ of <hobo.middleware.utils.StoreRequestMiddleware object at 0x7fb6ab20e5e0>>
     span = <Span(transaction=None, trace_id='273c83993d8f49c5a4c436db26f5ee0b', span_id='add456424e564f1e', parent_span_id='91e0540336fd5825', sampled=False)>

  File "/usr/lib/python3/dist-packages/sentry_sdk/integrations/django/middleware.py", line 131, in __call__
   129             if f is None:
   130                 self._call_method = f = _get_wrapped_method(self._inner.__call__)
>  131             return f(*args, **kwargs)
   132 
   133     if hasattr(middleware, "__name__"):

  locals: 
     _get_wrapped_method = <function _wrap_middleware.<locals>._get_wrapped_method at 0x7fb6ab20cdc0>
     args = (<WSGIRequest: GET '/backoffice/workflows/89/status/0/reassign'>,)
     f = <function MiddlewareMixin.__call__ at 0x7fb6aa2ad3a0>
     kwargs = {}
     self = <sentry_sdk.integrations.django.middleware._wrap_middleware.<locals>.SentryWrappingMiddleware object at 0x7fb6ab20e580>

  File "/usr/lib/python3/dist-packages/django/core/handlers/exception.py", line 34, in inner
    32     def inner(request):
    33         try:
>   34             response = get_response(request)
    35         except Exception as exc:
    36             response = response_for_exception(request, exc)

  locals: 
     get_response = <sentry_sdk.integrations.django.middleware._wrap_middleware.<locals>.SentryWrappingMiddleware object at 0x7fb6ab20e580>
     request = <WSGIRequest: GET '/backoffice/workflows/89/status/0/reassign'>

  File "/usr/lib/python3/dist-packages/django/core/handlers/base.py", line 75, in get_response
    73         # Setup default url resolver for this thread
    74         set_urlconf(settings.ROOT_URLCONF)
>   75         response = self._middleware_chain(request)
    76         response._closable_objects.append(request)
    77         if response.status_code >= 400:

  locals: 
     request = <WSGIRequest: GET '/backoffice/workflows/89/status/0/reassign'>
     self = <django.core.handlers.wsgi.WSGIHandler object at 0x7fb6ab755d00>

  File "/usr/lib/python3/dist-packages/sentry_sdk/integrations/django/__init__.py", line 140, in sentry_patched_get_response
   138                         _make_event_processor(weakref.ref(request), integration)
   139                     )
>  140             return old_get_response(self, request)
   141 
   142         BaseHandler.get_response = sentry_patched_get_response

  locals: 
     hub = <sentry_sdk.hub.Hub object at 0x7fb6a9b552e0>
     integration = <sentry_sdk.integrations.django.DjangoIntegration object at 0x7fb6ab2befd0>
     old_get_response = <function BaseHandler.get_response at 0x7fb6ab73c280>
     request = <WSGIRequest: GET '/backoffice/workflows/89/status/0/reassign'>
     scope = <Scope id=0x7fb6a9bd9280 name=wsgi>
     self = <django.core.handlers.wsgi.WSGIHandler object at 0x7fb6ab755d00>

  File "/usr/lib/python3/dist-packages/django/core/handlers/wsgi.py", line 141, in __call__
   139         signals.request_started.send(sender=self.__class__, environ=environ)
   140         request = self.request_class(environ)
>  141         response = self.get_response(request)
   142 
   143         response._handler_class = self.__class__

  locals: 
     environ = {'REQUEST_METHOD': 'GET', 'REQUEST_URI': '/backoffice/workflows/89/status/0/reassign', 'PATH_INFO': '/backoffice/workflows/89/status/0/reassign', 'QUERY_STRING': '', 'SERVER_PROTOCOL': 'HTTP/1.0', 'SCRIPT_NAME': '', 'SERVER_NAME': 'wcs', 'SERVER_PORT': '80', 'REMOTE_ADDR': '94.224.199.241', 'HTTP_HOST': 'demarches-validation.test.entrouvert.org', 'HTTP_X_FORWARDED_SSL': 'on', 'HTTP_X_FORWARDED_PROTOCOL': 'ssl', 'HTTP_X_FORWARDED_PROTO': 'https', 'HTTP_X_REAL_IP': '94.224.199.241', 'HTTP_X_FORWARDED_FOR': '94.224.199.241, 94.224.199.241', 'HTTP_CONNECTION': 'close', 'HTTP_USER_AGENT': 'Mozilla/5.0 (X11; Linux x86_64; rv:106.0) Gecko/20100101 Firefox/106.0', 'HTTP_ACCEPT': 'text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,*/*;q=0.8', 'HTTP_ACCEPT_LANGUAGE': 'fr,fr-FR;q=0.8,en;q=0.5,en-US;q=0.3', 'HTTP_ACCEPT_ENCODING': 'gzip, deflate, br', 'HTTP_REFERER': 'https://demarches-validation.test.entrouvert.org/backoffice/workflows/89/status/0/', 'HTTP_DNT': '1', 'HTTP_UPGRADE_INSECURE_REQUESTS': '1', 'HTTP_SEC_FETCH_DEST': 'document', 'HTTP_SEC_FETCH_MODE': 'navigate', 'HTTP_SEC_FETCH_SITE': 'same-origin', 'HTTP_SEC_FETCH_USER': '?1', 'HTTP_X_ENTROUVERT': '1', 'HTTP_COOKIE': 'publik_portal_agent_url=https%3A%2F%2Fagents-validation.test.entrouvert.org%2F; publik_portal_agent_title=Portail%20Agent; sessionid-wcs-8c8f12="5ai6kEr3oZUdYsTARg69Uw"; a2-opened-session-5a653e=a63cb6fb4d0d43bfa9bb9a63b859e755; sessionid-wcs-8c8f12-passive-auth-tried="1"; a2-opened-session-8056bf=82d9f2cc401d40e097d4e688ce700d53; a2-opened-session-0bd803=7b5509bc59ee4580889bb652471e7c3f; a2-opened-session-e67dd8=b929ad98e06b42e681fea44d1984cf43; a2-opened-session-3cd550=ea3ec27dbaf247de9c7c75c069697549; a2-opened-session-88d6a4=b576dbbd308a4627a5c13fb345f78ada; a2-opened-session-740ca9=8de5bcc7e791400489807a63e47abe7f; gadjo_sidepage_status=collasped', 'HTTP_X_PUBLIK_CLUSTER_BACKEND': 'wcs-balancer', 'wsgi.input': <uwsgi._Input object at 0x7fb6a9599990>, 'wsgi.file_wrapper': <built-in function uwsgi_sendfile>, 'wsgi.version': (1, 0), 'wsgi.errors': <_io.TextIOWrapper name=2 mode='w' encoding='UTF-8'>, 'wsgi.run_once': False, 'wsgi.multithread': False, 'wsgi.multiprocess': True, 'wsgi.url_scheme': 'https', 'uwsgi.version': b'2.0.19.1-debian', 'uwsgi.node': b'wcs'}
     request = <WSGIRequest: GET '/backoffice/workflows/89/status/0/reassign'>
     self = <django.core.handlers.wsgi.WSGIHandler object at 0x7fb6ab755d00>
     start_response = functools.partial(<function _sentry_start_response at 0x7fb6ab2cd670>, <built-in function uwsgi_spit>, <Span(transaction='/backoffice/', trace_id='273c83993d8f49c5a4c436db26f5ee0b', span_id='91e0540336fd5825', parent_span_id=None, sampled=False)>)

  File "/usr/lib/python3/dist-packages/sentry_sdk/integrations/wsgi.py", line 113, in __call__
   111                 with hub.start_span(span) as span:
   112                     try:
>  113                         rv = self.app(
   114                             environ,
   115                             functools.partial(

  locals: 
     environ = {'REQUEST_METHOD': 'GET', 'REQUEST_URI': '/backoffice/workflows/89/status/0/reassign', 'PATH_INFO': '/backoffice/workflows/89/status/0/reassign', 'QUERY_STRING': '', 'SERVER_PROTOCOL': 'HTTP/1.0', 'SCRIPT_NAME': '', 'SERVER_NAME': 'wcs', 'SERVER_PORT': '80', 'REMOTE_ADDR': '94.224.199.241', 'HTTP_HOST': 'demarches-validation.test.entrouvert.org', 'HTTP_X_FORWARDED_SSL': 'on', 'HTTP_X_FORWARDED_PROTOCOL': 'ssl', 'HTTP_X_FORWARDED_PROTO': 'https', 'HTTP_X_REAL_IP': '94.224.199.241', 'HTTP_X_FORWARDED_FOR': '94.224.199.241, 94.224.199.241', 'HTTP_CONNECTION': 'close', 'HTTP_USER_AGENT': 'Mozilla/5.0 (X11; Linux x86_64; rv:106.0) Gecko/20100101 Firefox/106.0', 'HTTP_ACCEPT': 'text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,*/*;q=0.8', 'HTTP_ACCEPT_LANGUAGE': 'fr,fr-FR;q=0.8,en;q=0.5,en-US;q=0.3', 'HTTP_ACCEPT_ENCODING': 'gzip, deflate, br', 'HTTP_REFERER': 'https://demarches-validation.test.entrouvert.org/backoffice/workflows/89/status/0/', 'HTTP_DNT': '1', 'HTTP_UPGRADE_INSECURE_REQUESTS': '1', 'HTTP_SEC_FETCH_DEST': 'document', 'HTTP_SEC_FETCH_MODE': 'navigate', 'HTTP_SEC_FETCH_SITE': 'same-origin', 'HTTP_SEC_FETCH_USER': '?1', 'HTTP_X_ENTROUVERT': '1', 'HTTP_COOKIE': 'publik_portal_agent_url=https%3A%2F%2Fagents-validation.test.entrouvert.org%2F; publik_portal_agent_title=Portail%20Agent; sessionid-wcs-8c8f12="5ai6kEr3oZUdYsTARg69Uw"; a2-opened-session-5a653e=a63cb6fb4d0d43bfa9bb9a63b859e755; sessionid-wcs-8c8f12-passive-auth-tried="1"; a2-opened-session-8056bf=82d9f2cc401d40e097d4e688ce700d53; a2-opened-session-0bd803=7b5509bc59ee4580889bb652471e7c3f; a2-opened-session-e67dd8=b929ad98e06b42e681fea44d1984cf43; a2-opened-session-3cd550=ea3ec27dbaf247de9c7c75c069697549; a2-opened-session-88d6a4=b576dbbd308a4627a5c13fb345f78ada; a2-opened-session-740ca9=8de5bcc7e791400489807a63e47abe7f; gadjo_sidepage_status=collasped', 'HTTP_X_PUBLIK_CLUSTER_BACKEND': 'wcs-balancer', 'wsgi.input': <uwsgi._Input object at 0x7fb6a9599990>, 'wsgi.file_wrapper': <built-in function uwsgi_sendfile>, 'wsgi.version': (1, 0), 'wsgi.errors': <_io.TextIOWrapper name=2 mode='w' encoding='UTF-8'>, 'wsgi.run_once': False, 'wsgi.multithread': False, 'wsgi.multiprocess': True, 'wsgi.url_scheme': 'https', 'uwsgi.version': b'2.0.19.1-debian', 'uwsgi.node': b'wcs'}
     hub = <sentry_sdk.hub.Hub object at 0x7fb6a9b552e0>
     scope = <Scope id=0x7fb6a9bd9280 name=wsgi>
     self = <sentry_sdk.integrations.wsgi.SentryWsgiMiddleware object at 0x7fb6a97bb7f0>
     span = <Span(transaction='/backoffice/', trace_id='273c83993d8f49c5a4c436db26f5ee0b', span_id='91e0540336fd5825', parent_span_id=None, sampled=False)>
     start_response = <built-in function uwsgi_spit>

  File "/usr/lib/python3/dist-packages/sentry_sdk/integrations/django/__init__.py", line 108, in sentry_patched_wsgi_handler
   106             bound_old_app = old_app.__get__(self, WSGIHandler)
   107 
>  108             return SentryWsgiMiddleware(bound_old_app)(environ, start_response)
   109 
   110         WSGIHandler.__call__ = sentry_patched_wsgi_handler

  locals: 
     WSGIHandler = <class 'django.core.handlers.wsgi.WSGIHandler'>
     bound_old_app = <bound method WSGIHandler.__call__ of <django.core.handlers.wsgi.WSGIHandler object at 0x7fb6ab755d00>>
     environ = {'REQUEST_METHOD': 'GET', 'REQUEST_URI': '/backoffice/workflows/89/status/0/reassign', 'PATH_INFO': '/backoffice/workflows/89/status/0/reassign', 'QUERY_STRING': '', 'SERVER_PROTOCOL': 'HTTP/1.0', 'SCRIPT_NAME': '', 'SERVER_NAME': 'wcs', 'SERVER_PORT': '80', 'REMOTE_ADDR': '94.224.199.241', 'HTTP_HOST': 'demarches-validation.test.entrouvert.org', 'HTTP_X_FORWARDED_SSL': 'on', 'HTTP_X_FORWARDED_PROTOCOL': 'ssl', 'HTTP_X_FORWARDED_PROTO': 'https', 'HTTP_X_REAL_IP': '94.224.199.241', 'HTTP_X_FORWARDED_FOR': '94.224.199.241, 94.224.199.241', 'HTTP_CONNECTION': 'close', 'HTTP_USER_AGENT': 'Mozilla/5.0 (X11; Linux x86_64; rv:106.0) Gecko/20100101 Firefox/106.0', 'HTTP_ACCEPT': 'text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,*/*;q=0.8', 'HTTP_ACCEPT_LANGUAGE': 'fr,fr-FR;q=0.8,en;q=0.5,en-US;q=0.3', 'HTTP_ACCEPT_ENCODING': 'gzip, deflate, br', 'HTTP_REFERER': 'https://demarches-validation.test.entrouvert.org/backoffice/workflows/89/status/0/', 'HTTP_DNT': '1', 'HTTP_UPGRADE_INSECURE_REQUESTS': '1', 'HTTP_SEC_FETCH_DEST': 'document', 'HTTP_SEC_FETCH_MODE': 'navigate', 'HTTP_SEC_FETCH_SITE': 'same-origin', 'HTTP_SEC_FETCH_USER': '?1', 'HTTP_X_ENTROUVERT': '1', 'HTTP_COOKIE': 'publik_portal_agent_url=https%3A%2F%2Fagents-validation.test.entrouvert.org%2F; publik_portal_agent_title=Portail%20Agent; sessionid-wcs-8c8f12="5ai6kEr3oZUdYsTARg69Uw"; a2-opened-session-5a653e=a63cb6fb4d0d43bfa9bb9a63b859e755; sessionid-wcs-8c8f12-passive-auth-tried="1"; a2-opened-session-8056bf=82d9f2cc401d40e097d4e688ce700d53; a2-opened-session-0bd803=7b5509bc59ee4580889bb652471e7c3f; a2-opened-session-e67dd8=b929ad98e06b42e681fea44d1984cf43; a2-opened-session-3cd550=ea3ec27dbaf247de9c7c75c069697549; a2-opened-session-88d6a4=b576dbbd308a4627a5c13fb345f78ada; a2-opened-session-740ca9=8de5bcc7e791400489807a63e47abe7f; gadjo_sidepage_status=collasped', 'HTTP_X_PUBLIK_CLUSTER_BACKEND': 'wcs-balancer', 'wsgi.input': <uwsgi._Input object at 0x7fb6a9599990>, 'wsgi.file_wrapper': <built-in function uwsgi_sendfile>, 'wsgi.version': (1, 0), 'wsgi.errors': <_io.TextIOWrapper name=2 mode='w' encoding='UTF-8'>, 'wsgi.run_once': False, 'wsgi.multithread': False, 'wsgi.multiprocess': True, 'wsgi.url_scheme': 'https', 'uwsgi.version': b'2.0.19.1-debian', 'uwsgi.node': b'wcs'}
     old_app = <function WSGIHandler.__call__ at 0x7fb6ab73caf0>
     self = <django.core.handlers.wsgi.WSGIHandler object at 0x7fb6ab755d00>
     start_response = <built-in function uwsgi_spit>

Cookies:
a2-opened-session-0bd803 '7b5509bc59ee4580889bb652471e7c3f'
a2-opened-session-3cd550 'ea3ec27dbaf247de9c7c75c069697549'
a2-opened-session-5a653e 'a63cb6fb4d0d43bfa9bb9a63b859e755'
a2-opened-session-740ca9 '8de5bcc7e791400489807a63e47abe7f'
a2-opened-session-8056bf '82d9f2cc401d40e097d4e688ce700d53'
a2-opened-session-88d6a4 'b576dbbd308a4627a5c13fb345f78ada'
a2-opened-session-e67dd8 'b929ad98e06b42e681fea44d1984cf43'
gadjo_sidepage_status 'collasped'
publik_portal_agent_title 'Portail%20Agent'
publik_portal_agent_url 'https%3A%2F%2Fagents-validation.test.entrouvert.org%2F'
sessionid-wcs-8c8f12 '5ai6kEr3oZUdYsTARg69Uw'
sessionid-wcs-8c8f12-passive-auth-tried '1'

Environment:
HTTP_ACCEPT     'text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,*/*;q=0.8'
HTTP_ACCEPT_ENCODING 'gzip, deflate, br'
HTTP_ACCEPT_LANGUAGE 'fr,fr-FR;q=0.8,en;q=0.5,en-US;q=0.3'
HTTP_CONNECTION 'close'
HTTP_COOKIE     'publik_portal_agent_url=https%3A%2F%2Fagents-validation.test.entrouvert.org%2F; publik_portal_agent_title=Portail%20Agent; sessionid-wcs-8c8f12="5ai6kEr3oZUdYsTARg69Uw"; a2-opened-session-5a653e=a63cb6fb4d0d43bfa9bb9a63b859e755; sessionid-wcs-8c8f12-passive-auth-tried="1"; a2-opened-session-8056bf=82d9f2cc401d40e097d4e688ce700d53; a2-opened-session-0bd803=7b5509bc59ee4580889bb652471e7c3f; a2-opened-session-e67dd8=b929ad98e06b42e681fea44d1984cf43; a2-opened-session-3cd550=ea3ec27dbaf247de9c7c75c069697549; a2-opened-session-88d6a4=b576dbbd308a4627a5c13fb345f78ada; a2-opened-session-740ca9=8de5bcc7e791400489807a63e47abe7f; gadjo_sidepage_status=collasped'
HTTP_DNT        '1'
HTTP_HOST       'demarches-validation.test.entrouvert.org'
HTTP_REFERER    'https://demarches-validation.test.entrouvert.org/backoffice/workflows/89/status/0/'
HTTP_SEC_FETCH_DEST 'document'
HTTP_SEC_FETCH_MODE 'navigate'
HTTP_SEC_FETCH_SITE 'same-origin'
HTTP_SEC_FETCH_USER '?1'
HTTP_UPGRADE_INSECURE_REQUESTS '1'
HTTP_USER_AGENT 'Mozilla/5.0 (X11; Linux x86_64; rv:106.0) Gecko/20100101 Firefox/106.0'
HTTP_X_ENTROUVERT '1'
HTTP_X_FORWARDED_FOR '94.224.199.241, 94.224.199.241'
HTTP_X_FORWARDED_PROTO 'https'
HTTP_X_FORWARDED_PROTOCOL 'ssl'
HTTP_X_FORWARDED_SSL 'on'
HTTP_X_PUBLIK_CLUSTER_BACKEND 'wcs-balancer'
HTTP_X_REAL_IP  '94.224.199.241'
PATH_INFO       '/backoffice/workflows/89/status/0/reassign'
QUERY_STRING    ''
REMOTE_ADDR     '94.224.199.241'
REMOTE_USER     '2'
REQUEST_METHOD  'GET'
REQUEST_URI     '/backoffice/workflows/89/status/0/reassign'
SCRIPT_NAME     ''
SERVER_NAME     'wcs'
SERVER_PORT     '80'
SERVER_PROTOCOL 'HTTP/1.0'
uwsgi.node      b'wcs'
uwsgi.version   b'2.0.19.1-debian'
wsgi.errors     <_io.TextIOWrapper name=2 mode='w' encoding='UTF-8'>
wsgi.file_wrapper <built-in function uwsgi_sendfile>
wsgi.input      <uwsgi._Input object at 0x7fb6a9599990>
wsgi.multiprocess True
wsgi.multithread False
wsgi.run_once   False
wsgi.url_scheme 'https'
wsgi.version    (1, 0)

Fichiers

Révisions associées

Révision 8a1896b8 (diff)
Ajouté par Frédéric Péters il y a plus d'un an

backoffice: fix status removal when there are several cards/forms (#70566)

Historique

#1

Mis à jour par Frédéric Péters il y a plus d'un an

  • Description mis à jour (diff)
  • Assigné à mis à Frédéric Péters
#2

Mis à jour par Frédéric Péters il y a plus d'un an

#3

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

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

Lauréline est appelée à la barre.

#4

Mis à jour par Frédéric Péters il y a plus d'un an

  • Statut changé de Solution validée à Résolu (à déployer)
commit 8a1896b8c43117fdf5af47477b4629d9fc10668d
Author: Frédéric Péters <fpeters@entrouvert.com>
Date:   Fri Oct 21 13:26:49 2022 +0200

    backoffice: fix status removal when there are several cards/forms (#70566)
#5

Mis à jour par Lauréline Guérin il y a plus d'un an

Je plaide coupable.

#6

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

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

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

Automatic expiration

Formats disponibles : Atom PDF