We have built our own workflow in Silverfin with several custom templates. Each template contains multiple as:file inputs. In some templates – seemingly at random – uploading a file results in the same file being uploaded multiple times.
In the most extreme case, a single upload action resulted in the file being uploaded 45 times, whereas only one upload was intended.
A few important points:
The issue occurs intermittently and is difficult to reproduce consistently.
It affects several different users.
It also occurs in a simple template.
We do not experience this behaviour in other (non‑custom) workflows.
Our Customer Success Manager and Silverfin Support cannot assist, as this concerns custom configuration.
Below is the minimal code where the issue still occurs:
{% comment %}Upload the tips{% endcomment %}
{% t = "upload_tips_return" default:"Upload the tips report here: " nl:"Upload hier de tips-rapportage: " %}
{% t "upload_tips_return" %}{% input custom.return.upload_tips_report as:file %}
We managed to reproduce the issue in our demo file:
After taking a quick look at the code in your demo file, what stands out is that you are using the same custom.namespace.key across multiple inputs. Each input should have a unique text property.
That said, after testing this myself in your demo file, I wasn’t able to reproduce the issue you described.
Could you let me know if updating the keys to be unique resolves the problem on your end?
is used only once. This key custom.return.upload_tips_report is not reused anywhere else. That is why we were unsure how to interpret your comment.
In the meantime, we have asked several colleagues to monitor the issue during the past three working days. Interestingly, no one has experienced multiple uploads during that period. This suggests that the incident we saw early last week may have been isolated and not caused by the Liquid code itself.
At this moment we cannot reproduce the issue either, even in the same demo file where it occurred previously.
If the behaviour reappears, we will gather more context and share it here. For now it seems to have resolved itself, but we will keep an eye on it.