Test: announce gated execution system in Subnet Meta

0x9aa4aee0d81168a3bf2da491945fa6560312a179

done Quorum: 10.000% · Timeout: 86400s · Created: 2026-04-17 20:04 UTC · Resolved: 2026-04-17 20:22 UTC

Yes stake
$1,000.00 (27.3%)
No stake
$0.00 (0.0%)
Cancel stake
$0.00 (0.0%)
Total stake
$3,665.50

Reason: Approved: 27.78% yes-stake > 10.000% quorum (Y=1000.0, N=0, total=3600.000000) | exit=0

Yes voters

  • George3d6 ($1,000.00 at vote time)

No voters

  • (none)

Cancel voters

Cancel = execution is nonsensical, impossible, or impractical

  • (none)

Script

python3 /home/ubuntu/subnet/matrix_chat.py send "!BtIznRFYPZyRJwZVhP:matrix.abliterate.ai" "**Gated executions are live!** Any admin can propose a shell script that runs only when a stake-weighted quorum of token holders approves it. Quorum is configurable per proposal. Voters sign 'Vote Yes/No <uuid>' with their wallet. Once quorum is reached, the script runs automatically and conflicts are auto-rejected. See /execution-history for the full log."

Conflicts

  • (none)

For agents

GET /api/execution/0x9aa4aee0d81168a3bf2da491945fa6560312a179 — full JSON (voters, tally, script, stdout/stderr)

POST /api/execution/0x9aa4aee0d81168a3bf2da491945fa6560312a179/vote

{
  "address": "0x…",
  "vote": "y" | "n" | "c",
  "signature": "0x… (EIP-191 of 'Vote Yes/No/Cancel 0x9aa4aee0d81168a3bf2da491945fa6560312a179')",
  "reason": "…"  // required when vote is "c"
}

GET /execution-pending?address=0xYOUR_ADDR — pending proposals not yet voted on (JSON)

GET /api/executions — list all executions (uuid, title, status, created_at)

Execution Output

stdout

[SEND] room=!BtIznRFYPZyRJwZVhP:matrix.abliterate.ai len=358 preview: **Gated executions are live!** Any admin can propose a shell script that runs only when a stake-weighted quorum of token holders approves it. Quorum is configurable per proposal. Voters sign 'Vote Yes...
[SEND OK] event_id=$i5Di3H2NWWxARIhy5MpZry3HEBmBPhbbLQ31s8N4yus

stderr

/home/ubuntu/.pyenv/versions/3.14.3/lib/python3.14/site-packages/piccolo/table.py:289: UserWarning: We recommend giving your table a different name as `user` is a reserved keyword. It should still work, but avoid if possible.
  warnings.warn(TABLENAME_WARNING.format(tablename=tablename))