* 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>
* fix(influxdb3): update to v3.8.2, add --tls-no-verify and release notes
- Update latest_patch to 3.8.2 for Core and Enterprise in products.yml
(3.8.1 was internal-only)
- Add --tls-no-verify and INFLUXDB3_TLS_NO_VERIFY env var to all
remaining CLI pages (query, write, show, enable, disable, update,
test, stop, create/delete cache and file_index commands)
- Add safety disclaimer: "Not recommended in production" per review
- Standardize --tls-ca description across all CLI pages
- Add v3.8.2 release notes for Core and Enterprise
Addresses review feedback from hiltontj and jstirnaman on PR #6774.
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
* chore(influxdb3): remove PachaTree references from documentation
Remove all PachaTree-related content that is not yet ready for
public documentation:
- Remove --use-pacha-tree from Enterprise serve CLI reference
- Replace influxdb3_pacha_tree log filter example with influxdb3_enterprise
- Remove influxdb3_pacha_tree from component names table
- Remove PachaTree storage engine entry from v3.7.0 release notes
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
* Update content/shared/v3-core-enterprise-release-notes/_index.md
* Apply suggestions from code review
---------
Co-authored-by: peterbarnett03 <peter.barnett03@gmail.com>
Co-authored-by: Claude Opus 4.6 <noreply@anthropic.com>
Co-authored-by: Scott Anderson <sanderson@users.noreply.github.com>
* fix(ent3): Add link target and experimental caution for PachaTree option.
* feat(ent3): add experimental badge for --use-pacha-tree
Document the experimental PachaTree storage engine option with a
styled badge and caution callout. Add reusable .badge.experimental
class using the existing caution color palette for light/dark modes.
- Add experimental badge to serve options table and config-options
- Add badge theme variables referencing $article-caution-* colors
- Use custom heading ID to preserve #use-pacha-tree anchor
Closes influxdata/dar/issues/587
- Wrong flag name corrected
- Added `--aws-default-region` flag with explanatory note
- Added `--plugin-dir` requirement documentation for process
* chore: Standard exclude comment format to denote flags, options, etc. that shouldn't be promoted in docs
* chore: exclude internal flags
* chore: Add docs:exclude comments for internal CLI flags, fix linting
- Note internal options that should be ignored by `docs audit` and authors.
- Remove character escaping from GitHub callouts and placeholders
Lint config changes:
- Add explicit exclude for content/**/*.md in lint-markdown-instructions
- Exclude all markdown files from Prettier formatting
Fixes issue where remark-lint was auto-formatting content files and
escaping special characters like [!Note] callouts and underscores.
* fix: cleanup escaping
* 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>
* Closes#6509
New Ent 3 CLI Commands
1. influxdb3 stop - Parent command for node lifecycle management
2. influxdb3 stop node - Stop a node in the Enterprise cluster and free up licensed cores
3. influxdb3 show nodes - Display information about nodes in the cluster
Files Created
Shared Content Files (only used by Ent3 for now):
- content/shared/influxdb3-cli/stop/_index.md - Stop command overview
- content/shared/influxdb3-cli/stop/node.md - Stop node command details with examples
- content/shared/influxdb3-cli/show/nodes.md - Show nodes command details with examples
Enterprise-Specific Frontmatter Files:
- content/influxdb3/enterprise/reference/cli/influxdb3/stop/_index.md
- content/influxdb3/enterprise/reference/cli/influxdb3/stop/node.md
- content/influxdb3/enterprise/reference/cli/influxdb3/show/nodes.md
Updated Files:
- Added stop command to the main influxdb3 CLI reference
- Added nodes subcommand to the show command reference
* Apply suggestion from @jstirnaman
* Apply suggestion from @jstirnaman
* docs(cli): fix global vs serve-specific flag documentation
- Remove --verbose from global flags (it's serve-specific)
- Document --num-io-threads as global-only flag
- Add clear examples showing correct flag positioning
- Update serve.md files with global flag usage notes
- Fix config-options.md to separate Core/Enterprise examples
Resolves incorrect CLI usage patterns that would cause errors.
Global flags must go before 'serve', serve-specific flags go after.
* docs(cli): remove Tokio runtime options from CLI index pages
- Remove detailed Tokio runtime options tables from CLI index pages
- Replace with simplified global options and link to config-options
- Add examples showing correct global flag positioning
- Fix --verbose usage to be serve-specific (after serve command)
- Add --num-io-threads example as global flag (before serve command)
These detailed options are now documented in config-options.md with
proper global vs serve-specific categorization.
- Adds /reference/internals/data-retention/ for data retention behavior and retention period details
- admin/databases and admin/tables:
- Adds examples for API and retention period
- Adds cautions and behavior notes for Core retention
- reference/cli/influxdb3: Adds usage examples and details
- Closes /influxdata/DAR/issues/548
- Updated /content/influxdb3/core/reference/cli/influxdb3/serve.md with 84 Core-compatible options
- Excluded 21 Enterprise-only options (like cluster-id, license-email, license-file, mode, compaction options, clustering options, etc.)
- All options now link to the Core configuration documentation
- Fixed the environment variables link to point to Core instead of Enterprise
2. Updated Enterprise serve.md Options Section
- Updated /content/influxdb3/enterprise/reference/cli/influxdb3/serve.md with all 105 configuration options
- Includes both Core and Enterprise-only options
- Maintains proper required option markers for node-id and cluster-id
- All options link to the Enterprise configuration documentation
3. Verified Content Consistency
- Core serve.md: Contains examples without cluster-id parameter (appropriate for Core)
- Enterprise serve.md: Contains examples with both node-id and cluster-id parameters, plus Enterprise-specific mode examples
- Both maintain consistent structure and troubleshooting sections appropriate to their respective products
- Environment variables sections correctly reference their respective configuration documentation
4. Allow Vale to accept "parquet" in lowercase when it appears in:
- Command-line options (e.g., --parquet-mem-cache-size)
- Hyphenated configuration names (e.g., parquet-mem-cache-prune-interval)
- Code blocks or inline code (e.g., `parquet`)
Key Changes Made:
- Core: Now includes 84 options (was 69), excluding Enterprise-only features
- Enterprise: Now includes all 105 options (was 78), comprehensive coverage
- Alphabetical ordering: Both option tables are now properly alphabetized
- New options added: Many previously missing options like buffer-mem-limit-mb, tcp-listener-file-path, telemetry-*, wal-replay-*, etc.
- Proper segregation: Core users no longer see Enterprise-only configuration options
- Vale allows Parquet or parquet in the appropriate context
Fix `create token --admin` name in frontmatter
Improve schedule trigger docs with more detail:
1. Core API documentation
(/api-docs/influxdb3/core/v3/ref.yml):
- Added missing duration units (weeks, months, years)
- Added "Maximum interval: 1 year"
2. Enterprise API documentation
(/api-docs/influxdb3/enterprise/v3/ref.yml):
- Added missing duration units (weeks, months, years)
- Added "Maximum interval: 1 year"
3. CLI reference documentation
(/content/shared/influxdb3-cli/create/trigger.md):
- Added complete list of supported duration units
- Added "Maximum interval is 1 year" note
All documentation now consistently reflects:
- The complete set of supported duration units for
every triggers
- The 1-year maximum limit for interval-based
scheduling
- Clear examples showing the syntax
- Add CLI ref for influxdb3 update table and ret. period option in Ent- Change volume source to /test for core and ent3 in compose.yaml
- Add alt_links instructions in CONTRIBUTING.md
* add new show system table commands
* Apply suggestions from code review
Co-authored-by: Jason Stirnaman <jstirnaman@influxdata.com>
* Update content/shared/influxdb3-cli/show/system/summary.md
Co-authored-by: Jason Stirnaman <jstirnaman@influxdata.com>
---------
Co-authored-by: Jason Stirnaman <jstirnaman@influxdata.com>