Commit Graph

46 Commits (garylfowler-patch-5)

Author SHA1 Message Date
Jason Stirnaman 89739cd792 chore(ci): temporarily disable link validation workflow
- Add if: false conditions to all jobs to prevent execution
- Add disabled-check job to indicate the workflow is disabled
- Preserves original conditions in comments for easy re-enabling

To re-enable: Remove the 'if: false' conditions and disabled-check job
2025-07-29 23:09:00 -05:00
Jason Stirnaman 0c59fdd7c0 fix(ci): improve link validation test robustness and reduce noise
- Fix Test Setup Validation to handle edge cases without false failures
- Remove unnecessary Cypress artifacts upload (screenshots/videos)
- Reduce verbose logging while maintaining debugging capability
- Add clear success/failure reporting with actionable messages
- Improve handling of empty test subjects and fallback scenarios

The test now only fails for genuine setup issues, not configuration
edge cases like empty subject lists or cache optimization scenarios.
2025-07-28 23:10:21 -05:00
Jason Stirnaman 02efdb262b fix(ci): resolve link validation workflow false failures
- Fix GitHub Actions exit logic to only fail when broken links exist
- Improve Cypress test error handling with robust fallback mechanism
- Enhance Test Setup Validation to handle cache scenarios correctly

The workflow was incorrectly failing when generating success comments
with cache statistics, treating any comment generation as broken links.
Now properly distinguishes between success messages and actual failures.
2025-07-28 22:39:40 -05:00
Jason Stirnaman 660170435f ci: convert cypress scripts to CommonJS:
Verification Results

  - Direct module loading:  Works perfectly
  - Incremental validation:  Processes files correctly

  - Subprocess calls:  No EPIPE errors
  - Cache functionality:  Operating normally

  🔧 Technical Details

  - All modules now use CommonJS require() statements
  - Proper module.exports for compatibility
  - File extensions changed to .cjs to work with type:
   module in package.json
  - Maintained all existing functionality and error
  handling
2025-07-28 21:58:09 -05:00
Jason Stirnaman eac1acfdf8 ci: fix timeout command, set timeout options, enhance logging:
1. Timeout Handling: Proper timeout command syntax
  with specific timeout error detection
  2. Process Management: Environment variable for Hugo
   shutdown timeout
  3. Debugging: Enhanced log collection and artifact
  uploads
  4. Error Context: Better error messages that help
  identify root causes (EPIPE, timeouts, etc.)
  5. Resource Constraints: Memory limits and
  CI-specific optimizations
2025-07-28 21:03:31 -05:00
Jason Stirnaman da2ef476c1 Update .github/actions/validate-links/action.yml
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
2025-07-28 17:41:57 -05:00
Jason Stirnaman 215ecfb7f9 ci: improve Hugo process management to address EPIPE errors in Github Actions. - Proactive monitoring: Detecting when Hugo dies
during execution
    - Resource management: Reducing memory pressure in
  CI that causes process termination
    - Signal handling: Properly cleaning up processes
  on unexpected termination
    - Timeout adjustments: Giving more time for
  operations in CI environments
  3. The Test Setup Validation Failure: This was
  happening because the before() hook was failing when
  it couldn't communicate with a dead Hugo process.
  Your health monitoring will catch this earlier and
  provide better error messages.
2025-07-28 17:41:57 -05:00
Jason Stirnaman 891553ac33 Apply suggestions from code review
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
2025-07-28 16:24:24 -05:00
Jason Stirnaman 27c358037a fix: resolve code review findings:1. Fixed Cypress Race Condition: Moved logging
statements inside the async callback to ensure
  subjects array is populated before accessing its
   length
  2. Proper Async Handling: Used
  cy.wrap(Promise.all()) to handle multiple async
  Cypress tasks correctly
  3. Maintained Functionality: All existing GitHub
   Actions workflows and Cypress tests will
  continue to work

  Both naming conventions are appropriate for
  their use cases:
  - filePathToUrl: Transforms content file paths
  to URL paths
  - fileURLToPath: Converts ES module file URLs to
   file system paths
2025-07-28 16:24:24 -05:00
Jason Stirnaman d762e7800e fix: apply code review suggestions: High Priority Issues (Fixed):
1. Script execution detection in matrix-generator.js -
  Added fileURLToPath import and updated comparison
  2. Script execution detection in incremental-validator.js -
   Added fileURLToPath import and updated comparison
  3. Script execution detection in link-extractor.js - Added
  fileURLToPath import and updated comparison
  4. Script execution detection in comment-generator.js -
  Added fileURLToPath import and updated comparison

  Medium Priority Issues (Fixed):

  5. Extracted duplicated URL transformation logic - Created
  shared utility module and updated both files to use it
  6. Fixed cache key strategy - Updated GitHub workflow to
  use content-based hashing instead of base SHA

  Changes Made:

  - 4 JavaScript files: Updated with robust script execution
  detection using fileURLToPath
  - 1 utility module: Created
  /.github/scripts/utils/url-transformer.js for shared logic
  - 2 files: Updated to use the shared URL transformation
  utility
  - 1 workflow file: Improved cache key strategy for better
  cache hit rates
