1️⃣ Base Stage
Send Correlation ID

Parse Correlation ID

Parse API Version

Handle ApiVersions requests

2️⃣ Concurrent Clients
Serial requests

Concurrent requests

3️⃣ Listing Partitions
Include DescribeTopicPartitions in ApiVersions

List for an unknown topic

List for a single partition

List for multiple partitions

List for multiple topics

4️⃣ Consuming Messages
Include Fetch in ApiVersions

Fetch with no topics

Fetch with an unknown topic

Fetch with an empty topic

Fetch single message from disk

Fetch multiple messages from disk

5️⃣ Producing Messages
Include Produce in ApiVersions

Respond for invalid topic or partition

Respond for valid topic and partition

Produce a single record

Produce multiple records

Produce to multiple partitions

Produce to multiple partitions of multiple topics
