BlockScience / aztec-gddt

Aztec Granular Design Digital Twin
Apache License 2.0
10 stars 0 forks source link

Sanity Check: Why are slashes being sent to provers and not burnt? #300

Open SeanMcOwen opened 2 months ago

SeanMcOwen commented 2 months ago

In s_slashes_to_prover:

def s_slashes_to_prover(
    params: AztecModelParams,
    _2,
    _3,
    state: AztecModelState,
    signal: SignalEvolveProcess,
):
    """
    Logic for keeping track of how many slashes have occurred.
    """
    old_slashes_to_prover = state["slashes_to_provers"]
    transfers: Sequence[Transfer] = signal.get("transfers", [])  # type: ignore

    # Calculate the number of slashes of each type to add
    delta_slashes_prover = len(
        [
            transfer
            for transfer in transfers
            if (transfer.kind == TransferKind.slash_prover) and (transfer.to_prover == True)
        ]
    )

    updated_slashes_to_prover = old_slashes_to_prover + delta_slashes_prover

    return ("slashes_to_provers", updated_slashes_to_prover)
SeanMcOwen commented 2 months ago

Likewise for slashes to sequencer. Is this just a misnomer and it is saying that sequencers are the ones slashed with transfer.to_sequencer ?

jackhack00 commented 2 months ago