Releases: dkattan/Copilot-Breakpoint-Debugger
0.0.59
0.0.58
Credit balance is too low
0.0.57
Credit balance is too low
0.0.56
Credit balance is too low
0.0.55
Credit balance is too low
0.0.54
Version 0.0.54
Summary
This release introduces stricter breakpoint requirements and implements automatic step-over behavior for capture actions to improve the reliability of variable inspection during debugging.
Breaking Changes
Mandatory variable field for all breakpoints
- All breakpoints now require a
variablefield (previouslyvariableFilterwas optional) - Use
variable: "variableName"to focus on a single exact variable name (case-sensitive) - Use
variable: "*"to opt into capture-all mode (auto-captures up tocaptureMaxVariableslocals) - This change affects both
startDebugSessionWithBreakpointsandresumeDebugSessiontools
Schema changes:
variableFilter(array) →variable(string)- Matching is now simple string equality instead of list membership
- No regex evaluation
New Features
Automatic step-over for capture actions
Capture actions (captureAndContinue and captureAndStopDebugging) now automatically perform a single step-over (F10 / DAP next) before capturing variables. This solves the common problem where breakpoints placed on assignment lines would capture pre-assignment values instead of the expected post-assignment values.
- Applied when
autoStepOveris not explicitly set - Can be disabled by setting
autoStepOver: false - Enhanced with explicit
autoStepOver: truefor before/after variable snapshots
Improvements
- Updated all documentation, examples, and test fixtures to reflect the new
variablefield requirement - Improved error messages to guide users toward the correct schema
- Enhanced configuration descriptions to clarify capture-all mode (
variable: "*") - Updated VS Code quick-insert command to prompt for single variable name or
*
Documentation Updates
- README.md: Updated breakpoint examples and usage instructions
- agents.md: Revised variable filtering semantics documentation
- package.json: Updated tool descriptions and schema definitions for both Language Model Tools
Technical Details
Modified files include:
src/BreakpointDefinition.ts: Updated interface with newvariablefieldsrc/session.ts: Implemented default step-over logic for capture actionssrc/extension.ts: Updated VS Code command prompts for new schemasrc/stopInfoMarkdown.ts: Updated variable display logicsrc/resumeDebugSessionTool.ts: Applied new schema to resume operations- All test files updated to use new
variablefield instead ofvariableFilter
0.0.53
Version 0.0.53
Summary
This release focuses on improving test stability and code organization for the Debug Adapter Protocol (DAP) integration tests and demo workflows. The changes refactor DAP helper utilities into a shared module, add comprehensive unit tests for serverReady functionality, and enhance the Playwright-based demo specification with better accessibility-based selectors and error diagnostics.
Improvements
-
Code Organization: Refactored DAP type definitions and helper functions into a new
startDebuggerToolTypes.tsmodule, improving code reusability and separation of concerns (src/debugUtils.ts:1, src/startDebuggerToolTypes.ts:1) -
Enhanced DAP Helpers: Improved the
DAPHelpersclass with better timeout handling and more robust request management across debug sessions (src/debugUtils.ts:49-77) -
Test Stability: Enhanced Playwright demo test with accessibility-based element selection, better error diagnostics including visible element dumps, and more reliable UI interaction patterns (playwright/demo.spec.ts:17-87, playwright/demo.spec.ts:167-186)
-
Demo Configuration: Added
demoRequest.jsonconfiguration file to standardize demo parameters and enable sharing between unit tests and Playwright integration tests (demoRequest.json:1-24) -
Test Coverage: Added comprehensive unit tests for serverReady functionality covering breakpoint triggers, pattern matching, HTTP requests, shell commands, and the full demo scenario workflow (src/test/serverReady.test.ts:1-394)
-
Updated Demo Video: Refreshed the demo video to reflect current functionality and stabilized test behaviors (docs/pw-videos/demo.mp4)
-
Test Infrastructure: Updated vscode-test-playwright submodule and adjusted Playwright configuration for better test isolation (external/vscode-test-playwright, playwright.config.ts:1)
Testing
- Added 4 new comprehensive integration tests for serverReady breakpoint scenarios
- Tests now validate breakpoint triggers, pattern matching, HTTP requests, and variable capture
- Improved test timeout handling for CI/CD environments (240 second timeout for complex debug sessions)
- Enhanced test server with marker comments for reliable line-based breakpoint targeting
Developer Experience
- Better separation of type definitions makes the codebase easier to navigate
- Shared demo configuration enables consistent testing across different test frameworks
- Improved error messages and diagnostics for DAP request timeouts
0.0.52
Summary
This release focuses on improving the development workflow by decoupling the Playwright demo from the standard unit test suite, making the test process more reliable and flexible across different platforms.
Improvements
Testing & CI
- Split Playwright demo from unit tests: The Playwright demo spec is now executed separately via
npm run demo:pwinstead of being embedded innpm pretest. This separation improves reliability on macOS and Windows by avoiding display server requirements during standard unit tests. - Removed
run-demo-pw-smoke.cjsscript: Eliminated the 69-line wrapper script that handled cross-platform xvfb execution. Developers now runxvfb-run -a npm run demo:pwdirectly on Linux when needed. - Simplified CI workflow: Removed
PW_VSCODE_TEST_SKIP_SMOKEenvironment variable from GitHub Actions, as the demo is now handled by a dedicated job.
Documentation
- Updated README: Enhanced testing section with clear instructions for running the Playwright demo separately, including Linux virtual display setup with
xvfb-run. - Updated agents.md: Added documentation for the new
npm run demo:pwcommand.
Configuration
- Updated .gitignore: Added
.gh-artifacts/to ignore downloaded GitHub Actions artifacts in local development. - Test workspace configuration: Increased
copilot-debugger.entryTimeoutSecondsto 60 seconds in the test workspace.
Breaking Changes
None.
0.0.51
Based on my analysis of the commits and code changes between version 0.0.50 and 0.0.51, here are the release notes:
Release 0.0.51
Summary
This release focuses on comprehensive CI/CD improvements, enhanced testing infrastructure with Playwright integration, better DAP (Debug Adapter Protocol) tracing, and improved Windows compatibility. The release includes significant refinements to the development workflow with video demonstration capabilities, automated testing, and better diagnostic output for debugging issues.
New Features
-
Playwright Integration: Added complete Playwright testing infrastructure with demo video generation capabilities
- New
playwright.config.tsand demo test specs for UI-driven testing - Automated demo video generation in CI pipeline with artifacts uploaded as MP4
- PowerShell script (
Test-Playwright.ps1) for local Playwright testing - Git submodules for
playwright-test-videosandvscode-test-playwright
- New
-
Enhanced DAP Tracing: Significantly improved Debug Adapter Protocol message visibility
- Quieter, more intelligent trace output that filters noisy internal events
- Better formatting of DAP messages for debugging timeout issues
- De-duplication of DAP logs to prevent spam from multiple hook invocations
-
Local Development with Act: Added support for running GitHub Actions workflows locally using
act- New
.actrcconfiguration for GitHub Actions local testing - Documentation in
docs/act.mdfor local CI workflow execution - Act artifact debug workflow for troubleshooting
- New
Improvements
-
CI/CD Enhancements:
- Stabilized Playwright smoke tests across platforms (Linux, macOS, Windows)
- Run Linux CI jobs in Playwright Docker images for consistency
- Fixed DBus environment configuration for headless VS Code testing
- Increased CI timeouts to reduce flakiness
- Enhanced CI handshake tracing for better debugging
- Auto Release workflow now includes proper apt dependencies
-
Windows Compatibility:
- Fixed Windows-specific issues with NODE_OPTIONS environment variable handling
- Made npm scripts Windows-safe across the board
- Improved task output capture for Windows environments
-
Build and Error Handling:
- Unified JSON formatters across the codebase
- Enhanced task command error handling for build failures
- New test workspace for build error scenarios (stdout and stderr testing)
-
Test Infrastructure:
- Stabilized serverReady vscodeCommand tests for deterministic behavior
- Fixed test issue where capture breakpoints could incorrectly become logpoints
- Improved task output capture stability
- Better CI submodule initialization (only required submodules in PRs)
-
Code Quality:
- Applied extensive ESLint autofixes and formatting improvements
- Removed deprecated
inspectJustificationparameter (simplified API) - Better code style consistency across TypeScript source files
- Added pre-commit git hooks for code quality enforcement
-
Documentation:
- New
agents.mdfile documenting agent workflows - Enhanced README with demo video integration
- Comprehensive act.md documentation for local CI testing
- New
Bug Fixes
-
CI Fixes:
- Fixed Auto Release apt dependencies preventing proper workflow execution
- Corrected Playwright demo workspace path to be portable across environments
- Fixed issue where vscode-test-playwright needed to be built before typecheck
- Resolved npm script compatibility issues on Windows
-
Test Fixes:
- Prevented capture breakpoints from incorrectly becoming logpoints during tests
- Made serverReady vscodeCommand test deterministic to avoid race conditions
- Stabilized task output capture to prevent test flakiness
Breaking Changes
None
Technical Details
Changed Files: 85 files modified
- Major CI/CD improvements in
.github/workflows/ci.yml(+434 lines) - New Playwright infrastructure (config, tests, scripts)
- Enhanced session management in
src/session.ts(+2,236 lines modified) - Improved DAP event handling in
src/events.ts(+813 lines) - Better logging in
src/logger.ts(+135 lines) - Dependencies updated in
package-lock.json(3,090 lines modified)
Platform Support:
- Linux (fully tested in CI)
- macOS (Playwright smoke tests skipped in CI, manual testing supported)
- Windows (Playwright smoke tests skipped in CI, manual testing supported with fixed NODE_OPTIONS handling)
Development Workflow:
- Added support for local GitHub Actions testing with
act - Enhanced video generation pipeline for demos
- Improved git submodule management for external dependencies
0.0.50
Summary
This release contains documentation improvements to the release notes generation process.
Improvements
- Enhanced the release notes generation workflow instructions to provide clearer guidance on analyzing code changes and managing context window limitations
No breaking changes in this release.