refactor: expose node pairing approval scopes

This commit is contained in:
Peter Steinberger
2026-04-04 19:22:51 +09:00
parent 848e7abb57
commit 01a24c20bf
7 changed files with 141 additions and 33 deletions

View File

@@ -12,11 +12,25 @@ describe("shared/node-list-parse", () => {
it("parses node.pair.list payloads", () => {
expect(
parsePairingList({
pending: [{ requestId: "r1", nodeId: "n1", ts: 1 }],
pending: [
{
requestId: "r1",
nodeId: "n1",
ts: 1,
requiredApproveScopes: ["operator.pairing"],
},
],
paired: [{ nodeId: "n1" }],
}),
).toEqual({
pending: [{ requestId: "r1", nodeId: "n1", ts: 1 }],
pending: [
{
requestId: "r1",
nodeId: "n1",
ts: 1,
requiredApproveScopes: ["operator.pairing"],
},
],
paired: [{ nodeId: "n1" }],
});
expect(parsePairingList({ pending: 1, paired: "x" })).toEqual({ pending: [], paired: [] });

View File

@@ -30,6 +30,8 @@ export type PendingRequest = {
uiVersion?: string;
remoteIp?: string;
ts: number;
commands?: string[];
requiredApproveScopes?: Array<"operator.pairing" | "operator.write" | "operator.admin">;
};
export type PairedNode = {