Commit Graph

8 Commits (c99c2e87ed8d0ea7c9ae4040716ecdfc6bafdcf7)

Author SHA1 Message Date
Jason Stirnaman 6d5f88c9e0
chore: add hosted influxdb-docs MCP server to .mcp.json (#6914)
* 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>
2026-03-10 14:08:33 -05:00
Jason Stirnaman b951d3c27a
feat(ci): add doc review pipeline with auto-labeling and Copilot review (#6890)
* 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>
2026-03-09 20:22:31 -05:00
Copilot 7a1ceb439f
Configure GitHub Copilot instructions and navigation system (#6628)
* Initial plan

* feat: enhance Copilot instructions with style guidelines and navigation

Co-authored-by: jstirnaman <212227+jstirnaman@users.noreply.github.com>

* fix: correct .claude/agents link in INSTRUCTIONS.md

Co-authored-by: jstirnaman <212227+jstirnaman@users.noreply.github.com>

* refactor: remove duplication and app-specific references from instructions

- Simplified INSTRUCTIONS.md from 118 to 76 lines by removing duplicate content
- Changed "Claude Desktop app" to "Claude with MCP" throughout
- Removed file pattern table (already in copilot-instructions.md)
- Removed specialist agents table (already in copilot-instructions.md)
- Removed general documentation table (already in copilot-instructions.md)
- INSTRUCTIONS.md now serves as simple navigation guide without duplication

Co-authored-by: jstirnaman <212227+jstirnaman@users.noreply.github.com>

* Update README.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>
2025-12-15 12:43:34 -06:00
Jason Stirnaman 189d86fcda chore(instructions): restructure contributing instructions for humans and assistants 2025-10-08 15:48:44 -05:00
Jason Stirnaman 3e4864a836 Instructions files cleanup:
- Follow Copilot guidelines for naming instructions files according to the directory they apply to
- Copy instructions files as CLAUDE.md to the relevant directory.
- Update placeholder instructions
- Optimize Copilot instructions
- Remove Claude instructions and reference the Copilot instructions file instead

TODO: update the commit hook script to correctly generate and place the files.
2025-09-23 10:37:10 -05:00
Jason Stirnaman 6a4e8827eb feat(testing): add link validation automation and improvements
- Add GitHub Actions for automated link validation on PRs
- Implement incremental validation with caching (30-day TTL, configurable)
- Add matrix generator for parallel validation strategy
- Create comprehensive TESTING.md documentation
- Add cache manager with configurable TTL via env var or CLI
- Implement smart link extraction and validation
- Add PR comment generator for broken link reports
- Update Cypress tests to use incremental validation
- Consolidate testing docs from CONTRIBUTING.md to TESTING.md

Key improvements:
- Cache-aware validation only checks changed content
- Parallel execution for large changesets
- Detailed PR comments with broken link reports
- Support for LINK_CACHE_TTL_DAYS env var
- Local testing with yarn test:links
- Reduced false positives through intelligent caching
2025-07-28 16:24:24 -05:00
Jason Stirnaman 57cc50ef5a chore(qol): Add instructions imports to CLAUDE.md 2025-07-10 11:25:28 -05:00
Jason Stirnaman 38b08ecc51 chore(qol): Add claude instructions file for the project
The CLAUDE.md file successfully references 5 key files, all of which exist and are accessible:

  1. @README → README.md - Project overview and setup
  2. @package.json → package.json - NPM scripts and dependencies
  3. @.github/copilot-instructions.md → Main style guidelines and product info
  4. @.github/instructions/contributing.instructions.md → Detailed contributing guide
  5. @.github/instructions/influxdb3-code-placeholders.instructions.md → InfluxDB 3 specific
  guidelines

  📊 Current Structure Analysis

  The CLAUDE.md file acts as a minimal index that:
  - Delegates detailed instructions to other files
  - Uses Claude's @ symbol notation for file references
  - Provides a clear hierarchy of information

  💡 Key Instructions Coverage

  Through the linked files, Claude has access to:
  - Product documentation paths for all InfluxDB versions
  - Style guidelines following Google Developer Documentation standards
  - Shortcode usage with extensive examples
  - Testing procedures including pytest-codeblocks
  - Development workflows with Docker and Node.js
  - Placeholder conventions for code examples
  - Frontmatter requirements for Hugo pages
2025-06-25 14:46:18 -05:00