Refactor engine handling behind a dedicated Engine trait and Copilot implementation#284
Conversation
Agent-Logs-Url: https://github.com/githubnext/ado-aw/sessions/c61d8cab-0ddf-4812-a240-f354ec476027 Co-authored-by: jamesadevine <4742697+jamesadevine@users.noreply.github.com>
Engine trait and Copilot implementation
|
/rust-review |
|
✅ Rust PR Reviewer completed successfully! |
🔍 Rust PR ReviewSummary: Looks good — clean, behavior-preserving refactoring with no new bugs or warnings. A couple of minor items worth noting. Findings
|
|
@copilot address feedback. |
Agent-Logs-Url: https://github.com/githubnext/ado-aw/sessions/77ecbe31-8f7e-41c8-b207-0e3fb219d26a Co-authored-by: jamesadevine <4742697+jamesadevine@users.noreply.github.com>
Addressed the Rust review feedback in commit Warning Firewall rules blocked me from connecting to one or more addresses (expand for details)I tried to connect to the following addresses, but was blocked by firewall rules:
If you need me to access, download, or install something from one of these locations, you can either:
|
The compiler currently supports only Copilot, but Copilot-specific behavior was spread across compile helpers. This change centralizes engine behavior behind a single abstraction so future engines can be added without further scattering engine-specific logic.
Engine abstraction
src/engine.rswith:EnginetraitGitHubCopilotCliEngineimplementationGITHUB_COPILOT_CLI_ENGINECall-site consolidation
generate_copilot_params(...)insrc/compile/common.rsnow delegates toEngine::generate_cli_params(...)generate_copilot_ado_env(...)now delegates toEngine::generate_agent_ado_env(...)Focused coverage for the new boundary
src/engine.rsfor:Warning
Firewall rules blocked me from connecting to one or more addresses (expand for details)
I tried to connect to the following addresses, but was blocked by firewall rules:
dev.azure.com/home/REDACTED/work/ado-aw/ado-aw/target/debug/deps/ado_aw-d5652daa30dfc52e /home/REDACTED/work/ado-aw/ado-aw/target/debug/deps/ado_aw-d5652daa30dfc52e /home/REDACTED/work/ado-aw/ado-aw/target/debug/deps/ado_aw_derive-200f38d8081bcd5a/home/REDACTED/work/ado-aw/ado-aw/target/debug/deps/compiler_tests-d461b4685455015d.1ket8gxh7k8pnfuz3gzg6yfzy.0m1oya8.rcgu.o /home/REDACTED/work/ado-aw/ado-aw/target/debug/deps/ado_aw_derive-200f38d8081bcd5a/home/REDACTED/work/ado-aw/ado-aw/target/debug/deps/compiler_tests-d461b4685455015d.1n00vrauz0tjinbjhe3cmnsgl.0m1oya8.rcgu.o /home/REDACTED/work/ado-aw/ado-aw/target/debug/deps/ado_aw_derive-200f38d8081bcd5a/home/REDACTED/work/ado-aw/ado-aw/target/debug/deps/compiler_tests-d461b4685455015d.1saraw1npdjk7qzm3nb8awhct.0m1oya8.rcgu.o /home/REDACTED/work/ado-aw/ado-aw/target/debug/deps/ado_aw_derive-200f38d8081bcd5a/home/REDACTED/work/ado-aw/ado-aw/target/debug/deps/compiler_tests-d461b4685455015d.20jt5s1ik51kdhvbu4hrvcifw.0m1oya8.rcgu.o /home/REDACTED/work/ado-aw/ado-aw/target/debug/deps/ado_aw_derive-200f38d8081bcd5a/home/REDACTED/work/ado-aw/ado-aw/target/debug/deps/compiler_tests-d461b4685455015d.2370ib6euso0f5xcqo9mphght.0m1oya8.rcgu.o aajbcm53kyup1c265kxdu76.0ufx18v.rcgu.o w5cv0ifwtrl6dpj6xvgeal7.0ufx18v.rcgu.o r3haoo2320pa6tqujx76cqc.0ufx18v.rcgu.o oxkn3sxfhag1w45cx2plmeh.0ufx18v.rcgu.o c1eo3xuvalszt1p3qu2uyno.0ufx18v.rcgu.o bny3d46rl605mmhglksyusw.0ufx18v.rcgu.o kfjsfix4u58clv1wiem7nse.0ufx18v.rcgu.o btilquoykx6nsi0dd1sx8zj.0ufx18v.rcgu.o gphlhul94ia4rb4lerlb5ri.0ufx18v.rcgu.o 08h8sipq36hxu94zkzu7duh.0ufx18v.rcgu.o r2kv94emcaau5up6629u0n2.0ufx18v.rcgu.o ajnfm4bnpmtfrxbgscvtlpm.0ufx18v.rcgu.o ilq4w8mhj2na1l3eehlyh7n.0ufx18v.rcgu.o mayg8wuxe9xp91j7yx6bko8.0ufx18v.rcgu.o(dns block)/home/REDACTED/work/ado-aw/ado-aw/target/debug/deps/ado_aw-d5652daa30dfc52e /home/REDACTED/work/ado-aw/ado-aw/target/debug/deps/ado_aw-d5652daa30dfc52e .o -gnu/bin/self-co/home/REDACTED/work/ado-aw/ado-aw/target/debug/deps/rustci3cTD5/sy/home/REDACTED/work/ado-aw/ado-aw/target/debug/deps/ado_aw-d5652daa30dfc52e.0pu4ojy95joxn5dht4g9rg3rz.1uueqyo.rcgu.o k/ado-aw/ado-aw//home/REDACTED/work/ado-aw/ado-aw/target/debug/deps/mcp_http_tests/home/REDACTED/work/ado-aw/ado-aw/target/debug/deps/ado_aw-d5652daa30dfc52e.0vwcxbuu4wfwy43eqkafpxzh4.1uueqyo.rcgu.o k/ad�� eline-cwi-sc-900/home/REDACTED/work/ado-aw/ado-aw/target/debug/deps/mcp_http_tests/home/REDACTED/work/ado-aw/ado-aw/target/debug/deps/ado_aw-d5652daa30dfc52e.14bqhs5apqw08obnqx2jb5vx5.1uueqyo.rcgu.o k/ado-aw/ado-aw//home/REDACTED/work/ado-aw/ado-aw/target/debug/deps/mcp_http_tests/home/REDACTED/work/ado-aw/ado-aw/target/debug/deps/ado_aw-d5652daa30dfc52e.15wgf4gwmfx7ewsndr76mwj5r.1uueqyo.rcgu.o bin/cargo k/ado-aw/ado-aw/bash ui7.079gflp.rcgu--norc ebe.079gflp.rcgu--noprofile bin/cargo rol.�� qds.079gflp.rcgu/home/REDACTED/work/ado-aw/ado-aw/target/debug/deps/mcp_http_tests-b84f950a7389b33cc dpi.079gflp.rcgu/home/REDACTED/work/ado-aw/ado-aw/target/debug/deps/mcp_http_tests-b84f950a7389b33-m64 known-linux-gnu//home/REDACTED/work/ado-aw/ado-aw/target/debug/deps/mcp_http_tests-b84f950a7389b33/home/REDACTED/work/ado-aw/ado-aw/target/debug/deps/rustcoNxqbs/symbols.o nta.079gflp.rcgubash -incompat vs3.079gflp.rcgu--noprofile known-linux-gnu//home/REDACTED/work/ado-aw/ado-aw/target/debug/deps/mcp_http_tests-b84f950a7389b33/home/REDACTED/work/ado-aw/ado-aw/target/debug/deps/ado_aw-d5652daa30dfc52e.0b4swqtj42h2czjsrx6oaub07.1uueqyo.rcgu.o(dns block)/home/REDACTED/work/ado-aw/ado-aw/target/debug/deps/ado_aw-d5652daa30dfc52e /home/REDACTED/work/ado-aw/ado-aw/target/debug/deps/ado_aw-d5652daa30dfc52e s/init_tests-49cremote s/init_tests-49cget-url s/init_tests-49corigin s/in�� s/init_tests-49cb495e99e732cb.454p1re0d1ru9vjbeokvrnsje.05s27fc.rcgu.o s/init_tests-49cb495e99e732cb.4bwfh6qkumpdr9rsfekf3mrmi.05s27fc.rcgu.o target/debug/deps/compiler_tests-d461b4685455015d.1ket8gxh7k8pnfuz3gzg6yfzy.0w4v/home/REDACTED/work/ado-aw/ado-aw/target/debug/deps/ado_aw-0dd8581e95bf1852.0ubdhrr6hs6lm9ydlqd2rpd2r.09mejql.rcgu.o target/debug/depgit .o .o .o .o target/debug/deps/rustcrdj0mb/symbols.o target/debug/deps/init_tests-49cb495e99e732cb.0maajbcm53kyup1c265kxdu76.05s27fc.rcgu.o target/debug/deps/init_tests-49cb495e99e732cb.0qw5cv0ifwtrl6dpj6xvgeal7.05s27fc.rcgu.o target/debug/dep/usr/bin/php8.3 target/debug/dep-c target/debug/dep/etc/php/8.3/fpm/php.ini target/debug/dep-d(dns block)If you need me to access, download, or install something from one of these locations, you can either: