RoadStar Hackathon 2026

Northbound

Your truck already drove that lane. Empty. Northbound finds the freight it could legally have carried.

A load board that knows which US freight a Canadian truck is allowed to haul. Built on Roadstar Trucking's own dispatch history.

1

Their data said I was wrong

I assumed a Canadian carrier's problem is coming home empty from the US Midwest. Roadstar's own completed dispatch history, 10,479 legs over about two months, says otherwise.

Where the empty miles areLegsMiles
Repositioning inside the US778126,874
Inside Canada2,84765,738
Crossing south empty9227,979
Coming home empty62,044

Six empty legs home in two months. They are good at loading for home. The empty running is between US loads, and whether any of it could have carried freight is a legal question, not a routing one.

python scripts/empty_miles.py · real output, recorded
2

The rule is directional

A Canadian truck may not haul US point-to-point freight. Every distance optimiser will offer it anyway. But the regulation is not a flat no.

19 CFR 123.14(c)(1): carriage "in the general direction of an export move or as part of the return of the vehicle to its base country shall be considered incidental to its engagement in international traffic."
Verified against Cornell LII and govinfo independently.

Green
Columbus → BramptonInternational. No cabotage question.
Amber
Columbus → DetroitUS domestic, but heading home. Call your broker.
Red
Columbus → AtlantaMoving away from home. Local traffic.

Amber exists because the driver's B-1 admission is a second, stricter layer than the equipment rule. The two disagree on exactly one commercially interesting case, so Northbound surfaces it with both citations and hands the decision to the carrier's broker. It names the provision. It is not legal advice.

3

The headline

217
empty legs already travelling toward the border
66,702
miles that could legally have carried freight
$155,815
at ATRI's published 2025 cost of $2.336 per mile

And it repeats, which is what makes it fixable with standing agreements rather than luck: Fairburn GA → Walton KY ran empty 10 times, Morris IL → Richmond IN 13, Scottsville KY → Walton KY 11.

python scripts/fillable.py

The part I did not expect

120 times in two months, a Roadstar truck ran empty toward the border within 150 km and 48 hours of a Roadstar load heading to Ontario.

Driver67 ran EMPTY Fairburn, GA → Washington, IN (476 mi, Jul 30) while bill 410487 for CSA TRANSPORTATION moved Atlanta, GA → Etobicoke, ON (Jul 29)

Fairburn is twenty miles from Atlanta. Same company, two trucks, one of them empty and legally able to carry. Every order in the book was hauled, so this is not lost revenue: it is a load assignment that could have gone the other way. The 150 km / 48 h thresholds are mine, so the sensitivity is published rather than a single tuned number; at the most conservative corner, 50 km and 12 hours, it is still 30 legs and $16,000.

overlap analysis output showing the Fairburn to Atlanta pairing
python scripts/overlap.py
4

Paste the offer as it arrived

GLM 5.2 on SPUR reads it. The law decides. A model should never be the thing asserting what a regulation permits.

Amber. Fairburn GA → Walton KY, a lane Roadstar ran empty ten times
Red. Columbus → Atlanta, $2,100, and what taking it would cost
RED · Not available to this truck. Domestic US move that does not carry the truck toward its base country. The $2,100 on offer is not worth it. Taking it is the cabotage violation 19 CFR 123.14(d) warns of: liabilities under section 592 of the Tariff Act of 1930, and the driver's B-1 admission at risk on his next entry.

A load board that only ever says yes will eventually get a driver turned around at the bridge. Northbound says no, names the provision, and names the exposure.

5

The clock changes at the bridge

A driver leaving Milton for Chicago runs under 49 CFR 395.3 south of the border and SOR/2005-313 north of it. Roadstar's own TMS tracks both, in separate columns per driver. 88% of their drivers carry a materially different figure, mean gap 18.3 hours.

Driver84 Corunna, MI → Guelph, ON hours 53.4h US cycle, 11.3h Canadian LOSES 42.1h crossing

His board says 53 hours. He has 11 the moment he crosses. Border wait is priced live from CBP's public feed, commercial and FAST lanes separately, and because the rule asks for an interruption in driving status rather than off-duty time, a wait over 30 minutes is credited as the break he already owed.

npx tsx src/cli/board.ts · 34 real trucks in the US, live CBP waits
6

What the model contributes, measured

Every entry at a sponsored hackathon says the sponsor's product was essential. This measures it. The same offers are read twice, once by GLM 5.2 and once by a fair rules parser with the model switched off. Ground truth is Roadstar's order book. Both arms see byte-identical text.

GLM 5.2No model
Origin and destination read correctly100%40%
Weight81%61%
Correct legal verdict reached100%40%

The regex arm matches the model on structured formats and fails completely on the three informal ones freight actually arrives in: trader shorthand, chat messages, forwarded chains. n = 100, zero read failures.

npx tsx src/cli/ablation.ts
7

The prose cannot drift from the data

A script recomputes every number on this page from the raw sheets and fails the build if the docs disagree, or if a figure this project produced and later retired ever reappears. On its first run it caught four mistakes in my own writeup.

python scripts/check_claims.py

Honest limitations

8

Who graded the numbers

Not me. That is the point.

Which legs ran, how far, loaded or empty
Roadstar's own Dispatch sheet
Truck positions, dual-clock hours
Roadstar's own Driver sheet
Border wait times
CBP, live
What counts as heading home
19 CFR 123.14(c)(1)
Hours of service
49 CFR 395.3 · SOR/2005-313
Cost per mile
ATRI, An Analysis of the Operational Costs of Trucking, 2026 edition (2025 costs)
City coordinates
GeoNames