Description:
When saving a Wiki Document from the Desk (form view), the route field gets overwritten with a random hash, losing the original meaningful route.
Steps to reproduce:
- Install Frappe + Wiki alongside other apps (ERPNext, Frappe CRM, Frappe Helpdesk)
- Open a Wiki Document from the Desk
- Set or confirm a meaningful route (e.g.
docs/my-page)
- Save the document
- The
route field is replaced with a random hash
Expected behavior: The route should remain unchanged on save if it was already set.
Actual behavior: The route is replaced with a seemingly random hash value on every save.
Environment:
- Branch:
develop
- Works correctly: Frappe + Wiki only (clean install)
- Fails: Frappe + ERPNext + Payments + Frappe CRM + Frappe Helpdesk + Builder + Drive + Telephony +Wiki
Possible cause:
The Wiki Document DocType does not define an autoname property in its JSON definition, and the set_route() method only runs when self.route is falsy. This suggests another installed app may have a global doc_events hook (e.g. on "*" > validate or before_save) that clears or overwrites the route field before Wiki's own validate() runs. Since the issue only occurs when additional apps are installed alongside Wiki, a hook from ERPNext, Frappe CRM, or Frappe Helpdesk is likely interfering.
Description:
When saving a Wiki Document from the Desk (form view), the
routefield gets overwritten with a random hash, losing the original meaningful route.Steps to reproduce:
docs/my-page)routefield is replaced with a random hashExpected behavior: The
routeshould remain unchanged on save if it was already set.Actual behavior: The
routeis replaced with a seemingly random hash value on every save.Environment:
developPossible cause:
The
Wiki DocumentDocType does not define anautonameproperty in its JSON definition, and theset_route()method only runs whenself.routeis falsy. This suggests another installed app may have a globaldoc_eventshook (e.g. on"*">validateorbefore_save) that clears or overwrites theroutefield before Wiki's ownvalidate()runs. Since the issue only occurs when additional apps are installed alongside Wiki, a hook from ERPNext, Frappe CRM, or Frappe Helpdesk is likely interfering.