Public: anyone can read this; the crew can change it.

The clock says how many people need a nudge and links to People #236

opened this

Check · Review · Land · Live — Its check is red. Next: builder, its check is red.

Ready to land

The clock now shows one amber line under its heading when anyone needs a nudge, and the line links to `/people`. For example, "2 people owe a date soon and have heard nothing from you in a week", or "1 person owes … and has heard…" for one. The new test and the clock, sample and progress tests pass. The speed test is flaky in this sandbox, and I never got a clean run of it.

4 files · +35 −0

stopped serving, but the check failed deploy 268b001

Check faileddeploy 268b001

Website spec: 3 findings, 3 the edge owns (report only)
opened this

The clock now shows one amber line under its heading when anyone needs a nudge, and the line links to /people. For example, "2 people owe a date soon and have heard nothing from you in a week", or "1 person owes … and has heard…" for one. The new test and the clock, sample and progress tests pass. The speed test is flaky in this sandbox, and I never got a clean run of it.

  • Rule and count: The count comes from the existing people(deals, on) in src/people.ts, counting people with nudge !== null, with the agent's on passed in. Nothing reads the clock inside the page module. It counts the whole book, not the current search or side filter, so it matches /people.
  • Nobody to nudge: No line, no empty box, no layout shift. Anon sees nothing new, because /people needs the user role.
  • Escaping: The line holds only numbers and fixed words.
  • Files: The change is in src/pages/clock.ts, with a .clock-nudge style in static/app.css. .clock-nudge is documented in docs/design/areas/clock.md, not docs/DESIGN.md. The / handler needed no change, since it already passes the deals and today. There is no new route and no contract cell is touched.
  • Test: The new test is in src/lastsent.test.ts. On a fresh boot with the sample data it checks the right count in the text and href="/people". It also checks that no line appears for a date far in the future or for an empty book. I did not run it against main to confirm it fails there.
  • Speed: The cold-rebuild speed test for the clock failed at 55 ms in one run with my change, but it failed on main too in an earlier run. In this sandbox the People and reminder-review tests miss the 50 ms budget on main as well. The clock now computes people() on each rebuild, so a cold rebuild is a little slower. I did not cache it.
  • Checks not run: I ran bun x tsc --noEmit once and it printed the compiler's help text, because the repo has no tsconfig.json; so there was no type check. The repo has no scripts/design-lint.ts or scripts/gate.ts. scripts/lint-design.ts printed nothing, and I couldn't tell whether that means it passed. I did not run the full suite; the forge's check does that on push.

To try it, boot the app with the sample data and open / as a signed-in user.

🤖 Generated with Claude Code

Closes #233

commented

The clock now shows one amber line under its heading when anyone needs a nudge, and the line links to /people. For example, "2 people owe a date soon and have heard nothing from you in a week", or "1 person owes … and has heard…" for one. The new test and the clock, sample and progress tests pass. The speed test is flaky in this sandbox, and I never got a clean run of it.

  • Rule and count: The count comes from the existing people(deals, on) in src/people.ts, counting people with nudge !== null, with the agent's on passed in. Nothing reads the clock inside the page module. It counts the whole book, not the current search or side filter, so it matches /people.
  • Nobody to nudge: No line, no empty box, no layout shift. Anon sees nothing new, because /people needs the user role.
  • Escaping: The line holds only numbers and fixed words.
  • Files: The change is in src/pages/clock.ts, with a .clock-nudge style in static/app.css. .clock-nudge is documented in docs/design/areas/clock.md, not docs/DESIGN.md. The / handler needed no change, since it already passes the deals and today. There is no new route and no contract cell is touched.
  • Test: The new test is in src/lastsent.test.ts. On a fresh boot with the sample data it checks the right count in the text and href="/people". It also checks that no line appears for a date far in the future or for an empty book. I did not run it against main to confirm it fails there.
  • Speed: The cold-rebuild speed test for the clock failed at 55 ms in one run with my change, but it failed on main too in an earlier run. In this sandbox the People and reminder-review tests miss the 50 ms budget on main as well. The clock now computes people() on each rebuild, so a cold rebuild is a little slower. I did not cache it.
  • Checks not run: I ran bun x tsc --noEmit once and it printed the compiler's help text, because the repo has no tsconfig.json; so there was no type check. The repo has no scripts/design-lint.ts or scripts/gate.ts. scripts/lint-design.ts printed nothing, and I couldn't tell whether that means it passed. I did not run the full suite; the forge's check does that on push.

To try it, boot the app with the sample data and open / as a signed-in user.

🤖 Generated with Claude Code

Sign in to join this conversation.

↑↓ navigate ↵ open ⌘↵ its app esc close

Keyboard shortcuts

Docs