Skip to content

Conversation

Copy link
Contributor

Copilot AI commented Dec 12, 2025

This PR adds the missing documentation for the Process SetEnvironmentVariable command (CommandID 0x03) to the IPC protocol specification at documentation/design-docs/ipc-protocol.md.

Changes Made

  • Added SetEnvironmentVariable section with Command Code 0x0403 in the Process Commands section
  • Documented input payload: name and value strings for the environment variable
  • Documented return payload: int32 hresult indicating success or failure
  • Positioned correctly: Placed between ProcessEnvironment (0x0402) and ProcessInfo2 (0x0404) sections
  • Followed existing style: Maintained the same documentation format and structure as other Process commands

The documentation is based on the runtime implementation at https://github.com/dotnet/runtime/blob/7a7baaa0342f6b6d196ae19f255903b569f4ca18/src/native/eventpipe/ds-process-protocol.c#L970-L1008

Validation

  • ✅ Documentation style matches existing Process commands
  • ✅ Command Code, inputs, and outputs accurately reflect the runtime implementation
  • ✅ Proper struct syntax using semicolons (C++ convention)
Original prompt

This section details on the original issue you should resolve

<issue_title>IPC Protocol Specification missing Process SetEnvironmentVariable section</issue_title>
<issue_description>### Documentation Request

The IPC Protocol specification at documentation/design-docs/ipc-protocol.md notes in the commands overview that the Process CommandSet had a CommandID 0x3 corresponding to SetEnvironmentVariable, but there is no section describing the commandID under the process-commands section. The Process SetEnvironmentVariable command is handled in https://github.com/dotnet/runtime/blob/7a7baaa0342f6b6d196ae19f255903b569f4ca18/src/native/eventpipe/ds-process-protocol.c#L970-L1008</issue_description>

<agent_instructions>Maintain the same style used in describing other CommandSet/CommandIDs.</agent_instructions>

Comments on the Issue (you are @copilot in this section)


✨ Let Copilot coding agent set things up for you — coding agent works faster and does higher quality work when set up for your repo.

@hoyosjs
Copy link
Member

hoyosjs commented Dec 15, 2025

@copilot, please try again

Copilot AI and others added 2 commits December 15, 2025 19:44
Co-authored-by: hoyosjs <19413848+hoyosjs@users.noreply.github.com>
Co-authored-by: hoyosjs <19413848+hoyosjs@users.noreply.github.com>
Copy link
Contributor Author

Copilot AI commented Dec 15, 2025

@copilot, please try again

I've added the missing SetEnvironmentVariable section to the IPC protocol documentation. The documentation includes:

  • Command Code 0x0403
  • Input payload with name and value strings
  • Return payload with int32 hresult
  • Proper formatting matching other Process commands

Fixed in commits 3440ac2 and c2f56b2.

Copilot AI changed the title [WIP] Add SetEnvironmentVariable section to IPC protocol specification Add SetEnvironmentVariable section to IPC protocol specification Dec 15, 2025
Copilot AI requested a review from hoyosjs December 15, 2025 19:47
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.

IPC Protocol Specification missing Process SetEnvironmentVariable section

3 participants