First run & setup

A name, a job, and four files. No org chart at signup, nobody invited, and five questions instead of thirty — because the sheet is read once so that a change order can come back out in his own columns.

1 · The first job
Straight after signup, which names the company and may record the builder's work number. Contract is a compact bottom sheet and a wide anchored menu, because it is a fixed choice rather than copy.
Your first job

You can add the rest later. This one just needs enough to hang a budget sheet on.

What you call it
The Hollis House
Who you are building it for
Sam and Nora Hollis
A name and a way to reach them. They don't need an account and you don't need to know whether they have one.
Contract
Fixed price
Set once. It changes the money step and never gates whether anything works. Cost plus, T&M and GMP all run.
Next: drop your sheet in
Nobody is invited here

Not now, not on the next screen, and not with a skippable step. A second seat is added when there is a second person, and at one to three homes a year there may never be one. The fastest way to tell a solo builder this product is not for him is to ask who else is on his team in the first thirty seconds.

And nothing asks about the client's tier

You do not need to know whether they have one. The sender never knows which tier the recipient is on, and this is the first screen where that could leak — a checkbox here would put the question into every send that followed.

Contract is a choice, not copy

Fixed price, cost plus, time and materials, and GMP are the valid values. Compact opens a bottom sheet; wide keeps the same list anchored to this field.

2 · Drop four files in
Five questions instead of thirty. The product reads what he already has rather than asking him to retype it, and it says what it understood so he can tell when it understood wrong.
What you already have

Contract, budget, allowances, plans. Whatever you have; we will tell you what we found.

Drop them here, or pick from your files

Hollis contract, signed.pdfFixed price. 14 allowances and the contract sum.
Hollis budget rev4.xlsxCost codes in column B. 62 lines.
A-1 Floor plan.pdfFiled under plans.
Allowance schedule.pdfMatches 14 of the 14 in the contract.
Two things to confirm The cabinet allowance reads $18,000 in the contract and $18,500 in the budget. And one line has no cost code.

Read, never written. We read these once. Nothing here posts back into your sheet or your accounts, now or ever.

It says what it understood

Cost codes in column B. 62 lines. A reader that silently absorbs a spreadsheet gives a builder no way to catch it getting the wrong column, and he will not find out until a change order comes back in somebody else's format.

Two disagreements, surfaced rather than resolved

The product does not pick which of $18,000 and $18,500 is right. It is his contract and his budget, and guessing between two of his own documents is exactly the kind of confident wrongness that costs trust on day one.

This is what makes the promise possible

The sheet is read once so a change order can come back out in his columns with his cost codes. Without this screen the paste block on a change order would be our format, and he would retype it every time.

3 · Sorting them out
Two conflicts out of four files, which is a good day. The screen shows both numbers and asks which is true — it never picks, because the newer file is right about half the time and the contract is the one somebody signed.
Two to sort out

Both of these are places your own files disagree with each other. Neither is a mistake we made reading them.

The cabinet allowance
$18,000Hollis contract, signed.pdf · the allowance schedule agrees Signed
$18,500Hollis budget rev4.xlsx · line 34, revised 6 March Newer

Whichever you pick is what Sam and Nora see as their cabinet allowance, so it is worth being the signed one unless something changed.

One line with no cost code
Site prep and temporary power$4,200 · budget line 7 · column B empty Ask

Give it a code and it joins the rest. Leave it and it still counts against the total; it just will not group with anything.

That's sorted

Still read, never written. Picking a number here changes what HouseChalk shows. It does not touch your spreadsheet, and it never will.

It shows both and picks neither

Last-write-wins is the obvious rule and it is wrong here: a budget revision is a working document and a signed contract is an agreement, so newer and true come apart exactly when the money matters. Both rows carry where the number came from, because that is the only fact that lets somebody decide in two seconds.

And the consequence is named before the choice, not after

Whichever you pick is what Sam and Nora see. A setup screen is the one place a builder is moving fast and paying least attention, and it is also where a wrong allowance becomes a number a homeowner budgets against for a year.

Leaving it uncoded is a real answer

Not a skip and not a warning. A line with no cost code still counts against the total and simply does not group, which is a sentence rather than a problem — and forcing a code here means inventing one, which is worse data than none.

4 · The digest control
Two of the three rules on this screen are limits on him. Cadence is a safety parameter, not a preference, and its floor comes from the contract type.
The floor is a safety parameter

An account-less homeowner's heard-at is the digest date — there is no earlier moment — and on cost plus there is no forcing function behind the spend. Letting a builder stretch the interval would let him stretch the moment his client is deemed to have been told.

On fixed price this screen is different

The number only moves when somebody signs, so the digest goes when something changed rather than on a timer, and turning it off is his to decide. Contract type sets the floor; it does not create a second control.

