Documentation
¶
Overview ¶
Package timing turns ledger events into the active time a run spent in a step: the window between two step boundaries, minus every wait on the user inside it. It never reports a wall duration: a window it cannot bound, or one an unended wait runs into, yields nothing rather than a guess.
Index ¶
Constants ¶
const ( Plan = "plan" Implement = "implement" Review = "review" Resolve = "resolve" Judge = "judge" PR = "pr" Cleanup = "cleanup" Glue = "glue" // a run's time outside every step )
The steps named here; any other flow entry is measured under its own name.
Variables ¶
This section is empty.
Functions ¶
Types ¶
type Window ¶
type Window struct {
Task string
Session string
Step string
From time.Time
To time.Time
Active time.Duration
}
Window is one stretch of a step in one session.
func Windows ¶
Windows is every bounded step window and glue window, oldest first by end. A plan run counts to the plan it saves; a ship step from the claim entering it to the claim leaving it (next step, stop, backstop, next run). A plan claimed `prior` or `skipped` was never planned here. Glue is a run's segments minus every step window inside them.