Skip to content

Merge next into main for "next" release prep#260

Open
data-douser wants to merge 16 commits intomainfrom
dd/merge-next-into-main
Open

Merge next into main for "next" release prep#260
data-douser wants to merge 16 commits intomainfrom
dd/merge-next-into-main

Conversation

@data-douser
Copy link
Copy Markdown
Collaborator

Summary of Changes

Merges the changes from the next branch -- and from the series of v2.25.1-next.* and v2.25.2-next.* releases -- into the main branch in preparation for integration into the v2.25.3 release.

Outline of Changes

Client migration and documentation updates:

  • Removed outdated JavaScript client instructions (client/src/**/*.js) and replaced them with new Go client instructions for client/**/*.go, emphasizing modern Go practices, TDD, and the use of the .tmp/ directory for temp files. [1] [2]
  • Updated all developer and agent skill documentation to reference the Go client (gh-ql-mcp-client) for integration testing, tool validation, and manual testing, replacing references to the old JS client. [1] [2] [3]

Continuous Integration and workflow improvements:

  • Renamed and restructured the CI workflow file to build-and-test-client.yml, splitting out build/lint/unit test steps for the Go client and updating integration test jobs to use the Go client, not the JS client. [1] [2] [3]
  • Updated workflow triggers and job dependencies to ensure proper sequencing and coverage for both push and pull request events.

Testing and integration test process:

  • Updated integration test instructions and prompts to use the Go client and new Makefile targets, clarifying how to run tests in both HTTP and stdio modes.
  • Changed integration test requirements to use make -C client test and test-config.json for test arguments, aligning with the Go client's test runner.

Dependency and environment updates:

  • Upgraded the devcontainer Node image to version 25 and the default Go version to 1.25 for consistency with the updated toolchain. [1] [2]

Minor documentation fixes:

  • Updated references to workflow job names and file paths for clarity and accuracy.

These changes collectively ensure that all development, testing, and CI processes use the new Go-based client, streamline developer onboarding, and improve reliability and consistency across environments.

