Join the discussion
Question 29/30
Case Study 2
Existing Environment
GitHub Environment
The GitHub environment contains the following:
- Three repositories named product-api, billing-service, and infra-terraform.
- Branch protection on the main branch in all repositories that requires at least one pull request review before merging
- GitHub Actions runners used across all workflows
- A GitHub team named SG_Dev that contains developers
- A GitHub team named SG_Review that contains senior engineers and a security team
- A .github/copilot-instructions.md file that includes general coding conventions for all features Agent environment The product-api repository uses a GitHub Copilot coding agent named agent1 that has the following configurations:
- No custom agent profile is defined.
- A Model Context Protocol (MCP) server named MCP1 is deployed to
https://mcp.litwareinc.internal and provides access to internal ticketing and deployment APIs.
MCP1 requires an API key for authentication.
A second Copilot coding agent named agent2 handles changes in infra-terraform and runs in parallel with agent1 when both agents have open assigned issues.
Copilot memory is NOT enabled for the organization.
Problem Statements
Litware identifies the following issues:
- During two recent sessions, agent1 accessed files in billing-service, which is outside the agent's intended scope.
- agent1 makes code changes immediately after receiving a task.
- A developer named Ben, who is on the SG_Dev team, reports that agent1 completed a session with a successful status and opened a pull request, but the pull request contains no file changes.
Other developers report this intermittently as well.
- Both agent1 and agent2 modified shared/config.yaml in a parallel test run, generating conflicting outputs.
agent1 consistently uses raw try-catch blocks for error handling, which violates the defined implementation guidelines of SG_Dev.
Requirements
Planned Changes
Litware plans to make the following changes:
- Ensure that agent1 can access all the tools in the environment.
- Provide product-api with specific instructions to agent1 without affecting Copilot Chat or Copilot code review.
- Configure MCP1 as a tool for agent1 by modifying the product-api repository MCP configuration.
- Ensure that Copilot retains details that it has learned and uses that knowledge for future work.
This must be applied to all licensed members of the organization.
Implementation guidelines
The development team at Litware identifies the following implementation guidelines:
- Agent workflows must be able to run in parallel.
- Application error handling must use the repository ErrorHandler class.
- agent1 and agent2 must run on isolated branches during parallel execution. File-level conflicts must be detected before merges, and both agents must be able to run concurrently.
Security requirements
Litware identifies the following security requirements:
- Only the members of SG_Review must be able to approve agent1 plan outputs.
- All API keys must be stored and accessed securely.
- The developers must NOT be able to self-approve.
Agent configuration

You need to troubleshoot the issue reported by Ben.
What should you review?
Existing Environment
GitHub Environment
The GitHub environment contains the following:
- Three repositories named product-api, billing-service, and infra-terraform.
- Branch protection on the main branch in all repositories that requires at least one pull request review before merging
- GitHub Actions runners used across all workflows
- A GitHub team named SG_Dev that contains developers
- A GitHub team named SG_Review that contains senior engineers and a security team
- A .github/copilot-instructions.md file that includes general coding conventions for all features Agent environment The product-api repository uses a GitHub Copilot coding agent named agent1 that has the following configurations:
- No custom agent profile is defined.
- A Model Context Protocol (MCP) server named MCP1 is deployed to
https://mcp.litwareinc.internal and provides access to internal ticketing and deployment APIs.
MCP1 requires an API key for authentication.
A second Copilot coding agent named agent2 handles changes in infra-terraform and runs in parallel with agent1 when both agents have open assigned issues.
Copilot memory is NOT enabled for the organization.
Problem Statements
Litware identifies the following issues:
- During two recent sessions, agent1 accessed files in billing-service, which is outside the agent's intended scope.
- agent1 makes code changes immediately after receiving a task.
- A developer named Ben, who is on the SG_Dev team, reports that agent1 completed a session with a successful status and opened a pull request, but the pull request contains no file changes.
Other developers report this intermittently as well.
- Both agent1 and agent2 modified shared/config.yaml in a parallel test run, generating conflicting outputs.
agent1 consistently uses raw try-catch blocks for error handling, which violates the defined implementation guidelines of SG_Dev.
Requirements
Planned Changes
Litware plans to make the following changes:
- Ensure that agent1 can access all the tools in the environment.
- Provide product-api with specific instructions to agent1 without affecting Copilot Chat or Copilot code review.
- Configure MCP1 as a tool for agent1 by modifying the product-api repository MCP configuration.
- Ensure that Copilot retains details that it has learned and uses that knowledge for future work.
This must be applied to all licensed members of the organization.
Implementation guidelines
The development team at Litware identifies the following implementation guidelines:
- Agent workflows must be able to run in parallel.
- Application error handling must use the repository ErrorHandler class.
- agent1 and agent2 must run on isolated branches during parallel execution. File-level conflicts must be detected before merges, and both agents must be able to run concurrently.
Security requirements
Litware identifies the following security requirements:
- Only the members of SG_Review must be able to approve agent1 plan outputs.
- All API keys must be stored and accessed securely.
- The developers must NOT be able to self-approve.
Agent configuration

You need to troubleshoot the issue reported by Ben.
What should you review?