2025-07-28 16:24:24 -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 2ef37361a4 chore(qol): Add a tag to extract a CONTRIBUTING.md section into a separate file--for example, frontmatter-reference--and reduce the size of `contributing.instructions.md` 2025-07-10 08:52:22 -05:00
Jason Stirnaman fb743d70e3 chore(qol): Restructure CONTRIBUTING.md and improve agent instructions:
- control what content gets processed by adding the
  appropriate tags in CONTRIBUTING.md--for example:\

  - <!-- agent:instruct: essential --> - Keep all content
  - <!-- agent:instruct: condense --> - Summarize to key points
  - <!-- agent:instruct: remove --> - Skip entirely

- rename and move script to helper-scripts
2025-07-09 15:39:51 -05:00
Jason Stirnaman 105938f3aa Updated all README files in the
helper-scripts directory to:

  1. Main helper-scripts/README.md:
  Updated to describe
  generate-release-notes.js instead of
  the old bash script, including new
  configuration options and examples.
  2. helper-scripts/common/README.md:
  Updated to describe the JavaScript
  version with all its new features like
  configuration files,
  integrated/separated formats, and PR
  link options.
  3. helper-scripts/influxdb3-monolith/RE
  ADME.md: Completely updated to reflect
  the actual JavaScript scripts present
  (audit-cli-documentation.js and
  apply-cli-patches.js) instead of the
  non-existent bash scripts, updated
  prerequisites, examples, and workflow
  documentation.
2025-07-07 12:45:48 -05:00
Jason Stirnaman b20401bed4 chore(qol): Add Claude command to enhance the release notes generated by generate-release-notes.js.claude/commands/enhance-release-notes.md file
that provides Claude with detailed instructions
  for enhancing release notes.
The command includes specific transformation
  patterns for different components (database, CLI,
  API, etc.) and provides fallback templates for
  handling edge cases. It also includes error
  handling for common issues like rate limits and
  private repositories.
2025-07-07 12:13:37 -05:00
Jason Stirnaman a1d7a6399c chore(ci): Migrate generate-release-notes.sh to generate-release-notes.js. Update and cleanup workflows to use the new script and the Markdown-formatted output. 2025-07-07 12:13:37 -05:00
Jason Stirnaman 6506c5ff5d chore(ci): Cleanup JS 2025-07-07 12:13:36 -05:00
Jason Stirnaman 1cb33bfb13 chore(ci): Validate git tags for workflows: - Reusable utility for validating git tags across all
scripts
  - Supports special case for local development mode
  - Provides helpful error messages with available tags
  - Can be used as CLI tool or imported module
2025-07-07 12:13:36 -05:00
Jason Stirnaman fa069a77ea fix(ci): GitHub Actions:\Usage Examples
Now you can run specific audits directly:

  # Run specific audits
  gh act workflow_dispatch -j cli-3-enterprise
  gh act workflow_dispatch -j cli-3-core
  gh act workflow_dispatch -j api-3-cloud-dedicated

  # Run with custom version
  gh act workflow_dispatch -j cli-3-enterprise --input
  version=3.1.0

  # Run all audits (scheduled behavior)
  gh act workflow_dispatch
2025-07-07 12:13:36 -05:00
Jason Stirnaman 786f44cbe2 fix(ci): replace the problematic multi-line template
literal with an array of strings that gets joined with
  newlines, which avoids the YAML parsing issues with backticks
  and special characters.
2025-07-07 12:13:36 -05:00
Jason Stirnaman c74060210b chore(ci): Audit documentation for changes to influxdb3 CLI. Configures a GitHub release workflow to generate release notes and run the audit documentation script. 2025-07-07 12:13:36 -05:00
Jason Stirnaman 9a4721aa40 chore(ci): Automation scripts to compare influxdb3 CLI help to reference documentation and generate an audit report, runs influxdb3 core and enterprise using Docker, improves compose.yaml, restructures helper-scripts for different versions 2025-07-07 12:13:36 -05:00
Jason Stirnaman 75410f73fc chore: Modify AI instructions build script to optimize and reduce instructions size. Add test examples for later
chore: Modify AI instructions build script to optimize and reduce instructions size. Add test examples for later

chore: Modify AI instructions build script to optimize and reduce instructions size. Add test examples for later

fix(qol): Agent-agnostic contributing instructions

