Delivery-date: Tue, 30 Sep 2025 14:24:58 -0700 Received: from mail-oo1-f64.google.com ([209.85.161.64]) by mail.fairlystable.org with esmtps (TLS1.3) tls TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256 (Exim 4.94.2) (envelope-from ) id 1v3hqD-0001ZC-Pb for bitcoindev@gnusha.org; Tue, 30 Sep 2025 14:24:58 -0700 Received: by mail-oo1-f64.google.com with SMTP id 006d021491bc7-6431fa2572esf587619eaf.0 for ; Tue, 30 Sep 2025 14:24:57 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=googlegroups.com; s=20230601; t=1759267491; x=1759872291; darn=gnusha.org; h=list-unsubscribe:list-subscribe:list-archive:list-help:list-post :list-id:mailing-list:precedence:x-original-sender:mime-version :subject:references:in-reply-to:message-id:to:from:date:sender:from :to:cc:subject:date:message-id:reply-to; bh=cUkdUESGawRHgjaSsKZsoTg4+WEUNism/vTWiGubO30=; b=d8X1BCEvp8kcV4Tn7XikW/SUKsy0MHgmYJG/NhNFQAULPUr+DBY0AxUmh+l/xw+NYJ LzR3Qj0rmbqPM6LraARSi6spN58FALg0xQeRHyinD4RzbuolVxNJBdIG2Ev1DDgm5vNb cROZ03cNfnBrxkByiWNUiyyBzZK6iIAvOUGx6V2MgIlI3wG1LimKpBjuwEpGhwIwiweF JmtE07S3XB4VybqDqsbXokORYFeBLj2OCZ5opRVy90xlJ9K187xcdsXeGnik/bbNpOWR FadJ1qRRGh38/doej9s8v8DY65ntYzG6BZ5/ebY4jpBz55xpkoc3pVzG8eRtbe5NLJ5p dpVw== DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1759267491; x=1759872291; darn=gnusha.org; h=list-unsubscribe:list-subscribe:list-archive:list-help:list-post :list-id:mailing-list:precedence:x-original-sender:mime-version :subject:references:in-reply-to:message-id:to:from:date:from:to:cc :subject:date:message-id:reply-to; bh=cUkdUESGawRHgjaSsKZsoTg4+WEUNism/vTWiGubO30=; b=QCsqNHTnEZzldZovJlC1o2cU+n/BdEEKrn+SHXrguJbCh6aQ/hdzwehZqw6o3wMewD 5v+wC3W6qzDAXRpg3wTpvQvpF1HbPb+zTW+65LyQ2s15v17z3TJ2AFDGVrJteVVu4+6H kKE5rvOuIlqPNX1TLwdA0s2fXy6j27XJOS9ik4BRp6Sgk1Y5Z4KD4sIcWtbDnXgRA/j1 DuZsGNzDVE/XjS+I/ZCUfWgbJzrDB0ADLnLLyDH4/2EyxlABMreCZzgyRKRe3MqAkNA6 O43Pg72qfNbrfM5bhRMMfYcTvUQLsMKnA+uDtwd15pwPThBF2G/kH0/sCbm/OeQ3gXC1 Xtqw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1759267491; x=1759872291; h=list-unsubscribe:list-subscribe:list-archive:list-help:list-post :list-id:mailing-list:precedence:x-original-sender:mime-version :subject:references:in-reply-to:message-id:to:from:date:x-beenthere :x-gm-message-state:sender:from:to:cc:subject:date:message-id :reply-to; bh=cUkdUESGawRHgjaSsKZsoTg4+WEUNism/vTWiGubO30=; b=XzlQKLWPddRjjGuQ05IwJlfL5T+sDykW9ads4vv6jq7nVos3/FYl9hmXemDYo3d5Ow Fy4WmjU+gx94JHjzqqjT3xsAOvyOy1twUpknV7pfWniG079kU2P19kXrpT9tOGGNRWZp DEVjEHrGrep5pt+zOXiI4MYCZdxZ1Z3OFfmkgcV8Xw9PuhKhrmmpc1H3Tt/9myTFpiv5 yuMaGmsg6mXyTak8e1teOUSvFlxNAFPN/Hl427bswkEo/Z3GqLn4PdcrmwrsPzRvAYgK HhVtTIlGkCZJ3PD0gFRTtPrB0Zg37nIaNqjgM00n/F+0sOksVl1T+zyDkNaNyW+gR9qP BI8g== Sender: bitcoindev@googlegroups.com X-Forwarded-Encrypted: i=1; AJvYcCWx/JwItigw+/zOH6UiVvr1uxjzAOgIRJFcp8Y7Kk/2IGhRifyHcF4/3nvkkVgvjlIby5XyTOk/3vZt@gnusha.org X-Gm-Message-State: AOJu0Yyazs3CCe6RQWC076/4euE013T/l4W/oxcKWHVMpKxg33bOD8mE 0HKvUXhDUayaMlCKgAnb17svDooptBaFA58evle91NQ6qUSxs32i8wzC X-Google-Smtp-Source: AGHT+IGA4UampQqG/bY7zQLSyFvCU2ic1wR7TusC8aZVxwa0TcmKn+MfWxK7Lh7LETlfyGy/pT6PDQ== X-Received: by 2002:a05:6820:7703:b0:623:4395:de39 with SMTP id 006d021491bc7-64bba04851fmr722041eaf.2.1759267491141; Tue, 30 Sep 2025 14:24:51 -0700 (PDT) X-BeenThere: bitcoindev@googlegroups.com; h="ARHlJd79oi0K1y0gUDtRuGF60hZmLrKMpleTxDGcUZSsCKarHg==" Received: by 2002:a05:6820:504a:b0:648:c7d9:ba1 with SMTP id 006d021491bc7-648c7d90caals637054eaf.0.-pod-prod-07-us; Tue, 30 Sep 2025 14:24:44 -0700 (PDT) X-Received: by 2002:a05:6808:1445:b0:43f:9cff:51b0 with SMTP id 5614622812f47-43fa5766c2dmr350091b6e.28.1759267484272; Tue, 30 Sep 2025 14:24:44 -0700 (PDT) Received: by 2002:a05:690c:62c4:b0:720:768:1935 with SMTP id 00721157ae682-77f6fbf5cc4ms7b3; Tue, 30 Sep 2025 14:09:16 -0700 (PDT) X-Received: by 2002:a05:690c:8688:20b0:765:d606:307c with SMTP id 00721157ae682-77f6f279dd9mr17708297b3.22.1759266555819; Tue, 30 Sep 2025 14:09:15 -0700 (PDT) Date: Tue, 30 Sep 2025 14:09:15 -0700 (PDT) From: jeremy To: Bitcoin Development Mailing List Message-Id: <8c6bb024-437f-4122-8ae0-f8ed9b9c23e4n@googlegroups.com> In-Reply-To: References: Subject: Re: [bitcoindev] [BIP Proposal] Mempool Validation and Relay Policies via User-Defined Scripts MIME-Version: 1.0 Content-Type: multipart/mixed; boundary="----=_Part_888_1590725700.1759266555493" X-Original-Sender: Jeremy.L.Rubin@gmail.com Precedence: list Mailing-list: list bitcoindev@googlegroups.com; contact bitcoindev+owners@googlegroups.com List-ID: X-Google-Group-Id: 786775582512 List-Post: , List-Help: , List-Archive: , List-Unsubscribe: , X-Spam-Score: -0.5 (/) ------=_Part_888_1590725700.1759266555493 Content-Type: multipart/alternative; boundary="----=_Part_889_1119372769.1759266555493" ------=_Part_889_1119372769.1759266555493 Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable Bitcoin already has a built in user defined script language: Bitcoin Script= . If you add a couple conditionally verified opcodes (the same ones necessary= =20 for covenants), you could write whatever filter you like, and we'd learn=20 more about what the best opcodes are for writing covenants. You would execute the script "pretending" to be input 0. We would then at least learn something about covenants. On Tuesday, September 30, 2025 at 2:22:10=E2=80=AFAM UTC-4 Aiden McClelland= wrote: > /dev/fd0, > > I appreciate the comments. A txnotify solution could work, although it=20 > loses a lot of the modularity and sandboxing of what I'm proposing. It=20 > would probably result in a single external binary, running all of the=20 > policy validation logic, rather than a bundle of scripts you can mix and= =20 > match. And it might encourage solutions that involve fetching relay=20 > policies over the internet, which is probably not ideal. Ideally, updatin= g=20 > policy should require user action.=20 > > Thanks,=20 > Aiden McClelland > > > > On September 27, 2025 7:22:28 PM MDT, /dev /fd0 =20 > wrote: > >> Hi Aiden, >> >> There is an easy solution based on my understanding of [transaction=20 >> validation][0] although I have not tested it: >> >> 1. Add a config option `txnotify` similar to `blocknotify` that executes= =20 >> commands or script when a new transaction is received from a peer. >> 2. Add a function `ExecuteTxNotify()` that will run the script provided= =20 >> by the user in step 1. Script should either return 'accept' for 'reject'= =20 >> and function would return true/false accordingly. >> 3. Call `ExecuteTxNotify()` in ` AcceptToMemoryPool()` so that rejected= =20 >> transactions do not enter the mempool. >> >> [0]: https://bitcoincore.academy/transaction-validation.html >> >> /dev/fd0 >> floppy disk guy >> >> On Thu, Sep 25, 2025 at 12:00=E2=80=AFAM Aiden McClelland =20 >> wrote: >> >>> Hi all, >>> >>> I'd like to share for discussion a draft BIP to allow for a modular=20 >>> mempool/relay policy: https://github.com/bitcoin/bips/pull/1985 >>> >>> I think it could potentially reduce conflict within the community aroun= d=20 >>> relay policy, as an alternative to running lots of different node=20 >>> implementations/forks when there are disagreements. >>> >>> I am working on a reference implementation using Bellard's QuickJS, but= =20 >>> it has been almost a decade since I've written C++, so it's slow going = and=20 >>> I'm sure doesn't follow best-practices. Once it's working, it can be=20 >>> cleaned up. >>> >>> Thanks, >>> Aiden McClelland >>> >>> --=20 >>> You received this message because you are subscribed to the Google=20 >>> Groups "Bitcoin Development Mailing List" group. >>> To unsubscribe from this group and stop receiving emails from it, send= =20 >>> an email to bitcoindev+...@googlegroups.com. >>> To view this discussion visit=20 >>> https://groups.google.com/d/msgid/bitcoindev/cbdab6fa-93bc-44c9-80f0-6c= 68c6554f56n%40googlegroups.com=20 >>> >>> . >>> >> --=20 You received this message because you are subscribed to the Google Groups "= Bitcoin Development Mailing List" group. To unsubscribe from this group and stop receiving emails from it, send an e= mail to bitcoindev+unsubscribe@googlegroups.com. To view this discussion visit https://groups.google.com/d/msgid/bitcoindev/= 8c6bb024-437f-4122-8ae0-f8ed9b9c23e4n%40googlegroups.com. ------=_Part_889_1119372769.1759266555493 Content-Type: text/html; charset="UTF-8" Content-Transfer-Encoding: quoted-printable Bitcoin already has a built in user defined script language: Bitcoin Script= .

