Skip to content

Commit

Permalink
.Net: fix: add "status" field to Python dynamic session response (#9903)
Browse files Browse the repository at this point in the history
### Motivation and Context

Addresses issue #9902 for .NET.

Include the "status" field in the response string returned by Python
dynamic sessions. Fixes a usability issue where the LLM assumes success
despite execution failures.


### Description

As per #9902, including the `status` property from the response in the
plugin result, we ensure that the LLM has explicit information about
whether the execution succeeded or failed, preventing misinterpretation
of stderr or other response elements.

This helps avoid hallucinated follow-ups or unnecessary retries by
providing clear success/failure indicators.


### Contribution Checklist

<!-- Before submitting this PR, please make sure: -->

- [x] The code builds clean without any errors or warnings
- [x] The PR follows the [SK Contribution
Guidelines](https://github.com/microsoft/semantic-kernel/blob/main/CONTRIBUTING.md)
and the [pre-submission formatting
script](https://github.com/microsoft/semantic-kernel/blob/main/CONTRIBUTING.md#development-scripts)
raises no violations
- [x] All unit tests pass, and I have added new tests where possible
- [x] I didn't break anyone 😄

---------

Co-authored-by: Evan Mattson <[email protected]>
  • Loading branch information
malandis and moonbox3 authored Dec 12, 2024
1 parent c2895a3 commit b40e0cc
Show file tree
Hide file tree
Showing 2 changed files with 4 additions and 0 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -113,6 +113,8 @@ public async Task<string> ExecuteCodeAsync([Description("The valid Python code t
var jsonElementResult = JsonSerializer.Deserialize<JsonElement>(await response.Content.ReadAsStringAsync().ConfigureAwait(false));

return $"""
Status:
{jsonElementResult.GetProperty("status").GetRawText()}
Result:
{jsonElementResult.GetProperty("result").GetRawText()}
Stdout:
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -70,6 +70,8 @@ public async Task ItShouldExecuteCodeAsync()
Content = new StringContent(responseContent),
};
var expectedResult = """
Status:
"Success"
Result:
""
Stdout:
Expand Down

0 comments on commit b40e0cc

Please sign in to comment.