Public release release-01875e88a3e2
Source commit: 01875e88a3e25379c309489f9f057dd97c0d37de Public tree identity: sha256:8f37a1aa0cc8f408975daf9cabbe193f8f4c169c6d25e8795e67a3ed5083c76b
This commit is contained in:
commit
c1769967c1
210 changed files with 78680 additions and 0 deletions
43
scripts/coordinator-wire.js
Normal file
43
scripts/coordinator-wire.js
Normal file
|
|
@ -0,0 +1,43 @@
|
|||
let requestId = 0;
|
||||
|
||||
function coordinatorWireRequest(payload, prefix = "acceptance") {
|
||||
if (payload && payload.type === "coordinator_request") return payload;
|
||||
if (!payload || typeof payload.type !== "string" || !payload.type.trim()) {
|
||||
throw new Error("coordinator payload must have a non-empty type");
|
||||
}
|
||||
requestId += 1;
|
||||
return {
|
||||
type: "coordinator_request",
|
||||
protocol_version: 1,
|
||||
request_id: `${prefix}-${process.pid}-${requestId}`,
|
||||
operation: payload.type,
|
||||
authentication: authenticationMetadata(payload),
|
||||
payload,
|
||||
};
|
||||
}
|
||||
|
||||
function authenticationMetadata(payload) {
|
||||
if (payload.type === "authenticated") {
|
||||
return {
|
||||
kind: "cli_session",
|
||||
session: true,
|
||||
request_operation: payload.request?.type || "unknown",
|
||||
};
|
||||
}
|
||||
if (payload.type === "signed_node" || payload.node_signature) {
|
||||
return { kind: "node_signature", node: payload.node || null };
|
||||
}
|
||||
if (payload.agent_signature) {
|
||||
return {
|
||||
kind: "agent_signature",
|
||||
agent: payload.actor_agent || null,
|
||||
fingerprint: payload.agent_public_key_fingerprint || null,
|
||||
};
|
||||
}
|
||||
if (payload.admin_token) {
|
||||
return { kind: "admin_credential" };
|
||||
}
|
||||
return { kind: "none" };
|
||||
}
|
||||
|
||||
module.exports = { coordinatorWireRequest };
|
||||
Loading…
Add table
Add a link
Reference in a new issue