What each figure in a report actually claims
A training report gets read by someone who was not there, and is often used to decide something. So each figure here is defined by what it counts, and — more usefully — by what it does not.
Completion
Of the pages this course contains, this fraction has been marked finished by this learner.
That the learner understood any of it, or that a page not yet read was skipped rather than not reached.
The denominator is the course's own published table of contents, not the pages somebody happened to open. Where a course cannot publish one the estimate is shown as an estimate. Routes a learner really visited that the outline no longer lists are reported separately as a remainder rather than silently dropped, because a page deleted last month was still read last year.
Engaged time
For this long, this page was open, in front, and being used.
That it was being read. Nothing can claim that, and a figure that implied it would be worse than none.
Time accrues only while the page is visible and focused, and stops after a minute of no interaction. Every interval is re-derived against the server's own clock rather than trusted from the browser, so counted time can never exceed the time that actually elapsed — across a whole course, not merely within one page. A single visit contributes at most thirty minutes.
The integrity verdict
Whether the time recorded is consistent with the amount of material, or whether there is not enough data to say.
Misconduct. It flags for a human to look at; it never withholds a completion or fails anybody.
There is deliberately no green tick. "We found no reason to look" is not the same claim as "this was genuine study", and a report that prints the second when it means the first is the report that gets believed at the wrong moment. Unmeasured is the most important value it can take: engaged time cannot be reconstructed for the past, so a course that predates the measurement says so rather than reporting zero.
This week
What this team did between two dates, resolved in your own working calendar.
How far through anything they are. The window narrows activity; it never narrows completion.
Pages read, engaged time and quiz attempts are scoped to the chosen period; completion, enrolment counts and the stalled-for-a-month verdict are not. Merging the two is the obvious simplification and it is wrong: a learner at ninety per cent who took a quiet week would otherwise render as five per cent complete. Day boundaries resolve in a real time zone, because a Monday-morning session that lands on Sunday in UTC has dropped out of the week it belongs to.
The learner's own record
Everything the platform holds about this person's own learning, to this person.
Anything about anyone else. There is no identifier to change: the endpoints take no user parameter at all.
Every page in reading order with whether and when it was finished, every quiz attempt with the best kept beside the latest, and their engaged time. What they are deliberately not shown is the judgement about that time: a flag with an honest explanation attached is useful to a supervisor and becomes an accusation when handed to its subject.
The export
The same figures as the screen, at five levels of detail, in a file a spreadsheet opens correctly.
To be an audit trail. It is a snapshot of a report, and it is dated as one.
Written in a deliberately spreadsheet-shaped dialect: a byte-order mark so accented names survive, blank cells rather than zeroes where a percentage is genuinely unknown, and a guard so that a person whose name begins with an equals sign is not evaluated as a formula. Where a period was chosen, the dates are in the column headings and in the file name — a report whose range you have to remember is a report someone will misread.
A supervisor sees their own roster and nobody else's. A learner sees their own record, with the engaged-time figure but not the judgement about it: a flag with an honest explanation becomes an accusation when it is handed to its subject.