Quorum Logic

function _quorumReached(uint256 proposalId) internal view virtual override returns (bool) {
        ProposalVote storage proposalvote = _proposalVotes[proposalId];

        return quorum(proposalSnapshot(proposalId)) <= proposalvote.forVotes + proposalvote.abstainVotes;
        

For + Abstain. Linha 73, do GovernorCountingSimpleUpgreadable.sol

function _voteSucceeded(uint256 proposalId) internal view virtual override returns (bool) {
        ProposalVote storage proposalvote = _proposalVotes[proposalId];

        return proposalvote.forVotes > proposalvote.againstVotes;
    }

To approve a proposal, For > Against. Line 82, GovernorCountingSimpleUpgreadable.sol

Proposal threshold: 1M $ARB

// @notice Votes required for proposal.
    function proposalThreshold()
        public
        view
        override(GovernorSettingsUpgradeable, GovernorUpgradeable)
        returns (uint256)
    {
        return GovernorSettingsUpgradeable.proposalThreshold();

Line 154, L2ArbitrumGovernor.sol

Quorum needed (Votable Supply)

    /// @notice Calculates the quorum size, excludes token delegated to the exclude address
    function quorum(uint256 blockNumber)
        public
        view
        override(IGovernorUpgradeable, GovernorVotesQuorumFractionUpgradeable)
        returns (uint256)
    {
        return (getPastCirculatingSupply(blockNumber) * quorumNumerator(blockNumber))
            / quorumDenominator();

Como a governança da Virtuals (e outras), usa um quorumNumerator/quorumDenominator.

quorumDenominator set to 10000

 * @dev Returns the current quorum numerator. See {quorumDenominator}.
     */
    function quorumNumerator() public view virtual returns (uint256) {
        return _quorumNumeratorHistory._checkpoints.length == 0 ? _quorumNumerator : _quorumNumeratorHistory.latest();
    }

Já o quorumNumerator é uma informação que é atualizada recorrentemente. *Linha 41, do GovernorVotesQuorumFractionUpgradeable.sol.*