Torspan
AirOrchestra — What it does

Say the day. The hours are already made.

One sentence on the walk to the truck — who worked, how long, on what. It comes back as time entries under the right job, each row carrying the words it came from. No clock to punch. No circle to stand in. No form waiting at the end of a ten-hour day.

One sentence. Four men's hours.

This is the whole thing. A foreman said it walking to the truck. Nobody opened anything afterward.

Fourteen seconds of talking. Nobody clocked in, nobody clocked out, nobody picked a job off a list, and nobody was standing anywhere in particular when it happened.

Invented crew, invented job. Nothing on this page is a real person, a real jobsite, or a real building, and the cost code is invented too.

What it does

  • It reads the day report you were going to give anyway and writes the hours out of it — person, date, job, hours.
  • It puts the job on the entry without asking. The day's dispatch says where the crew is. If a man names a different job in his own words, his words win.
  • It keeps the sentence. Every entry carries the words it came from, word for word, and the man who sent it.
  • It never invents an hour. Not from movement, not from app activity, not overnight, not to fill a Tuesday that looks empty. A man's pay is not a machine's guess.

How it works

Six steps, in the order they happen on the job — not in the order the software does them.

01

He says it once.

Typed with a thumb on a lift, or held down and spoken at the truck, in whatever language he thinks in. One sentence usually holds a whole crew's day.

02

It reads back what it heard.

One plain paragraph, before anything is written. That paragraph is the receipt. If it heard six where he said seven, he says so right there and the fix lands in the same conversation. There is no screen to go find, and no reply YES to confirm — a confirmation step is a form with extra steps.

03

The job gets attached.

From the day's dispatch, unless the man names a job himself. A named job always beats a schedule, because the schedule is what somebody planned and the sentence is what happened.

04

Another man's hours are allowed, under one rule.

A foreman turns in his crew's day constantly, and no product that refuses him is going to be used. So he can — but only for a man he actually named. The name has to be in his own words, and it is checked against the message he sent before the entry is written. He cannot turn in hours for a man he did not mention, and he cannot turn in hours for a man who isn't his to report.

05

Say it twice and nothing doubles.

Every entry is tied to the message that made it. Send it again on bad signal, or send it and then repeat yourself in the parking lot, and the second one does not become a second eight hours.

06

Half of it lands even when half of it doesn't.

If it can pin three men's hours and not the fourth, three get written and the fourth is asked about. Nothing gets thrown away because one name was mumbled.

Step 2 · the read-back, before anything is written
AirOrchestraEight hours Thursday for you, Marco and Dee. Six for Tomas. Riverbend Building 2.

Nothing is written until that paragraph has been read. Answering it is the whole confirmation.

The mechanism is one sentence and a rule about names. That is the whole capture. Everything else on this page is what happens to the record afterward.

When it can't just write it

It asks, in the same conversation, in the words it actually uses. These are the strings themselves, not a friendlier version of them.

What happenedWhat it says
Hours turned in for a man the sender didn't nameI can't put hours on a man you didn't name. Who was it?
Hours turned in for a man outside the sender's crewTomas isn't on your crew, so I can't turn in his hours.
Two jobs in one day, no split givenTwo jobs Thursday and no split. How many hours on each?
A day that can't be pinned to one dateReading that as Thursday the 14th. Say the word if it was another day.
The same message sent twiceAlready have that one — nothing added.
Voice it couldn't make outI couldn't make that out — say it again, or type it.

A question is not a failure. It is the alternative to a number nobody said.

When somebody says the hours are wrong

This is the part that matters six weeks later, and it is the part nobody builds for.

An argument about an hour is almost never an argument about arithmetic. It is two people remembering a Thursday differently, in October, with a payroll register on one side and nothing at all on the other. The usual answer is a timestamp — a clock-in at 7:14, a dot on a map — which proves where a phone was and settles nothing about what a man was told to do or which job he was told to do it on.

Here the answer is the sentence. Open the entry and the words are on it, with the man who said them and the minute he said them. Open the message and you have the rest of what he said that day around it. If it was spoken, you can play it.

