-
Notifications
You must be signed in to change notification settings - Fork 2
[MS-1063] Add Java serialization test for orchestrator steps #1555
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Conversation
…d TokenizableString classes
infra/core/src/main/java/com/simprints/core/domain/tokenization/TokenizableString.kt
Outdated
Show resolved
Hide resolved
...r/src/test/java/com/simprints/feature/orchestrator/cache/OrchestratorCacheIntegrationTest.kt
Outdated
Show resolved
Hide resolved
...r/src/test/java/com/simprints/feature/orchestrator/cache/OrchestratorCacheIntegrationTest.kt
Outdated
Show resolved
Hide resolved
…reation and serialization tests
8bab261 to
aa9868f
Compare
e659673 to
aa9868f
Compare
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Pull request overview
This PR adds Java serialization support for orchestrator step parameters and results to ensure they can survive Android process death and configuration changes. The issue was discovered in production (Catalytics) starting in version 2025.1.0.
Changes:
- Added
java.io.Serializableinterface to core data classes used in orchestrator steps (Step,Timestamp,TokenizableString,BoundingBox) - Replaced
ParcelablewithJavaSerializableforTokenizableStringto ensure proper serialization - Added comprehensive integration test to verify all step types are fully Java serializable
- Refactored test data into reusable helper methods for better maintainability
Reviewed changes
Copilot reviewed 5 out of 5 changed files in this pull request and generated no comments.
Show a summary per file
| File | Description |
|---|---|
infra/core/src/main/java/com/simprints/core/tools/time/Timestamp.kt |
Added JavaSerializable interface to Timestamp data class |
infra/core/src/main/java/com/simprints/core/domain/tokenization/TokenizableString.kt |
Replaced Parcelable with JavaSerializable for TokenizableString and its subclasses |
feature/orchestrator/src/main/java/com/simprints/feature/orchestrator/steps/Step.kt |
Added JavaSerializable interface to Step data class |
feature/external-credential/src/main/java/com/simprints/feature/externalcredential/model/BoundingBox.kt |
Added JavaSerializable interface to BoundingBox data class |
feature/orchestrator/src/test/java/com/simprints/feature/orchestrator/cache/OrchestratorCacheIntegrationTest.kt |
Added new test for Java serialization and refactored existing tests to use helper methods |



JIRA ticket
Will be released in: 2026.1.0
Root cause analysis (for bugfixes only)
First known affected version: 2025.1.0
Notable changes
Testing guidance
Additional work checklist