Statuses and states
Every record type has a small, fixed set of states. Understanding them avoids surprises.
Time entry approval state
| State | Meaning | Set by |
|---|---|---|
draft | Created, not yet submitted. Editable, deletable. | Engineer (create) |
submitted | Sent for review. In the review queue. Deletable. | Engineer |
approved | Accepted; counts toward billing when billable. Frozen. | Reviewer/finance/admin |
rejected | Sent back with a reason. Editable and resubmittable. | Reviewer/finance/admin |
voided | Retired without deletion (e.g. corrected elsewhere). | system/import |
Allowed transitions:
note
Approved entries cannot be edited or deleted; reopen or void them instead.
Billability
| Value | Meaning |
|---|---|
billable | Counts toward the customer and billing. |
nonbillable | Logged, not charged. |
excluded | Deliberately left out of billing; carries a reason. |
Only approved + billable hours feed allowances and billing.
Entry source
| Value | Meaning |
|---|---|
web | Logged in the app. |
slack | Captured from Slack. |
jira | Imported from Jira. |
Non-web entries show a source badge in the queue.
Customer / project status
| Value | Meaning |
|---|---|
active | Usable; projects appear in pickers. |
paused | Temporarily out of rotation. |
archived | Retired, kept for history. |
Billing period status
| Value | Meaning |
|---|---|
open | Accepts recalculation; not yet invoiced. |
closed | Final for invoicing; reopen to change. |
Agreement status
active, paused, ended.
User status
active or inactive/disabled. Disabled accounts keep their history.
Duplicates
A submitted entry may carry a duplicate_of pointer, shown as a
possible duplicate badge. It is advisory — a reviewer still decides.