Lessons · Lesson 3 of 5
Complete, in a sense that unblocks nothing
Three ways a milestone is truthfully ticked and still leaves the next step blocked, and how to write a completion definition that a majority cannot satisfy.
Lesson 3 of 5 · 24 min
A tick is not a state of the world
A milestone is supposed to describe the world: the fabric is in the store, the dips are approved, the marker exists. A marker is the cutting plan that lays every pattern piece on the fabric. A tick describes something else. It describes one person's belief, at one moment, through a field with two values. Most of the time those two things agree. This lesson is about the cases where they do not, and none of them involves anybody being careless.
Thelawatte read 200 of the quarter's 1,247 completions at random. It asked one question of each: on the day this was ticked, could the owner of the next milestone have started? 31 of the 200 could not. That is 15.5%, which across the quarter is around 193 completions. Three shapes account for almost all of them. Each is a property of the record, not of the person.
The milestone that was complete for most of the order
Order ODH-1904 for Odderhaug: 18,400 pieces in three shades — Slate 8,600, Ecru 6,200, Ember 3,600 — at 1.10 kg a piece, so 20,240 kg of fabric.
On 24 August the mill delivered Slate and Ecru in full. Ember, 3,960 kg of it, had not been dyed. The store received 16,280 kg, 80.4% of the order, and the merchandiser ticked bulk fabric in-house.
She was not wrong, and she had no better option. The milestone is one row. It has two values. The fabric for two of three colours had arrived. Cutting could start on Monday. Marking the row "not done" would have been at least as false as marking it done, because it would have shown an order with no fabric at all, on a board Ruwanthi reads by exception. When the record is coarser than the work, the person filling it in must choose which lie to tell.
Ember loads last, on 12 September. That is the day the shortage was found: 19 days after the tick.
The nineteen days are the whole cost. On 24 August three recovery routes existed. By 12 September one did.
| Route | On 24 August | On 12 September |
|---|---|---|
| Mill re-runs Ember, twelve days | Fits inside Ember's own slack. No cost. | Gone — twelve days no longer exist |
| Second dyehouse, nine days, USD 0.42 a kilo | Available. USD 1,663.20 | Gone |
| Re-sequence so Ember loads first | Available at no cost | Gone — Slate and Ecru have already run |
| Air-freight Ember, 0.58 kg a piece at USD 4.85 | Not needed | The only route left. USD 10,126.80 |
A free option became a USD 10,126.80 option, and nothing went wrong in between. The order simply had a green row on it for nineteen days.
The repair is not discipline. It is grain: how fine the record is. Of Thelawatte's 34 milestones, 11 apply per colour or per supplier rather than per order. Their orders average 2.6 colours, so splitting those eleven adds 704 rows across forty orders. The live count goes from 1,360 to 2,064, a 51.8% increase in things to fill in. That is the real cost, and it is worth naming before somebody discovers it. Of the 31 qualified completions in the sample, 23 were on those eleven milestones. So 74.2% of the problem sits in 32.4% of the template.
The milestone that was complete for somebody else's order
Fabric purchase order KLW-7712 was placed with Kelanwatta Dyeing for 48,000 kg covering two Marrick orders: MRK-3081 needing 26,000 kg and MRK-3096 needing 22,000 kg. It is an ordinary and sensible way to buy: one lot, one shade, one price band.
The mill shipped a first tranche of 31,000 kg. The system recorded the receipt against the purchase order. Both orders read their fabric status from the purchase order, so both went green.
MRK-3081 loaded first and drew the 26,000 kg it needed. That left 5,000 kg against MRK-3096's requirement of 22,000, a fabric position of 22.7%. MRK-3096's calendar showed fabric complete for 23 days.
Nobody made a mistake here at all. The receipt was recorded correctly. The link between the purchase order and both orders was correct. The split between them was made correctly by the cutting room. It was made in the cutting room's head. Completeness is undefined when an upstream is shared and the split is not a record. A system will happily report it as complete for everybody rather than admit that it does not know.
The fix is small and specific: allocate at receipt rather than at issue. Every goods receipt line names the order it belongs to. An order's fabric position is then the sum of its own allocations, not the status of a purchase order it shares. Thelawatte books about 312 receipt lines a quarter, and the extra keystroke costs roughly forty seconds each. That is 3.5 hours a quarter, against a single silent shortage of the kind the previous section priced at USD 10,126.80.
The milestone that stopped being complete
The marker for ODH-1904 was approved on 3 August against a planned fabric width of 150 cm. The fabric arrived at a usable width of 148 cm. The marker was remade on 26 August, and consumption went from 1.10 to 1.118 kg a piece. That is 331.2 kg more fabric at USD 6.90, or USD 2,285.28, plus three days.
The interesting part is what happened to the record. The system had no way to say this milestone was complete and is not any more. Completion was a date field, and a date field only goes one way: it can be written, and it can be blanked. The planner blanked it and re-entered 27 August. That was the only available move, and it deleted 3 August from the history. The audit trail now says the marker was approved on 27 August. The twenty-three days when everybody downstream believed they had a marker never happened. The next time somebody asks why cutting was late, there is no evidence that it was ever early.
A record that treats completion as permanent cannot describe a reversal except by destroying the original. A milestone needs four states, not two: not started, in progress, complete, and reopened. The reopening carries its own date and reason, and the original completion is left where it was. Course 7.7 covers the approval version of the same problem, where a decision arrives with conditions attached. This is the calendar version, and it is the cheaper of the two to fix.
Writing a completion definition
The general repair for all three shapes is one sentence per milestone. It is not written by the milestone's owner. It is written as the question the next person asks.
Bulk fabric in-house becomes: the cutting room can lay a marker for every colour in the loading sequence. That definition cannot be satisfied by 80.4% of the fabric. It cannot be satisfied by somebody else's allocation. And it stops being satisfied when the width changes. All three of this lesson's failures are refused by one sentence, because the sentence is written from the downstream chair.
Twelve of Thelawatte's 34 milestones got a definition. The other 22 kept their names, because their names were already clear. Writing the twelve took one afternoon with the cutting manager, the store keeper and the QA lead in the room. The argument that took longest was about what trims in-house means, which is the correct argument to have.
Milestones and gates, and the override rate that tells you which is which
A milestone records that something happened. A gate refuses to let the next thing start. Both are useful and only one of them costs anything, so the temptation after a bad quarter is to gate everything.
Thelawatte gated 11 of the 34. Over six weeks, 213 overrides were raised and 209 were approved. That is 98.1%, at roughly eighteen minutes of somebody's time each to raise and approve: 63.9 hours in six weeks to refuse four things.
They cut back to 4 gates. Over the next six weeks there were 19 overrides and 6 were refused. That is 31.6%, and 5.7 hours.
The rule that falls out of it is the same shape as the first lesson's, and it is the spine of this course: a gate approved more than about nine times in ten is not a gate, it is a form. Either it sits in the wrong place, or the thing it demands is not genuinely required. In both cases it is buying nothing with real hours. An instrument that never disagrees with you is not measuring you.
Check yourselfFabric is in-house for two of three colours and the third is a month out. What should the milestone show?Show the answer
Not complete. Better still, not one milestone. A single row for a per-colour fact forces a choice between two false statements, and the person filling it in will reasonably pick the one that lets work start. Split the eleven milestones that are genuinely per colour or per supplier. Accept that the row count rises by about half. Then write the completion definition as the downstream question: can the cutting room lay a marker for every colour in the loading sequence?
Check yourselfTwo orders share one fabric purchase order and both show fabric complete after a part delivery. What is the missing record?Show the answer
The allocation. A receipt against a shared purchase order says how much arrived, not whose it is, so both orders inherit a status neither of them has earned. Record the split on the receipt line rather than leaving it to whoever opens the store first, and work out each order's fabric position from its own allocations. Until then, completeness for a shared upstream is not a hard question. It is an undefined one, and the system is answering it with a guess that always says yes.
Prompt · Write a completion definition for every milestone
When a milestone keeps getting ticked truthfully and the next step still cannot start.
Act as a production planner writing completion definitions for a factory's critical-path template. Here are my milestones, in sequence, with the owner of each: [PASTE THE LIST, ONE PER LINE, WITH THE OWNING DEPARTMENT]. My typical order has [NUMBER] colours, [NUMBER] sizes and [NUMBER] separate material suppliers. Materials are sometimes bought on one purchase order covering several orders: [YES OR NO]. For each milestone, do four things. First, name the person who is blocked until it is complete, and write the question that person actually asks — not the milestone's name. Second, turn that question into a completion definition of one sentence that cannot be satisfied by a majority, by somebody else's allocation, or by an arrival that has not been accepted. Third, say whether the milestone is genuinely per order, per colour or per supplier, and if it is not per order, say how many rows it becomes on my typical order and what that does to my total row count. Fourth, say whether the milestone can ever be un-completed after the fact, and if it can, what has to be recorded when that happens. Then, separately, recommend at most four of these milestones to become hard gates that refuse to let the next step start. Choose them by how often you expect a request to pass them to be REFUSED, not by how much the last failure hurt, and say for each what refusal rate would prove it should be a gate and what rate would prove it is only a form. List every milestone you are deliberately leaving as a record rather than a gate, and why.
AI can make mistakes — check anything you act on.
What you own at the end of this lesson
A completion definition for every milestone where the tick and the state of the world can come apart, written from the next person's chair. A decision about which of your milestones are per colour. And a shortlist of gates chosen by their expected refusal rate, rather than by how much the last failure hurt.
Next: an order that was late by seven days, where every one of the seven decisions behind it was correct.