## Description
Fixes a bug when checking the total number of transactions included in a
block via the transactions consumer in consensus. It would be possible
to go over the max limit and effectively produce invalid blocks when it
would verify on the block verifier side.
Also took this as opportunity to have an integration test that checks
both the construction of block sizes and the block verifier so makes
sure we are always aligned.
Added a couple of more soft bundle related metrics
## Test plan
CI
---
## Release notes
Check each box that your changes affect. If none of the boxes relate to
your changes, release notes aren't required.
For each box you select, include information after the relevant heading
that describes the impact of your changes that a user might notice and
any actions they must take to implement updates.
- [ ] Protocol:
- [ ] Nodes (Validators and Full nodes):
- [ ] Indexer:
- [ ] JSON-RPC:
- [ ] GraphQL:
- [ ] CLI:
- [ ] Rust SDK:
- [ ] REST API:
---------
Co-authored-by: Mingwei Tian <mingwei@mystenlabs.com>