-
Notifications
You must be signed in to change notification settings - Fork 5
Closed
Description
Task Summary
Implement two workflow improvements for handling user scenarios:
- Establish a streamlined process to integrate user-uploaded scenarios (from OneDrive file request) into a centralized FIXS branch for debugging, while maintaining privacy between different users' scenarios
- Improve Visual Studio debugging workflow to eliminate manual
debuggerCommandArgumentschanges when testing different config.yaml files
Why is this needed?
Currently:
- Users upload proprietary scenario files via OneDrive file request portal, but there's no standardized git workflow for integrating these into FIXS for debugging
- Need to maintain privacy - users should not see other users' proprietary scenarios
- When debugging in Visual Studio, developers must manually update
debuggerCommandArgumentsin project settings each time they switch scenarios, which is tedious and error-prone
Scope of Work
Task 1: User scenario integration workflow
- Design a git branching strategy that allows private debugging of user scenarios
- Integrate with existing OneDrive file request portal: https://outlookuga-my.sharepoint.com/:f:/g/personal/ys04893_uga_edu/EmyW7v04lJhGh263oGvKDfwBMunLjrKmkOkgKDoGfshXVQ
- Explore solutions that maintain privacy between users while allowing maintainers to debug
- Document the workflow for receiving scenarios → creating branch → testing → resolving issues
Considerations to explore:
- Branch-per-user vs. branch-per-issue strategies
- Integration with issue tracking (e.g., issue #X corresponds to branch/directory)
- .gitignore patterns for proprietary files if needed
- Cleanup/archival process after issues are resolved
Task 2: Visual Studio debugging configuration
- Explore alternatives to manual
debuggerCommandArgumentsediting - Current pain point: Must manually change debugger arguments in VS project settings when switching between different config.yaml files
- Potential solutions to investigate:
- Hardcoded debug config path (e.g., always read from
tests/DebugScenario/config.yamlin VS debug mode) - VS launch profiles with pre-configured argument sets
- Environment variable-based config path resolution
- CMake/MSBuild property sheets for debug configurations
- Hardcoded debug config path (e.g., always read from
Components affected:
- Git repository structure and branching strategy
TrafficLayer/TrafficLayer/mainTrafficLayer.cpp- Config file loading logic- Visual Studio project files (
.vcxproj,.vcxproj.user) CommonLib/ConfigHelper.h/cpp- May need updates depending on solution- Documentation for maintainers on user scenario workflow
Environment (if version-specific)
- C++ compiler/version: Visual Studio 2022
- Git workflow/repository management
Risks or Dependencies
- Solution for Task 1 must not expose proprietary user data to other users
- Solution for Task 2 should not break existing build/test workflows
Additional Context (optional)
This is an exploratory maintenance task - solutions will be designed during implementation.
Related context:
- Bug report template already references OneDrive upload link for scenario submission
Open questions to resolve during implementation:
- How to structure git branches for private user scenarios?
- Best approach for VS debugging without manual config changes?
- Can we leverage VS 2022 features like launch.vs.json or similar?