v0.24.0 October 8, 2026
Measurement, lead attribution and badania.org as a practice
Search and analytics reports: npm run gsc:report, npm run bwt:report and npm run ga4:report read Search Console, Bing Webmaster Tools and GA4 straight from their APIs.
6 added
4 changed
Added
- **Search and analytics reports:** `npm run gsc:report`, `npm run bwt:report` and `npm run ga4:report` read Search Console, Bing Webmaster Tools and GA4 straight from their APIs. Credentials stay outside the repository. The GA4 report is filtered to the production host by default and `--report hosts` shows what the filter removes.
- **`booking_click` event** (`page_path`, `link_url`) on every Reclaim booking link, sent through the same consent state as every other hit.
- **Lead source on both contact forms:** a hidden `source` field (`blazejmrozinski.com` plus the page path), so every enquiry says which page it came from.
- **badania.org as an organization:** a `ProfessionalService` node (`@id` `https://badania.org/#organization`, `founder` pointing at the Person) on `/projects/badania-org/`, referenced from that page's `CreativeWork` and from the Person's `worksFor`.
- Pointers from `/pl/o-mnie/` and `/pl/` to badania.org for psychometrics in Polish.
- `npm test` runs the JSON-LD and analytics unit tests.
Changed
- **GA4 loads only on www.blazejmrozinski.com.** Preview builds on `pages.dev` and old hosts were sending sessions into the production property.
- **badania.org left the Person's `sameAs`.** `sameAs` says "this URL is the same entity as the person"; badania.org is his practice, so it is now modelled as one. The Person `@id` and `url` are unchanged; `sameAs` lists nine profiles.
- **Decline now means no analytics storage.** Clicking Decline, or returning with a stored decline, updates consent to `analytics_storage: denied`. Before, Decline only hid the banner.
- The Work with me form redirects straight to `https://www.blazejmrozinski.com/thanks/` (it went through two redirects).