guanghulab/skyeye/infra-manifest.json
Guanghu Domestic Migration d1e47f4565
Some checks are pending
自动更新代码和重启 / update-and-restart (push) Waiting to run
CI检查 + 自动部署 / check (push) Waiting to run
CI检查 + 自动部署 / deploy (push) Blocked by required conditions
重启聊天服务 / restart (push) Waiting to run
chore: import sanitized domestic snapshot for REPO-002
Source snapshot: ca48d3ddf926d79aa138306164169baf764bb829
2026-07-17 15:54:41 +08:00

315 lines
10 KiB
JSON
Raw Permalink Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

{
"version": "1.0.0",
"last_scan": "2026-03-25T06:22:39.127Z",
"last_scan_by": "skyeye-scan-engine",
"infrastructure": {
"github": {
"service": "GitHub",
"plan": "Free",
"repos": [
{
"name": "qinfendebingshuo/guanghulab",
"role": "main",
"guard": "buffer/"
},
{
"name": "WENZHUOXI/guanghu-awen",
"role": "sub-repo",
"persona": "PER-ZQ001",
"guard": ".github/persona-brain/"
}
],
"quotas": {
"actions_minutes_per_month": 2000,
"actions_current_used": 0,
"actions_budget_allocated": {
"buffer_collect": 270,
"buffer_flush": 90,
"skyeye_checkin": 180,
"skyeye_weekly_scan": 30,
"other_workflows": 200,
"emergency_reserve": 1230
},
"storage_limit_gb": 0.5,
"lfs_bandwidth_gb": 1
}
},
"google_drive": {
"service": "Google Drive",
"plan": "Google One / Free 15GB",
"guard": "buffer/drive-staging/",
"quotas": {
"storage_gb": 15,
"current_used_gb": 0,
"apps_script_daily_triggers": 20,
"apps_script_runtime_min_per_day": 90,
"drive_api_queries_per_100s": 20000
}
},
"notion": {
"service": "Notion",
"plan": "Plus",
"guard": "霜砚PER-SY001",
"quotas": {
"api_requests_per_second": 3,
"blocks_per_page": 10000,
"file_upload_mb": 5,
"guest_limit": 100
}
},
"gemini": {
"service": "Google Gemini",
"plan": "Free / Pro",
"guard": "buffer/gemini-staging/",
"quotas": {
"requests_per_minute": 15,
"requests_per_day": 1500,
"context_window_tokens": 1000000,
"personal_context_files": 100
}
},
"github_actions": {
"service": "GitHub Actions",
"plan": "Free",
"guard": "skyeye/guards/actions-guard.json",
"quotas": {
"concurrent_jobs": 20,
"minutes_per_month": 2000,
"job_timeout_hours": 6
}
},
"hibernation_system": {
"service": "SkyEye Hibernation",
"plan": "Internal",
"description": "双节律休眠系统 · 日休眠(03:50 CST) + 周休眠(周六19:00 CST)",
"components": {
"sleep_scheduler": "skyeye/hibernation/sleep-scheduler.js",
"daily_hibernation": "skyeye/hibernation/daily-hibernation.js",
"weekly_hibernation": "skyeye/hibernation/weekly-hibernation.js",
"distributor": "skyeye/hibernation/distributor.js",
"readme_updater": "skyeye/hibernation/readme-status-updater.js",
"overtime_monitor": "skyeye/hibernation/overtime-monitor.js"
},
"storage": {
"checkpoints": "skyeye/hibernation/checkpoints/",
"weekly_snapshots": "skyeye/hibernation/weekly-snapshots/",
"upgrade_packs": "skyeye/hibernation/upgrade-packs/",
"distribution_reports": "skyeye/hibernation/distribution-reports/"
},
"workflows": {
"daily": "skyeye-daily-hibernation.yml",
"weekly": "skyeye-weekly-hibernation.yml"
},
"quotas": {
"daily_hibernation_minutes": 5,
"weekly_hibernation_minutes": 15,
"monthly_budget_minutes": 210,
"comment": "日休眠 30天×5min=150 + 周休眠 4×15min=60 ≈ 210 min/month"
},
"lifeline_tasks": [
{
"id": "TOKEN-RENEW",
"name": "OAuth2 Token 自动续期",
"workflow": "renew-gdrive-tokens.yml",
"hibernate_exempt": true,
"priority": "P0",
"alert_on_failure": true,
"alert_channels": [
"notion-dashboard",
"agent-bulletin"
]
},
{
"id": "TOKEN-HEALTH",
"name": "Token 健康检查",
"workflow": "check-token-health.yml",
"hibernate_exempt": true,
"priority": "P0",
"alert_on_failure": true,
"alert_channels": [
"notion-dashboard",
"agent-bulletin"
]
},
{
"id": "NIGHTLY-REPAIR",
"name": "天眼夜间自动修复引擎 v3.0",
"workflow": "tianyan-nightly-scan.yml",
"hibernate_exempt": true,
"priority": "P0",
"alert_on_failure": true,
"alert_channels": [
"dashboard",
"agent-bulletin"
],
"note": "周六休眠期内仅执行扫描+仪表盘更新,跳过修复/PR"
}
]
},
"gdrive_oauth2": {
"service": "Google Drive OAuth2 Token Management",
"plan": "Internal",
"description": "OAuth2 Token 自动续期引擎 · 6天刷新 + 三层保险 + 天眼生命线豁免",
"registry": "config/gdrive-tokens.json",
"scripts": {
"renew_tokens": "scripts/gdrive/renew-tokens.js",
"check_hibernation": "scripts/gdrive/check-hibernation.js",
"push_alerts": "scripts/gdrive/push-token-alerts.js"
},
"workflows": {
"renew": "renew-gdrive-tokens.yml",
"health_check": "check-token-health.yml"
},
"schedule": {
"renew_a": "每周一 10:00 CST (02:00 UTC)",
"renew_b": "每周四 10:00 CST (02:00 UTC)",
"health_check": "每天 12:15 CST (04:15 UTC)"
}
},
"routing_system": {
"service": "编号路由系统 (ID Routing System)",
"plan": "Internal",
"description": "身份路由表 + 域/频道路由表 + 编号体系全局地图 · 2026-03-24 上线",
"version": "1.0",
"notion_databases": {
"identity_routing_table": {
"id": "A-DB-02",
"name": "🪪 身份路由表",
"description": "所有身份编号的路由映射"
},
"channel_routing_table": {
"id": "A-DB-03",
"name": "🗺️ 域/频道路由表",
"description": "域和频道的路由映射"
},
"id_map": {
"name": "🏔️ 编号体系全局地图 v1.0",
"description": "根节点 SYS-GLW-0001 / 国作登字-2026-A-00037559 / Trinity ID Protocol"
}
},
"github_mirror": ".github/persona-brain/trinity-id.json",
"rule": "编号/频道映射永远查外挂数据库,不写死进任何文件",
"registered_at": "2026-03-24T13:00:00+08:00",
"registered_by": "ZY-SYSBOOT-2026-0324-001"
},
"isrp": {
"service": "ISRP 入口语义解析协议 (Inlet Semantic Routing Protocol)",
"plan": "Internal",
"version": "1.0",
"description": "入口语义解析协议 · 定义人类入场路由逻辑 · Notion 侧运行 · GitHub 侧不需额外文件",
"notion_document": "🧭 入口语义解析协议 · ISRP v1.0",
"github_side": "awareness_only",
"registered_at": "2026-03-24T13:00:00+08:00",
"registered_by": "ZY-SYSBOOT-2026-0324-001"
},
"tianyan_nightly_repair": {
"service": "TianYan Nightly Auto-Repair Engine v3.0",
"plan": "Internal",
"description": "天眼夜间自动修复引擎 · 扫描→分析→修复→审核→PR→仪表盘 七阶段闭环",
"config": ".github/tianyan-config.json",
"scripts": {
"analyze": ".github/scripts/tianyan-analyze.js",
"repair": ".github/scripts/tianyan-repair.js",
"review": ".github/scripts/tianyan-review.js"
},
"workflows": {
"nightly_scan": "tianyan-nightly-scan.yml",
"merge_watchdog": "merge-watchdog.yml"
},
"dashboard": "DASHBOARD.md",
"watchdog_records": "docs/dashboard/watchdog-records.json",
"schedule": {
"nightly_scan": "每天 23:00 CST (15:00 UTC)",
"merge_watchdog": "事件驱动PR合并时触发"
},
"agents": [
"AG-ZY-087",
"AG-ZY-088"
]
},
"sync_dev_status": {
"node_id": "SYNC-DEV-STATUS-V1",
"service": "dev-status.json 同步 · 霜砚签发制",
"plan": "Internal",
"type": "sync_pipeline",
"description": "霜砚签发AG-SY-01→ 铸渊接收写入AG-ZY-01· 签名可校验可溯源可审计",
"workflow": ".github/workflows/sync-dev-status.yml",
"repair_workflow": ".github/workflows/skyeye-devsync-repair.yml",
"script": "scripts/sync-dev-status.js",
"data_file": ".github/persona-brain/dev-status.json",
"sync_log": ".github/persona-brain/dev-status-sync-log.json",
"schedule": {
"sync": [
"09:00 CST (01:00 UTC)",
"22:00 CST (14:00 UTC)"
],
"monitor": "08:30 CST (00:30 UTC)"
},
"thresholds": {
"green_hours": 14,
"yellow_hours": 48,
"red_hours": 48
},
"alert_mechanism": "github_issue",
"alert_target": "repo_owner",
"mechanism": "shuangyan-signed-v1.0",
"instruction_ref": "ZY-DEVSYNC-REBUILD-2026-0325-001",
"created": "2026-03-25",
"status": "active"
},
"guanghulab_website": {
"service": "guanghulab.com Web Deployment",
"server_ip": "43.134.16.246",
"old_server_ip": "150.109.76.244 (香港·ZY-SVR-001·已弃用) / 8.155.62.235 (阿里云·已弃用)",
"server_provider": "腾讯云轻量应用服务器 · 新加坡二区",
"server_code": "ZY-SVR-002",
"domain": "guanghulab.com",
"deploy_path": "/opt/zhuyuan",
"stack": {
"runtime": "Node.js 20",
"process_manager": "PM2",
"web_server": "Nginx",
"ssl": "Let's Encrypt (pending)"
},
"services": {
"api_proxy": {
"port": 3721,
"name": "guanghulab-proxy",
"desc": "AI 聊天代理 SSE"
},
"backend": {
"port": 3000,
"name": "guanghulab-backend",
"desc": "Express 主后端"
},
"hli": {
"port": 3001,
"name": "guanghulab",
"desc": "HLI 中间层"
},
"persona_studio": {
"port": 3002,
"name": "persona-studio",
"desc": "Persona Studio 后端"
},
"websocket": {
"port": 8080,
"name": "guanghulab-ws",
"desc": "看板 WebSocket"
}
},
"cd_workflow": "deploy-to-server.yml",
"guard": "skyeye/guards/web-deploy-guard.json",
"human_side_checks": [
"国内手机浏览器可访问 guanghulab.com",
"Persona Studio 核心功能可用",
"模块导航无死链",
"无需手动输入 API 密钥(服务器代理模式)"
],
"instruction_ref": "ZY-HUMANSIDE-FIX-2026-0325-002",
"created": "2026-03-25",
"status": "active"
}
}
}