Furlong · the engine, drawn
Furlong does not score you. Every day it walks a fixed list of seventeen rules from the top, and the first rule that matches decides the day — everything below it never runs. That is why four running days in a row and two-then-a-rest come out of identical logic: a different rule got there first. The order itself is the safety model.
Signals enter from the left, coloured by where they come from. Each rule consults only what it needs. The spine down the centre is the fall-through: a day that matches nothing above keeps descending until it reaches the last rule, which always answers.
Seventeen rules in priority order, from a red-flag symptom check at the top to a default easy run at the bottom. Each rule is fed by signals read from Apple Health, reported by the runner, derived by the engine, or inferred from history, and each produces an outcome when it matches.
There is no weighted sum anywhere in the engine. A sore shin cannot be outvoted by a good HRV reading, because the shin is checked first and returns immediately. Ranking beats scoring when the cost of the two mistakes is this uneven.
Rules 6 and 7 are the ones that shape the run/rest pattern: days in a row, and running days per week. Both come from your level, tightened after 50. They sit above every load rule on purpose — a rested runner always looks like they have room.
Sleep, resting heart rate and HRV are applied after a rule has answered, and they can only trim the range — never extend it. A good night is not permission to do more than the plan already allowed.
Every baseline is your own and time-limited: resting HR, HRV, sleep and steps over about 30 days, pace over 12 weeks, the load base over 28. Nothing is compared against a population norm, because population norms nag the people they don't describe.
The plan is fixed once each morning against a frozen snapshot of the overnight signals. It changes during the day only when something you'd recognise happens — you logged a run, or reported a symptom — and when it does, the app says what changed and why.
Time off drives the load ratio down, which naively reads as room to run. Rule 11 catches that: volume ramps back over a fortnight instead of snapping to where it was, and the usual-distance anchor decays while you're away.
| Quantity | Value | What it does |
|---|