Skip to content

Prepare nitro-test node for txn filter reporting feature - NIT-4675#186

Open
mahdy-nasr wants to merge 2 commits intomasterfrom
update-test-node-for-txn-reporting
Open

Prepare nitro-test node for txn filter reporting feature - NIT-4675#186
mahdy-nasr wants to merge 2 commits intomasterfrom
update-test-node-for-txn-reporting

Conversation

@mahdy-nasr
Copy link
Copy Markdown

@mahdy-nasr mahdy-nasr commented Apr 16, 2026

closes NIT-4675

Test Plan Preperation

1- disabled eth-call filtering
2- Merged this PR with this PR locally as nitro-test base.

Test procedure done 1

1- Prepared alice account with 1eth
2- Send to bob without filtering added.
= Expected result pass (validated)

test procedure done 2

2- Add alice to filtered address
3- Send to Bob
= Transaction failed with error.
= Report receiver container received the full report.
Here was the container logs for report receiver:

Report receiver listening on :8080

Received report: {"id":"019d91c4-21d7-73f9-aad1-1ce1516300d0",
"txHash":"0xdd2ebc598e5ca044f7a2159aef4441a1a65cedd81652a32567efc196192589fc",
"txRLP":"0x02f87483064aba018459682f00846553f100825208942eb27d9f51d90c45ea735ee3b68e9be4ae2ab61f87038d7ea4c6800080c080a069bc4ddb895b24fcf29c67073cd8d215c8f2ca5e9edbc86be52119b9cf82a889a073911ab135d27c98a4de29931c43d3d6175e5d860c9d7ac7d098d0f223086ec1",
"filteredAddresses" [{"address":"0xc3c76aaaa7c483c5099aec225ba5e4269373f16b",
"reason":"from"}],"blockNumber":2373,
"parentBlockHash":"0xd851fcd18999de155c6a7564de1ed0df9ce9c11b8d0ff57351cd676c4cb7aa73","positionInBlock":1,"filteredAt":"2026-04-15T15:30:43.287261635Z","isDelayed":false}

Comment thread scripts/config.ts
server.listen(8080, '0.0.0.0', () => {
console.log('Report receiver listening on :8080');
});
// Handler must be async and await a never-resolving promise so yargs
Copy link
Copy Markdown
Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

this part took good time from me to fix. thus leave comments for future

@mahdy-nasr mahdy-nasr marked this pull request as ready for review April 17, 2026 14:26
@mahdy-nasr mahdy-nasr requested review from MishkaRogachev, Copilot and diegoximenes and removed request for Copilot April 17, 2026 14:26
MishkaRogachev
MishkaRogachev previously approved these changes Apr 17, 2026
Comment thread scripts/config.ts Outdated
Copy link
Copy Markdown

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Prepares the nitro-test environment to run the upcoming transaction filtering report framework by adding new services (SQS emulation + report forwarder + receiver) and wiring them into the existing test-node.bash/scripts-based config generation flow.

Changes:

  • Add --l2-filtering-report flag to test-node.bash, wiring it to config generation and to bringing up the new containers.
  • Extend the scripts CLI with commands to generate ElasticMQ and filtering-report configs, plus a lightweight report-receiver HTTP server.
  • Add elasticmq, filtering-report, and report-receiver services to docker-compose.yaml.

Reviewed changes

Copilot reviewed 4 out of 4 changed files in this pull request and generated 3 comments.

File Description
test-node.bash Adds a new mode flag and ensures the new services/config steps are executed when enabled.
scripts/index.ts Registers new script commands and switches yargs invocation to parseAsync() for async commands.
scripts/config.ts Adds config writers for ElasticMQ/filtering-report, applies filtering-report config to sequencer config, and adds a report receiver server command.
docker-compose.yaml Introduces ElasticMQ, filtering-report, and report-receiver containers needed for reporting.

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

Comment thread scripts/config.ts Outdated
Comment thread scripts/config.ts
Comment thread docker-compose.yaml
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants