GitHub Copilot study materials
GitHub Copilot study resources

GitHub Copilot: Understand GitHub Copilot Data and Architecture

GitHub Copilot · Work through your exam, one topic at a time.

All guide sections

Understand GitHub Copilot Data and Architecture

Domain 3 - Understand GitHub Copilot Data and Architecture

This domain tests the request lifecycle and the data-handling rules that differ by plan: where inference happens, what context is sent, which filters run, and what is retained.

Request lifecycle

  1. Context gathering (client): the IDE extension collects cursor position, file path and language, the current file, neighboring and open tabs, recently edited content, plus explicit references (#file, #selection) or repository index context.
  2. Prompt assembly: system instructions, gathered context, and your prompt are combined and sent over HTTPS to the Copilot service.
  3. Service-side checks: authentication and entitlement, prompt transformation, safety filtering.
  4. Inference: the prompt routes to a hosted model from an external provider; the model you get varies by plan and picker.
  5. Post-processing: response filtering, including the duplication detection / public code matching filter that compares output against a public code index.
  6. Delivery and telemetry: the suggestion returns to the IDE; acceptance and edit events are logged. Telemetry is a different bucket from prompt retention.

Data handling by plan

  • Copilot Free / Pro (individual): prompts and code snippets may be retained and used to improve models unless you opt out in personal settings.
  • Copilot Business / Enterprise: prompts and suggestions are not retained after the response and not used for training; stronger contractual protections and IP indemnity apply.
  • Code referencing can surface matches between a suggestion and public repositories when enabled.

Inference is remote: no model runs on the laptop, and Copilot does not work fully offline.

Worked example

A suggestion contains a helper function from a file the developer never opened this session. Explanation: context gathering includes open and neighboring tabs, and chat can draw on an indexed view of the repository; the model also carries parametric knowledge from training. That is why closing irrelevant tabs and referencing files explicitly measurably changes output. The distractor - “Copilot reads the whole repository on every keystroke” - is wrong on both mechanism and cost.

Traps

  • Assuming retention and training rules are identical across Free, Pro, Business, and Enterprise.
  • Conflating telemetry with retention of prompt content.
  • Treating the public code filter as a license determination rather than a match filter.
  • Assuming chat and inline completions share identical context or behavior.