github-samples / github-samples/pets-workshop

GitHub security workshop: Add Copilot-assisted remediation and verification

Open
#273 1 comment 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

priority: P2
Dominant language
Python
Stars
80
Forks
161
Avg merge
31m
Merged PRs (30d)
1

Description

Goal

Teach a complete remediation loop: understand a CodeQL finding, use Copilot as an optional assistant, review the proposed fix, test it, and verify the security alert is resolved.

Scope

Use the alert introduced by the CodeQL lab. Prompts should ask Copilot to explain the weakness and propose a minimal secure change, but learners must validate the output rather than accept it automatically. Include an equivalent manual remediation path for learners without Copilot.

Acceptance criteria

  • The exercise provides model-agnostic example prompts for explanation, remediation, and test generation.
  • A manual secure implementation is available as a fallback.
  • Learners review the change against the CodeQL data flow and secure coding guidance.
  • Focused behavior tests cover the vulnerable path and pass after remediation.
  • Learners commit the fix to the lab branch and trigger code scanning again.
  • The pull request check passes and the original alert is shown as fixed or absent from the updated analysis.
  • The exercise states that Copilot output is untrusted until reviewed and tested.
  • No specific optional model or transient UI layout is required.

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start from the alert introduced by the existing CodeQL lab and trace the vulnerable path and its focused behavior tests. Add the Copilot-assisted and manual remediation guidance, then commit the fix to the lab branch, rerun code scanning, and confirm the pull request check passes and the original alert is fixed or absent.

Written by the indexing model from the issue text.

Assessment

Tech stack
github, github-actions, python
Domain
ci-cd, documentation, security, testing-qa
Issue type
Documentation
Difficulty
4/5
Estimated time
3-5 days
Activity status
Active
Clarity
Mostly clear
Newbie friendliness
68/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.