Skip to content

feat: add GitHub Copilot SDK backend - #3136

Open
c-mongan wants to merge 29 commits into
Graphify-Labs:v8from
c-mongan:feat/copilot-sdk-backend-v8
Open

feat: add GitHub Copilot SDK backend#3136
c-mongan wants to merge 29 commits into
Graphify-Labs:v8from
c-mongan:feat/copilot-sdk-backend-v8

Conversation

@c-mongan

Copy link
Copy Markdown

Summary

  • add copilot-sdk as an opt-in Graphify LLM backend using the official GitHub Copilot SDK
  • reuse the existing Copilot login while disabling tools, MCP, skills, memory, hooks, Git operations, telemetry, remote sessions, and persistent session storage
  • support semantic extraction, labels, deduplication, PR analysis, and inline image attachments
  • keep Python 3.10 support for Graphify core; the optional Copilot extra is gated to Python 3.11+
  • replace the conflicted implementation in feat: add GitHub Copilot SDK backend with CLI fallback #2392 with a clean branch based directly on current v8

Verification

  • focused Copilot suite: 200 passed, 1 expected opt-in skip
  • Python 3.10 compatibility suite: 31 passed, 2 expected skips
  • full suite: 5,120 passed and 13 skipped in the restricted run; all 8 DNS/Unix-socket tests blocked by that sandbox passed when rerun with the required access
  • authenticated live Copilot extraction: passed against a synthetic one-line fixture
  • official SDK runtime download/start/stop: passed on macOS; CI now runs the same smoke on Ubuntu, macOS, and Windows
  • generated skill artifacts: 134 matched
  • Ruff: passed
  • focused Pyright: 0 errors
  • uv lock --check: passed
  • source distribution and wheel build: passed
  • isolated graphifyy[copilot] wheel install, CLI load, and SDK import: passed

Safety notes

  • each request uses a fresh isolated client, session, and temporary workspace
  • permission requests are rejected and no host file paths are sent for image attachments
  • post-dispatch failures are not replayed because the remote outcome can be unknown
  • cleanup and runtime setup have bounded behavior, and source is not dispatched after the request deadline

Supersedes #2392.

Loading
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant