OP_CAT to BIP 0003 format, add usecase and test vectors #2090

pull EthanHeilman wants to merge 7 commits into bitcoin:master from EthanHeilman:catupdate changing 2 files +72 −3
  1. EthanHeilman commented at 0:40 am on January 24, 2026: contributor
    • Add two use cases to motivation
    • Add BIP 003 versioning
    • Test vectors
  2. EthanHeilman marked this as a draft on Jan 24, 2026
  3. EthanHeilman force-pushed on Jan 24, 2026
  4. OP_CAT to BIP 0003 format, add usecase e681ec8739
  5. EthanHeilman force-pushed on Jan 24, 2026
  6. in bip-0347.mediawiki:115 in e681ec8739
    109@@ -106,6 +110,16 @@ An alternative implementation of OP_CAT can be found in Elements <ref>Roose S.,
    110 
    111 <references/>
    112 
    113+==Changelog==
    114+
    115+* __0.3.1   (2026-01-23) - Made compliant with BIP 003, use cases added. 
    


    murchandamus commented at 11:38 pm on January 25, 2026:
    Not an issue, just fyi: this was already BIP 3 compliant as the preambles of all BIPs were updated by #1820, and the Changelog section and Version header are only required when a BIP is changed after it has been advanced to Complete.
  7. murchandamus commented at 11:40 pm on January 25, 2026: member
    If you have have concluded all planned work on this proposal, have you considered advancing this BIP to Complete?
  8. murchandamus added the label BIP update by author on Jan 25, 2026
  9. EthanHeilman commented at 4:47 pm on January 26, 2026: contributor

    @murchandamus From a content perspective, I don’t plan to add anything else. If @arminsabouri agrees, I see no reason not to mark it as complete.

    If at some future point, in response to rough consensus we may create an activation client, I plan to document the activation details in this BIP. Rereading BIP 0003, it doesn’t say it explicitly, but it seems like the intention is for this to be done after the BIP is complete as part of preparing the BIP for deployed status. I’m I understanding BIP 0003 correctly here?

  10. arminsabouri commented at 9:26 pm on January 26, 2026: contributor
    Ack e681ec8739b8ed155bba64229201711b9205b975
  11. murchandamus commented at 10:37 pm on January 26, 2026: member

    Ethan wrote:

    If at some future point, in response to rough consensus we may create an activation client, I plan to document the activation details in this BIP. Rereading BIP 0003, it doesn’t say it explicitly, but it seems like the intention is for this to be done after the BIP is complete as part of preparing the BIP for deployed status. I’m I understanding BIP 0003 correctly here?

    You’re right, there is so far no explicit guidance regarding when the activation mechanism would be expected or how it should be formatted. Given that any deployment strategy matters only temporarily and doesn’t otherwise impact the content of the Specification, it seems reasonable to me that the activation mechanism may be added after a BIP is moved to Complete.

  12. draft --> complete 440bcf7c9d
  13. EthanHeilman marked this as ready for review on Feb 2, 2026
  14. in bip-0347.mediawiki:12 in 440bcf7c9d
     8+  Status: Complete
     9   Type: Specification
    10   Assigned: 2023-12-11
    11   License: BSD-3-Clause
    12   Discussion: 2023-10-21: https://lists.linuxfoundation.org/pipermail/bitcoin-dev/2023-October/022049.html [bitcoin-dev] Proposed BIP for OP_CAT
    13+  Version: 0.3.1
    


    murchandamus commented at 0:08 am on February 3, 2026:

    Bumped to 1.0.0 below:

    0  Version: 1.0.0
    
  15. in bip-0347.mediawiki:69 in 440bcf7c9d


    murchandamus commented at 0:08 am on February 3, 2026:
    Do you feel that this proposal needs test vectors? If so, they should be added/referenced for it to be moved to Complete. The Elements implementation does appear to have some that could perhaps be adapted: https://github.com/ElementsProject/elements/pull/495/changes/9fea017cf6b7b0e78c45df347a46cea34f37c82b

    EthanHeilman commented at 0:14 am on February 3, 2026:
    Good point! The reference implementation does have test vectors. I’ll update this PR with them when I get a moment

    murchandamus commented at 0:40 am on February 3, 2026:
    Great thanks!
  16. Update bip-0347.mediawiki
    Co-authored-by: Mark "Murch" Erhardt <murch@murch.one>
    2bdb6b2aef
  17. BIP347: Update table entry to complete db1e7c3de0
  18. murchandamus commented at 10:35 pm on February 27, 2026: member
    I noticed that the table entry was not updated along the preamble update, so I added a commit to fix the table entry.
  19. murchandamus added the label PR Author action required on Feb 27, 2026
  20. murchandamus added the label PR Author action required on Feb 27, 2026
  21. Merge branch 'bitcoin:master' into catupdate db2e32ec4c
  22. Fix breaking test afe6b73f55
  23. EthanHeilman force-pushed on Mar 2, 2026
  24. Add test vectors b6959a3e2e
  25. EthanHeilman force-pushed on Mar 2, 2026
  26. EthanHeilman renamed this:
    OP_CAT to BIP 0003 format, add usecase
    OP_CAT to BIP 0003 format, add usecase and test vectors
    on Mar 2, 2026
  27. EthanHeilman commented at 2:30 pm on March 2, 2026: contributor
    @murchandamus Added test vectors
  28. murchandamus commented at 3:30 pm on March 2, 2026: member
    Thanks, looks good
  29. murchandamus merged this on Mar 2, 2026
  30. murchandamus closed this on Mar 2, 2026

  31. murchandamus removed the label PR Author action required on Mar 5, 2026

github-metadata-mirror

This is a metadata mirror of the GitHub repository bitcoin/bips. This site is not affiliated with GitHub. Content is generated from a GitHub metadata backup.
generated: 2026-03-09 12:10 UTC

This site is hosted by @0xB10C
More mirrored repositories can be found on mirror.b10c.me