Files
CodeNomad/tasks/todo/055-wake-lock-investigation.md
Shantur Rathore e708c565ef docs(wake-lock): record wake-lock change workflow
Add the wake-lock SCR, discussion summary, and task artifacts that captured investigation, specification, and implementation handoff for the system-sleep-only behavior change.
2026-04-21 20:59:35 +01:00

2.7 KiB

title, complexity, track, slice, status, assigned_to
title complexity track slice status assigned_to
Wake Lock Investigation standard investigation logic active tech_lead

Goal

Understand and explain how wake lock is held across packages/ui, packages/tauri-app, and packages/electron-app, including which layer initiates the request, which native/platform APIs are used, and how acquire/release lifecycle is coordinated.

Request Context

The Product Owner asked: "Understand how we hold wake lock in packages/ui packages/tauri-app and packages/electron-app".

Acceptance Criteria

  • AC-1: Identify all wake-lock-related code paths in packages/ui, packages/tauri-app, and packages/electron-app.
  • AC-2: Explain which package owns the wake-lock decision and which package executes the platform-specific hold/release behavior.
  • AC-3: Describe the acquire and release lifecycle, including triggering events, cleanup behavior, and any fallback or unsupported-platform handling.
  • AC-4: Note any discrepancies, risks, or unclear behavior discovered during the investigation.

Instructions For Assigned Agent

  1. Read this task file first.
  2. Investigate the repository code paths relevant to wake lock in the three packages named above.
  3. Produce a concise technical report using the specialist output contract sections:
    • Summary
    • Work Performed
    • Acceptance Criteria Coverage
    • Documentation Impact
    • Open Risks
    • Recommended Next Step
  4. Include file paths and function/module names for the relevant wake-lock implementation points.
  5. Update this task file with a # Post Implementation Task Updates section and ## Tech Lead: Post Implementation Expectations bullets describing the observable outputs of your investigation.

Discussion Record

  • Created by PMA to answer a direct user investigation request about wake-lock behavior across UI and native app shells.

Notes

  • This is investigation only. Do not implement changes.
  • Repository has unrelated untracked items in the working tree (.nomadworks/, .playwright-cli/, cloudsecrets, tmp/). Treat them as pre-existing and out of scope unless directly relevant.

Post Implementation Task Updates

Tech Lead: Post Implementation Expectations

  • Deliver a wake-lock investigation report that traces the call flow from packages/ui/src/App.tsx through packages/ui/src/lib/native/wake-lock.ts into the Electron preload/main IPC path and the Tauri command path.
  • Identify which session states cause the UI to request wake lock and which native APIs actually hold or release the lock on Electron and Tauri.
  • Document lifecycle behavior for acquire, release, fallback handling, unsupported-platform behavior, and any cleanup gaps or discrepancies discovered during review.