Files
awoooi/docs/operations/vtuber-dev-baseline-owner-decision.snapshot.json

152 lines
5.5 KiB
JSON

{
"schema_version": "vtuber_dev_baseline_owner_decision_v1",
"generated_at": "2026-06-24T14:08:41+08:00",
"product_id": "vtuber",
"local_path": "/Users/ogt/VTuber",
"gitea_repo": "wooo/vtuber",
"remote_refs": {
"main": "",
"dev": "",
"status": "repository_not_found"
},
"local_readback": {
"branch": "main",
"head": "invalid_unborn_or_no_commit_head",
"head_error": "fatal: ambiguous argument 'HEAD': unknown revision or path not in the working tree",
"tracked_modified_count": 0,
"tracked_deleted_count": 0,
"staged_addition_count": 2,
"untracked_file_count": 84,
"untracked_porcelain_entry_count": 30,
"status": "repository_identity_repair_required"
},
"remote_readback": {
"ls_remote": "failed_repository_not_found",
"error_summary": "Cannot find repository: wooo/vtuber"
},
"staged_additions_seen_but_not_modified": [
"apps/admin/public/.gitkeep",
"apps/web/public/.gitkeep"
],
"untracked_classification": {
"apps_web_count": 33,
"apps_admin_count": 15,
"apps_api_count": 13,
"packages_db_count": 5,
"packages_ui_count": 2,
"deploy_count": 4,
"scripts_count": 3,
"docs_count": 2,
"root_count": 7
},
"untracked_source_groups": {
"root": [
".env.example",
".gitignore",
"README.md",
"package.json",
"test-browser.js",
"test_glb.js",
"tsconfig.base.json"
],
"apps_admin": [
"apps/admin/.env.example",
"apps/admin/.eslintrc.json",
"apps/admin/Dockerfile",
"apps/admin/next-env.d.ts",
"apps/admin/next.config.js",
"apps/admin/package.json",
"apps/admin/src/app/inventory/page.tsx",
"apps/admin/src/app/operations/page.tsx",
"apps/admin/src/app/orders/page.tsx",
"apps/admin/src/app/products/page.tsx",
"apps/admin/src/lib/api.ts",
"apps/admin/tsconfig.json"
],
"apps_api": [
"apps/api/.env.example",
"apps/api/.eslintrc.json",
"apps/api/Dockerfile",
"apps/api/nest-cli.json",
"apps/api/package.json",
"apps/api/src/app.controller.ts",
"apps/api/src/app.module.ts",
"apps/api/src/app.service.ts",
"apps/api/src/database/database.module.ts",
"apps/api/src/database/prisma.service.ts",
"apps/api/src/main.ts",
"apps/api/tsconfig.build.json",
"apps/api/tsconfig.json"
],
"apps_web": [
"apps/web/.env.example",
"apps/web/.eslintrc.json",
"apps/web/Dockerfile",
"apps/web/next-env.d.ts",
"apps/web/next.config.js",
"apps/web/package.json",
"apps/web/public/models/realistic-host.glb",
"apps/web/public/models/xiaoyai.vrm",
"apps/web/src/app/[locale]/live/demo/page.tsx",
"apps/web/src/app/cart/page.tsx",
"apps/web/src/app/checkout/page.tsx",
"apps/web/src/app/live/page.tsx",
"apps/web/src/app/products/[slug]/page.tsx",
"apps/web/src/components/virtual-host.tsx",
"apps/web/src/lib/api.ts",
"apps/web/src/middleware.ts",
"apps/web/tsconfig.json",
"apps/web/tsconfig.tsbuildinfo"
],
"packages_deploy_and_docs": [
"deploy/apply-nginx-110-live-fallback.sh",
"deploy/deploy-prod.sh",
"deploy/docker-compose.prod.yml",
"deploy/vtuber-nginx-110-live-fallback.conf",
"deploy/.env.prod",
"deploy/.env.prod.example",
"docs/PRD.md",
"docs/TASKS.md",
"packages/db/prisma/schema.prisma",
"packages/db/prisma/seed.ts",
"packages/db/src/index.ts",
"packages/ui/src/index.ts",
"scripts/check-vtuber-offline-110.sh",
"scripts/deploy-and-verify-vtuber110.sh",
"scripts/verify-live-domain-110.sh"
]
},
"excluded_or_quarantined_by_default": [
"apps/web/tsconfig.tsbuildinfo",
"deploy/.env.prod"
],
"secret_or_env_paths_seen_but_not_read": [
".env.example",
"apps/admin/.env.example",
"apps/api/.env.example",
"apps/web/.env.example",
"deploy/.env.prod",
"deploy/.env.prod.example"
],
"risk_assessment": {
"secret_value_collected": false,
"env_file_read": false,
"runtime_write_performed": false,
"product_repo_write_performed": false,
"remote_write_performed": false,
"risk_level": "blocked_repository_identity_repair_required",
"reason": "The local repository has no valid HEAD, two staged .gitkeep files, 84 untracked files, and the expected Gitea repository wooo/vtuber is not found. This must be treated as repo bootstrap or repo identity repair before any source control action."
},
"owner_decision_required": [
"Decide whether VTuber is a new repository bootstrap or should map to another existing Gitea repository.",
"Approve creating or identifying the correct Gitea repository before any branch action.",
"Approve whether the two staged .gitkeep files should remain staged, be committed, or be reset in a new repo bootstrap flow.",
"Confirm deploy/.env.prod remains excluded and is not read or copied.",
"Confirm env example files are metadata-only and contain no real secrets before source control inclusion.",
"Approve or reject VRM / GLB model assets as source artifacts.",
"Approve or reject Nginx / compose / deploy scripts as part of the initial baseline.",
"Approve remote main / dev branch creation only after repository identity and initial source include list are accepted."
],
"recommended_next_step": "Resolve repository identity first, then create a bootstrap owner package before any Gitea repository creation, branch creation, or MacBook workspace bootstrap."
}