diff --git a/.claude/skills/vale-linting/SKILL.md b/.claude/skills/vale-linting/SKILL.md index aa324981c..760487d52 100644 --- a/.claude/skills/vale-linting/SKILL.md +++ b/.claude/skills/vale-linting/SKILL.md @@ -299,15 +299,42 @@ echo "systemd" >> .ci/vale/styles/config/vocabularies/InfluxDataDocs/accept.txt ### Creating a Product-Specific Override +> [!Important] +> Product-specific `.vale.ini` files must include the same disabled rules as the +> root `.vale.ini`. Rules disabled in the root config are **not** inherited by +> product-specific configs. Omitting them re-enables the rules for those products. +> For example, omitting `Google.Units = NO` causes duration literals like `7d`, +> `24h` to be flagged as errors in product-specific linting runs. + ```bash # 1. Create product-specific .vale.ini cat > content/influxdb3/cloud-dedicated/.vale.ini << 'EOF' StylesPath = ../../../.ci/vale/styles -MinAlertLevel = error +MinAlertLevel = warning Vocab = InfluxDataDocs +Packages = Google, write-good, Hugo + [*.md] BasedOnStyles = Vale, InfluxDataDocs, Google, write-good + +# These rules must be disabled in every product .vale.ini, same as the root .vale.ini. +Google.Acronyms = NO +Google.DateFormat = NO +Google.Ellipses = NO +Google.Headings = NO +Google.WordList = NO +# Disable Google.Units in favor of InfluxDataDocs.Units which only checks byte +# units (GB, TB, etc). Duration literals (30d, 24h, 1h) are valid InfluxDB syntax. +Google.Units = NO +Vale.Spelling = NO +Vale.Terms = NO +write-good.TooWordy = NO + +TokenIgnores = /[a-zA-Z0-9/_\-\.]+, \ + https?://[^\s\)\]>"]+, \ + `[^`]+` + # Product-specific overrides InfluxDataDocs.Branding = YES EOF diff --git a/content/influxdb/v2/.vale.ini b/content/influxdb/v2/.vale.ini index 06147959c..3538a1d80 100644 --- a/content/influxdb/v2/.vale.ini +++ b/content/influxdb/v2/.vale.ini @@ -14,4 +14,22 @@ Google.DateFormat = NO Google.Ellipses = NO Google.Headings = NO Google.WordList = NO -Vale.Spelling = NO \ No newline at end of file +# Disable Google.Units in favor of InfluxDataDocs.Units which only checks byte +# units (GB, TB, etc). Duration literals (30d, 24h, 1h) are valid InfluxDB syntax. +Google.Units = NO +Vale.Spelling = NO +# Disable Vale.Terms - the vocabulary-based substitution rule creates too many +# false positives from URLs, file paths, and code. The accepted terms in +# accept.txt still work for spelling checks via InfluxDataDocs.Spelling. +Vale.Terms = NO +# Disable write-good.TooWordy - flags legitimate technical terms like +# "aggregate", "expiration", "multiple", "However" that are standard in +# database documentation. +write-good.TooWordy = NO + +# Ignore URL paths like /api/v3/..., /cli/..., /influxdb3/... +# Ignore full URLs like https://example.com/... +# Ignore inline code in frontmatter (description fields, etc.) +TokenIgnores = /[a-zA-Z0-9/_\-\.]+, \ + https?://[^\s\)\]>"]+, \ + `[^`]+` \ No newline at end of file diff --git a/content/influxdb3/cloud-dedicated/.vale.ini b/content/influxdb3/cloud-dedicated/.vale.ini index c2ca4cb2f..35dfc38e5 100644 --- a/content/influxdb3/cloud-dedicated/.vale.ini +++ b/content/influxdb3/cloud-dedicated/.vale.ini @@ -14,4 +14,22 @@ Google.DateFormat = NO Google.Ellipses = NO Google.Headings = NO Google.WordList = NO -Vale.Spelling = NO \ No newline at end of file +# Disable Google.Units in favor of InfluxDataDocs.Units which only checks byte +# units (GB, TB, etc). Duration literals (30d, 24h, 1h) are valid InfluxDB syntax. +Google.Units = NO +Vale.Spelling = NO +# Disable Vale.Terms - the vocabulary-based substitution rule creates too many +# false positives from URLs, file paths, and code. The accepted terms in +# accept.txt still work for spelling checks via InfluxDataDocs.Spelling. +Vale.Terms = NO +# Disable write-good.TooWordy - flags legitimate technical terms like +# "aggregate", "expiration", "multiple", "However" that are standard in +# database documentation. +write-good.TooWordy = NO + +# Ignore URL paths like /api/v3/..., /cli/..., /influxdb3/... +# Ignore full URLs like https://example.com/... +# Ignore inline code in frontmatter (description fields, etc.) +TokenIgnores = /[a-zA-Z0-9/_\-\.]+, \ + https?://[^\s\)\]>"]+, \ + `[^`]+` \ No newline at end of file diff --git a/content/influxdb3/cloud-serverless/.vale.ini b/content/influxdb3/cloud-serverless/.vale.ini index 4472fd3c1..9ebc431b7 100644 --- a/content/influxdb3/cloud-serverless/.vale.ini +++ b/content/influxdb3/cloud-serverless/.vale.ini @@ -14,4 +14,22 @@ Google.DateFormat = NO Google.Ellipses = NO Google.Headings = NO Google.WordList = NO -Vale.Spelling = NO \ No newline at end of file +# Disable Google.Units in favor of InfluxDataDocs.Units which only checks byte +# units (GB, TB, etc). Duration literals (30d, 24h, 1h) are valid InfluxDB syntax. +Google.Units = NO +Vale.Spelling = NO +# Disable Vale.Terms - the vocabulary-based substitution rule creates too many +# false positives from URLs, file paths, and code. The accepted terms in +# accept.txt still work for spelling checks via InfluxDataDocs.Spelling. +Vale.Terms = NO +# Disable write-good.TooWordy - flags legitimate technical terms like +# "aggregate", "expiration", "multiple", "However" that are standard in +# database documentation. +write-good.TooWordy = NO + +# Ignore URL paths like /api/v3/..., /cli/..., /influxdb3/... +# Ignore full URLs like https://example.com/... +# Ignore inline code in frontmatter (description fields, etc.) +TokenIgnores = /[a-zA-Z0-9/_\-\.]+, \ + https?://[^\s\)\]>"]+, \ + `[^`]+` \ No newline at end of file diff --git a/content/influxdb3/clustered/.vale.ini b/content/influxdb3/clustered/.vale.ini index c381f0cde..2ae7567c0 100644 --- a/content/influxdb3/clustered/.vale.ini +++ b/content/influxdb3/clustered/.vale.ini @@ -14,4 +14,22 @@ Google.DateFormat = NO Google.Ellipses = NO Google.Headings = NO Google.WordList = NO -Vale.Spelling = NO \ No newline at end of file +# Disable Google.Units in favor of InfluxDataDocs.Units which only checks byte +# units (GB, TB, etc). Duration literals (30d, 24h, 1h) are valid InfluxDB syntax. +Google.Units = NO +Vale.Spelling = NO +# Disable Vale.Terms - the vocabulary-based substitution rule creates too many +# false positives from URLs, file paths, and code. The accepted terms in +# accept.txt still work for spelling checks via InfluxDataDocs.Spelling. +Vale.Terms = NO +# Disable write-good.TooWordy - flags legitimate technical terms like +# "aggregate", "expiration", "multiple", "However" that are standard in +# database documentation. +write-good.TooWordy = NO + +# Ignore URL paths like /api/v3/..., /cli/..., /influxdb3/... +# Ignore full URLs like https://example.com/... +# Ignore inline code in frontmatter (description fields, etc.) +TokenIgnores = /[a-zA-Z0-9/_\-\.]+, \ + https?://[^\s\)\]>"]+, \ + `[^`]+` \ No newline at end of file diff --git a/content/influxdb3/core/.vale.ini b/content/influxdb3/core/.vale.ini index 86731aebf..03f6d282a 100644 --- a/content/influxdb3/core/.vale.ini +++ b/content/influxdb3/core/.vale.ini @@ -19,4 +19,22 @@ Google.DateFormat = NO Google.Ellipses = NO Google.Headings = NO Google.WordList = NO -Vale.Spelling = NO \ No newline at end of file +# Disable Google.Units in favor of InfluxDataDocs.Units which only checks byte +# units (GB, TB, etc). Duration literals (30d, 24h, 1h) are valid InfluxDB syntax. +Google.Units = NO +Vale.Spelling = NO +# Disable Vale.Terms - the vocabulary-based substitution rule creates too many +# false positives from URLs, file paths, and code. The accepted terms in +# accept.txt still work for spelling checks via InfluxDataDocs.Spelling. +Vale.Terms = NO +# Disable write-good.TooWordy - flags legitimate technical terms like +# "aggregate", "expiration", "multiple", "However" that are standard in +# database documentation. +write-good.TooWordy = NO + +# Ignore URL paths like /api/v3/..., /cli/..., /influxdb3/... +# Ignore full URLs like https://example.com/... +# Ignore inline code in frontmatter (description fields, etc.) +TokenIgnores = /[a-zA-Z0-9/_\-\.]+, \ + https?://[^\s\)\]>"]+, \ + `[^`]+` \ No newline at end of file