Files
claude-engineering-plugin/todos/001-complete-p2-extract-gemini-mcp-type.md
Kieran Klaassen 552ebceb0b chore: mark review todos as complete
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-14 20:46:53 -08:00

933 B

status, priority, issue_id, tags, dependencies
status priority issue_id tags dependencies
pending p2 001
code-review
typescript
types

Extract GeminiMcpServer as named type

Problem Statement

The GeminiBundle inlines the MCP server type definition, and the converter uses NonNullable<GeminiBundle["mcpServers"]>[string] which is hard to read. Other targets (Cursor) define a named type.

Findings

  • src/types/gemini.ts lines 20-26: inline type in GeminiBundle
  • src/converters/claude-to-gemini.ts line 117: NonNullable<GeminiBundle["mcpServers"]>[string]

Proposed Solution

Extract a named GeminiMcpServer type in src/types/gemini.ts and use it in both the bundle type and converter.

Acceptance Criteria

  • GeminiMcpServer type exists in src/types/gemini.ts
  • GeminiBundle.mcpServers uses Record<string, GeminiMcpServer>
  • Converter uses GeminiMcpServer instead of indexed access type
  • Tests still pass