---
id: w1/m4.5/t004
title: Wake UX + acceptance — sleeping app wakes on request; dashboard reflects the flip
worker: worker1
status: done
estimate: 25m
depends_on: [w1/m4.5/t002, w1/m4.5/t003]
---

## Objective

Close the loop live: with m4's activator running on the mock cluster, let a free app idle to Sleeping, confirm the dashboard shows it (t002), hit the app URL to wake it, and verify the dashboard transitions Sleeping → Running via its existing polling/refetch. Tune the hint copy if the observed cold-start makes it misleading.

## Context

- m4's DoD provides the sleep→wake mechanism; this task verifies the *dashboard's* rendering of it end-to-end.
- Playwright MCP for the scripted walkthrough + screenshots (bare filenames → `.playwright-mcp/`).

## Steps

1. Mock cluster + m4 stack up; deploy a free-tier sample; idle past TTL.
2. Playwright: assert Sleeping badge; curl the app URL; assert Running returns within the polling window.
3. Screenshot the before/after for the milestone record.

## Files

- verification only (screenshots in `.playwright-mcp/`); copy tweaks in `dashboard/src/features/services/locales` if needed

## Acceptance criteria

- [ ] Scripted walkthrough passes: Sleeping shown → request → Running shown, no manual reload beyond existing polling.

## Out of scope

- A dashboard "wake now" button (the request itself wakes; add only if the capture showed Render has one — then file a note).
