Skip to content

feat: add ?consumer= query param to getting started URLs and telemetry governance#96

Merged
klappy merged 1 commit into
mainfrom
feat/consumer-query-param-article
Apr 15, 2026
Merged

feat: add ?consumer= query param to getting started URLs and telemetry governance#96
klappy merged 1 commit into
mainfrom
feat/consumer-query-param-article

Conversation

@klappy
Copy link
Copy Markdown
Owner

@klappy klappy commented Apr 15, 2026

What

Adds ?consumer=yourname query parameter to all oddkit URLs in the getting started article and updates the telemetry governance doc to reflect query param as the highest-priority consumer resolution method.

Why

Users on platforms like Claude.ai, ChatGPT, and ElevenLabs can't set custom HTTP headers on MCP connections, but every platform lets you edit the URL. Making the query param the highest priority consumer identification method means anyone can self-identify regardless of platform.

This pairs with a corresponding oddkit server change (separate PR on klappy/oddkit) that reads ?consumer= from the URL.

Files Changed

  • writings/getting-started-with-odd-and-oddkit.md — All URLs updated to include ?consumer=yourname with explanation
  • canon/constraints/telemetry-governance.md — Consumer resolution chain updated: query param is now priority 1

Testing

Article renders correctly with new content. Governance doc resolution chain is consistent with planned server change.


Note

Low Risk
Low risk documentation-only change that updates public guidance for consumer identification; no runtime behavior or security-sensitive code is modified in this repo.

Overview
Documentation update to standardize consumer identification. The telemetry governance doc now defines ?consumer= as the highest-priority consumer label source and recommends it over custom headers for broad MCP client compatibility.

The getting-started guide updates all oddkit connection examples (Claude, ChatGPT, MCP config, etc.) to include ?consumer=yourname and adds a short explanation of the transparency leaderboard and opting out.

Reviewed by Cursor Bugbot for commit 32703db. Bugbot is set up for automated code reviews on this repo. Configure here.

…y governance

- Updated all oddkit URLs in getting-started article to include ?consumer=yourname
- Added explanation of transparency leaderboard and what telemetry tracks
- Updated telemetry-governance.md consumer resolution chain: query param is now priority 1
- Query param works on every platform (no custom header support needed)
@klappy klappy merged commit 5d8327e into main Apr 15, 2026
1 check passed
@klappy klappy deleted the feat/consumer-query-param-article branch April 15, 2026 01:48
klappy added a commit that referenced this pull request Apr 17, 2026
Eleven governance articles plus an evidence note, mirroring the PR
#96 encode pattern. Governance lands in canon first; the future
workers/src/orchestrate.ts refactor extracts against live articles.
No runtime behavior change in this PR.

Meta governance
- odd/challenge-types/how-to-write-challenge-types.md — extraction
  contract, Domain Adaptation with three worked patterns (software
  engineering, thought leadership from books, comparative
  architectural writing), six-step procedure for KB stewards

Software-engineering default challenge types (shipped defaults,
labeled as such on purpose)
- odd/challenge-types/strong-claim.md
- odd/challenge-types/proposal.md
- odd/challenge-types/assumption.md
- odd/challenge-types/observation.md (fallback: true)

Architectural-writing overlay challenge types (klappy.dev additions
for comparative-analysis and principle-extraction writing work)
- odd/challenge-types/pattern-coinage.md
- odd/challenge-types/comparative-positioning.md
- odd/challenge-types/principle-extraction.md

Supporting articles (coexist both domains in klappy.dev canon)
- odd/challenge/base-prerequisites.md
- odd/challenge/normative-vocabulary.md
- odd/challenge/stakes-calibration.md (includes voice-dump mode
  which suppresses all challenge output as invariant)

Evidence
- docs/oddkit/evidence/challenge-governance-articles-commit.md
  captures the gauntlet run: preflight, AI voice cliches audit,
  author-identity check, derives-from path audit, Writing Canon
  gate per-article, session capture reference, open risks.

Gauntlet notes
- Writing Canon gate passed per-article (title, blockquote,
  summary section, headers, no buried claims) after remediation
  of missing Summary sections caught during the validate pass
- AI voice cliches audit clean
- One broken derives_from path caught and fixed
  (canon/epistemic-modes.md -> canon/definitions/epistemic-modes.md
  in stakes-calibration.md)
- oddkit_gate returned NOT_READY due to the same hardcoded-logic
  problem this refactor solves — the gate's generic prereqs cannot
  see session state. Noted honestly; proceeding because materially
  met and documented.

Co-authored-by: Claude <noreply@anthropic.com>
klappy added a commit that referenced this pull request Apr 30, 2026
…state as if current; preserved with addendum (Audit 2026-04-30)
klappy added a commit that referenced this pull request Apr 30, 2026
…te; preserved with addendum (Audit 2026-04-30)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant