Task/Issue URL:
https://app.asana.com/1/137249556945/project/1212810093780571/task/1215861246875407?focus=true
Tech Design URL (if applicable):
### Description
This adds daily state-snapshot pixels so we can measure the after-idle
settings.
Pixels added:
- `m_ntp_after_idle_return_to_last_tab_enabled_daily` /
`…_disabled_daily`
-
`m_ntp_after_idle_idle_timeout_{always,60,300,600,1800,3600,43200,86400}_daily`
`NtpAfterIdleStateReporter` (an `AtbLifecyclePlugin`) reads the current
settings
on ATB refresh and fires the one matching pixel per dimension with `type
=
Daily()`
### Steps to test this PR
- [ ] Filter logcat by “pixel sent” to see the pixels
- [ ] Trigger an ATB refresh (open the app / do a search)
→ exactly one `…return_to_last_tab_{enabled|disabled}_daily` and one
`…idle_timeout_<value>_daily` fire, matching your current settings, with
**no `atb` param**.
- [ ] Change the hatch toggle / idle timeout, trigger ATB refresh again
→ the new values are reported.
- [ ] Confirm each fires at most once per day.
### UI changes
None. Telemetry only.
<!-- CURSOR_SUMMARY -->
---
> [!NOTE]
> **Low Risk**
> Telemetry-only changes with a small refactor of idle-threshold
resolution; no user-facing behavior or security-sensitive paths.
>
> **Overview**
> Adds **daily state-snapshot telemetry** for NTP-after-idle settings so
analytics can see current configuration (not just toggle events),
including users who never changed a setting.
>
> New pixel definitions cover **Return To Last Tab** enabled/disabled
and **idle timeout** buckets (Always through 24h).
`NtpAfterIdleStateReporter` hooks **ATB refresh** (`AtbLifecyclePlugin`)
and fires one matching pixel per dimension with `Daily()`, using
effective timeout from user pref → remote default → hardcoded default.
The new daily pixels are registered in
`ShowOnAppLaunchPixelParamRemovalPlugin` to strip **`atb`**.
>
> Idle timeout resolution is **centralized** in new
`IdleThresholdResolver` (`RealIdleThresholdResolver`), replacing
duplicated JSON parsing in `FirstScreenHandlerImpl` and
`ShowOnAppLaunchViewModel`.
>
> <sup>Reviewed by [Cursor Bugbot](https://cursor.com/bugbot) for commit
b5aaecf1464dd26fd9d2907366cfd840d1769f36. Bugbot is set up for automated
code reviews on this repo. Configure
[here](https://www.cursor.com/dashboard/bugbot).</sup>
<!-- /CURSOR_SUMMARY -->