A Daily Cycle, Designed

What one cycle looks like, end to end.

Six steps. One day. A reviewable PR by the afternoon. The walkthrough below follows a single realistic scenario from morning capture to merged change. Every screen is a designed concept of the surface in ProductIntel that handles that step.

The Scenario

On Monday morning the CS team mentions support reps spend 20 minutes per case digging for similar past tickets. We have all that data. Let's surface a health score and recent-activity widget on each account detail page so reps see context the moment they open it.

Said in standup. Captured by the PM thirty seconds later.

01Step · CaptureMon · 9:14 AM

A paragraph in plain English. Nothing else required.

ProductIntel · Today · New Capture

Capture an idea

Plain English. AI handles the structure.

On Monday morning the CS team mentions support reps spend 20 minutes per case digging for similar past tickets. We have all that data. Let’s surface a health score and recent-activity widget on each account detail page so reps see context the moment they open it.

137 words· voice or type

What the human does

The PM types one paragraph. No fields, no taxonomy.

What AI does

Background: classifies the artifact, tags by team and product, drafts a working title.

02Step · RefineMon · 9:14 AM (≈ 30 sec)

AI converts the paragraph into a structured spec.

ProductIntel · Idea · Refining

Source

On Monday morning the CS team mentions support reps spend 20 minutes per case digging for similar past tickets…

Drafted Spec

✓ AI · 28 sec

Title

Account health score widget on Account Detail

Type

Frontend feature · backend endpoint · DB query

User Story

As a support rep, I want to see the customer's current health score, 30-day trend, and top contributing factors as soon as I open their account, so I can scope the conversation without leaving the page.

Acceptance Criteria

  • ·Widget renders on /accounts/[id] above the activity feed
  • ·Score 0–100 with healthy / at-risk / critical bands
  • ·30-day sparkline of score history
  • ·Top 3 contributing factors with weight
  • ·Loads in under 200ms on cached score

Anchored To · From Context Engine

  • ·Mount point · /app/(app)/accounts/[id]/page.tsx
  • ·Pattern reuse · ActivityFeed widget on same surface
  • ·Data source · pb_clients + computed health calc
  • ·Existing capability · Account Health Analyzer agent
  • ·Conventions · uses /components/ui card primitives

Open Questions

  • ·Cached or live computation?
  • ·Score band thresholds?
  • ·Show widget on archived accounts?
  • ·Click-through behavior on factor list?

What the human does

Reads the draft spec. Edits the parts that are off.

What AI does

Drafts the spec and anchors each piece to specific files, tables, and existing capabilities the change will touch. Possible because the platform indexes both your codebase and your product business knowledge.

03Step · ResolveMon · 9:18 AM

The PM answers the open questions before the work gets sliced.

ProductIntel · Idea · Resolve

Open Questions · 4

ANSWERED 4 / 4

Cached score, or computed on each load?

AI suggests: Cached, refresh nightly + on-demand Most account health calcs in this stack are cached at 24h.

Your answer

Cached, refresh nightly + on-demand

Score band thresholds?

AI suggests: 0–40 critical · 41–70 at-risk · 71–100 healthy Mirrors the bands already used in /workforce/dashboard.

Your answer

0–40 critical · 41–70 at-risk · 71–100 healthy

Show widget on archived accounts?

AI suggests: Hide on archived No active engagement to score against.

Your answer

Show with greyed state · last known score

Click-through on factor list?

AI suggests: Open factor detail drawer Other widgets use drawer pattern for drill-down.

Your answer

Open factor detail drawer

3 of 4 answers accepted as-is. 1 edited.

What the human does

Picks from suggested answers or writes their own. Six clicks, two paragraphs. The architectural decisions are made here, not deferred.

What AI does

Pre-fills the most likely answer for each question when context is clear, with a one-line reason. Marks anything ambiguous for explicit human input.

04Step · PlanMon · 9:24 AM

AI decomposes the resolved spec into work units with dependencies.

ProductIntel · Idea · Plan

Work Units

✓ AI · 14 sec · ~56k tokens estimated

WU-1

Score calculation query

DB · /lib/services/account-health.ts

~12k

depends ·

WU-2

GET /api/accounts/[id]/health endpoint

API · /app/api/accounts/[id]/health/route.ts

~8k

depends · WU-1

WU-3

<HealthWidget /> component

UI · /components/accounts/health-widget.tsx

~22k

depends · WU-2

WU-4

Mount on Account Detail page

UI · /app/(app)/accounts/[id]/page.tsx

~4k

depends · WU-3

WU-5

API smoke test + component render test

Tests · /tests/api/account-health.test.ts

~10k

depends · WU-2, WU-3

What the human does

Reviews the breakdown. Re-orders or splits if needed.

What AI does

Decomposes into ordered work units with dependencies. Cost-estimates each. Plan is shaped by the answers from Resolve, so the breakdown reflects the architectural decisions made, not guesses.

05Step · ExecuteMon · 10:02 AM → 1:47 PM

Agents build, run tests, push a branch, open a PR.

ProductIntel · Idea · Execute · Activity Log

Live Activity · 5 work units in flight

⬤ RUNNING · ~$0.71 spent

10:02orchestratorSpawned worktree at agent-jobs/health-widget · branch agent/health-widget-2026-05-03
10:04WU-1health.calculate() drafted · 178 LOC · ran query plan check
10:11WU-2GET /api/accounts/[id]/health route created · auth middleware applied · returning shape verified
10:18WU-3<HealthWidget /> component scaffolded · using design tokens from /components/ui/card
10:34WU-3Sparkline rendered with recharts · ARIA labels added
11:02WU-4Mounted on Account Detail above ActivityFeed · responsive at md+ breakpoint
11:38WU-5API smoke test passing · render test passing · coverage on health calc 92%
12:21buildnpm run build ✓ · npm run test:api ✓ · type check ✓
12:54agentSelf-review · checked acceptance criteria · all 5 met
1:32gitPushed to origin · agent/health-widget-2026-05-03
1:47ghPR #143 opened · "Account health widget on Account Detail" · awaiting review

5 commits · +312 / −18 · PR ready for review

Open PR #143 →

What the human does

Watches progress in the activity log. Steps in if an agent asks a question.

What AI does

Spawns isolated worktrees per work unit, codes against the spec, runs builds and tests, commits and pushes.

06Step · DeliverMon · 2:30 PM

The PM reviews the PR, approves, ships.

ProductIntel · PR #143 · Ready to Ship

Diff Summary · AI generated

✓ All checks passed

Adds an account health widget above the activity feed on Account Detail. New service account-health calculates a cached 0–100 score with 30-day history; new API route returns score, trend, and top three contributing factors. Component handles loading, error, and archived states.

Files

11

Added

+312

Removed

−18

Release Notes Draft · AI generated

Account health on Account Detail.Support reps now see a customer’s current health score, 30-day trend, and top contributing factors the moment they open an account. Score lives in a cached pipeline with on-demand refresh. Click any factor to drill into a detail drawer.

What the human does

Reads the diff summary, scans the test report, merges. Posts release notes the AI drafted.

What AI does

Generates the diff summary, drafts release notes, queues the deploy.

One Cycle, Closed

Idea at 9:14 AM. Reviewable PR at 1:47 PM. Merged by 2:30.

The PM made decisions at six points. Capture, four answers in Resolve, and a final review at Deliver. AI ran the steps in between. The cycle closed inside one working day.

This is the shape the Today module was built around. No story points, no velocity, no two-week sprint. The work has changed.

One Day · Six Marks

9:14Capture
9:14Refine
9:18Resolve
9:24Plan
1:47PR open
2:30Merge