Time entry
PersonTomas R.
DateThu, Aug 14
JobRiverbend Bldg 2
Hours6.0
Cost code04-220 · Duct hanging
Submitted byRay D. · Aug 14, 3:20 PM
Source“six for Tomas, he left at one”
MessageAug 14, 3:20 PM · voice, 0:14

Open the whole message Play what he said

Corrected: never.

Nothing on that entry was typed a second time by anybody. Invented crew, invented job, invented cost code.

A correction does not erase anything

If the hours were wrong, the man says what was right, in his own words, and that becomes a second entry with its own sentence and its own time on it. The first one stays, marked corrected. Two rows and two sentences is a record. One row that quietly changed is a problem.

Tomas R. · Fri, Aug 8 · both rows kept
Tomas R. · Aug 86.0

“six for Tomas Friday” — Ray D., Aug 8

Corrected Aug 18 by Tomas R. — see the newer entry.

Tomas R. · Aug 88.0

“I had eight that Friday, I stayed for the shaft” — Tomas R., Aug 18

The argument goes back to being about what somebody said on Thursday. It stops being about the software.

What's in the record

Every entry, every time. This is the block a controller screenshots.

FieldWhat it holds
PersonWho the hours belong to
DateThe workday they were worked
JobWhere they were worked
HoursThe number, as he gave it
Cost codeWhen one is recorded — see below
SourceThe sentence, word for word, unedited
Submitted byWho sent it, and the minute it arrived
MessageThe whole message it came out of, kept as sent
CorrectionsEvery later entry that revises this one, each with its own source

The source is not a summary of what he said and it is not a cleaned-up version of it. It is the substring of his actual message, pulled out of the stored message itself. Nothing can put words in a man's mouth that he did not type or speak, because the quote is cut from what he sent, not written about it.

The weekly time record

One page per man per week: the days, the hours, the job on each day, the sentence behind each entry, and who turned it in. It is what an owner hands over when somebody asks him to show his work, and it is the same page the man himself can pull up without asking anybody's permission. He does not need a phone call to the office to find out what was turned in under his name.

The week, with the holes showing

A foreman opens the crew week on a small iPad and sees what came in — and, more usefully, what didn't.

A day nobody described is empty. It is not a zero, and it is not eight. Zero says a man didn't work; eight says somebody decided he did. Both are answers, and neither one was given by a person. So the cell stays blank and says which day and which man is missing, which takes about four seconds to fix — he asks, or the man says it himself.

Before the week goes to the office, a foreman can put his name on it. That is agreement, not authorship: he is saying that what his men reported is what happened. Nothing about it rewrites their words, and his approval does not become the source of the entry. It never says a foreman said something a foreman didn't say.

Crew week · Riverbend Bldg 2 · Aug 11–15
Crew Mon 11Tue 12Wed 13Thu 14Fri 15
Ray D.8.08.08.08.08.0
Marco A.8.08.08.08.08.0
Dee W.8.08.08.08.08.0
Tomas R.8.06.08.0

Tomas — no hours Tue, Wed.

Missing is shown as missing. It is not shown as an error, and it is not shown as a zero. Invented crew, invented job.

Wed, Aug 13 · Riverbend Bldg 2

No hours reported. Blank until somebody says.

No red, no warning triangle, no badge with a count on it. A hole in the week is a fact, not an alarm about a man.

Tomas R. · his own week · Monday, 6:41 AM

Nothing yet this week.

A man sees his own totals whenever he wants them, without asking the office what was turned in under his name — and he sees nobody else's.

Cost codes, without a dropdown

Nobody in the field picks a code. There is no list to scroll, no required field, no man on a ladder guessing between two five-digit numbers to get his day submitted.

The office sets the codes on the job, the way it already does. Where the work a man described lands on one of them, the entry carries it. Where it doesn't — because he described something the budget doesn't have a line for, or because he just said “eight hours” — the field stays empty and the entry shows up on the office's list to be set by a person who knows.

Two entries, same day
Dee W. · Aug 1404-220 · Duct hanging
Ray D. · Aug 14

