* chore(telegraf): add important warnings to Telegraf 1.38.0 release notes
* Apply suggestions from code review
Co-authored-by: Jason Stirnaman <stirnamanj@gmail.com>
---------
Co-authored-by: Jason Stirnaman <stirnamanj@gmail.com>
* feat(tc-cel): add CEL expressions reference documentation
Add multi-page CEL expression reference under Telegraf Controller
reference docs with variables, functions, operators, and examples.
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
* feat(tc-status): expand agent status page with CEL examples and configuration
Replace stub status page with practical guide including status values,
evaluation overview, three inline config examples, and links to CEL reference.
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
* chore(tc-heartbeat-status): update status evaluation docs
* chore(tc-heartbeat-status): remove impl plans
---------
Co-authored-by: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
* Initial plan
* fix(docs): remove > prompt from runnable code blocks
Remove leading `>` CLI prompt characters from code blocks that are meant
to be executed by users. Only keep `>` in code blocks that demonstrate
console output (showing both the command at the prompt AND the result output).
Changes affect 34 files across InfluxDB v1, Enterprise InfluxDB, shared
influxql-v3 reference, and Telegraf content:
- InfluxQL queries and management commands (sql/bash/no-lang blocks)
- Flux REPL examples (js blocks)
- MongoDB shell commands (shell blocks)
Preserved (unchanged):
- Console session blocks showing command + output (Type B: mixed > and non-> lines)
- Telegraf metric output blocks (text language with > measurement,tags format)
- diff blocks with < and > diff markers
Co-authored-by: jstirnaman <212227+jstirnaman@users.noreply.github.com>
* Apply suggestions from code review
* Potential fix for pull request finding
Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com>
* Apply suggestions from code review
* Potential fix for pull request finding
Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com>
* Update content/enterprise_influxdb/v1/query_language/continuous_queries.md
---------
Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com>
Co-authored-by: jstirnaman <212227+jstirnaman@users.noreply.github.com>
Co-authored-by: Jason Stirnaman <jstirnaman@influxdata.com>
Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com>
* fix(influxdb3): backfill missing product URLs in localStorage
Returning visitors with stale localStorage (created before core/enterprise
products were added) had undefined URL values for new products. The
updateUrls() function then replaced Hugo-rendered hostnames like
localhost:8181 with the string "undefined" in api-endpoint blocks.
Fix by merging DEFAULT_STORAGE_URLS as fallbacks when reading from
localStorage, so new product keys are always present.
closes#6960https://claude.ai/code/session_01GJZ2yMR5DBk1feqTD5LeHW
* test(influxdb3): add Cypress tests for localStorage URL backfill
Adds 2 E2E tests for the fix in #6960:
1. Stale localStorage (missing `core` key) should not cause "undefined"
to appear in api-endpoint or code blocks on the plugins page.
2. Fresh localStorage should be initialized with all expected product
URL keys (oss, cloud, core, enterprise, serverless, dedicated, clustered).
Run with:
node cypress/support/run-e2e-specs.js --spec "cypress/e2e/influxdb-url.cy.js" --no-mapping
https://claude.ai/code/session_01GJZ2yMR5DBk1feqTD5LeHW
---------
Co-authored-by: Claude <noreply@anthropic.com>
- Fix Power BI links in visualization-tools.md for cloud-dedicated,
cloud-serverless, and clustered to use new visualize-data/ path
instead of old process-data/visualize/ path
- Fix influxctl cluster list link in cloud-dedicated/admin/clusters/list.md
to include missing cluster/ path segment
https://claude.ai/code/session_01SV14CdHN4GGVuATt9n7STn
Co-authored-by: Claude <noreply@anthropic.com>
* feat(ui): add Ask AI to code block controls menu
Add an "Ask AI" option to the code controls dropdown menu on all code
blocks. Uses data-ask-ai-query attribute if provided by the template,
otherwise builds a query from the code content. Delegates to the
existing Kapa widget integration via the ask-ai-open click handler.
* fix(ui): fix Ask AI code control and add e2e tests
## Summary
- Add "Ask AI" option to the code controls dropdown (three-dot menu) on all code blocks
- Uses `data-ask-ai-query` attribute from the template if available, otherwise builds a query from the code content
- Delegates to the existing Kapa widget via the `ask-ai-open` click handler contract
- Reorder menu items: Copy → Ask AI → Fill window
## Bug fix
Fix Ask AI button not opening the Kapa widget. jQuery `.trigger('click')`
doesn't dispatch native DOM events, so the native
`document.addEventListener` in ask-ai-trigger.js never received the click.
Switch to native `.click()` and remove `href="#"` to prevent scroll-to-top.
## Tests
Add Cypress e2e test suite (`code-controls.cy.js`) with 16 tests covering:
- Initialization: code blocks wrapped, controls appended, menu item order
- Toggle: open/close on click, close on outside click, independent menus
- Copy to clipboard: success lifecycle, revert after timeout
- Fullscreen: modal open/close, body scroll lock, placeholder restore
- Ask AI: Kapa modal opens, query built with code content (MutationObserver)
* fix(ui): apply icon spacing to all code control menu items
Move .cf-icon margin-right rule from .copy-code and .fullscreen-toggle
to the shared li level so it applies to all menu items including Ask AI.
* Potential fix for pull request finding
Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com>
* fix(ui): add keyboard accessibility to code controls menu
Replace clickable <span> and <li> elements with proper <button> elements
and ARIA roles for keyboard and assistive-technology access:
- Toggle: <span> → <button> with aria-label and aria-expanded
- Menu items: <li> → <li role="none"><button role="menuitem">
- Menu: <ul> gets role="menu"
- SCSS: add :focus-visible styles, reset button defaults
- JS: toggle handler updates aria-expanded on open/close
Also fix tests to match actual behavior:
- Remove bogus "close other menus" test that manually closed first menu
before opening second (tested nothing)
- Remove duplicate "close on re-click" test (same as outside-click)
- Add "keep menu open when copy is clicked" (stopPropagation behavior)
- Add accessibility markup validation test
---------
Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com>
The InfluxDB documentation MCP server (hosted by Kapa) now supports
authentication via both Google and GitHub accounts. Update all
references to reflect both providers and document GitHub's scope
behavior (no scopes requested, public profile only).
https://claude.ai/code/session_01X29cSTjYM6CQrxRJT62tG6
Co-authored-by: Claude <noreply@anthropic.com>
* Revert "InfluxDB 1.12.3 release (#6872)"
This reverts commit 14e021aa26.
* fix(v1): split v1.12.3 release — publish OSS, defer Enterprise pending GA
Revert the combined InfluxDB 1.12.3 release commit and re-add only
OSS v1.12.3 documentation. Enterprise v1.12.3 docs will be published
in a separate PR once the release artifact is GA in the portal.
Also adds FUTURE/PAST LIMIT ordering caution for users on versions
prior to v1.12.3 (from copilot/restore-ordering-warning-influxql).
* chore: document separate OSS/Enterprise PR workflow for v1 releases
Update the influxdb1-tech-writer agent, v1 release PR template, and
prepare-release-notes command to enforce the practice of always creating
separate PRs for OSS v1 and Enterprise v1 releases. Enterprise must wait
for GA in the portal before merging.
* fix(enterprise): restore FUTURE/PAST LIMIT grammar productions in InfluxQL spec
The revert of the combined v1.12.3 commit removed grammar production
definitions (retention_future_limit, retention_past_limit) that document
existing InfluxQL syntax, not v1.12.3-specific features. Restore them
so the grammar is complete.
* Revert "fix(enterprise): restore FUTURE/PAST LIMIT grammar productions in InfluxQL spec"
This reverts commit c497f136a1.
* fix(v1): remove incorrect FUTURE/PAST LIMIT ordering caution from OSS spec
The caution stated that prior to v1.12.3, PAST LIMIT must appear before
FUTURE LIMIT. This is incorrect — the correct syntax has always been
FUTURE LIMIT before PAST LIMIT. The v1.12.3 fix addresses Enterprise
meta-node recording of limits, not parser syntax order.
The packages-audit pre-push hook now detects the current branch and only
blocks pushes on the default branch. On feature branches, vulnerabilities
are reported as warnings with a link to create a GitHub issue.
* feat: [meta] https-insecure-certificate configuration (#6850)
Add documentation for meta node's `[meta] https-insecure-certificate` configuration.
This configuration is available in >= 1.12.3.
* feat: https-insecure-certificate configuration (#6847)
Add documentation for `https-insecure-certificate` configuration in `[cluster]` and `[http]` sections.
* feat: [tls] advanced-expiration configuration (#6849)
Add `[tls] advanced-expiration` setting for data nodes.
* feat: add compression options to influxd-ctl backup (#6717)
* feat: add compression options to influxd-ctl backup
Added new flags for backup compression and performance tuning.
* feat: Update backup.md
Co-authored-by: Jason Stirnaman <jstirnaman@influxdata.com>
* Update content/enterprise_influxdb/v1/tools/influxd-ctl/backup.md
Co-authored-by: Scott Anderson <sanderson@users.noreply.github.com>
* Apply suggestions from code review
Co-authored-by: Scott Anderson <sanderson@users.noreply.github.com>
---------
Co-authored-by: Jason Stirnaman <jstirnaman@influxdata.com>
Co-authored-by: Scott Anderson <sanderson@users.noreply.github.com>
* fix(enterprise): correct typos and inconsistencies in v1.12.3 release docs
Fix grammar, formatting, and accuracy issues across the new v1.12.3
configuration and backup compression documentation.
* fix(influxdb-v1): correct FUTURE LIMIT and PAST LIMIT clause order and add to ALTER RETENTION POLICY (#6591)
* fix(influxdb-v1): correct FUTURE LIMIT and PAST LIMIT clause order and add to ALTER RETENTION POLICY
- Fix clause order: FUTURE LIMIT must appear before PAST LIMIT (parser requirement)
- Add FUTURE LIMIT and PAST LIMIT clauses to ALTER RETENTION POLICY syntax
- Add grammar definitions for retention_future_limit and retention_past_limit
- Add explicit note clarifying the required clause order
- Fix "There are" style issue in spec.md
closes#6590
* style(influxdb-v1): clean up InfluxQL spec formatting
influxdb/v1:
- Simplify introduction and use relative anchor links
- Convert notes to GitHub-style callout syntax
- Fix heading hierarchy (Letters/digits, Identifiers, Keywords, Literals as h3)
- Standardize Duration units table heading
- Fix "keywords" typo
- Reword "See FAQ" to "For more information, see"
- Simplify KILL QUERY section
- Fix SHOW MEASUREMENT CARDINALITY heading level
- Replace "There are" with active voice
enterprise_influxdb/v1:
- Add related links to frontmatter
- Simplify introduction and use relative anchor links
- Convert notes to GitHub-style callout syntax
- Add Characters and Letters/digits to TOC
- Standardize Duration units table heading
- Fix "keywords" typo
- Reword "See FAQ" to "For more information, see"
- Simplify KILL QUERY section for Enterprise clusters
- Update SHOW TAG KEYS grammar to include with_key_clause
- Remove backticks from SHOW STATS headings
* fix(influxdb-v1): address review issues in InfluxQL spec pages (#6931)
* fix(influxdb-v1): address review issues in InfluxQL spec pages
- Fix Enterprise KILL QUERY: restore proper EBNF grammar with optional
ON clause and include both local and cluster examples
- Fix duplicate "Durations" heading in both spec files
- Fix list item spacing in Enterprise spec
- Revert OSS heading level changes to maintain consistency with Enterprise
- Restore Comments section to original location under Other in OSS spec
* fix(influxdb-v1): move Comments section outside Other in OSS spec
Match Enterprise spec structure: Comments is a top-level section
before Other, not nested inside it.
* fix(influxdb-v1): restore Comments link in OSS spec TOC
* fix(influxdb-v1): rewrite KILL QUERY with clear Syntax and Examples sections
Use text-typed code block for syntax notation and Syntax heading.
Keep both local and cluster examples in sql-typed block.
* feat(enterprise,v1): add v1.12.3 release notes and missing OSS config options
Add release notes for InfluxDB v1.12.3 (OSS and Enterprise) with links
to documented features. Add missing https-insecure-certificate and
advanced-expiration config options to OSS docs. Fix backup example
gzipBlockSize typo (10048576 → 10485760) and document the default.
* fix(enterprise,v1): fix broken links in release notes and spec pages
Fix 30+ broken links across v1 release notes and InfluxQL spec pages:
- Correct config paths (configuration/ → configure/)
- Fix fragment anchors (remove default values from anchors)
- Update relocated pages (cluster-commands → tools/influxd-ctl)
- Fix cross-product links (Enterprise → OSS for shared content)
- Remove dead links (flux/v0.36, whats_new)
* Potential fix for pull request finding
Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com>
* fix(enterprise,v1): move FUTURE/PAST LIMIT fix from Features to Bug fixes
The clause order correction is a bug fix, not a new feature.
* fix(v1): correct spec typos and KILL QUERY placeholder in v1.12.3 docs (#6932)
* Initial plan
* fix(v1): correct typos, grammar references, and example inconsistencies in spec and backup docs
Co-authored-by: jstirnaman <212227+jstirnaman@users.noreply.github.com>
* revert(enterprise/v1): restore gzipBlockSize and gzipBlockCount in backup example
Co-authored-by: jstirnaman <212227+jstirnaman@users.noreply.github.com>
* revert(v1): restore with_key_clause in spec grammar for show_tag_keys, show_tag_values_cardinality, and exact_cardinality statements
Co-authored-by: jstirnaman <212227+jstirnaman@users.noreply.github.com>
---------
Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com>
Co-authored-by: jstirnaman <212227+jstirnaman@users.noreply.github.com>
* fix(influxdb-v1): fix broken cross-references in meta-nodes config and OSS config
- Fix meta-internal-shared-secret links in config-meta-nodes.md to point
to config-data-nodes where the heading exists
- Update MDN security headers URL to current location
* chore(influxdb-v1): bump OSS and Enterprise latest patch to 1.12.3
* docs: tag v1.12.3-only config and backup updates (#6936)
* Initial plan
* docs(metadata): mark v1.12.3 additions
Co-authored-by: jstirnaman <212227+jstirnaman@users.noreply.github.com>
---------
Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com>
Co-authored-by: jstirnaman <212227+jstirnaman@users.noreply.github.com>
---------
Co-authored-by: Geoffrey Wossum <gwossum@influxdata.com>
Co-authored-by: WeblWabl <devandbenz@gmail.com>
Co-authored-by: Scott Anderson <sanderson@users.noreply.github.com>
Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com>
Co-authored-by: Copilot <198982749+Copilot@users.noreply.github.com>
* Initial plan
* fix: include docs home page in PR preview and Copilot visual review when layouts/index.html changes
Co-authored-by: jstirnaman <212227+jstirnaman@users.noreply.github.com>
* fix: improve detect-preview-pages to avoid false needs-author-input when home page auto-detected
Co-authored-by: jstirnaman <212227+jstirnaman@users.noreply.github.com>
---------
Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com>
Co-authored-by: jstirnaman <212227+jstirnaman@users.noreply.github.com>
Co-authored-by: Jason Stirnaman <jstirnaman@influxdata.com>
- Upgrade glob from ^10.3.10 to ^13.0.6 to resolve dependency
vulnerability warnings. API is unchanged, no code changes needed.
- Add dompurify >=3.3.2 to resolutions to prevent regression.
The prior lockfile-only fix (8dd60bf) regressed when yarn add
regenerated the lockfile.
* chore: add hosted influxdb-docs MCP server to .mcp.json
Add the hosted InfluxDB documentation search MCP server
(influxdb-docs.mcp.kapa.ai) as the primary MCP server using SSE transport.
Keep the local server with a note that it uses deprecated endpoints.
https://claude.ai/code/session_01SURpmrJ2sxzBtp4euiAxpc
* chore: add API key auth option for hosted influxdb-docs MCP server
Make the API key-authenticated server the primary entry (influxdb-docs)
using Bearer token from DOCS_KAPA_API_KEY env var. Keep the OAuth
fallback as influxdb-docs-oauth for users without an API key.
https://claude.ai/code/session_01SURpmrJ2sxzBtp4euiAxpc
* chore: rename env vars to INFLUXDATA_DOCS_ namespace
Rename DOCS_KAPA_API_KEY, DOCS_API_KEY_FILE, DOCS_MODE, and
MCP_LOG_LEVEL to use the INFLUXDATA_DOCS_ prefix for consistency.
https://claude.ai/code/session_01SURpmrJ2sxzBtp4euiAxpc
* docs: add MCP server setup docs for contributors and AI agents
Update CLAUDE.md, AGENTS.md, and content-editing SKILL.md with
concise documentation for the hosted influxdb-docs MCP server,
covering both API key and OAuth authentication options.
https://claude.ai/code/session_01SURpmrJ2sxzBtp4euiAxpc
* fix: remove cross-agent references from .claude files and AGENTS.md
Keep .claude/ files focused on Claude Code. Link AGENTS.md to the
published MCP server docs page instead of mentioning tool-specific setup.
https://claude.ai/code/session_01SURpmrJ2sxzBtp4euiAxpc
---------
Co-authored-by: Claude <noreply@anthropic.com>
* Initial plan
* fix(vale): add missing Google.Units=NO to product-specific .vale.ini files
Duration literals like 7d, 24h, 30d were being flagged as errors when
running Vale with product-specific configs because those configs were
missing Google.Units = NO. Also adds Vale.Terms = NO,
write-good.TooWordy = NO, and TokenIgnores to match the root .vale.ini.
Co-authored-by: jstirnaman <212227+jstirnaman@users.noreply.github.com>
---------
Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com>
Co-authored-by: jstirnaman <212227+jstirnaman@users.noreply.github.com>
Co-authored-by: Jason Stirnaman <jstirnaman@influxdata.com>
* Initial plan
* fix: use correct API to request Copilot code review in doc-review workflow
Co-authored-by: jstirnaman <212227+jstirnaman@users.noreply.github.com>
---------
Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com>
Co-authored-by: jstirnaman <212227+jstirnaman@users.noreply.github.com>
Co-authored-by: Jason Stirnaman <jstirnaman@influxdata.com>
* feat: add doc review pipeline implementation plan
Detailed plan for two interconnected systems:
1. Label system overhaul (22 automation-driven labels replacing 30+ inconsistent ones)
2. Doc review workflow (Claude visual review + Copilot structural review with screenshots)
This is a plan document only — no implementation changes.
https://claude.ai/code/session_01D5rLaHdQv9iBL55UEsdQFt
* fix: split product:v3 into v3-monolith and v3-distributed labels
- product:v3-monolith: Core, Enterprise (single-node / clusterable)
- product:v3-distributed: Cloud Serverless, Cloud Dedicated, Clustered
- Updated auto-label path mappings to match content directory structure
- Updated migration mapping and label count (22 → 23)
https://claude.ai/code/session_01D5rLaHdQv9iBL55UEsdQFt
* feat: define agent instruction file architecture in Phase 3
- One CLAUDE.md (pointer) → role-specific files in .claude/agents/
- doc-triage-agent.md: label taxonomy, path mapping, priority rules
- doc-review-agent.md: review scope, severity classification, output format
- Prompt file (.github/prompts/) references agent file, stays workflow-specific
- Updated file summary and implementation order
https://claude.ai/code/session_01D5rLaHdQv9iBL55UEsdQFt
* feat: move visual/screenshot review from Claude to Copilot
Claude now handles diff-only Markdown review (frontmatter, shortcodes,
style, terminology). Copilot handles visual review by analyzing
screenshots posted as images in PR comments.
Key changes:
- Job 3 (Claude) runs in parallel with Jobs 1→2→4 (diff-only, no screenshots)
- Job 4 (Copilot) analyzes screenshots via @copilot PR comment mentions
- Two prompt files: doc-review.md (Claude), copilot-visual-review.md (Copilot)
- doc-review-agent.md scoped to diff-only (no screenshot analysis)
- Q1 resolved: screenshots delivered to Copilot via PR comment images
- Reduced Claude API cost (no image processing)
- Added Copilot failure handling (fallback to human review of artifacts)
https://claude.ai/code/session_01D5rLaHdQv9iBL55UEsdQFt
* chore: resolve all open questions in doc review pipeline plan
Convert Q2–Q5 from open recommendations to resolved decisions:
- Q2: Advisory only (no required status checks) until false-positive rate confirmed
- Q3: Playwright for CI screenshots, Puppeteer for local debugging
- Q4: Poll preview URL with 15s interval and 10-min timeout
- Q5: Cost acceptable with existing mitigations (path filters, skip-review, concurrency)
Rename section from "Open Questions" to "Decisions (Resolved)".
https://claude.ai/code/session_01D5rLaHdQv9iBL55UEsdQFt
* Apply suggestions from code review
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
* Fix label naming inconsistency and document workflow migration requirements (#6893)
* Initial plan
* fix: resolve label naming inconsistency and document workflow updates
- Rename review:approved to approval:codeowner to avoid confusion with review/* labels
- Add note explaining the distinct prefix to prevent implementor confusion
- Document required workflow updates for sync-plugin-docs label migration
- Specify exact files and line numbers that need updating
Co-authored-by: jstirnaman <212227+jstirnaman@users.noreply.github.com>
---------
Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com>
Co-authored-by: jstirnaman <212227+jstirnaman@users.noreply.github.com>
* feat(ci): add doc review pipeline and deduplicate instruction files
Add Phase 2-3 pipeline components: doc-review workflow (3-job
architecture), Claude/Copilot review prompts, URL resolver script,
triage and review agents, and label guide.
Deduplicate AGENTS.md (254→96 lines) by removing content available
in referenced docs. Remove duplicate sections from
copilot-instructions.md (264→221 lines). AGENTS.md now contains
only high-signal guidelines loaded every session: commands,
constraints, style rules, product paths, and reference pointers.
* task: updated PR pipeline plan
* task: remove old cli plan
* task: products file now contains content path mappings and (GitHub) label groups for each product. Product group labels will be used to assign reviewers and help with content checks.
* feat(ci): add auto-label workflow for PR product detection
Add auto-label workflow that applies product and source labels to
PRs based on changed file paths, using data/products.yml as the
source of truth. Add workflow-utils.js shared helper for product
path matching.
* refactor(ci): extract shared label and review format definitions
Consolidate duplicated label definitions and review comment format
into shared source-of-truth files to prevent context drift.
New files:
- data/labels.yml: source, waiting, workflow, review, and
product:shared label definitions (names, colors, descriptions)
- .github/templates/review-comment.md: severity levels, comment
structure, result rules, and result-to-label mapping
Updated consumers to reference shared files instead of inline copies:
- .claude/agents/doc-review-agent.md
- .claude/agents/doc-triage-agent.md
- .github/prompts/copilot-visual-review.md
- .github/LABEL_GUIDE.md
Workflow fixes:
- Pin all GitHub Actions to SHA hashes
- Fix fromJson() for url-count comparison in doc-review.yml
- Fix fallback handler to remove all review:* labels before re-adding
* refactor(ci): replace Claude review with Copilot native code review
- Remove claude-code-action job, use `copilot-reviews` reviewer instead
- Extract review criteria to .github/instructions/content-review.instructions.md
- Simplify copilot-instructions.md by removing duplicated content
- Harden auto-label workflow (scoped permissions, pagination, concurrency)
- Upsert visual review comments instead of creating duplicates
- Delete unused .github/prompts/doc-review.md
* Update .github/workflows/doc-review.yml
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
* Update .github/DOC-REVIEW-PIPELINE-PLAN.md
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
* task: update review pipeline plan
* task: add label-migration scripts. These are one-use scripts that we'll remove after the label migration
* Update .github/workflows/doc-review.yml
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
* Update .github/workflows/doc-review.yml
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
* Update .github/workflows/auto-label.yml
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
* Apply suggestions from code review
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
* Apply suggestions from code review
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
* style: remove unnecessary escape in regex character class
* feat(ci): add workflow_dispatch to auto-label and doc-review workflows
- Add workflow_dispatch with pr_number input to both workflows for
manual testing and on-demand re-runs
- Migrate sync-plugin-docs label references to source:sync
- Add area:agents, area:ci, area:links, release:*, good-first-issue,
source:feedback, waiting:pr to labels.yml
- Update products.yml: influxdb_cloud label_group v2 -> v2-cloud
- Track label renames and deletions in LABEL_GUIDE.md
* fix(ci): replace npm ci with targeted js-yaml install in auto-label
npm ci fails in sparse checkout because package-lock.json is not
included. The workflow only needs js-yaml for YAML parsing.
* fix(ci): add --legacy-peer-deps to auto-label npm install
* task: updated labels for migration
* docs: update pipeline plan with test results and completion status
* test: reapply reverted serve.md changes for e2e pipeline test
Reverse the revert from 2f8efd6 to provide content changes that
exercise the auto-label and doc-review workflows end-to-end.
* fix(ci): fix preview URL polling in doc-review visual review
curl --head outputs response headers before the status code from -w,
so STATUS contained "HTTP/2 200 ...200" instead of just "200".
Drop --head and add -o /dev/null to capture only the status code.
* fix: correct broken fragment links in InfluxDB 3 serve.md files (#6910)
* Initial plan
* fix: correct broken links in serve.md files for enterprise config-options
Co-authored-by: jstirnaman <212227+jstirnaman@users.noreply.github.com>
* Update content/influxdb3/enterprise/reference/cli/influxdb3/serve.md
---------
Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com>
Co-authored-by: jstirnaman <212227+jstirnaman@users.noreply.github.com>
Co-authored-by: Jason Stirnaman <jstirnaman@influxdata.com>
---------
Co-authored-by: Claude <noreply@anthropic.com>
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
Co-authored-by: Copilot <198982749+Copilot@users.noreply.github.com>
Rename Core and Enterprise OpenAPI spec files from ref.yml to
descriptive names (influxdb3-core-openapi.yaml, influxdb3-enterprise-openapi.yaml).
Copy specs to static/openapi/ and add download links in the API description.
* Initial plan
* Remove line separation between influxdb3 and CLI in write-data page
Co-authored-by: jstirnaman <212227+jstirnaman@users.noreply.github.com>
---------
Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com>
Co-authored-by: jstirnaman <212227+jstirnaman@users.noreply.github.com>
* Release Chronograf v1.11.0
* fix: warning format
Co-authored-by: Scott Anderson <sanderson@users.noreply.github.com>
* Initial plan
* Fix 6 broken links in Chronograf release notes
Co-authored-by: jstirnaman <212227+jstirnaman@users.noreply.github.com>
* Fix all 6 broken links in Chronograf release notes with correct fragment IDs
Co-authored-by: jstirnaman <212227+jstirnaman@users.noreply.github.com>
---------
Co-authored-by: Jakub Bednář <jakub.bednar@gmail.com>
Co-authored-by: Scott Anderson <sanderson@users.noreply.github.com>
Co-authored-by: Jason Stirnaman <jstirnaman@influxdata.com>
Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com>
Co-authored-by: jstirnaman <212227+jstirnaman@users.noreply.github.com>
* chore(spell-check): improve Vale spell checking for code comments
- Enable spell checking in code blocks by removing ~code exclusion from InfluxDataDocs Spelling rule
- Add comprehensive filters to avoid false positives from:
- camelCase and snake_case identifiers
- hexadecimal values and version numbers
- URL paths and URLs
- shortcode attributes
- code punctuation and symbols
- Fix spelling errors in code comments:
- "includimng" → "including" in 3 files
- "continously" → "continuously" in 5 files
This allows Vale to catch typos and spelling mistakes in code comments and documentation strings while avoiding false positives on actual code syntax and identifiers.
https://claude.ai/code/session_01TYWR7wb5MUkzjVsK4mtNjA
* chore(spell-check): add codespell configuration
- Add .codespellrc with 'clear' builtin dictionary to catch unambiguous spelling errors
- Add .codespellignore for technical terms and product names
- Configuration prevents false positives while enabling comprehensive spell checking for code comments
This enables codespell for automated spell checking via CI/CD, complementing the Vale configuration.
https://claude.ai/code/session_01TYWR7wb5MUkzjVsK4mtNjA
* fix(reference): correct 6 spelling errors across reference pages
Fixes identified through codespell analysis of reference documentation:
- influxdb/v2/config-options: useable → usable
- influxdb3/clustered/release-notes: provid → provide, certficate → certificate, memeory → memory, Geting → Getting
- kapacitor/v1/release-notes: auotmatically → automatically
Note: "invokable" is excluded as a branding term; "fpr" in GPG code is a legitimate field name.
https://claude.ai/code/session_01TYWR7wb5MUkzjVsK4mtNjA
* docs(spell-check): improve validation rules and documentation
Core improvements to spell-checking rules:
CODESPELL CONFIGURATION (.codespellrc):
- Use only 'clear' dictionary (removes 'rare', 'code' for fewer false positives)
- Add 'api-docs' to skip list (avoids false positives in generated specs)
- Add 'invokable' to ignore list (product branding term)
- Remove unclear 'tage' term
- Add documentation explaining each setting
VALE CONFIGURATION (Spelling.yml):
- Expand scope documentation explaining why code blocks are included
- Add comprehensive comments for each filter pattern
- Include examples for each regex pattern
- Document limitations and edge cases
- Organize filters by category (branding, URLs, code, literals)
NEW DOCUMENTATION (SPELL-CHECK.md):
- Tool comparison and use cases
- Detailed explanation of each filter pattern
- Troubleshooting guide
- Running instructions for both tools
- Contribution guidelines
- References and related files
These changes ensure:
✅ Minimal false positives (8.5-9/10)
✅ Strong true positive detection (8.5-9.5/10)
✅ Clear, maintainable rules
✅ Easy to extend and modify
✅ Well-documented for team use
https://claude.ai/code/session_01TYWR7wb5MUkzjVsK4mtNjA
* refactor(spell-check): consolidate ignore words to single source
Consolidate duplicate ignored words configuration:
BEFORE:
- .codespellignore: AKS, aks, invokable, tagE
- .codespellrc: inline ignore-words-list = aks,invokable
- Problem: Maintenance duplication and confusion
AFTER:
- .codespellignore: authoritative list (aks, AKS, invokable with docs)
- .codespellrc: references .codespellignore via 'ignore-words' config
- Benefit: Single source of truth, cleaner configuration
Also removed:
- 'tagE' from ignore list (unclear, possibly a typo)
- Inline word list from .codespellrc (now external)
This follows codespell best practices and reduces maintenance burden.
https://claude.ai/code/session_01TYWR7wb5MUkzjVsK4mtNjA
* docs(spell-check): correct version number regex documentation
Fix incorrect limitation note in SPELL-CHECK.md:
The regex pattern \d+\.\d+(?:\.\d+)* actually DOES match
4-part versions like 1.2.3.4 (and any number of parts).
The (?:\.\d+)* part is a repeating group that matches
zero or more additional dot-separated version components.
Updated documentation to clarify that the pattern handles
any number of version parts, not just 2-3 part versions.
https://claude.ai/code/session_01TYWR7wb5MUkzjVsK4mtNjA
* Update SPELL-CHECK.md
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
* fix(spell-check): tighten camelCase regex to prevent false negatives
The original camelCase regex pattern was too permissive and would match
any word starting with lowercase (e.g., 'provide', 'database', 'variable'),
causing Vale to skip spell-checking normal prose words.
Improved pattern now requires:
- camelCase: at least one uppercase letter (myVariable ✓, provide ✗)
- snake_case: at least one underscore (my_variable ✓, variable ✗)
This prevents common prose words from being silently excluded from
spell-checking while still properly handling code identifiers.
Combined pattern: (?:_*[a-z]+(?:[A-Z][a-z0-9]*)+(?:[A-Z][a-zA-Z0-9]*)*|[a-z_][a-z0-9]*_[a-z0-9_]*)
Updated files:
- SPELL-CHECK.md: Added detailed explanation and test cases
- .ci/vale/styles/InfluxDataDocs/Spelling.yml: Updated filter pattern
https://claude.ai/code/session_01TYWR7wb5MUkzjVsK4mtNjA
* fix(spell-check): expand URL scheme pattern to match documentation comment
The comment said the URL filter ignores 'http, https, ftp, etc.' but the
regex only matched http and https. Expanded the pattern to match:
- http/https (as before)
- ftp/ftps (file transfer protocols)
- ssh (secure shell)
- file (local file URLs)
Updated pattern: (?:https?|ftp|ftps|ssh|file)://[^\s\)\]>"]+
This ensures the filter matches the documented behavior.
https://claude.ai/code/session_01TYWR7wb5MUkzjVsK4mtNjA
---------
Co-authored-by: Claude <noreply@anthropic.com>
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
* feat(ci): add ShellCheck linter to Lefthook pre-commit hooks
Add shell script linting via ShellCheck to catch common bugs (unquoted
variables, missing error handling, POSIX portability issues) before commit.
- Create `.shellcheckrc` with project-wide defaults (disable SC1091, SC2154)
- Create `.ci/shellcheck/shellcheck.sh` wrapper (local binary → Docker fallback)
- Add `shellcheck` pre-commit hook in `lefthook.yml` with glob/exclude patterns
Lints 23 infrastructure scripts (test, CI, deploy, helpers) while excluding
36 documentation example scripts in `shared/text/` and `layouts/shortcodes/`.
https://claude.ai/code/session_01X2gknrNvC5GGNExHU93FG6
* Update .shellcheckrc
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
* fix(ci): derive shellcheck minimum version from pinned version
Single source of truth — the minimum local version is now parsed from
SHELLCHECK_VERSION instead of being maintained as separate constants.
This prevents drift between the Docker image version and the local
binary requirement.
https://claude.ai/code/session_01X2gknrNvC5GGNExHU93FG6
* fix(ci): remove unused external-sources from .shellcheckrc
external-sources=true only takes effect with the -x flag, which the
wrapper doesn't pass. Source-following isn't needed for pre-commit
linting of individual files, and SC1091 is already disabled.
https://claude.ai/code/session_01X2gknrNvC5GGNExHU93FG6
---------
Co-authored-by: Claude <noreply@anthropic.com>
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>