Hi all,
first some definition of notation (as introduced here:here)
{i} supported state i (chain of valid transitions & signatures present)
{i}* supported state on-chain
{i}-> (i+1)_A participant A made his move (from i to i+1 and signed it)
Now suppose we have a 3 participant channel with participants A,B,C in on-chain state i, A made his next move from the off-chain supported state {j}:
{i}* ->{j} → (j+1)_A
and B does not make his move (might be temporarily offline).
In the docu I read that forceMove challenging is only possible based on supported states (which in my opinion would be {j} but not (J+1)_A.
Is this understanding correct?
This would mean A could only challenge {j} (allowing then in the pessimistic path do defund based on the latest supported state which is OK and secure).
So we have
{i}* ->{j}* ->challenge and (j+1)_A of-chain known
however this would not allow for B coming online and responding such that:
{i}* ->{j}* → (j+1)_A ->(j+2)_B
right?
Or could we challenge as follows (showstopper: j+1 is not a supported state, might have outcome changes B and C do not agree upon):
{i}* ->{j}* → (j+1)_A *
such that B responding gives
{i}* ->{j}* → (j+1)_A * → (j+2)_B*
Therefore, the only solution is A or C challenging {j}
{i}* ->{j}* ->challenge and (j+1)_A of-chain known
now B could of-chain provide his ->(j+2)_B, and C his ->(j+3)_C on top, such that anybody could
checkpoint the resulting supported state {l} (j+1)_A
{i}* ->{j}* ->challenge-> checkpoint {l}*, with transition to {l}=(j+1)_A → (j+2)_B → (j+3)_C
However, in the respond docu, I read that the mover can respond with his move;
B in fact is the off-chain mover, but not the mover to the ‘challengeable’ state {j} (namely required to be a supported state).
A on the other hand could challenge {j} and repsond with his ->(j+1)_A move, which however leaves the channel in open, but not in challenge mode.
You see, I’m confused once again…
Alex