FirstPass privacy notice

Effective 7 September 2026. Decision D-35 in the project's decision trail.

FirstPass is decision support for licensed solar and battery installers. It has no accounts, no cookies and no sign-in. This page says exactly what stays on your phone, what leaves it, and how to stop it leaving.

What stays in your browser

Your jobs, the customer and site references you type, your settings and the plan itself are stored only in this browser on this device. They are not uploaded, not backed up, not synced and not encrypted. Clearing site data removes them. FirstPass is not a system of record; keep your own copy of anything you would mind losing. The one thing that does leave, while telemetry is on, is the event stream described below: for a ticked step that is the step id, its phase, whether it was ticked or unticked, a random job alias and whether it is a practice job.

Usage telemetry: on unless you turn it off

To learn whether installers can complete a job from the product alone, and where they get stuck, FirstPass sends anonymous usage events. Telemetry is on unless you turn it off. The checkbox is in the page footer, below the scope note. Unticking it stops every event in every open tab and deletes the install id from your browser; ticking it again mints a new install id and a new session id, so no identifier FirstPass holds joins the before and after.

What is sent

Each event is one row with these columns and nothing else:

The events are:

Job-linked events include job_id, a random job alias that lets us link creation, steps and outcomes for the same job in this browser while telemetry remains on. It is not the job identifier in an imported backup and contains no customer or site details. The local alias mapping is not exported with jobs. Job aliases are removed when telemetry is switched off; switching it back on creates new aliases, so they do not reconnect earlier activity.

What is never sent

Before anything leaves the browser, every field name is checked against this list. A field whose name contains any of these words is dropped, at any depth, and so is any list, because lists can carry free text. The list below is the one in the code, checked by a test:

So no customer name, no address, no postcode, no NMI, no approval reference, no licence number, no meter number, no email and no phone number is sent, and there is no field for any of them to travel in. The network and brand fields are checked against the fixed lists the app offers before they are sent, and the system and upgrade type fields against the short codes the app uses; a job imported from a file with anything else in those fields is sent as unknown or Other.

Where it goes and who sees it

Events are written to a database FirstPass runs on Supabase, a hosted service. The app can only add rows; it cannot read, change or delete them. The rows are read by FirstPass, which is Jim Carroll, to count completions and failures per network and per step. They are not sold, not shared with any network, regulator or installer, and not used for advertising. There is no analytics script, no third-party tag and no cookie on this site. One other request leaves your browser: the typefaces are loaded from Google Fonts, so Google receives your IP address and browser details for that request, as it does for any site using its fonts. Nothing about your jobs travels with it.

How long, and how to have it deleted

Events are kept for the length of the pilot and are not deleted automatically. They carry no name or contact detail, so FirstPass cannot pick out yours by asking who you are. The install id is the only handle. It is shown beside the telemetry checkbox in the footer while telemetry is on. To have your events deleted, send that id to jimmisound@gmail.com before you switch telemetry off, and every row carrying it will be removed.

Changes

This notice changes only with a numbered decision in the project's decision trail. Three of its lists are read out of the source by the test suite each time the code is tested: the never-sent list, the columns and the event names above cannot drift from the code. The behaviour described in prose is covered by separate unit tests and by nothing on this page.

FirstPass is decision support for a licensed installer, not advice. Questions about this notice: jimmisound@gmail.com.

FirstPass — plan a job against current network guidance