Make-to-stock with a kanban loop
Products are sold from a finished-goods store, and the factory makes them again as they are sold, so customers do not wait for the lead time.
Built in A field or setting does it directly.
How
Give the final product a stock: "make_to_stock": { "stock": 12 } (Factory data → Products → Stock). The store starts with that many units. The product's demand is now sales from the store: its arrivals (arrival_process), or one a takt of working time on a line paced by the takt. Each sale takes one unit from the shelf and sends a kanban card back, which releases one unit to make. The stock is the number of cards.
The factory makes what is sold, so the stock changes what the customer sees, not the work: a sale finds the shelf empty only when production has fallen more than the stock behind (repairs, a run of quick sales). It then waits for the next unit made (a backorder).
The results give each store (summary.finishedGoods; Run details → Fill rate): sales, how many were served from stock (the fill rate), how many waited and how long, and the mean and lowest stock. Run it with a few stock levels to find the smallest store that gives the fill rate you need.
A reorder point with a fixed batch (make 50 when the stock falls to 20) is not built in yet: the loop is one for one.
Check
Pumps sold at random, one every 5 min on average, from a store of 12. The test rig fails every 3 h of work for 40 min. Over 160 h, 1,953 pumps are sold and 94% are served from the shelf; the others wait 27 min on average (a repair empties the shelf). With a stock of 20 it is 98%, with 4 it is 62%, and with 0 every customer waits the production lead time, 20 min on average and up to 2 h. The line makes 1,936 pumps whatever the stock.