Skip to content

Triage CHECK 3 candidate terms into terminology.json + tune ignoreNouns, then evaluate promoting CHECK 3 to default #8234

Description

@yomybaby

Context

FR-3052 (PR #7748) introduced CHECK 3 in scripts/check-terminology-i18n.mjs — a detector for capitalized user-facing nouns in i18n values that are not yet in the terminology.json termbase (candidate new terms). It is intentionally OFF by default (opt-in via --check3), report-only, and non-blocking.

Running it today surfaces 25 candidates in resources/i18n/en.json. This issue triages them: register the genuine domain terms into terminology.json, silence the noise via the ignoreNouns allowlist (or fix the string), and — once the report is near-zero — evaluate promoting CHECK 3 from opt-in to a default warn.

Reproduce: node scripts/check-terminology-i18n.mjs --check3 --json (or --warn --check3 for the text report).

Classification

🟢 REAL — register as terminology.json concepts (with decidingFR)

Candidate Occurrences Suggested category Notes
Fair Share 7 Feature-Specific Fair Share scheduling concept
Fair Share Scheduler 4 Feature-Specific The scheduler component; group with "Fair Share"
Rate Limit 3 Feature-Specific Keypair/credential setting
Active Pool 2 Feature-Specific App Proxy / model-serving replica pool receiving traffic
Model Store 1 UI Navigation / Feature Model Store page/feature
Resource Policy 1 Feature-Specific Keypair resource policy

🟡 BORDERLINE — editorial decision (register OR allowlist), owner = docs-lead

Candidate Occurrences Notes
Health Status 1 Deployment replica status concept
Traffic Status 1 Deployment replica status concept
Idleness Check 1 Session idle-checker feature ("Idle Check")
Preopen Port(s) 1 Session-launcher feature; captured as Preopen Ports' (stray apostrophe) — fix the capture/string or register

🔴 NOISE — allowlist (scripts/terminology-i18n.allowlist.json ignoreNouns) or fix the string

  • Clipped fragments: Numeric User (Numeric User ID clipped before the ID acronym), Pre-defined Prometheus (third-party Prometheus; add to ignoreNouns), Preopen Ports' (stray trailing apostrophe from the source string).
  • Sing/plural dupes: Selected Image / Selected Images.
  • Theme/logo fragments: Dark Mode WebUI, Light Mode WebUI.
  • Page-name fragments: Admin Data Page, Project Admin Data (both from the same Admin Data page alerts).
  • Generic UI microcopy / sentence fragments: App Name, Current Project, Connection Example, Hostname Already Exists, Log Messages, My Account, Notebook Address.

Tasks

  1. Register the 🟢 REAL candidates as concepts[] entries in terminology.json (per-language preferred where known, decidingFR = this issue), regenerate TERMINOLOGY.md (pnpm run build:terminology), and re-run check:terminology-md.
  2. Make the 🟡 BORDERLINE calls via the docs-lead New-Term Gate; fix the Preopen Ports' apostrophe capture (string or detector).
  3. Add the 🔴 NOISE items to ignoreNouns (or fix the underlying string, e.g. the Numeric User ID clip and the Selected Image(s) dupes). Document each addition in the allowlist $comment.
  4. Re-run node scripts/check-terminology-i18n.mjs --check3 and confirm the report is near-zero (target < ~5 residual).
  5. Then evaluate promoting CHECK 3 from opt-in → default --warn in scripts/verify.sh / lint:terminology (still report-only; a later, separate decision could make it blocking). Team sign-off required for any default-on flip, same as FR-3049.

Acceptance criteria

  • 🟢 candidates registered in terminology.json with decidingFR; TERMINOLOGY.md regenerated; generate-terminology.mjs --check green.
  • 🟡 candidates each resolved (registered or allowlisted) with a one-line rationale.
  • 🔴 candidates allowlisted or their strings fixed; allowlist $comment updated.
  • --check3 residual count driven to near-zero and recorded in the PR.
  • A documented recommendation on whether to promote CHECK 3 to default-on (with the residual count as evidence).

Dependencies

Builds on FR-3052 (PR #7748) — the CHECK 3 detector + ignoreNouns allowlist must be merged first. Relates to the terminology governance roadmap (FR-3048 / FR-3049 / FR-3050 / FR-3051).

JIRA Issue: FR-3302

Metadata

Metadata

Assignees

No one assigned

    Type

    Fields

    No fields configured for Task.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions