fix(ci): add always() to ios-submit-review job to prevent skip#975
fix(ci): add always() to ios-submit-review job to prevent skip#975IgorGanapolsky wants to merge 8 commits intodevelopfrom
Conversation
Both platforms: - VoiceGender enum (male/female) added to TimerConfig - Segmented picker in setup screen (shown when voice enabled + Pro) - Voice callout service accepts gender for future female voice pack Male is default. Female voice files will be generated separately via ElevenLabs with a female HIIT instructor voice. Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Runs at 6 AM UTC on the 1st via cron schedule: - Generates voice callouts via ElevenLabs TTS - Generates alarm sounds via ElevenLabs Sound Effects - Syncs to Android resources - Creates a PR with the new pack Also available via manual dispatch. Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
The ios-submit-review job was silently skipped on every single-platform dispatch because GitHub Actions propagates the "skipped" state from transitive ancestors (android-release) even when verify-releases succeeds. Adding `if: always() && needs.verify-releases.result == 'success'` matches the pattern already used by tag-release and sync-main jobs. Made-with: Cursor
|
Merging to
After your PR is submitted to the merge queue, this comment will be automatically updated with its status. If the PR fails, failure details will also be posted here |
|
Important Installation incomplete: to start using Gemini Code Assist, please ask the organization owner(s) to visit the Gemini Code Assist Admin Console and sign the Terms of Services. |
| * MALE = marine drill sergeant persona. | ||
| * FEMALE = female HIIT instructor persona. | ||
| */ | ||
| enum class VoiceGender { | ||
| MALE, | ||
| FEMALE, | ||
| } | ||
|
|
||
| /** | ||
| * Configuration for a random timer with all settings. | ||
| */ |
There was a problem hiding this comment.
Bug: The selected voiceGender preference is not saved to the DataStore. The user's selection is lost upon app restart, reverting to the default value.
Severity: MEDIUM
Suggested Fix
Update TimerRepositoryImpl.saveTimerConfig() to persist the voiceGender field to DataStore, likely using a new preference key. Modify TimerRepositoryImpl.toTimerConfig() to load this value. Also, update related tests like TimerRepositoryImplTest.saveTimerConfig_persists_and_emits_stored_config() to verify the persistence of voiceGender.
Prompt for AI Agent
Review the code at the location below. A potential bug has been identified by an AI
agent.
Verify if this is a real issue. If it is, propose a fix; if not, explain why it's not
valid.
Location:
native-android/app/src/main/java/com/iganapolsky/randomtimer/domain/model/TimerConfig.kt#L30-L45
Potential issue: The `voiceGender` preference selected by a user on Android is not
persisted across application sessions. While the UI allows for selection and the current
session uses the correct gender, the `TimerRepositoryImpl.saveTimerConfig()` method was
not updated to save this setting to the DataStore. Similarly,
`TimerRepositoryImpl.toTimerConfig()` does not load it. Consequently, when the app is
closed and reopened, the `voiceGender` setting reverts to its default value of `MALE`,
ignoring the user's previous selection.
Did we get this right? 👍 / 👎 to inform future reviews.
|
✅ CI All checks passed
|
|
❌ CI Some checks failed
|
|
❌ CI Some checks failed
|
|
❌ CI Some checks failed
|
|
|
❌ CI Some checks failed
|
|
❌ CI Some checks failed
|
|
Closing: superseded by later work or has unresolvable merge conflicts. Reopen if still needed. |



Summary
ios-submit-reviewjob innative-release.ymlwas silently skipped on every single-platform dispatch (e.g.platform=ios)android-release) even whenverify-releasessucceedsif: always() && needs.verify-releases.result == 'success'— the same pattern already used bytag-releaseandsync-mainjobsEvidence
release/v1.3.15native-release runs showios-submit-review: skippeddespiteverify-releases: successsubmit_review=trueconfirmed in logs, but job was still skippedTest plan
tag-releaseandsync-mainalready use this patternplatform=ios+submit_review=trueand confirmios-submit-reviewrunsMade with Cursor