Skip to content

[governance] Resolve unreachable DeviceRegistry.setDayOwner/3 on both platforms #88

Description

@bhelm

Confirmed reachability debt

The parity ledger Kotlin-template arity fix makes plain string arguments occupy their real call argument. That exposes the existing Android declaration DeviceRegistry.setDayOwner/3 as test-only: three exact test callsites and no production callsite. The Swift twin is likewise production-declared/test-only.

This is independently confirmed upstream in ryanbr#981, including an owner review that verifies the feature is unreachable on both platforms: the day-owner reader runs in production, but no shipping path can write a locked owner.

Exact fork ledger identity:

test-only-callsite|android/app/src/main/java/com/noop/data/DeviceRegistry.kt::setDayOwner/3#1

Acceptance

  • Re-audit exact production reachability on both Swift and Kotlin; tests, declarations, DAO forwarding, twin-map suggestions, and parity exemptions do not count as a production caller.
  • Make an explicit product disposition: either wire a real user/runtime path to set a locked day owner on both platforms, or remove the unreachable API and locked-owner branch on both platforms.
  • Add focused tests for the chosen shipping behavior and preserve cross-platform parity.
  • Remove the exact issue-bound ledger baseline finding once a real production caller exists or the declaration is removed.
  • Do not satisfy this issue by adding a broad exemption or weakening callsite/arity detection.

Upstream provenance: ryanbr#981

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions