mirror of
https://github.com/microsoft/mcp.git
synced 2026-11-04 12:01:31 +00:00
Fix elicitation for Github Copilot CLI (#2214)
This commit is contained in:
1 parent
cb5eb2aa02
commit
43c282f393
3 files changed
+18
-4
No files matched your search
+9
-2
@@ -462,8 +462,15 @@ public class BaseToolLoaderTests
|
||||
Assert.NotNull(elicitParams.RequestedSchema.Properties);
|
||||
Assert.Single(elicitParams.RequestedSchema.Properties);
|
||||
Assert.True(elicitParams.RequestedSchema.Properties.ContainsKey("decision"));
|
||||
var decisionSchema = Assert.IsType<ElicitRequestParams.UntitledSingleSelectEnumSchema>(elicitParams.RequestedSchema.Properties["decision"]);
|
||||
Assert.Equal(["Approve", "Reject"], decisionSchema.Enum);
|
||||
var decisionSchema = Assert.IsType<ElicitRequestParams.TitledSingleSelectEnumSchema>(elicitParams.RequestedSchema.Properties["decision"]);
|
||||
Assert.Equal("Decision", decisionSchema.Title);
|
||||
Assert.Equal("Approve or reject this sensitive operation.", decisionSchema.Description);
|
||||
Assert.NotNull(decisionSchema.OneOf);
|
||||
Assert.Equal(2, decisionSchema.OneOf.Count);
|
||||
Assert.Equal("Approve", decisionSchema.OneOf[0].Title);
|
||||
Assert.Equal("accept", decisionSchema.OneOf[0].Const);
|
||||
Assert.Equal("Reject", decisionSchema.OneOf[1].Title);
|
||||
Assert.Equal("reject", decisionSchema.OneOf[1].Const);
|
||||
Assert.NotNull(elicitParams.RequestedSchema.Required);
|
||||
Assert.Single(elicitParams.RequestedSchema.Required);
|
||||
Assert.Contains("decision", elicitParams.RequestedSchema.Required);
|
||||
|
||||
@@ -235,11 +235,15 @@ public abstract class BaseToolLoader(ILogger logger) : IToolLoader
|
||||
{
|
||||
Properties = new Dictionary<string, ElicitRequestParams.PrimitiveSchemaDefinition>
|
||||
{
|
||||
["decision"] = new ElicitRequestParams.UntitledSingleSelectEnumSchema
|
||||
["decision"] = new ElicitRequestParams.TitledSingleSelectEnumSchema
|
||||
{
|
||||
Title = "Decision",
|
||||
Description = "Approve or reject this sensitive operation.",
|
||||
Enum = ["Approve", "Reject"]
|
||||
OneOf = new List<ElicitRequestParams.EnumSchemaOption>
|
||||
{
|
||||
new() { Title = "Approve", Const = "accept" },
|
||||
new() { Title = "Reject", Const = "reject" }
|
||||
}
|
||||
}
|
||||
},
|
||||
Required = ["decision"]
|
||||
|
||||
@@ -0,0 +1,3 @@
|
||||
changes:
|
||||
- section: "Bugs Fixed"
|
||||
description: "Fixed elicitation for GitHub Copilot CLI by updating from `UntitledSingleSelectEnumSchema` to `TitledSingleSelectEnumSchema`"
|
||||
Reference in new issue
Block a user