And I also found a related (unanswered) question here.
Indeed, when displaying only the nodes (i.e. spring.nodes), stream is updated as necessary.
app = pn.Row(
#spring,
spring.nodes,
selection
)
app
But this does not seem a right way (including the dumb workaround proposed by the author of that question). Any suggestions?