- README Release section now matches CI reality: tag push publishes to the
Gitea npm registry AND creates the Gitea release (was described as
visibility-only, predating the npm publish step).
- ESLint flat config (eslint + typescript-eslint recommended); `npm run lint`
is now eslint (typecheck stays separate) and CI build-and-test gates on it.
One real finding fixed: dead import in src/mail/index.ts.
- New vitest coverage for the previously untested src/browser/actions.ts
(click/fill retries, safeGoto, waitForUrlHost, assertPublicHost, BasePage
URL building) and src/logging/redact.ts (redactSecrets).
Fake-site Playwright suite catches BasePage/ApiClient/network regressions
before consumers pin a broken tag; Outline sync + docs for QA & Dev live page;
Pushgateway deploy soak confirmed separately on observability LXC.
- Bump package.json/lock to 0.3.1, move Unreleased CHANGELOG entries under it
- Fix release CI job: secrets.GITEA_TOKEN can never be set (Gitea rejects
that literal secret name), so the release job has been unable to create
a Gitea release since it was added. Renamed to RELEASE_TOKEN throughout
and set the secret on this repo.
- Bump install-pin examples (README, docs/CONSUMER.md) to #v0.3.1