From 54db7648eb2edc2b2b3788f1a4728bcfcf513aee Mon Sep 17 00:00:00 2001 From: Rafael Cardenas Date: Thu, 16 Oct 2025 08:26:17 -0600 Subject: [PATCH 1/6] chore: test --- .vscode/launch.json | 4 +- tests/api/parse-db-tx.test.ts | 59 +++++++++++++++++++++---- tests/api/tsv/fuzzed-transactions-1.tsv | 11 +++++ 3 files changed, 65 insertions(+), 9 deletions(-) create mode 100644 tests/api/tsv/fuzzed-transactions-1.tsv diff --git a/.vscode/launch.json b/.vscode/launch.json index bb09966890..5478664005 100644 --- a/.vscode/launch.json +++ b/.vscode/launch.json @@ -236,7 +236,9 @@ "--runInBand", "--no-cache", "--config", - "${workspaceRoot}/tests/jest.config.api.js" + "${workspaceRoot}/tests/jest.config.api.js", + "-t", + "transaction parsing" ], "outputCapture": "std", "console": "integratedTerminal", diff --git a/tests/api/parse-db-tx.test.ts b/tests/api/parse-db-tx.test.ts index 570e607830..56b92436a5 100644 --- a/tests/api/parse-db-tx.test.ts +++ b/tests/api/parse-db-tx.test.ts @@ -1,12 +1,55 @@ +import { migrate } from '../utils/test-helpers'; +import { importEventsFromTsv } from '../../src/event-replay/event-replay'; import { decodeClarityValueList } from 'stacks-encoding-native-js'; +import * as supertest from 'supertest'; +import { PgSqlClient, timeout } from '@hirosystems/api-toolkit'; +import { ChainID } from '@stacks/common'; +import { ApiServer, startApiServer } from '../../src/api/init'; +import { PgWriteStore } from '../../src/datastore/pg-write-store'; -test('buggy parsing of contract-call args', () => { - // Contract-call args from tx 0xb066874942e97d6e7ecfedb999a788edf7fbdbe51ab4b172ea05e8ede9b0ae9c - const contractCallArgsWithEmptyList = - '000000030c00000007066865696768740100000000000000000000000000005cc20b6d65726b6c652d726f6f7402000000201302a1b1fa53c11ac01ce480937dcd1ef550b4799070878e20b3b97bb99b58ec056e62697473020000000424961417056e6f6e6365020000000434a32a2106706172656e740200000020d0c9ebf9784f0670eb9bfac963114a02cff58bdc2669000000000000000000000974696d657374616d70020000000452b003610776657273696f6e0200000004040000200c0000000403696e730b000000010c00000003086f7574706f696e740c0000000204686173680200000020e85fb1e809db705121d92f3ec7f9ea4bafd065a8651408f507223efa8ede146605696e64657802000000040300000009736372697074536967020000006b48304502210096638a2336c383a99b009025534ae00f0bb689888c3898e6723497324c92806802205a3eee656775961780676f48f2fc1514142cadcd49efe1893d75517ab47a7f620121022a0160b2ed13b803ddca6f6f04606f56dfadee571d683725c7a58d0ed199de790873657175656e63650200000004fdffffff086c6f636b74696d65020000000400000000046f7574730b000000000776657273696f6e0200000004010000000c00000003066861736865730b000000000a747265652d646570746801000000000000000000000000000000080874782d696e64657801ffffffffffffffffffffffffffffffff'; - const fnArgs = Buffer.from(contractCallArgsWithEmptyList, 'hex'); - const clarityVals = decodeClarityValueList(fnArgs); - clarityVals.map(c => { - expect(c.hex).not.toBe(''); +describe('transaction parsing', () => { + test('buggy parsing of contract-call args', () => { + // Contract-call args from tx 0xb066874942e97d6e7ecfedb999a788edf7fbdbe51ab4b172ea05e8ede9b0ae9c + const contractCallArgsWithEmptyList = + '000000030c00000007066865696768740100000000000000000000000000005cc20b6d65726b6c652d726f6f7402000000201302a1b1fa53c11ac01ce480937dcd1ef550b4799070878e20b3b97bb99b58ec056e62697473020000000424961417056e6f6e6365020000000434a32a2106706172656e740200000020d0c9ebf9784f0670eb9bfac963114a02cff58bdc2669000000000000000000000974696d657374616d70020000000452b003610776657273696f6e0200000004040000200c0000000403696e730b000000010c00000003086f7574706f696e740c0000000204686173680200000020e85fb1e809db705121d92f3ec7f9ea4bafd065a8651408f507223efa8ede146605696e64657802000000040300000009736372697074536967020000006b48304502210096638a2336c383a99b009025534ae00f0bb689888c3898e6723497324c92806802205a3eee656775961780676f48f2fc1514142cadcd49efe1893d75517ab47a7f620121022a0160b2ed13b803ddca6f6f04606f56dfadee571d683725c7a58d0ed199de790873657175656e63650200000004fdffffff086c6f636b74696d65020000000400000000046f7574730b000000000776657273696f6e0200000004010000000c00000003066861736865730b000000000a747265652d646570746801000000000000000000000000000000080874782d696e64657801ffffffffffffffffffffffffffffffff'; + const fnArgs = Buffer.from(contractCallArgsWithEmptyList, 'hex'); + const clarityVals = decodeClarityValueList(fnArgs); + clarityVals.map(c => { + expect(c.hex).not.toBe(''); + }); + }); + + describe('fuzzed tsvs', () => { + let db: PgWriteStore; + let client: PgSqlClient; + let api: ApiServer; + + beforeEach(async () => { + await migrate('up'); + db = await PgWriteStore.connect({ + usageName: 'tests', + withNotifier: true, + skipMigrations: true, + }); + client = db.sql; + api = await startApiServer({ datastore: db, chainId: ChainID.Testnet }); + + // set chainId env, because TSV import reads it manually + process.env['STACKS_CHAIN_ID'] = ChainID.Testnet.toString(); + }); + + afterEach(async () => { + await api.terminate(); + await db?.close(); + await migrate('down'); + }); + + test('parse fuzzed contract deployments', async () => { + await expect( + importEventsFromTsv('tests/api/tsv/fuzzed-transactions-1.tsv', 'archival', true, true) + ).resolves.not.toThrow(); + const tx = await supertest(api.server).get(`/extended/v1/tx`); + expect(tx.status).toBe(200); + }); }); }); diff --git a/tests/api/tsv/fuzzed-transactions-1.tsv b/tests/api/tsv/fuzzed-transactions-1.tsv new file mode 100644 index 0000000000..61ebc50dcd --- /dev/null +++ b/tests/api/tsv/fuzzed-transactions-1.tsv @@ -0,0 +1,11 @@ +1 2025-10-15T12:19:19.435Z /new_block {"anchored_cost":{"read_count":0,"read_length":0,"runtime":0,"write_count":0,"write_length":0},"block_hash":"0x0000000000000000000000000000000000000000000000000000000000000000","block_height":0,"block_time":null,"burn_block_hash":"0x0f9188f13cb7b2c71f2a335e3a4fc328bf5beb436012afca590b1a11466e2206","burn_block_height":0,"burn_block_time":0,"confirmed_microblocks_cost":{"read_count":0,"read_length":0,"runtime":0,"write_count":0,"write_length":0},"consensus_hash":"0x0000000000000000000000000000000000000000","cycle_number":null,"events":[],"index_block_hash":"0x55c9861be5cff984a20ce6d99d4aa65941412889bdc665094136429b84f8c2ee","matured_miner_rewards":[],"miner_txid":"0x0000000000000000000000000000000000000000000000000000000000000000","parent_block_hash":"0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff","parent_burn_block_hash":"0x0f9188f13cb7b2c71f2a335e3a4fc328bf5beb436012afca590b1a11466e2206","parent_burn_block_height":0,"parent_burn_block_timestamp":0,"parent_index_block_hash":"0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff","parent_microblock":"0x0000000000000000000000000000000000000000000000000000000000000000","parent_microblock_sequence":0,"pox_v1_unlock_height":205,"pox_v2_unlock_height":207,"pox_v3_unlock_height":210,"reward_set":null,"signer_bitvec":null,"tenure_height":0,"transactions":[]} +2 2025-10-15T12:19:20.850Z /new_burn_block {"burn_amount":0,"burn_block_hash":"0x18362fbd6322eb1f80cfe09dd8a7fc1f863e69b09b600fcbc4ee8c329efc3ae6","burn_block_height":241,"consensus_hash":"0xea3adc41ca93c14109488e94669fb137b586d898","parent_burn_block_hash":"0x41d9324ae8818b640954bd1b1d4668910f98c173b3e369e35f59f856606c6f41","reward_recipients":[{"amt":30000,"recipient":"mxXw9bceXuFB6HZjqriS527kTqt5H9VczT"},{"amt":30000,"recipient":"mpgvmF9DSDBrbxUY4rbsPmWkYakoDXr19j"}],"reward_slot_holders":["mxXw9bceXuFB6HZjqriS527kTqt5H9VczT","mpgvmF9DSDBrbxUY4rbsPmWkYakoDXr19j"]} +3 2025-10-15T12:19:21.671Z /drop_mempool_tx {"dropped_txids":["0x3b992a4281692254c2a70b3a43206121c1cd0c5bd040c3e1bc0f8c065ce45a40","0x85be865ac64da67e44fc3e9ced4cf00ba479596bce717ecd4fa595bd1df79258","0x19b6c649a4544850eb3489ab569895ba19c8115e109eefd8a5ec2a6543f6908f","0xb26d085e8b6ed667919b2da87c167fe24d6eecc0e432fb39d58384549a185f6c","0x4f3359754d9d3f895079f0f7d67e44c7288a2b851ea56c3f0cf6d69ea4368e88","0x4f6d5285bbc78535afb196238f30c20bf0d53130b88eba058f6b746c6478d3e5","0xa2d8732015a0a80873b03ccde05989c8ea682b79cd04e56f7e6ebbe34b16818b","0xe0c73c23b701e2b6f982a8f8b3e0ae797309bae127aa0a04e22ede026f04b514","0xee4a4ca4695d043ef71f9e779ead573c658840663fc9141208a6a93abe43ab09","0x9c62d1d465626e40e609f89015223d553bda6a0ffc70638def660e46a69e3c32","0x2cb8ac4f8eff487f135e4a41fc8f3ec1469affb0293693582bf9c42a526a539c","0x1275879a66660e39229e1779acd39d770b4361b284d26d4a01fbdeee850c4b09","0x016d91b936a3af531c1a011745acba126f5a6ef2694f9c7bb6c7a7e31e3a22f6","0x779ed80749fca8dd53feefbbc5bb1fcb394a6404975ed61f681c22f0df05f58e","0xabcf096b812d2e827595f974787e3ed952271ba43c8a268803a05e257f673f65","0x9ddf27b0b465e10965de2b6ea6edd7e057b4a798224de85bbb20f65485ff2c0d","0x485d4358f8f716fc99642fc97d3aaa74dc0d157833977d23290857801ef94948","0x0dc6acfa0f725c319fb68db3bf91d1b8d7a4ef102c7f618f89da8b420a6b3e7e","0xf15beb8453d82944019bb003c23c7ec5a77c9cf8677e2155e3bac611c5cc118f","0x99d6dab26df5a75854343b1aff072efc293f8961ca5b21f5960bbdd853bad9e1","0xe77dba0e1ba5f08a400a530d01f499885d5bb7e782a91174be6ac4494771044f","0x99364543a37f59d4ef24bc8e4cc2a897110e3b3ec72d70160c3f0845bed8bb1c","0x22943b89663be36e0f2fe24c115174a10c746c9c028eb236475667494b220938","0x3e8be2c12e3262f1755519e1f4632bffb6d8623639884523e171bc8900e8a9c5","0x4d0e5837d7aa547972348f5db32775eefd64183e6851fc106ed1e75eeae4de86","0x736ce2f862d0819ba907bfcaeb649c2ec33c1f3493fa1ea2a9eadc5e79b5f95c","0x15d2be3757fdf04fc448d31f274d5a9d294919b476f3050bdb78f69c14924f8b"],"new_txid":null,"reason":"StaleGarbageCollect"} +4 2025-10-15T12:19:22.008Z /new_mempool_tx ["0x808000000004007ce8e31e9120f4b3cb7bea0fed9de8556cadceb90000000000000006000000000000012c0001aae8c984d3294b3d20b9d0e181f76f6a2732e373f1dbb4e9b58e3b27bf5ce3124ffce0d606dae6ed07b7b1826a91ea53b4e103c7baaf4af0afd92249a39c47da03020000000000051a79596b2995032f42672a1610356aa2fe09886a6d00000000000003e800000000000000000000000000000000000000000000000000000000000000000000"] +5 2025-10-15T12:19:39.543Z /new_burn_block {"burn_amount":0,"burn_block_hash":"0x59757cb03a0ccae542bd920a3d79897a0a91c5fc8b69b93fda084a6445b75083","burn_block_height":242,"consensus_hash":"0x42870a8e44878002364c223ea12214c3ea856e69","parent_burn_block_hash":"0x18362fbd6322eb1f80cfe09dd8a7fc1f863e69b09b600fcbc4ee8c329efc3ae6","reward_recipients":[{"amt":30000,"recipient":"mt56SJB4aQRz8xA13gnkNnqxZc2dESq6Sq"},{"amt":30000,"recipient":"mpgvmF9DSDBrbxUY4rbsPmWkYakoDXr19j"}],"reward_slot_holders":["mt56SJB4aQRz8xA13gnkNnqxZc2dESq6Sq","mpgvmF9DSDBrbxUY4rbsPmWkYakoDXr19j"]} +6 2025-10-15T12:19:51.994Z /new_block {"anchored_cost":{"read_count":0,"read_length":0,"runtime":0,"write_count":0,"write_length":0},"block_hash":"0x0dec9b18c5fbac8e055af16f623a9de091547bc28eab425e3f466d1ebfa1c311","block_height":1,"block_time":1760530781,"burn_block_hash":"0x59757cb03a0ccae542bd920a3d79897a0a91c5fc8b69b93fda084a6445b75083","burn_block_height":242,"burn_block_time":1760530779,"confirmed_microblocks_cost":{"read_count":0,"read_length":0,"runtime":0,"write_count":0,"write_length":0},"consensus_hash":"0x42870a8e44878002364c223ea12214c3ea856e69","cycle_number":null,"events":[],"index_block_hash":"0xbc6fca2a33a69f09efed01a1037059ca030cbd5d6ff45b950d61d35bc0844131","matured_miner_rewards":[],"miner_signature":"0x00a64aa66f5a5a67287525dc7365e9a2f4fe87cc46ab7de79f808c97f27458766275fb7a08eac7f911239cb426e80d22d75d19aae2d932800ebbee9089ff84c8a0","miner_txid":"0xbd6bc6a6ce1d67cd50ac2506b0b030a1da8f54f72dd8be75eae58d4bda48e7b3","parent_block_hash":"0x302af639b1c96cc6cdcfb63eb0f1a561d682e93f0245f1360ebc66a3ea82ab70","parent_burn_block_hash":"0x41d9324ae8818b640954bd1b1d4668910f98c173b3e369e35f59f856606c6f41","parent_burn_block_height":240,"parent_burn_block_timestamp":1758561085,"parent_index_block_hash":"0x385ecab7e393cbf358a5d5f0497717b9ed4cf3ae62674a63c5d30361cb8fbc67","parent_microblock":"0x0000000000000000000000000000000000000000000000000000000000000000","parent_microblock_sequence":0,"pox_v1_unlock_height":205,"pox_v2_unlock_height":207,"pox_v3_unlock_height":210,"reward_set":null,"signer_bitvec":"0006000000013f","signer_signature":["00d0471ac273e12a9e4b6659b13e7a63fb9c3c9b4c66fafecb7e9616b66e8687214e81eafb0838d22a3cb341d8ceab7d0a5dc1877abe99fe2b597d18ba336f29e5","00e44ecf0a499d37c81b99682e6a10d7c8a9b8c94aee888774068b0ac4487764b476587206b5c2f159d976f4a664cc96a039cc62f269bb191475736633f2c9059f","01b91a8932b9199094a5d9979881e83c18cd34508e60ec8f79e94a11fe3383a0d85ddd5551fd7658e3094f46fe905b8565e7a018694529a54c382e5a766162ec2a"],"signer_signature_hash":"0x0dec9b18c5fbac8e055af16f623a9de091547bc28eab425e3f466d1ebfa1c311","tenure_height":38,"transactions":[{"burnchain_op":null,"contract_interface":null,"execution_cost":{"read_count":0,"read_length":0,"runtime":0,"write_count":0,"write_length":0},"microblock_hash":null,"microblock_parent_hash":null,"microblock_sequence":null,"raw_result":"0x0703","raw_tx":"0x80800000000400977f359b03205b91b8fad6b1b5ffe15b9356a58e000000000000001000000000000000000000fa3df571600aa63835cb16508b6bd52c8ed218460898743e6c53936fc4ca708b774915baf2ec1799b03973cadb43c821fa458ad4a5d75a47a384529f3c975b3a0102000000000742870a8e44878002364c223ea12214c3ea856e699abf57d22e1a6ab485563b7ecd291e507755be0542870a8e44878002364c223ea12214c3ea856e69385ecab7e393cbf358a5d5f0497717b9ed4cf3ae62674a63c5d30361cb8fbc670000000200977f359b03205b91b8fad6b1b5ffe15b9356a58e","status":"success","tx_index":0,"txid":"0x85b2cd7df13bd6a48a1d74a96abedd88de8dbda41753650a721448f2f87f4e53","vm_error":null},{"burnchain_op":null,"contract_interface":null,"execution_cost":{"read_count":0,"read_length":0,"runtime":0,"write_count":0,"write_length":0},"microblock_hash":null,"microblock_parent_hash":null,"microblock_sequence":null,"raw_result":"0x0703","raw_tx":"0x80800000000400977f359b03205b91b8fad6b1b5ffe15b9356a58e0000000000000011000000000000000000000234ee6eaa069a4268beac57295518bba3f71106408978c463f4cba510646c150a30c2dd2c59877bdf9deefb7333ad8f486c3ebe09c211c7c8b078d32743c6640102000000000800000000000000000000000000000000000000000000000000000000000000000a051a9fc096b05922733e9bece3ef6688317dbc9b63cacc6b255b024c1c176345fd901d52084499bc8270bf24b888d1b79505d403fb0b3402b242ba0ce0189836103df2e5eff308b43863facf346190d144c8c97420e531466e1ff20bb938c389ac27b13c190a","status":"success","tx_index":1,"txid":"0x472546987a4899887961d63909db342aa1992fdf1154e064978d366679fe6c2a","vm_error":null}]} +7 2025-10-15T12:19:53.618Z /new_block {"anchored_cost":{"read_count":0,"read_length":0,"runtime":0,"write_count":0,"write_length":0},"block_hash":"0xef89693f9b62e731466e63f41d02d7249782509d7c17d55d15dc366f572bd329","block_height":2,"block_time":1760530792,"burn_block_hash":"0x59757cb03a0ccae542bd920a3d79897a0a91c5fc8b69b93fda084a6445b75083","burn_block_height":242,"burn_block_time":1760530779,"confirmed_microblocks_cost":{"read_count":0,"read_length":0,"runtime":0,"write_count":0,"write_length":0},"consensus_hash":"0x42870a8e44878002364c223ea12214c3ea856e69","cycle_number":null,"events":[{"committed":true,"event_index":0,"stx_transfer_event":{"amount":"1000","memo":"00000000000000000000000000000000000000000000000000000000000000000000","recipient":"ST1WNJTS9JM1JYGK758B10DBAMBZ0K23ADP392SBV","sender":"ST1YEHRRYJ4GF9CYBFFN0ZVCXX1APSBEEQ5KEDN7M"},"txid":"0x516c07d6398d0ba082d1da053784da5bbfce2252102e486ba94bab9c693c4b0f","type":"stx_transfer_event"}],"index_block_hash":"0xd59f4117b08a79e802e207e541199fe652f48dd2942751f63e0ccd7eadafb4cc","matured_miner_rewards":[],"miner_signature":"0x008ca1983f763e356f987d14b9a06bdb85e661459db9f17c76783019110e149fd144273fe67bfe4e24574db41de748b3ea99d8dc499db028f7ffc21913384a6ac3","miner_txid":"0xbd6bc6a6ce1d67cd50ac2506b0b030a1da8f54f72dd8be75eae58d4bda48e7b3","parent_block_hash":"0x0dec9b18c5fbac8e055af16f623a9de091547bc28eab425e3f466d1ebfa1c311","parent_burn_block_hash":"0x59757cb03a0ccae542bd920a3d79897a0a91c5fc8b69b93fda084a6445b75083","parent_burn_block_height":242,"parent_burn_block_timestamp":1760530779,"parent_index_block_hash":"0xbc6fca2a33a69f09efed01a1037059ca030cbd5d6ff45b950d61d35bc0844131","parent_microblock":"0x0000000000000000000000000000000000000000000000000000000000000000","parent_microblock_sequence":0,"pox_v1_unlock_height":205,"pox_v2_unlock_height":207,"pox_v3_unlock_height":210,"reward_set":null,"signer_bitvec":"0006000000013f","signer_signature":["01d598b5eff640bde51cf1ee112707ea0784cdfb64660ff939f187e39dea5b2315639589dceff6c37895d9bf47d00ecceed320696b0cbc0fb1fb81769cd5d23dc6","00cbe3992b0c0e2b2f4b5f18000ce8950b89be94b369f040df084c276cfe190e9754e5e66c4f3a4e2c2c033c2815a9b5800b4a74cda01d5b6ec31a8d117e8858d0","00944ac65621fddd46f1acd31cd9b952eff196c4df9628d08d619959cca9bd184a59c6156063fd23bab95a2f5110a1d475a69bf8e0e544530371eb6994514b62a7"],"signer_signature_hash":"0xef89693f9b62e731466e63f41d02d7249782509d7c17d55d15dc366f572bd329","tenure_height":38,"transactions":[{"burnchain_op":null,"contract_interface":null,"execution_cost":{"read_count":0,"read_length":0,"runtime":0,"write_count":0,"write_length":0},"microblock_hash":null,"microblock_parent_hash":null,"microblock_sequence":null,"raw_result":"0x0703","raw_tx":"0x808000000004007ce8e31e9120f4b3cb7bea0fed9de8556cadceb90000000000000006000000000000012c0001aae8c984d3294b3d20b9d0e181f76f6a2732e373f1dbb4e9b58e3b27bf5ce3124ffce0d606dae6ed07b7b1826a91ea53b4e103c7baaf4af0afd92249a39c47da03020000000000051a79596b2995032f42672a1610356aa2fe09886a6d00000000000003e800000000000000000000000000000000000000000000000000000000000000000000","status":"success","tx_index":0,"txid":"0x516c07d6398d0ba082d1da053784da5bbfce2252102e486ba94bab9c693c4b0f","vm_error":null}]} +8 2025-10-15T12:19:54.475Z /new_burn_block {"burn_amount":0,"burn_block_hash":"0x7e9cf233430668edf0def6e973330b77008752353974d4bec9ab306b61c5d521","burn_block_height":243,"consensus_hash":"0x9fc86b5ad84b32903d91644e699ac5cfae4902df","parent_burn_block_hash":"0x59757cb03a0ccae542bd920a3d79897a0a91c5fc8b69b93fda084a6445b75083","reward_recipients":[{"amt":30000,"recipient":"mxXw9bceXuFB6HZjqriS527kTqt5H9VczT"},{"amt":30000,"recipient":"mt56SJB4aQRz8xA13gnkNnqxZc2dESq6Sq"}],"reward_slot_holders":["mxXw9bceXuFB6HZjqriS527kTqt5H9VczT","mt56SJB4aQRz8xA13gnkNnqxZc2dESq6Sq"]} +9 2025-10-15T12:19:54.914Z /new_mempool_tx ["0x8080000000040079596b2995032f42672a1610356aa2fe09886a6d0000000000000006000000000000012c00007874860186d7ec3c08c281d58e187d35f0f681fb37828ce139fb7372f13ff9093512d07d70ab94ed9f42395c7006c88a4bec72992c015ed07633af4aa025959d03020000000000051a68de2dbb6c14aaba2900031876ea3771599edd3a00000000000003e800000000000000000000000000000000000000000000000000000000000000000000"] +10 2025-10-15T12:19:56.890Z /new_mempool_tx ["0x80800000000400f3c02bb1ebdb185fc2ed28d8d4da3eede1a4bcc9000000000000000000000000009896800001b2d566c54101c2bb75135ead53ae67a9d0c3d92643cb19c242cf62f87c1b702c2565be5d4af27351ca936e9c0e17637ceb28ac17ee37a648fc0c5d3cf94800ff030200000000010977696e746572706f63000006a328696d706c2d747261697420275354313245593939475334594b50304350324346573653455057513243475652574b3547484b4452562e616476656e742d63616c656e6461722e646f6f722d7472616974290a0a28646566696e652d646174612d766172206d73672028737472696e672d757466382034303030292075224c6f6f6b20617420746865206c6f6773206f6620796f7572206e6f646520616e6420686176652061206e69636520416476656e7420736561736f6e2122290a28646566696e652d726561642d6f6e6c7920286f70656e290a202028626567696e0a287072696e742022202020202020202020202e20202020202e20202e2020202020202b20202020202e2020202020202e202020202020202020202e2020202020202020202020202022290a287072696e74202220202020202e202020202020202e2020202020202e202020202023202020202020202e20202020202020202020202e202020202020202020202020202020202022290a287072696e74202220202020202020202e2020202020202e2020202020202020202323232020202020202020202020202e2020202020202e2020202020202e20202020202020202022290a287072696e7420222020202020202e2020202020202e2020202a233a2e202e3a23232a232323232a20202e20202020202020202020202020202020202020202020202020202022290a287072696e742022202020202020202e20202020202a233a2e202020202e3a232a2323232a233a2e202020202e3a232a20202e20202020202020202e202020202020202e2020202022290a287072696e74202220202e202020202020202020202020202a2323232323232323232a2323232323232323232a20202020202020202e20202020202020202e20202020202020202022290a287072696e74202220202020202020202e202020202a233a2e20202a232323232a2323232a232323232a20202e3a232a2020202e202020202020202e20202020202020202020202022290a287072696e74202220202020202e20202020202e20202a232323232323232a2a23232a23232a2a232323232323232a2020202020202020202020202020202020202e20202020202022290a287072696e742022202020202020202020202020202020202e2a23232a23232323232a23232323232a23232a20202020202020202020202e2020202020202e20202020202020202022290a287072696e7420222020202020202e2020202020202e2020202a233a2e202e3a23232a23233a2e202e3a232a20202e2020202020202e20202020202020202020202020202020202022290a287072696e742022202020202020202020202e2020202020202e202a232323232a2323232a232323232a20202e20202020202020202020202020202020202020202020202020202022290a287072696e742022202020202020202e20202020202a233a2e202020202e3a232a2323232a233a2e202020202e3a232a20202e20202020202020202e202020202020202e2020202022290a287072696e74202220202e202020202020202020202020202a2323232323232323232a2323232323232323232a20202020202020202e20202020202020202e20202020202020202022290a287072696e74202220202020202020202e202020202a233a2e20202a232323232a2323232a232323232a20202e3a232a2020202e202020202020202e20202020202020202020202022290a287072696e74202220202020202e20202020202e20202a232323232323232a2a23232a23232a2a232323232323232a2020202020202020202020202020202020202e20202020202022290a287072696e742022202020202020202020202020202020202e2a23232a23232323232a23232323232a23232a20202020202020202020202e2020202020202e20202020202020202022290a287072696e7420222020202020202020202020202e20202020202a2020202020203030302020202020202a202020202e20202020202e202020202020202020202020205c305c6e2573242b24287863616c63292b696e66202020202022290a287072696e742022202020202020202e2020202020202020202e2020202e20202030303020202020202e20202020202020202e202020202020202e2020202020202020202020202022290a287072696e7420222e2e202e2e202e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e4f3030304f2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e202e2e2e2e2e2e202e2e2e22290a20202020286f6b20287072696e7420287661722d676574206d7367292929290a29"] +11 2025-10-15T12:19:57.070Z /new_block {"anchored_cost":{"read_count":0,"read_length":0,"runtime":0,"write_count":0,"write_length":0},"block_hash":"0xc076697171f9f4b4933770fe00669dab2ca7dafeb9383da73a32334d5485e705","block_height":3,"block_time":1760530795,"burn_block_hash":"0x7e9cf233430668edf0def6e973330b77008752353974d4bec9ab306b61c5d521","burn_block_height":243,"burn_block_time":1760530794,"confirmed_microblocks_cost":{"read_count":0,"read_length":0,"runtime":0,"write_count":0,"write_length":0},"consensus_hash":"0x9fc86b5ad84b32903d91644e699ac5cfae4902df","cycle_number":null,"events":[],"index_block_hash":"0xdd7b2092b0315f644868f2450df40eec415bbb30a91f71a97c49f1948a2d900d","matured_miner_rewards":[],"miner_signature":"0x0065d812c5feeac617962601de89c86f4311a289431c9a3a065636be999d12cd3b3e97c1cf378601a797a19e787764b1222040dba6f005d3beecb36014530fd192","miner_txid":"0x4dca60932937965a3142e04dd132b5d4e3e4ec274dbf04c0303bbfbe81620bc9","parent_block_hash":"0xef89693f9b62e731466e63f41d02d7249782509d7c17d55d15dc366f572bd329","parent_burn_block_hash":"0x59757cb03a0ccae542bd920a3d79897a0a91c5fc8b69b93fda084a6445b75083","parent_burn_block_height":242,"parent_burn_block_timestamp":1760530779,"parent_index_block_hash":"0xd59f4117b08a79e802e207e541199fe652f48dd2942751f63e0ccd7eadafb4cc","parent_microblock":"0x0000000000000000000000000000000000000000000000000000000000000000","parent_microblock_sequence":0,"pox_v1_unlock_height":205,"pox_v2_unlock_height":207,"pox_v3_unlock_height":210,"reward_set":null,"signer_bitvec":"0006000000013f","signer_signature":["018a96cee4e2ef8078a913b07c3fa2b17a1f37676b0dc53fd1094370ee4e3f658f208007bcfc6ee9b17484cba0c29bfe28afc19f946445d2b5bbcab1df2abf6886","018b0ba6b88897351fcd365e1e89832b8ae50b4a59419433c58fe60bedb79e2f7f773e849da4878d813fa77c5d0d87249f0fa36cc52668271990b09015a6c805c1","00471772afc6ec314e8d822e99f99fca100b4ecf6a7de2321bfd6f64171b845cfc089aecafd4c27ad0374caa574c2f17d5f62b3be32b87d277ffaf5ae0717018e8"],"signer_signature_hash":"0xc076697171f9f4b4933770fe00669dab2ca7dafeb9383da73a32334d5485e705","tenure_height":39,"transactions":[{"burnchain_op":null,"contract_interface":null,"execution_cost":{"read_count":0,"read_length":0,"runtime":0,"write_count":0,"write_length":0},"microblock_hash":null,"microblock_parent_hash":null,"microblock_sequence":null,"raw_result":"0x0703","raw_tx":"0x80800000000400cd06e933c001d19bf824a4c31864a5b27e0274e8000000000000000d00000000000000000000d3bc68e2c285e97189607dde2b937a9cff2bcc92bdf96e297d2d11fa61b3ee84060823f95ccf81ccd707c9f99e881200a9c9e6116dca7add809045935236cd74010200000000079fc86b5ad84b32903d91644e699ac5cfae4902df42870a8e44878002364c223ea12214c3ea856e699fc86b5ad84b32903d91644e699ac5cfae4902dfd59f4117b08a79e802e207e541199fe652f48dd2942751f63e0ccd7eadafb4cc0000000200cd06e933c001d19bf824a4c31864a5b27e0274e8","status":"success","tx_index":0,"txid":"0x98044adc0f4e4957ed86e4e018284e44f1d859a38cd2e013fc57ecdb9badc3fb","vm_error":null},{"burnchain_op":null,"contract_interface":null,"execution_cost":{"read_count":0,"read_length":0,"runtime":0,"write_count":0,"write_length":0},"microblock_hash":null,"microblock_parent_hash":null,"microblock_sequence":null,"raw_result":"0x0703","raw_tx":"0x80800000000400cd06e933c001d19bf824a4c31864a5b27e0274e8000000000000000e000000000000000000004cdbb11d388c5eec7f15737fbc1ce71ac94076315995408d4618b9cb79bbe0b766aa8b435a029f560f9340ff31fbe4c8f46114ea21636df00e133130766dc18d0102000000000800000000000000000000000000000000000000000000000000000000000000000a051aa8ec901f7775d4d09eef137cf238db131f68814e9f2699b4b6001e0ee0c871009baf7c574a2ac5be3dd7dca3cda3c56a84ef127bdac3975a7a4f71e67e6e00823717d8e95c5b228ec1c92a4181cd2a9c0f22b1d089809e9f184d1fe6c04bf1ba5a78cc0a","status":"success","tx_index":1,"txid":"0x660e84224512f71032e4adbbeee5539a55485f2121d248a3a96dfda332e8e22d","vm_error":null}]} From 28cfbd17ee5c30ed605614161953ecdf226b873e Mon Sep 17 00:00:00 2001 From: Rafael Cardenas Date: Sun, 19 Oct 2025 21:46:46 -0600 Subject: [PATCH 2/6] fix: manual event server --- src/datastore/helpers.ts | 4 +++ src/datastore/pg-write-store.ts | 14 ++++++-- src/event-stream/event-server.ts | 6 ++++ tests/api/parse-db-tx.test.ts | 43 +++++++++++++++++++++---- tests/api/tsv/fuzzed-transactions-1.tsv | 40 ++++++++++++++++------- 5 files changed, 87 insertions(+), 20 deletions(-) diff --git a/src/datastore/helpers.ts b/src/datastore/helpers.ts index 20cbeb042d..fa649218a7 100644 --- a/src/datastore/helpers.ts +++ b/src/datastore/helpers.ts @@ -1363,6 +1363,10 @@ export function newReOrgUpdatedEntities(): ReOrgUpdatedEntities { }; } +export function removeNullBytes(str: string): string { + return str.replace(/\x00/g, ''); +} + /** * Priority queue for parallel Postgres write query execution. This helps performance because it * parallelizes the work postgres.js has to do when serializing JS types to PG types. diff --git a/src/datastore/pg-write-store.ts b/src/datastore/pg-write-store.ts index f95ee8be02..55660448a7 100644 --- a/src/datastore/pg-write-store.ts +++ b/src/datastore/pg-write-store.ts @@ -78,6 +78,7 @@ import { validateZonefileHash, newReOrgUpdatedEntities, PgWriteQueue, + removeNullBytes, } from './helpers'; import { PgNotifier } from './pg-notifier'; import { MIGRATIONS_DIR, PgStore } from './pg-store'; @@ -203,6 +204,13 @@ export class PgWriteStore extends PgStore { } async storeRawEventRequest(eventPath: string, payload: any): Promise { + if (eventPath === '/new_block' && typeof payload === 'object') { + for (const tx of payload.transactions) { + if ('vm_error' in tx && tx.vm_error) { + tx.vm_error = removeNullBytes(tx.vm_error); + } + } + } await this.sqlWriteTransaction(async sql => { const insertResult = await sql< { @@ -2055,7 +2063,9 @@ export class PgWriteStore extends PgStore { token_transfer_memo: tx.token_transfer_memo ?? null, smart_contract_clarity_version: tx.smart_contract_clarity_version ?? null, smart_contract_contract_id: tx.smart_contract_contract_id ?? null, - smart_contract_source_code: tx.smart_contract_source_code ?? null, + smart_contract_source_code: tx.smart_contract_source_code + ? removeNullBytes(tx.smart_contract_source_code) + : null, contract_call_contract_id: tx.contract_call_contract_id ?? null, contract_call_function_name: tx.contract_call_function_name ?? null, contract_call_function_args: tx.contract_call_function_args ?? null, @@ -2078,7 +2088,7 @@ export class PgWriteStore extends PgStore { execution_cost_runtime: tx.execution_cost_runtime, execution_cost_write_count: tx.execution_cost_write_count, execution_cost_write_length: tx.execution_cost_write_length, - vm_error: tx.vm_error ?? null, + vm_error: tx.vm_error ? removeNullBytes(tx.vm_error) : null, })); let count = 0; diff --git a/src/event-stream/event-server.ts b/src/event-stream/event-server.ts index b02e41087c..30506d341c 100644 --- a/src/event-stream/event-server.ts +++ b/src/event-stream/event-server.ts @@ -822,6 +822,12 @@ export async function startEventServer(opts: { ignoreTrailingSlash: true, }); + // app.addHook('preHandler', (req, _reply) => { + // if (typeof req.body === 'string') { + // req.body = req.body.replace(/\x00/g, ''); + // } + // }); + app.addHook('onRequest', (req, reply, done) => { req.raw.on('close', () => { if (req.raw.aborted) { diff --git a/tests/api/parse-db-tx.test.ts b/tests/api/parse-db-tx.test.ts index 56b92436a5..b6fe139b48 100644 --- a/tests/api/parse-db-tx.test.ts +++ b/tests/api/parse-db-tx.test.ts @@ -1,11 +1,14 @@ import { migrate } from '../utils/test-helpers'; import { importEventsFromTsv } from '../../src/event-replay/event-replay'; import { decodeClarityValueList } from 'stacks-encoding-native-js'; -import * as supertest from 'supertest'; +import * as fs from 'fs'; +import * as readline from 'readline'; import { PgSqlClient, timeout } from '@hirosystems/api-toolkit'; import { ChainID } from '@stacks/common'; import { ApiServer, startApiServer } from '../../src/api/init'; import { PgWriteStore } from '../../src/datastore/pg-write-store'; +import { EventStreamServer, startEventServer } from '../../src/event-stream/event-server'; +import { httpPostRequest } from '../../src/helpers'; describe('transaction parsing', () => { test('buggy parsing of contract-call args', () => { @@ -23,6 +26,7 @@ describe('transaction parsing', () => { let db: PgWriteStore; let client: PgSqlClient; let api: ApiServer; + let eventServer: EventStreamServer; beforeEach(async () => { await migrate('up'); @@ -36,20 +40,45 @@ describe('transaction parsing', () => { // set chainId env, because TSV import reads it manually process.env['STACKS_CHAIN_ID'] = ChainID.Testnet.toString(); + + eventServer = await startEventServer({ + datastore: db, + chainId: ChainID.Testnet, + serverHost: '127.0.0.1', + serverPort: 0, + }); }); afterEach(async () => { await api.terminate(); + await eventServer.closeAsync(); await db?.close(); await migrate('down'); }); - test('parse fuzzed contract deployments', async () => { - await expect( - importEventsFromTsv('tests/api/tsv/fuzzed-transactions-1.tsv', 'archival', true, true) - ).resolves.not.toThrow(); - const tx = await supertest(api.server).get(`/extended/v1/tx`); - expect(tx.status).toBe(200); + test('parse fuzzed transactions', async () => { + const readStream = readline.createInterface({ + input: fs.createReadStream('tests/api/tsv/fuzzed-transactions-1.tsv', { encoding: 'utf8' }), + crlfDelay: Infinity, + }); + for await (const line of readStream) { + const [id, timestamp, eventPath, payload] = line.split('\t'); + await httpPostRequest({ + host: '127.0.0.1', + port: eventServer.serverAddress.port, + path: eventPath, + headers: { 'Content-Type': 'application/json' }, + body: Buffer.from(payload, 'utf8'), + throwOnNotOK: true, + }); + } + }); + + test('parse fuzzed transactions via event replay', async () => { + await importEventsFromTsv('tests/api/tsv/fuzzed-transactions-1.tsv', 'archival', true, true); + // await expect( + // importEventsFromTsv('tests/api/tsv/fuzzed-transactions-1.tsv', 'archival', true, true) + // ).resolves.not.toThrow(); }); }); }); diff --git a/tests/api/tsv/fuzzed-transactions-1.tsv b/tests/api/tsv/fuzzed-transactions-1.tsv index 61ebc50dcd..463f0bb837 100644 --- a/tests/api/tsv/fuzzed-transactions-1.tsv +++ b/tests/api/tsv/fuzzed-transactions-1.tsv @@ -1,11 +1,29 @@ -1 2025-10-15T12:19:19.435Z /new_block {"anchored_cost":{"read_count":0,"read_length":0,"runtime":0,"write_count":0,"write_length":0},"block_hash":"0x0000000000000000000000000000000000000000000000000000000000000000","block_height":0,"block_time":null,"burn_block_hash":"0x0f9188f13cb7b2c71f2a335e3a4fc328bf5beb436012afca590b1a11466e2206","burn_block_height":0,"burn_block_time":0,"confirmed_microblocks_cost":{"read_count":0,"read_length":0,"runtime":0,"write_count":0,"write_length":0},"consensus_hash":"0x0000000000000000000000000000000000000000","cycle_number":null,"events":[],"index_block_hash":"0x55c9861be5cff984a20ce6d99d4aa65941412889bdc665094136429b84f8c2ee","matured_miner_rewards":[],"miner_txid":"0x0000000000000000000000000000000000000000000000000000000000000000","parent_block_hash":"0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff","parent_burn_block_hash":"0x0f9188f13cb7b2c71f2a335e3a4fc328bf5beb436012afca590b1a11466e2206","parent_burn_block_height":0,"parent_burn_block_timestamp":0,"parent_index_block_hash":"0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff","parent_microblock":"0x0000000000000000000000000000000000000000000000000000000000000000","parent_microblock_sequence":0,"pox_v1_unlock_height":205,"pox_v2_unlock_height":207,"pox_v3_unlock_height":210,"reward_set":null,"signer_bitvec":null,"tenure_height":0,"transactions":[]} -2 2025-10-15T12:19:20.850Z /new_burn_block {"burn_amount":0,"burn_block_hash":"0x18362fbd6322eb1f80cfe09dd8a7fc1f863e69b09b600fcbc4ee8c329efc3ae6","burn_block_height":241,"consensus_hash":"0xea3adc41ca93c14109488e94669fb137b586d898","parent_burn_block_hash":"0x41d9324ae8818b640954bd1b1d4668910f98c173b3e369e35f59f856606c6f41","reward_recipients":[{"amt":30000,"recipient":"mxXw9bceXuFB6HZjqriS527kTqt5H9VczT"},{"amt":30000,"recipient":"mpgvmF9DSDBrbxUY4rbsPmWkYakoDXr19j"}],"reward_slot_holders":["mxXw9bceXuFB6HZjqriS527kTqt5H9VczT","mpgvmF9DSDBrbxUY4rbsPmWkYakoDXr19j"]} -3 2025-10-15T12:19:21.671Z /drop_mempool_tx {"dropped_txids":["0x3b992a4281692254c2a70b3a43206121c1cd0c5bd040c3e1bc0f8c065ce45a40","0x85be865ac64da67e44fc3e9ced4cf00ba479596bce717ecd4fa595bd1df79258","0x19b6c649a4544850eb3489ab569895ba19c8115e109eefd8a5ec2a6543f6908f","0xb26d085e8b6ed667919b2da87c167fe24d6eecc0e432fb39d58384549a185f6c","0x4f3359754d9d3f895079f0f7d67e44c7288a2b851ea56c3f0cf6d69ea4368e88","0x4f6d5285bbc78535afb196238f30c20bf0d53130b88eba058f6b746c6478d3e5","0xa2d8732015a0a80873b03ccde05989c8ea682b79cd04e56f7e6ebbe34b16818b","0xe0c73c23b701e2b6f982a8f8b3e0ae797309bae127aa0a04e22ede026f04b514","0xee4a4ca4695d043ef71f9e779ead573c658840663fc9141208a6a93abe43ab09","0x9c62d1d465626e40e609f89015223d553bda6a0ffc70638def660e46a69e3c32","0x2cb8ac4f8eff487f135e4a41fc8f3ec1469affb0293693582bf9c42a526a539c","0x1275879a66660e39229e1779acd39d770b4361b284d26d4a01fbdeee850c4b09","0x016d91b936a3af531c1a011745acba126f5a6ef2694f9c7bb6c7a7e31e3a22f6","0x779ed80749fca8dd53feefbbc5bb1fcb394a6404975ed61f681c22f0df05f58e","0xabcf096b812d2e827595f974787e3ed952271ba43c8a268803a05e257f673f65","0x9ddf27b0b465e10965de2b6ea6edd7e057b4a798224de85bbb20f65485ff2c0d","0x485d4358f8f716fc99642fc97d3aaa74dc0d157833977d23290857801ef94948","0x0dc6acfa0f725c319fb68db3bf91d1b8d7a4ef102c7f618f89da8b420a6b3e7e","0xf15beb8453d82944019bb003c23c7ec5a77c9cf8677e2155e3bac611c5cc118f","0x99d6dab26df5a75854343b1aff072efc293f8961ca5b21f5960bbdd853bad9e1","0xe77dba0e1ba5f08a400a530d01f499885d5bb7e782a91174be6ac4494771044f","0x99364543a37f59d4ef24bc8e4cc2a897110e3b3ec72d70160c3f0845bed8bb1c","0x22943b89663be36e0f2fe24c115174a10c746c9c028eb236475667494b220938","0x3e8be2c12e3262f1755519e1f4632bffb6d8623639884523e171bc8900e8a9c5","0x4d0e5837d7aa547972348f5db32775eefd64183e6851fc106ed1e75eeae4de86","0x736ce2f862d0819ba907bfcaeb649c2ec33c1f3493fa1ea2a9eadc5e79b5f95c","0x15d2be3757fdf04fc448d31f274d5a9d294919b476f3050bdb78f69c14924f8b"],"new_txid":null,"reason":"StaleGarbageCollect"} -4 2025-10-15T12:19:22.008Z /new_mempool_tx ["0x808000000004007ce8e31e9120f4b3cb7bea0fed9de8556cadceb90000000000000006000000000000012c0001aae8c984d3294b3d20b9d0e181f76f6a2732e373f1dbb4e9b58e3b27bf5ce3124ffce0d606dae6ed07b7b1826a91ea53b4e103c7baaf4af0afd92249a39c47da03020000000000051a79596b2995032f42672a1610356aa2fe09886a6d00000000000003e800000000000000000000000000000000000000000000000000000000000000000000"] -5 2025-10-15T12:19:39.543Z /new_burn_block {"burn_amount":0,"burn_block_hash":"0x59757cb03a0ccae542bd920a3d79897a0a91c5fc8b69b93fda084a6445b75083","burn_block_height":242,"consensus_hash":"0x42870a8e44878002364c223ea12214c3ea856e69","parent_burn_block_hash":"0x18362fbd6322eb1f80cfe09dd8a7fc1f863e69b09b600fcbc4ee8c329efc3ae6","reward_recipients":[{"amt":30000,"recipient":"mt56SJB4aQRz8xA13gnkNnqxZc2dESq6Sq"},{"amt":30000,"recipient":"mpgvmF9DSDBrbxUY4rbsPmWkYakoDXr19j"}],"reward_slot_holders":["mt56SJB4aQRz8xA13gnkNnqxZc2dESq6Sq","mpgvmF9DSDBrbxUY4rbsPmWkYakoDXr19j"]} -6 2025-10-15T12:19:51.994Z /new_block {"anchored_cost":{"read_count":0,"read_length":0,"runtime":0,"write_count":0,"write_length":0},"block_hash":"0x0dec9b18c5fbac8e055af16f623a9de091547bc28eab425e3f466d1ebfa1c311","block_height":1,"block_time":1760530781,"burn_block_hash":"0x59757cb03a0ccae542bd920a3d79897a0a91c5fc8b69b93fda084a6445b75083","burn_block_height":242,"burn_block_time":1760530779,"confirmed_microblocks_cost":{"read_count":0,"read_length":0,"runtime":0,"write_count":0,"write_length":0},"consensus_hash":"0x42870a8e44878002364c223ea12214c3ea856e69","cycle_number":null,"events":[],"index_block_hash":"0xbc6fca2a33a69f09efed01a1037059ca030cbd5d6ff45b950d61d35bc0844131","matured_miner_rewards":[],"miner_signature":"0x00a64aa66f5a5a67287525dc7365e9a2f4fe87cc46ab7de79f808c97f27458766275fb7a08eac7f911239cb426e80d22d75d19aae2d932800ebbee9089ff84c8a0","miner_txid":"0xbd6bc6a6ce1d67cd50ac2506b0b030a1da8f54f72dd8be75eae58d4bda48e7b3","parent_block_hash":"0x302af639b1c96cc6cdcfb63eb0f1a561d682e93f0245f1360ebc66a3ea82ab70","parent_burn_block_hash":"0x41d9324ae8818b640954bd1b1d4668910f98c173b3e369e35f59f856606c6f41","parent_burn_block_height":240,"parent_burn_block_timestamp":1758561085,"parent_index_block_hash":"0x385ecab7e393cbf358a5d5f0497717b9ed4cf3ae62674a63c5d30361cb8fbc67","parent_microblock":"0x0000000000000000000000000000000000000000000000000000000000000000","parent_microblock_sequence":0,"pox_v1_unlock_height":205,"pox_v2_unlock_height":207,"pox_v3_unlock_height":210,"reward_set":null,"signer_bitvec":"0006000000013f","signer_signature":["00d0471ac273e12a9e4b6659b13e7a63fb9c3c9b4c66fafecb7e9616b66e8687214e81eafb0838d22a3cb341d8ceab7d0a5dc1877abe99fe2b597d18ba336f29e5","00e44ecf0a499d37c81b99682e6a10d7c8a9b8c94aee888774068b0ac4487764b476587206b5c2f159d976f4a664cc96a039cc62f269bb191475736633f2c9059f","01b91a8932b9199094a5d9979881e83c18cd34508e60ec8f79e94a11fe3383a0d85ddd5551fd7658e3094f46fe905b8565e7a018694529a54c382e5a766162ec2a"],"signer_signature_hash":"0x0dec9b18c5fbac8e055af16f623a9de091547bc28eab425e3f466d1ebfa1c311","tenure_height":38,"transactions":[{"burnchain_op":null,"contract_interface":null,"execution_cost":{"read_count":0,"read_length":0,"runtime":0,"write_count":0,"write_length":0},"microblock_hash":null,"microblock_parent_hash":null,"microblock_sequence":null,"raw_result":"0x0703","raw_tx":"0x80800000000400977f359b03205b91b8fad6b1b5ffe15b9356a58e000000000000001000000000000000000000fa3df571600aa63835cb16508b6bd52c8ed218460898743e6c53936fc4ca708b774915baf2ec1799b03973cadb43c821fa458ad4a5d75a47a384529f3c975b3a0102000000000742870a8e44878002364c223ea12214c3ea856e699abf57d22e1a6ab485563b7ecd291e507755be0542870a8e44878002364c223ea12214c3ea856e69385ecab7e393cbf358a5d5f0497717b9ed4cf3ae62674a63c5d30361cb8fbc670000000200977f359b03205b91b8fad6b1b5ffe15b9356a58e","status":"success","tx_index":0,"txid":"0x85b2cd7df13bd6a48a1d74a96abedd88de8dbda41753650a721448f2f87f4e53","vm_error":null},{"burnchain_op":null,"contract_interface":null,"execution_cost":{"read_count":0,"read_length":0,"runtime":0,"write_count":0,"write_length":0},"microblock_hash":null,"microblock_parent_hash":null,"microblock_sequence":null,"raw_result":"0x0703","raw_tx":"0x80800000000400977f359b03205b91b8fad6b1b5ffe15b9356a58e0000000000000011000000000000000000000234ee6eaa069a4268beac57295518bba3f71106408978c463f4cba510646c150a30c2dd2c59877bdf9deefb7333ad8f486c3ebe09c211c7c8b078d32743c6640102000000000800000000000000000000000000000000000000000000000000000000000000000a051a9fc096b05922733e9bece3ef6688317dbc9b63cacc6b255b024c1c176345fd901d52084499bc8270bf24b888d1b79505d403fb0b3402b242ba0ce0189836103df2e5eff308b43863facf346190d144c8c97420e531466e1ff20bb938c389ac27b13c190a","status":"success","tx_index":1,"txid":"0x472546987a4899887961d63909db342aa1992fdf1154e064978d366679fe6c2a","vm_error":null}]} -7 2025-10-15T12:19:53.618Z /new_block {"anchored_cost":{"read_count":0,"read_length":0,"runtime":0,"write_count":0,"write_length":0},"block_hash":"0xef89693f9b62e731466e63f41d02d7249782509d7c17d55d15dc366f572bd329","block_height":2,"block_time":1760530792,"burn_block_hash":"0x59757cb03a0ccae542bd920a3d79897a0a91c5fc8b69b93fda084a6445b75083","burn_block_height":242,"burn_block_time":1760530779,"confirmed_microblocks_cost":{"read_count":0,"read_length":0,"runtime":0,"write_count":0,"write_length":0},"consensus_hash":"0x42870a8e44878002364c223ea12214c3ea856e69","cycle_number":null,"events":[{"committed":true,"event_index":0,"stx_transfer_event":{"amount":"1000","memo":"00000000000000000000000000000000000000000000000000000000000000000000","recipient":"ST1WNJTS9JM1JYGK758B10DBAMBZ0K23ADP392SBV","sender":"ST1YEHRRYJ4GF9CYBFFN0ZVCXX1APSBEEQ5KEDN7M"},"txid":"0x516c07d6398d0ba082d1da053784da5bbfce2252102e486ba94bab9c693c4b0f","type":"stx_transfer_event"}],"index_block_hash":"0xd59f4117b08a79e802e207e541199fe652f48dd2942751f63e0ccd7eadafb4cc","matured_miner_rewards":[],"miner_signature":"0x008ca1983f763e356f987d14b9a06bdb85e661459db9f17c76783019110e149fd144273fe67bfe4e24574db41de748b3ea99d8dc499db028f7ffc21913384a6ac3","miner_txid":"0xbd6bc6a6ce1d67cd50ac2506b0b030a1da8f54f72dd8be75eae58d4bda48e7b3","parent_block_hash":"0x0dec9b18c5fbac8e055af16f623a9de091547bc28eab425e3f466d1ebfa1c311","parent_burn_block_hash":"0x59757cb03a0ccae542bd920a3d79897a0a91c5fc8b69b93fda084a6445b75083","parent_burn_block_height":242,"parent_burn_block_timestamp":1760530779,"parent_index_block_hash":"0xbc6fca2a33a69f09efed01a1037059ca030cbd5d6ff45b950d61d35bc0844131","parent_microblock":"0x0000000000000000000000000000000000000000000000000000000000000000","parent_microblock_sequence":0,"pox_v1_unlock_height":205,"pox_v2_unlock_height":207,"pox_v3_unlock_height":210,"reward_set":null,"signer_bitvec":"0006000000013f","signer_signature":["01d598b5eff640bde51cf1ee112707ea0784cdfb64660ff939f187e39dea5b2315639589dceff6c37895d9bf47d00ecceed320696b0cbc0fb1fb81769cd5d23dc6","00cbe3992b0c0e2b2f4b5f18000ce8950b89be94b369f040df084c276cfe190e9754e5e66c4f3a4e2c2c033c2815a9b5800b4a74cda01d5b6ec31a8d117e8858d0","00944ac65621fddd46f1acd31cd9b952eff196c4df9628d08d619959cca9bd184a59c6156063fd23bab95a2f5110a1d475a69bf8e0e544530371eb6994514b62a7"],"signer_signature_hash":"0xef89693f9b62e731466e63f41d02d7249782509d7c17d55d15dc366f572bd329","tenure_height":38,"transactions":[{"burnchain_op":null,"contract_interface":null,"execution_cost":{"read_count":0,"read_length":0,"runtime":0,"write_count":0,"write_length":0},"microblock_hash":null,"microblock_parent_hash":null,"microblock_sequence":null,"raw_result":"0x0703","raw_tx":"0x808000000004007ce8e31e9120f4b3cb7bea0fed9de8556cadceb90000000000000006000000000000012c0001aae8c984d3294b3d20b9d0e181f76f6a2732e373f1dbb4e9b58e3b27bf5ce3124ffce0d606dae6ed07b7b1826a91ea53b4e103c7baaf4af0afd92249a39c47da03020000000000051a79596b2995032f42672a1610356aa2fe09886a6d00000000000003e800000000000000000000000000000000000000000000000000000000000000000000","status":"success","tx_index":0,"txid":"0x516c07d6398d0ba082d1da053784da5bbfce2252102e486ba94bab9c693c4b0f","vm_error":null}]} -8 2025-10-15T12:19:54.475Z /new_burn_block {"burn_amount":0,"burn_block_hash":"0x7e9cf233430668edf0def6e973330b77008752353974d4bec9ab306b61c5d521","burn_block_height":243,"consensus_hash":"0x9fc86b5ad84b32903d91644e699ac5cfae4902df","parent_burn_block_hash":"0x59757cb03a0ccae542bd920a3d79897a0a91c5fc8b69b93fda084a6445b75083","reward_recipients":[{"amt":30000,"recipient":"mxXw9bceXuFB6HZjqriS527kTqt5H9VczT"},{"amt":30000,"recipient":"mt56SJB4aQRz8xA13gnkNnqxZc2dESq6Sq"}],"reward_slot_holders":["mxXw9bceXuFB6HZjqriS527kTqt5H9VczT","mt56SJB4aQRz8xA13gnkNnqxZc2dESq6Sq"]} -9 2025-10-15T12:19:54.914Z /new_mempool_tx ["0x8080000000040079596b2995032f42672a1610356aa2fe09886a6d0000000000000006000000000000012c00007874860186d7ec3c08c281d58e187d35f0f681fb37828ce139fb7372f13ff9093512d07d70ab94ed9f42395c7006c88a4bec72992c015ed07633af4aa025959d03020000000000051a68de2dbb6c14aaba2900031876ea3771599edd3a00000000000003e800000000000000000000000000000000000000000000000000000000000000000000"] -10 2025-10-15T12:19:56.890Z /new_mempool_tx ["0x80800000000400f3c02bb1ebdb185fc2ed28d8d4da3eede1a4bcc9000000000000000000000000009896800001b2d566c54101c2bb75135ead53ae67a9d0c3d92643cb19c242cf62f87c1b702c2565be5d4af27351ca936e9c0e17637ceb28ac17ee37a648fc0c5d3cf94800ff030200000000010977696e746572706f63000006a328696d706c2d747261697420275354313245593939475334594b50304350324346573653455057513243475652574b3547484b4452562e616476656e742d63616c656e6461722e646f6f722d7472616974290a0a28646566696e652d646174612d766172206d73672028737472696e672d757466382034303030292075224c6f6f6b20617420746865206c6f6773206f6620796f7572206e6f646520616e6420686176652061206e69636520416476656e7420736561736f6e2122290a28646566696e652d726561642d6f6e6c7920286f70656e290a202028626567696e0a287072696e742022202020202020202020202e20202020202e20202e2020202020202b20202020202e2020202020202e202020202020202020202e2020202020202020202020202022290a287072696e74202220202020202e202020202020202e2020202020202e202020202023202020202020202e20202020202020202020202e202020202020202020202020202020202022290a287072696e74202220202020202020202e2020202020202e2020202020202020202323232020202020202020202020202e2020202020202e2020202020202e20202020202020202022290a287072696e7420222020202020202e2020202020202e2020202a233a2e202e3a23232a232323232a20202e20202020202020202020202020202020202020202020202020202022290a287072696e742022202020202020202e20202020202a233a2e202020202e3a232a2323232a233a2e202020202e3a232a20202e20202020202020202e202020202020202e2020202022290a287072696e74202220202e202020202020202020202020202a2323232323232323232a2323232323232323232a20202020202020202e20202020202020202e20202020202020202022290a287072696e74202220202020202020202e202020202a233a2e20202a232323232a2323232a232323232a20202e3a232a2020202e202020202020202e20202020202020202020202022290a287072696e74202220202020202e20202020202e20202a232323232323232a2a23232a23232a2a232323232323232a2020202020202020202020202020202020202e20202020202022290a287072696e742022202020202020202020202020202020202e2a23232a23232323232a23232323232a23232a20202020202020202020202e2020202020202e20202020202020202022290a287072696e7420222020202020202e2020202020202e2020202a233a2e202e3a23232a23233a2e202e3a232a20202e2020202020202e20202020202020202020202020202020202022290a287072696e742022202020202020202020202e2020202020202e202a232323232a2323232a232323232a20202e20202020202020202020202020202020202020202020202020202022290a287072696e742022202020202020202e20202020202a233a2e202020202e3a232a2323232a233a2e202020202e3a232a20202e20202020202020202e202020202020202e2020202022290a287072696e74202220202e202020202020202020202020202a2323232323232323232a2323232323232323232a20202020202020202e20202020202020202e20202020202020202022290a287072696e74202220202020202020202e202020202a233a2e20202a232323232a2323232a232323232a20202e3a232a2020202e202020202020202e20202020202020202020202022290a287072696e74202220202020202e20202020202e20202a232323232323232a2a23232a23232a2a232323232323232a2020202020202020202020202020202020202e20202020202022290a287072696e742022202020202020202020202020202020202e2a23232a23232323232a23232323232a23232a20202020202020202020202e2020202020202e20202020202020202022290a287072696e7420222020202020202020202020202e20202020202a2020202020203030302020202020202a202020202e20202020202e202020202020202020202020205c305c6e2573242b24287863616c63292b696e66202020202022290a287072696e742022202020202020202e2020202020202020202e2020202e20202030303020202020202e20202020202020202e202020202020202e2020202020202020202020202022290a287072696e7420222e2e202e2e202e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e4f3030304f2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e202e2e2e2e2e2e202e2e2e22290a20202020286f6b20287072696e7420287661722d676574206d7367292929290a29"] -11 2025-10-15T12:19:57.070Z /new_block {"anchored_cost":{"read_count":0,"read_length":0,"runtime":0,"write_count":0,"write_length":0},"block_hash":"0xc076697171f9f4b4933770fe00669dab2ca7dafeb9383da73a32334d5485e705","block_height":3,"block_time":1760530795,"burn_block_hash":"0x7e9cf233430668edf0def6e973330b77008752353974d4bec9ab306b61c5d521","burn_block_height":243,"burn_block_time":1760530794,"confirmed_microblocks_cost":{"read_count":0,"read_length":0,"runtime":0,"write_count":0,"write_length":0},"consensus_hash":"0x9fc86b5ad84b32903d91644e699ac5cfae4902df","cycle_number":null,"events":[],"index_block_hash":"0xdd7b2092b0315f644868f2450df40eec415bbb30a91f71a97c49f1948a2d900d","matured_miner_rewards":[],"miner_signature":"0x0065d812c5feeac617962601de89c86f4311a289431c9a3a065636be999d12cd3b3e97c1cf378601a797a19e787764b1222040dba6f005d3beecb36014530fd192","miner_txid":"0x4dca60932937965a3142e04dd132b5d4e3e4ec274dbf04c0303bbfbe81620bc9","parent_block_hash":"0xef89693f9b62e731466e63f41d02d7249782509d7c17d55d15dc366f572bd329","parent_burn_block_hash":"0x59757cb03a0ccae542bd920a3d79897a0a91c5fc8b69b93fda084a6445b75083","parent_burn_block_height":242,"parent_burn_block_timestamp":1760530779,"parent_index_block_hash":"0xd59f4117b08a79e802e207e541199fe652f48dd2942751f63e0ccd7eadafb4cc","parent_microblock":"0x0000000000000000000000000000000000000000000000000000000000000000","parent_microblock_sequence":0,"pox_v1_unlock_height":205,"pox_v2_unlock_height":207,"pox_v3_unlock_height":210,"reward_set":null,"signer_bitvec":"0006000000013f","signer_signature":["018a96cee4e2ef8078a913b07c3fa2b17a1f37676b0dc53fd1094370ee4e3f658f208007bcfc6ee9b17484cba0c29bfe28afc19f946445d2b5bbcab1df2abf6886","018b0ba6b88897351fcd365e1e89832b8ae50b4a59419433c58fe60bedb79e2f7f773e849da4878d813fa77c5d0d87249f0fa36cc52668271990b09015a6c805c1","00471772afc6ec314e8d822e99f99fca100b4ecf6a7de2321bfd6f64171b845cfc089aecafd4c27ad0374caa574c2f17d5f62b3be32b87d277ffaf5ae0717018e8"],"signer_signature_hash":"0xc076697171f9f4b4933770fe00669dab2ca7dafeb9383da73a32334d5485e705","tenure_height":39,"transactions":[{"burnchain_op":null,"contract_interface":null,"execution_cost":{"read_count":0,"read_length":0,"runtime":0,"write_count":0,"write_length":0},"microblock_hash":null,"microblock_parent_hash":null,"microblock_sequence":null,"raw_result":"0x0703","raw_tx":"0x80800000000400cd06e933c001d19bf824a4c31864a5b27e0274e8000000000000000d00000000000000000000d3bc68e2c285e97189607dde2b937a9cff2bcc92bdf96e297d2d11fa61b3ee84060823f95ccf81ccd707c9f99e881200a9c9e6116dca7add809045935236cd74010200000000079fc86b5ad84b32903d91644e699ac5cfae4902df42870a8e44878002364c223ea12214c3ea856e699fc86b5ad84b32903d91644e699ac5cfae4902dfd59f4117b08a79e802e207e541199fe652f48dd2942751f63e0ccd7eadafb4cc0000000200cd06e933c001d19bf824a4c31864a5b27e0274e8","status":"success","tx_index":0,"txid":"0x98044adc0f4e4957ed86e4e018284e44f1d859a38cd2e013fc57ecdb9badc3fb","vm_error":null},{"burnchain_op":null,"contract_interface":null,"execution_cost":{"read_count":0,"read_length":0,"runtime":0,"write_count":0,"write_length":0},"microblock_hash":null,"microblock_parent_hash":null,"microblock_sequence":null,"raw_result":"0x0703","raw_tx":"0x80800000000400cd06e933c001d19bf824a4c31864a5b27e0274e8000000000000000e000000000000000000004cdbb11d388c5eec7f15737fbc1ce71ac94076315995408d4618b9cb79bbe0b766aa8b435a029f560f9340ff31fbe4c8f46114ea21636df00e133130766dc18d0102000000000800000000000000000000000000000000000000000000000000000000000000000a051aa8ec901f7775d4d09eef137cf238db131f68814e9f2699b4b6001e0ee0c871009baf7c574a2ac5be3dd7dca3cda3c56a84ef127bdac3975a7a4f71e67e6e00823717d8e95c5b228ec1c92a4181cd2a9c0f22b1d089809e9f184d1fe6c04bf1ba5a78cc0a","status":"success","tx_index":1,"txid":"0x660e84224512f71032e4adbbeee5539a55485f2121d248a3a96dfda332e8e22d","vm_error":null}]} +1 2025-10-16T16:10:40.482Z /new_block {"anchored_cost":{"read_count":0,"read_length":0,"runtime":0,"write_count":0,"write_length":0},"block_hash":"0x0000000000000000000000000000000000000000000000000000000000000000","block_height":0,"block_time":null,"burn_block_hash":"0x0f9188f13cb7b2c71f2a335e3a4fc328bf5beb436012afca590b1a11466e2206","burn_block_height":0,"burn_block_time":0,"confirmed_microblocks_cost":{"read_count":0,"read_length":0,"runtime":0,"write_count":0,"write_length":0},"consensus_hash":"0x0000000000000000000000000000000000000000","cycle_number":null,"events":[],"index_block_hash":"0x55c9861be5cff984a20ce6d99d4aa65941412889bdc665094136429b84f8c2ee","matured_miner_rewards":[],"miner_txid":"0x0000000000000000000000000000000000000000000000000000000000000000","parent_block_hash":"0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff","parent_burn_block_hash":"0x0f9188f13cb7b2c71f2a335e3a4fc328bf5beb436012afca590b1a11466e2206","parent_burn_block_height":0,"parent_burn_block_timestamp":0,"parent_index_block_hash":"0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff","parent_microblock":"0x0000000000000000000000000000000000000000000000000000000000000000","parent_microblock_sequence":0,"pox_v1_unlock_height":205,"pox_v2_unlock_height":207,"pox_v3_unlock_height":210,"reward_set":null,"signer_bitvec":null,"tenure_height":0,"transactions":[]} +2 2025-10-16T16:10:41.352Z /new_burn_block {"burn_amount":0,"burn_block_hash":"0x15b9f0c99e02bda93e73bd4c20a0c006c8a87aea261a22cccea8898fc186f8fb","burn_block_height":241,"consensus_hash":"0x119008d3ea0b93012870d171d114f9bc5c3e9c1c","parent_burn_block_hash":"0x41d9324ae8818b640954bd1b1d4668910f98c173b3e369e35f59f856606c6f41","reward_recipients":[{"amt":30000,"recipient":"mxXw9bceXuFB6HZjqriS527kTqt5H9VczT"},{"amt":30000,"recipient":"mpgvmF9DSDBrbxUY4rbsPmWkYakoDXr19j"}],"reward_slot_holders":["mxXw9bceXuFB6HZjqriS527kTqt5H9VczT","mpgvmF9DSDBrbxUY4rbsPmWkYakoDXr19j"]} +3 2025-10-16T16:10:42.857Z /drop_mempool_tx {"dropped_txids":["0x3b992a4281692254c2a70b3a43206121c1cd0c5bd040c3e1bc0f8c065ce45a40","0x85be865ac64da67e44fc3e9ced4cf00ba479596bce717ecd4fa595bd1df79258","0x19b6c649a4544850eb3489ab569895ba19c8115e109eefd8a5ec2a6543f6908f","0xb26d085e8b6ed667919b2da87c167fe24d6eecc0e432fb39d58384549a185f6c","0x4f3359754d9d3f895079f0f7d67e44c7288a2b851ea56c3f0cf6d69ea4368e88","0x4f6d5285bbc78535afb196238f30c20bf0d53130b88eba058f6b746c6478d3e5","0xa2d8732015a0a80873b03ccde05989c8ea682b79cd04e56f7e6ebbe34b16818b","0xe0c73c23b701e2b6f982a8f8b3e0ae797309bae127aa0a04e22ede026f04b514","0xee4a4ca4695d043ef71f9e779ead573c658840663fc9141208a6a93abe43ab09","0x9c62d1d465626e40e609f89015223d553bda6a0ffc70638def660e46a69e3c32","0x2cb8ac4f8eff487f135e4a41fc8f3ec1469affb0293693582bf9c42a526a539c","0x1275879a66660e39229e1779acd39d770b4361b284d26d4a01fbdeee850c4b09","0x016d91b936a3af531c1a011745acba126f5a6ef2694f9c7bb6c7a7e31e3a22f6","0x779ed80749fca8dd53feefbbc5bb1fcb394a6404975ed61f681c22f0df05f58e","0xabcf096b812d2e827595f974787e3ed952271ba43c8a268803a05e257f673f65","0x9ddf27b0b465e10965de2b6ea6edd7e057b4a798224de85bbb20f65485ff2c0d","0x485d4358f8f716fc99642fc97d3aaa74dc0d157833977d23290857801ef94948","0x0dc6acfa0f725c319fb68db3bf91d1b8d7a4ef102c7f618f89da8b420a6b3e7e","0xf15beb8453d82944019bb003c23c7ec5a77c9cf8677e2155e3bac611c5cc118f","0x99d6dab26df5a75854343b1aff072efc293f8961ca5b21f5960bbdd853bad9e1","0xe77dba0e1ba5f08a400a530d01f499885d5bb7e782a91174be6ac4494771044f","0x99364543a37f59d4ef24bc8e4cc2a897110e3b3ec72d70160c3f0845bed8bb1c","0x22943b89663be36e0f2fe24c115174a10c746c9c028eb236475667494b220938","0x3e8be2c12e3262f1755519e1f4632bffb6d8623639884523e171bc8900e8a9c5","0x4d0e5837d7aa547972348f5db32775eefd64183e6851fc106ed1e75eeae4de86","0x736ce2f862d0819ba907bfcaeb649c2ec33c1f3493fa1ea2a9eadc5e79b5f95c","0x15d2be3757fdf04fc448d31f274d5a9d294919b476f3050bdb78f69c14924f8b"],"new_txid":null,"reason":"StaleGarbageCollect"} +4 2025-10-16T16:10:44.648Z /new_mempool_tx ["0x808000000004007ce8e31e9120f4b3cb7bea0fed9de8556cadceb90000000000000006000000000000012c0001aae8c984d3294b3d20b9d0e181f76f6a2732e373f1dbb4e9b58e3b27bf5ce3124ffce0d606dae6ed07b7b1826a91ea53b4e103c7baaf4af0afd92249a39c47da03020000000000051a79596b2995032f42672a1610356aa2fe09886a6d00000000000003e800000000000000000000000000000000000000000000000000000000000000000000"] +5 2025-10-16T16:10:49.079Z /new_burn_block {"burn_amount":0,"burn_block_hash":"0x44623929d0a3c7d8f42a92483fe1044e61c42fa5db1cc17e4bde5599f3c0a374","burn_block_height":242,"consensus_hash":"0x0669ebb7780ac395578196ee8868f899f1c74ecb","parent_burn_block_hash":"0x15b9f0c99e02bda93e73bd4c20a0c006c8a87aea261a22cccea8898fc186f8fb","reward_recipients":[{"amt":30000,"recipient":"mxXw9bceXuFB6HZjqriS527kTqt5H9VczT"},{"amt":30000,"recipient":"mt56SJB4aQRz8xA13gnkNnqxZc2dESq6Sq"}],"reward_slot_holders":["mxXw9bceXuFB6HZjqriS527kTqt5H9VczT","mt56SJB4aQRz8xA13gnkNnqxZc2dESq6Sq"]} +6 2025-10-16T16:10:50.910Z /new_block {"anchored_cost":{"read_count":0,"read_length":0,"runtime":0,"write_count":0,"write_length":0},"block_hash":"0x027b1784204e3f1f99ce242f18bdb8ca9dcb9aac1be36c1651f6fbe0ba1703ab","block_height":1,"block_time":1760631050,"burn_block_hash":"0x44623929d0a3c7d8f42a92483fe1044e61c42fa5db1cc17e4bde5599f3c0a374","burn_block_height":242,"burn_block_time":1760631047,"confirmed_microblocks_cost":{"read_count":0,"read_length":0,"runtime":0,"write_count":0,"write_length":0},"consensus_hash":"0x0669ebb7780ac395578196ee8868f899f1c74ecb","cycle_number":null,"events":[],"index_block_hash":"0x169b06db8912d599051dad3acfa2b04d33b6d98edf4adea6f13ad3935ca5fb7f","matured_miner_rewards":[],"miner_signature":"0x01ba17621d66f7aabff5dc8a397e2e3e9d38d579d4da26cf1a0dbec066fd74a22502454cf5ce49b84d48a6ef152c8b7221c6f1fe46efcce33bf0f16e95ad3ac432","miner_txid":"0x5350ea35c5586845216394f28749888747ea2dfe4fe27e793f5bb50853236f3d","parent_block_hash":"0x302af639b1c96cc6cdcfb63eb0f1a561d682e93f0245f1360ebc66a3ea82ab70","parent_burn_block_hash":"0x41d9324ae8818b640954bd1b1d4668910f98c173b3e369e35f59f856606c6f41","parent_burn_block_height":240,"parent_burn_block_timestamp":1758561085,"parent_index_block_hash":"0x385ecab7e393cbf358a5d5f0497717b9ed4cf3ae62674a63c5d30361cb8fbc67","parent_microblock":"0x0000000000000000000000000000000000000000000000000000000000000000","parent_microblock_sequence":0,"pox_v1_unlock_height":205,"pox_v2_unlock_height":207,"pox_v3_unlock_height":210,"reward_set":null,"signer_bitvec":"0006000000013f","signer_signature":["01893e80d9ef038a74835b175015ce7b948469a218302745776a12dd5f9887ecf32c93c06aa8d6705fdb6c2e0e20d6897a7d7dbbc36a9484d704534dda4790f74c","016987cd4470005709583c15802cc1d0fbd648c20014038f31a5b9df2d94c177b73c86701d9084257b0c06b268b6554e5b22e18194f8b3b1dd600af6df80146223","01b51a4fc50f55868a89f0e60dc24a96dce2641ff8f3bc236f48b04df523bb7b7c0af06aa0bde9c9ccca8f496e7e9c29ed4332ab2a52f8839430f9f67821979b58"],"signer_signature_hash":"0x027b1784204e3f1f99ce242f18bdb8ca9dcb9aac1be36c1651f6fbe0ba1703ab","tenure_height":38,"transactions":[{"burnchain_op":null,"contract_interface":null,"execution_cost":{"read_count":0,"read_length":0,"runtime":0,"write_count":0,"write_length":0},"microblock_hash":null,"microblock_parent_hash":null,"microblock_sequence":null,"raw_result":"0x0703","raw_tx":"0x8080000000040053df2184299fc89c04960e7fcdfab2ebbacca2b80000000000000011000000000000000000007861c238faccb7fc80a419eb9e7c8a1a64400ffc1b111e7331995be0f7d7bd5424ae471b193ea039afa0d581974dfae36390c8c658d5f3edcd14ac3c3417ecdf010200000000070669ebb7780ac395578196ee8868f899f1c74ecb9abf57d22e1a6ab485563b7ecd291e507755be050669ebb7780ac395578196ee8868f899f1c74ecb385ecab7e393cbf358a5d5f0497717b9ed4cf3ae62674a63c5d30361cb8fbc67000000020053df2184299fc89c04960e7fcdfab2ebbacca2b8","status":"success","tx_index":0,"txid":"0x554a5647fa5aeaf6a30d5e160207a8cdff2580e0b8ffd93f5d1e194494286a00","vm_error":null},{"burnchain_op":null,"contract_interface":null,"execution_cost":{"read_count":0,"read_length":0,"runtime":0,"write_count":0,"write_length":0},"microblock_hash":null,"microblock_parent_hash":null,"microblock_sequence":null,"raw_result":"0x0703","raw_tx":"0x8080000000040053df2184299fc89c04960e7fcdfab2ebbacca2b8000000000000001200000000000000000000eb99e3138c3db8c4e661f7afc0289f4823b86b95253689237fb904bbc2090dd038801c1c00b1d488a349fff1f14b393f0448e18fbaa8f48efd1050913582ed120102000000000800000000000000000000000000000000000000000000000000000000000000000a051a7bbceef504ec5cb7cfae90e2ebbcdf01dfeeee6a8d6519cce265d3c2cd78fcc4443e55dab386980252d9bdd6925f5d7951cde64bbb877b16c446459a0055350d14fcaf36d39e0d031a476e828c0f502d96081e083b373aee087a3c4a2044e71e5de7dd06","status":"success","tx_index":1,"txid":"0x7061db1717cd9feac293d8f64269f1cd910f980797b8d8cdd5646201e22deef5","vm_error":null}]} +7 2025-10-16T16:10:52.619Z /new_block {"anchored_cost":{"read_count":0,"read_length":0,"runtime":0,"write_count":0,"write_length":0},"block_hash":"0x81c3b048bb5605af51bc3b3003e5f0fa29f781a6aa5c63a4585987e17477eb50","block_height":2,"block_time":1760631051,"burn_block_hash":"0x44623929d0a3c7d8f42a92483fe1044e61c42fa5db1cc17e4bde5599f3c0a374","burn_block_height":242,"burn_block_time":1760631047,"confirmed_microblocks_cost":{"read_count":0,"read_length":0,"runtime":0,"write_count":0,"write_length":0},"consensus_hash":"0x0669ebb7780ac395578196ee8868f899f1c74ecb","cycle_number":null,"events":[{"committed":true,"event_index":0,"stx_transfer_event":{"amount":"1000","memo":"00000000000000000000000000000000000000000000000000000000000000000000","recipient":"ST1WNJTS9JM1JYGK758B10DBAMBZ0K23ADP392SBV","sender":"ST1YEHRRYJ4GF9CYBFFN0ZVCXX1APSBEEQ5KEDN7M"},"txid":"0x516c07d6398d0ba082d1da053784da5bbfce2252102e486ba94bab9c693c4b0f","type":"stx_transfer_event"}],"index_block_hash":"0x4b765ba0ca88f0dbeed8e4655318701a4a4eb1a36f5baa8680be06e62f068256","matured_miner_rewards":[],"miner_signature":"0x0026aae8b4b99962b14ab740dacbad8cada162fd38fe5312379836a7d3f8b5162e48c50b692d6756202c739aba02d6aaa2f3788cfc12bbbab5fc5dd9323bd24c81","miner_txid":"0x5350ea35c5586845216394f28749888747ea2dfe4fe27e793f5bb50853236f3d","parent_block_hash":"0x027b1784204e3f1f99ce242f18bdb8ca9dcb9aac1be36c1651f6fbe0ba1703ab","parent_burn_block_hash":"0x44623929d0a3c7d8f42a92483fe1044e61c42fa5db1cc17e4bde5599f3c0a374","parent_burn_block_height":242,"parent_burn_block_timestamp":1760631047,"parent_index_block_hash":"0x169b06db8912d599051dad3acfa2b04d33b6d98edf4adea6f13ad3935ca5fb7f","parent_microblock":"0x0000000000000000000000000000000000000000000000000000000000000000","parent_microblock_sequence":0,"pox_v1_unlock_height":205,"pox_v2_unlock_height":207,"pox_v3_unlock_height":210,"reward_set":null,"signer_bitvec":"0006000000013f","signer_signature":["00cd2e1214c56089aa55ac2503757e9661e6df7c2e8026534b2f103b59d864b64a3823ee09ca030156e4a502fe517b00a5304a78ad9f67860cf6aa092643d0450f","01ab698bb8b657006bac6b719403a8a3d153c3f1d0b4bfde690e79d9af7c1f4c284e81cdb66c88845e5b7ddc345b6d6059d83d1db06b2c1b3d9b904821ba1a735b","01764d214608dc681b0c6b560c88f5e071ba587e5d1bd59321c9d0bcef986a008927235fd15e19e68d28583f9ae0e011b746e5b46c732de122380d2334017547af"],"signer_signature_hash":"0x81c3b048bb5605af51bc3b3003e5f0fa29f781a6aa5c63a4585987e17477eb50","tenure_height":38,"transactions":[{"burnchain_op":null,"contract_interface":null,"execution_cost":{"read_count":0,"read_length":0,"runtime":0,"write_count":0,"write_length":0},"microblock_hash":null,"microblock_parent_hash":null,"microblock_sequence":null,"raw_result":"0x0703","raw_tx":"0x808000000004007ce8e31e9120f4b3cb7bea0fed9de8556cadceb90000000000000006000000000000012c0001aae8c984d3294b3d20b9d0e181f76f6a2732e373f1dbb4e9b58e3b27bf5ce3124ffce0d606dae6ed07b7b1826a91ea53b4e103c7baaf4af0afd92249a39c47da03020000000000051a79596b2995032f42672a1610356aa2fe09886a6d00000000000003e800000000000000000000000000000000000000000000000000000000000000000000","status":"success","tx_index":0,"txid":"0x516c07d6398d0ba082d1da053784da5bbfce2252102e486ba94bab9c693c4b0f","vm_error":null}]} +8 2025-10-16T16:10:52.891Z /new_mempool_tx ["0x8080000000040079596b2995032f42672a1610356aa2fe09886a6d0000000000000006000000000000012c00007874860186d7ec3c08c281d58e187d35f0f681fb37828ce139fb7372f13ff9093512d07d70ab94ed9f42395c7006c88a4bec72992c015ed07633af4aa025959d03020000000000051a68de2dbb6c14aaba2900031876ea3771599edd3a00000000000003e800000000000000000000000000000000000000000000000000000000000000000000"] +9 2025-10-16T16:10:53.727Z /new_burn_block {"burn_amount":0,"burn_block_hash":"0x727c936aab71c050b1ad61ec22978eee21a429a4a8d0677236a6f237be62d696","burn_block_height":243,"consensus_hash":"0xf8ccc25e7c3498dbab7b35d39c8f7fde4fafbb0d","parent_burn_block_hash":"0x44623929d0a3c7d8f42a92483fe1044e61c42fa5db1cc17e4bde5599f3c0a374","reward_recipients":[{"amt":30000,"recipient":"mt56SJB4aQRz8xA13gnkNnqxZc2dESq6Sq"},{"amt":30000,"recipient":"mpgvmF9DSDBrbxUY4rbsPmWkYakoDXr19j"}],"reward_slot_holders":["mt56SJB4aQRz8xA13gnkNnqxZc2dESq6Sq","mpgvmF9DSDBrbxUY4rbsPmWkYakoDXr19j"]} +10 2025-10-16T16:10:56.218Z /new_block {"anchored_cost":{"read_count":0,"read_length":0,"runtime":0,"write_count":0,"write_length":0},"block_hash":"0x73614c7225b41fb8be6bfa959a27f83b02c41af7294096b6b706625d9bef0527","block_height":3,"block_time":1760631054,"burn_block_hash":"0x727c936aab71c050b1ad61ec22978eee21a429a4a8d0677236a6f237be62d696","burn_block_height":243,"burn_block_time":1760631053,"confirmed_microblocks_cost":{"read_count":0,"read_length":0,"runtime":0,"write_count":0,"write_length":0},"consensus_hash":"0xf8ccc25e7c3498dbab7b35d39c8f7fde4fafbb0d","cycle_number":null,"events":[],"index_block_hash":"0x7ff029d4dd7e208df6d23e1465395e097c8f9bbf3feae2f7c0b6967c5edeb72b","matured_miner_rewards":[],"miner_signature":"0x01f5debb7d702dcdd08ba852fd79f156181fbbb266ef8b04f5c65c5cc3cbb243c52fd32dcbb4b97e5e16287f776f9bca9e7b88d1121be979d742c385e9f83a02b1","miner_txid":"0xb14f1935fbee43fa2ec068512e04df205dd4732411b30a80d91815b856310edf","parent_block_hash":"0x81c3b048bb5605af51bc3b3003e5f0fa29f781a6aa5c63a4585987e17477eb50","parent_burn_block_hash":"0x44623929d0a3c7d8f42a92483fe1044e61c42fa5db1cc17e4bde5599f3c0a374","parent_burn_block_height":242,"parent_burn_block_timestamp":1760631047,"parent_index_block_hash":"0x4b765ba0ca88f0dbeed8e4655318701a4a4eb1a36f5baa8680be06e62f068256","parent_microblock":"0x0000000000000000000000000000000000000000000000000000000000000000","parent_microblock_sequence":0,"pox_v1_unlock_height":205,"pox_v2_unlock_height":207,"pox_v3_unlock_height":210,"reward_set":null,"signer_bitvec":"0006000000013f","signer_signature":["006d30f1c40888d48bada1ef0865245c812dda5d275cdb0f3aa2cf1b67da5ad42b6219ee0d9ba480b8eb83d3267351783d433051b1737dd19b7e360a53b4caf62d","0056d487aab7ef2bd65e468cf941c0e35d6c207542eb76713d7abc95ebee9072d97cb6b1df97f1cea0d240e397a8e09a1a2135a842fea86e24fa448d9f7e06a722","010d638308fb569f2ce1ebdac5d2496b14d4f7390e741bbecf3b34290c4f619e0923d3d23b354b973e84048fb5eb47644d6ff98b2f0bab5464452d0a1d4d3bd509"],"signer_signature_hash":"0x73614c7225b41fb8be6bfa959a27f83b02c41af7294096b6b706625d9bef0527","tenure_height":39,"transactions":[{"burnchain_op":null,"contract_interface":null,"execution_cost":{"read_count":0,"read_length":0,"runtime":0,"write_count":0,"write_length":0},"microblock_hash":null,"microblock_parent_hash":null,"microblock_sequence":null,"raw_result":"0x0703","raw_tx":"0x8080000000040053df2184299fc89c04960e7fcdfab2ebbacca2b8000000000000001300000000000000000000e272afe54adab35f0bb42baaca021abd676c9822be0d54a183ff48095b7374d03123d6484851d3b9df7e386c380c089de2bffadcf2f7b7638238b29825e9149301020000000007f8ccc25e7c3498dbab7b35d39c8f7fde4fafbb0d0669ebb7780ac395578196ee8868f899f1c74ecbf8ccc25e7c3498dbab7b35d39c8f7fde4fafbb0d4b765ba0ca88f0dbeed8e4655318701a4a4eb1a36f5baa8680be06e62f068256000000020053df2184299fc89c04960e7fcdfab2ebbacca2b8","status":"success","tx_index":0,"txid":"0x132c4249f2444afa1330d1d1342ccf78ed1398e036fcc67cc5de8717d22b214b","vm_error":null},{"burnchain_op":null,"contract_interface":null,"execution_cost":{"read_count":0,"read_length":0,"runtime":0,"write_count":0,"write_length":0},"microblock_hash":null,"microblock_parent_hash":null,"microblock_sequence":null,"raw_result":"0x0703","raw_tx":"0x8080000000040053df2184299fc89c04960e7fcdfab2ebbacca2b8000000000000001400000000000000000001a8d2ec00eee0c2616c3872cec31b9f83769c39c7abb6efa221466d2bc9fef99574eb5387c33289a3d4dcf8aba76302dd8b2b67bdd87a43a22cba9ef47feb032b0102000000000800000000000000000000000000000000000000000000000000000000000000000a051a7bbceef504ec5cb7cfae90e2ebbcdf01dfeeee6a8a5df9fe5519287f19f1701e7d90d77131b1334c69ea8abca4a944cf317c02c9fb01e6f7c0b4d7c8a24546d30513d6254a6b5652b0ae27cdf48518c1ecf6e64502260e2025d50e07dafcc2856fa96902","status":"success","tx_index":1,"txid":"0x6b2314cd2f3c34531847e872b94a0cc8b4c765262401f8f6db824e59e885bcb2","vm_error":null}]} +11 2025-10-16T16:10:58.365Z /new_block {"anchored_cost":{"read_count":0,"read_length":0,"runtime":0,"write_count":0,"write_length":0},"block_hash":"0x6c73505c1a853dc9b75fdeaf8c2819ae1d3f4094bc5efb918fec5b83343dc62c","block_height":4,"block_time":1760631056,"burn_block_hash":"0x727c936aab71c050b1ad61ec22978eee21a429a4a8d0677236a6f237be62d696","burn_block_height":243,"burn_block_time":1760631053,"confirmed_microblocks_cost":{"read_count":0,"read_length":0,"runtime":0,"write_count":0,"write_length":0},"consensus_hash":"0xf8ccc25e7c3498dbab7b35d39c8f7fde4fafbb0d","cycle_number":null,"events":[{"committed":true,"event_index":0,"stx_transfer_event":{"amount":"1000","memo":"00000000000000000000000000000000000000000000000000000000000000000000","recipient":"ST1MDWBDVDGAANEH9001HGXQA6XRNK7PX7A7X8M6R","sender":"ST1WNJTS9JM1JYGK758B10DBAMBZ0K23ADP392SBV"},"txid":"0x793ff7404b44ddecaf9447c0cac4671c3eb94063faa30be43b42fe9058e541b8","type":"stx_transfer_event"}],"index_block_hash":"0x46268911336eccf9f361e74740de49dacbcfa7fafa8b556fdfc7afb74fa0cabd","matured_miner_rewards":[],"miner_signature":"0x01febdf0ac6660cb1b6782eef8c2666403ed0c820422f9be8e1b901835383d42e142baea0f97f2b182e51235dd9b9e0f76da0eb0d12dd67516771a81bbadc17efd","miner_txid":"0xb14f1935fbee43fa2ec068512e04df205dd4732411b30a80d91815b856310edf","parent_block_hash":"0x73614c7225b41fb8be6bfa959a27f83b02c41af7294096b6b706625d9bef0527","parent_burn_block_hash":"0x727c936aab71c050b1ad61ec22978eee21a429a4a8d0677236a6f237be62d696","parent_burn_block_height":243,"parent_burn_block_timestamp":1760631053,"parent_index_block_hash":"0x7ff029d4dd7e208df6d23e1465395e097c8f9bbf3feae2f7c0b6967c5edeb72b","parent_microblock":"0x0000000000000000000000000000000000000000000000000000000000000000","parent_microblock_sequence":0,"pox_v1_unlock_height":205,"pox_v2_unlock_height":207,"pox_v3_unlock_height":210,"reward_set":null,"signer_bitvec":"0006000000013f","signer_signature":["0065bd092dc95f86feb53c00c906e9d32fd079a7a0b042eeffe888324d00dce6725300bf1f2ab02d20f4349dc24b1166714549e5bc65da277de18432eea72b358c","01005a3df630f6750c95cba78597c4165c31833da8feb01ab51056a676dfc4132519fe7c259a1b6e6540e38ad1d07de7f8a358a6f3776eb0d44e9aa148545dc5c6","00406579f63880179a94dedc2938dd9513654296f4f0266db8563feeea472371e351b861c06e4ad557bf7f9c288bf63799c5195c13e3e023a1469fc33830f09dee"],"signer_signature_hash":"0x6c73505c1a853dc9b75fdeaf8c2819ae1d3f4094bc5efb918fec5b83343dc62c","tenure_height":39,"transactions":[{"burnchain_op":null,"contract_interface":null,"execution_cost":{"read_count":0,"read_length":0,"runtime":0,"write_count":0,"write_length":0},"microblock_hash":null,"microblock_parent_hash":null,"microblock_sequence":null,"raw_result":"0x0703","raw_tx":"0x8080000000040079596b2995032f42672a1610356aa2fe09886a6d0000000000000006000000000000012c00007874860186d7ec3c08c281d58e187d35f0f681fb37828ce139fb7372f13ff9093512d07d70ab94ed9f42395c7006c88a4bec72992c015ed07633af4aa025959d03020000000000051a68de2dbb6c14aaba2900031876ea3771599edd3a00000000000003e800000000000000000000000000000000000000000000000000000000000000000000","status":"success","tx_index":0,"txid":"0x793ff7404b44ddecaf9447c0cac4671c3eb94063faa30be43b42fe9058e541b8","vm_error":null}]} +12 2025-10-16T16:10:59.121Z /new_mempool_tx ["0x8080000000040068de2dbb6c14aaba2900031876ea3771599edd3a0000000000000006000000000000012c0001ab277b9bcf5b1ff01a8db368f7daac7d1d4d0d331b3fc511f3f55821364f1d8e7dc01fba37b1587ac7049b41efa4cd09d64dd84f3f0b73470671e18a3e35f45003020000000000051a7ce8e31e9120f4b3cb7bea0fed9de8556cadceb900000000000003e800000000000000000000000000000000000000000000000000000000000000000000"] +13 2025-10-16T16:11:02.610Z /new_block {"anchored_cost":{"read_count":0,"read_length":0,"runtime":0,"write_count":0,"write_length":0},"block_hash":"0x1780fbc68743fcc09257bd17699192f77aa46a57b9d06e6dfb7dd0d7a10e38ad","block_height":5,"block_time":1760631061,"burn_block_hash":"0x727c936aab71c050b1ad61ec22978eee21a429a4a8d0677236a6f237be62d696","burn_block_height":243,"burn_block_time":1760631053,"confirmed_microblocks_cost":{"read_count":0,"read_length":0,"runtime":0,"write_count":0,"write_length":0},"consensus_hash":"0xf8ccc25e7c3498dbab7b35d39c8f7fde4fafbb0d","cycle_number":null,"events":[{"committed":true,"event_index":0,"stx_transfer_event":{"amount":"1000","memo":"00000000000000000000000000000000000000000000000000000000000000000000","recipient":"ST1YEHRRYJ4GF9CYBFFN0ZVCXX1APSBEEQ5KEDN7M","sender":"ST1MDWBDVDGAANEH9001HGXQA6XRNK7PX7A7X8M6R"},"txid":"0x2ff66c6fc488f518c9b92a4e0418020ccf01919af28d855cbcfa2914a01070df","type":"stx_transfer_event"}],"index_block_hash":"0x5143467b1f218fc99c96a4aeb8c9503a4b2451842f344add7abd61c96dd2945e","matured_miner_rewards":[],"miner_signature":"0x0015ddb8fc5be4d143aa278464c19860589e1008371aac2ea0db7eaf3d38b4a1c876d62ee28ecc7005969dce99d81a55671981b043bc70da3d94303a7687381115","miner_txid":"0xb14f1935fbee43fa2ec068512e04df205dd4732411b30a80d91815b856310edf","parent_block_hash":"0x6c73505c1a853dc9b75fdeaf8c2819ae1d3f4094bc5efb918fec5b83343dc62c","parent_burn_block_hash":"0x727c936aab71c050b1ad61ec22978eee21a429a4a8d0677236a6f237be62d696","parent_burn_block_height":243,"parent_burn_block_timestamp":1760631053,"parent_index_block_hash":"0x46268911336eccf9f361e74740de49dacbcfa7fafa8b556fdfc7afb74fa0cabd","parent_microblock":"0x0000000000000000000000000000000000000000000000000000000000000000","parent_microblock_sequence":0,"pox_v1_unlock_height":205,"pox_v2_unlock_height":207,"pox_v3_unlock_height":210,"reward_set":null,"signer_bitvec":"0006000000013f","signer_signature":["00e9ad58f3b6cc5b5cd88818de7f4e87f178539b97f68048b54671dd1aea54d90e37239fc7bed468d5f9d5e39c99efd897160b88de1a1087fd367dea18a0a630fe","003a20a482de696ca0f58d7d30aa82c2f09d5705d4781c88d5c85712338d42e7622b5e5a6df19fb85b0607f7523264f96b38b4a36d71363083b5971b029a2d9067","00a18d74d0f0682cfb70b59638fa64f4420859f6b70efd2e122afac2c91920213d478ba192c11b098e57696b9887348908c7fd38384b0f84b3e229a244ec692e69"],"signer_signature_hash":"0x1780fbc68743fcc09257bd17699192f77aa46a57b9d06e6dfb7dd0d7a10e38ad","tenure_height":39,"transactions":[{"burnchain_op":null,"contract_interface":null,"execution_cost":{"read_count":0,"read_length":0,"runtime":0,"write_count":0,"write_length":0},"microblock_hash":null,"microblock_parent_hash":null,"microblock_sequence":null,"raw_result":"0x0703","raw_tx":"0x8080000000040068de2dbb6c14aaba2900031876ea3771599edd3a0000000000000006000000000000012c0001ab277b9bcf5b1ff01a8db368f7daac7d1d4d0d331b3fc511f3f55821364f1d8e7dc01fba37b1587ac7049b41efa4cd09d64dd84f3f0b73470671e18a3e35f45003020000000000051a7ce8e31e9120f4b3cb7bea0fed9de8556cadceb900000000000003e800000000000000000000000000000000000000000000000000000000000000000000","status":"success","tx_index":0,"txid":"0x2ff66c6fc488f518c9b92a4e0418020ccf01919af28d855cbcfa2914a01070df","vm_error":null}]} +14 2025-10-16T16:11:03.268Z /new_mempool_tx ["0x808000000004007ce8e31e9120f4b3cb7bea0fed9de8556cadceb90000000000000007000000000000012c00017ff468ce1ed347266928a90b82d5150b5126b699c303a499cb0874c6a8fd4c831e5c54eb1c7927d429c30bd03ace5ba67d27e75248936e3c3a319658deb7717003020000000000051a79596b2995032f42672a1610356aa2fe09886a6d00000000000003e800000000000000000000000000000000000000000000000000000000000000000000"] +15 2025-10-16T16:11:05.244Z /new_mempool_tx ["0x80800000000400c626f235a0c431189d419349f5ff52f2e2f3e603000000000000000000000000009896800001c129edbed8ed5ed20749842e28eeebb3bc7a267bf9f80a06ba2a9c75246f46367b387d50f7bbdf43850496ece56f4d326a038dfcee7ec6659b9d7772ca4ef784030200000000010977696e746572706f63000006a328696d706c2d747261697420275354313245593939475334594b50304350324346573653455057513243475652574b3547484b4452562e616476656e742d63616c656e6461722e646f6f722d7472616974290a0a28646566696e652d646174612d766172206d73672028737472696e672d757466382034303030292075224c6f6f6b20617420746865206c6f6773206f6620796f7572206e6f646520616e6420686176652061206e69636520416476656e7420736561736f6e2122290a28646566696e652d726561642d6f6e6c7920286f70656e290a202028626567696e0a287072696e742022202020202020202020202e20202020202e20202e2020202020202b20202020202e2020202020202e202020202020202020202e2020202020202020202020202022290a287072696e74202220202020202e202020202020202e2020202020202e202020202023202020202020202e20202020202020202020202e202020202020202020202020202020202022290a287072696e74202220202020202020202e2020202020202e2020202020202020202323232020202020202020202020202e2020202020202e2020202020202e20202020202020202022290a287072696e7420222020202020202e2020202020202e2020202a233a2e202e3a23232a232323232a20202e20202020202020202020202020202020202020202020202020202022290a287072696e742022202020202020202e20202020202a233a2e202020202e3a232a2323232a233a2e202020202e3a232a20202e20202020202020202e202020202020202e2020202022290a287072696e74202220202e202020202020202020202020202a2323232323232323232a2323232323232323232a20202020202020202e20202020202020202e20202020202020202022290a287072696e74202220202020202020202e202020202a233a2e20202a232323232a2323232a232323232a20202e3a232a2020202e202020202020202e20202020202020202020202022290a287072696e74202220202020202e20202020202e20202a232323232323232a2a23232a23232a2a232323232323232a2020202020202020202020202020202020202e20202020202022290a287072696e742022202020202020202020202020202020202e2a23232a23232323232a23232323232a23232a20202020202020202020202e2020202020202e20202020202020202022290a287072696e7420222020202020202e2020202020202e2020202a233a2e202e3a23232a23233a2e202e3a232a20202e2020202020202e20202020202020202020202020202020202022290a287072696e742022202020202020202020202e2020202020202e202a232323232a2323232a232323232a20202e20202020202020202020202020202020202020202020202020202022290a287072696e742022202020202020202e20202020202a233a2e202020202e3a232a2323232a233a2e202020202e3a232a20202e20202020202020202e202020202020202e2020202022290a287072696e74202220202e202020202020202020202020202a2323232323232323232a2323232323232323232a20202020202020202e20202020202020202e20202020202020202022290a287072696e74202220202020202020202e202020202a233a2e20202a232323232a2323232a232323232a20202e3a232a2020202e202020202020202e20202020202020202020202022290a287072696e74202220202020202e20202020202e20202a232323232323232a2a23232a23232a2a232323232323232a2020202020202020202020202020202020202e20202020202022290a287072696e742022202020202020202020202020202020202e2a23232a23232323232a23232323232a23232a20202020202020202020202e2020202020202e20202020202020202022290a287072696e7420222020202020202020202020202e20202020202a2020202020203030302020202020202a202020202e20202020202e202020202020202020202020205c305c6e2573242b24287863616c63292b696e66202020202022290a287072696e742022202020202020202e2020202020202020202e2020202e20202030303020202020202e20202020202020202e202020202020202e2020202020202020202020202022290a287072696e7420222e2e202e2e202e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e4f3030304f2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e202e2e2e2e2e2e202e2e2e22290a20202020286f6b20287072696e7420287661722d676574206d7367292929290a29"] +16 2025-10-16T16:11:06.704Z /new_block {"anchored_cost":{"read_count":0,"read_length":0,"runtime":45954,"write_count":0,"write_length":0},"block_hash":"0xd9a25ea74d09ccc982826adddada1d066a8c2694f0b1dd02e6822f515c34f76c","block_height":6,"block_time":1760631065,"burn_block_hash":"0x727c936aab71c050b1ad61ec22978eee21a429a4a8d0677236a6f237be62d696","burn_block_height":243,"burn_block_time":1760631053,"confirmed_microblocks_cost":{"read_count":0,"read_length":0,"runtime":0,"write_count":0,"write_length":0},"consensus_hash":"0xf8ccc25e7c3498dbab7b35d39c8f7fde4fafbb0d","cycle_number":null,"events":[{"committed":true,"event_index":0,"stx_transfer_event":{"amount":"1000","memo":"00000000000000000000000000000000000000000000000000000000000000000000","recipient":"ST1WNJTS9JM1JYGK758B10DBAMBZ0K23ADP392SBV","sender":"ST1YEHRRYJ4GF9CYBFFN0ZVCXX1APSBEEQ5KEDN7M"},"txid":"0x2e544d4ae200758ed787a76333dda711ab74f3da56a4f2c95f3dbd92a703e351","type":"stx_transfer_event"}],"index_block_hash":"0xf4f92afcddea03776ec13e04b1fae29e1fef4432fc8be59c79d286002621eb2e","matured_miner_rewards":[],"miner_signature":"0x01d691ebd7fab8c1721e29773ceb20163c419c2df09f7c47ec0a9c11ddccb0754c7b80b0af690022330469f07547c309acee15618643051f847e74639f5b697130","miner_txid":"0xb14f1935fbee43fa2ec068512e04df205dd4732411b30a80d91815b856310edf","parent_block_hash":"0x1780fbc68743fcc09257bd17699192f77aa46a57b9d06e6dfb7dd0d7a10e38ad","parent_burn_block_hash":"0x727c936aab71c050b1ad61ec22978eee21a429a4a8d0677236a6f237be62d696","parent_burn_block_height":243,"parent_burn_block_timestamp":1760631053,"parent_index_block_hash":"0x5143467b1f218fc99c96a4aeb8c9503a4b2451842f344add7abd61c96dd2945e","parent_microblock":"0x0000000000000000000000000000000000000000000000000000000000000000","parent_microblock_sequence":0,"pox_v1_unlock_height":205,"pox_v2_unlock_height":207,"pox_v3_unlock_height":210,"reward_set":null,"signer_bitvec":"0006000000013f","signer_signature":["01d5fde95b29df8ed95b007ffb1afb8d55a119bf1999b3a97dfed81a3bc6a1ba9573569464d9302baa754049f3c8cce26b78d1faf72f412a25f9d5b78a00e0e620","01421e084d770eeab0fc4704d6ca347f4c7ab7ca1f1dd55efbd0d11ed4475939931883e52c267f8a6e5c400218147fa369b8ec4c5e34bd31fc4cbaedc79f419a35","01d48187f06a4660617b3e1e7dc1668ca1f79af229364a32e9ea75d8de9749ee4204f5c91905b8859663f9f476c29082193e9c5277a11de4d133a7f3934cbf1517"],"signer_signature_hash":"0xd9a25ea74d09ccc982826adddada1d066a8c2694f0b1dd02e6822f515c34f76c","tenure_height":39,"transactions":[{"burnchain_op":null,"contract_interface":null,"execution_cost":{"read_count":0,"read_length":0,"runtime":45954,"write_count":0,"write_length":0},"microblock_hash":null,"microblock_parent_hash":null,"microblock_sequence":null,"raw_result":"0x0809","raw_tx":"0x80800000000400c626f235a0c431189d419349f5ff52f2e2f3e603000000000000000000000000009896800001c129edbed8ed5ed20749842e28eeebb3bc7a267bf9f80a06ba2a9c75246f46367b387d50f7bbdf43850496ece56f4d326a038dfcee7ec6659b9d7772ca4ef784030200000000010977696e746572706f63000006a328696d706c2d747261697420275354313245593939475334594b50304350324346573653455057513243475652574b3547484b4452562e616476656e742d63616c656e6461722e646f6f722d7472616974290a0a28646566696e652d646174612d766172206d73672028737472696e672d757466382034303030292075224c6f6f6b20617420746865206c6f6773206f6620796f7572206e6f646520616e6420686176652061206e69636520416476656e7420736561736f6e2122290a28646566696e652d726561642d6f6e6c7920286f70656e290a202028626567696e0a287072696e742022202020202020202020202e20202020202e20202e2020202020202b20202020202e2020202020202e202020202020202020202e2020202020202020202020202022290a287072696e74202220202020202e202020202020202e2020202020202e202020202023202020202020202e20202020202020202020202e202020202020202020202020202020202022290a287072696e74202220202020202020202e2020202020202e2020202020202020202323232020202020202020202020202e2020202020202e2020202020202e20202020202020202022290a287072696e7420222020202020202e2020202020202e2020202a233a2e202e3a23232a232323232a20202e20202020202020202020202020202020202020202020202020202022290a287072696e742022202020202020202e20202020202a233a2e202020202e3a232a2323232a233a2e202020202e3a232a20202e20202020202020202e202020202020202e2020202022290a287072696e74202220202e202020202020202020202020202a2323232323232323232a2323232323232323232a20202020202020202e20202020202020202e20202020202020202022290a287072696e74202220202020202020202e202020202a233a2e20202a232323232a2323232a232323232a20202e3a232a2020202e202020202020202e20202020202020202020202022290a287072696e74202220202020202e20202020202e20202a232323232323232a2a23232a23232a2a232323232323232a2020202020202020202020202020202020202e20202020202022290a287072696e742022202020202020202020202020202020202e2a23232a23232323232a23232323232a23232a20202020202020202020202e2020202020202e20202020202020202022290a287072696e7420222020202020202e2020202020202e2020202a233a2e202e3a23232a23233a2e202e3a232a20202e2020202020202e20202020202020202020202020202020202022290a287072696e742022202020202020202020202e2020202020202e202a232323232a2323232a232323232a20202e20202020202020202020202020202020202020202020202020202022290a287072696e742022202020202020202e20202020202a233a2e202020202e3a232a2323232a233a2e202020202e3a232a20202e20202020202020202e202020202020202e2020202022290a287072696e74202220202e202020202020202020202020202a2323232323232323232a2323232323232323232a20202020202020202e20202020202020202e20202020202020202022290a287072696e74202220202020202020202e202020202a233a2e20202a232323232a2323232a232323232a20202e3a232a2020202e202020202020202e20202020202020202020202022290a287072696e74202220202020202e20202020202e20202a232323232323232a2a23232a23232a2a232323232323232a2020202020202020202020202020202020202e20202020202022290a287072696e742022202020202020202020202020202020202e2a23232a23232323232a23232323232a23232a20202020202020202020202e2020202020202e20202020202020202022290a287072696e7420222020202020202020202020202e20202020202a2020202020203030302020202020202a202020202e20202020202e202020202020202020202020205c305c6e2573242b24287863616c63292b696e66202020202022290a287072696e742022202020202020202e2020202020202020202e2020202e20202030303020202020202e20202020202020202e202020202020202e2020202020202020202020202022290a287072696e7420222e2e202e2e202e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e4f3030304f2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e202e2e2e2e2e2e202e2e2e22290a20202020286f6b20287072696e7420287661722d676574206d7367292929290a29","status":"abort_by_response","tx_index":0,"txid":"0x322e00a916a8af811be9082e48786ab84b7210a70876eff0634c1eefb82ded7e","vm_error":"illegal ascii string \" . * 000 * . . \u0000\n%s$+$(xcalc)+inf \""},{"burnchain_op":null,"contract_interface":null,"execution_cost":{"read_count":0,"read_length":0,"runtime":0,"write_count":0,"write_length":0},"microblock_hash":null,"microblock_parent_hash":null,"microblock_sequence":null,"raw_result":"0x0703","raw_tx":"0x808000000004007ce8e31e9120f4b3cb7bea0fed9de8556cadceb90000000000000007000000000000012c00017ff468ce1ed347266928a90b82d5150b5126b699c303a499cb0874c6a8fd4c831e5c54eb1c7927d429c30bd03ace5ba67d27e75248936e3c3a319658deb7717003020000000000051a79596b2995032f42672a1610356aa2fe09886a6d00000000000003e800000000000000000000000000000000000000000000000000000000000000000000","status":"success","tx_index":1,"txid":"0x2e544d4ae200758ed787a76333dda711ab74f3da56a4f2c95f3dbd92a703e351","vm_error":null}]} +17 2025-10-16T16:11:07.412Z /new_mempool_tx ["0x8080000000040079596b2995032f42672a1610356aa2fe09886a6d0000000000000007000000000000012c00014d8cd4d6eace3146faca31e9299053de0eb3e20d5cb50ebbf27a1645e3410e774bed6c973f0b644f2d2772042a5d9d916f27714ac9b3f993149e8a1ec72acfc003020000000000051a68de2dbb6c14aaba2900031876ea3771599edd3a00000000000003e800000000000000000000000000000000000000000000000000000000000000000000"] +18 2025-10-16T16:11:10.826Z /new_block {"anchored_cost":{"read_count":0,"read_length":0,"runtime":0,"write_count":0,"write_length":0},"block_hash":"0x0176cae0fa5ed0b0a2dbd7f3c9ae2c9c19afc1b82fe4844d14133259c89042aa","block_height":7,"block_time":1760631069,"burn_block_hash":"0x727c936aab71c050b1ad61ec22978eee21a429a4a8d0677236a6f237be62d696","burn_block_height":243,"burn_block_time":1760631053,"confirmed_microblocks_cost":{"read_count":0,"read_length":0,"runtime":0,"write_count":0,"write_length":0},"consensus_hash":"0xf8ccc25e7c3498dbab7b35d39c8f7fde4fafbb0d","cycle_number":null,"events":[{"committed":true,"event_index":0,"stx_transfer_event":{"amount":"1000","memo":"00000000000000000000000000000000000000000000000000000000000000000000","recipient":"ST1MDWBDVDGAANEH9001HGXQA6XRNK7PX7A7X8M6R","sender":"ST1WNJTS9JM1JYGK758B10DBAMBZ0K23ADP392SBV"},"txid":"0xfa7faf10b946209de4524b53154f0f2b1d70ff3de27368c6fef5089960bd0058","type":"stx_transfer_event"}],"index_block_hash":"0xd63f992e845cb66ae8e0a867f6e51560cc5bf56b1ebd6b4b6c6e03c81f7fce5c","matured_miner_rewards":[],"miner_signature":"0x0060a9b961a716d676bfad1479de8996455ad69b3a154f065a19000c9933ecd65066cc1f12ce24444b2f6e47ccc47f03cdc1da1b304f1c29a4e20a0ff80b1c6707","miner_txid":"0xb14f1935fbee43fa2ec068512e04df205dd4732411b30a80d91815b856310edf","parent_block_hash":"0xd9a25ea74d09ccc982826adddada1d066a8c2694f0b1dd02e6822f515c34f76c","parent_burn_block_hash":"0x727c936aab71c050b1ad61ec22978eee21a429a4a8d0677236a6f237be62d696","parent_burn_block_height":243,"parent_burn_block_timestamp":1760631053,"parent_index_block_hash":"0xf4f92afcddea03776ec13e04b1fae29e1fef4432fc8be59c79d286002621eb2e","parent_microblock":"0x0000000000000000000000000000000000000000000000000000000000000000","parent_microblock_sequence":0,"pox_v1_unlock_height":205,"pox_v2_unlock_height":207,"pox_v3_unlock_height":210,"reward_set":null,"signer_bitvec":"0006000000013f","signer_signature":["01da18d663d93c8a5007d820ed3b577abed3c2b4d6d4a1fbf0b1578cb5dc33711b636a360d75a4934a234b43dcdf67b862cfb8250706d8f8679f586dc9cc470696","015d577d0428ac408550bf3c4c0230a96a8d949f9145f60a61a0833fd97641d2b53dbf1c0cd8eaf9921ab85a2b4c0991e074654c7bfbac9cc748ebf6429e0c47c4","006647a57f5185057417a9bcb94506ae0f1bbb3cdbbcdcb70b8b86e66b6d654dba73ed4369b084dded02b3ef9add6f6e427eacc870a2e34894531bffa0c65581ae"],"signer_signature_hash":"0x0176cae0fa5ed0b0a2dbd7f3c9ae2c9c19afc1b82fe4844d14133259c89042aa","tenure_height":39,"transactions":[{"burnchain_op":null,"contract_interface":null,"execution_cost":{"read_count":0,"read_length":0,"runtime":0,"write_count":0,"write_length":0},"microblock_hash":null,"microblock_parent_hash":null,"microblock_sequence":null,"raw_result":"0x0703","raw_tx":"0x8080000000040079596b2995032f42672a1610356aa2fe09886a6d0000000000000007000000000000012c00014d8cd4d6eace3146faca31e9299053de0eb3e20d5cb50ebbf27a1645e3410e774bed6c973f0b644f2d2772042a5d9d916f27714ac9b3f993149e8a1ec72acfc003020000000000051a68de2dbb6c14aaba2900031876ea3771599edd3a00000000000003e800000000000000000000000000000000000000000000000000000000000000000000","status":"success","tx_index":0,"txid":"0xfa7faf10b946209de4524b53154f0f2b1d70ff3de27368c6fef5089960bd0058","vm_error":null}]} +19 2025-10-16T16:11:11.572Z /new_mempool_tx ["0x8080000000040068de2dbb6c14aaba2900031876ea3771599edd3a0000000000000007000000000000012c00013b52c5d18835ccdcbfda50ba5dca909783af391a2b580aff78e6af69b16cd46a27efdd985b07f542a13d1db01e8aa2c7ad346b5d45e40448b622ee5f9f34d03703020000000000051a7ce8e31e9120f4b3cb7bea0fed9de8556cadceb900000000000003e800000000000000000000000000000000000000000000000000000000000000000000"] +20 2025-10-16T16:11:14.557Z /new_block {"anchored_cost":{"read_count":0,"read_length":0,"runtime":0,"write_count":0,"write_length":0},"block_hash":"0x434f01823f9d7aed902a3352ba04e474fe6e35d3da5e6c2ab76e0ad3e0a4a1e9","block_height":8,"block_time":1760631073,"burn_block_hash":"0x727c936aab71c050b1ad61ec22978eee21a429a4a8d0677236a6f237be62d696","burn_block_height":243,"burn_block_time":1760631053,"confirmed_microblocks_cost":{"read_count":0,"read_length":0,"runtime":0,"write_count":0,"write_length":0},"consensus_hash":"0xf8ccc25e7c3498dbab7b35d39c8f7fde4fafbb0d","cycle_number":null,"events":[{"committed":true,"event_index":0,"stx_transfer_event":{"amount":"1000","memo":"00000000000000000000000000000000000000000000000000000000000000000000","recipient":"ST1YEHRRYJ4GF9CYBFFN0ZVCXX1APSBEEQ5KEDN7M","sender":"ST1MDWBDVDGAANEH9001HGXQA6XRNK7PX7A7X8M6R"},"txid":"0xe4cec6a8ecb72042834675d440ed7644b595e2e058abe489d22ac9abd0e335d2","type":"stx_transfer_event"}],"index_block_hash":"0x2977cd2438b638ea893d6aab602715b28f93dc8950e09cf592f5b1b64db0c262","matured_miner_rewards":[],"miner_signature":"0x01028af85ad636a97d8035888b19c6e3e01e5de72425babef50ac42248b655e3904c8153308e8e796080680bd0da3989eb46533e32ced6927525c9ef9a7b73431e","miner_txid":"0xb14f1935fbee43fa2ec068512e04df205dd4732411b30a80d91815b856310edf","parent_block_hash":"0x0176cae0fa5ed0b0a2dbd7f3c9ae2c9c19afc1b82fe4844d14133259c89042aa","parent_burn_block_hash":"0x727c936aab71c050b1ad61ec22978eee21a429a4a8d0677236a6f237be62d696","parent_burn_block_height":243,"parent_burn_block_timestamp":1760631053,"parent_index_block_hash":"0xd63f992e845cb66ae8e0a867f6e51560cc5bf56b1ebd6b4b6c6e03c81f7fce5c","parent_microblock":"0x0000000000000000000000000000000000000000000000000000000000000000","parent_microblock_sequence":0,"pox_v1_unlock_height":205,"pox_v2_unlock_height":207,"pox_v3_unlock_height":210,"reward_set":null,"signer_bitvec":"0006000000013f","signer_signature":["00262245e3a37a779f1e2c16d73dae799ca02a0b4398506cb7bbddab6bdadb67df73e7eccbbfd2228737e235e916aa614e555afce0ff4c2938d425b0a63a0ae31c","01323d476e86e0141a2151a12ee1d6bc746752859a347aed4c4924d9e7cc9cdf0c1fb3e0414131351dccc1d7ce1215fa6ec988394d2ff4e79608c320951f29701e","00fc688ffca904abc701f7f3f9e97885279f43c125eafa82c2f57740bdb00974404458e94425b70b05e76c7c9071352b34b3abc0759fc9be5ba277f3541b4d1a17"],"signer_signature_hash":"0x434f01823f9d7aed902a3352ba04e474fe6e35d3da5e6c2ab76e0ad3e0a4a1e9","tenure_height":39,"transactions":[{"burnchain_op":null,"contract_interface":null,"execution_cost":{"read_count":0,"read_length":0,"runtime":0,"write_count":0,"write_length":0},"microblock_hash":null,"microblock_parent_hash":null,"microblock_sequence":null,"raw_result":"0x0703","raw_tx":"0x8080000000040068de2dbb6c14aaba2900031876ea3771599edd3a0000000000000007000000000000012c00013b52c5d18835ccdcbfda50ba5dca909783af391a2b580aff78e6af69b16cd46a27efdd985b07f542a13d1db01e8aa2c7ad346b5d45e40448b622ee5f9f34d03703020000000000051a7ce8e31e9120f4b3cb7bea0fed9de8556cadceb900000000000003e800000000000000000000000000000000000000000000000000000000000000000000","status":"success","tx_index":0,"txid":"0xe4cec6a8ecb72042834675d440ed7644b595e2e058abe489d22ac9abd0e335d2","vm_error":null}]} +21 2025-10-16T16:11:15.709Z /new_mempool_tx ["0x808000000004007ce8e31e9120f4b3cb7bea0fed9de8556cadceb90000000000000008000000000000012c0000d7cd1928f0b70506326858d50e600c11b891d967b93fafaae3b93e9641e5db427483a60ec4a6b3ffe01cd1365dbcb3a33fa7c8e5e0f576b1677cd236e2e7671803020000000000051a79596b2995032f42672a1610356aa2fe09886a6d00000000000003e800000000000000000000000000000000000000000000000000000000000000000000"] +22 2025-10-16T16:11:18.886Z /new_block {"anchored_cost":{"read_count":0,"read_length":0,"runtime":0,"write_count":0,"write_length":0},"block_hash":"0x468d0450c30953576966d8eab360476a86fd0936cd08f1f2370dc5243c9208c4","block_height":9,"block_time":1760631077,"burn_block_hash":"0x727c936aab71c050b1ad61ec22978eee21a429a4a8d0677236a6f237be62d696","burn_block_height":243,"burn_block_time":1760631053,"confirmed_microblocks_cost":{"read_count":0,"read_length":0,"runtime":0,"write_count":0,"write_length":0},"consensus_hash":"0xf8ccc25e7c3498dbab7b35d39c8f7fde4fafbb0d","cycle_number":null,"events":[{"committed":true,"event_index":0,"stx_transfer_event":{"amount":"1000","memo":"00000000000000000000000000000000000000000000000000000000000000000000","recipient":"ST1WNJTS9JM1JYGK758B10DBAMBZ0K23ADP392SBV","sender":"ST1YEHRRYJ4GF9CYBFFN0ZVCXX1APSBEEQ5KEDN7M"},"txid":"0xea39660dc25393af3d240e074aaf2d92733ec6129f7071c73adae800b731d332","type":"stx_transfer_event"}],"index_block_hash":"0x2ac2438bfc22832a8c9b847712fac777647e58681a2f5aa802fced3a8a1e6f62","matured_miner_rewards":[],"miner_signature":"0x012b3a39c1dbc946e9af54b45cd18c31bacd04b0f38832b3c32fbd7c143910a6a21fe035cdff1a94472bf20d65010d766e4d7679550df94b6697ea329483c263de","miner_txid":"0xb14f1935fbee43fa2ec068512e04df205dd4732411b30a80d91815b856310edf","parent_block_hash":"0x434f01823f9d7aed902a3352ba04e474fe6e35d3da5e6c2ab76e0ad3e0a4a1e9","parent_burn_block_hash":"0x727c936aab71c050b1ad61ec22978eee21a429a4a8d0677236a6f237be62d696","parent_burn_block_height":243,"parent_burn_block_timestamp":1760631053,"parent_index_block_hash":"0x2977cd2438b638ea893d6aab602715b28f93dc8950e09cf592f5b1b64db0c262","parent_microblock":"0x0000000000000000000000000000000000000000000000000000000000000000","parent_microblock_sequence":0,"pox_v1_unlock_height":205,"pox_v2_unlock_height":207,"pox_v3_unlock_height":210,"reward_set":null,"signer_bitvec":"0006000000013f","signer_signature":["0001adb383e577458dbae05eff0f89494733ae84eb7725486540ee7e22af0215531697372650a1f7e7498c11ee36909937846782c02e11941b417da5af2c06a2ec","00b73c1d9cb7896d5614096775884d1ae3904d307dc22928fdb36ed15c13b1d6c54fa16dbabd07ce7889d88b5d49add20e6b332dbe408f4090d7a208ae56dde197","00ec9898a55e332b23f04df178cde72d4f6315ff3847bc89e50e8afa972976987f66d2f3e209b4e1b150bc439052c81f562b0a79188195b43bd997ca9838da92b5"],"signer_signature_hash":"0x468d0450c30953576966d8eab360476a86fd0936cd08f1f2370dc5243c9208c4","tenure_height":39,"transactions":[{"burnchain_op":null,"contract_interface":null,"execution_cost":{"read_count":0,"read_length":0,"runtime":0,"write_count":0,"write_length":0},"microblock_hash":null,"microblock_parent_hash":null,"microblock_sequence":null,"raw_result":"0x0703","raw_tx":"0x808000000004007ce8e31e9120f4b3cb7bea0fed9de8556cadceb90000000000000008000000000000012c0000d7cd1928f0b70506326858d50e600c11b891d967b93fafaae3b93e9641e5db427483a60ec4a6b3ffe01cd1365dbcb3a33fa7c8e5e0f576b1677cd236e2e7671803020000000000051a79596b2995032f42672a1610356aa2fe09886a6d00000000000003e800000000000000000000000000000000000000000000000000000000000000000000","status":"success","tx_index":0,"txid":"0xea39660dc25393af3d240e074aaf2d92733ec6129f7071c73adae800b731d332","vm_error":null}]} +23 2025-10-16T16:11:19.846Z /new_mempool_tx ["0x8080000000040079596b2995032f42672a1610356aa2fe09886a6d0000000000000008000000000000012c0000d1840b2a5e063febf0774e3f9b0ddf49f1e35d4ea187825c35fed04dfcf1047e19ebcf76df9ef3bf65813d5c2215589e0c83c7b91e54aa0f5bd42574ea91453703020000000000051a68de2dbb6c14aaba2900031876ea3771599edd3a00000000000003e800000000000000000000000000000000000000000000000000000000000000000000"] +24 2025-10-16T16:11:23.034Z /new_block {"anchored_cost":{"read_count":0,"read_length":0,"runtime":0,"write_count":0,"write_length":0},"block_hash":"0x6a566b480d007e85ddd15ba10c28fd1ac4789136fa766fde23729a1928cae884","block_height":10,"block_time":1760631081,"burn_block_hash":"0x727c936aab71c050b1ad61ec22978eee21a429a4a8d0677236a6f237be62d696","burn_block_height":243,"burn_block_time":1760631053,"confirmed_microblocks_cost":{"read_count":0,"read_length":0,"runtime":0,"write_count":0,"write_length":0},"consensus_hash":"0xf8ccc25e7c3498dbab7b35d39c8f7fde4fafbb0d","cycle_number":null,"events":[{"committed":true,"event_index":0,"stx_transfer_event":{"amount":"1000","memo":"00000000000000000000000000000000000000000000000000000000000000000000","recipient":"ST1MDWBDVDGAANEH9001HGXQA6XRNK7PX7A7X8M6R","sender":"ST1WNJTS9JM1JYGK758B10DBAMBZ0K23ADP392SBV"},"txid":"0xac82b1cc502609fd26185c816857b474162201d3e99054c444dba574337cef22","type":"stx_transfer_event"}],"index_block_hash":"0xb21dbd8c8d45670983dbb4f789021885f77d0b98ac9f538c640e58d811c02a9b","matured_miner_rewards":[],"miner_signature":"0x01e5c561af78ca025e53d34141675c77400b56079ac8e9d09fdcd6588c06ed18ca75c6c162518e956ca65d7231850e4ecfa5128cf4a25de4cc9d46563ee30196a5","miner_txid":"0xb14f1935fbee43fa2ec068512e04df205dd4732411b30a80d91815b856310edf","parent_block_hash":"0x468d0450c30953576966d8eab360476a86fd0936cd08f1f2370dc5243c9208c4","parent_burn_block_hash":"0x727c936aab71c050b1ad61ec22978eee21a429a4a8d0677236a6f237be62d696","parent_burn_block_height":243,"parent_burn_block_timestamp":1760631053,"parent_index_block_hash":"0x2ac2438bfc22832a8c9b847712fac777647e58681a2f5aa802fced3a8a1e6f62","parent_microblock":"0x0000000000000000000000000000000000000000000000000000000000000000","parent_microblock_sequence":0,"pox_v1_unlock_height":205,"pox_v2_unlock_height":207,"pox_v3_unlock_height":210,"reward_set":null,"signer_bitvec":"0006000000013f","signer_signature":["01468a37a45c5d3b31adfddba3514ee6ff172323b0ec1099470d288a4fe88a0d0d06c0f4e58e7b670c2a6af516934d5339904f322a6272fac4b0e5635fbb0debcd","00418278b06f55d63cd0ba9f2b113d7558914b183c00b6255d0802bd53a1b5701919874c411b14b84de2aa946c44a967109420f40a2fef5d8a77de91a2fa647104","0155200758655752500542bffbfb7f426239f8abb04b418f5bd313cca51c1f1f4b550fca9dea81f4350bc5dfd17f0aad2a1f9a0121a76b6085dfbebff3c31b0e7b"],"signer_signature_hash":"0x6a566b480d007e85ddd15ba10c28fd1ac4789136fa766fde23729a1928cae884","tenure_height":39,"transactions":[{"burnchain_op":null,"contract_interface":null,"execution_cost":{"read_count":0,"read_length":0,"runtime":0,"write_count":0,"write_length":0},"microblock_hash":null,"microblock_parent_hash":null,"microblock_sequence":null,"raw_result":"0x0703","raw_tx":"0x8080000000040079596b2995032f42672a1610356aa2fe09886a6d0000000000000008000000000000012c0000d1840b2a5e063febf0774e3f9b0ddf49f1e35d4ea187825c35fed04dfcf1047e19ebcf76df9ef3bf65813d5c2215589e0c83c7b91e54aa0f5bd42574ea91453703020000000000051a68de2dbb6c14aaba2900031876ea3771599edd3a00000000000003e800000000000000000000000000000000000000000000000000000000000000000000","status":"success","tx_index":0,"txid":"0xac82b1cc502609fd26185c816857b474162201d3e99054c444dba574337cef22","vm_error":null}]} +25 2025-10-16T16:11:23.261Z /new_burn_block {"burn_amount":60000,"burn_block_hash":"0x31f6bfc2a28cc32436b0dfbfbeb118e06f633d7dbb78e792160e92b54db5b0c0","burn_block_height":244,"consensus_hash":"0xa41e9804a61544c51ab35500160ae9fae97757f6","parent_burn_block_hash":"0x727c936aab71c050b1ad61ec22978eee21a429a4a8d0677236a6f237be62d696","reward_recipients":[],"reward_slot_holders":[]} +26 2025-10-16T16:11:24.018Z /new_mempool_tx ["0x8080000000040068de2dbb6c14aaba2900031876ea3771599edd3a0000000000000008000000000000012c00011d9f7dd230163c91e9d181823d2d9556f107bf2f70b41e779270e9b8879485a82987ab1e3d9920eddd0d85dfddfaf257c78f1d17ad2ce344714c7bba273d431a03020000000000051a7ce8e31e9120f4b3cb7bea0fed9de8556cadceb900000000000003e800000000000000000000000000000000000000000000000000000000000000000000"] +27 2025-10-16T16:11:26.242Z /new_block {"anchored_cost":{"read_count":0,"read_length":0,"runtime":0,"write_count":0,"write_length":0},"block_hash":"0x14ad21903299a794c0f6070a6adcc5f1fb759ec343bc0c614ae3f71a397cca60","block_height":11,"block_time":1760631084,"burn_block_hash":"0x31f6bfc2a28cc32436b0dfbfbeb118e06f633d7dbb78e792160e92b54db5b0c0","burn_block_height":244,"burn_block_time":1760631083,"confirmed_microblocks_cost":{"read_count":0,"read_length":0,"runtime":0,"write_count":0,"write_length":0},"consensus_hash":"0xa41e9804a61544c51ab35500160ae9fae97757f6","cycle_number":null,"events":[],"index_block_hash":"0x09a8fcde5c05f0a097fca7af9ad2cdbebfb2469a5e4d5f56300551c51c881e7f","matured_miner_rewards":[],"miner_signature":"0x01184ff6be67c215f468cf1d81884bc95450dc19d838bbbbfd7613486c654b0cbe794cb75b1c7de6369a164ac82919b0ed60070a76fc41e292ee835462b7f66609","miner_txid":"0x3bd6e9587ce6bc5316697c1161e35b95d3a2be951318719f8adeb38088124721","parent_block_hash":"0x6a566b480d007e85ddd15ba10c28fd1ac4789136fa766fde23729a1928cae884","parent_burn_block_hash":"0x727c936aab71c050b1ad61ec22978eee21a429a4a8d0677236a6f237be62d696","parent_burn_block_height":243,"parent_burn_block_timestamp":1760631053,"parent_index_block_hash":"0xb21dbd8c8d45670983dbb4f789021885f77d0b98ac9f538c640e58d811c02a9b","parent_microblock":"0x0000000000000000000000000000000000000000000000000000000000000000","parent_microblock_sequence":0,"pox_v1_unlock_height":205,"pox_v2_unlock_height":207,"pox_v3_unlock_height":210,"reward_set":null,"signer_bitvec":"0006000000013f","signer_signature":["00aae3b10763de51ce384198998994daa8432db31e92727f56cb746a1ba457ced351ed40bc6f2bf3f06471a245744b6a80968f089292ccca0b64684889b7885379","010e992f55094c4684b7eec0a8ab22a01577af8f0351ce2b5d7843b63348469954484d7f73a1b7d9d7013bc52ff490f7bef6731ec8efb9a688287e90b5ec429646","01975814dc43ab381953141cf9f01a816145502f16ed6a2efafc0edad6801ddea872e2da2c366138ac7bdf6e9683b977db4ca549b3ef4e5e5553773f495d338fe7"],"signer_signature_hash":"0x14ad21903299a794c0f6070a6adcc5f1fb759ec343bc0c614ae3f71a397cca60","tenure_height":40,"transactions":[{"burnchain_op":null,"contract_interface":null,"execution_cost":{"read_count":0,"read_length":0,"runtime":0,"write_count":0,"write_length":0},"microblock_hash":null,"microblock_parent_hash":null,"microblock_sequence":null,"raw_result":"0x0703","raw_tx":"0x80800000000400cd06e933c001d19bf824a4c31864a5b27e0274e8000000000000000d0000000000000000000105a1d3bb8fe9c9fa6dc4ade4691a730b2718f0440c725fb331261781122916e1611ca3038510b5456692082a8e1a3d5b3411a1b1f2a647b90493be16ccd7f52901020000000007a41e9804a61544c51ab35500160ae9fae97757f6f8ccc25e7c3498dbab7b35d39c8f7fde4fafbb0da41e9804a61544c51ab35500160ae9fae97757f6b21dbd8c8d45670983dbb4f789021885f77d0b98ac9f538c640e58d811c02a9b0000000800cd06e933c001d19bf824a4c31864a5b27e0274e8","status":"success","tx_index":0,"txid":"0xa2489b8eb7e694edddd5df60b831f8dbbd9681ddfa3f0c39981aaee09719d4b1","vm_error":null},{"burnchain_op":null,"contract_interface":null,"execution_cost":{"read_count":0,"read_length":0,"runtime":0,"write_count":0,"write_length":0},"microblock_hash":null,"microblock_parent_hash":null,"microblock_sequence":null,"raw_result":"0x0703","raw_tx":"0x80800000000400cd06e933c001d19bf824a4c31864a5b27e0274e8000000000000000e00000000000000000000437a9aeb82aecdd7bfc64ce47240b9c96b74c32879a5b2d212304a5e4b085f00166f06be8bf7d62531bb2635c9c8aebf1af71e02de15b2240c50034f9473e9e90102000000000800000000000000000000000000000000000000000000000000000000000000000a051aa8ec901f7775d4d09eef137cf238db131f68814eb1c77a74914c8cb1e88f028e4f0984fa8a37bea640b9d8bf22f738e003b1a1bbedf542396cc32adda94f1006bc1055148df50e63e407b91e0cda8ca465870b45946870a9a1eabfd84f55784029428c02","status":"success","tx_index":1,"txid":"0xbe4358cd421be62b2117c8127b90313dd353351435f070fbcb2c8d44e2a8d0f8","vm_error":null}]} +28 2025-10-16T16:11:27.454Z /new_block {"anchored_cost":{"read_count":0,"read_length":0,"runtime":0,"write_count":0,"write_length":0},"block_hash":"0x859ed827c4d9bcae57124ff1c0966d38fc32f9260affceb669fe14cc47f9a0ae","block_height":12,"block_time":1760631086,"burn_block_hash":"0x31f6bfc2a28cc32436b0dfbfbeb118e06f633d7dbb78e792160e92b54db5b0c0","burn_block_height":244,"burn_block_time":1760631083,"confirmed_microblocks_cost":{"read_count":0,"read_length":0,"runtime":0,"write_count":0,"write_length":0},"consensus_hash":"0xa41e9804a61544c51ab35500160ae9fae97757f6","cycle_number":null,"events":[{"committed":true,"event_index":0,"stx_transfer_event":{"amount":"1000","memo":"00000000000000000000000000000000000000000000000000000000000000000000","recipient":"ST1YEHRRYJ4GF9CYBFFN0ZVCXX1APSBEEQ5KEDN7M","sender":"ST1MDWBDVDGAANEH9001HGXQA6XRNK7PX7A7X8M6R"},"txid":"0xb3b06922e8f4af497d23abc3a4f24eede14ab1569ea207038e9d3516d090a822","type":"stx_transfer_event"}],"index_block_hash":"0x3a027883a1952955c5836fa0048383bf7a6492519d1dc9c28eb54e4e4c109a35","matured_miner_rewards":[],"miner_signature":"0x01abaf51dc44f454488acc2541b0c783fd665035ee49cad55cc1ea129a1b32559b4f7d86bfdadca14aa62495ee541d50ef6c846bbd3e37b9a057f194e545d3388f","miner_txid":"0x3bd6e9587ce6bc5316697c1161e35b95d3a2be951318719f8adeb38088124721","parent_block_hash":"0x14ad21903299a794c0f6070a6adcc5f1fb759ec343bc0c614ae3f71a397cca60","parent_burn_block_hash":"0x31f6bfc2a28cc32436b0dfbfbeb118e06f633d7dbb78e792160e92b54db5b0c0","parent_burn_block_height":244,"parent_burn_block_timestamp":1760631083,"parent_index_block_hash":"0x09a8fcde5c05f0a097fca7af9ad2cdbebfb2469a5e4d5f56300551c51c881e7f","parent_microblock":"0x0000000000000000000000000000000000000000000000000000000000000000","parent_microblock_sequence":0,"pox_v1_unlock_height":205,"pox_v2_unlock_height":207,"pox_v3_unlock_height":210,"reward_set":null,"signer_bitvec":"0006000000013f","signer_signature":["00eb2013df4940d125b72762945c67d6b91a3ee43a6cbdd811baea835c5915a96659f85422570238f58f837535b5cb200a0ea6fc17b47ee944dca35fb6601de0d5","005ce0c131d0ecd93f044eeaa1be90d8fe7ec0346d1546547918b836a23bb5e9506a95d8133b153468b9d95dd52a9156681cd5ab94c24500870dbcc6a672849e5e","00ae14a33c022f046ad6a8f85d0affdd2a5d200be29037f71f134c9ad3326de0d30fbe74c52e2de25c324e9348e682dc09d7a5b7467c228e84077d3ff7343c9bdb"],"signer_signature_hash":"0x859ed827c4d9bcae57124ff1c0966d38fc32f9260affceb669fe14cc47f9a0ae","tenure_height":40,"transactions":[{"burnchain_op":null,"contract_interface":null,"execution_cost":{"read_count":0,"read_length":0,"runtime":0,"write_count":0,"write_length":0},"microblock_hash":null,"microblock_parent_hash":null,"microblock_sequence":null,"raw_result":"0x0703","raw_tx":"0x8080000000040068de2dbb6c14aaba2900031876ea3771599edd3a0000000000000008000000000000012c00011d9f7dd230163c91e9d181823d2d9556f107bf2f70b41e779270e9b8879485a82987ab1e3d9920eddd0d85dfddfaf257c78f1d17ad2ce344714c7bba273d431a03020000000000051a7ce8e31e9120f4b3cb7bea0fed9de8556cadceb900000000000003e800000000000000000000000000000000000000000000000000000000000000000000","status":"success","tx_index":0,"txid":"0xb3b06922e8f4af497d23abc3a4f24eede14ab1569ea207038e9d3516d090a822","vm_error":null}]} +29 2025-10-16T16:11:28.196Z /new_mempool_tx ["0x808000000004007ce8e31e9120f4b3cb7bea0fed9de8556cadceb90000000000000009000000000000012c00012a9e27df6a05f92799827e7ce3fb8e5e6cb7612119d2b5b01b625d66e9d565852d4ce4bea71163890a098ab19d81f547d27db0e98a8441af7d5c2c2253abcea603020000000000051a79596b2995032f42672a1610356aa2fe09886a6d00000000000003e800000000000000000000000000000000000000000000000000000000000000000000"] From 524fffc26b8309a38f93dbb7c07cd1bdb71e5fd3 Mon Sep 17 00:00:00 2001 From: Rafael Cardenas Date: Mon, 20 Oct 2025 08:47:52 -0600 Subject: [PATCH 3/6] fix: tests --- .vscode/launch.json | 4 +--- src/event-replay/event-requests.ts | 17 +++++++++++++++-- tests/api/parse-db-tx.test.ts | 26 +++++++++++++------------- 3 files changed, 29 insertions(+), 18 deletions(-) diff --git a/.vscode/launch.json b/.vscode/launch.json index 5478664005..bb09966890 100644 --- a/.vscode/launch.json +++ b/.vscode/launch.json @@ -236,9 +236,7 @@ "--runInBand", "--no-cache", "--config", - "${workspaceRoot}/tests/jest.config.api.js", - "-t", - "transaction parsing" + "${workspaceRoot}/tests/jest.config.api.js" ], "outputCapture": "std", "console": "integratedTerminal", diff --git a/src/event-replay/event-requests.ts b/src/event-replay/event-requests.ts index ad9d9e2dd9..e9cee298ed 100644 --- a/src/event-replay/event-requests.ts +++ b/src/event-replay/event-requests.ts @@ -1,5 +1,5 @@ import { pipeline } from 'node:stream/promises'; -import { Readable } from 'stream'; +import { Readable, Transform } from 'stream'; import { DbRawEventRequest } from '../datastore/common'; import { getConnectionArgs, getConnectionConfig, PgServer } from '../datastore/connection'; import { connectPgPool } from './connection-legacy'; @@ -68,8 +68,21 @@ export async function* getRawEventRequests( ON COMMIT DROP `); onStatusUpdate?.('Importing raw event requests into temporary table...'); + + // Transform stream to remove literal "\u0000" strings and actual null bytes from the data + const nullByteRemover = new Transform({ + transform(chunk, encoding, callback) { + // Convert chunk to string, remove problematic sequences, then back to buffer + const str = chunk.toString('utf8'); + const cleaned = str + .replace(/\\u0000/g, '') // Remove literal "\u0000" string sequences + .replace(/\0/g, ''); // Remove actual null bytes + callback(null, Buffer.from(cleaned, 'utf8')); + }, + }); + const importStream = client.query(pgCopyStreams.from(`COPY temp_raw_tsv FROM STDIN`)); - await pipeline(readStream, importStream); + await pipeline(readStream, nullByteRemover, importStream); onStatusUpdate?.('Removing any duplicate raw event requests...'); await client.query(` INSERT INTO temp_event_observer_requests diff --git a/tests/api/parse-db-tx.test.ts b/tests/api/parse-db-tx.test.ts index b6fe139b48..6c8f5026b6 100644 --- a/tests/api/parse-db-tx.test.ts +++ b/tests/api/parse-db-tx.test.ts @@ -26,7 +26,6 @@ describe('transaction parsing', () => { let db: PgWriteStore; let client: PgSqlClient; let api: ApiServer; - let eventServer: EventStreamServer; beforeEach(async () => { await migrate('up'); @@ -40,23 +39,22 @@ describe('transaction parsing', () => { // set chainId env, because TSV import reads it manually process.env['STACKS_CHAIN_ID'] = ChainID.Testnet.toString(); - - eventServer = await startEventServer({ - datastore: db, - chainId: ChainID.Testnet, - serverHost: '127.0.0.1', - serverPort: 0, - }); }); afterEach(async () => { await api.terminate(); - await eventServer.closeAsync(); await db?.close(); await migrate('down'); }); test('parse fuzzed transactions', async () => { + const eventServer = await startEventServer({ + datastore: db, + chainId: ChainID.Testnet, + serverHost: '127.0.0.1', + serverPort: 0, + }); + const readStream = readline.createInterface({ input: fs.createReadStream('tests/api/tsv/fuzzed-transactions-1.tsv', { encoding: 'utf8' }), crlfDelay: Infinity, @@ -72,13 +70,15 @@ describe('transaction parsing', () => { throwOnNotOK: true, }); } + + await eventServer.closeAsync(); }); test('parse fuzzed transactions via event replay', async () => { - await importEventsFromTsv('tests/api/tsv/fuzzed-transactions-1.tsv', 'archival', true, true); - // await expect( - // importEventsFromTsv('tests/api/tsv/fuzzed-transactions-1.tsv', 'archival', true, true) - // ).resolves.not.toThrow(); + // await importEventsFromTsv('tests/api/tsv/fuzzed-transactions-1.tsv', 'archival', true, true); + await expect( + importEventsFromTsv('tests/api/tsv/fuzzed-transactions-1.tsv', 'archival', true, true) + ).resolves.not.toThrow(); }); }); }); From 5934211ab4ad69cf128bdaa170b95ec63a9a039d Mon Sep 17 00:00:00 2001 From: Rafael Cardenas Date: Mon, 20 Oct 2025 08:51:15 -0600 Subject: [PATCH 4/6] fix: remove extras --- src/event-replay/event-requests.ts | 15 +-------------- src/event-stream/event-server.ts | 6 ------ 2 files changed, 1 insertion(+), 20 deletions(-) diff --git a/src/event-replay/event-requests.ts b/src/event-replay/event-requests.ts index e9cee298ed..8b3a8b1f05 100644 --- a/src/event-replay/event-requests.ts +++ b/src/event-replay/event-requests.ts @@ -68,21 +68,8 @@ export async function* getRawEventRequests( ON COMMIT DROP `); onStatusUpdate?.('Importing raw event requests into temporary table...'); - - // Transform stream to remove literal "\u0000" strings and actual null bytes from the data - const nullByteRemover = new Transform({ - transform(chunk, encoding, callback) { - // Convert chunk to string, remove problematic sequences, then back to buffer - const str = chunk.toString('utf8'); - const cleaned = str - .replace(/\\u0000/g, '') // Remove literal "\u0000" string sequences - .replace(/\0/g, ''); // Remove actual null bytes - callback(null, Buffer.from(cleaned, 'utf8')); - }, - }); - const importStream = client.query(pgCopyStreams.from(`COPY temp_raw_tsv FROM STDIN`)); - await pipeline(readStream, nullByteRemover, importStream); + await pipeline(readStream, importStream); onStatusUpdate?.('Removing any duplicate raw event requests...'); await client.query(` INSERT INTO temp_event_observer_requests diff --git a/src/event-stream/event-server.ts b/src/event-stream/event-server.ts index 30506d341c..b02e41087c 100644 --- a/src/event-stream/event-server.ts +++ b/src/event-stream/event-server.ts @@ -822,12 +822,6 @@ export async function startEventServer(opts: { ignoreTrailingSlash: true, }); - // app.addHook('preHandler', (req, _reply) => { - // if (typeof req.body === 'string') { - // req.body = req.body.replace(/\x00/g, ''); - // } - // }); - app.addHook('onRequest', (req, reply, done) => { req.raw.on('close', () => { if (req.raw.aborted) { From 30d89685a6272d844e903a334ff9c2a54d035a9e Mon Sep 17 00:00:00 2001 From: Rafael Cardenas Date: Mon, 20 Oct 2025 08:51:53 -0600 Subject: [PATCH 5/6] fix: extra import --- src/event-replay/event-requests.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/event-replay/event-requests.ts b/src/event-replay/event-requests.ts index 8b3a8b1f05..ad9d9e2dd9 100644 --- a/src/event-replay/event-requests.ts +++ b/src/event-replay/event-requests.ts @@ -1,5 +1,5 @@ import { pipeline } from 'node:stream/promises'; -import { Readable, Transform } from 'stream'; +import { Readable } from 'stream'; import { DbRawEventRequest } from '../datastore/common'; import { getConnectionArgs, getConnectionConfig, PgServer } from '../datastore/connection'; import { connectPgPool } from './connection-legacy'; From 94bd22c6bc725a3da6a6edbf951cac7a36aa07d1 Mon Sep 17 00:00:00 2001 From: Rafael Cardenas Date: Mon, 20 Oct 2025 09:06:52 -0600 Subject: [PATCH 6/6] fix: test --- tests/api/parse-db-tx.test.ts | 7 ------- 1 file changed, 7 deletions(-) diff --git a/tests/api/parse-db-tx.test.ts b/tests/api/parse-db-tx.test.ts index 6c8f5026b6..085c365702 100644 --- a/tests/api/parse-db-tx.test.ts +++ b/tests/api/parse-db-tx.test.ts @@ -73,12 +73,5 @@ describe('transaction parsing', () => { await eventServer.closeAsync(); }); - - test('parse fuzzed transactions via event replay', async () => { - // await importEventsFromTsv('tests/api/tsv/fuzzed-transactions-1.tsv', 'archival', true, true); - await expect( - importEventsFromTsv('tests/api/tsv/fuzzed-transactions-1.tsv', 'archival', true, true) - ).resolves.not.toThrow(); - }); }); });