data-douser and others added 13 commits April 15, 2026 16:21
…th Go implementation (#223)

* Initial plan

* Phase 1: Update documentation and GitHub config for Go-based client

Update all .github config files, documentation, workflows, and package.json
to reflect the intended Go-based ql-mcp-client architecture. No Go source
code is introduced — only documentation, config, and a stub Makefile.

- Create .github/instructions/client_go.instructions.md for Go conventions
- Update client_src_js.instructions.md to Go guidance
- Update client_integration_tests.instructions.md for Go test runner
- Update agent files to reference Go client instead of JS client
- Update ql-mcp-server-fix-build-and-test.prompt.md with make commands
- Add actions/setup-go to CI workflows
- Rewrite client/README.md and CLI-USAGE.md for gh-ql-mcp-client
- Update client/integration-tests/README.md for Go test runner
- Update docs/testing.md to describe Go MCP client
- Update package.json to use make -C client targets, remove client workspace
- Add stub client/Makefile with go.mod-conditional targets

Agent-Logs-Url: https://github.com/advanced-security/codeql-development-mcp-server/sessions/f5595942-48af-4847-8d28-fba34a17ba76

Co-authored-by: data-douser <70299490+data-douser@users.noreply.github.com>

* Update client/.gitignore for go ql-mcp-client

* Replace JavaScript client with Go binary and integration test runner (#221)

* Initial plan

* Replace JavaScript client with Go binary and integration test runner

- Remove client/src/ directory with all JS files (ql-mcp-client.js and 14 library modules)
- Remove client/package.json and client/eslint.config.mjs
- Add Go module (go.mod, go.sum) with cobra and mcp-go dependencies
- Add CLI entry point (main.go) and root Cobra command (cmd/root.go)
- Add CLI helpers (cmd/helpers.go) and integration test command (cmd/integration_tests.go)
- Add MCP client library (internal/mcp/client.go) with stdio and HTTP transport
- Add integration test runner (internal/testing/runner.go, params.go)
- Add comprehensive unit tests for all packages (16 tests, all passing)
- Update Makefile to remove go.mod guards (Go source now available)
- Update run-integration-tests.sh to build and use Go binary
- Update test-config.json logDir paths for custom_log_directory tests

Agent-Logs-Url: https://github.com/advanced-security/codeql-development-mcp-server/sessions/8c006672-cf7e-4045-9488-f6d97fafe2f2

Co-authored-by: data-douser <70299490+data-douser@users.noreply.github.com>

* Final validation complete

Agent-Logs-Url: https://github.com/advanced-security/codeql-development-mcp-server/sessions/8c006672-cf7e-4045-9488-f6d97fafe2f2

Co-authored-by: data-douser <70299490+data-douser@users.noreply.github.com>

* Revert unrelated go.mod changes in server/ql/go/tools/test/

Agent-Logs-Url: https://github.com/advanced-security/codeql-development-mcp-server/sessions/8c006672-cf7e-4045-9488-f6d97fafe2f2

Co-authored-by: data-douser <70299490+data-douser@users.noreply.github.com>

* Replace actual repo reference with placeholder in helpers_test.go

Agent-Logs-Url: https://github.com/advanced-security/codeql-development-mcp-server/sessions/86c1cb26-2977-409f-ace0-aabc4fc9cee7

Co-authored-by: data-douser <70299490+data-douser@users.noreply.github.com>

---------

Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com>
Co-authored-by: data-douser <70299490+data-douser@users.noreply.github.com>

* Apply suggestions from code review

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
Signed-off-by: Nathan Randall <70299490+data-douser@users.noreply.github.com>

* Remove client_src_js.instructions.md

* Apply suggestions from code review

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
Signed-off-by: Nathan Randall <70299490+data-douser@users.noreply.github.com>

* Address PR review feedback

* Apply suggestions from code review

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
Signed-off-by: Nathan Randall <70299490+data-douser@users.noreply.github.com>

* Improve ql-mcp-client from PR feedback

* Fix "--no-install-packs" in client integration test runner

* Fixes for failing client integration tests

* Fix extension mcp-tool-e2e.integration.test.ts

* More fixes for PR review feedback

* Fix client-integration-tests.yml Windows job

* More fixes for PR review feedback

* Updates for compatibility with main-merged PRs

* Fix client-integration-tests for extract dbs

* Address PR review feedback: fix Close() kill, remove enableAnnotationTools setting, record skipped results, fix schema default, clarify changelog

Agent-Logs-Url: https://github.com/advanced-security/codeql-development-mcp-server/sessions/a90a53a5-b2ad-4775-8b61-f11d16b33749

Co-authored-by: data-douser <70299490+data-douser@users.noreply.github.com>

* Revert test-integration to skip pack install by default, add test-integration-with-packs for explicit pack setup

Agent-Logs-Url: https://github.com/advanced-security/codeql-development-mcp-server/sessions/a90a53a5-b2ad-4775-8b61-f11d16b33749

Co-authored-by: data-douser <70299490+data-douser@users.noreply.github.com>

* Address review thread 4071470992: path check, changelog, timeout help, error message, cross-platform test, output path sandboxing

Agent-Logs-Url: https://github.com/advanced-security/codeql-development-mcp-server/sessions/0666a5dd-b460-4e6e-9749-f729c46f0b62

Co-authored-by: data-douser <70299490+data-douser@users.noreply.github.com>

---------

Signed-off-by: Nathan Randall <70299490+data-douser@users.noreply.github.com>
Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com>
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
…rompt` subcommands with shared primitives library (#233)
…ments, `gh` extension packaging (#234)

* Initial plan

* feat: Phase 3(B) — Code Scanning lifecycle, SARIF enhancements, and gh extension packaging

Add Code Scanning subcommands (list-analyses, list-alerts, download-analysis) and SARIF
parent subcommand to gh-ql-mcp-client. Add GitHub REST API client using go-gh for Code
Scanning endpoints. Enhance SARIF tools with fingerprint overlap mode, sarif_store for
session cache ingest, and sarif_deduplicate_rules for cross-file rule deduplication.
Add comprehensive tests for all new functionality.

Agent-Logs-Url: https://github.com/advanced-security/codeql-development-mcp-server/sessions/3c78cc29-8614-47cd-ad94-534e60fd6ab1

Co-authored-by: data-douser <70299490+data-douser@users.noreply.github.com>

* Fix hanging client int test for windows stdio

* fix: address review feedback — sarifClient race, dedup formula comment, handler tests

1. Fix data race in sarifClient() by replacing nil-check with sync.Once
2. Add clarifying comment on overlap scoring formula in sarif_deduplicate_rules
3. Add 3 handler-level tests for sarif_deduplicate_rules (overlap detection,
   no-overlap, missing input error)

Agent-Logs-Url: https://github.com/advanced-security/codeql-development-mcp-server/sessions/7aefb02d-b415-49ed-87da-f03d9f4a2b3d

Co-authored-by: data-douser <70299490+data-douser@users.noreply.github.com>

* fix: address automated review feedback — error message, fingerprint response, dedup perf, changelog links

1. loadSarif error message updated to source-agnostic "No SARIF source provided"
2. sarif_compare_alerts response now includes fingerprintMatch/matchedFingerprints in fingerprint mode
3. sarif_deduplicate_rules precomputes per-rule extracted results before pairwise loop
4. CHANGELOG entries corrected: partialFingerprints → fingerprint, added PR #234 links

Agent-Logs-Url: https://github.com/advanced-security/codeql-development-mcp-server/sessions/85233122-a70c-49a6-a247-fb01f4da6946

Co-authored-by: data-douser <70299490+data-douser@users.noreply.github.com>

* fix: use actual sarifPath in cache databasePath, stable queryName for sarif_store

Stores the actual SARIF file path (or 'inline') in databasePath and uses
a stable 'sarif_store' as queryName, instead of overloading both with the
user-provided label. Rebuilt server dist.

Agent-Logs-Url: https://github.com/advanced-security/codeql-development-mcp-server/sessions/81b6fb38-6dd7-45f0-ac7f-d8b5e1625eb9

Co-authored-by: data-douser <70299490+data-douser@users.noreply.github.com>

---------

Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com>
Co-authored-by: data-douser <70299490+data-douser@users.noreply.github.com>
Co-authored-by: Nathan Randall <data-douser@github.com>
…ault with `.dil` file persistence (#235)

* Initial plan

* feat: enable --dump-dil by default for codeql_query_compile tool

Add dump-dil parameter to the codeql_query_compile tool inputSchema
and inject --dump-dil by default in registerCLITool handler unless
explicitly disabled via dump-dil: false or --no-dump-dil in
additionalArgs.

Includes server unit tests and client integration test improvements.

Agent-Logs-Url: https://github.com/advanced-security/codeql-development-mcp-server/sessions/7a489b70-8f73-406f-9a75-e8a15951cde2

Co-authored-by: data-douser <70299490+data-douser@users.noreply.github.com>

* feat: persist DIL output to a .dil file for codeql_query_compile

After successful compilation with --dump-dil, extract the DIL content
from stdout and save it to a dedicated .dil file in a log directory.
The file path is appended to the tool response.

- Add logDir parameter to codeql_query_compile tool
- Create log directory and write .dil file post-execution
- Add server unit tests for DIL file persistence
- Update integration test assertions to verify DIL file output

Agent-Logs-Url: https://github.com/advanced-security/codeql-development-mcp-server/sessions/7ba868e5-1215-4130-bc06-10dfb15ebf14

Co-authored-by: data-douser <70299490+data-douser@users.noreply.github.com>

* Address PR #234 review feedback

* Fix compile_query client integration test

* Address PR #235 review feedback

Address PR #235 review comments for codeql_query_compile DIL persistence:

- Reorder path imports alphabetically (basename, delimiter, dirname, ...)
- Update logDir description to match pattern used by query-run, test-run,
  and database-analyze (mentions CODEQL_QUERY_LOG_DIR and default path)
- Defer compile log directory creation to post-execution so failed
  compilations do not leave empty directories behind
- Make DIL file test hermetic by controlling CODEQL_QUERY_LOG_DIR via a
  test-scoped temp directory and restoring it in a finally block
- Add test verifying no empty log directory on compilation failure
- Add test verifying logDir description matches other CLI tools

* Regenerate package-lock.json after rebase

---------

Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com>
Co-authored-by: data-douser <70299490+data-douser@users.noreply.github.com>
Co-authored-by: Nathan Randall <data-douser@github.com>
…ing (#243)

* Fixes for codeql_query_compile dump-dil

Applies fixes and improves tests for codeql_query_compile MCP tool
related to --dump-dil versus --no-dump-dil arg handling.

* Address PR #243 review feedback

* Update server/test/src/lib/cli-tool-registry.test.ts

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
Signed-off-by: Nathan Randall <70299490+data-douser@users.noreply.github.com>

---------

Signed-off-by: Nathan Randall <70299490+data-douser@users.noreply.github.com>
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
* Upgrade NodeJS dependencies across workspaces

* Update extension "engines.vscode" to "^1.115.0"

Updates the minimum required "engines.vscode" version from
"^1.110.0" to "^1.115.0" in order to align with newer @types/vscode.

* Update minimum required NodeJS version to "^25.6.0"

* Regenerate package-lock.json to fix build

* Sync server/dist/

* Update extensions/vscode/README.md

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
Signed-off-by: Nathan Randall <70299490+data-douser@users.noreply.github.com>

* Update devcontainer.json for Node 24->25 upgrade

* Sync server/dist/**

* Update client/README.md Node.js prerequisite to v25.6.0

* Update CHANGELOG.md with dependency upgrades from #240

---------

Signed-off-by: Nathan Randall <70299490+data-douser@users.noreply.github.com>
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
…on tool (#236)

* Initial plan

* feat: add sarif_diff_by_commits tool for SARIF-to-git-diff correlation

Implements a new MCP tool that accepts a SARIF file path and git ref range,
partitions SARIF results into "new" vs "pre-existing" based on file-level
or line-level overlap with the git diff, and returns structured output for
triage workflows.

- Add diffSarifByCommits() pure utility in sarif-utils.ts with types
- Register sarif_diff_by_commits tool in sarif-tools.ts
- Add parseGitDiffOutput() helper for unified diff parsing
- Add 14 unit tests for diffSarifByCommits() utility
- Add 5 unit tests for sarif_diff_by_commits tool handler
- Update server-tools.md documentation
- Update tool registration count from 7 to 8

Closes #209

Agent-Logs-Url: https://github.com/advanced-security/codeql-development-mcp-server/sessions/8abb21bb-8877-4628-90da-36ffc8eeb742

Co-authored-by: data-douser <70299490+data-douser@users.noreply.github.com>

* feat: add client integration test for sarif_diff_by_commits

- Add sarif_diff_by_commits case to Go params.go test runner
- Add Go unit test for param resolution (params_test.go)
- Create file_level_classification integration test fixture with:
  - SARIF with 3 results across 2 rules
  - HEAD..HEAD ref range (empty diff → all pre-existing)
  - Assertions validating totalNew=0, totalPreExisting=3
  - before/after directories with SARIF and monitoring state

Agent-Logs-Url: https://github.com/advanced-security/codeql-development-mcp-server/sessions/edb1fae4-1f49-44f9-af31-71483b674da7

Co-authored-by: data-douser <70299490+data-douser@users.noreply.github.com>

* Apply lint/format & rebuild server/dist/

* [UPDATE PRIMITIVE] `sarif_diff_by_commits` — refRange validation, file path improvement, test mock fix (#242)

* Initial plan

* Fix PR #236 review comments: refRange validation, ClassifiedResult.file, test mocking

1. Validate refRange in sarif_diff_by_commits to reject strings starting
   with '-' or containing whitespace (prevents git option injection).

2. Use matchingDiff.path for ClassifiedResult.file when a diff match exists,
   falling back to normalizeUri(uri) only for unmatched results (produces
   repo-relative paths instead of long file:// URI paths).

3. Replace vi.doMock with module-scope vi.mock + shared mockExecuteCLICommand
   to prevent module-cache flakiness in sarif_diff_by_commits handler tests.

Agent-Logs-Url: https://github.com/advanced-security/codeql-development-mcp-server/sessions/1960960b-9658-44b5-87d8-bc29cc55a5ef

Co-authored-by: data-douser <70299490+data-douser@users.noreply.github.com>

---------

Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com>
Co-authored-by: data-douser <70299490+data-douser@users.noreply.github.com>

* Extend client tests -> sarif_diff_by_commits tool

* fix: address unresolved PR review comments

- Fix deletion-only hunk misclassification in line-level granularity by
  adding hunksParsed flag to DiffFileEntry; parseGitDiffOutput sets it
  when @@ headers are seen, and diffSarifByCommits uses it to distinguish
  "no hunk info" from "deletion-only" diffs
- Precompute normalized diff paths once before the results loop, removing
  the unused diffPathMatchesSarifUri wrapper
- Migrate all params_test.go from t.TempDir() to project-local .tmp/
- Add regression tests for deletion-only diffs in unit and handler tests

---------

Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com>
Co-authored-by: data-douser <70299490+data-douser@users.noreply.github.com>
Co-authored-by: Nathan Randall <data-douser@github.com>
… before running client integration tests (#248)

* refactor: rename client workflow and add build job

- Rename client-integration-tests.yml to build-and-test-client.yml to
  match existing patterns (build-and-test-extension.yml, build-server.yml)
- Add build-and-test-client job: fast Go build + unit tests + lint on
  ubuntu/windows (no CodeQL required), gates integration tests via needs:
- Simplify step names (drop verbose "MCP Integration Tests -" prefix)
- Add make -C client build to root npm run build script
- Update SKILL.md reference to new workflow filename

* Address PR review feedback

* Another fix for client build on windows
* Release v2.25.1-next.3: update versions to 2.25.1-next.3

* Upgrade Node dependencies for next branch

* Downgrade @types/node for extensions/vscode/package.json

* Sync package-lock.json to fix build-and-test

---------

Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
@data-douser data-douser self-assigned this Apr 20, 2026
Copilot AI review requested due to automatic review settings April 20, 2026 13:44
@data-douser data-douser added documentation Improvements or additions to documentation enhancement New feature or request dependencies Pull requests that update a dependency file server testing labels Apr 20, 2026
Comment thread client/go.mod
Comment thread client/go.mod
Comment thread client/go.mod
Comment thread client/go.mod
@github-actions
Copy link
Copy Markdown
Contributor

github-actions Bot commented Apr 20, 2026

Dependency Review

The following issues were found:

  • ✅ 0 vulnerable package(s)
  • ✅ 0 package(s) with incompatible licenses
  • ✅ 0 package(s) with invalid SPDX license definitions
  • ⚠️ 11 package(s) with unknown licenses.
  • ⚠️ 1 packages with OpenSSF Scorecard issues.

View full job summary

Copy link
Copy Markdown
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Merges next into main to prepare for the v2.25.3 release, including the migration from the legacy JS integration-test client to the new Go-based gh-ql-mcp-client, plus related CI/docs updates.

Changes:

  • Replace the legacy JS client with a Go CLI (gh-ql-mcp-client) and update integration test workflows/fixtures accordingly.
  • Enable annotation/audit/cache tools by default and update server + VS Code extension behavior/tests/docs to match.
  • Extend CodeQL CLI tooling (notably codeql_query_compile) and tighten log-directory validation.
Show a summary per file
File Description
server/test/src/tools/codeql/search-ql-code.test.ts Adds test coverage for runtime changes to scan-exclude env var handling.
server/test/src/tools/codeql/query-compile.test.ts Adds unit tests for codeql_query_compile tool definition/schema.
server/test/src/tools/cache-tools.test.ts Updates tool registration tests for always-on cache tools.
server/test/src/tools/audit-tools.test.ts Updates tool registration tests for always-on audit tools.
server/test/src/tools/annotation-tools.test.ts Updates tool registration tests for always-on annotation tools.
server/test/src/lib/log-directory-manager.test.ts Adds regression coverage for logDir base-prefix edge case.
server/src/types/monitoring.ts Changes enableAnnotationTools default + semantics comment.
server/src/tools/codeql/search-ql-code.ts Re-reads scan exclude dirs per call instead of caching at module load.
server/src/tools/codeql/query-compile.ts Adds dump-dil/logDir inputs and updates tool description/examples.
server/src/tools/cache-tools.ts Removes opt-in gating so cache tools are always registered.
server/src/tools/audit-tools.ts Removes opt-in gating so audit tools are always registered.
server/src/tools/annotation-tools.ts Removes opt-in gating so annotation tools are always registered.
server/src/resources/server-tools.md Updates SARIF tools table and workflow ordering.
server/src/lib/session-data-manager.ts Defaults ENABLE_ANNOTATION_TOOLS to true.
server/src/lib/log-directory-manager.ts Switches base-dir containment check to path.relative() logic.
server/src/lib/cli-tool-registry.ts Adds default --dump-dil behavior and persists DIL output for query compile.
server/scripts/extract-test-databases.sh Optimizes default DB extraction scope for integration tests.
server/ql/go/tools/test/PrintAST/go.mod Minor formatting adjustment.
server/ql/go/tools/test/CallGraphTo/go.mod Adds go directive.
server/ql/go/tools/test/CallGraphFromTo/go.mod Adds go directive.
server/ql/go/tools/test/CallGraphFrom/go.mod Adds go directive.
server/package.json Bumps minimum Node engine version.
server/README.md Updates Node prerequisite version.
package.json Removes client workspace; updates build/lint/test scripts to use make -C client.
extensions/vscode/test/suite/mcp-tool-e2e.integration.test.ts Updates expected default tool surface (annotation/audit/cache now present).
extensions/vscode/test/bridge/environment-builder.test.ts Updates env expectations after removing annotation-tools opt-in setting.
extensions/vscode/src/bridge/environment-builder.ts Stops setting ENABLE_ANNOTATION_TOOLS; keeps default storage location behavior.
extensions/vscode/package.json Bumps VS Code/Node engines; removes codeql-mcp.enableAnnotationTools setting.
extensions/vscode/README.md Updates VS Code and Node prerequisites.
docs/testing.md Updates testing-layer docs to use the Go client and new commands.
docs/public.md Updates Node minimum version in public docs.
docs/getting-started.md Updates Node minimum version.
client/src/lib/validate-source-root.js Removes legacy JS client implementation.
client/src/lib/test-logger.js Removes legacy JS client implementation.
client/src/lib/server-manager.js Removes legacy JS client implementation.
client/src/lib/resolve-all-queries.js Removes legacy JS client implementation.
client/src/lib/queries-filter-metadata.js Removes legacy JS client implementation.
client/src/lib/process-query-metadata.js Removes legacy JS client implementation.
client/src/lib/mcp-test-suite.js Removes legacy JS client implementation.
client/src/lib/mcp-client-utils.js Removes legacy JS client implementation.
client/src/lib/file-utils.js Removes legacy JS client implementation.
client/src/lib/commands/metadata-commands.js Removes legacy JS client implementation.
client/src/lib/commands/basic-commands.js Removes legacy JS client implementation.
client/src/lib/command-handler.js Removes legacy JS client implementation.
client/src/lib/cli-parser.js Removes legacy JS client implementation.
client/src/lib/aggregate-query-metadata.js Removes legacy JS client implementation.
client/scripts/start-server.sh Aligns server tmp base with Go client integration-test expectations.
client/scripts/run-integration-tests.sh Updates orchestration for Go client + new default tool surface.
client/package.json Removes JS client package manifest.
client/main.go Adds Go CLI entrypoint.
client/internal/mcp/client_test.go Adds unit tests for MCP client timeouts/close behavior.
client/internal/github/types.go Adds typed GitHub Code Scanning API models.
client/internal/github/client_test.go Adds tests for GitHub client helpers/types.
client/internal/github/client.go Adds GitHub Code Scanning REST client wrapper.
client/integration-tests/primitives/tools/sarif_diff_by_commits/line_level_classification/test-config.json Adds Go-runner style integration test config for sarif_diff_by_commits (line).
client/integration-tests/primitives/tools/sarif_diff_by_commits/line_level_classification/before/results.sarif Adds SARIF fixture for sarif_diff_by_commits integration test.
client/integration-tests/primitives/tools/sarif_diff_by_commits/line_level_classification/before/monitoring-state.json Adds monitoring-state fixture for test directory completeness.
client/integration-tests/primitives/tools/sarif_diff_by_commits/line_level_classification/after/results.sarif Adds expected post-state fixture.
client/integration-tests/primitives/tools/sarif_diff_by_commits/line_level_classification/after/monitoring-state.json Adds expected monitoring-state fixture.
client/integration-tests/primitives/tools/sarif_diff_by_commits/line_level_classification/README.md Documents the new integration test case.
client/integration-tests/primitives/tools/sarif_diff_by_commits/file_level_classification/test-config.json Adds Go-runner style integration test config for sarif_diff_by_commits (file).
client/integration-tests/primitives/tools/sarif_diff_by_commits/file_level_classification/before/results.sarif Adds SARIF fixture for file-level classification test.
client/integration-tests/primitives/tools/sarif_diff_by_commits/file_level_classification/before/monitoring-state.json Adds monitoring-state fixture.
client/integration-tests/primitives/tools/sarif_diff_by_commits/file_level_classification/after/results.sarif Adds expected post-state fixture.
client/integration-tests/primitives/tools/sarif_diff_by_commits/file_level_classification/after/monitoring-state.json Adds expected monitoring-state fixture.
client/integration-tests/primitives/tools/sarif_diff_by_commits/file_level_classification/README.md Documents the new integration test case.
client/integration-tests/primitives/tools/codeql_test_run/custom_log_directory/test-config.json Updates logDir usage to {{tmpdir}}-based location.
client/integration-tests/primitives/tools/codeql_query_run/custom_log_directory/test-config.json Updates logDir usage to {{tmpdir}}-based location.
client/integration-tests/primitives/tools/codeql_query_compile/compile_query/test-config.json Adds integration test for query compile + DIL file output.
client/integration-tests/primitives/tools/codeql_query_compile/compile_query/before/test_query.ql Removes unused fixture query file.
client/integration-tests/primitives/tools/codeql_query_compile/compile_query/before/codeql-pack.lock.yml Removes unused fixture lockfile.
client/integration-tests/primitives/tools/codeql_query_compile/compile_query/after/test_query.ql Removes unused expected fixture query file.
client/integration-tests/primitives/tools/codeql_bqrs_interpret/sarif_format/after/results.sarif Updates expected SARIF output fixture content.
client/integration-tests/README.md Updates integration-test contract to Go runner (test-config.json etc.).
client/go.mod Introduces Go module for the new client.
client/eslint.config.mjs Removes JS lint config for the removed JS client.
client/cmd/use_tool.go Adds use tool command to call a single MCP tool.
client/cmd/use_test.go Adds tests for use subcommands and arg parsing helpers.
client/cmd/use_resource.go Adds use resource command to read a resource URI.
client/cmd/use_prompt.go Adds use prompt command to get a prompt by name.
client/cmd/use.go Adds use command group and key=value arg parsing helpers.
client/cmd/sarif.go Adds sarif command group placeholder.
client/cmd/root_test.go Adds tests for root command help/version/default flags.
client/cmd/root.go Adds root Cobra command, global flags, and version.
client/cmd/list_test.go Adds tests ensuring list commands appear in help output.
client/cmd/list.go Adds list tools/prompts/resources commands (stdio/http).
client/cmd/integration_tests.go Adds integration-tests command that runs fixtures against MCP server.
client/cmd/helpers_test.go Adds tests for repo parsing helper.
client/cmd/helpers.go Adds owner/repo parsing helper.
client/cmd/code_scanning_list_analyses.go Adds Code Scanning analyses list command (GitHub REST).
client/cmd/code_scanning_list_alerts.go Adds Code Scanning alerts list command (GitHub REST).
client/cmd/code_scanning_download_analysis.go Adds analysis SARIF download command.
client/cmd/code_scanning.go Adds code-scanning command group.
client/README.md Rewrites client documentation for Go CLI usage and testing.
client/Makefile Adds build/lint/test/cross-compile targets for Go client.
client/.gitignore Updates ignore patterns for Go artifacts + legacy JS remnants.
README.md Updates repo-wide Node minimum version.
CHANGELOG.md Updates Unreleased notes for Go client + tool/default changes + version bumps.
.node-version Bumps Node version used by tooling/CI.
.github/workflows/lint-and-format.yml Adds Go setup step for lint/format workflow.
.github/skills/validate-ql-mcp-server-tools-queries/SKILL.md Updates workflow reference to renamed CI file.
.github/prompts/ql-mcp-server-fix-build-and-test.prompt.md Updates instructions to use Go client and new commands.
.github/instructions/client_src_js.instructions.md Removes JS client instructions.
.github/instructions/client_integration_tests.instructions.md Updates integration-test instructions for Go client runner.
.github/instructions/client_go.instructions.md Adds Go client instructions.
.github/agents/ql-mcp-tool-tester.md Updates agent guidance to use Go client.
.github/agents/ql-mcp-tool-developer.md Updates developer agent guidance to use Go client.
.github/agents/ql-agent-skills-developer.md Updates skill developer guide to use Go client list commands.
.github/actions/setup-codeql-environment/action.yml Updates default Go version for setup action.
.devcontainer/devcontainer.json Updates devcontainer Node image major version.

Copilot's findings

  • Files reviewed: 127/132 changed files
  • Comments generated: 8

Comment thread server/src/lib/log-directory-manager.ts
Comment thread server/test/src/lib/log-directory-manager.test.ts
Comment thread client/go.mod
Comment thread server/ql/go/tools/test/CallGraphTo/go.mod Outdated
Comment thread server/ql/go/tools/test/CallGraphFromTo/go.mod Outdated
Comment thread server/ql/go/tools/test/CallGraphFrom/go.mod Outdated
Comment thread client/README.md Outdated
Comment thread server/src/lib/cli-tool-registry.ts
Copilot AI review requested due to automatic review settings April 20, 2026 18:18
Copy link
Copy Markdown
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Copilot encountered an error and was unable to review this pull request. You can try again by re-requesting a review.

@data-douser data-douser requested a review from Copilot April 20, 2026 19:16
Copy link
Copy Markdown
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Copilot's findings

  • Files reviewed: 127/132 changed files
  • Comments generated: 0 new

@data-douser data-douser marked this pull request as ready for review April 21, 2026 12:09
@data-douser data-douser requested review from a team and enyil as code owners April 21, 2026 12:09
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

dependencies Pull requests that update a dependency file documentation Improvements or additions to documentation enhancement New feature or request server testing

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants