Inspiration

In Nigeria, generators are part of everyday life. When the grid fails, homes, shops, and small businesses turn to petrol or diesel generators to keep going. Moving to cleaner energy can reduce that dependence, but proving the impact is harder than simply saying a generator was replaced.

I wanted to explore a specific question: How do you make a climate impact claim more trustworthy when the evidence comes from ordinary people using ordinary phones?

That question led to WattWitness. Rather than treating a claim as proof, I built a system around recorded evidence, corroboration, and an auditable history of what was submitted.

What it does

WattWitness is a phone-first progressive web app for collecting and verifying evidence of generator displacement.

Users can record audio evidence, submit observations, gather corroboration from other participants, and build a traceable record of a displacement claim. The system uses a structured evidence workflow to make claims easier to inspect and challenge.

Its main features include:

  • Audio evidence collection: Record field evidence directly from a phone.
  • Community attestation: Allow multiple participants to corroborate observations.
  • Evidence-backed claims: Connect submitted claims to the evidence supporting them.
  • Auditable records: Use cryptographic commitments and Merkle logs to help detect changes to recorded evidence.
  • Conservative emissions estimates: Represent estimated impact as a range rather than pretending uncertain measurements are exact.
  • Ablation testing: Compare the system with key safeguards removed to evaluate what those safeguards actually contribute.

WattWitness does not claim that an audio recording alone proves generator operation, fuel consumption, or emissions avoided. Its purpose is to make climate claims more accountable by making their supporting evidence traceable and open to scrutiny.

How I built it

I built WattWitness around a simple principle: the system should be able to explain why a claim is accepted, challenged, or rejected.

The frontend is a Vite-based progressive web app designed around a phone-first evidence workflow. Its screens guide users through Home, Observe, Evidence, Claim, and Ablation.

I implemented the core decision logic in deterministic TypeScript. This keeps the evaluation rules explicit instead of hiding important decisions inside a black-box model.

I used Solidity and Hardhat for the smart-contract layer, with deployment on Base Sepolia. The blockchain component provides an auditable registry for relevant records and commitments. The application also uses cryptographic techniques, including Merkle logs, to support evidence integrity.

I separated evidence collection from the decision to accept a claim. Successfully uploading a recording does not automatically make the associated claim trustworthy.

I also built an ablation workflow so I could examine the contribution of individual safeguards instead of relying on a feature list to demonstrate their value.

Challenges I ran into

My biggest challenge was deciding what the evidence could honestly establish.

A recording can contain useful information without proving every fact a climate claim depends on. Multiple recordings may also be correlated, staged, or collected under similar conditions. Counting files or attestations is not the same as establishing independent corroboration.

I addressed this by treating evidence, corroboration, and claim evaluation as separate concerns. I also avoided presenting estimated emissions reductions as precise measurements when the underlying evidence could not support that precision.

Another challenge was balancing field usability with verification. A workflow that is too complicated discourages participation, but a workflow that accepts every submission without scrutiny creates an easy route for manipulation.

Finally, integrating a phone-based evidence workflow with on-chain records required careful boundaries. The blockchain can help establish that a registered record has not silently changed, but it cannot independently establish that the original observation was truthful.

Accomplishments that I'm proud of

I built a working prototype that connects field evidence collection, claim evaluation, cryptographic recordkeeping, and an evaluation workflow in one application.

I'm particularly proud of three decisions.

First, I designed around evidence rather than assuming that a submitted claim was true.

Second, I made the system's decision process inspectable. Deterministic rules are easier to audit and test than unexplained model outputs.

Third, I incorporated ablation testing into the project itself. This gives me a way to investigate whether the safeguards make a measurable difference, rather than simply claiming that more verification automatically means better verification.

I also established a Base Sepolia deployment and built the application around a practical use case rooted in everyday energy realities.

What I learned

I learned that putting data on a blockchain and establishing that the data is true are two different problems.

Cryptographic commitments can help protect record integrity. They cannot establish the truth of an observation that was false from the beginning.

I also learned that corroboration needs careful treatment. Two people agreeing does not necessarily provide two independent pieces of evidence, especially if they share the same source or incentives.

Finally, I learned to treat uncertainty as an engineering constraint. When the evidence cannot support an exact emissions figure, a conservative range is more defensible than a precise-looking number.

These lessons shaped WattWitness into an evidence and accountability system rather than a simple carbon calculator.

What's next for WattWitness

My next step is to strengthen the connection between field observations and defensible displacement claims.

I want to collect more representative real-world recordings, test the workflow under varied recording conditions, and evaluate how well the evidence checks handle incomplete, repetitive, or misleading submissions.

I also plan to expand adversarial testing of the corroboration and claim-verification mechanisms, including scenarios where participants coordinate or submit misleading evidence.

As the project matures, I want to improve offline usability, make evidence review clearer, and develop better methods for communicating the uncertainty around estimated emissions reductions.

My long-term goal is straightforward: make community-generated climate claims easier to inspect, harder to manipulate, and more honest about what the evidence can actually prove.

Share this project:

Updates

Submission history