You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@iggy.apache.org by ri...@apache.org on 2026/10/24 07:15:40 UTC

(iggy) branch dependabot/gradle/bdd/java/java-3be2b2e82d updated (981bd71a2 -> 345c5d56a)

This is an automated email from the ASF dual-hosted git repository.

slbotbm pushed a change to branch dependabot/gradle/bdd/java/java-3be2b2e82d
in repository https://gitbox.apache.org/repos/asf/iggy.git


    from 981bd71a2 fix formatting
     add 0d4fa738a feat(cli): display topic partitions and options in topic get (#4558)
     add fcf110f41 feat(gateways): report a stable Kafka cluster id and serve DescribeCluster (#4583)
     add 3a8e85990 feat(gateways): serve Kafka CreatePartitions through the Iggy bridge (#4565)
     add 5906e2db7 fix(cli): print errors and their causes instead of Debug value (#4590)
     add 67e3a3c78 feat(gateways): serve Kafka IncrementalAlterConfigs (key 44) (#4572)
     add bb4765dbb feat(ci): publish Kafka gateway image to Docker Hub (#4593)
     add 48f34fd62 fix(ci): reduce runner usage and simplify workflows (#4594)
     add b8b37da5a feat(gateways): honour Kafka static group membership (#4575)
     add 717719c8e feat(gateways): serve DeleteGroups and OffsetDelete, report Empty groups (#4559)
     add 786382afe feat(cluster)!: spread and rebalance partition primaries (#4619)
     add b0a951ea8 feat(server)!: unify resource options and add per-stream keys (#4615)
     add 2b4745219 test(integration): add primary-side torn-tail crash recovery specs (#4442)
     add ea19ecb9d chore(deps): Bump the node group across 1 directory with 12 updates (#4598)
     add a859762ca chore(deps): Bump the go group across 2 directories with 2 updates (#4595)
     add 87528db58 feat(swift): add the producer (#4577)
     add 3d21f3133 fix(shard): keep the pipeline head when the metadata walk stalls (#4429)
     add 02dac7896 test(consensus): expose committed-op loss in probe-exhaustion election (#4485)
     add 3b3013594 fix(consensus): keep committed ops when restarted replicas elect (#4500)
     add a30717684 perf(ci): improve cache reuse and reduce Miri workload (#4624)
     add 5d51cb6c8 fix(partitions): don't commit a stale prepare after adopting a newer view (#4433)
     add a83e8e85d fix(partitions): make writer-lease drain wait executor-agnostic (#4434)
     add ea8c68e91 perf(ci): reduce Miri scope and avoid duplicate Java tests (#4626)
     add 44c7dc834 fix(consensus): retry the primary's own write on prepare timeout (#4457)
     add d5a74c955 feat(ci): label prolific authors when pull requests open (#4622)
     add 969246ba7 chore(deps): Bump the python group across 3 directories with 1 update (#4596)
     add b15c8e1e9 chore: simplify team review and reuse CI results (#4592)
     add f10a0309b chore(deps): Bump the github-actions group across 1 directory with 3 updates (#4599)
     add 345c5d56a chore(deps): merge master into Java dependency update

No new revisions were added by this update.

Summary of changes:
 .agents/skills/team-review-slim                    |    1 -
 .claude/skills/team-review-slim/SKILL.md           |  223 -
 .claude/skills/team-review/SKILL.md                |  172 +-
 .claude/skills/team-review/references/execution.md |   25 +-
 .config/nextest.toml                               |   37 +-
 .dockerignore                                      |   14 +
 .github/actions/cpp-bazel/pre-merge/action.yml     |   33 +
 .github/actions/go/pre-merge/action.yml            |   39 +
 .github/actions/java-gradle/pre-merge/action.yml   |   44 +-
 .github/actions/node-npm/pre-merge/action.yml      |   30 +
 .github/actions/php/pre-merge/action.yml           |   15 +-
 .../actions/python-maturin/pre-merge/action.yml    |   41 +
 .github/actions/rust/pre-merge/action.yml          |  104 +-
 .github/actions/swift/pre-merge/action.yml         |   40 +
 .github/actions/utils/docker-buildx/action.yml     |    1 -
 .github/actions/utils/free-disk-space/action.yml   |   19 +-
 .github/actions/utils/server-start/action.yml      |   17 +-
 .github/actions/utils/setup-rust/action.yml        |   12 +-
 .../utils/validate-third-party-licenses/action.yml |    4 +
 .github/config/components.yml                      |    4 +-
 .github/config/edge-image-variants.json            |   22 +
 .github/config/publish.yml                         |    9 +
 .github/workflows/_build_ci_artifacts.yml          |    1 -
 .github/workflows/_common.yml                      |   28 +-
 .github/workflows/_detect.yml                      |    2 +-
 .github/workflows/_rust.yml                        |   14 +-
 .github/workflows/_rust_tests.yml                  |    3 +
 .github/workflows/_test_examples.yml               |    2 +-
 .github/workflows/coverage-baseline.yml            |   12 +-
 .github/workflows/issue-labeler-assigner.yml       |    2 +-
 .github/workflows/post-merge.yml                   |   49 +-
 .github/workflows/pr-skill-review-post.yml         |   14 +-
 .github/workflows/pr-title.yml                     |    2 +-
 .github/workflows/pr-triage-apply.yml              |  151 +-
 .github/workflows/pr-triage-collect.yml            |    2 +-
 .github/workflows/pre-merge.yml                    |   20 +-
 .github/workflows/publish.yml                      |  125 +-
 .github/workflows/stale-prs-unmark-on-activity.yml |    2 +-
 .github/workflows/stale-prs-unmark.yml             |    2 +-
 .gitignore                                         |    2 +
 .typos.toml                                        |    2 +
 AGENTS.md                                          |    3 +-
 CONTRIBUTING.md                                    |    8 +-
 Cargo.lock                                         |  185 +-
 Cargo.toml                                         |   15 +-
 README.md                                          |   17 +-
 bdd/README.md                                      |    5 +-
 .../features/step_definitions/background_steps.cpp |   18 +-
 .../features/step_definitions/messaging_steps.cpp  |    2 +-
 .../step_definitions/resource_options_steps.cpp    |  475 ++
 .../step_definitions/session_contract_steps.cpp    |   93 +
 bdd/cpp/features/step_definitions/world.hpp        |   21 +
 bdd/cpp/scripts/entrypoint.sh                      |    3 +
 bdd/docker-compose.coverage.yml                    |    8 +-
 bdd/docker-compose.no-quorum.yml                   |  134 +
 bdd/docker-compose.server.yml                      |    3 +
 bdd/docker-compose.yml                             |   49 +-
 bdd/go/go.mod                                      |    4 +-
 bdd/go/go.sum                                      |    8 +-
 bdd/go/tests/basic_messaging.go                    |    8 +-
 bdd/go/tests/env/env.go                            |    5 +
 bdd/go/tests/leader_redirection.go                 |    2 +-
 bdd/go/tests/resource_options.go                   |  607 ++
 bdd/go/tests/session_contract.go                   |  139 +
 bdd/go/tests/suite_test.go                         |   34 +
 bdd/go/tests/tcp_test/stream_feature_create.go     |   10 +-
 bdd/go/tests/tcp_test/stream_feature_get_by_id.go  |   20 +-
 bdd/go/tests/tcp_test/stream_feature_update.go     |   13 +-
 bdd/go/tests/tcp_test/stream_steps.go              |    2 +-
 bdd/go/tests/tcp_test/topic_feature_create.go      |   37 +-
 bdd/go/tests/tcp_test/topic_feature_update.go      |   37 +-
 bdd/go/tests/tcp_test/topic_steps.go               |    7 +-
 bdd/go/tests/tcp_test/users_feature_create.go      |    6 +-
 bdd/go/tests/tcp_test/users_feature_password.go    |    2 +-
 bdd/go/tests/tcp_test/users_feature_permissions.go |    3 +-
 bdd/go/tests/tcp_test/users_feature_update.go      |    6 +-
 bdd/go/tests/tcp_test/users_steps.go               |    2 +-
 bdd/java/build.gradle.kts                          |    4 +
 .../org/apache/iggy/bdd/BasicMessagingSteps.java   |   63 +-
 .../org/apache/iggy/bdd/ResourceOptionsSteps.java  |  415 ++
 .../test/java/org/apache/iggy/bdd/TestContext.java |    1 +
 .../java/org/apache/iggy/bdd/TestEnvironment.java  |    4 +
 bdd/node/Dockerfile                                |    3 +
 ...tureTest.php => SessionContractFeatureTest.php} |   67 +-
 bdd/php/tests/SharedFeatureParser.php              |   26 +-
 .../php/tests/SharedFeatureParserTest.php          |   30 +-
 bdd/php/tests/StreamOptionsFeatureTest.php         |  249 +
 bdd/php/tests/TestEnvironment.php                  |    5 +
 bdd/python/tests/conftest.py                       |   31 +-
 bdd/python/tests/test_basic_messaging.py           |    6 +-
 bdd/python/tests/test_resource_options_patch.py    |  248 +
 ...est_raw_command.py => test_session_contract.py} |   79 +-
 bdd/python/tests/test_stream_options.py            |  331 +
 bdd/python/uv.lock                                 |   40 +-
 bdd/rust/Cargo.toml                                |   15 +
 bdd/rust/tests/common/global_context.rs            |    7 +-
 bdd/rust/tests/helpers/env.rs                      |    4 +
 ...asic_messaging.rs => resource_options_patch.rs} |    2 +-
 .../{basic_messaging.rs => session_contract.rs}    |    2 +-
 bdd/rust/tests/steps/leader_redirection.rs         |    2 +-
 bdd/rust/tests/steps/mod.rs                        |    2 +
 bdd/rust/tests/steps/resource_options.rs           |  509 ++
 bdd/rust/tests/steps/session.rs                    |   65 +
 bdd/rust/tests/steps/streams.rs                    |    9 +-
 .../tests/{stream_crud.rs => stream_options.rs}    |    2 +-
 bdd/scenarios/resource_options_patch.feature       |   55 +
 ...aw_command.feature => session_contract.feature} |   31 +-
 bdd/scenarios/stream_options.feature               |   74 +
 core/ai/mcp/Cargo.toml                             |    2 +-
 core/ai/mcp/src/service/mod.rs                     |  248 +-
 core/ai/mcp/src/service/requests.rs                |   92 +-
 core/bench/Cargo.toml                              |    2 +-
 .../actors/producer/typed_benchmark_producer.rs    |    2 +-
 .../typed_benchmark_producing_consumer.rs          |    2 +-
 core/bench/src/benchmarks/benchmark.rs             |    4 +-
 core/binary_protocol/Cargo.toml                    |    3 +-
 core/binary_protocol/src/codes.rs                  |   11 +-
 core/binary_protocol/src/consensus/command.rs      |   10 +-
 core/binary_protocol/src/consensus/header.rs       |  160 +-
 core/binary_protocol/src/consensus/mod.rs          |    4 +
 core/binary_protocol/src/consensus/operation.rs    |   79 +-
 .../src/consensus/primary_rebalance.rs             |  375 ++
 core/binary_protocol/src/consensus/request.rs      |   29 +-
 .../src/consensus/segment_delete.rs                |  193 +
 core/binary_protocol/src/dispatch.rs               |  129 +-
 core/binary_protocol/src/error.rs                  |    3 +
 core/binary_protocol/src/lib.rs                    |    9 +-
 core/binary_protocol/src/primitives/consumer.rs    |   32 +-
 core/binary_protocol/src/primitives/identifier.rs  |   87 +-
 core/binary_protocol/src/primitives/options.rs     |   25 +-
 .../src/primitives/partition_assignment.rs         |   24 +-
 .../src/requests/messages/poll_messages.rs         |   23 +
 .../create_partitions_with_assignments.rs          |  114 +-
 core/binary_protocol/src/requests/streams/mod.rs   |    9 +-
 .../src/requests/streams/rewrap_stream_keys.rs     |  216 +
 .../src/requests/streams/update_stream.rs          |  127 -
 .../src/requests/streams/update_stream_resolved.rs |  114 +
 core/binary_protocol/src/requests/system/mod.rs    |    2 +
 .../src/requests/system/update_resource.rs         |  476 ++
 .../topics/create_topic_with_assignments.rs        |   95 +-
 core/binary_protocol/src/requests/topics/mod.rs    |    4 +-
 .../src/requests/topics/update_topic.rs            |  158 -
 .../src/requests/topics/update_topic_resolved.rs   |  113 +
 core/binary_protocol/src/requests/users/mod.rs     |    4 +-
 .../src/requests/users/update_user.rs              |  228 -
 .../src/requests/users/update_user_resolved.rs     |  136 +
 .../src/responses/streams/get_stream.rs            |   34 +-
 .../src/responses/streams/get_streams.rs           |    2 +
 core/binary_protocol/src/responses/streams/mod.rs  |    2 -
 .../src/responses/streams/stream_response.rs       |   20 +-
 .../src/responses/streams/update_stream.rs         |   19 -
 .../src/responses/system/describe_options.rs       |   28 +-
 core/binary_protocol/src/responses/system/mod.rs   |    2 +
 .../src/responses/system/update_resource.rs}       |    3 +-
 .../src/responses/topics/get_topic.rs              |    3 -
 .../src/responses/topics/get_topics.rs             |    3 -
 core/binary_protocol/src/responses/topics/mod.rs   |    2 -
 .../src/responses/topics/update_topic.rs           |   19 -
 .../src/responses/users/get_user.rs                |    1 +
 .../src/responses/users/get_users.rs               |    2 +
 core/binary_protocol/src/responses/users/mod.rs    |    2 -
 .../src/responses/users/update_user.rs             |   18 -
 .../src/responses/users/user_response.rs           |   20 +-
 core/binary_protocol/src/version.rs                |   26 +-
 core/cli/Cargo.toml                                |    2 +-
 core/cli/src/args/common.rs                        |   20 +
 core/cli/src/args/mod.rs                           |    8 +-
 core/cli/src/args/stream.rs                        |   84 +-
 core/cli/src/args/topic.rs                         |  101 +-
 .../src/commands/binary_streams/create_stream.rs   |   64 +-
 core/cli/src/commands/binary_streams/get_stream.rs |   35 +
 .../cli/src/commands/binary_streams/get_streams.rs |   15 +-
 .../src/commands/binary_streams/update_stream.rs   |   69 +-
 core/cli/src/commands/binary_system/options.rs     |   56 +-
 .../cli/src/commands/binary_topics/create_topic.rs |   83 +-
 core/cli/src/commands/binary_topics/get_topic.rs   |  296 +-
 core/cli/src/commands/binary_topics/get_topics.rs  |   14 +-
 .../cli/src/commands/binary_topics/update_topic.rs |  101 +-
 core/cli/src/commands/binary_users/create_user.rs  |    6 +-
 core/cli/src/commands/binary_users/update_user.rs  |   46 +-
 core/cli/src/main.rs                               |   32 +-
 core/common/Cargo.toml                             |   11 +-
 core/common/benches/stream_encryption.rs           |  103 +
 core/common/examples/resource_options_fixtures.rs  |  953 +++
 .../examples/resource_options_fixtures/schema.rs   |  990 +++
 core/common/fixtures/resource_options.json         | 1619 +++++
 core/common/src/consumer_group_client_state.rs     |  198 +-
 core/common/src/error/iggy_error.rs                |   88 +-
 core/common/src/http/mod.rs                        |    1 +
 core/common/src/http/options.rs                    |  706 ++
 core/common/src/http/streams/create_stream.rs      |    7 +
 core/common/src/http/streams/mod.rs                |    1 -
 core/common/src/http/streams/update_stream.rs      |   60 -
 core/common/src/http/topics/create_topic.rs        |   35 +-
 core/common/src/http/topics/mod.rs                 |    1 -
 core/common/src/http/topics/update_topic.rs        |   86 -
 core/common/src/http/users/create_user.rs          |    5 +
 core/common/src/http/users/mod.rs                  |    1 -
 core/common/src/http/users/update_user.rs          |   59 -
 core/common/src/lib.rs                             |   11 +-
 core/common/src/traits/binary_impls/messages.rs    |  251 +-
 core/common/src/traits/binary_impls/mod.rs         |   67 +-
 core/common/src/traits/binary_impls/partitions.rs  |    2 -
 .../traits/binary_impls/personal_access_tokens.rs  |   30 +-
 core/common/src/traits/binary_impls/streams.rs     |   38 +-
 core/common/src/traits/binary_impls/topics.rs      |   33 +-
 core/common/src/traits/binary_impls/users.rs       |  230 +-
 core/common/src/traits/binary_transport.rs         |  291 +-
 core/common/src/traits/mod.rs                      |    2 +-
 core/common/src/traits/stream_client.rs            |   18 +-
 core/common/src/traits/topic_client.rs             |    5 +-
 core/common/src/traits/user_client.rs              |   10 +-
 core/common/src/types/identifier/mod.rs            |   84 +-
 core/common/src/types/options/catalog.rs           | 1798 ++++++
 core/common/src/types/options/codec.rs             |  273 +
 core/common/src/types/options/key.rs               |   83 +
 core/common/src/types/options/mod.rs               | 1633 +++--
 .../common/src/types/personal_access_tokens/mod.rs |   49 +-
 core/common/src/types/segment.rs                   |   14 +-
 core/common/src/types/stream/mod.rs                |   73 +-
 core/common/src/types/topic/mod.rs                 |   52 +-
 core/common/src/utils/crypto.rs                    |  147 +-
 core/common/src/utils/mod.rs                       |    1 +
 core/common/src/utils/stream_key.rs                | 1436 +++++
 core/common/src/wire_conversions.rs                |  130 +-
 core/common/tests/resource_options_fixtures.rs     |  776 +++
 core/common/tests/stream_key_erasure.rs            |  277 +
 core/configs/src/common/defaults.rs                |    2 +
 core/configs/src/common/displays.rs                |   21 +-
 core/configs/src/common/system.rs                  |   64 +-
 core/configs/src/common/validators.rs              |  116 +-
 core/configs/src/server_config/cluster.rs          |   67 +-
 core/configs/src/server_config/defaults.rs         |    2 +
 core/configs/src/server_config/displays.rs         |    7 +-
 core/configs/src/server_config/message_bus.rs      |   69 +
 core/configs/src/server_config/metadata.rs         |    5 +-
 core/configs/src/server_config/validators.rs       |    3 +
 core/connectors/runtime/Cargo.toml                 |    2 +-
 core/connectors/runtime/src/main.rs                |    2 -
 core/connectors/runtime/src/manager/source.rs      |    4 +-
 core/connectors/runtime/src/source.rs              |  156 +-
 core/connectors/sources/mqtt_source/Cargo.toml     |    3 +-
 core/connectors/sources/mqtt_source/README.md      |    4 +-
 core/connectors/sources/mqtt_source/src/driver.rs  |  374 +-
 core/connectors/sources/mqtt_source/src/lib.rs     |   50 +-
 core/consensus/src/client_table.rs                 |  164 +-
 core/consensus/src/dvc_merge.rs                    |  457 +-
 core/consensus/src/impls.rs                        | 4108 +++++++++++-
 core/consensus/src/lib.rs                          |    2 +-
 core/consensus/src/metadata_helpers.rs             |   49 +-
 core/consensus/src/observability.rs                |   68 +-
 core/consensus/src/plane_helpers.rs                |  517 +-
 core/consensus/src/view_change_quorum.rs           |   30 +-
 core/consensus/src/vsr_state.rs                    |  638 +-
 core/integration/Cargo.toml                        |    6 +-
 core/integration/src/harness/handle/server.rs      |   42 +-
 core/integration/src/harness/helpers.rs            |   77 +-
 core/integration/src/harness/mod.rs                |    6 +-
 .../src/harness/orchestrator/harness.rs            |   63 +-
 core/integration/src/harness/seeds.rs              |   30 +-
 core/integration/tests/cli/common/mod.rs           |   19 +
 .../test_consumer_group_create_command.rs          |    5 +-
 .../test_consumer_group_delete_command.rs          |    5 +-
 .../test_consumer_group_get_command.rs             |    5 +-
 .../test_consumer_group_list_command.rs            |    3 +-
 .../test_consumer_offset_external_group_command.rs |    5 +-
 .../test_consumer_offset_get_command.rs            |    2 +-
 .../test_consumer_offset_set_command.rs            |    4 +-
 .../tests/cli/general/test_help_command.rs         |    2 +-
 .../tests/cli/general/test_missing_credentials.rs  |    4 +-
 .../tests/cli/general/test_overview_command.rs     |    2 +-
 .../tests/cli/message/test_message_poll_command.rs |    4 +-
 .../message/test_message_poll_to_file_command.rs   |    4 +-
 .../tests/cli/message/test_message_send_command.rs |   26 +-
 .../message/test_message_send_from_file_command.rs |    2 +-
 .../cli/partition/test_partition_create_command.rs |    5 +-
 .../cli/partition/test_partition_delete_command.rs |    5 +-
 .../tests/cli/stream/test_stream_create_command.rs |  213 +-
 .../tests/cli/stream/test_stream_delete_command.rs |    5 +-
 .../tests/cli/stream/test_stream_get_command.rs    |   77 +-
 .../tests/cli/stream/test_stream_help_command.rs   |    2 +-
 .../tests/cli/stream/test_stream_list_command.rs   |   11 +-
 .../tests/cli/stream/test_stream_update_command.rs |   57 +-
 .../tests/cli/system/test_me_command.rs            |    4 +-
 .../tests/cli/system/test_stats_command.rs         |    9 +-
 .../tests/cli/topic/test_topic_create_command.rs   |    7 +-
 .../tests/cli/topic/test_topic_delete_command.rs   |    5 +-
 .../tests/cli/topic/test_topic_get_command.rs      |  375 +-
 .../tests/cli/topic/test_topic_help_command.rs     |    2 +-
 .../tests/cli/topic/test_topic_list_command.rs     |    5 +-
 .../tests/cli/topic/test_topic_update_command.rs   |  313 +-
 core/integration/tests/cli/user/common.rs          |    6 +-
 .../tests/cli/user/test_user_delete_command.rs     |    9 +-
 .../tests/cli/user/test_user_get_command.rs        |    2 +
 .../tests/cli/user/test_user_list_command.rs       |    9 +-
 .../tests/cli/user/test_user_name_command.rs       |    9 +-
 .../tests/cli/user/test_user_password_command.rs   |    9 +-
 .../cli/user/test_user_permissions_command.rs      |    9 +-
 .../tests/cli/user/test_user_status_command.rs     |    9 +-
 core/integration/tests/cluster/chaos_monkey.rs     |    2 +-
 .../tests/cluster/client_table_adversarial.rs      |    2 +-
 .../tests/cluster/client_table_restart.rs          |  379 +-
 .../tests/cluster/consumer_offset_quota.rs         |    2 +-
 core/integration/tests/cluster/crash_durability.rs |  116 +-
 .../tests/cluster/crash_offset_reuse.rs            |    2 +-
 .../tests/cluster/crash_recovery_corruption.rs     |  413 +-
 .../tests/cluster/failover_client_continuity.rs    |    2 +-
 .../tests/cluster/fast_primary_rejoin.rs           |    2 +-
 .../tests/cluster/metadata_checkpoint_restart.rs   |    2 +-
 core/integration/tests/cluster/mod.rs              |    3 +
 .../cluster/multi_shard_partition_convergence.rs   |   10 +-
 .../tests/cluster/parked_frame_redispatch.rs       |   26 +-
 core/integration/tests/cluster/partition_dedup.rs  |  160 +-
 .../tests/cluster/partition_primary_routing.rs     | 1974 +++++-
 .../tests/cluster/partition_state_transfer.rs      |    2 +-
 .../tests/cluster/register_forwarding.rs           |    2 +-
 .../tests/cluster/replica_read_batching.rs         |    5 +-
 .../tests/cluster/rolling_sigkill_repro.rs         |  320 +
 .../tests/cluster/staggered_bootstrap.rs           |   15 +-
 .../integration/tests/cluster/stream_encryption.rs |  457 ++
 .../tests/cluster/stream_key_rotation.rs           |  485 ++
 .../tests/connectors/fixtures/mqtt/mod.rs          |    2 +-
 .../tests/connectors/fixtures/mqtt/publisher.rs    |  120 +-
 .../tests/connectors/mqtt/mqtt_source.rs           |    2 +-
 .../tests/data_integrity/storage_compat.rs         |   32 +-
 .../data_integrity/verify_after_server_restart.rs  |   20 +-
 .../verify_auto_commit_offset_replicates.rs        |    5 +-
 .../verify_cluster_replica_data_identical.rs       |  165 +-
 .../verify_consumer_group_partition_assignment.rs  |  117 +-
 .../verify_no_plaintext_credentials_on_disk.rs     |   93 +-
 core/integration/tests/mcp/mod.rs                  |   22 +
 core/integration/tests/sdk/consumer_group.rs       |   11 +-
 .../tests/sdk/consumer_group_membership.rs         |   30 +-
 core/integration/tests/sdk/consumer_offset.rs      |   15 +-
 core/integration/tests/sdk/consumer_shutdown.rs    |    5 +-
 core/integration/tests/sdk/options.rs              |  397 +-
 core/integration/tests/sdk/producer/mod.rs         |    5 +-
 core/integration/tests/sdk/send_confirmation.rs    |    2 +-
 core/integration/tests/server/a2a_jwt/jwt_tests.rs |   16 +-
 .../tests/server/cluster_view_durability_vsr.rs    |    2 +-
 .../tests/server/consumer_offset_quota_vsr.rs      |    8 +-
 .../tests/server/descriptor_exhaustion_vsr.rs      |    2 +-
 core/integration/tests/server/general.rs           |    6 +
 core/integration/tests/server/http_rbac.rs         |   15 +-
 .../tests/server/http_read_your_writes.rs          |    2 +-
 core/integration/tests/server/http_vsr.rs          |  248 +-
 .../tests/server/partition_view_durability_vsr.rs  |    2 +-
 .../tests/server/partitions_limit_vsr.rs           |    2 +-
 .../server/personal_access_token_cleaner_vsr.rs    |   15 +-
 .../tests/server/pipelined_frames_vsr.rs           |    5 +-
 .../integration/tests/server/poll_semantics_vsr.rs |   10 +-
 .../server/scenarios/authentication_scenario.rs    |   40 +-
 .../concurrent_produce_consume_scenario.rs         |    5 +-
 .../tests/server/scenarios/concurrent_scenario.rs  |   36 +-
 ...umer_group_auto_commit_reconnection_scenario.rs |    5 +-
 ...onsumer_group_duplicate_name_create_scenario.rs |    6 +-
 .../scenarios/consumer_group_join_scenario.rs      |    6 +-
 ...er_group_new_messages_after_restart_scenario.rs |    5 +-
 .../consumer_group_offset_cleanup_scenario.rs      |    5 +-
 ...h_multiple_clients_polling_messages_scenario.rs |    5 +-
 ...with_single_client_polling_messages_scenario.rs |    5 +-
 .../consumer_timestamp_polling_scenario.rs         |    5 +-
 .../server/scenarios/delete_segments_scenario.rs   |   20 +-
 .../scenarios/delete_stats_rollback_scenario.rs    |   10 +-
 .../tests/server/scenarios/encryption_scenario.rs  |  598 +-
 .../scenarios/external_group_offsets_scenario.rs   |    6 +-
 .../scenarios/invalid_consumer_offset_scenario.rs  |    5 +-
 .../server/scenarios/log_rotation_scenario.rs      |    7 +-
 .../server/scenarios/message_cleanup_scenario.rs   |   37 +-
 .../server/scenarios/message_headers_scenario.rs   |    5 +-
 .../server/scenarios/message_size_scenario.rs      |    5 +-
 .../tests/server/scenarios/offset_scenario.rs      |    5 +-
 .../tests/server/scenarios/permissions_scenario.rs |   84 +-
 .../scenarios/read_during_persistence_scenario.rs  |    5 +-
 .../scenarios/reconnect_after_restart_scenario.rs  |   21 +-
 .../scenarios/restart_offset_skip_scenario.rs      |    5 +-
 .../scenarios/segment_rotation_race_scenario.rs    |   13 +-
 .../scenarios/single_message_per_batch_scenario.rs |    5 +-
 .../stale_client_consumer_group_scenario.rs        |    5 +-
 .../scenarios/stream_size_validation_scenario.rs   |    5 +-
 .../tests/server/scenarios/system_scenario.rs      |   57 +-
 .../tests/server/scenarios/tcp_tls_scenario.rs     |    5 +-
 .../tests/server/scenarios/timestamp_scenario.rs   |    5 +-
 .../tests/server/scenarios/user_scenario.rs        |   26 +-
 .../server/scenarios/websocket_tls_scenario.rs     |    5 +-
 .../tests/server/shared_jwt_secrets.toml           |    8 +-
 .../tests/server/topic_admission_vsr.rs            |   38 +-
 core/integration/tests/server/topic_metrics_vsr.rs |   11 +-
 core/journal/src/durable_storage.rs                |   10 +
 core/journal/src/prepare_journal.rs                |   57 +
 core/journal/src/superblock.rs                     |   49 +-
 core/message_bus/src/config.rs                     |    5 +
 core/message_bus/src/error.rs                      |   34 +-
 core/message_bus/src/installer/mod.rs              |   55 +-
 core/message_bus/src/installer/quic.rs             |    8 +-
 core/message_bus/src/installer/tcp.rs              |   14 +-
 core/message_bus/src/installer/ws.rs               |   11 +-
 core/message_bus/src/lib.rs                        |  382 +-
 .../src/lifecycle/connection_registry.rs           |  368 +-
 core/message_bus/src/transports/mod.rs             |    2 +-
 core/message_bus/src/transports/quic.rs            |  229 +-
 core/message_bus/tests/duplicate_client_id.rs      |   51 +
 core/message_bus/tests/quic_client_roundtrip.rs    |   18 +-
 core/message_bus/tests/tcp_client_roundtrip.rs     |  258 +-
 core/message_bus/tests/tcp_tls_client_listener.rs  |   20 +-
 core/message_bus/tests/tcp_tls_client_roundtrip.rs |   15 +-
 core/message_bus/tests/ws_client_roundtrip.rs      |   25 +-
 core/message_bus/tests/wss_client_listener.rs      |   15 +-
 core/message_bus/tests/wss_client_roundtrip.rs     |   15 +-
 core/metadata/src/applied_frontier.rs              |  132 +-
 core/metadata/src/impls/metadata.rs                | 5699 ++++++++++++----
 core/metadata/src/impls/mod.rs                     |    1 +
 core/metadata/src/impls/placement.rs               |  949 +++
 core/metadata/src/impls/recovery.rs                |  359 +-
 core/metadata/src/lib.rs                           |    4 +-
 core/metadata/src/stm/authz.rs                     |  107 +-
 core/metadata/src/stm/consumer_group.rs            |    4 +-
 core/metadata/src/stm/lifecycle.rs                 |   74 +-
 core/metadata/src/stm/mod.rs                       |    2 +
 core/metadata/src/stm/result.rs                    |   55 +-
 core/metadata/src/stm/snapshot.rs                  |   87 +-
 core/metadata/src/stm/stream.rs                    | 1578 ++++-
 core/metadata/src/stm/user.rs                      |  277 +-
 core/partitions/src/iggy_partition.rs              | 4737 +++++++++++---
 core/partitions/src/iggy_partitions.rs             |  168 +-
 core/partitions/src/io.rs                          |   38 +-
 core/partitions/src/journal.rs                     |   59 +
 core/partitions/src/lib.rs                         |   19 +-
 core/partitions/src/persistence.rs                 |  107 +-
 core/partitions/src/poll_plan.rs                   |   17 +-
 core/partitions/src/segment.rs                     |   10 +-
 core/partitions/src/segment_recovery.rs            |  102 +-
 core/partitions/src/state_transfer.rs              |   41 +-
 core/partitions/src/stream_keyring.rs              |  178 +
 core/partitions/src/types.rs                       |   39 +-
 core/partitions/src/view_fence.rs                  |  166 +
 core/partitions/src/wal_storage.rs                 |  442 ++
 core/partitions/tests/consumer_offset_history.rs   |    6 +-
 core/sdk/Cargo.toml                                |    3 +-
 core/sdk/README.md                                 |   47 +-
 core/sdk/src/binary/mod.rs                         |   77 +-
 .../src/client_wrappers/binary_stream_client.rs    |   34 +-
 .../sdk/src/client_wrappers/binary_topic_client.rs |   29 +-
 core/sdk/src/client_wrappers/binary_user_client.rs |   35 +-
 core/sdk/src/client_wrappers/client_wrapper.rs     |   38 +-
 core/sdk/src/clients/binary_streams.rs             |   13 +-
 core/sdk/src/clients/binary_topics.rs              |    3 +-
 core/sdk/src/clients/binary_users.rs               |    9 +-
 core/sdk/src/clients/client.rs                     |   92 +-
 core/sdk/src/clients/consumer.rs                   |  355 +-
 core/sdk/src/clients/producer.rs                   |  756 ++-
 core/sdk/src/clients/producer_dispatcher.rs        |   15 +-
 core/sdk/src/clients/producer_sharding.rs          |   26 +-
 core/sdk/src/consumer_ext/consumer_message_ext.rs  |   49 +-
 core/sdk/src/driver.rs                             | 1209 +++-
 core/sdk/src/driver/route_cache.rs                 |  298 +-
 core/sdk/src/http/http_client.rs                   |  161 +-
 core/sdk/src/http/messages.rs                      |   21 +-
 core/sdk/src/http/scripted_server.rs               |   31 +-
 core/sdk/src/http/streams.rs                       |   22 +-
 core/sdk/src/http/topics.rs                        |   29 +-
 core/sdk/src/http/users.rs                         |   19 +-
 core/sdk/src/links/fake_cluster.rs                 |  146 +-
 core/sdk/src/links/mux.rs                          |  148 +-
 core/sdk/src/links/replicas.rs                     |  227 +-
 core/sdk/src/prelude.rs                            |   22 +-
 core/sdk/src/session.rs                            |   19 +
 core/sdk/src/session_owner.rs                      |  237 +-
 core/sdk/src/session_owner/lanes.rs                |   54 +-
 .../src/stream_builder/build/build_stream_topic.rs |    7 +-
 core/sdk/src/tcp/tcp_client.rs                     |  790 ++-
 core/sdk/src/vsr.rs                                |   94 +-
 core/sdk/src/websocket/websocket_client.rs         |   15 +
 core/server/Cargo.toml                             |    4 +-
 core/server/README.md                              |  270 +-
 core/server/config.toml                            |   79 +-
 core/server/src/boot/mod.rs                        |   73 +-
 core/server/src/boot/recovery.rs                   |  476 +-
 core/server/src/boot/threads.rs                    |    4 +-
 core/server/src/consumer_group.rs                  |    4 +-
 core/server/src/consumer_group/liveness.rs         |  156 +-
 core/server/src/dispatch/authz.rs                  |   60 +-
 core/server/src/dispatch/failure.rs                |  287 +-
 core/server/src/dispatch/host.rs                   |  194 +-
 core/server/src/dispatch/mod.rs                    | 1631 +++--
 core/server/src/dispatch/partition.rs              | 1564 +++--
 core/server/src/dispatch/reads.rs                  |  134 +-
 core/server/src/dispatch/segment_delete.rs         |  201 +
 core/server/src/dispatch/session_ops.rs            |  187 +-
 core/server/src/dispatch/submit.rs                 |   14 +-
 core/server/src/dispatch/test_support.rs           |  256 +-
 core/server/src/http.rs                            |   44 +-
 core/server/src/http/admission.rs                  |  139 +-
 core/server/src/http/error.rs                      |  165 +-
 core/server/src/http/extractor.rs                  |  413 +-
 core/server/src/http/forward.rs                    | 1929 +++++-
 core/server/src/http/handlers.rs                   |  818 +--
 core/server/src/http/metrics.rs                    |   37 +
 core/server/src/http/reads.rs                      |  400 +-
 core/server/src/http/relay_proof.rs                |  356 +
 core/server/src/http/reply.rs                      |    9 +
 core/server/src/http/state.rs                      |  126 +-
 core/server/src/http/submit.rs                     |  163 +-
 core/server/src/lib.rs                             |    7 +-
 core/server/src/namespace.rs                       |  102 +-
 core/server/src/partition_helpers.rs               |   51 +-
 core/server/src/partition_reconciler.rs            |  783 ++-
 core/server/src/reply_frame.rs                     |   51 +-
 core/server/src/responses.rs                       |  672 +-
 core/server/src/rewrite.rs                         | 1024 ++-
 core/server/src/server_error.rs                    |   19 +
 core/server/src/session_manager.rs                 |  175 +-
 core/server/src/stream_key_rewrapper.rs            |  673 ++
 core/server/src/stream_keys.rs                     |  450 ++
 core/server/src/users.rs                           |  281 +-
 core/server/src/wire.rs                            |   23 +-
 core/server_common/src/consensus_message.rs        |  151 +-
 core/shard/src/builder.rs                          |   39 +-
 core/shard/src/coordinator.rs                      |    2 +-
 core/shard/src/lib.rs                              | 3979 ++++++++++--
 core/shard/src/metrics.rs                          |  198 +-
 core/shard/src/partition_io.rs                     | 3275 +++++++++-
 core/shard/src/poll.rs                             |   22 +-
 core/shard/src/poll/completion.rs                  |    2 +-
 core/shard/src/poll/completion_tests.rs            |   71 +-
 core/shard/src/poll/test_support.rs                |    2 +-
 core/shard/src/poll/timeout_tests.rs               |    4 +-
 core/shard/src/primary_rebalance.rs                |  845 +++
 core/shard/src/primary_rebalance/tests.rs          | 1191 ++++
 core/shard/src/router.rs                           |  203 +-
 core/simulator/Cargo.toml                          |    2 +-
 core/simulator/README.md                           |   23 +-
 core/simulator/src/bin/workload-fuzz.rs            |  197 +-
 core/simulator/src/bus.rs                          |  140 +-
 core/simulator/src/client.rs                       |  245 +-
 core/simulator/src/deps.rs                         |   15 +
 core/simulator/src/executor/time.rs                |   17 +-
 core/simulator/src/lib.rs                          | 6821 +++++++++++++++++---
 core/simulator/src/packet.rs                       |   33 +-
 core/simulator/src/partition_wal.rs                |  119 +
 core/simulator/src/replica.rs                      |  132 +-
 core/simulator/src/stale_prepare_commit_tests.rs   |  505 ++
 core/simulator/src/storage.rs                      |    7 +
 core/simulator/src/storage/bookmark_recovery.rs    |    2 +-
 core/simulator/src/storage/tests.rs                |   40 +-
 core/simulator/src/workload/actions.rs             |    2 +
 core/simulator/src/workload/invariants.rs          |   57 +-
 core/simulator/src/workload/mod.rs                 |  526 +-
 .../{create_stream.rs => create_keyed_stream.rs}   |   16 +-
 core/simulator/src/workload/ops/mod.rs             |    4 +
 .../{store_consumer_offset.rs => poll_messages.rs} |   72 +-
 .../src/workload/ops/store_stale_owner_offset.rs   |    4 +-
 core/simulator/src/workload/ops/update_stream.rs   |    2 +-
 core/simulator/src/workload/ops/update_topic.rs    |   50 +-
 core/simulator/src/workload/ops/update_user.rs     |   58 +-
 core/simulator/src/workload/options.rs             |   20 +-
 core/simulator/src/workload/oracle.rs              |  614 +-
 core/simulator/src/workload/readback.rs            |  420 ++
 core/simulator/src/workload/state_checker.rs       |  288 +-
 core/simulator/tests/lifecycle_seeds.rs            |  127 +
 core/system_stats/src/lib.rs                       |    9 +-
 core/tools/src/data-seeder/seeder.rs               |   12 +-
 .../Iggy_SDK.Examples.TcpTls.Producer/Program.cs   |    3 +-
 examples/go/getting-started/producer/main.go       |    9 +-
 examples/go/go.mod                                 |    2 +-
 examples/go/go.sum                                 |    4 +-
 .../apache/iggy/examples/async/AsyncProducer.java  |   10 +-
 .../producer/GettingStartedProducer.java           |    5 +-
 .../producer/MessageEnvelopeProducer.java          |    5 +-
 .../producer/MessageHeadersProducer.java           |    6 +-
 .../multitenant/producer/MultiTenantProducer.java  |   11 +-
 .../sinkdataproducer/SinkDataProducer.java         |   10 +-
 .../iggy/examples/streambuilder/StreamBasic.java   |    5 +-
 .../examples/tcptls/producer/TcpTlsProducer.java   |    5 +-
 .../iggy/examples/MultiTenantAccessTest.java       |   26 +-
 examples/node/README.md                            |    2 +-
 examples/node/package-lock.json                    |    7 +-
 examples/node/src/stream-builder/example.ts        |    2 +-
 examples/python/basic/producer.py                  |    6 +-
 examples/python/getting-started/producer.py        |    6 +-
 examples/python/high-level/producer.py             |   10 +-
 examples/python/message-headers/common.py          |    6 +-
 examples/python/pyproject.toml                     |    2 +-
 examples/python/uv.lock                            |   42 +-
 examples/rust/src/getting-started/producer/main.rs |    5 +-
 .../message-compression/producer/main.rs           |    2 +-
 examples/rust/src/multi-tenant/consumer/main.rs    |    8 +-
 examples/rust/src/multi-tenant/producer/main.rs    |   12 +-
 examples/rust/src/shared/system.rs                 |    4 +-
 examples/rust/src/tcp-tls/producer/main.rs         |    5 +-
 foreign/cpp/BUILD.bazel                            |   10 +
 foreign/cpp/Cargo.toml                             |    5 +-
 foreign/cpp/MODULE.bazel                           |    3 +-
 foreign/cpp/README.md                              |   40 +
 foreign/cpp/include/iggy.hpp                       |  972 ++-
 foreign/cpp/src/client.cpp                         |  144 +-
 foreign/cpp/src/client.rs                          |  280 +-
 foreign/cpp/src/lib.rs                             |  119 +-
 foreign/cpp/src/type_conversion.rs                 |  387 +-
 foreign/cpp/src/type_conversions.cpp               |   48 +-
 foreign/cpp/tests/e2e/client.cpp                   |  171 +-
 foreign/cpp/tests/e2e/message.cpp                  |   76 +-
 foreign/cpp/tests/e2e/resource_options.cpp         |  736 +++
 foreign/cpp/tests/e2e/stream.cpp                   |   38 +-
 foreign/cpp/tests/e2e/test_helpers.hpp             |   17 +-
 foreign/cpp/tests/e2e/topic.cpp                    |  206 +-
 foreign/cpp/tests/fixtures/resource_options.json   | 1619 +++++
 foreign/cpp/tests/unit/resource_options.cpp        |  355 +
 foreign/cpp/tests/unit/unit_tests.cpp              |  113 +-
 foreign/csharp/Benchmarks/Program.cs               |    7 +-
 .../Iggy_SDK.Tests.BDD/Context/TestContext.cs      |    2 +
 .../Iggy_SDK.Tests.BDD/Context/TestEnvironment.cs  |    1 +
 .../csharp/Iggy_SDK.Tests.BDD/Context/TestHooks.cs |    1 +
 .../Iggy_SDK.Tests.BDD/Iggy_SDK.Tests.BDD.csproj   |   13 +
 .../StepDefinitions/LeaderRedirectionSteps.cs      |   12 +
 .../StepDefinitions/ResourceOptionsSteps.cs        |  376 ++
 .../StepDefinitions/SessionContractSteps.cs        |   89 +
 .../csharp/Iggy_SDK.Tests.BDD/xunit.runner.json    |    4 +
 .../Fixtures/IggyServerFixture.cs                  |   26 +-
 .../IggyConsumerTests.cs                           |   10 +-
 .../IggyTypedConsumerTests.cs                      |    2 +
 .../Iggy_SDK.Tests.Integration/OptionsTests.cs     |  313 +-
 .../Iggy_SDK.Tests.Integration/StreamsTests.cs     |   10 +-
 .../Iggy_SDK.Tests.Integration/TopicsTests.cs      |   39 +-
 .../Iggy_SDK.Tests.Integration/UsersTests.cs       |    3 +-
 .../csharp/Iggy_SDK/Consumers/AutoCommitMode.cs    |    4 +-
 .../Iggy_SDK/Consumers/IggyConsumer.Rented.cs      |   37 +-
 foreign/csharp/Iggy_SDK/Consumers/IggyConsumer.cs  |  313 +-
 .../csharp/Iggy_SDK/Consumers/IggyConsumerOfT.cs   |   23 +-
 .../csharp/Iggy_SDK/Contracts/Auth/UserResponse.cs |   25 +-
 .../Contracts/Http/Auth/CreateUserRequest.cs       |    9 +-
 .../Contracts/Http/Auth/UpdateUserRequest.cs       |   22 -
 .../Iggy_SDK/Contracts/Http/CreateStreamRequest.cs |   11 +-
 .../Iggy_SDK/Contracts/Http/CreateTopicRequest.cs  |   47 +-
 .../csharp/Iggy_SDK/Contracts/Http/OptionInputs.cs |   53 +
 .../Iggy_SDK/Contracts/Http/UpdateStreamRequest.cs |   20 -
 .../Iggy_SDK/Contracts/Http/UpdateTopicRequest.cs  |   31 -
 foreign/csharp/Iggy_SDK/Contracts/OptionKeys.cs    |  241 +
 foreign/csharp/Iggy_SDK/Contracts/OptionSpec.cs    |   38 +-
 foreign/csharp/Iggy_SDK/Contracts/OptionValues.cs  |   62 +
 foreign/csharp/Iggy_SDK/Contracts/OptionsPatch.cs  |   53 +
 .../{ClusterNodeStatus.cs => StreamOptionKey.cs}   |   40 +-
 foreign/csharp/Iggy_SDK/Contracts/StreamOptions.cs |   74 +
 .../csharp/Iggy_SDK/Contracts/StreamResponse.cs    |   56 +-
 foreign/csharp/Iggy_SDK/Contracts/StreamUpdate.cs  |   64 +
 .../csharp/Iggy_SDK/Contracts/Tcp/TcpContracts.cs  |  221 +-
 .../csharp/Iggy_SDK/Contracts/TopicOptionKey.cs    |   58 +
 foreign/csharp/Iggy_SDK/Contracts/TopicOptions.cs  |  139 +-
 foreign/csharp/Iggy_SDK/Contracts/TopicResponse.cs |   34 +-
 foreign/csharp/Iggy_SDK/Contracts/TopicUpdate.cs   |   88 +
 .../{ClusterNodeRole.cs => UserOptionKey.cs}       |   17 +-
 ...rsonalAccessTokenResponse.cs => UserOptions.cs} |   26 +-
 foreign/csharp/Iggy_SDK/Contracts/UserUpdate.cs    |   78 +
 .../csharp/Iggy_SDK/Encryption/EncryptionKeys.cs   |  108 +
 .../{Protocol.cs => PartitionResizePolicy.cs}      |   18 +-
 .../{UserStatus.cs => StreamEncryptionSource.cs}   |   21 +-
 .../Exceptions/IggyInvalidStatusCodeException.cs   |    3 +-
 .../csharp/Iggy_SDK/Factory/IggyClientFactory.cs   |   11 +-
 foreign/csharp/Iggy_SDK/IggyClient/IIggyStream.cs  |   17 +-
 foreign/csharp/Iggy_SDK/IggyClient/IIggySystem.cs  |   12 +-
 foreign/csharp/Iggy_SDK/IggyClient/IIggyTopic.cs   |   41 +-
 foreign/csharp/Iggy_SDK/IggyClient/IIggyUsers.cs   |   16 +-
 .../Implementations/HttpMessageStream.cs           |  111 +-
 .../TcpMessageStream.PollRouting.cs                |  287 +-
 .../TcpMessageStream.ReplicaLinks.cs               |  109 +-
 .../Implementations/TcpMessageStream.Vsr.cs        |  327 +-
 .../IggyClient/Implementations/TcpMessageStream.cs |  256 +-
 foreign/csharp/Iggy_SDK/Iggy_SDK.csproj            |    2 +-
 .../JsonConverters/RedactedOptionsConverter.cs     |   49 +
 .../JsonConverters/ResourceOptionsConverter.cs     |  133 +-
 foreign/csharp/Iggy_SDK/Mappers/BinaryMapper.cs    |   57 +-
 .../csharp/Iggy_SDK/Publishers/IggyPublisher.cs    |   24 +-
 foreign/csharp/Iggy_SDK/Utils/CommandCodes.cs      |    9 +-
 foreign/csharp/Iggy_SDK/Vsr/ConsensusSession.cs    |  149 +-
 foreign/csharp/Iggy_SDK/Vsr/LoginRegister.cs       |    4 +-
 foreign/csharp/Iggy_SDK/Vsr/MutationLanes.cs       |  437 +-
 foreign/csharp/Iggy_SDK/Vsr/VsrConnection.cs       |   44 +-
 foreign/csharp/Iggy_SDK/Vsr/VsrError.cs            |   14 +-
 foreign/csharp/Iggy_SDK/Vsr/VsrHeader.cs           |    7 +-
 foreign/csharp/Iggy_SDK/Vsr/VsrOperation.cs        |   62 +-
 .../ClientTests/ExampleHelpersTests.cs             |    5 +-
 .../ClientTests/HttpPartitionContextTests.cs       |    2 +-
 .../ClientTests/HttpTopicOptionsTests.cs           |   28 +-
 .../ClientTests/IggyClientFactoryTests.cs          |   23 +
 .../PartitionIncarnationTests.Disposal.cs          |  287 +
 .../ConsumerTests/PartitionIncarnationTests.cs     |    8 +-
 .../ConsumerTests/PollFailureTests.cs              |  457 ++
 .../ContractsTests/TopicContractsTests.cs          |   29 +-
 .../ContractsTests/WireNameLengthContractsTests.cs |   62 +-
 .../Iggy_SDK_Tests/Fixtures/resource_options.json  | 1619 +++++
 .../csharp/Iggy_SDK_Tests/Iggy_SDK_Tests.csproj    |    6 +
 .../Iggy_SDK_Tests/MapperTests/BinaryMapper.cs     |   64 +-
 .../MapperTests/OptionsBlockGoldenVectorTests.cs   |   15 +-
 .../MapperTests/ResourceOptionsConverterTests.cs   |   37 +-
 .../MapperTests/ResourceOptionsTests.cs            | 1187 ++++
 .../PublisherTests/IggyTypedPublisherTests.cs      |    1 -
 .../csharp/Iggy_SDK_Tests/Utils/BinaryFactory.cs   |   32 +-
 .../Iggy_SDK_Tests/Utils/Users/UsersFactory.cs     |    3 +-
 .../VsrTests/ConsensusSessionTests.cs              |   44 +-
 .../VsrTests/EndpointFailoverTests.cs              |   72 +-
 foreign/csharp/Iggy_SDK_Tests/VsrTests/MockNode.cs |   12 +-
 .../Iggy_SDK_Tests/VsrTests/MutationLaneTests.cs   |  302 +-
 .../VsrTests/NativeRecoveryTests.SignIn.cs         |  710 ++
 .../Iggy_SDK_Tests/VsrTests/NativeRecoveryTests.cs |  748 ++-
 .../VsrTests/PartitionContextTests.cs              |    7 +-
 .../Iggy_SDK_Tests/VsrTests/PrimaryPollingTests.cs |  141 +-
 .../Iggy_SDK_Tests/VsrTests/ReplicaLinkTests.cs    |  177 +-
 .../VsrTests/VsrMultiplexingTests.cs               |   76 +-
 .../Iggy_SDK_Tests/VsrTests/VsrOperationTests.cs   |   18 +-
 .../VsrTests/VsrProtocolDriftTests.cs              |   45 +
 foreign/csharp/README.md                           |   98 +-
 foreign/go/README.md                               |  107 +-
 .../go/benchmarks/send_messages_benchmark_test.go  |   16 +-
 .../binary_response_deserializer.go                |  147 +-
 .../binary_response_deserializer_test.go           |   78 +-
 .../vsr_response_deserializer_test.go              |   68 +-
 foreign/go/client/example_resource_options_test.go |   87 +
 foreign/go/client/iggy_client.go                   |   11 +-
 foreign/go/client/iggy_client_test.go              |   48 +
 foreign/go/client/tcp/cluster.go                   |   55 +-
 .../go/client/tcp/tcp_access_token_management.go   |    2 +-
 foreign/go/client/tcp/tcp_connect_test.go          |  536 +-
 foreign/go/client/tcp/tcp_core.go                  |   98 +-
 foreign/go/client/tcp/tcp_core_review_test.go      |   21 +-
 foreign/go/client/tcp/tcp_core_test.go             |   15 +-
 foreign/go/client/tcp/tcp_driver.go                |  158 +-
 foreign/go/client/tcp/tcp_driver_test.go           |  175 +-
 foreign/go/client/tcp/tcp_failover_test.go         |  117 +-
 foreign/go/client/tcp/tcp_group_polling.go         |   79 +-
 foreign/go/client/tcp/tcp_group_polling_test.go    |   48 +-
 foreign/go/client/tcp/tcp_link.go                  |   39 +-
 foreign/go/client/tcp/tcp_link_test.go             |  292 +
 foreign/go/client/tcp/tcp_messaging.go             |   12 +-
 foreign/go/client/tcp/tcp_offset_management.go     |    9 +-
 foreign/go/client/tcp/tcp_pending.go               |  335 +-
 foreign/go/client/tcp/tcp_poll_routing.go          |  273 +-
 foreign/go/client/tcp/tcp_poll_routing_test.go     |  899 ++-
 foreign/go/client/tcp/tcp_replicas.go              |   42 +-
 foreign/go/client/tcp/tcp_replicas_test.go         |  721 ++-
 .../go/client/tcp/tcp_session_credentials_test.go  |  272 +-
 foreign/go/client/tcp/tcp_session_management.go    |  456 +-
 foreign/go/client/tcp/tcp_stream_management.go     |   21 +-
 .../go/client/tcp/tcp_stream_management_test.go    |   40 +-
 foreign/go/client/tcp/tcp_testing_test.go          |   19 +-
 foreign/go/client/tcp/tcp_topic_cache_test.go      |   14 +-
 foreign/go/client/tcp/tcp_topic_management.go      |   46 +-
 foreign/go/client/tcp/tcp_topic_management_test.go |   38 +-
 foreign/go/client/tcp/tcp_user_management.go       |  104 +-
 foreign/go/contracts/client.go                     |   63 +-
 foreign/go/contracts/option_diagnostics.go         |  150 +
 foreign/go/contracts/options.go                    |   22 +-
 foreign/go/contracts/resource_options_test.go      |  988 +++
 foreign/go/contracts/stream.go                     |   53 +-
 foreign/go/contracts/stream_options.go             |  138 +
 .../go/contracts/testdata/resource_options.json    | 1619 +++++
 foreign/go/contracts/topic_options.go              |  130 +-
 foreign/go/contracts/topics.go                     |   12 +-
 foreign/go/contracts/user_options.go               |   59 +
 foreign/go/contracts/users.go                      |   13 +-
 foreign/go/contracts/version.go                    |    2 +-
 foreign/go/errors/errors.yaml                      |   40 +-
 foreign/go/errors/errors_gen.go                    |  135 +-
 foreign/go/errors/errors_test.go                   |    6 +-
 foreign/go/go.mod                                  |    2 +-
 foreign/go/go.sum                                  |    4 +-
 foreign/go/internal/command/access_token.go        |   12 +-
 foreign/go/internal/command/access_token_test.go   |   50 +
 foreign/go/internal/command/code.go                |    6 +-
 foreign/go/internal/command/stream.go              |   89 +-
 foreign/go/internal/command/stream_test.go         |   16 +-
 foreign/go/internal/command/topic.go               |  228 +-
 foreign/go/internal/command/topic_test.go          |  100 +-
 foreign/go/internal/command/update_resource.go     |  318 +
 .../go/internal/command/update_resource_test.go    |  181 +
 foreign/go/internal/command/update_user.go         |   94 +-
 foreign/go/internal/command/update_user_test.go    |   43 +-
 foreign/go/internal/command/user.go                |    9 +-
 foreign/go/internal/vsr/envelope.go                |   12 +-
 foreign/go/internal/vsr/envelope_test.go           |   12 +-
 foreign/go/internal/vsr/operation.go               |   23 +-
 foreign/go/internal/vsr/operation_test.go          |   17 +-
 foreign/go/internal/vsr/protocol_parity_test.go    |    8 +-
 foreign/go/internal/vsr/register.go                |    4 +-
 foreign/go/internal/vsr/register_test.go           |    6 +-
 foreign/go/internal/vsr/reply.go                   |   50 +-
 foreign/go/internal/vsr/reply_test.go              |  158 +-
 foreign/go/internal/vsr/session.go                 |   18 +-
 foreign/go/internal/vsr/session_test.go            |   36 +-
 foreign/go/tests/e2e_helpers_test.go               |   52 +-
 foreign/go/tests/e2e_personal_access_token_test.go |   98 +
 foreign/go/tests/e2e_resource_options_test.go      |  301 +
 foreign/go/tests/e2e_test.go                       |   90 +-
 foreign/java/README.md                             |   75 +-
 .../common/provision/ResourceProvisioner.java      |   11 +-
 .../kotlin/iggy.java-common-conventions.gradle.kts |    9 +
 .../connector/pinot/IggyPinotIntegrationTest.java  |    6 +-
 foreign/java/gradle.properties                     |    2 +-
 foreign/java/java-sdk/build.gradle.kts             |    2 +-
 .../apache/iggy/client/async/StreamsClient.java    |   52 +-
 .../org/apache/iggy/client/async/TopicsClient.java |  116 +-
 .../org/apache/iggy/client/async/UsersClient.java  |   37 +-
 .../iggy/client/async/tcp/AsyncIggyTcpClient.java  |  766 ++-
 .../async/tcp/AsyncIggyTcpClientBuilder.java       |   20 +-
 .../iggy/client/async/tcp/AsyncTcpConnection.java  |  998 ++-
 .../iggy/client/async/tcp/ConnectionHeartbeat.java |  132 +
 .../client/async/tcp/ConsumerGroupsTcpClient.java  |   11 +-
 .../client/async/tcp/ConsumerOffsetsTcpClient.java |   18 +-
 .../async/tcp/CredentialsListener.java}            |    9 +-
 .../iggy/client/async/tcp/IggyAuthenticator.java   |   78 +
 .../iggy/client/async/tcp/LeaderAwareness.java     |   23 -
 .../iggy/client/async/tcp/LoginRoutingHook.java    |    8 +-
 .../iggy/client/async/tcp/MessagesTcpClient.java   |  135 +-
 .../apache/iggy/client/async/tcp/PollRouter.java   |  448 +-
 .../iggy/client/async/tcp/PoolChannelHandler.java  |   93 +
 .../client/async/tcp/RawPartitionRequests.java     |    2 +-
 .../apache/iggy/client/async/tcp/SessionLogin.java |  155 +
 .../iggy/client/async/tcp/StreamsTcpClient.java    |   17 +-
 .../iggy/client/async/tcp/TopicsTcpClient.java     |   98 +-
 .../tcp/TransientFailoverHandler.java}             |   27 +-
 .../client/async/tcp/UserPatchCredentials.java     |   88 +
 .../iggy/client/async/tcp/UsersTcpClient.java      |   77 +-
 .../async/tcp/VsrExchange.java}                    |   39 +-
 .../client/async/tcp/vsr/ConsensusSession.java     |  370 +-
 .../iggy/client/async/tcp/vsr/VsrLoginCodec.java   |    2 +-
 .../iggy/client/async/tcp/vsr/VsrOperation.java    |   28 +-
 .../client/async/tcp/vsr/VsrRequestEncoder.java    |   19 +
 .../client/async/tcp/vsr/VsrResponseHandler.java   |   60 +-
 .../apache/iggy/client/blocking/StreamsClient.java |   32 +-
 .../apache/iggy/client/blocking/TopicsClient.java  |   87 +-
 .../apache/iggy/client/blocking/UsersClient.java   |   21 +-
 .../iggy/client/blocking/http/HttpOptionValue.java |  164 +
 .../client/blocking/http/InternalHttpClient.java   |    2 +-
 .../client/blocking/http/StreamsHttpClient.java    |   60 +-
 .../client/blocking/http/SystemHttpClient.java     |   31 +-
 .../client/blocking/http/TopicsHttpClient.java     |   99 +-
 .../iggy/client/blocking/http/UsersHttpClient.java |   77 +-
 .../iggy/client/blocking/tcp/StreamsTcpClient.java |   11 +-
 .../iggy/client/blocking/tcp/TopicsTcpClient.java  |   26 +-
 .../iggy/client/blocking/tcp/UsersTcpClient.java   |   14 +-
 .../org/apache/iggy/exception/IggyErrorCode.java   |   14 +
 .../iggy/exception/IggyValidationException.java    |    9 +-
 .../org/apache/iggy/serde/BytesDeserializer.java   |   45 +-
 .../org/apache/iggy/serde/BytesSerializer.java     |  144 +
 .../java/org/apache/iggy/serde/CommandCode.java    |   13 +-
 .../apache/iggy/stream/EncryptionKeySource.java}   |   32 +-
 .../org/apache/iggy/stream/EncryptionKeys.java     |  120 +
 .../apache/iggy/stream/EncryptionProjection.java   |   60 +
 .../java/org/apache/iggy/stream/StreamBase.java    |   31 +-
 .../java/org/apache/iggy/stream/StreamDetails.java |   42 +-
 .../org/apache/iggy/stream/StreamOptionKey.java    |   59 +
 .../java/org/apache/iggy/stream/StreamOptions.java |  128 +
 .../java/org/apache/iggy/stream/StreamUpdate.java  |  138 +
 .../java/org/apache/iggy/system/OptionKey.java     |  177 +
 .../java/org/apache/iggy/system/OptionSpec.java    |   47 +-
 ...{Durability.java => PartitionResizePolicy.java} |    9 +-
 .../src/main/java/org/apache/iggy/topic/Topic.java |   33 +-
 .../java/org/apache/iggy/topic/TopicDetails.java   |   22 +-
 .../java/org/apache/iggy/topic/TopicOptionKey.java |   63 +
 .../java/org/apache/iggy/topic/TopicOptions.java   |  123 +-
 .../java/org/apache/iggy/topic/TopicSettings.java  |   67 +
 .../java/org/apache/iggy/topic/TopicUpdate.java    |  174 +
 .../main/java/org/apache/iggy/user/UserInfo.java   |   22 +-
 .../java/org/apache/iggy/user/UserInfoDetails.java |   26 +-
 .../java/org/apache/iggy/user/UserOptionKey.java}  |   24 +-
 .../java/org/apache/iggy/user/UserOptions.java     |   74 +
 .../main/java/org/apache/iggy/user/UserUpdate.java |  163 +
 .../java/org/apache/iggy/ProtocolParityTest.java   |  217 +
 .../org/apache/iggy/ResourceOptionsFixture.java    |  201 +
 ...nnectionExceptionTest.java => RustSources.java} |   32 +-
 .../test/java/org/apache/iggy/TestConstants.java   |    5 +-
 .../client/async/AsyncClientIntegrationTest.java   |  185 +-
 .../client/async/AsyncConnectionPoolAuthTest.java  |   42 +-
 .../iggy/client/async/AsyncConsumerGroupsTest.java |   10 +-
 .../iggy/client/async/ResourceOptionsTest.java     |  371 ++
 .../async/tcp/AsyncIggyTcpClientBuilderTest.java   |    9 +
 .../AsyncIggyTcpClientCredentialChangeTest.java    |  293 +
 .../AsyncIggyTcpClientEndpointFailoverTest.java    |  686 +-
 .../tcp/AsyncIggyTcpClientEventLoopGroupTest.java  |    2 +-
 .../tcp/AsyncIggyTcpClientFailoverSignInTest.java  |  406 ++
 .../async/tcp/AsyncIggyTcpClientLockOrderTest.java |  183 +
 .../tcp/AsyncIggyTcpClientLoginRoutingTest.java    |   93 +-
 .../tcp/AsyncIggyTcpClientLostLinkReplayTest.java  |  295 +
 .../tcp/AsyncIggyTcpClientNamespaceMissTest.java   |  508 ++
 .../tcp/AsyncIggyTcpClientPartitionWriteTest.java  |  118 +
 .../async/tcp/AsyncIggyTcpClientRecoveryTest.java  |  397 ++
 .../tcp/AsyncIggyTcpClientSessionRulesTest.java    | 1225 ++++
 .../AsyncIggyTcpClientTransientFailoverTest.java   |  109 +-
 .../tcp/AsyncTcpConnectionConcurrencyTest.java     |   92 +-
 .../tcp/AsyncTcpConnectionLifecycleBusyTest.java   |  112 +-
 .../tcp/AsyncTcpConnectionRequestTimeoutTest.java  |   61 +
 .../iggy/client/async/tcp/LeaderAwarenessTest.java |   30 -
 .../iggy/client/async/tcp/PollRouterTest.java      |  862 ++-
 .../async/tcp/TopicsTcpClientPayloadTest.java      |   42 +-
 .../client/async/tcp/vsr/ConsensusSessionTest.java |   68 +
 .../client/async/tcp/vsr/VsrLoginCodecTest.java    |   11 +-
 .../client/async/tcp/vsr/VsrOperationTest.java     |   69 +
 .../async/tcp/vsr/VsrRequestEncoderTest.java       |   14 +
 .../async/tcp/vsr/VsrResponseHandlerTest.java      |   64 +
 .../iggy/client/blocking/IntegrationTest.java      |   12 +-
 .../iggy/client/blocking/StreamClientBaseTest.java |  155 +-
 .../iggy/client/blocking/SystemClientBaseTest.java |   43 +-
 .../iggy/client/blocking/TopicsClientBaseTest.java |  126 +-
 .../iggy/client/blocking/UsersClientBaseTest.java  |   66 +-
 .../client/blocking/http/HttpOptionValueTest.java  |  215 +
 .../http/InternalHttpClientLoggingTest.java        |   61 +
 .../http/MessagesHttpClientSendContextTest.java    |    4 +-
 .../client/blocking/http/StreamHttpClientTest.java |   37 +
 .../client/blocking/tcp/MessagesTcpClientTest.java |   12 +-
 .../client/blocking/tcp/TlsConnectionTest.java     |    4 +-
 .../client/blocking/tcp/TopicsTcpClientTest.java   |   18 +-
 .../exception/IggyValidationExceptionTest.java     |   18 +-
 .../apache/iggy/serde/BytesDeserializerTest.java   |   16 +-
 .../org/apache/iggy/serde/ResourceOptionsTest.java |  670 ++
 .../org/apache/iggy/stream/StreamDetailsTest.java  |   21 +-
 .../org/apache/iggy/topic/TopicDetailsTest.java    |   18 +-
 .../org/apache/iggy/topic/TopicOptionsTest.java    |   15 +-
 .../org/apache/iggy/user/UserInfoDetailsTest.java  |    2 +-
 .../src/test/resources/resource_options.json       | 1619 +++++
 foreign/node/README.md                             |  137 +-
 foreign/node/package-lock.json                     |  195 +-
 foreign/node/package.json                          |    4 +-
 foreign/node/scripts/check-vsr-protocol.mjs        |   22 +
 foreign/node/src/bdd/README.md                     |    3 +
 foreign/node/src/bdd/env.ts                        |   10 +-
 foreign/node/src/bdd/resource-options.ts           |  333 +
 foreign/node/src/bdd/session.ts                    |   63 +
 foreign/node/src/bdd/world.ts                      |   10 +-
 foreign/node/src/client/client.connection.test.ts  |   37 +-
 foreign/node/src/client/client.connection.ts       |   28 +-
 foreign/node/src/client/client.operation.test.ts   |   37 +-
 foreign/node/src/client/client.operation.ts        |   19 +-
 foreign/node/src/client/client.socket.test.ts      | 1741 ++++-
 foreign/node/src/client/client.socket.ts           |  516 +-
 foreign/node/src/client/client.type.ts             |   15 +-
 foreign/node/src/client/index.ts                   |    1 +
 ...est-client.utils.ts => resource-options.e2e.ts} |   15 +-
 foreign/node/src/e2e/resource-options.suite.ts     |  323 +
 foreign/node/src/e2e/tcp.parallel.e2e.ts           |    7 +-
 foreign/node/src/e2e/tcp.token.e2e.ts              |   10 +-
 foreign/node/src/e2e/tls.system.e2e.ts             |   20 +-
 foreign/node/src/index.ts                          |   17 +
 foreign/node/src/stream/consumer-stream.ts         |   69 +-
 foreign/node/src/wire/command.code.ts              |    9 +-
 foreign/node/src/wire/error.code.test.ts           |    9 +
 foreign/node/src/wire/error.code.ts                |    8 +-
 .../node/src/wire/fixtures/resource_options.json   | 1619 +++++
 foreign/node/src/wire/index.ts                     |    4 +
 .../src/wire/message/poll-messages.command.test.ts |   73 +-
 .../node/src/wire/message/poll-messages.command.ts |   42 +-
 .../node/src/wire/message/send-messages.command.ts |   15 +-
 foreign/node/src/wire/options.utils.ts             |   80 +
 .../src/wire/session/login-with-token.command.ts   |   10 +-
 foreign/node/src/wire/session/login.command.ts     |   10 +-
 .../node/src/wire/stream/create-stream.command.ts  |   33 +-
 foreign/node/src/wire/stream/index.ts              |    1 +
 .../node/src/wire/stream/stream-options.test.ts    |  113 +
 foreign/node/src/wire/stream/stream-options.ts     |  140 +
 foreign/node/src/wire/stream/stream.utils.ts       |   31 +-
 .../node/src/wire/stream/update-stream.command.ts  |   52 +-
 .../src/wire/system/describe-options.command.ts    |   43 +-
 foreign/node/src/wire/system/index.ts              |    1 +
 .../wire/system/update-resource.command.test.ts    |  680 ++
 .../src/wire/system/update-resource.command.ts     |  173 +
 .../src/wire/token/create-token.command.test.ts    |   14 +
 .../node/src/wire/token/create-token.command.ts    |    4 +-
 .../node/src/wire/topic/create-topic.command.ts    |   43 +-
 foreign/node/src/wire/topic/index.ts               |    2 +-
 foreign/node/src/wire/topic/topic.utils.test.ts    |   26 +-
 foreign/node/src/wire/topic/topic.utils.ts         |   44 +-
 .../node/src/wire/topic/update-topic.command.ts    |   87 +-
 foreign/node/src/wire/user/create-user.command.ts  |   23 +-
 foreign/node/src/wire/user/index.ts                |    1 +
 foreign/node/src/wire/user/update-user.command.ts  |   82 +-
 foreign/node/src/wire/user/user.utils.ts           |   13 +-
 foreign/node/src/wire/vsr/index.ts                 |   12 +-
 foreign/node/src/wire/vsr/operation.test.ts        |   33 +-
 foreign/node/src/wire/vsr/operation.ts             |   41 +-
 foreign/node/src/wire/vsr/register.ts              |    4 +-
 foreign/node/src/wire/vsr/reply.test.ts            |   16 +-
 foreign/node/src/wire/vsr/reply.ts                 |    9 +-
 foreign/node/src/wire/vsr/session.test.ts          |    8 +-
 foreign/node/src/wire/vsr/session.ts               |   14 +-
 foreign/node/src/wire/vsr/vsr.test.ts              |   21 +-
 foreign/php/Cargo.toml                             |    3 +-
 foreign/php/README.md                              |   50 +-
 foreign/php/docker-compose.test.yml                |    4 +
 foreign/php/iggy-php.stubs.php                     |  246 +-
 foreign/php/src/client.rs                          |  204 +-
 foreign/php/src/error.rs                           |   22 +-
 foreign/php/src/lib.rs                             |    8 +
 foreign/php/src/options.rs                         |  338 +
 foreign/php/src/sensitive_parameters.rs            |  135 +
 foreign/php/src/stream.rs                          |   44 +-
 foreign/php/src/topic.rs                           |   18 +-
 foreign/php/tests/ErrorTest.php                    |   18 +
 foreign/php/tests/ResourceOptionsTest.php          |  640 ++
 foreign/php/tests/SensitiveParameterTest.php       |  166 +
 foreign/php/tests/bootstrap.php                    |   28 +
 foreign/php/tests/fixtures/resource_options.json   | 1619 +++++
 foreign/python/Cargo.toml                          |   10 +-
 foreign/python/README.md                           |   99 +-
 foreign/python/apache_iggy.pyi                     |  585 +-
 foreign/python/docker-compose.test.yml             |    3 +
 foreign/python/pyproject.toml                      |    4 +-
 foreign/python/src/bin/stub_gen.rs                 |    2 +
 foreign/python/src/client.rs                       |  462 +-
 foreign/python/src/identifier.rs                   |   11 +-
 foreign/python/src/lib.rs                          |   15 +-
 foreign/python/src/options.rs                      |   64 +-
 foreign/python/src/producer.rs                     |   80 +-
 foreign/python/src/resource_options.rs             |  614 ++
 foreign/python/src/stream.rs                       |   90 +
 foreign/python/src/topic.rs                        |   67 +-
 foreign/python/src/user.rs                         |   36 +
 foreign/python/tests/conftest.py                   |   35 +-
 .../python/tests/fixtures/resource_options.json    | 1619 +++++
 foreign/python/tests/test_client_config.py         |    6 +-
 foreign/python/tests/test_consumer_group.py        |  267 +-
 foreign/python/tests/test_http_config.py           |    8 +-
 foreign/python/tests/test_message_operations.py    |  131 +-
 foreign/python/tests/test_partition.py             |    5 +-
 foreign/python/tests/test_permissions.py           |    2 +-
 foreign/python/tests/test_producer.py              |   11 +-
 foreign/python/tests/test_quic_config.py           |    7 +
 foreign/python/tests/test_raw_command.py           |   27 +-
 foreign/python/tests/test_resource_options.py      |  742 +++
 foreign/python/tests/test_segment.py               |   45 +-
 foreign/python/tests/test_stats.py                 |   14 +-
 foreign/python/tests/test_stream.py                |    4 +-
 foreign/python/tests/test_tls.py                   |    2 +-
 foreign/python/tests/test_topic.py                 |  290 +-
 foreign/python/tests/test_user.py                  |    9 +-
 foreign/python/uv.lock                             |   49 +-
 foreign/swift/Package.resolved                     |   20 +-
 foreign/swift/Package.swift                        |    2 +
 foreign/swift/README.md                            |  172 +-
 .../Sources/Iggy/Client/ClientConfiguration.swift  |    8 +-
 foreign/swift/Sources/Iggy/Client/ClientCore.swift |  675 +-
 .../Sources/Iggy/Client/IggyClient+Messages.swift  |  115 +-
 .../Sources/Iggy/Client/IggyClient+Resources.swift |  180 +-
 foreign/swift/Sources/Iggy/Client/IggyClient.swift |  129 +-
 foreign/swift/Sources/Iggy/Client/PollRouter.swift |  620 +-
 foreign/swift/Sources/Iggy/Errors/IggyError.swift  |   18 +-
 .../swift/Sources/Iggy/Errors/IggyErrorCode.swift  |   12 +
 foreign/swift/Sources/Iggy/Iggy.swift              |    2 +-
 .../swift/Sources/Iggy/Models/EncryptionKey.swift  |   65 +
 .../Sources/Iggy/Models/ResourceOptions.swift      |  116 +-
 foreign/swift/Sources/Iggy/Models/Resources.swift  |   22 +-
 .../swift/Sources/Iggy/Models/StreamOptions.swift  |  191 +
 .../swift/Sources/Iggy/Models/TopicOptions.swift   |  195 +-
 .../swift/Sources/Iggy/Models/UserHeaders.swift    |    2 +-
 .../swift/Sources/Iggy/Models/UserOptions.swift    |   88 +
 .../swift/Sources/Iggy/Producer/IggyProducer.swift |  529 ++
 .../Iggy/Producer/ProducerConfiguration.swift      |  311 +
 .../Sources/Iggy/Producer/ProducerDispatcher.swift |  444 ++
 .../swift/Sources/Iggy/Protocol/CommandCode.swift  |   15 +-
 .../Sources/Iggy/Protocol/ConsensusOperation.swift |   27 +-
 .../Sources/Iggy/Protocol/ConsensusSession.swift   |    2 +
 .../Sources/Iggy/Protocol/ProtocolVersion.swift    |    2 +-
 foreign/swift/Sources/Iggy/Protocol/Requests.swift |   80 +-
 .../swift/Sources/Iggy/Protocol/Responses.swift    |   34 +-
 foreign/swift/Sources/Iggy/Protocol/VSRFrame.swift |   29 +-
 .../Sources/Iggy/Utilities/AsyncSemaphore.swift    |  141 +
 .../swift/Tests/IggyE2ETests/ClientE2ETests.swift  |   58 +-
 .../Tests/IggyE2ETests/ProducerE2ETests.swift      |   73 +
 .../IggyE2ETests/ResourceOptionsE2ETests.swift     |  309 +
 .../IggyE2ETests/Support/E2EEnvironment.swift      |    3 +
 .../Tests/IggyTests/ClientTransportTests.swift     | 1454 ++++-
 .../swift/Tests/IggyTests/ConcurrencyTests.swift   |   30 +
 foreign/swift/Tests/IggyTests/Fixtures/golden.json |   70 +-
 .../Tests/IggyTests/Fixtures/resource_options.json | 1619 +++++
 foreign/swift/Tests/IggyTests/MessagingTests.swift | 1288 +++-
 foreign/swift/Tests/IggyTests/ModelTests.swift     |   30 +-
 .../swift/Tests/IggyTests/ModelVectorTests.swift   |   29 +-
 .../Tests/IggyTests/ProducerDispatcherTests.swift  |  365 ++
 foreign/swift/Tests/IggyTests/ProducerTests.swift  |  672 ++
 foreign/swift/Tests/IggyTests/ProtocolTests.swift  |   30 +-
 .../Tests/IggyTests/ResourceOptionsTests.swift     |  586 ++
 .../Tests/IggyTests/ResponseVectorTests.swift      |   22 +-
 .../Tests/IggyTests/Support/FakeVSRServer.swift    |  145 +-
 .../IggyTests/Support/ResourceOptionsFixture.swift |  412 ++
 .../Tests/IggyTests/Support/TestHelpers.swift      |   10 +-
 .../swift/Tests/IggyTests/WireVectorTests.swift    |   61 +-
 foreign/swift/Tools/golden-vectors/src/main.rs     |  237 +-
 gateways/kafka/Cargo.toml                          |    3 +-
 gateways/kafka/Dockerfile                          |   17 +
 gateways/kafka/README.md                           |  159 +-
 gateways/kafka/docker-compose.yml                  |    7 +-
 gateways/kafka/docs/AUTHENTICATION.md              |    7 +-
 gateways/kafka/docs/BRIDGE_MAPPING.md              |    7 +
 gateways/kafka/docs/CONFIGS.md                     |  100 +-
 gateways/kafka/docs/CONSUMER_GROUPS.md             |  260 +-
 gateways/kafka/docs/MANUAL_TESTING.md              |   25 +-
 gateways/kafka/docs/OFFSET_STORAGE.md              |   13 +-
 gateways/kafka/docs/SCOPE.md                       |  137 +-
 gateways/kafka/docs/TEST_SUITE.md                  |   13 +-
 gateways/kafka/docs/kafka_api_keys_reference.md    |   13 +-
 gateways/kafka/scripts/ci-wire-fixtures.sh         |    2 +-
 gateways/kafka/src/bridge/error.rs                 |   94 +-
 .../kafka/src/bridge/iggy_bridge/cluster_id.rs     |  416 ++
 .../kafka/src/bridge/iggy_bridge/group_index.rs    |  851 +++
 .../kafka/src/bridge/iggy_bridge/group_offsets.rs  | 1191 +++-
 gateways/kafka/src/bridge/iggy_bridge/mod.rs       |   32 +-
 gateways/kafka/src/bridge/iggy_bridge/produce.rs   |   19 +-
 gateways/kafka/src/bridge/iggy_bridge/topics.rs    |   92 +-
 gateways/kafka/src/bridge/mod.rs                   |   10 +-
 gateways/kafka/src/bridge/topic_map.rs             |   61 +-
 gateways/kafka/src/cluster_id.rs                   |  202 +
 gateways/kafka/src/error.rs                        |    4 +
 gateways/kafka/src/group/mod.rs                    |  419 +-
 gateways/kafka/src/group/offset_work.rs            |  323 +
 gateways/kafka/src/group/state.rs                  | 2051 +++++-
 gateways/kafka/src/lib.rs                          |    1 +
 gateways/kafka/src/main.rs                         |    8 +
 gateways/kafka/src/protocol/api.rs                 |   75 +-
 gateways/kafka/src/protocol/bounds_guard.rs        |  362 +-
 .../kafka/src/protocol/handlers/alter_configs.rs   |   53 +-
 .../src/protocol/handlers/create_partitions.rs     | 1702 +++++
 .../kafka/src/protocol/handlers/create_topics.rs   |   14 +-
 .../kafka/src/protocol/handlers/delete_groups.rs   |  535 ++
 .../kafka/src/protocol/handlers/delete_topics.rs   |   27 +-
 .../src/protocol/handlers/describe_cluster.rs      |  232 +
 .../src/protocol/handlers/describe_configs.rs      |   24 +-
 .../kafka/src/protocol/handlers/describe_groups.rs |  136 +-
 gateways/kafka/src/protocol/handlers/heartbeat.rs  |    1 +
 ...ter_configs.rs => incremental_alter_configs.rs} |  216 +-
 gateways/kafka/src/protocol/handlers/join_group.rs |    4 +-
 .../kafka/src/protocol/handlers/list_groups.rs     |  139 +-
 gateways/kafka/src/protocol/handlers/metadata.rs   |   91 +-
 gateways/kafka/src/protocol/handlers/mod.rs        |   74 +-
 .../kafka/src/protocol/handlers/offset_commit.rs   |   15 +-
 .../kafka/src/protocol/handlers/offset_delete.rs   |  548 ++
 .../kafka/src/protocol/handlers/topic_config.rs    |  355 +-
 gateways/kafka/src/server.rs                       |   58 +-
 gateways/kafka/tests/api_handler_tests.rs          |   87 +-
 .../kafka/tests/bridge_iggy_integration_tests.rs   |    3 +-
 .../kafka/tests/cluster_id_real_bridge_tests.rs    |  434 ++
 gateways/kafka/tests/common/iggy_server.rs         |    7 +
 gateways/kafka/tests/common/scope.rs               |    5 +
 gateways/kafka/tests/common/wire.rs                |  118 +-
 gateways/kafka/tests/configs_handler_tests.rs      |  127 +-
 gateways/kafka/tests/configs_java_client_tests.rs  |    9 +
 gateways/kafka/tests/configs_real_bridge_tests.rs  |  506 +-
 gateways/kafka/tests/consumer_group_tests.rs       |   75 +-
 .../tests/create_partitions_real_bridge_tests.rs   |  687 ++
 .../kafka/tests/create_topics_real_bridge_tests.rs |   27 +-
 .../kafka/tests/delete_topics_real_bridge_tests.rs |   38 +-
 gateways/kafka/tests/golden_wire_fixtures_tests.rs |   22 +-
 gateways/kafka/tests/java/ConfigsProbe.java        |   34 +-
 gateways/kafka/tests/kafka_client_e2e_tests.rs     |  312 +
 gateways/kafka/tests/metadata_real_bridge_tests.rs |   10 +-
 .../kafka/tests/offset_groups_real_bridge_tests.rs | 1373 ++++
 gateways/kafka/tests/version_firewall_tests.rs     |   75 +-
 gateways/kafka/tools/kafka-tool/README.md          |    4 +-
 gateways/kafka/tools/kafka-tool/src/main.rs        |   61 +
 gateways/kafka/tools/kafka-tool/src/response.rs    |   51 +-
 helm/charts/iggy/Chart.yaml                        |    2 +-
 helm/charts/iggy/README.md                         |   22 +-
 helm/charts/iggy/README.md.gotmpl                  |   12 +-
 helm/charts/iggy/examples/cluster-3-node.yaml      |    5 +-
 helm/charts/iggy/templates/_helpers.tpl            |   49 +-
 helm/charts/iggy/templates/server-secrets.yaml     |    5 +-
 helm/charts/iggy/values.yaml                       |   20 +-
 justfile                                           |    6 +-
 scripts/bump-version.sh                            |    6 +-
 scripts/ci/apt-install.sh                          |   72 +-
 scripts/ci/test-helm.sh                            |   77 +
 scripts/ci/test-runtime-artifacts.py               |  226 +-
 scripts/run-bdd-tests.sh                           |   16 +-
 web/docs/server-api.http                           |   57 +-
 web/package-lock.json                              |    4 +-
 web/package.json                                   |    2 +-
 web/src/lib/api/ApiSchema.ts                       |   40 +-
 web/src/lib/api/resourceOptions.test.mjs           |  159 +
 web/src/lib/api/resourceOptions.ts                 |  146 +
 .../lib/components/Modals/AddStreamModal.svelte    |   39 +-
 web/src/lib/components/Modals/AddTopicModal.svelte |   37 +-
 web/src/lib/components/Modals/EditUserModal.svelte |  116 +-
 .../components/Modals/StreamSettingsModal.svelte   |   30 +-
 .../components/Modals/TopicSettingsModal.svelte    |  100 +-
 .../RouteComponents/Settings/UsersTab.svelte       |    8 +-
 web/src/lib/domain/Stream.ts                       |   11 +-
 web/src/lib/domain/Topic.ts                        |   25 +-
 .../routes/dashboard/settings/users/+page.svelte   |    9 +-
 1184 files changed, 163004 insertions(+), 21620 deletions(-)
 delete mode 120000 .agents/skills/team-review-slim
 delete mode 100644 .claude/skills/team-review-slim/SKILL.md
 create mode 100644 bdd/cpp/features/step_definitions/resource_options_steps.cpp
 create mode 100644 bdd/cpp/features/step_definitions/session_contract_steps.cpp
 create mode 100644 bdd/docker-compose.no-quorum.yml
 create mode 100644 bdd/go/tests/resource_options.go
 create mode 100644 bdd/go/tests/session_contract.go
 create mode 100644 bdd/java/src/test/java/org/apache/iggy/bdd/ResourceOptionsSteps.java
 copy bdd/php/tests/{RawCommandFeatureTest.php => SessionContractFeatureTest.php} (56%)
 copy examples/php/getting-started/producer.php => bdd/php/tests/SharedFeatureParserTest.php (51%)
 create mode 100644 bdd/php/tests/StreamOptionsFeatureTest.php
 create mode 100644 bdd/python/tests/test_resource_options_patch.py
 copy bdd/python/tests/{test_raw_command.py => test_session_contract.py} (50%)
 create mode 100644 bdd/python/tests/test_stream_options.py
 copy bdd/rust/tests/{basic_messaging.rs => resource_options_patch.rs} (93%)
 copy bdd/rust/tests/{basic_messaging.rs => session_contract.rs} (93%)
 create mode 100644 bdd/rust/tests/steps/resource_options.rs
 create mode 100644 bdd/rust/tests/steps/session.rs
 copy bdd/rust/tests/{stream_crud.rs => stream_options.rs} (93%)
 create mode 100644 bdd/scenarios/resource_options_patch.feature
 copy bdd/scenarios/{raw_command.feature => session_contract.feature} (52%)
 create mode 100644 bdd/scenarios/stream_options.feature
 create mode 100644 core/binary_protocol/src/consensus/primary_rebalance.rs
 create mode 100644 core/binary_protocol/src/consensus/segment_delete.rs
 create mode 100644 core/binary_protocol/src/requests/streams/rewrap_stream_keys.rs
 delete mode 100644 core/binary_protocol/src/requests/streams/update_stream.rs
 create mode 100644 core/binary_protocol/src/requests/streams/update_stream_resolved.rs
 create mode 100644 core/binary_protocol/src/requests/system/update_resource.rs
 delete mode 100644 core/binary_protocol/src/requests/topics/update_topic.rs
 create mode 100644 core/binary_protocol/src/requests/topics/update_topic_resolved.rs
 delete mode 100644 core/binary_protocol/src/requests/users/update_user.rs
 create mode 100644 core/binary_protocol/src/requests/users/update_user_resolved.rs
 delete mode 100644 core/binary_protocol/src/responses/streams/update_stream.rs
 copy core/{bench/dashboard/frontend/src/components/theme/mod.rs => binary_protocol/src/responses/system/update_resource.rs} (89%)
 delete mode 100644 core/binary_protocol/src/responses/topics/update_topic.rs
 delete mode 100644 core/binary_protocol/src/responses/users/update_user.rs
 create mode 100644 core/common/benches/stream_encryption.rs
 create mode 100644 core/common/examples/resource_options_fixtures.rs
 create mode 100644 core/common/examples/resource_options_fixtures/schema.rs
 create mode 100644 core/common/fixtures/resource_options.json
 create mode 100644 core/common/src/http/options.rs
 delete mode 100644 core/common/src/http/streams/update_stream.rs
 delete mode 100644 core/common/src/http/topics/update_topic.rs
 delete mode 100644 core/common/src/http/users/update_user.rs
 create mode 100644 core/common/src/types/options/catalog.rs
 create mode 100644 core/common/src/types/options/codec.rs
 create mode 100644 core/common/src/types/options/key.rs
 create mode 100644 core/common/src/utils/stream_key.rs
 create mode 100644 core/common/tests/resource_options_fixtures.rs
 create mode 100644 core/common/tests/stream_key_erasure.rs
 create mode 100644 core/integration/tests/cluster/rolling_sigkill_repro.rs
 create mode 100644 core/integration/tests/cluster/stream_encryption.rs
 create mode 100644 core/integration/tests/cluster/stream_key_rotation.rs
 rename .claude/skills/team-review-slim/agents/openai.yaml => core/integration/tests/server/shared_jwt_secrets.toml (72%)
 create mode 100644 core/metadata/src/impls/placement.rs
 create mode 100644 core/partitions/src/stream_keyring.rs
 create mode 100644 core/partitions/src/view_fence.rs
 create mode 100644 core/partitions/src/wal_storage.rs
 create mode 100644 core/server/src/dispatch/segment_delete.rs
 create mode 100644 core/server/src/http/relay_proof.rs
 create mode 100644 core/server/src/stream_key_rewrapper.rs
 create mode 100644 core/server/src/stream_keys.rs
 create mode 100644 core/shard/src/primary_rebalance.rs
 create mode 100644 core/shard/src/primary_rebalance/tests.rs
 create mode 100644 core/simulator/src/partition_wal.rs
 create mode 100644 core/simulator/src/stale_prepare_commit_tests.rs
 copy core/simulator/src/workload/ops/{create_stream.rs => create_keyed_stream.rs} (82%)
 copy core/simulator/src/workload/ops/{store_consumer_offset.rs => poll_messages.rs} (53%)
 create mode 100644 core/simulator/src/workload/readback.rs
 create mode 100644 core/simulator/tests/lifecycle_seeds.rs
 create mode 100644 foreign/cpp/tests/e2e/resource_options.cpp
 create mode 100644 foreign/cpp/tests/fixtures/resource_options.json
 create mode 100644 foreign/cpp/tests/unit/resource_options.cpp
 create mode 100644 foreign/csharp/Iggy_SDK.Tests.BDD/StepDefinitions/ResourceOptionsSteps.cs
 create mode 100644 foreign/csharp/Iggy_SDK.Tests.BDD/StepDefinitions/SessionContractSteps.cs
 create mode 100644 foreign/csharp/Iggy_SDK.Tests.BDD/xunit.runner.json
 delete mode 100644 foreign/csharp/Iggy_SDK/Contracts/Http/Auth/UpdateUserRequest.cs
 create mode 100644 foreign/csharp/Iggy_SDK/Contracts/Http/OptionInputs.cs
 delete mode 100644 foreign/csharp/Iggy_SDK/Contracts/Http/UpdateStreamRequest.cs
 delete mode 100644 foreign/csharp/Iggy_SDK/Contracts/Http/UpdateTopicRequest.cs
 create mode 100644 foreign/csharp/Iggy_SDK/Contracts/OptionKeys.cs
 create mode 100644 foreign/csharp/Iggy_SDK/Contracts/OptionValues.cs
 create mode 100644 foreign/csharp/Iggy_SDK/Contracts/OptionsPatch.cs
 copy foreign/csharp/Iggy_SDK/Contracts/{ClusterNodeStatus.cs => StreamOptionKey.cs} (55%)
 create mode 100644 foreign/csharp/Iggy_SDK/Contracts/StreamOptions.cs
 create mode 100644 foreign/csharp/Iggy_SDK/Contracts/StreamUpdate.cs
 create mode 100644 foreign/csharp/Iggy_SDK/Contracts/TopicOptionKey.cs
 create mode 100644 foreign/csharp/Iggy_SDK/Contracts/TopicUpdate.cs
 copy foreign/csharp/Iggy_SDK/Contracts/{ClusterNodeRole.cs => UserOptionKey.cs} (70%)
 copy foreign/csharp/Iggy_SDK/Contracts/{Auth/PersonalAccessTokenResponse.cs => UserOptions.cs} (54%)
 create mode 100644 foreign/csharp/Iggy_SDK/Contracts/UserUpdate.cs
 create mode 100644 foreign/csharp/Iggy_SDK/Encryption/EncryptionKeys.cs
 copy foreign/csharp/Iggy_SDK/Enums/{Protocol.cs => PartitionResizePolicy.cs} (74%)
 copy foreign/csharp/Iggy_SDK/Enums/{UserStatus.cs => StreamEncryptionSource.cs} (68%)
 create mode 100644 foreign/csharp/Iggy_SDK/JsonConverters/RedactedOptionsConverter.cs
 create mode 100644 foreign/csharp/Iggy_SDK_Tests/ConsumerTests/PartitionIncarnationTests.Disposal.cs
 create mode 100644 foreign/csharp/Iggy_SDK_Tests/ConsumerTests/PollFailureTests.cs
 create mode 100644 foreign/csharp/Iggy_SDK_Tests/Fixtures/resource_options.json
 create mode 100644 foreign/csharp/Iggy_SDK_Tests/MapperTests/ResourceOptionsTests.cs
 create mode 100644 foreign/csharp/Iggy_SDK_Tests/VsrTests/NativeRecoveryTests.SignIn.cs
 create mode 100644 foreign/go/client/example_resource_options_test.go
 create mode 100644 foreign/go/contracts/option_diagnostics.go
 create mode 100644 foreign/go/contracts/resource_options_test.go
 create mode 100644 foreign/go/contracts/stream_options.go
 create mode 100644 foreign/go/contracts/testdata/resource_options.json
 create mode 100644 foreign/go/contracts/user_options.go
 create mode 100644 foreign/go/internal/command/access_token_test.go
 create mode 100644 foreign/go/internal/command/update_resource.go
 create mode 100644 foreign/go/internal/command/update_resource_test.go
 create mode 100644 foreign/go/tests/e2e_personal_access_token_test.go
 create mode 100644 foreign/go/tests/e2e_resource_options_test.go
 create mode 100644 foreign/java/java-sdk/src/main/java/org/apache/iggy/client/async/tcp/ConnectionHeartbeat.java
 copy foreign/java/java-sdk/src/main/java/org/apache/iggy/{personalaccesstoken/PersonalAccessTokenInfo.java => client/async/tcp/CredentialsListener.java} (78%)
 create mode 100644 foreign/java/java-sdk/src/main/java/org/apache/iggy/client/async/tcp/PoolChannelHandler.java
 create mode 100644 foreign/java/java-sdk/src/main/java/org/apache/iggy/client/async/tcp/SessionLogin.java
 copy foreign/java/java-sdk/src/main/java/org/apache/iggy/client/{ConnectionInfo.java => async/tcp/TransientFailoverHandler.java} (60%)
 create mode 100644 foreign/java/java-sdk/src/main/java/org/apache/iggy/client/async/tcp/UserPatchCredentials.java
 copy foreign/java/java-sdk/src/main/java/org/apache/iggy/{message/MessageId.java => client/async/tcp/VsrExchange.java} (57%)
 create mode 100644 foreign/java/java-sdk/src/main/java/org/apache/iggy/client/blocking/http/HttpOptionValue.java
 copy foreign/java/{bench/src/main/java/org/apache/iggy/bench/common/enums/GroupKind.java => java-sdk/src/main/java/org/apache/iggy/stream/EncryptionKeySource.java} (52%)
 create mode 100644 foreign/java/java-sdk/src/main/java/org/apache/iggy/stream/EncryptionKeys.java
 create mode 100644 foreign/java/java-sdk/src/main/java/org/apache/iggy/stream/EncryptionProjection.java
 create mode 100644 foreign/java/java-sdk/src/main/java/org/apache/iggy/stream/StreamOptionKey.java
 create mode 100644 foreign/java/java-sdk/src/main/java/org/apache/iggy/stream/StreamOptions.java
 create mode 100644 foreign/java/java-sdk/src/main/java/org/apache/iggy/stream/StreamUpdate.java
 create mode 100644 foreign/java/java-sdk/src/main/java/org/apache/iggy/system/OptionKey.java
 copy foreign/java/java-sdk/src/main/java/org/apache/iggy/topic/{Durability.java => PartitionResizePolicy.java} (83%)
 create mode 100644 foreign/java/java-sdk/src/main/java/org/apache/iggy/topic/TopicOptionKey.java
 create mode 100644 foreign/java/java-sdk/src/main/java/org/apache/iggy/topic/TopicSettings.java
 create mode 100644 foreign/java/java-sdk/src/main/java/org/apache/iggy/topic/TopicUpdate.java
 copy foreign/java/{bench/src/main/java/org/apache/iggy/bench/common/enums/TransportKind.java => java-sdk/src/main/java/org/apache/iggy/user/UserOptionKey.java} (63%)
 create mode 100644 foreign/java/java-sdk/src/main/java/org/apache/iggy/user/UserOptions.java
 create mode 100644 foreign/java/java-sdk/src/main/java/org/apache/iggy/user/UserUpdate.java
 create mode 100644 foreign/java/java-sdk/src/test/java/org/apache/iggy/ProtocolParityTest.java
 create mode 100644 foreign/java/java-sdk/src/test/java/org/apache/iggy/ResourceOptionsFixture.java
 copy foreign/java/java-sdk/src/test/java/org/apache/iggy/{exception/IggyConnectionExceptionTest.java => RustSources.java} (52%)
 create mode 100644 foreign/java/java-sdk/src/test/java/org/apache/iggy/client/async/ResourceOptionsTest.java
 create mode 100644 foreign/java/java-sdk/src/test/java/org/apache/iggy/client/async/tcp/AsyncIggyTcpClientCredentialChangeTest.java
 create mode 100644 foreign/java/java-sdk/src/test/java/org/apache/iggy/client/async/tcp/AsyncIggyTcpClientFailoverSignInTest.java
 create mode 100644 foreign/java/java-sdk/src/test/java/org/apache/iggy/client/async/tcp/AsyncIggyTcpClientLockOrderTest.java
 create mode 100644 foreign/java/java-sdk/src/test/java/org/apache/iggy/client/async/tcp/AsyncIggyTcpClientLostLinkReplayTest.java
 create mode 100644 foreign/java/java-sdk/src/test/java/org/apache/iggy/client/async/tcp/AsyncIggyTcpClientNamespaceMissTest.java
 create mode 100644 foreign/java/java-sdk/src/test/java/org/apache/iggy/client/async/tcp/AsyncIggyTcpClientPartitionWriteTest.java
 create mode 100644 foreign/java/java-sdk/src/test/java/org/apache/iggy/client/async/tcp/AsyncIggyTcpClientSessionRulesTest.java
 create mode 100644 foreign/java/java-sdk/src/test/java/org/apache/iggy/client/async/tcp/vsr/VsrOperationTest.java
 create mode 100644 foreign/java/java-sdk/src/test/java/org/apache/iggy/client/blocking/http/HttpOptionValueTest.java
 create mode 100644 foreign/java/java-sdk/src/test/java/org/apache/iggy/client/blocking/http/InternalHttpClientLoggingTest.java
 create mode 100644 foreign/java/java-sdk/src/test/java/org/apache/iggy/serde/ResourceOptionsTest.java
 create mode 100644 foreign/java/java-sdk/src/test/resources/resource_options.json
 create mode 100644 foreign/node/src/bdd/resource-options.ts
 create mode 100644 foreign/node/src/bdd/session.ts
 copy foreign/node/src/e2e/{test-client.utils.ts => resource-options.e2e.ts} (64%)
 create mode 100644 foreign/node/src/e2e/resource-options.suite.ts
 create mode 100644 foreign/node/src/wire/fixtures/resource_options.json
 create mode 100644 foreign/node/src/wire/stream/stream-options.test.ts
 create mode 100644 foreign/node/src/wire/stream/stream-options.ts
 create mode 100644 foreign/node/src/wire/system/update-resource.command.test.ts
 create mode 100644 foreign/node/src/wire/system/update-resource.command.ts
 create mode 100644 foreign/php/src/options.rs
 create mode 100644 foreign/php/src/sensitive_parameters.rs
 create mode 100644 foreign/php/tests/ResourceOptionsTest.php
 create mode 100644 foreign/php/tests/SensitiveParameterTest.php
 create mode 100644 foreign/php/tests/fixtures/resource_options.json
 create mode 100644 foreign/python/src/resource_options.rs
 create mode 100644 foreign/python/tests/fixtures/resource_options.json
 create mode 100644 foreign/python/tests/test_resource_options.py
 create mode 100644 foreign/swift/Sources/Iggy/Models/EncryptionKey.swift
 create mode 100644 foreign/swift/Sources/Iggy/Models/StreamOptions.swift
 create mode 100644 foreign/swift/Sources/Iggy/Models/UserOptions.swift
 create mode 100644 foreign/swift/Sources/Iggy/Producer/IggyProducer.swift
 create mode 100644 foreign/swift/Sources/Iggy/Producer/ProducerConfiguration.swift
 create mode 100644 foreign/swift/Sources/Iggy/Producer/ProducerDispatcher.swift
 create mode 100644 foreign/swift/Sources/Iggy/Utilities/AsyncSemaphore.swift
 create mode 100644 foreign/swift/Tests/IggyE2ETests/ProducerE2ETests.swift
 create mode 100644 foreign/swift/Tests/IggyE2ETests/ResourceOptionsE2ETests.swift
 create mode 100644 foreign/swift/Tests/IggyTests/Fixtures/resource_options.json
 create mode 100644 foreign/swift/Tests/IggyTests/ProducerDispatcherTests.swift
 create mode 100644 foreign/swift/Tests/IggyTests/ProducerTests.swift
 create mode 100644 foreign/swift/Tests/IggyTests/ResourceOptionsTests.swift
 create mode 100644 foreign/swift/Tests/IggyTests/Support/ResourceOptionsFixture.swift
 create mode 100644 gateways/kafka/src/bridge/iggy_bridge/cluster_id.rs
 create mode 100644 gateways/kafka/src/bridge/iggy_bridge/group_index.rs
 create mode 100644 gateways/kafka/src/cluster_id.rs
 create mode 100644 gateways/kafka/src/group/offset_work.rs
 create mode 100644 gateways/kafka/src/protocol/handlers/create_partitions.rs
 create mode 100644 gateways/kafka/src/protocol/handlers/delete_groups.rs
 create mode 100644 gateways/kafka/src/protocol/handlers/describe_cluster.rs
 copy gateways/kafka/src/protocol/handlers/{alter_configs.rs => incremental_alter_configs.rs} (62%)
 create mode 100644 gateways/kafka/src/protocol/handlers/offset_delete.rs
 create mode 100644 gateways/kafka/tests/cluster_id_real_bridge_tests.rs
 create mode 100644 gateways/kafka/tests/create_partitions_real_bridge_tests.rs
 create mode 100644 gateways/kafka/tests/offset_groups_real_bridge_tests.rs
 create mode 100644 web/src/lib/api/resourceOptions.test.mjs
 create mode 100644 web/src/lib/api/resourceOptions.ts