If you add a couple conditionally verified opcodes (= the same ones necessary for covenants), you could write whatever filter you= like, and we'd learn more about what the best opcodes are for writing cove= nants.

You would execute the script "pretending"= to be input 0.

We would then at least learn som= ething about covenants.
On Tuesday, September 30, 2025 at 2:22:10=E2=80=AFAM UT= C-4 Aiden McClelland wrote:
/dev/fd0,

I appreciate the com= ments. A txnotify solution could work, although it loses a lot of the modul= arity and sandboxing of what I'm proposing. It would probably result in= a single external binary, running all of the policy validation logic, rath= er than a bundle of scripts you can mix and match. And it might encourage s= olutions that involve fetching relay policies over the internet, which is p= robably not ideal. Ideally, updating policy should require user action.
Thanks,
Aiden McClelland



On September 27, 2025 7:22:28 PM MDT, /= dev /fd0 <alice...@gmail.com<= /a>> wrote:

= On Thu, Sep 25, 2025 at 12:00=E2=80=AFAM Aiden McClelland <m...@drbonez.dev> wrote:
Hi all,

I'd like to share for discussion a draft BIP to allow for a mo= dular mempool/relay policy: https://github.com/bitcoin/bips/pull/1985

I think it could potentially reduce conflict within the community around r= elay policy, as an alternative to running lots of different node implementa= tions/forks when there are disagreements.

I am wor= king on a reference implementation using Bellard's QuickJS, but it has = been almost a decade since I've written C++, so it's slow going and= I'm sure doesn't follow best-practices. Once it's working, it = can be cleaned up.

Thanks,
Aiden McClell= and

--
You received this message because you are subscribed to the Google Groups &= quot;Bitcoin Development Mailing List" group.
To unsubscribe from this group and stop receiving emails from it, send an e= mail to bitcoindev+...@googlegro= ups.com.
To view this discussion visit https= ://groups.google.com/d/msgid/bitcoindev/cbdab6fa-93bc-44c9-80f0-6c68c6554f5= 6n%40googlegroups.com.

--
You received this message because you are subscribed to the Google Groups &= quot;Bitcoin Development Mailing List" group.
To unsubscribe from this group and stop receiving emails from it, send an e= mail to bitcoind= ev+unsubscribe@googlegroups.com.
To view this discussion visit https://groups.google.com/d/msgid/bitcoind= ev/8c6bb024-437f-4122-8ae0-f8ed9b9c23e4n%40googlegroups.com.
------=_Part_889_1119372769.1759266555493-- ------=_Part_888_1590725700.1759266555493--