Commit Graph

9744 Commits (jts-feat-llm-test-lambda)

Author SHA1 Message Date
Scott Anderson 7f7387ae9c feat(llms): LLM-friendly Markdown, ChatGPT and Claude links.
This enables LLM-friendly documentation for entire sections,
allowing users to copy complete documentation sections with a single click.

Lambda@Edge now generates .md files on-demand with:
- Evaluated Hugo shortcodes
- Proper YAML frontmatter with product metadata
- Clean markdown without UI elements
- Section aggregation (parent + children in single file)

The llms.txt files are now generated automatically during build from
content structure and product metadata in data/products.yml, eliminating
the need for hardcoded files and ensuring maintainability.

**Testing**:
- Automated markdown generation in test setup via cy.exec()
- Implement dynamic content validation that extracts HTML content and
  verifies it appears in markdown version

**Documentation**:
Documents LLM-friendly markdown generation

**Details**:
Add gzip decompression for S3 HTML files in Lambda markdown generator

HTML files stored in S3 are gzip-compressed but the Lambda was attempting
to parse compressed data as UTF-8, causing JSDOM to fail to find article
elements. This resulted in 404 errors for .md and .section.md requests.

- Add zlib gunzip decompression in s3-utils.js fetchHtmlFromS3()
- Detect gzip via ContentEncoding header or magic bytes (0x1f 0x8b)
- Add configurable DEBUG constant for verbose logging
- Add debug logging for buffer sizes and decompression in both files

The decompression adds ~1-5ms per request but is necessary to parse
HTML correctly. CloudFront caching minimizes Lambda invocations.

Await async markdown conversion functions

The convertToMarkdown and convertSectionToMarkdown functions are async
but weren't being awaited, causing the Lambda to return a Promise object
instead of a string. This resulted in CloudFront validation errors:
"The body is not a string, is not an object, or exceeds the maximum size"

**Troubleshooting**:

