Skip to content

Update @github/copilot to 1.0.7#878

Open
github-actions[bot] wants to merge 1 commit intomainfrom
update-copilot-1.0.7
Open

Update @github/copilot to 1.0.7#878
github-actions[bot] wants to merge 1 commit intomainfrom
update-copilot-1.0.7

Conversation

@github-actions
Copy link
Contributor

Automated update of @github/copilot to version 1.0.7.

Changes

  • Updated @github/copilot in nodejs/package.json and test/harness/package.json
  • Re-ran all code generators (scripts/codegen)
  • Formatted generated output

Created by the Update @github/copilot Dependency workflow.

- Updated nodejs and test harness dependencies
- Re-ran code generators
- Formatted generated code
Copy link
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Automated dependency bump of @github/copilot to 1.0.7 across the Node packages, followed by regenerating the cross-language (Node/Python/Go/.NET) RPC and session-event bindings to match the updated schema.

Changes:

  • Updated @github/copilot dependency versions in Node package manifests/locks (main package, samples, test harness).
  • Regenerated RPC client types/APIs and session event models across Node, Python, Go, and .NET.
  • Added newly surfaced schema fields/events/APIs (e.g., url fields on log/events; skills/MCP/plugins/extensions APIs; new session events).

Reviewed changes

Copilot reviewed 4 out of 13 changed files in this pull request and generated 5 comments.

Show a summary per file
File Description
test/harness/package.json Bumps @github/copilot devDependency to ^1.0.7.
test/harness/package-lock.json Lockfile update for @github/copilot@1.0.7 and platform optional deps.
nodejs/package.json Bumps @github/copilot dependency to ^1.0.7.
nodejs/package-lock.json Lockfile update for @github/copilot@1.0.7 and platform optional deps.
nodejs/samples/package-lock.json Samples lockfile updated to @github/copilot@^1.0.7.
nodejs/src/generated/session-events.ts Regenerated TS session-event types (new fields/events, some type shape changes).
nodejs/src/generated/rpc.ts Regenerated TS RPC types; adds skills/MCP/plugins/extensions RPC surfaces.
python/copilot/generated/session_events.py Regenerated Python session-event models (new types/events/fields).
python/copilot/generated/rpc.py Regenerated Python RPC bindings; adds skills/MCP/plugins/extensions APIs and agent reload.
go/rpc/generated_rpc.go Regenerated Go RPC bindings; adds new APIs and types (currently has naming/typing issues).
go/generated_session_events.go Regenerated Go session-event models (new events/fields/types; currently has enum constant naming issues).
dotnet/src/Generated/SessionEvents.cs Regenerated .NET session-event types (new events/fields; some public API type changes).
dotnet/src/Generated/Rpc.cs Regenerated .NET RPC bindings; adds new APIs and adds url to session.log (signature change).
Files not reviewed (3)
  • nodejs/package-lock.json: Language not supported
  • nodejs/samples/package-lock.json: Language not supported
  • test/harness/package-lock.json: Language not supported
Comments suppressed due to low confidence (3)

go/rpc/generated_rpc.go:541

  • The generated ExtensionStatus constants use non-deterministic prefixes (FluffyDisabled/FluffyFailed). These exported names are hard to understand and will vary across regenerations if collisions change. Consider updating the generator to emit stable, type-prefixed names (e.g., ExtensionStatusDisabled, ExtensionStatusFailed).
// Current status: running, disabled, failed, or starting
type ExtensionStatus string

const (
	FluffyDisabled ExtensionStatus = "disabled"
	FluffyFailed   ExtensionStatus = "failed"
	Running        ExtensionStatus = "running"
	Starting       ExtensionStatus = "starting"
)

go/generated_session_events.go:1295

  • The generated ExtensionStatus enum values are exposed as exported Go identifiers with non-deterministic prefixes (PurpleDisabled, PurpleFailed). This makes the public API confusing and brittle. Prefer stable, type-prefixed constant names (e.g., ExtensionStatusDisabled, ExtensionStatusFailed) to avoid collisions without random words.
// Current status: running, disabled, failed, or starting
type ExtensionStatus string

const (
	PurpleDisabled ExtensionStatus = "disabled"
	PurpleFailed   ExtensionStatus = "failed"
	Running        ExtensionStatus = "running"
	Starting       ExtensionStatus = "starting"
)

go/generated_session_events.go:1303

  • The generated KindStatus constants include FluffyFailed, which looks like an accidental/random prefix added for collision avoidance. For a public Go SDK, these should be stable and self-describing (e.g., KindStatusFailed) rather than using arbitrary words.
// Whether the agent completed successfully or failed
type KindStatus string

const (
	Completed    KindStatus = "completed"
	FluffyFailed KindStatus = "failed"
)

You can also share your feedback on Copilot code review. Take the survey.

Comment on lines +1394 to +1398
Connected ServerStatus = "connected"
FluffyDisabled ServerStatus = "disabled"
NotConfigured ServerStatus = "not_configured"
Pending ServerStatus = "pending"
TentacledFailed ServerStatus = "failed"
Comment on lines 1259 to 1263
/// <summary>Calls "session.log".</summary>
public async Task<SessionLogResult> LogAsync(string message, SessionLogRequestLevel? level = null, bool? ephemeral = null, CancellationToken cancellationToken = default)
public async Task<SessionLogResult> LogAsync(string message, SessionLogRequestLevel? level = null, bool? ephemeral = null, string? url = null, CancellationToken cancellationToken = default)
{
var request = new SessionLogRequest { SessionId = _sessionId, Message = message, Level = level, Ephemeral = ephemeral };
var request = new SessionLogRequest { SessionId = _sessionId, Message = message, Level = level, Ephemeral = ephemeral, Url = url };
return await CopilotClient.InvokeRpcAsync<SessionLogResult>(_rpc, "session.log", [request], cancellationToken);
Comment on lines +1441 to +1444
/// <summary>Origin of this message, used for timeline filtering (e.g., "skill-pdf" for skill-injected messages that should be hidden from the user).</summary>
[JsonIgnore(Condition = JsonIgnoreCondition.WhenWritingNull)]
[JsonPropertyName("source")]
public UserMessageDataSource? Source { get; set; }
public string? Source { get; set; }
Comment on lines +980 to +987
func (a *McpRpcApi) List(ctx context.Context) (*SessionMcpListResult, error) {
req := map[string]interface{}{"sessionId": a.sessionID}
raw, err := a.client.Request("session.mcp.list", req)
if err != nil {
return nil, err
}
var result SessionMcpListResult
if err := json.Unmarshal(raw, &result); err != nil {
Comment on lines +514 to +523
// Connection status: connected, failed, pending, disabled, or not_configured
type ServerStatus string

const (
Connected ServerStatus = "connected"
NotConfigured ServerStatus = "not_configured"
Pending ServerStatus = "pending"
PurpleDisabled ServerStatus = "disabled"
PurpleFailed ServerStatus = "failed"
)
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