Hello Sasha,
The reason there are more than one value for each LSV is because each LSV contains more than one junction (choice of splice path). So the number of semicolon-separated values, for each column, depends on the number of junctions in the LSV. (there ordering will always be consistent)
The test of significance is not based on a per-gene level but rather per-LSV. I will defer to others to provide more in depth explanation of the default significance criterion.
There are t, s, and u/unk ; 's' is for source, a location on the splice graph where many possible paths diverge from. 't' is for target, the opposite, where many paths may converge to. (For example, a module will always begin with a source LSV and conclude with a target LSV). For the unknown lsv type, this is due to cases there the reference exon would be a "half exon" (shown as a small green dashed line in voila view, with one of the coordinates being '-1'). These are cases where the potential for a splice to an exon exists, but we were not able to find the other end of the exon in the data provided.
for dpsi values, 'mean_dpsi_per_lsv_junction' is probably the column that you are looking for. In this case the mean is over all experiments in the group. (voila TSV does not currently show data per individual experiment, if this is desired, it's probably best to group experiments individually in the build)