feat: add custom map iteration naming - #585
Merged
Merged
Conversation
wangyb-A
temporarily deployed
to
ai-pr-review-runtime
July 31, 2026 23:58 — with
GitHub Actions
Inactive
wangyb-A
had a problem deploying
to
ai-pr-review-runtime
July 31, 2026 23:58 — with
GitHub Actions
Failure
This comment has been minimized.
This comment has been minimized.
wangyb-A
force-pushed
the
feature/map-item-namer-fresh
branch
from
August 1, 2026 00:15
45b16bf to
862cddc
Compare
wangyb-A
had a problem deploying
to
ai-pr-review-runtime
August 1, 2026 00:22 — with
GitHub Actions
Failure
wangyb-A
had a problem deploying
to
ai-pr-review-runtime
August 1, 2026 00:22 — with
GitHub Actions
Failure
wangyb-A
temporarily deployed
to
ai-pr-review-runtime
August 1, 2026 00:31 — with
GitHub Actions
Inactive
wangyb-A
temporarily deployed
to
ai-pr-review-runtime
August 1, 2026 00:31 — with
GitHub Actions
Inactive
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
wangyb-A
temporarily deployed
to
ai-pr-review-runtime
August 4, 2026 20:26 — with
GitHub Actions
Inactive
wangyb-A
temporarily deployed
to
ai-pr-review-runtime
August 4, 2026 20:26 — with
GitHub Actions
Inactive
This comment has been minimized.
This comment has been minimized.
wangyb-A
force-pushed
the
feature/map-item-namer-fresh
branch
from
August 4, 2026 21:40
6818465 to
3e65ac0
Compare
wangyb-A
temporarily deployed
to
ai-pr-review-runtime
August 4, 2026 21:44 — with
GitHub Actions
Inactive
wangyb-A
temporarily deployed
to
ai-pr-review-runtime
August 4, 2026 21:44 — with
GitHub Actions
Inactive
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
wangyb-A
force-pushed
the
feature/map-item-namer-fresh
branch
from
August 4, 2026 22:05
3e65ac0 to
b186199
Compare
wangyb-A
temporarily deployed
to
ai-pr-review-runtime
August 4, 2026 22:06 — with
GitHub Actions
Inactive
wangyb-A
temporarily deployed
to
ai-pr-review-runtime
August 4, 2026 22:06 — with
GitHub Actions
Inactive
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
wangyb-A
marked this pull request as ready for review
August 4, 2026 22:36
wangyb-A
temporarily deployed
to
ai-pr-review-runtime
August 4, 2026 22:36 — with
GitHub Actions
Inactive
wangyb-A
temporarily deployed
to
ai-pr-review-runtime
August 4, 2026 22:36 — with
GitHub Actions
Inactive
Codex AI review
Reviewed commit |
Claude AI reviewReviewed PR #585 (custom map iteration naming). Traced the changed code against the map/concurrency/replay machinery. Verified correct:
Findings: None confirmed. Implementation is correct and well tested (7 new integration tests, 8 unit tests, conformance handler 9-13). Residual test risk:
Reviewed commit |
zhongkechen
reviewed
Aug 4, 2026
zhongkechen
approved these changes
Aug 4, 2026
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
MapConfig.itemNamerfor custom nested map-iteration namesitemNamer(Class<I>, BiFunction<? super I, Integer, String>)overload so domain-object namers need no castnullnamer result as an unnamed iterationitemNamerwithNestingType.FLAT, whose virtual iterations have no context operation to nameItem namer API
Untyped form (unchanged):
Typed form for domain objects:
The typed overload bridges through
Class#cast, so it needs no@SuppressWarnings("unchecked")and a mismatched item class fails with aClassCastExceptionnaming the offending type.MapConfigstays non-generic, so no raw-type warnings are introduced for existing callers.Compatibility
MapConfigremains non-genericMapOperationconstructor is retained as a delegating overloadDurableContextmethod signatures are unchangedValidation
mvn -pl sdk test— 1110 passedmvn -pl sdk-integration-tests test— 393 passedmvn -pl conformance-tests package -DskipTests— passedmvn spotless:check— passedjavac -Xlint:unchecked,rawtypes— no warnings in the item-namer filesCloses #528