Repository navigation
feat(telemetry): tell your own uploads apart from real usage in Umami - #16
Merged
Merged
Conversation
content-published now carries a bounded owner category (operator for admin-issued tokens without an account, user for account tokens, anonymous) and, for files, a format category derived from the media type. Operators can separate their own agents' uploads from other usage without sending any identifier to Umami. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Guide finishes and file publications now check the Umami configuration before resolving the owner category, matching the page path, so disabled telemetry runs no extra queries. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Codex Review SummaryThis comment shows the latest Codex review activity on this pull request.
ℹ️ About Codex in GitHubYour team has set up Codex to review pull requests in this repo. Reviews are triggered when you
Codex reacts with 👀 while any review is running, comments if it has suggestions, and reacts with 👍 once all reviews finish with no findings. |
The high-severity zod advisory (< 4.6.6) failed the CI audit through puppeteer-core > chromium-bidi (zod 3) and @scalar/types (zod 4.4). puppeteer-core 25.16.0, within the existing range, uses a chromium-bidi on zod ^4.6.5; refreshing the lockfile resolves every path to 4.6.7. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
|
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.

0 New Issues
0 Fixed Issues
0 Accepted Issues
No data about coverage (0.00% Estimated after merge)
Note
🤖 Claude Opus 5.5 responding on behalf of beastyrabbit
Umami counted 46 publications between Oct 21 and 23, but couldn't say whose they were. 44 were files, and their timing matched the PR screenshots the operator's own agents upload through Schaffa. With no owner on the event, real outside usage was impossible to separate from the operator's own automation.
content-publishednow carries two more bounded properties:owner:operatorfor admin-issued tokens with no account behind them (how per-workstation agent tokens are issued),userfor tokens created from a signed-in account,anonymousfor tokenless pages. Pages, files and finished guides all get it.format(files only):image,video,audio,pdf,text,archiveorother, derived from the stored media type.No identifier reaches Umami. Both values come from fixed lists, so the documented promise of "bounded categorical properties only, with no visitor headers or identifiers" and the privacy policy text still hold.
docs/deployment.mdlists the new properties. Existing properties (kind,anonymous,interactive) are unchanged.When Umami is not configured, no owner lookup runs. The independent review caught that the file and guide paths ran these queries before discarding the event, and both now check the configuration first, like the page path already did.
Verification
owner: userandformat: text, a presentation published with the bootstrap token reportingowner: operator, and publishing a page, file and guide through the HTTP routes with Umami disabled sending nothing.tsc, Biome and gitleaks are clean. In the full server suite the only failure istest/video.test.ts, which needs a Chrome install that this machine lacks.Events recorded before this release have no
ownerorformat.Dependency fix to unblock CI
A new high-severity zod advisory (GHSA-mrhx-c7xc-m3w5, zod < 4.6.6) failed the
pnpm auditstep throughpuppeteer-core→chromium-bidi(zod 3) and@scalar/types(zod 4.4).puppeteer-core25.16.0 is inside the existing range and uses achromium-bidion zod^4.6.5, so updating the lockfile with pnpm resolves every path to zod 4.6.7 without an override. pnpm also raised thepuppeteer-corespec to^25.16.0. The audit has no high findings left. CLI tests and the packed-CLI artifact check pass.🤖 Generated with Claude Code