[HLCC-ICE-000001][ZY-CONTRIB-20260723-001] feat: 以来光者贡献链启用冰朔第五域个人子频道
This commit is contained in:
commit
5615453e4e
660 changed files with 122355 additions and 0 deletions
|
|
@ -0,0 +1,49 @@
|
|||
"use strict";
|
||||
|
||||
const fs = require("node:fs");
|
||||
const crypto = require("node:crypto");
|
||||
const { execFileSync } = require("node:child_process");
|
||||
|
||||
const candidates = [
|
||||
"/opt/zhuyuan/gatekeeper/engine-v3.js",
|
||||
"/opt/engine.js"
|
||||
];
|
||||
|
||||
function digest(file) {
|
||||
return crypto.createHash("sha256").update(fs.readFileSync(file)).digest("hex");
|
||||
}
|
||||
|
||||
function pm2Info() {
|
||||
try {
|
||||
const list = JSON.parse(execFileSync("/usr/bin/env", ["pm2", "jlist"], { encoding: "utf8", timeout: 10000 }));
|
||||
return list.filter((item) => /engine|gatekeeper/i.test(item.name || "")).map((item) => ({
|
||||
name: item.name,
|
||||
status: item.pm2_env?.status,
|
||||
script: item.pm2_env?.pm_exec_path,
|
||||
restart_time: item.pm2_env?.restart_time,
|
||||
started_at: item.pm2_env?.pm_uptime ? new Date(item.pm2_env.pm_uptime).toISOString() : null
|
||||
}));
|
||||
} catch (error) {
|
||||
return [{ error: error.message.slice(0, 300) }];
|
||||
}
|
||||
}
|
||||
|
||||
const files = candidates.filter((file) => fs.existsSync(file)).map((file) => {
|
||||
const source = fs.readFileSync(file, "utf8");
|
||||
return {
|
||||
path: file,
|
||||
sha256: digest(file),
|
||||
contains_direct_email_mode: source.includes("requestEmail") || source.includes("email_mode: requestEmail"),
|
||||
contains_hmac_headers: source.includes("X-Sovereign") && source.includes("X-Minute"),
|
||||
contains_auth_request: source.includes("/auth/request"),
|
||||
contains_exec_route: source.includes("/exec")
|
||||
};
|
||||
});
|
||||
|
||||
process.stdout.write(`${JSON.stringify({
|
||||
ok: true,
|
||||
checked_at: new Date().toISOString(),
|
||||
hostname: require("node:os").hostname(),
|
||||
files,
|
||||
pm2: pm2Info()
|
||||
}, null, 2)}\n`);
|
||||
Loading…
Reference in a new issue