242 lines
9.6 KiB
JSON
242 lines
9.6 KiB
JSON
{
|
|
"schema_version": "codex_gitea_blocked_products_owner_pick_list_v1",
|
|
"generated_at": "2026-06-24T13:40:00+08:00",
|
|
"scope": "Remaining products that are not yet safe to convert into Gitea dev workspaces",
|
|
"summary": {
|
|
"blocked_product_count": 8,
|
|
"remote_dev_missing_count": 5,
|
|
"internal_or_missing_repo_count": 3,
|
|
"local_head_drift_count": 4,
|
|
"dirty_or_untracked_count": 8,
|
|
"ready_for_remote_dev_branch_creation_count": 0,
|
|
"remote_write_performed": false,
|
|
"local_product_write_performed": false,
|
|
"secret_values_collected": false,
|
|
"raw_git_sync_allowed": false,
|
|
"raw_conversation_sync_allowed": false,
|
|
"env_or_runtime_volume_sync_allowed": false
|
|
},
|
|
"products": [
|
|
{
|
|
"product_id": "2026fifa",
|
|
"priority": "P1",
|
|
"risk_class": "local_head_drift_and_heavy_status",
|
|
"local_path": "/Users/ogt/Documents/2026FIFAWorldCup",
|
|
"local_branch": "main",
|
|
"local_head": "118954e781b97843fe4457731951bc0fcaecd402",
|
|
"gitea_repo": "wooo/2026FIFAWorldCup",
|
|
"remote_main": "f26def598fe58562067170dc3cc4c2521933846a",
|
|
"remote_dev": "",
|
|
"tracked_status": "timeout",
|
|
"untracked_count": 38,
|
|
"diff_shortstat": "timeout",
|
|
"sample_paths": [
|
|
"docs/crawler-source-policy.md",
|
|
"docs/fifa-official-data-seed-2026-06-14.md",
|
|
"platform/backend/app/analytics/agent_review_worker.py",
|
|
"platform/web/app/agent-verification/page.tsx",
|
|
"platform/web/app/api/analytics/source-health/route.ts"
|
|
],
|
|
"owner_decision_required": [
|
|
"accept_or_reject_gitea_main_as_dev_baseline",
|
|
"decide_whether_local_untracked_analytics_and_web_routes_are_product_changes",
|
|
"approve_remote_dev_branch_creation_only_after_pick_list"
|
|
],
|
|
"recommended_next_gate": "Build a narrow path-based drift review for analytics / web route additions before any dev branch creation."
|
|
},
|
|
{
|
|
"product_id": "agent-bounty-protocol",
|
|
"priority": "P1",
|
|
"risk_class": "local_head_drift_and_untracked_product_surface",
|
|
"local_path": "/Users/ogt/Documents/agent-bounty-protocol",
|
|
"local_branch": "main",
|
|
"local_head": "0601df8bd9c0aaedb9ce3a226a6f1aeca645ca0a",
|
|
"gitea_repo": "wooo/agent-bounty-protocol",
|
|
"remote_main": "b7a733f44f4f645dd21a9b4a9075b89c4a324f64",
|
|
"remote_dev": "",
|
|
"tracked_status": "timeout",
|
|
"untracked_count": 19,
|
|
"diff_shortstat": "timeout",
|
|
"sample_paths": [
|
|
"apps/web/src/app/agents/connect/actions.ts",
|
|
"apps/web/src/app/api/a2a/agents/connect/route.ts",
|
|
"apps/web/src/app/api/admin/treasury/usdc-balance/route.ts",
|
|
"apps/web/src/lib/a2a-agent-connect.ts",
|
|
"sync-backup-a2a-campaign-kit-20260611183651.tgz"
|
|
],
|
|
"owner_decision_required": [
|
|
"decide_whether_a2a_and_treasury_untracked_files_are_latest_product_source",
|
|
"exclude_sync_backup_archives_from_source_control_unless_owner_marks_them_as_release_artifacts",
|
|
"approve_dev_branch_baseline_after_pick_list"
|
|
],
|
|
"recommended_next_gate": "Separate source files from backup archives, then create an owner-selected include / exclude list."
|
|
},
|
|
{
|
|
"product_id": "stockplatform-v2",
|
|
"priority": "P1",
|
|
"risk_class": "large_dirty_worktree",
|
|
"local_path": "/Users/ogt/stockplatform-v2",
|
|
"local_branch": "main",
|
|
"local_head": "1ef097e148ff6645e608fe5823aff9f038314512",
|
|
"gitea_repo": "wooo/stockplatform-v2",
|
|
"remote_main": "1ef097e148ff6645e608fe5823aff9f038314512",
|
|
"remote_dev": "",
|
|
"tracked_dirty_count": 60,
|
|
"untracked_count": 3800,
|
|
"diff_shortstat": "60 files changed, 8355 insertions(+), 3173 deletions(-)",
|
|
"sample_paths": [
|
|
"apps/admin/src/app/admin-dashboard.tsx",
|
|
"apps/api/app/api/routes/recommendations.py",
|
|
"apps/api/app/main.py",
|
|
"apps/admin/src/app/agents/page.tsx",
|
|
"apps/api/migrations/versions/20260613_0035_notification_action_audit_trail.py"
|
|
],
|
|
"owner_decision_required": [
|
|
"classify_3800_untracked_paths_before_source_control",
|
|
"separate_generated_assets_from_source",
|
|
"approve_stock_dev_branch_only_after_dirty_review"
|
|
],
|
|
"recommended_next_gate": "Run a path-classification inventory that buckets source / migration / asset / generated outputs before any remote branch write."
|
|
},
|
|
{
|
|
"product_id": "vibework",
|
|
"priority": "P1",
|
|
"risk_class": "local_head_drift_and_large_untracked_product_surface",
|
|
"local_path": "/Users/ogt/Documents/VibeWork",
|
|
"local_branch": "main",
|
|
"local_head": "48275cc52be79107e887147d3fe10310a887afe9",
|
|
"gitea_repo": "wooo/vibework",
|
|
"remote_main": "76a4ee15026af278a3660ad4b4547e9308b107be",
|
|
"remote_dev": "",
|
|
"tracked_status": "timeout",
|
|
"untracked_count": 97,
|
|
"diff_shortstat": "timeout",
|
|
"sample_paths": [
|
|
"docs/PHASE_1_COMMERCIAL_BATTLE_PLAN.md",
|
|
"packages/contracts/src/index.ts",
|
|
"packages/mcp-server/src/index.ts",
|
|
"pnpm-workspace.yaml",
|
|
"public/brand/vibework-logo-full.svg"
|
|
],
|
|
"owner_decision_required": [
|
|
"decide_whether_local_monorepo_packages_are_latest_source",
|
|
"review_brand_assets_and_docs_before_source_control",
|
|
"approve_dev_branch_after_pick_list"
|
|
],
|
|
"recommended_next_gate": "Bucket docs / packages / public brand assets, then decide which become the Gitea dev baseline."
|
|
},
|
|
{
|
|
"product_id": "clawbot-openclaw",
|
|
"priority": "P1",
|
|
"risk_class": "small_tracked_drift",
|
|
"local_path": "/Users/ogt/clawbot-v5",
|
|
"local_branch": "main",
|
|
"local_head": "f4b84d730ae0ef2cb2fb5cc49b4eb585b10246e2",
|
|
"gitea_repo": "wooo/clawbot-v5",
|
|
"remote_main": "22074fbe4d6ec6c11c86f76139eea55756d1d160",
|
|
"remote_dev": "",
|
|
"tracked_dirty_count": 2,
|
|
"untracked_count": 0,
|
|
"diff_shortstat": "2 files changed, 9 insertions(+), 1 deletion(-)",
|
|
"sample_paths": [
|
|
"docker-compose.yml",
|
|
"main.py"
|
|
],
|
|
"owner_decision_required": [
|
|
"review_docker_compose_and_main_py_drift",
|
|
"decide_whether_local_head_or_gitea_main_is_dev_baseline",
|
|
"approve_dev_branch_creation"
|
|
],
|
|
"recommended_next_gate": "This is the smallest next candidate: inspect two tracked files and create a precise owner decision record."
|
|
},
|
|
{
|
|
"product_id": "bitan-pharmacy",
|
|
"priority": "P2",
|
|
"risk_class": "internal_repo_large_dirty_worktree",
|
|
"local_path": "/Users/ogt/bitan-pharmacy",
|
|
"local_branch": "main",
|
|
"local_head": "e122c8cbd9522999fd9844c2b63790fadcc89c20",
|
|
"gitea_repo": "internal:bitan-pharmacy",
|
|
"remote_main": "",
|
|
"remote_dev": "",
|
|
"tracked_dirty_count": 64,
|
|
"untracked_count": 252,
|
|
"diff_shortstat": "64 files changed, 4069 insertions(+), 665 deletions(-)",
|
|
"sample_paths": [
|
|
"messages/zh-TW.json",
|
|
"next.config.ts",
|
|
"src/app/admin/layout.tsx",
|
|
"scripts/deploy-production-safe.sh",
|
|
"logs/public-content-cleanliness.latest.json"
|
|
],
|
|
"owner_decision_required": [
|
|
"provide_authenticated_gitea_inventory_or_owner_export",
|
|
"separate_logs_and_generated_outputs_from_source",
|
|
"review_public_content_cleanliness_evidence_before_dev_branch"
|
|
],
|
|
"recommended_next_gate": "Resolve internal repo inventory first, then run dirty review."
|
|
},
|
|
{
|
|
"product_id": "tsenyang-website",
|
|
"priority": "P2",
|
|
"risk_class": "internal_repo_small_dirty_worktree",
|
|
"local_path": "/Users/ogt/tsenyang-website",
|
|
"local_branch": "main",
|
|
"local_head": "b369ed8cb6666e8ddaa2d31e1418a02794fdea9d",
|
|
"gitea_repo": "internal:tsenyang-website",
|
|
"remote_main": "",
|
|
"remote_dev": "",
|
|
"tracked_dirty_count": 6,
|
|
"untracked_count": 2,
|
|
"diff_shortstat": "6 files changed, 163 insertions(+), 63 deletions(-)",
|
|
"sample_paths": [
|
|
"public/og/taiwan-ai-agent-checklist.png",
|
|
"public/og/taiwan-ai-agent-webinar.svg",
|
|
"outputs/manual-20260605-ai-agent-deck-v2/presentations/tsenyang-ai-agent-proposal-fixed/output/TsenYang_AI_Agent_Proposal_V2_Fixed_20260605.pptx"
|
|
],
|
|
"owner_decision_required": [
|
|
"provide_authenticated_gitea_inventory_or_owner_export",
|
|
"decide_whether_presentation_outputs_belong_in_source_control",
|
|
"approve_dev_branch_after_small_dirty_review"
|
|
],
|
|
"recommended_next_gate": "Small candidate after internal repo inventory: review OG assets and presentation outputs."
|
|
},
|
|
{
|
|
"product_id": "vtuber",
|
|
"priority": "P3",
|
|
"risk_class": "repository_inventory_repair_required",
|
|
"local_path": "/Users/ogt/VTuber",
|
|
"local_branch": "main",
|
|
"local_head": "HEAD",
|
|
"gitea_repo": "wooo/vtuber",
|
|
"remote_error": "remote: Repository not found",
|
|
"tracked_dirty_count": 2,
|
|
"untracked_count": 84,
|
|
"diff_shortstat": "",
|
|
"sample_paths": [
|
|
"apps/admin/public/.gitkeep",
|
|
"apps/web/public/.gitkeep",
|
|
".env.example",
|
|
"README.md",
|
|
"apps/api/package.json"
|
|
],
|
|
"owner_decision_required": [
|
|
"repair_local_HEAD_or_confirm_new_repo_bootstrap",
|
|
"create_or_identify_correct_gitea_repository",
|
|
"exclude_env_and_generated_outputs_before_source_control"
|
|
],
|
|
"recommended_next_gate": "Repair repository identity before any Gitea action."
|
|
}
|
|
],
|
|
"recommended_execution_order": [
|
|
"clawbot-openclaw",
|
|
"tsenyang-website",
|
|
"agent-bounty-protocol",
|
|
"2026fifa",
|
|
"vibework",
|
|
"stockplatform-v2",
|
|
"bitan-pharmacy",
|
|
"vtuber"
|
|
]
|
|
}
|