Skip to content

Latest commit

 

History

History
203 lines (158 loc) · 5.83 KB

File metadata and controls

203 lines (158 loc) · 5.83 KB

v1.3.0 - Upstream Sync Automation

Release Date: 2025-12-14 Theme: Automated CyberChef Upstream Synchronization Effort Level: XL (3-4 weeks)

Overview

Version 1.3.0 introduces comprehensive automation for synchronizing with upstream CyberChef releases, eliminating manual intervention for most updates and providing robust validation and rollback mechanisms.

New Features

1. Upstream Release Monitoring (P0)

  • Workflow: .github/workflows/upstream-monitor.yml
  • Schedule: Every 6 hours
  • Functionality:
    • Automatically detects new CyberChef releases
    • Creates GitHub issues for review
    • Prevents duplicate notifications
    • Provides actionable next steps

2. Automated Upstream Sync (P0)

  • Workflow: .github/workflows/upstream-sync.yml
  • Triggers: Manual (workflow_dispatch) or issue label (upstream-sync-approved)
  • Functionality:
    • Merges upstream CyberChef changes
    • Regenerates OperationConfig.json
    • Applies Node 22 compatibility patches
    • Runs comprehensive test suite
    • Updates baseline for regression detection
    • Creates pull request with detailed changes
    • Handles merge conflicts gracefully

3. MCP Validation Test Suite (P0)

  • Framework: Vitest
  • Location: tests/mcp/validation.test.mjs
  • Coverage:
    • 465 tool registrations (463 operations + 2 meta-tools)
    • Meta-tool functionality (bake, search)
    • 50+ sample operation executions
    • Schema validation for all operations
    • Breaking change detection
    • Performance benchmarks
    • Error handling validation

4. Tool Baseline Tracking (P0)

  • File: tests/mcp/baseline.json
  • Purpose: Regression detection across upstream updates
  • Contents:
    • Complete tool inventory
    • Operation metadata
    • Argument schemas
    • Version tracking

5. Emergency Rollback Mechanism (P1)

  • Workflow: .github/workflows/rollback.yml
  • Trigger: Manual only (workflow_dispatch)
  • Functionality:
    • Rolls back to specified commit
    • Regenerates configurations
    • Runs full test suite
    • Creates rollback PR
    • Provides detailed rollback summary

Technical Implementation

New Files Created

  1. .github/workflows/upstream-monitor.yml - Release monitoring
  2. .github/workflows/upstream-sync.yml - Synchronization workflow
  3. .github/workflows/rollback.yml - Emergency rollback
  4. tests/mcp/validation.test.mjs - Comprehensive test suite
  5. tests/mcp/baseline.json - Tool inventory baseline
  6. vitest.config.mjs - Vitest configuration

Dependencies Added

  • vitest ^1.0.0 - Modern testing framework for MCP validation

Scripts Added

  • npm run test:mcp - Run MCP validation test suite

Upgrade Instructions

For Docker Users

docker pull ghcr.io/doublegate/cyberchef-mcp_v1:v1.3.0

For Local Development

git pull origin master
npm install  # Installs vitest
npm run test:mcp  # Verify MCP tests pass

Breaking Changes

None. This release is fully backward compatible.

Workflow Usage

Monitoring New Releases

The upstream-monitor workflow runs automatically every 6 hours. Manual trigger:

gh workflow run upstream-monitor.yml

Approving Automatic Sync

When a new release is detected, review the issue and approve:

gh issue edit <issue-number> --add-label upstream-sync-approved

Or manually trigger sync:

gh workflow run upstream-sync.yml
gh workflow run upstream-sync.yml -f target_version=v10.20.0

Emergency Rollback

gh workflow run rollback.yml -f reason="Critical bug in v10.20.0"
gh workflow run rollback.yml -f reason="Performance regression" -f target_commit=abc1234

Testing

Test Coverage

  • Total Tests: 20+ test suites
  • Tool Validation: 465 tools
  • Operation Execution: 50+ operations
  • Performance: 10 operations in <1 second

Run Tests Locally

# MCP validation tests
npm run test:mcp

# Existing test suites
npm test
npm run testui

Success Metrics

All v1.3.0 success criteria achieved:

  • ✅ GitHub Actions configured for CyberChef monitoring
  • ✅ Automated PR creation on upstream release
  • ✅ OperationConfig.json regeneration in CI
  • ✅ Comprehensive test suite validates all tools
  • ✅ Rollback mechanism tested and documented
  • ✅ Zero manual intervention for patch/minor updates

Documentation Updates

  • Updated CHANGELOG.md with v1.3.0 changes
  • Updated README.md version references
  • Updated docs/user_guide.md with new workflows
  • Updated SECURITY.md supported versions
  • Updated docs/planning/ROADMAP.md to mark v1.3.0 completed
  • Updated docs/planning/tasks.md with completed items
  • Updated docs/planning/UPSTREAM-SYNC-STRATEGY.md status

Security Considerations

All GitHub Actions workflows follow security best practices:

  • Environment variables used for all dynamic inputs
  • No direct interpolation of user-controlled data
  • Proper input sanitization
  • Token permissions scoped to minimum required

Known Issues

None at release time.

Future Enhancements

See docs/planning/ROADMAP.md for v1.4.0+ planning:

  • Enhanced operation categorization
  • Batch operation support
  • Streaming for large outputs
  • Custom recipe persistence

Contributors

  • Implementation: DoubleGate
  • Testing: Automated CI/CD
  • Upstream: GCHQ CyberChef Team

Links

Acknowledgments

Special thanks to the GCHQ CyberChef team for maintaining the excellent upstream project that makes this MCP server possible.


Full Changelog: v1.2.6...v1.3.0