Skip to content

Janitor v0.2.0 — Behavior, account linking, and browser benchmarks

Choose a tag to compare

@AaronDovTurkel AaronDovTurkel released this 23 Sep 03:48
· 45 commits to main since this release

Janitor v0.2.0 adds optional behavior summaries, verified account labels across devices, and a reproducible real-browser benchmark.

  • Opt into mouse travel, active movement time, direction changes, pauses, wheel summaries, and aggregate interaction timing with behavior: "extended". Counts remain the default. No absolute coordinates, raw event trails, actual keys or form contents are collected.
  • Configure subjectLinking: { secret, namespace } and pass a server-verified authenticatedSubject to handle(). Requests authenticated to the same account receive the same opaque HMAC subjectId across devices, while retaining separate browser IDs. Anonymous requests do not receive a subject. No account graph or extra tables are stored.
  • pnpm benchmark:browser collects 30 observations using real Chromium, Firefox and WebKit and runs 78 deterministic identity trials. The report includes 24/24 isolated restorations and 6/6 false matches for unseen profiles identical to the only enrolled profile. This is a controlled single-host experiment, not population accuracy or a human/bot benchmark.
  • 79 unit/integration tests and six browser integration/UI tests pass locally, alongside strict type checks, lint and example production builds.

Documentation: https://janitor.holycoders.io/docs/extensions/
Benchmark methodology and results: https://janitor.holycoders.io/docs/benchmarks/

Download janitor-0.2.0.tar.gz, extract into an empty folder and run pnpm install. It contains seven compiled packages and a consumer manifest with local pnpm overrides. Packages remain unpublished on npm. Deploy updated server adapters before enabling extended behavior in the browser; v0.1 adapters reject the new fields.

Browser signals cannot prove person identity or malicious intent. Deliberately hidden values remain missing. AI inference was not used in the controlled benchmark; risk calibration remains unverified. No database migration is needed for this release.