No cost code on this one yet.

Blank, and on the office's list. Never guessed, and never picked by the man on the ladder.

An empty code gets set by somebody in about two seconds. A wrong code gets found in about two months, in a job cost report, by an owner.

How it reaches payroll

A file. Not a connector, and it is worth saying plainly rather than dressing up.

The week comes out as a spreadsheet: person, date, job, hours, cost code where one is recorded, the sentence each row came from, and who submitted it. CSV or XLSX. The columns get named and ordered once by whoever keys them, and then they never move again — which is the actual difference between a file that saves the office time and a file that costs it an hour every Monday. Mailed on a schedule, or pulled off a desktop whenever somebody wants it. It opens without AirOrchestra and it always will.

An integration is a promise about somebody else's product, kept for years, by somebody else's release schedule. A file is a promise that can be kept on the first day and the thousandth.

riverbend-b2-week-aug-11.csv
PersonDateJobHoursCost codeSourceSubmitted by
Ray D.Aug 14Riverbend Bldg 28.004-220“eight for me”Ray D.
Tomas R.Aug 14Riverbend Bldg 26.004-220“six for Tomas, he left at one”Ray D.

Invented crew, invented job, invented cost code. The sentence travels in the file, in its own column.

The whole office side, including the parts it stays out of. → Reports and the office

What it won't do

No GPS. No geofence. No clock-in radius. Location is not collected, so it cannot be looked at, subpoenaed, sold, or brought up in a review. There is no map of anybody in this product.

No timer and no shift to clock into. Nothing is running in a man's pocket. Nothing has to be stopped at lunch.

No idle detection, no activity monitoring, no drive tracking. The app does not watch a phone to decide whether the person holding it is working.

No productivity number about a man. No score, no ranking, no hours-per-unit, no comparison to another hand. A man sees his own totals and nobody else's, and there is no screen anywhere that puts two men's numbers next to each other.

No hours created by the machine. Not from a pattern, not from last Tuesday, not by a night job filling in a quiet week.

It is not payroll. No overtime rules, no rounding policies, no prevailing wage determinations, no union fringe calculations, no job costing, no checks. It makes the hour record and hands it over.

The complete list, including the things people wish it did. → What it won't do

What it takes off the day

Not the craft. The second shift after the real one.

  • The paper time ticket that lives on a dash until it goes through a wash.
  • The Friday text thread where four men try to reconstruct Tuesday from memory, which is exactly the thing that turns into an argument in October.
  • The foreman's spreadsheet — the private one he keeps because he does not trust the official one, and which nobody else can read.
  • The office keying a week off a photo of a legal pad, and calling three people to ask what a word says.
  • Chasing men for hours, which is the part of a foreman's job that costs him the most standing for the least return.

How long it's kept

Wage records outlive the job, and they outlive most people's memory of it. Here is what the law asks for, what the record holds, and how long it stays.

What the rule saysWhere it says itWhat's kept here
Payroll records preserved at least 3 years 29 CFR 516.5 The entries and their sources, kept at least that long
Basic time and earning cards preserved at least 2 years from the date of the last entry 29 CFR 516.6 The message each entry came from, kept with it
Washington employers must record “hours worked each workday and total hours worked each workweek” WAC 296-128-010(6) Per man, per day, per job
Those records “shall be kept for a period of at least three years” WAC 296-128-020 Same
Washington L&I cannot investigate a wage violation that happened more than three years before the complaint was filed RCW 49.48.083 Which is how far back a Thursday can come at you

That last line is the whole reason the sentence is stored with the entry. Three years after a job closes, nobody remembers a Thursday. A row with a man's own words on it does.

This is not a compliance product and it does not certify anything. It states the standard, states what the record contains, and states how long it is kept. Whether a business meets a rule is between that business, its lawyer and the agency asking. → Your records

See it work.

See it work See what it costs

The hours are only half of what leaves the field on Friday. → Reports and the office

Everything on this page depends on the crew being willing to say the day out loud. Here is what is not collected about them, in writing, before price. → For crews