Skip to content
Colombo pilot · 06°55′N 79°51′E
Back to the protocol
Public Observatory · Colombo pilot

The books
are open.
On purpose.

This is the audit surface of the Lemon protocol. Drivers, passengers and regulators can inspect the rules, the fee logic and the invariant checks that decide what a ride can cost.

All invariants passing protocol v0.9 open to anyone
public_ledger.preview
verified
EventFareDriverLemon
ride.completedLKR 420LKR 420LKR 0
gift.waivedLKR 0LKR 0LKR 0
ride.completedLKR 365LKR 365LKR 0
fee.charged—− LKR 100+ LKR 100
ride.completedLKR 510LKR 510LKR 0
chain head 0x8f3a…c91eappend-only
Preview dataset · seeded pilot data, not live passenger records

5 / 5

invariants passing

protocol-wide

100%

fare retained

per completed ride

LKR 2,400

monthly fee ceiling

never exceeded

0

algorithmic penalties

no rate exists

01 / The constitution

Rules before
revenue.

Every invariant is enforced in code at the point of a transaction, not displayed as a promise on a marketing page. A violation cannot be settled around.

Read the fee policy

Metabolic floor

Pass

Every ride is checked against fuel, depreciation, maintenance and a living wage before it can be offered.

F_offer ≥ F_floor

Capped utility fee

Pass

The protocol fee is a flat subscription with a hard monthly ceiling. It cannot grow with the fare.

RΠ = min(100 × days, 2400)

Fee decoupling

Pass

No fare argument exists in the fee function. The fee is not a percentage of driver labour.

∂RΠ / ∂F = 0

Attention conservation

Pass

The data model contains no acceptance-rate or cancellation-rate variable. There is nothing to punish.

acceptance_rate = not found

Surge pass-through

Pass

Any stress payment added by a passenger is routed in full to the driver who accepted the trip.

platform_share = 0%

02 / The ledger

Follow every rupee.

Preview dataset · seeded pilot data
not live passenger records.

EventRouteFareDriverLemonHash
ride.completedFort → NugegodaLKR 420LKR 420LKR 00x7f2a…e31c
gift.waivedNugegoda → National HospitalLKR 0LKR 0LKR 00x91be…7a20
ride.completedPettah → KollupitiyaLKR 365LKR 365LKR 00xb042…c9d1
fee.chargedActive day · 18—− LKR 100+ LKR 1000x3d8f…0b6a
ride.completedBambalapitiya → DehiwalaLKR 510LKR 510LKR 00xc71a…4f92

Hash-chained · append-only · guardian-tagged

all entries consistent

03 / Audit it yourself

Trust is a
reproducible result.

You should not have to believe us. Start with a fare, follow the arithmetic, and check the invariant. The protocol is designed to survive the question.

Step 01

Pick any completed trip

Start with the fare, the distance, the time and the driver's operating profile. All inputs are part of the receipt.

Step 02

Recompute the floor

Fuel + depreciation + maintenance + living wage. If the fare is below that number, the match should never have existed.

Step 03

Check the settlement

Passenger debit should equal driver credit plus any pass-through costs. Lemon's commission on the fare should be exactly zero.

The invitation

If the maths is wrong, say so in public. That is the point.

Back to the manifesto