Skip to content

The Workforce Lens — attendance & task management, the sacred transaction applied to people-work

The people side of the one model: clock-in (attendance) and task assignment/management. Same doctrine as the goods lenses — presence is a party-act, the worklist is a fold, the supervisor orchestrates and the worker acts — and no reinvention, because the horizontal (LensFamily) already carries the employee and the task. Sibling to POSLens, WMSLens, SocialPlatformLens, CreditLedgerLens.


1. Clock-in — a non-falsifiable presence act (rolling QR)

The supervisor lens (a desktop or wall screen) displays a rolling, single-use QR — a "ticket." A worker scans it with their phone; the scan produces a signed clock-in op bound to that live challenge. It is the sacred transaction applied to time, and it kills buddy-punching the way the shelf kills double-sell:

  • Single-use + rotating ("ticket taken up"). Each QR is consumed on scan and the screen shows a fresh one. A screenshot or an old code is already spent/expired → replay defeated. And two workers can't claim the same code — one ticket, one taker (the one-item-one-scan rule, applied to attendance).
  • Signed by the worker's own device key → identity-bound. A buddy can't punch you in without your phone/key.
  • Physical presence. You must be at the supervisor's live screen to scan the current code — physics serializes, exactly as the bin scan (WMS) and the delivery GPS do.

The result is multi-factor sacred attendance with no biometric hardware — a screen with a rolling QR plus the workers' phones. §HR-CLOCKIN worker=… ticket=<nonce> single-use=Y signed=Y present=Y → in|out.

1a. Honest anti-fraud boundary (the layering)

Rolling + single-use defeats replay (screenshot, reused code). It does not alone defeat a live relay (a friend video-calls the current QR to an absent worker). Close that with the third serializer — bind the clock-in to presence: device GPS at the worksite, or premises wifi/BLE. So the robust stack is rolling QR (anti-replay) + device key (identity) + presence (anti-relay). State the layering; the QR alone is strong, not total.

2. Attendance is a fold — the timesheet computes itself

Hours worked = Σ of clock-in→clock-out intervals — never a keyed timesheet. Time enters only as a scan (a party-act), so there are no free numbers: nobody types "8 hours." A missed clock-out is a named exception, not a silent zero. The timesheet, like perpetual inventory and the AR balance, is always known, derived, zero-effort — no manual time entry, and any discrepancy (a long gap, an odd pattern) surfaces as a fold exception.

3. Task assignment & management — the worklist fold, for people

Task management is the same primitive as WMS picking, only the work is people-work:

  • Tasks are items in a fold; assignment is a claim — a worker takes a task (a signed "taken up", serialized one-taker-per-task); due is an attribute (like a payment term); completion is a signed act.
  • Supervisor lens (big screen — orchestrate): the kanban board — who has taken what, due when, status — plus the rolling-QR dispenser. Sees the whole fold.
  • Worker lens (phone — act): "my tasks" — claim, do, confirm (scan/tap). Directed work, glanceable, literacy-light.

Nobody keys "task done by X at Y"; the claim and the completion are the signed acts the board folds. §HR-TASK task=… claimed-by=… due=… status=open|claimed|done.

4. Two lenses — orchestrate and act

Phone = act, big screen = orchestrate, again: the supervisor holds the board and the QR dispenser (the orchestration view); the worker holds the phone (the action surface — clock in, claim a task, complete it). Same fold, role-shaped lenses, no central control — the board is a fold over the workers' signed acts, computable by any node.

5. No reinvention — rides the horizontal

EXTRACT, not invent: the employee is AD_User / C_BPartner; the task/assignment is R_Request (iDempiere's request model); attendance and task events are signed ops over the same log. The horizontal already models people and their work — the Workforce lens surfaces it, adding only the rolling-QR presence guard, which is itself just the sacred-transaction discipline pointed at time.

6. Honest scope

  • Build (lens + a guard): the rolling/single-use QR dispenser (supervisor) + the signed presence clock-in + the task-claim/complete worklist + the supervisor board. The QR-rotation/nonce + presence binding is the one new bit of glue; everything else is folds over AD_User/R_Request.
  • Ride: native scan (camera), the device key (signing), GPS/wifi for presence — all guaranteed device features.
  • Discipline: a lens over the proven horizontal, on the staircase like the others; build when a real operation needs attendance/tasks, not before. Same fold, no fork.

The promise: attendance and task management with no timesheet to key, no biometric hardware, and no central clock-server — presence is a signed scan of a code that can't be replayed, work is a worklist the worker claims, and the supervisor's board is just a fold over both.


Companions: LensFamily (hub) · POSLens · WMSLens · SocialPlatformLens · CreditLedgerLens · GuaranteedChannels · DistributedERP.