{
  "$schema": "https://degreesofsatoshi.com/encyclopedia/schemas/article-v1.json",
  "schemaVersion": "1.0.0",
  "id": "offchain-votes-onchain-execution",
  "canonical": "https://degreesofsatoshi.com/encyclopedia/offchain-votes-onchain-execution/",
  "collection": "defi",
  "title": "Off-chain votes and on-chain execution: following the authority chain",
  "description": "Follow a community vote from signed messages to the separate authority that can change contracts or move treasury funds.",
  "aliases": [
    "Snapshot vote does it execute transaction",
    "does a Snapshot vote move treasury funds"
  ],
  "dates": {
    "published": "2026-10-02",
    "modified": "2026-10-02",
    "verified": "2026-10-02T19:18:00.092Z",
    "dataAsOf": "2026-10-02"
  },
  "authorship": {
    "publisher": "Degrees of Satoshi editorial project",
    "process": "AI-assisted research and drafting with a separate automated source-verification pass; no external expert or named human review is implied."
  },
  "quickAnswer": {
    "text": "An off-chain vote records a decision without making every ballot an on-chain transaction. That result does not itself move treasury assets. Execution needs a separate mechanism: people controlling the relevant account, or a module that checks conditions and authorizes calls. Snapshot’s classic voting and its SafeSnap integration illustrate these separate steps.",
    "claimId": "offchain-votes-onchain-execution-quick-answer",
    "sourceIds": [
      "x425-defi-snapshot",
      "x425-defi-snapshot-safesnap",
      "x425-defi-oz-access"
    ]
  },
  "keyFacts": [
    {
      "label": "Classic voting",
      "value": "Snapshot’s classic platform records off-chain votes.",
      "sourceIds": [
        "x425-defi-snapshot"
      ],
      "id": "classic-voting",
      "claimId": "offchain-votes-onchain-execution-fact-classic-voting"
    },
    {
      "label": "Execution link",
      "value": "SafeSnap connects proposals to Safe transaction payloads through an oracle-based process.",
      "sourceIds": [
        "x425-defi-snapshot-safesnap"
      ],
      "id": "execution-link",
      "claimId": "offchain-votes-onchain-execution-fact-execution-link"
    },
    {
      "label": "Different product",
      "value": "Snapshot X is described as fully on-chain governance.",
      "sourceIds": [
        "x425-defi-snapshot"
      ],
      "id": "different-product",
      "claimId": "offchain-votes-onchain-execution-fact-different-product"
    }
  ],
  "prerequisites": [
    "decentralized-autonomous-organizations"
  ],
  "sections": [
    {
      "id": "example",
      "heading": "A passed budget still needs a transfer",
      "sourceIds": [
        "x425-defi-snapshot",
        "x425-defi-oz-access"
      ],
      "paragraphs": [
        "Imagine a community approves paying a contributor 5,000 units from its treasury. The vote records support, but the treasury account needs an authorized transaction that sends the correct asset to the correct recipient. A forum result, an off-chain ballot and an executed transfer are three different records.",
        "If a multisignature account retains discretion, its signers’ authority remains part of the process."
      ]
    },
    {
      "id": "module",
      "heading": "Read the bridge between decision and action",
      "sourceIds": [
        "x425-defi-snapshot-safesnap"
      ],
      "paragraphs": [
        "SafeSnap asks Reality.eth about the vote’s outcome, whether the proposal included the transaction payload and whether that payload matches the description. After resolution and the configured waiting process, the transactions can become executable. This adds oracle, dispute and module assumptions rather than making prose self-executing."
      ]
    },
    {
      "id": "verify",
      "heading": "Compare the authorized calls with the proposal",
      "sourceIds": [
        "x425-defi-snapshot-safesnap",
        "x425-defi-oz-governance"
      ],
      "paragraphs": [
        "Inspect target contracts, amounts and recipients in the proposed calls. Track whether the result is passed, queued, executable or executed. A later governance page should not label a vote as a completed transfer solely because the voting period ended successfully."
      ]
    }
  ],
  "faq": [
    {
      "question": "Are all Snapshot votes off-chain?",
      "answer": "The classic platform is off-chain, while Snapshot X is a separate on-chain governance system. Identify which product the community uses.",
      "sourceIds": [
        "x425-defi-snapshot"
      ]
    }
  ],
  "claims": [
    {
      "id": "offchain-votes-onchain-execution-quick-answer",
      "articleSlug": "offchain-votes-onchain-execution",
      "statement": "An off-chain vote records a decision without making every ballot an on-chain transaction. That result does not itself move treasury assets. Execution needs a separate mechanism: people controlling the relevant account, or a module that checks conditions and authorizes calls. Snapshot’s classic voting and its SafeSnap integration illustrate these separate steps.",
      "sourceIds": [
        "source-cbc7e9d7cf6252e0",
        "source-a23b06819b0568e9",
        "source-56dd3f4220f6fea2"
      ],
      "sourceLocators": [
        {
          "sourceId": "source-cbc7e9d7cf6252e0",
          "locator": "Voting; execution; Snapshot X"
        },
        {
          "sourceId": "source-a23b06819b0568e9",
          "locator": "How does it work; security recommendations"
        },
        {
          "sourceId": "source-56dd3f4220f6fea2",
          "locator": "Ownership; roles; delayed access"
        }
      ],
      "scope": {
        "collection": "defi",
        "dataAsOf": "2026-10-02",
        "blockHeight": null
      },
      "qualification": "",
      "evidenceStatus": "documented",
      "verification": {
        "status": "verified",
        "method": "independent automated source review",
        "checkedAt": "2026-10-02T19:18:00.092Z",
        "reviewer": "Independent automated verification — Codex root, separate from the DeFi drafting agent",
        "notes": [
          "Checked Snapshot classic versus SnapshotX and SafeSnap Reality.eth outcome/payload questions plus cooldown; vote result not itself an asset transfer."
        ]
      }
    },
    {
      "id": "offchain-votes-onchain-execution-fact-classic-voting",
      "articleSlug": "offchain-votes-onchain-execution",
      "statement": "Classic voting: Snapshot’s classic platform records off-chain votes.",
      "sourceIds": [
        "source-cbc7e9d7cf6252e0"
      ],
      "sourceLocators": [
        {
          "sourceId": "source-cbc7e9d7cf6252e0",
          "locator": "Voting; execution; Snapshot X"
        }
      ],
      "scope": {
        "collection": "defi",
        "dataAsOf": "2026-10-02",
        "blockHeight": null
      },
      "qualification": "",
      "evidenceStatus": "documented",
      "verification": {
        "status": "verified",
        "method": "independent automated source review",
        "checkedAt": "2026-10-02T19:18:00.092Z",
        "reviewer": "Independent automated verification — Codex root, separate from the DeFi drafting agent",
        "notes": [
          "Checked Snapshot classic versus SnapshotX and SafeSnap Reality.eth outcome/payload questions plus cooldown; vote result not itself an asset transfer."
        ]
      }
    },
    {
      "id": "offchain-votes-onchain-execution-fact-execution-link",
      "articleSlug": "offchain-votes-onchain-execution",
      "statement": "Execution link: SafeSnap connects proposals to Safe transaction payloads through an oracle-based process.",
      "sourceIds": [
        "source-a23b06819b0568e9"
      ],
      "sourceLocators": [
        {
          "sourceId": "source-a23b06819b0568e9",
          "locator": "How does it work; security recommendations"
        }
      ],
      "scope": {
        "collection": "defi",
        "dataAsOf": "2026-10-02",
        "blockHeight": null
      },
      "qualification": "",
      "evidenceStatus": "documented",
      "verification": {
        "status": "verified",
        "method": "independent automated source review",
        "checkedAt": "2026-10-02T19:18:00.092Z",
        "reviewer": "Independent automated verification — Codex root, separate from the DeFi drafting agent",
        "notes": [
          "Checked Snapshot classic versus SnapshotX and SafeSnap Reality.eth outcome/payload questions plus cooldown; vote result not itself an asset transfer."
        ]
      }
    },
    {
      "id": "offchain-votes-onchain-execution-fact-different-product",
      "articleSlug": "offchain-votes-onchain-execution",
      "statement": "Different product: Snapshot X is described as fully on-chain governance.",
      "sourceIds": [
        "source-cbc7e9d7cf6252e0"
      ],
      "sourceLocators": [
        {
          "sourceId": "source-cbc7e9d7cf6252e0",
          "locator": "Voting; execution; Snapshot X"
        }
      ],
      "scope": {
        "collection": "defi",
        "dataAsOf": "2026-10-02",
        "blockHeight": null
      },
      "qualification": "",
      "evidenceStatus": "documented",
      "verification": {
        "status": "verified",
        "method": "independent automated source review",
        "checkedAt": "2026-10-02T19:18:00.092Z",
        "reviewer": "Independent automated verification — Codex root, separate from the DeFi drafting agent",
        "notes": [
          "Checked Snapshot classic versus SnapshotX and SafeSnap Reality.eth outcome/payload questions plus cooldown; vote result not itself an asset transfer."
        ]
      }
    }
  ],
  "sources": [
    {
      "id": "x425-defi-snapshot",
      "label": "Snapshot documentation",
      "publisher": "Snapshot",
      "url": "https://docs.snapshot.box/",
      "locator": "Voting; execution; Snapshot X",
      "note": "Off-chain versus on-chain product distinctions.",
      "version": "Documentation retrieved for the 2026-10-02 editorial scope; content hash recorded",
      "checkedAt": "2026-10-02T18:53:22.895Z",
      "contentSha256": "6b6735e50aa42f438800154411b1c33bc180832ec036c01579d3da33f8993876",
      "recordId": "source-cbc7e9d7cf6252e0"
    },
    {
      "id": "x425-defi-snapshot-safesnap",
      "label": "SafeSnap",
      "publisher": "Snapshot",
      "url": "https://docs.snapshot.box/v1-interface/plugins/safesnap-reality",
      "locator": "How does it work; security recommendations",
      "note": "Oracle and execution module connect offchain vote to treasury action; parameters are configuration-specific.",
      "version": "Primary page retrieved 2026-10-02; hash recorded",
      "checkedAt": "2026-10-02T19:11:25.022Z",
      "contentSha256": "02c8e1117f0d348afbddc25ccf0e5999fc5bbb32c77ea03abff5a13f7dd556cd",
      "recordId": "source-a23b06819b0568e9"
    },
    {
      "id": "x425-defi-oz-access",
      "label": "Access Control",
      "publisher": "OpenZeppelin",
      "url": "https://docs.openzeppelin.com/contracts/5.x/access-control",
      "locator": "Ownership; roles; delayed access",
      "note": "Privileges beyond a locked LP position.",
      "version": "Documentation retrieved for the 2026-10-02 editorial scope; content hash recorded",
      "checkedAt": "2026-10-02T18:53:23.338Z",
      "contentSha256": "64d4904044619055e92ed628892df0be1db2aec6a37ccd1c14384b4348211c80",
      "recordId": "source-56dd3f4220f6fea2"
    },
    {
      "id": "x425-defi-oz-governance",
      "label": "How to set up on-chain governance",
      "publisher": "OpenZeppelin",
      "url": "https://docs.openzeppelin.com/contracts/5.x/governance",
      "locator": "Proposal threshold; quorum; Votes; snapshot",
      "note": "Governance gates, historical voting power and execution.",
      "version": "Documentation retrieved for the 2026-10-02 editorial scope; content hash recorded",
      "checkedAt": "2026-10-02T18:53:22.811Z",
      "contentSha256": "8cd8a9df31a3165f8f33dab4dfe215bbed6043818a09edfaf72c4600c1463843",
      "recordId": "source-5ae9ea0050b20bf7"
    }
  ],
  "related": {
    "articles": [
      "governance-timelocks",
      "governance-quorum-thresholds",
      "dao-treasury-runway"
    ],
    "dossiers": [],
    "wallets": []
  },
  "revisionHistory": [
    {
      "date": "2026-10-02",
      "kind": "published",
      "summary": "First publication after primary-source research and separate automated verification."
    }
  ],
  "citation": "Degrees of Satoshi editorial project. “Off-chain votes and on-chain execution: following the authority chain.” Published 2026-10-02; updated 2026-10-02. https://degreesofsatoshi.com/encyclopedia/offchain-votes-onchain-execution/"
}
