315 lines
10 KiB
JSON
315 lines
10 KiB
JSON
{
|
||
"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"
|
||
}
|
||
}
|
||
}
|