And it appears in the register

Because it is a send. He can see it went, and he can see it was delivered — which the trust ledger needs, since a digest that silently failed would leave rows asserting Ben heard something that never left the building.

Rung 1 · quiet
5 · When his account lapses
Somebody else's links were minted by it. A cross-spec hole none of the four specs covered, and the worst available answer is the tidy one.
A lapse never kills a link that is already out

They were minted while the account was in good standing, and an answer to one is somebody keeping their side of a bargain. Killing them silently is the worst option on the table: the account-less person did nothing wrong, may be mid-decision, and has no idea an account exists behind the link they were sent.

The answer still lands, and that is not a loophole

Recording an answer against an existing send is completing something already begun, not minting new. Read-only bites at the new send, and it bites the builder — who is the one person here who can actually act on it.

And the mirror case is simpler

If the homeowner's account lapses, the builder is unaffected. Her binder goes read-only; his job does not.

6 · Reading contents, not filenames
The ordinary path asks nothing. Work in progress is visible, and a completed reading says what the server understood.
What you already have

The names are labels. The contents decide where each file goes.

Document 004.pdfWaiting to be readReading
Scan.pdfReading enough to tell what this isReading
Custom Home Estimate.pdfProject budget · reading the cost linesReading
Hollis contract, signed.pdfFixed price. 14 allowances and the contract sum.Read

No prompt is the normal result. A high-confidence supported document routes without making Dave classify his own paperwork.

The threshold is a silence rule

At or above it, act. Below it, ask only when the reader has a short plausible list. Confidence is not drawn as a score for Dave to interpret.

Every work state has a row

A running reader never looks like an empty setup, and a plan with no financial process job still belongs to the drop.

7 · Ask only when the reading is genuinely close
A low-confidence result becomes a bounded question from the reader, not the whole type list handed back as a form.
What you already have
March estimate.pdfWe are not certain what this is. Pick only if one of these is right.Needs your input
Project budgetContains the whole job and project totals
QuoteNames one vendor and one scope
DismissKeep the file with the project and stop asking about it

Contract, allowance schedule and plans are absent because the reader did not return them as plausible candidates.

Dismissed is retained, not deleted

The attempt becomes dismissed. The upload and event stay with the project, so a correction later has something real to supersede.

Unknown is not a button

Unknown is classifier output. It is never a document type Dave chooses.

8 · Kept even when this reader has no next step
Plans and quotes are useful project knowledge, not failed budgets. An unidentified file is also kept rather than disappearing.
Setup

Everything you brought is still here.

A-1 Floor plan.pdfSaved with this project. Plan reading comes next.Saved
Ridgeline cabinets.pdfSaved with this project. Quote comparison comes next.Saved
Document 17.pdfWe could not identify this file. It is still saved with the project.Needs review
Reopen is part of the state

Deferred and unrecognized rows survive the first-run route. A plan does not need a process job to count as complete for this drop.

Nothing financial was invented

None of these rows creates budget lines, allowances, conflicts or a contract.

9 · Retry without erasing what already worked
A failed attempt stays visible. Compact correction opens a confirmed bottom sheet; wide correction uses an anchored menu.
Setup
Budget scan.pdfWe could not read this file. Try a different copy, or retry it.Couldn’t read
Try againUses the retained upload; it does not submit a duplicate file
March estimate.pdf62 lines read as a project budgetRead
Correct the file typeCurrent facts stay in place until the replacement succeeds.
Correct the file type

Current facts stay in place until a replacement succeeds.

Contract
Allowance schedule
Plans or drawings
Quote
Use this type
The control adapts, the decision does not

Compact gets a bottom sheet because the whole list needs room and a deliberate confirmation. Wide gets an anchored menu next to the row.

Correction is not an in-place edit

The full list appears only after Dave asks to correct a completed reading. The successor swaps in only after it succeeds; the earlier attempt then shows Replaced.

Later drawing revisions still need a question

Applying a revised plan must ask whether to replace or clear previously seeded rooms and zones. Intake retention does not silently make that decision.

What first run does not do

It does not ask him to model his company. The company is a name; the optional work number is how a client reaches the person who created it. Roles are hats, and at the median the person signing up is the owner, the estimator and the project manager on the same afternoon.

It does not invite anybody, including as an optional step. A skippable invite screen is still a screen that told a solo builder what the product assumes about him.

It does not ask thirty questions. Four files and five questions, and the five are the disagreements between the files rather than a form.

Three things he does not control

The digest's contents, its cadence downward on cost plus, and any heard-at. Every one of those is a limit that exists because the record is only worth something if he cannot shape it — which is also why it is worth something to him, a year later, in an argument about an invoice.