Your player is correct, roll once after the save is failed.
You have cited all relevant text and provided a good comparison.
My emphasis:
it rolls a d6 and subtracts the number rolled from all
Exactly one d6 is rolled at the start of the time, right after the trigger (the failed save), then that d6 is subtracted from all attack rolls and ability checks, as well as its Constitution saving throws to maintain concentration for the duration.
This is different from
Whenever a target makes an attack roll
Which makes it explicit that you make a roll whenever the condition (an attack roll or a saving throw) is met.
Generally spells only do what they say in their description, Synaptic Static (XGtE 167) has three related triggers,
- on the failed-save it takes damage, and
- after the failed-save, it makes one d6 roll to apply muddled thoughts for 1 minute.
- At the end of each turn when affected by muddled thoughts the creature makes a saving throw (each affected turn one roll, which is the number of turns that you are affected by the one d6 roll penalty created by muddled thoughts), on a success the effect (muddled thoughts) ends.
When does a trigger in spells allow for multiple instances of the triggered effects?
You are explicitly told whenever a trigger in spells allows for multiple instances of the triggered effects (as always, spells only do what they say in their description).
Whenever the word whenever is used which is a consistent practice for spells and is used in 10 cases for PHB spells (211-257) and in 6 cases for XGtE spells (151-168). Here is a selection (all XGtE content identifiers are modified; replaced by variables):
Bless (PHB 219):
Whenever a target makes an attack roll or a saving throw before the
spell ends, the target can roll a d4 and add the number rolled to the
attack roll or saving throw.
Bane (PHB 216):
Whenever a target that fails this saving throw makes an attack roll or
a saving throw before the spell ends, the target must roll a d4 and
subtract the number rolled from the attack roll or saving throw.
Find the Path (XGtE 241):
For the duration, [...] whenever you are presented with a choice of
paths along the way you, automatically determine
Ceremony (XGtE 151)
whenever the target makes an ability check, it can roll a d[x] and add
the number rolled to the ability check.
Shadow of Moil (XGtE 164):
whenever a creature [...] hits you with an attack, [...], dealing it
[x]d[y] [...] damage.
Temple of the Gods (XGtE 167):
whenever it makes an attack roll, an ability check, or a saving throw
[...], it must roll a d[x] and subtract the number rolled from the
d[y] roll.
When we look closely at this list, we can quickly identify how Synaptic Static could have been worded in a way that clearly and unambiguously allows for multiple instances of the triggered effects.
This is the actual structure of Synaptic Static:
A target takes [x]d[y] [...] damage on a failed save [...]. After a
failed save, a target [...] for 1 minute. During that time, it rolls a
d[z] and subtracts the number rolled from all its attack rolls and
ability checks, as well as its Constitution saving throws to maintain
concentration. The target can make [...] [w] saving throw at the end
of each of its turns, ending the effect on itself on a success.
This is how Synaptic Static could look if the caster would make a d6 roll for each attack/check/Con-save roll:
A target takes [x]d[y] [...] damage on a failed save [...]. After a
failed save, a target [...] for 1 minute. During that time, whenever
it makes an attack roll, an ability check, or a Constitution saving
throw to maintain concentration, it must roll a d[z] and subtract the
number rolled from the d20 roll. The target can make [...] [w] saving
throw at the end of each of its turns, ending the effect on itself on
a success.
Do dice have memory? Rarely, but does it matter concerning Synaptic Static?
Let us look away from spells for a moment and have a gander at the wizard's class feature Portent (PHB 116)
Starting at 2nd level when you choose this school, glimpses of the
future begin to press in on your awareness. When you finish a long
rest, roll two d20s and record the numbers rolled. You can replace any
attack roll, saving throw, or ability check made by you or a creature
that you can see with one of these foretelling rolls. You must choose
to do so before the roll, and you can replace a roll in this way only
once per turn.
This is not what is happening in Synaptic Static, you are not recording the die roll to use it later, you are making one die roll and thereafter for the duration of 1 minute or until the spell ends, you are affected by a negative impact on your rolls. This is a common principle found in duration spells and conditions. A negative effect impacts you throughout the duration of an effect that impacts your rolls, let us look at two examples:
Hex (PHB 251)
The target has disadvantage on ability checks made with the chosen
ability.
Paralyzed (PHB 291)
• The creature automatically fails Strength and Dexterity saving throws.
• Attack rolls against the creature have advantage.
But there is one thing that is very uncommon in Synaptic Static, that is: that you make a numeric roll for the negative impact that is subtracted from other rolls. There are only a few instances where this happens and Portent (PHB 116) is one of them, so is Bend Luck (PHB 103) and Lucky (PHB 167), but there are only two other spells that make a comparable die-roll for the negative impact. These spells are Bane (PHB 216) and Temple of the Gods (XGtE 167) and Temple of the Gods and Bane follow exactly the pattern of the trigger spells that allow for multiple instances of triggered effects by utilising the word whenever:
Temple of the Gods (XGtE 167):
Even if the creature can [...] hinders it; whenever it makes an attack
roll, an ability check, or a saving throw [...], it must roll a d[x]
and subtract the number rolled from the d[y] roll.
And Bane (PHB 216):
Whenever a target that fails this saving throw makes an attack roll or
a saving throw before the spell ends, the target must roll a d4 and
subtract the number rolled from the attack roll or saving throw.
As we can observe, Synaptic Static is clearly distinct from the precedent that these two spells set and from the convention of using the word whenever for a trigger in spells allows for multiple instances of the triggered effects.
We also have conventionally established that there are no secret rules that are based on dice-memory affecting spells due to the out-of-game or in-game recording of die-rolls that then would affect how spells function or any similar exclusive reasoning.
So we can make the educated assumption that a spell that applies a numeric negative impact for a duration via subtracting from die rolls would follow exactly the pattern of the trigger spells that allow for multiple instances of triggered effects by utilising the word whenever, and Synaptic Static does not do this. We can conclude that this ruling of the ambiguously worded text should plausibly weight on the side of the one d6 roll that for the affected duration of muddled thoughts is subtracted from the affected rolls uniformly.
So what do muddled thoughts effectively do?
They are similar to a condition that has one event (failed saving-throw) that triggers one roll which is resolved instantaneously (no recording required - used once and then forgotten immediately after resolving the effect that it mediates), and then that condition takes effect for a duration of 1 minute:
For example, subtract 3 from all attack rolls and ability checks, as well as Constitution-saving-throws to maintain concentration for the duration or until the spell ends.
Caveat: Do what is fun at your table and make your judgement foremost based on that. While I am convinced that the argument that I make is more plausible than the argument that Ryan Thompson makes, I also think that the term is ambiguous and that while their argument isn't convincing me, it also isn't implausible.