- Set DEBUG for troubleshooting in lambda
2025-11-21 13:49:36 -06:00
Bill O'Connell 67b05a4baf
fix: dedicated docs adjustments (#6562)
* docs: fix dedicated admin ui doc adjustments

* merge identity version under one heading

* docs: fix links in one location shortcode does not work

* chore: remove extra space from editor in admin ui access layout shortcode
2025-11-21 12:47:58 -06:00
Bill O'Connell c45a28b4c7
Merge pull request #6528 from influxdata/chore/update_admin_ui_images
chore: update Admin UI doc to reflect the new UI design
2025-11-21 10:53:36 -05:00
Bill O'Connell fd59414dc7
Merge branch 'master' into chore/update_admin_ui_images 2025-11-21 09:14:51 -05:00
Jason Stirnaman 8ca4f9d2bb
Chore: update dependencies and fix frontmatter (#6556)
* chore(deps): update @vvago/vale to v3.12.0

Updates Vale style linter wrapper from v3.4.2 to v3.12.0.
This eliminates all dependency warnings related to deprecated
packages (fstream, rimraf, glob, inflight) in the Vale
dependency tree.

* fix(frontmatter): resolve frontmatter violations revealed by updates

Fixes frontmatter validation errors revealed after dependency updates:
- Remove duplicate 'related' and 'aliases' fields
- Fix invalid alias formatting (missing space after dash)
- Consolidate frontmatter structure to match schema requirements

Files updated:
- content/influxdb/v1/guides/query_data.md
- content/influxdb/v2/reference/cli/influx/auth/_index.md
- content/influxdb/v2/reference/cli/influx/bucket/_index.md
- content/influxdb/v2/reference/cli/influxd/recovery/user/_index.md
- content/influxdb3/cloud-dedicated/process-data/visualize/chronograf.md
- content/influxdb3/cloud-serverless/process-data/visualize/chronograf.md
- content/influxdb3/clustered/install/set-up-cluster/configure-cluster/directly.md
- content/influxdb3/clustered/process-data/visualize/chronograf.md
- content/platform/monitoring/influxdata-platform/monitoring-dashboards.md
2025-11-20 15:27:40 -06:00
Bill O'Connell d14cc75096
Merge branch 'master' into chore/update_admin_ui_images 2025-11-20 13:59:55 -05:00
Jason Stirnaman 0a277ea9fd
hotfix(influxdb3): remove precision bug notes (#6560) 2025-11-20 10:52:55 -06:00
Scott Anderson 6e6155400a
chore: influxdb 3.7 notification (#6559) 2025-11-20 09:46:09 -07:00
Jason Stirnaman baadaeee15
feat(influxdb3): Update API docs for 3.7 release (#6558)
* chore: 3.7 update

* fix(influxdb3): influxdb3 3.7 release:

- Avoid use of "retention policy" except for the storage engine
- User guide: specific heading, active voice
- Use SOURCE

* feat(influxdb3): update API docs for 3.7 release

- Add cluster-uuid response header to all write endpoints
- Document multi-member gzip payload support in ContentEncoding
- Update API version to 3.7.0 for both Core and Enterprise
- Extract cluster-uuid header to reusable component

Changes for InfluxDB 3.7 release include:
- cluster-uuid header now included in all HTTP responses
- Multi-member gzip support per RFC 1952 for write endpoints
- Compatible with v1 and v2 write endpoints

* fix(influxdb3): remove precision bug note - fixed in 3.7

Removed outdated bug note about abbreviated precision values not working
with /api/v3/write_lp endpoint. Testing confirms all abbreviated values
(ns, ms, us, s) now work correctly in InfluxDB 3.7.

Tested precision values:
- ns (nanoseconds) 
- ms (milliseconds) 
- us (microseconds) 
- s (seconds) 

* docs(influxdb3): add precision bug fix to v3.6.0 release notes

Document that abbreviated precision values (ns, ms, us, s) were fixed
in v3.6.0 to work with /api/v3/write_lp endpoint.

The fix was implemented in commit 97dafa177c and included in v3.6.0 release.

---------

Co-authored-by: Peter Barnett <peter.barnett03@gmail.com>
2025-11-20 10:25:54 -06:00
Bill OConnell 4e71b963d6 docs: admin ui uses macro for intro 2025-11-20 11:13:10 -05:00
peterbarnett03 b54e5ae4cd
chore: 3.7 update (#6557)
* chore: 3.7 update

* fix(influxdb3): influxdb3 3.7 release:

- Avoid use of "retention policy" except for the storage engine
- User guide: specific heading, active voice
- Use SOURCE

---------

Co-authored-by: Jason Stirnaman <jstirnaman@influxdata.com>
2025-11-20 09:38:09 -06:00
Bill O'Connell 0726900784
Update content/influxdb3/cloud-dedicated/admin/tokens/database/list.md
Co-authored-by: ritwika314 <mim.ghosh@gmail.com>
2025-11-19 17:02:15 -05:00
Bill O'Connell fdc1ad2b74
Update content/influxdb3/cloud-dedicated/admin/monitor-your-cluster.md
Co-authored-by: ritwika314 <mim.ghosh@gmail.com>
2025-11-19 17:01:41 -05:00
Bill O'Connell 9dba2c8560
Update content/influxdb3/cloud-dedicated/admin/tokens/management/list.md
Co-authored-by: ritwika314 <mim.ghosh@gmail.com>
2025-11-19 17:01:32 -05:00
Bill O'Connell 09cd1f2fc7
Update content/influxdb3/cloud-dedicated/admin/tables/list.md
Co-authored-by: ritwika314 <mim.ghosh@gmail.com>
2025-11-19 17:01:23 -05:00
Bill O'Connell c7fc09b2e6
Update content/influxdb3/cloud-dedicated/admin/clusters/get.md
Co-authored-by: ritwika314 <mim.ghosh@gmail.com>
2025-11-19 17:01:15 -05:00
Bill O'Connell 480ee39829
Update content/influxdb3/cloud-dedicated/admin/account/_index.md
Co-authored-by: Scott Anderson <sanderson@users.noreply.github.com>
2025-11-19 17:00:34 -05:00
Bill O'Connell 36e8563884
Update content/influxdb3/cloud-dedicated/admin/account/_index.md
Co-authored-by: Scott Anderson <sanderson@users.noreply.github.com>
2025-11-19 17:00:23 -05:00
Bill O'Connell 2ff1b2484d
Update content/influxdb3/cloud-dedicated/admin/account/_index.md
Co-authored-by: Scott Anderson <sanderson@users.noreply.github.com>
2025-11-19 17:00:11 -05:00
Bill O'Connell bb434e7ba6
Update content/influxdb3/cloud-dedicated/admin/account/_index.md
Co-authored-by: Scott Anderson <sanderson@users.noreply.github.com>
2025-11-19 16:59:58 -05:00
Bill OConnell 365a1c1c23 docs: replace admin ui reference docs with inline docs 2025-11-19 16:13:36 -05:00
Scott Anderson fb4dcdef93
chore: update dedicated hard delete grace period (#6554) 2025-11-19 12:58:39 -07:00
caterryan c79272802b
Update odbc driver and powerbi docs (#6552)
* fix: update odbc driver

* chore: update powerbi docs

* chore: clarify odbc data source admin app

* Update content/shared/influxdb3-visualize/powerbi.md

Co-authored-by: Jason Stirnaman <jstirnaman@influxdata.com>

* Update content/shared/influxdb3-visualize/powerbi.md

Co-authored-by: Jason Stirnaman <jstirnaman@influxdata.com>

* Update content/shared/influxdb3-visualize/powerbi.md

Co-authored-by: Jason Stirnaman <jstirnaman@influxdata.com>

---------

Co-authored-by: rcater <rcater@influxdata.com>
Co-authored-by: Jason Stirnaman <jstirnaman@influxdata.com>
2025-11-19 11:22:41 -06:00
Jameelah Mercer 6372de7994
Merge pull request #6527 from influxdata/jmercer/complete-plugin-sync-fix
Implements end-to-end automation for syncing plugin docs from influxdb3_plugins
to docs-v2 with validation, transformation, and automated PR creation.
2025-11-18 17:21:21 -08:00
meelahme 0e66ac67ff add function to remove title headings 2025-11-18 17:02:52 -08:00
Jameelah Mercer ffef19f60b
Merge branch 'master' into jmercer/complete-plugin-sync-fix 2025-11-18 16:57:38 -08:00
Jason Stirnaman f084fe3a31
Ask AI group filters (#6529)
* feat(askai): add Kapa.ai source group filtering for InfluxDB v3

- Add ai_source_group_ids field to all InfluxDB v3 products in data/products.yml
- Add getProductSourceGroupIds() function to retrieve source group IDs from product data
- Enables filtered AI responses using Kapa source groups for documentation pages
- Follows existing pattern for dynamic product configuration
- Implement version-specific config support (__v1, __v2 suffixes)
- Append version hints to example questions for InfluxDB database products only
- Make example questions generic (remove product-specific names)
- Tools (Telegraf, Chronograf, Kapacitor, Flux, Explorer) display questions without version hints
- Pre-fills chat input with [version: /path/] for InfluxDB database products
- Users can easily edit or remove the pre-filled text
- Works for manual opens (Cmd+K) and programmatic opens
- Converts module to TypeScript

* refactor(ask-ai): change version format to 'My version: <product name>'

Use human-readable product names instead of URL paths for better UX.
Example: 'My version: InfluxDB 3 Core' instead of '[version: /influxdb3/core/]'

* fix(ask-ai): restore working Kapa.open() pre-fill implementation

- Replace textarea detection with direct Kapa.open() call
- Add Kapa preinitialization code
- Use click handler on .ask-ai-open button with capture phase
- Handle conversation reset event to re-fill version context
- Remove console logging for cleaner production code

* fix(ask-ai): remove parentheses from example questions for consistency

Make example question format match the pre-fill format:
- Before: 'question (My version: product)'
- After: 'question My version: product'

This ensures users don't think there's a difference between the two formats.

* fix(askai): add Explorer product mapping for Ask AI widget

- Add influxdb3_explorer mapping to getCurrentProductData()
- Add explorer context to getContext() function
- Ensures Explorer pages use correct ai_sample_questions from products.yml
- Reorder Explorer questions with 'install and run' first

This fixes the issue where Explorer Ask AI widget was showing wrong
example questions by properly loading the influxdb3_explorer config.

* test(page-context): add comprehensive e2e tests for product mappings

Add Cypress tests to validate page-context.js correctly identifies:
- Product context values for all InfluxDB products
- Product data from products.yml configuration
- Version information
- AI sample questions and source group IDs
- Placeholder host values

Tests cover:
- InfluxDB 3 (Core, Enterprise, Explorer, Cloud variants, Clustered)
- InfluxDB v2 and v1
- InfluxDB Cloud (TSM)
- Tools (Telegraf, Chronograf, Kapacitor, Flux)

Validates the fix for Explorer Ask AI showing correct example questions.

Related to #jts-askai-group-filters branch work.

* feat(test): add --no-mapping flag to e2e test runner

Allow running functionality tests without requiring content file paths.
The --no-mapping flag skips content-to-URL mapping, making it easier
to run tests that don't depend on specific content files.

Usage:
  # With content mapping (for content-specific tests)
  node run-e2e-specs.js content/influxdb3/core/_index.md

  # Without content mapping (for functionality tests)
  node run-e2e-specs.js --spec cypress/e2e/page-context.cy.js --no-mapping

Benefits:
- Simplifies running functionality tests like page-context.cy.js
- Reduces test startup time by skipping unnecessary file mapping
- Makes test commands clearer about their purpose

The page-context test was updated to work correctly with this flag.

* deps: update caniuse and related hook files

* test: Add a `--no-mapping` flag to run tests without specific content files (i.e., test contains all the URLs it needs)

* chore(ask-ai): Format example questions

* test(page-context): add comprehensive e2e tests for all products in products.yml

- Expanded test suite from 6 to 27 tests covering all products
- Added tests for InfluxDB 3 products (Explorer, Core, Enterprise, Cloud Serverless, Cloud Dedicated, Clustered)
- Added tests for InfluxDB v2 and Cloud (TSM)
- Added tests for InfluxDB v1 and Enterprise v1
- Added tests for other products (Telegraf, Chronograf, Kapacitor, Flux)
- Validates page mappings in page-context.js
- Validates AI sample questions configuration in products.yml
- All 27 tests passing

* fix(page-context): correct enterprise_influxdb URL pattern matching

- Changed pattern from /enterprise_v1/ to /enterprise_influxdb/
- Fixes Ask AI example questions not showing correctly for Enterprise v1
- Pattern now matches actual URL structure /enterprise_influxdb/v1/
- All 27 e2e tests passing

* test(page-context): add UI validation for Ask AI widget configuration

- Added 4 tests checking Kapa widget script data attributes
- Tests verify data-modal-example-questions contains correct product-specific questions
- Validates Explorer, Core, Enterprise, and Enterprise v1 configurations
- All 31 tests passing (27 existing + 4 new UI tests)

* feat(ask-ai): add help in Ask AI widget placeholder

- InfluxDB placeholder recommends specifying product and version
- Fix page-context.js to use products.influxdb_cloud instead of products.cloud
- Add UI tests verifying version-specific naming in Kapa widget script tags

* feat(ask-ai): Tailors placeholder for each version/product. Disables "Viewing <product>" in disclaimer note.
2025-11-18 16:43:02 -06:00
Jason Stirnaman 936913c3cb
refactor(influxdb3): consolidate ODBC content into Power BI documentation (#6546)
- Migrate comprehensive ODBC driver installation instructions to Power BI guide
  - Add Windows (PowerShell and Manual) installation steps with verification
  - Add macOS and Linux installation steps with configuration details
  - Include platform-specific verification procedures
- Enhance Power BI troubleshooting section with ODBC-specific guidance
  - Add driver not found troubleshooting for all platforms
  - Expand connection, authentication, and query error troubleshooting
  - Add query performance optimization recommendations
- Restructure Power BI documentation for clarity
  - Elevate ODBC driver installation to top-level section
  - Add explicit sequencing: install driver before connector
  - Improve section flow and subheading descriptiveness
- Remove standalone ODBC documentation pages
  - Delete shared ODBC guide and product-specific ODBC pages
  - Add aliases in Power BI frontmatter to redirect old ODBC URLs
- Apply changes across all InfluxDB 3 products:
  core, enterprise, cloud-dedicated, cloud-serverless, clustered
2025-11-17 22:28:46 -05:00
meelahme 6f59a22056 converting TOML links to internal section links 2025-11-17 14:03:41 -08:00
meelahme 3c30f19436 Disable screenshot generation for MVP 2025-11-17 13:30:01 -08:00
meelahme 9e35deabf9 removed clean title function and expanded abbreviations 2025-11-17 13:07:37 -08:00
Jameelah Mercer 95e2c7e379
Merge branch 'master' into jmercer/complete-plugin-sync-fix 2025-11-17 12:17:39 -08:00
meelahme 469be43495 update to transformContent function 2025-11-17 12:16:07 -08:00
meelahme 34f1b9833b add functino to clean up title formatting 2025-11-17 12:13:04 -08:00
Sven Rebhan b15807b3db
Telegraf v1.36.4 (#6543)
* Updating changelog

* Updating product version

* Updating plugins

---------

Co-authored-by: Jason Stirnaman <jstirnaman@influxdata.com>
2025-11-17 13:34:36 -06:00
meelahme fcda45422c fix: convert relative README links to full GitHub URLs 2025-11-17 11:12:07 -08:00
WeblWabl 5fefa8f741
feat: Document volume permissions for InfluxDB Docker (#6541)
* feat: Document volume permissions for InfluxDB Docker

Added instructions for setting volume permissions for InfluxDB Docker container.

* feat: Update information about macos

* feat: cleanup

* chore(v1): Distinguish and format Docker examples for Linux/Windows vs MacOS

---------

Co-authored-by: Jason Stirnaman <jstirnaman@influxdata.com>
2025-11-17 12:43:32 -06:00
meelahme e0d56ad41e fix: added npm install playwrite 2025-11-14 13:25:54 -08:00
meelahme 9d1ce68001 fix: correct relative path depth in docs_mapping.yaml 2025-11-14 12:27:43 -08:00
meelahme 930bb7091b fix: correct relative path to influxdb3_plugins dir 2025-11-14 10:53:57 -08:00
Jameelah Mercer 00d233af73
Merge branch 'master' into jmercer/complete-plugin-sync-fix 2025-11-14 10:42:41 -08:00
Jamie Strandboge 1075415cca
Merge pull request #6538 from influxdata/dependabot/npm_and_yarn/api-docs/js-yaml-4.1.1
chore(deps): bump js-yaml from 4.1.0 to 4.1.1 in /api-docs
2025-11-14 12:40:42 -06:00
meelahme e18e2a1daf debug: add file structure inspection to identify path issue 2025-11-14 10:28:02 -08:00
dependabot[bot] 07a299dc14
chore(deps): bump js-yaml from 4.1.0 to 4.1.1 in /api-docs
Bumps [js-yaml](https://github.com/nodeca/js-yaml) from 4.1.0 to 4.1.1.
- [Changelog](https://github.com/nodeca/js-yaml/blob/master/CHANGELOG.md)
- [Commits](https://github.com/nodeca/js-yaml/compare/4.1.0...4.1.1)

---
updated-dependencies:
- dependency-name: js-yaml
  dependency-version: 4.1.1
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-11-14 18:17:12 +00:00
Jamie Strandboge 780c3c578e
Merge pull request #6537 from influxdata/dependabot/npm_and_yarn/js-yaml-4.1.1
chore(deps): bump js-yaml from 4.1.0 to 4.1.1
2025-11-14 12:16:11 -06:00
dependabot[bot] 260284d625
chore(deps): bump js-yaml from 4.1.0 to 4.1.1
Bumps [js-yaml](https://github.com/nodeca/js-yaml) from 4.1.0 to 4.1.1.
- [Changelog](https://github.com/nodeca/js-yaml/blob/master/CHANGELOG.md)
- [Commits](https://github.com/nodeca/js-yaml/compare/4.1.0...4.1.1)

---
updated-dependencies:
- dependency-name: js-yaml
  dependency-version: 4.1.1
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-11-14 18:05:18 +00:00
caterryan 2d3768c30b
chore(influxdb3_commands) add `install` link to commands list (#6535)
Co-authored-by: rcater <rcater@influxdata.com>
2025-11-14 11:51:28 -06:00
Jason Stirnaman a576480246
test(e2e): add --no-mapping flag to e2e test runner (#6532)
Allow running functionality tests without requiring content file paths.
The --no-mapping flag skips content-to-URL mapping, making it easier
to run tests that don't depend on specific content files.

Usage:
  # With content mapping (for content-specific tests)
  node run-e2e-specs.js content/influxdb3/core/_index.md

  # Without content mapping (for functionality tests)
  node run-e2e-specs.js --spec cypress/e2e/page-context.cy.js --no-mapping

Benefits:
- Simplifies running functionality tests like page-context.cy.js
- Reduces test startup time by skipping unnecessary file mapping
- Makes test commands clearer about their purpose

The page-context test was updated to work correctly with this flag.
2025-11-13 13:37:01 -06:00
Jason Stirnaman 5a6459ba6f
fix(enterprise): comment out unsupported TOML configuration documenta… (#6530)
* fix(enterprise): comment out unsupported TOML configuration documentation

Users were getting errors when trying to use 'influxdb3 serve --config
ingester.toml' because TOML configuration file support was recently
removed from InfluxDB 3 Core and Enterprise.

This change comments out the "Use configuration files" subsection that
documented the --config flag and TOML file syntax. The "Configure using
environment variables" section remains as the supported method for
configuration.

Closes issue reported by user receiving "unexpected argument '--config'" error.

* Apply suggestions from code review
2025-11-12 14:11:19 -06:00
Beth Legesse 84b196b9ca fix: update View account information to use new design and info 2025-11-10 16:15:08 -06:00