Repository navigation
cleanup: remove unreferenced declarations on both platforms - #2617
Merged
Merged
Conversation
Each was checked on 7f396e9 by whole-word search over every Swift and Kotlin file (app, packages, widgets, tests): its own declaration is its only occurrence, it implements no protocol requirement, framework callback or App Intent, and its job is done elsewhere or no longer exists. Swift: Collector.bufferedCount, ImuSessionFileStore.prepareForRead, BLEManager.uploadTimer + uploadIntervalSeconds (never scheduled, only cancelled; it uploaded to a server NOOP does not have), BiofeedbackPrefs.clearLockedPace, SleepView.napMaxHours (naps are "not the main block" since ryanbr#518/ryanbr#547), BatteryGuidedCapture.currentStatus, CoachBriefScheduler.widgetBriefText/widgetBriefDate (the widget reads the App Group keys itself), aiCoachPrivacyNote (the coach screens carry their own privacy text), Profile.avatarImage, RepositoryFreshness.hasAnyHistory, JournalCatalog.setSortIndex, SkinTempBackfillWalker totalAttempted, HealthKitBridge.foregroundCatchUp (the app-active hook runs health.sync() over 30 days instead). Kotlin twins that are equally unused: ImuSessionFileStore.prepareForRead, DataFreshness.hasAnyHistory, SleepSession.isNapShaped with its NAP_MAX_HOURS and durationHours (computed, no column; no schema change). Kept although unreferenced: NavRouter.openTrends/openLiveSession and BehaviorStore.didRecalibrateCharge (hooks their comments name a surface for), Repository.allowSleepReDetection/dismissedSleepManagementWindows (Android's UI uses them; iOS lacks the screen), BiofeedbackPrefs.useResonancePace (the setting is ignored today, a separate fix). Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Produced by `parity_ledger.py --refresh-derived --base upstream/main`: three properties and one constant fewer, all of them unpaired. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
UtkuDenizAltiok
added a commit
to UtkuDenizAltiok/noop
that referenced
this pull request
Oct 1, 2026
…b998c shipped, REM/memory/sweep findings, history scrub
UtkuDenizAltiok
added a commit
to UtkuDenizAltiok/noop
that referenced
this pull request
Oct 1, 2026
…b998c shipped, REM/memory/sweep findings, history scrub
This was referenced Oct 2, 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.
What this PR does
Removes declarations that nothing calls, on both platforms: 15 in Swift and 5 in Kotlin, 93 lines, no behaviour change. A follow-up to #2417.
How each was chosen. On
7f396e98, a whole-word search over every Swift and Kotlin file (app, packages, widgets, watch, tests) finds each name only at its own declaration. None implements a protocol requirement, framework callback or App Intent. For each, the job is either done elsewhere or no longer exists:BLEManager.uploadTimer+uploadIntervalSecondsHealthKitBridge.foregroundCatchUphealth.sync()(30 days) throughHealthSyncRefreshCoordinatorinsteadCoachBriefScheduler.widgetBriefText/widgetBriefDateCoachBriefWidget)aiCoachPrivacyNoteCoachView/CoachLauncherSheetcarry their own privacy textSleepView.napMaxHours; KotlinSleepSession.isNapShaped+NAP_MAX_HOURS+durationHoursdurationHoursis computed, not a column, so the schema is unchangedImuSessionFileStore.prepareForRead(both)flushSession/deleteFilesRepositoryFreshness.hasAnyHistory/ KotlinDataFreshness.hasAnyHistoryCollector.bufferedCount,BiofeedbackPrefs.clearLockedPace,BatteryGuidedCapture.currentStatus,Profile.avatarImage,JournalCatalog.setSortIndex,SkinTempBackfillWalkertotalAttemptedstatusText,Image(platformImage:),sortIndex, …) stays in useKept on purpose, although nothing calls them today:
NavRouter.openTrends/openLiveSessionandBehaviorStore.didRecalibrateCharge, because their comments name the surface they are waiting for.Repository.allowSleepReDetection/dismissedSleepManagementWindowsstay because Android's UI uses its twins and iOS has no screen for them yet.BiofeedbackPrefs.useResonancePacestays too: the setting is read by nothing today, which is a bug fixed in a separate PR rather than code to delete.Type of change
How it was tested
4d3e6c89(on7f396e98): WhoopStore 631 · StrandAnalytics 2102 · StrandImport 327 · doc lint · i18n · parity ledger · parity ratchet · parity governance 127 · macOSStrandTests2,254 (only the two locale-dependentTodayCarryOverTests) · iOS build.parity_ledger.py --refresh-derived --base upstream/main. Unpaired properties went 165 → 162 and unpaired constants 598 → 597.assembleFullDebug+testFullDebugUnitTest): green on4d3e6c89(run 36796672883).Checklist
docs/CONTRIBUTING.mdStrand.xcodeproj/) or any secrets/keystoresRelated issues
Refs #2417
🤖 Generated with Claude Code