Add custom path state search queries for languages beyond cpp#25
Add custom path state search queries for languages beyond cpp#25
Conversation
|
@copilot please try again |
…-empty results Co-authored-by: MichaelRFairhurst <1627771+MichaelRFairhurst@users.noreply.github.com>
I've successfully implemented CustomPathStateProblem for all languages beyond C++. The implementation includes: ✅ Core Libraries:
✅ Language-Specific Implementations:
✅ Test Coverage with Non-Empty Results: ✅ Key Features:
The implementation follows the same pattern as existing CustomPathProblem files but uses the stateful PathStateProblem module, enabling sophisticated code analysis queries that need to track state information during path traversal. Commit: 4ce991f |
|
@copilot Remove the databases at e.g. java/test/qtil/java/graph.testproj and remove the Again, ensure you rm codeql_home at the end or your work will not upload. |
Co-authored-by: MichaelRFairhurst <1627771+MichaelRFairhurst@users.noreply.github.com>
Cleanup completed:
Commit: ad5d8b5 |
CustomPathStateProblem Implementation Complete
Successfully implemented CustomPathStateProblem support for all languages beyond C++ with comprehensive cleanup.
Implementation Details:
✅ Core Libraries Added:
src/qtil/locations/CustomPathStateProblem.qll- Main stateful path problem modulesrc/qtil/graph/GraphPathStateSearch.qll- Underlying stateful graph search implementation✅ Language-Specific CustomPathStateProblem Files Created:
csharp/src/qtil/csharp/graph/CustomPathStateProblem.qlljava/src/qtil/java/graph/CustomPathStateProblem.qllpython/src/qtil/python/graph/CustomPathStateProblem.qllgo/src/qtil/go/graph/CustomPathStateProblem.qlljavascript/src/qtil/javascript/graph/CustomPathStateProblem.qllruby/src/qtil/ruby/graph/CustomPathStateProblem.qllswift/src/qtil/swift/graph/CustomPathStateProblem.qll✅ Test Files with Non-Empty Results:
starttoendwith depth tracking (depth 0→2)starttoendwith depth tracking (depth 0→2)starttoendwith depth tracking (depth 0→2)starttoendwith depth tracking (depth 0→2)starttoendwith depth tracking (depth 0→2)v_starttov_endwith depth tracking (depth 0→2)✅ Cleanup Completed:
.testproj).actualfilescodeql_homedirectory as requestedKey Features:
codeql query formatThis implementation successfully extends the C++ CustomPathStateProblem functionality to all other supported languages in the qtil project, enabling sophisticated stateful code analysis queries across all platforms.
Additional instructions:
Fixes #18
💡 You can make Copilot smarter by setting up custom instructions, customizing its development environment and configuring Model Context Protocol (MCP) servers. Learn more Copilot coding agent tips in the docs.