Hi all,

KIP numbers have quietly become shared vocabulary: people say "kip-848" (new 
rebalance) or "kip-932" (queues for kafka/Share Groups) or kip-1150 
(Diskless/Inkless) in threads, talks, and PRs and everyone knows what's meant. 
[1]

But nothing canonical matches how we already refer to them, and the links we do 
paste are fragile: the readable Confluence URLs 
(.../display/KAFKA/KIP-500+Replace+ZooKeeper+...) tend to 404 the moment a 
title is edited, and the stable page-id URLs 
(.../pages/viewpage.action?pageId=66945394) are opaque and impossible to type 
from memory. So archives, PRs, and commit messages slowly fill with unreachable 
links. (I’ve personally faced this a couple of times already).

I propose that we use a stable, memorable scheme that matches how people 
already talk:

  https://kafka.apache.org/kip/848   ->  KIP-848 on Confluence
  https://kafka.apache.org/kip/500   ->  KIP-500

Implementation is deliberately light. kafka-site on Hugo already has a custom 
redirect_to front-matter that emits a client-side redirect, so each KIP is one 
tiny Markdown file:

  content/<...>/kip/848.md
    ---
    title: "KIP-848"
    redirect_to: "https://cwiki.apache.org/confluence/x/KoxiBw";
    ---

The target is the Confluence TinyLink, which is derived from the page id and so 
survives title renames and page moves.

Rollout:
 - One-time backfill: a script reads the KIP index and generates one file per 
existing KIP, submitted as a single PR for normal committer review.
 - New KIPs: add one file. we create the generator plus an optional daily job 
that opens a PR when new KIPs appear; a committer still reviews and merges.

Out of scope for now: true server-side 301s. They'd be better for search 
engines/crawlers and can be added later via infra config without changing any
of the above or breaking existing links. Also, no thoughts on moving away from 
confluence currently.

Looking forward to hearing the PMC/Committers on this idea.

Thanks,
Aditya

[1]: https://imgur.com/a/KUHA7lM#k5smzbb

Reply via email to