Documentation / OnTask

The clock & worklogs

Last updated: 5 September 2026

The clock is the product. Everything about it is designed around one fact: a wrong worklog is discovered weeks later, by someone who is not you, and it permanently ends trust in the tool. So the duration is always yours to confirm, nothing is ever written without you pressing a button, and one confirmation produces at most one worklog — ever.

One clock

OnTask runs one clock per person. Start it from a dashboard card (Start on this) or from the OnTask panel on an issue (Start a timer). Both surfaces show the same clock; a phone and a laptop see the same thing.

Starting a clock while one is already running replaces it. The issue panel warns you first — A clock is running on ABC-12. Starting here discards it. — and discarding writes nothing.

Pause and Resume at any time. Paused time is shown separately and is not counted.

How it keeps time

Elapsed time comes from timestamps, never from counting ticks. A background browser tab is throttled to roughly one callback a minute, and a clock that counted ticks would quietly lose time whenever you looked away. OnTask records when the clock started and how long it has been paused, and derives the rest — so the figure is right after a closed laptop, a sleeping phone or a day in another tab.

While a tab with OnTask is open, it sends a heartbeat once a minute — "a human is still here". That heartbeat is what the next section relies on.

A clock left running

If OnTask has heard no heartbeat for 30 minutes, it marks the clock as left running. The dashboard and the issue panel say so. When you eventually stop it, the stop screen proposes the time up to your last sign of life, not up to now, and tells you both figures:

This clock was left running. It counted 9h 40m, but the last sign of you was 2h 15m in — so that is what is filled in. Change it if you know better.

Separately, a single session is capped at 12 hours. Past that, the stop screen fills in 12h, says the clock actually ran longer, and asks you to set the real figure. The cap is wall-clock, deliberately: it guards against a clock left running overnight, not against long days.

The stop screen

Stop & log opens one screen. In order:

Time to log — edit if that's not right. The proposed duration, in a box you can type in (1h 30m, 45m, 2h). Quick buttons subtract 15 minutes, 30 minutes or an hour, and Reset restores the proposal. Under the box: how long the clock ran, and how much of that was paused.

Durations accept hours and minutes only. d is refused on purpose — what "a day" means is a site setting OnTask does not read, and guessing 24 hours would write a four-times-wrong worklog on a six-hour-day site. Refusing is the safe failure.

Your summary. One line about what you did, in your own words. It becomes the worklog's comment if the next switch is on.

A native Jira worklog, authored by you, with your summary as its comment. On by default. Turn it off to log the duration with no comment.

Also post it as a comment. Off by default. Comments notify everyone watching the issue, which is the most common way a time tool ends up annoying a team. When you turn it on, the screen names who will be notified and shows the exact comment — your words as typed, plus the duration and the issue key — before anything is posted. Nothing is rewritten or generated.

In Settings you can make the comment switch start on for every stop, if that is how you work. A site administrator can turn comments off for the whole site; the stop screen then says so and worklogs are unaffected.

Log it. Only now does anything reach Jira.

What gets written

A worklog on the issue, authored by you — Jira's history shows your name, not the app's — for the duration you confirmed, starting at the moment the clock started (or, for a manual entry, ending now). The worklog carries a small property recording the OnTask submission it came from; that property is what makes duplicate prevention exact.

If you ticked it, an issue comment, exactly as previewed.

Both appear in the Today list on the dashboard, with a running total.

Undo

The confirmation that follows Log it carries an Undo for a few seconds. It deletes the worklog (and the comment, if one was posted) that this session just created — that entry, by its id, nothing else. After that, the entry is ordinary Jira data and is edited or removed in Jira like any other worklog.

Never twice

Jira's create endpoints have no idempotency key, and a request that times out may still have succeeded. A naive tool retries and logs the same hour twice. OnTask does not:

  • a submission id is minted the moment the stop screen opens, and recorded before anything is sent;
  • every attempt first looks for a worklog already carrying that id and adopts it rather than writing again;
  • and because two genuinely simultaneous confirmations can still both get past that check, every successful write re-checks for a twin and removes the extra.

Nothing is ever blind-retried. If OnTask cannot tell whether a write happened, it asks you rather than guessing.

Log time you already spent

Forgot to start the clock? The issue panel has Log time already spent; the dashboard has a clock icon on every card and, under the cards, Log time on anything — pick an issue by key or a fragment of its summary. The same stop screen opens, asking How long did it take?, with 15m / 30m / 1h / 2h quick picks.

Three things differ from stopping a clock. Jira is asked whether you may log work on that issue before the screen opens. The worklog's start time is set to now minus the duration, so it never runs into the future. And a manual entry never disturbs a running clock — you can log yesterday's forgotten hour while today's clock keeps running.

If a day goes over

OnTask can ask you to confirm the entry that pushes a day's logged total over a threshold — 6, 8, 10 or 12 hours, or never; 10 by default. It is a one-time confirm on the crossing entry, not a block, and it counts only time logged through OnTask, so the figure is not necessarily your whole day. Set it in Settings & privacy → Ask me if a day goes over.

Times and timezones

A worklog's start time is written in the timezone from your own Jira profile, so it lands on the right day for you rather than for the server. "Today" on the dashboard is your today, too.