Skip to content

fix: GitHub連携コマンドでメタデータが保存される機能を追加 (#210)#211

Merged
camoneart merged 7 commits intomainfrom
issue-210
Aug 5, 2025
Merged

fix: GitHub連携コマンドでメタデータが保存される機能を追加 (#210)#211
camoneart merged 7 commits intomainfrom
issue-210

Conversation

@camoneart
Copy link
Owner

Summary

Issue #210を修正し、GitHub連携コマンド(mst github issue/pr)で作成したworktreeのメタデータが正しく保存されるようになりました。これによりmst list --metadataでGitHub情報が表示されるようになります。

Changes

🔧 Core Implementation

  • src/commands/github.ts: saveWorktreeMetadata関数をインポートし、createWorktreeFromGithub内でメタデータ保存処理を追加
  • ItemInfo型拡張: body, labels, assignees, milestone, urlフィールドを追加
  • fetchItemInfo強化: より多くのGitHub情報を取得するよう拡張
  • エラーハンドリング: メタデータ保存失敗時は警告のみ表示して処理続行

📚 Documentation Updates

  • docs/commands/github.md: 包括的なメタデータストレージ機能の説明を追加
  • docs/commands/list.md: --metadataオプションの強化された機能説明
  • docs/COMMANDS.md: GitHub統合メタデータ機能の追加
  • README.md & README.ja.md: GitHubメタデータ機能のハイライト

🧪 Testing

  • github-metadata.test.ts: メタデータ保存機能の包括的テストを追加

Fixed behavior

修正前:

$ mst list --metadata
🎷 refs/heads/issue-207    ../issue-207    # メタデータが表示されない

修正後:

$ mst list --metadata
🎷 refs/heads/issue-207    ../issue-207    Issue #207: Update MCP documentation
    GitHub: Issue #207 - Update MCP documentation
    Labels: documentation, enhancement
    Assignees: developer1
    Milestone: v2.0.0
    URL: https://github.com/camoneart/maestro/issues/207

Affected Commands

以下のコマンドでメタデータが保存されるようになりました:

  • mst github issue {number}
  • mst github pr {number}
  • mst github checkout {number}
  • mst create {number} (数字のみの場合)

Test Plan

  • 新規テストファイル作成・実行
  • 既存テストの回帰テスト実行
  • lint・typecheck通過確認
  • ドキュメント整合性確認

🤖 Generated with Claude Code

Co-Authored-By: Claude noreply@anthropic.com

- Import saveWorktreeMetadata function in github.ts
- Extend ItemInfo type with body, labels, assignees, milestone, url fields
- Update fetchItemInfo to retrieve comprehensive GitHub information
- Add metadata saving after worktree creation in createWorktreeFromGithub
- Include error handling for metadata save failures with warning display
- Preserve all GitHub context (title, body, author, labels, assignees, milestone, URL)

Fixes #210: GitHub連携コマンドでメタデータが保存されない

This enables
🎼 オーケストラ編成(worktree):

📍 refs/heads/main                /Users/aoyamaisaoosamu/Desktop/dev/projects/250709_maestro/maestro
🎷 refs/heads/issue-210           /Users/aoyamaisaoosamu/Desktop/dev/projects/250709_maestro/issue-210

合計: 2 名の演奏者 to display rich GitHub information
for worktrees created from Issues and Pull Requests.
- Add github-metadata.test.ts with tests for Issue #210 fix
- Verify metadata saving for both Issues and Pull Requests
- Test error handling when metadata save fails
- Document the scope and impact of the GitHub metadata feature

The tests confirm that GitHub worktrees now save comprehensive metadata
including title, body, labels, assignees, milestone, and URL information.
- Update github.md with comprehensive metadata storage documentation
- Add detailed examples of GitHub metadata structure for Issues and PRs
- Explain viewing metadata with mst list --metadata
- Update list.md with enhanced metadata display examples
- Add GitHub metadata integration benefits and advanced usage examples
- Include jq filtering examples for GitHub-specific metadata queries

Documents the enhanced metadata functionality introduced in Issue #210 fix.
…ality

- Add Enhanced GitHub Metadata Storage section explaining comprehensive data saving
- Update list command description to mention GitHub data in --metadata option
- Add examples for viewing GitHub metadata and advanced jq filtering
- Document the rich context provided by GitHub integration

Updates the master command reference to reflect Issue #210 metadata improvements.
- Add 'rich metadata' to GitHub integration key features
- Include GitHub metadata listing in basic usage examples
- Update advanced features to mention comprehensive metadata functionality
- Add Japanese translations for metadata features in README.ja.md

Highlights the enhanced GitHub integration with metadata saving from Issue #210.
- Update fetchItemInfo calls in github.test.ts to match new field list
- Add missing fields (body, labels, assignees, milestone, url) to mock data
- Fix Prettier formatting issues in github.ts and github-metadata.test.ts
- Ensure all GitHub tests pass with comprehensive metadata support

This resolves CI failures caused by updated fetchItemInfo function signature.
- Fix issue list field expectations in github.test.ts
- List command uses 'number,title,author' fields, not extended metadata fields
- Apply Prettier formatting to resolve CI lint issues

This resolves the remaining test failures in CI pipeline.
@camoneart camoneart merged commit 5b5dc9f into main Aug 5, 2025
10 checks passed
@camoneart camoneart deleted the issue-210 branch August 5, 2025 10:36
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