chore(test): Untrack influxdb3 data and plugins used in Docker configurations and testing

chore(test): Untrack influxdb3 data and plugins used in Docker configurations and testing

chore: Modify AI instructions build script to optimize and reduce instructions size. Add test examples for later
2025-07-01 12:45:51 -05:00
Jason Stirnaman 6dac142127 feat(influxdb3): Core and Ent: CLI reference for update database, update table (Ent3 only)- Add CLI reference for influxdb3 update database command and retention period option in Core and Ent
- 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
2025-06-27 12:49:39 -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
Jason Stirnaman 717ec5cd1d chore(js): Extract Hugo params imports to single-purpose modules, fix environment-specific Hugo configs, use Hugo environments instead of specifying the config file, configure source maps and ESM for development and testing 2025-06-09 16:46:26 -05:00
Jason Stirnaman 4973026adf Merge pull request #6079 from influxdata/chore-js-refactor-footer-scripts-modules
Chore: JavaScript: refactor footer scripts modules
2025-06-09 14:40:37 -05:00
Jason Stirnaman f819f48de9
Revert "Chore: JavaScript: refactor footer scripts modules" 2025-06-05 09:46:37 -05:00
Jason Stirnaman 1ff3d56497 chore(js): CONTRIBUTING.md: Add JavaScript development and debugging instructions 2025-06-04 16:34:37 -05:00
Jason Stirnaman 5da0442727 chore(qol): Build custom CoPilot instructions from CONTRIBUTING.md:
- Add a script and pre-commit command to generate a CoPilot instructions file  from CONTRIBUTING.md guidelines.
- Add custom instructions for CoPilot to help with influxdb3 placeholders
2025-05-27 10:33:12 -05:00
Jason Stirnaman 70cd745419 feat(cloud-dedicated): Admin UI: Account info, manage clusters, manage databases, manage tables, manage tokens. (Closes #6023)
- Admin UI: console URL
- Admin UI: add management features to existing admin pages
- Add a View account page for Admin UI
- Add screenshots
- Add Admin UI page to reference
- Alias reference/cli to influxctl until we expect more.
- Add key features list to influxctl reference

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
Co-authored-by: Scott Anderson <sanderson@users.noreply.github.com>
2025-05-06 14:05:12 -05:00
Jason Stirnaman c069ee74c3 chore(copilot): Update instructions. 2025-05-01 13:47:22 -05:00
Jason Stirnaman 68fea9828c chore(docs): Add documentation for code-placeholders and code-placeholder-key shortcodes. Instruct CoPilot to use CONTRIBUTING.md. 2025-04-21 09:57:26 -05:00
Jason Stirnaman 8bd5e92ada chore(copilot): add InfluxDB 3 Enterprise to products list 2025-04-03 11:51:16 -05:00
Jason Stirnaman 46c5061669 chore(ci): copilot-instructions 2025-03-21 17:41:50 -05:00
Jason Stirnaman e8dcb1c71a chore(ci): copilot-instructions: product version data 2025-03-21 11:24:37 -05:00
Jason Stirnaman 3d3de0fab0 chore(ci): copilot-instructions: specify content paths, related repositories, and additional guidelines 2025-03-21 11:21:36 -05:00
Jason Stirnaman a0dfc1c9be chore(ci): Add copilot custom instructions file based on DOC_GPT_PROFILE.md and CONTRIBUTING.md. 2025-03-21 10:15:39 -05:00
Scott Anderson 9640976ca0
Update new feature issue template 2022-04-14 16:08:59 -06:00
pierwill c846398a76
Remove checkbox for tests (#3371)
Tests are now required to pass
2021-11-08 11:16:28 -06:00
Scott Anderson 2eaed7a10e
Add new Github issue templates (#2195)
* Add new Github issue templates

* Rename bug_report.md to bug-report.md

* Apply suggestions from code review

Co-authored-by: pierwill <19642016+pierwill@users.noreply.github.com>

* addressed PR feedback

* small updates to issue templates

Co-authored-by: kelseiv <47797004+kelseiv@users.noreply.github.com>
Co-authored-by: pierwill <19642016+pierwill@users.noreply.github.com>
2021-02-19 13:34:24 -07:00
Scott Anderson 463321e118 updated note in issue template 2019-10-07 12:59:09 -06:00
Scott Anderson 347021e012 updated the issue template 2019-10-07 11:30:37 -06:00
Scott Anderson 330fc3fcd0 updated pull request template and contribution guidelines 2019-10-07 11:28:48 -06:00
Scott Anderson 9cb74f4b78 updated contribution guidelines 2019-10-07 11:22:54 -06:00
Scott Anderson ad81396b84 added license and issue template, moved security.md 2019-10-07 10:27:36 -06:00