import json
from datetime import datetime, timezone

# 读取数据
with open('/home/multica/.claude/projects/-home-multica-multica-workspaces-b5fdce19-2a82-455d-b644-5b83da2b3078-34f1db69-workdir/0048df78-396c-4b12-869c-ba70be7640ae/tool-results/binjfi8jp.txt', 'r') as f:
    data = json.load(f)

issues = data['issues']
now = datetime.now(timezone.utc)

# 筛选未完成的任务
active_issues = [i for i in issues if i['status'] not in ['done', 'cancelled', 'backlog']]

print("=" * 60)
print("任务分配健康检查报告")
print("=" * 60)
print(f"检查时间: {now.strftime('%Y-%m-%d %H:%M:%S UTC')}")
print(f"活跃任务总数: {len(active_issues)}")
print()

# 统计
by_status = {}
for issue in active_issues:
    status = issue['status']
    by_status[status] = by_status.get(status, 0) + 1

print("📊 任务状态分布:")
for status, count in sorted(by_status.items()):
    print(f"   {status}: {count} 个")
print()

# 检查问题
print("🔍 检查结果:")
print()

issues_found = []

# FET-54: in_progress 但无 assignee
fet54 = [i for i in active_issues if i['identifier'] == 'FET-54'][0]
if fet54['status'] == 'in_progress' and not fet54['assignee_id']:
    issues_found.append({
        'issue': 'FET-54',
        'problem': 'in_progress 状态但未分配负责人',
        'recommendation': '这是一个架构设计任务，应该由架构师本人负责或分配给合适的开发专家'
    })

# FET-55 和 FET-56: todo 但无 assignee（刚创建不到1小时，正常）
fet55 = [i for i in active_issues if i['identifier'] == 'FET-55'][0]
fet56 = [i for i in active_issues if i['identifier'] == 'FET-56'][0]

if issues_found:
    print("⚠️  发现以下问题:")
    print()
    for idx, issue in enumerate(issues_found, 1):
        print(f"{idx}. {issue['issue']}: {issue['problem']}")
        print(f"   建议: {issue['recommendation']}")
        print()
else:
    print("✅ 所有任务分配正常！")
    print()

print("📝 详细任务列表:")
print()
for issue in active_issues:
    updated_at = datetime.fromisoformat(issue['updated_at'].replace('Z', '+00:00'))
    hours_ago = (now - updated_at).total_seconds() / 3600
    
    status_emoji = {
        'todo': '📋',
        'in_progress': '🔄',
        'in_review': '👀',
        'blocked': '🚫'
    }.get(issue['status'], '❓')
    
    assignee_str = issue['assignee_id'][:8] if issue['assignee_id'] else '未分配'
    
    print(f"{status_emoji} {issue['identifier']}: {issue['title'][:50]}")
    print(f"   状态: {issue['status']} | 负责人: {assignee_str} | 更新: {hours_ago:.1f}h 前")
    print()

print("=" * 60)
print("总结:")
print("=" * 60)
if issues_found:
    print(f"发现 {len(issues_found)} 个需要关注的问题")
    print("建议采取行动: 为 FET-54 分配负责人")
else:
    print("所有任务分配健康，无需干预")
    print("FET-55 和 FET-56 刚创建不久，等待分配是正常的")
print()
