@@ -56,16 +56,36 @@ jobs:
5656 - name : Build Kap JS
5757 run : bash scripts/build-kap-js.sh
5858
59- - name : Update known-versions.json
59+ - name : Update known-versions.json and display strings
6060 env :
6161 KAP_VERSION : ${{ inputs.kap_version }}
6262 run : |
63+ # known-versions.json keeps the upstream form (e.g. 20260425-1).
6364 tmp=$(mktemp)
6465 jq --arg v "$KAP_VERSION" '.kap = $v' scripts/known-versions.json > "$tmp"
6566 mv "$tmp" scripts/known-versions.json
6667 echo "--- updated known-versions.json ---"
6768 cat scripts/known-versions.json
6869
70+ # User-facing displays render YYYYMMDD-N as YYYY-MM-DD.
71+ if [[ ! "$KAP_VERSION" =~ ^([0-9]{4})([0-9]{2})([0-9]{2})- ]]; then
72+ echo "ERROR: kap_version '$KAP_VERSION' is not in YYYYMMDD-N form" >&2
73+ exit 1
74+ fi
75+ KAP_DISPLAY="${BASH_REMATCH[1]}-${BASH_REMATCH[2]}-${BASH_REMATCH[3]}"
76+ echo "Display version: $KAP_DISPLAY"
77+
78+ # index.html: scoped to the data-lang="kap" dropdown item only.
79+ sed -i -E "/data-lang=\"kap\"/,/<\/div>/ s|(<span class=\"lang-version\">)[0-9]{4}-[0-9]{2}-[0-9]{2}(</span>)|\1${KAP_DISPLAY}\2|" index.html
80+
81+ # generate-og-languages.cjs: only the Kap row.
82+ sed -i -E "s|(name: 'Kap',[[:space:]]+version: ')[0-9]{4}-[0-9]{2}-[0-9]{2}(')|\1${KAP_DISPLAY}\2|" scripts/generate-og-languages.cjs
83+
84+ echo "--- index.html (Kap dropdown) ---"
85+ grep -A1 'data-lang="kap"' index.html | head -5
86+ echo "--- generate-og-languages.cjs (Kap row) ---"
87+ grep "name: 'Kap'" scripts/generate-og-languages.cjs
88+
6989 - name : Compose PR body
7090 id : body
7191 env :
@@ -105,3 +125,5 @@ jobs:
105125 wasm/kap/standalonejs.js
106126 wasm/kap/standard-lib
107127 scripts/known-versions.json
128+ scripts/generate-og-languages.cjs
129+ index.html
0 commit comments