Transaction Weight Assignment

Flex is a community-owned platform that rapidly boosts dApp user growth through a multi-chain, proof-of-collaboration protocol. How weights are assigned to each transaction action:

Transaction action weights are assigned through decentralized on-chain voting. An action is represented as a floating-point number between 1 and 10. The weight assigned to an action is constant for all users, regardless of their past actions. Transaction weight assignment to actions is performed by the Validation Layer of the Flex Node.

Weight assignment

Transaction weights are assigned as follows:

Weighted List generation

Weighted transaction pool structure

Illustration:

// Weighted Transaction Pool

{
    "wallets": [
        {
            "address": "0x1234567890abcdef1234567890abcdef12345678",
            "total_historical_weight": 10.3,
            "per_epoch_weight": [0.5, 0.8, 1.2, 1.0, 0.9, 1.5, 0.6],
            "actions": {
                "onchain": [
                    {
                        "action_id": "onchain_001",
                        "action_weight": 1.5
                    },
                    {
                        "action_id": "onchain_002",
                        "action_weight": 2.1
                    }
                ],
                "offchain": [
                    {
                        "action_id": "offchain_001",
                        "action_weight": 0.9
                    },
                    {
                        "action_id": "offchain_002",
                        "action_weight": 1.2
                    }
                ]
            }
        },
        {
            "address": "0xabcdef1234567890abcdef1234567890abcdef12",
            "total_historical_weight": 9.6,
            "per_epoch_weight": [0.4, 0.7, 1.1, 1.0, 0.8, 1.2, 0.4],
            "actions": {
                "onchain": [
                    {
                        "action_id": "onchain_003",
                        "action_weight": 2.5
                    },
                    {
                        "action_id": "onchain_004",
                        "action_weight": 1.8
                    }
                ],
                "offchain": [
                    {
                        "action_id": "offchain_003",
                        "action_weight": 1.4
                    },
                    {
                        "action_id": "offchain_004",
                        "action_weight": 0.8
                    }
                ]
            }
        }
    ]
}

Last updated