@dsh-enhanced/assistant-actions 0.1.30

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (76) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +247 -0
  3. package/cordis.patch.yml +3 -0
  4. package/lib/broker-cli.d.ts +70 -0
  5. package/lib/broker-cli.d.ts.map +1 -0
  6. package/lib/broker-cli.js +255 -0
  7. package/lib/broker-cli.js.map +1 -0
  8. package/lib/broker-client.d.ts +54 -0
  9. package/lib/broker-client.d.ts.map +1 -0
  10. package/lib/broker-client.js +266 -0
  11. package/lib/broker-client.js.map +1 -0
  12. package/lib/broker-core.d.ts +51 -0
  13. package/lib/broker-core.d.ts.map +1 -0
  14. package/lib/broker-core.js +441 -0
  15. package/lib/broker-core.js.map +1 -0
  16. package/lib/broker-ledger.d.ts +131 -0
  17. package/lib/broker-ledger.d.ts.map +1 -0
  18. package/lib/broker-ledger.js +925 -0
  19. package/lib/broker-ledger.js.map +1 -0
  20. package/lib/broker-peer-linux.d.ts +23 -0
  21. package/lib/broker-peer-linux.d.ts.map +1 -0
  22. package/lib/broker-peer-linux.js +68 -0
  23. package/lib/broker-peer-linux.js.map +1 -0
  24. package/lib/broker-protocol.d.ts +419 -0
  25. package/lib/broker-protocol.d.ts.map +1 -0
  26. package/lib/broker-protocol.js +786 -0
  27. package/lib/broker-protocol.js.map +1 -0
  28. package/lib/broker-server.d.ts +77 -0
  29. package/lib/broker-server.d.ts.map +1 -0
  30. package/lib/broker-server.js +467 -0
  31. package/lib/broker-server.js.map +1 -0
  32. package/lib/cli.d.ts +3 -0
  33. package/lib/cli.d.ts.map +1 -0
  34. package/lib/cli.js +36 -0
  35. package/lib/cli.js.map +1 -0
  36. package/lib/config.d.ts +54 -0
  37. package/lib/config.d.ts.map +1 -0
  38. package/lib/config.js +165 -0
  39. package/lib/config.js.map +1 -0
  40. package/lib/external-delivery-receipt.d.ts +11 -0
  41. package/lib/external-delivery-receipt.d.ts.map +1 -0
  42. package/lib/external-delivery-receipt.js +25 -0
  43. package/lib/external-delivery-receipt.js.map +1 -0
  44. package/lib/github.d.ts +78 -0
  45. package/lib/github.d.ts.map +1 -0
  46. package/lib/github.js +611 -0
  47. package/lib/github.js.map +1 -0
  48. package/lib/index.d.ts +19 -0
  49. package/lib/index.d.ts.map +1 -0
  50. package/lib/index.js +23 -0
  51. package/lib/index.js.map +1 -0
  52. package/lib/ledger.d.ts +78 -0
  53. package/lib/ledger.d.ts.map +1 -0
  54. package/lib/ledger.js +1064 -0
  55. package/lib/ledger.js.map +1 -0
  56. package/lib/repository-readback.d.ts +34 -0
  57. package/lib/repository-readback.d.ts.map +1 -0
  58. package/lib/repository-readback.js +193 -0
  59. package/lib/repository-readback.js.map +1 -0
  60. package/lib/service.d.ts +86 -0
  61. package/lib/service.d.ts.map +1 -0
  62. package/lib/service.js +1259 -0
  63. package/lib/service.js.map +1 -0
  64. package/lib/types.d.ts +174 -0
  65. package/lib/types.d.ts.map +1 -0
  66. package/lib/types.js +2 -0
  67. package/lib/types.js.map +1 -0
  68. package/lib/verified-delivery.d.ts +104 -0
  69. package/lib/verified-delivery.d.ts.map +1 -0
  70. package/lib/verified-delivery.js +262 -0
  71. package/lib/verified-delivery.js.map +1 -0
  72. package/lib/version.d.ts +2 -0
  73. package/lib/version.d.ts.map +1 -0
  74. package/lib/version.js +2 -0
  75. package/lib/version.js.map +1 -0
  76. package/package.json +123 -0
@@ -0,0 +1 @@
1
+ {"version":3,"file":"broker-ledger.js","sourceRoot":"","sources":["../src/broker-ledger.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,23 @@
1
+ import type { BrokerPeerCredentialInspector } from './broker-server.js';
2
+ interface NativePeerCredentials {
3
+ pid?: unknown;
4
+ uid?: unknown;
5
+ gid?: unknown;
6
+ }
7
+ interface NativePeercredBinding {
8
+ readonly getsockopt: (fd: number, level: number, option: number, value: NativePeerCredentials, length: number[]) => number;
9
+ }
10
+ export declare const LINUX_SOL_SOCKET = 1;
11
+ export declare const LINUX_SO_PEERCRED = 17;
12
+ export declare const LINUX_UCRED_SIZE = 12;
13
+ export declare function createLinuxPeerCredentialInspector(loadNative?: () => NativePeercredBinding | undefined, platform?: NodeJS.Platform): BrokerPeerCredentialInspector;
14
+ /**
15
+ * Linux kernel peer credential inspector for accepted Unix-domain sockets.
16
+ *
17
+ * Returns undefined on every unsupported or ambiguous path so callers fail
18
+ * closed instead of trusting process-level or fixture-provided identities.
19
+ */
20
+ export declare const inspectLinuxPeerCredentials: BrokerPeerCredentialInspector;
21
+ export declare function linuxPeerCredentialsAvailable(): boolean;
22
+ export {};
23
+ //# sourceMappingURL=broker-peer-linux.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"broker-peer-linux.d.ts","sourceRoot":"","sources":["../src/broker-peer-linux.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAyB,6BAA6B,EAAE,MAAM,oBAAoB,CAAA;AAM9F,UAAU,qBAAqB;IAC7B,GAAG,CAAC,EAAE,OAAO,CAAA;IACb,GAAG,CAAC,EAAE,OAAO,CAAA;IACb,GAAG,CAAC,EAAE,OAAO,CAAA;CACd;AAED,UAAU,qBAAqB;IAC7B,QAAQ,CAAC,UAAU,EAAE,CAAC,EAAE,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,qBAAqB,EAAE,MAAM,EAAE,MAAM,EAAE,KAAK,MAAM,CAAA;CAC3H;AAED,eAAO,MAAM,gBAAgB,IAAI,CAAA;AACjC,eAAO,MAAM,iBAAiB,KAAK,CAAA;AACnC,eAAO,MAAM,gBAAgB,KAAK,CAAA;AA+BlC,wBAAgB,kCAAkC,CAAC,UAAU,GAAE,MAAM,qBAAqB,GAAG,SAAuB,EAAE,QAAQ,GAAE,MAAM,CAAC,QAA2B,GAAG,6BAA6B,CAgBjM;AAED;;;;;GAKG;AACH,eAAO,MAAM,2BAA2B,EAAE,6BAAoE,CAAA;AAE9G,wBAAgB,6BAA6B,IAAI,OAAO,CAEvD"}
@@ -0,0 +1,68 @@
1
+ import { createRequire } from 'node:module';
2
+ export const LINUX_SOL_SOCKET = 1;
3
+ export const LINUX_SO_PEERCRED = 17;
4
+ export const LINUX_UCRED_SIZE = 12;
5
+ const MAX_KERNEL_ID = 0x7fffffff;
6
+ let binding;
7
+ let bindingFailed = false;
8
+ const require = createRequire(import.meta.url);
9
+ function validKernelId(value, minimum) {
10
+ return typeof value === 'number' && Number.isSafeInteger(value) && value >= minimum && value <= MAX_KERNEL_ID;
11
+ }
12
+ function socketFd(socket) {
13
+ const fd = socket._handle?.fd;
14
+ return validKernelId(fd, 0) ? fd : undefined;
15
+ }
16
+ function loadBinding() {
17
+ if (binding || bindingFailed)
18
+ return binding;
19
+ try {
20
+ const koffi = require('koffi');
21
+ const ucred = koffi.struct('dsh_assistant_actions_linux_ucred', { pid: 'int', uid: 'uint', gid: 'uint' });
22
+ const libc = koffi.load('libc.so.6');
23
+ binding = {
24
+ getsockopt: libc.func('getsockopt', 'int', ['int', 'int', 'int', koffi.out(koffi.pointer(ucred)), koffi.inout(koffi.pointer('uint'))]),
25
+ };
26
+ }
27
+ catch {
28
+ bindingFailed = true;
29
+ }
30
+ return binding;
31
+ }
32
+ export function createLinuxPeerCredentialInspector(loadNative = loadBinding, platform = process.platform) {
33
+ return (socket) => {
34
+ if (platform !== 'linux')
35
+ return undefined;
36
+ const fd = socketFd(socket);
37
+ if (fd === undefined)
38
+ return undefined;
39
+ const native = loadNative();
40
+ if (!native)
41
+ return undefined;
42
+ const credential = {};
43
+ const length = [LINUX_UCRED_SIZE];
44
+ let rc;
45
+ try {
46
+ rc = native.getsockopt(fd, LINUX_SOL_SOCKET, LINUX_SO_PEERCRED, credential, length);
47
+ }
48
+ catch {
49
+ return undefined;
50
+ }
51
+ if (rc !== 0 || length[0] !== LINUX_UCRED_SIZE)
52
+ return undefined;
53
+ if (!validKernelId(credential.pid, 1) || !validKernelId(credential.uid, 0) || !validKernelId(credential.gid, 0))
54
+ return undefined;
55
+ return { pid: credential.pid, uid: credential.uid, gid: credential.gid };
56
+ };
57
+ }
58
+ /**
59
+ * Linux kernel peer credential inspector for accepted Unix-domain sockets.
60
+ *
61
+ * Returns undefined on every unsupported or ambiguous path so callers fail
62
+ * closed instead of trusting process-level or fixture-provided identities.
63
+ */
64
+ export const inspectLinuxPeerCredentials = createLinuxPeerCredentialInspector();
65
+ export function linuxPeerCredentialsAvailable() {
66
+ return process.platform === 'linux' && !!loadBinding();
67
+ }
68
+ //# sourceMappingURL=broker-peer-linux.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"broker-peer-linux.js","sourceRoot":"","sources":["../src/broker-peer-linux.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,419 @@
1
+ import { KeyObject } from 'node:crypto';
2
+ export declare const GITHUB_BROKER_PROTOCOL: "assistant-actions/github-broker/v1";
3
+ export declare const GITHUB_BROKER_REQUEST_MAX_BYTES: number;
4
+ export declare const GITHUB_BROKER_RESPONSE_MAX_BYTES: number;
5
+ export declare const GITHUB_BROKER_DEFAULT_HELLO_TTL_MS = 30000;
6
+ /** Canonical JSON input type; successful inspect responses use stricter DTOs below. */
7
+ export type BrokerJson = null | boolean | number | string | readonly BrokerJson[] | {
8
+ readonly [key: string]: BrokerJson;
9
+ };
10
+ export declare class BrokerProtocolError extends Error {
11
+ readonly code: string;
12
+ constructor(code: string, message: string);
13
+ }
14
+ /** RFC-8785-style deterministic JSON for this integer-only protocol. */
15
+ export declare function canonicalBrokerJson(value: unknown): string;
16
+ export declare function brokerDigest(value: unknown): string;
17
+ export declare function encodeBrokerFrame(value: unknown, maxBytes: number): Buffer;
18
+ /** Incremental four-byte big-endian length-prefixed canonical JSON decoder. */
19
+ export declare class BrokerFrameDecoder {
20
+ #private;
21
+ constructor(maxBytes: number, maxFrames?: number);
22
+ push(chunk: Buffer | Uint8Array): unknown[];
23
+ finish(): void;
24
+ get frameCount(): number;
25
+ }
26
+ type KeyInput = KeyObject | string | Buffer;
27
+ export interface BrokerServerHelloUnsigned {
28
+ protocol: typeof GITHUB_BROKER_PROTOCOL;
29
+ type: 'server-hello';
30
+ instanceId: string;
31
+ generation: number;
32
+ policyEpoch: number;
33
+ emergencyEpoch: number;
34
+ challenge: string;
35
+ expiresAt: number;
36
+ }
37
+ export interface BrokerServerHello extends BrokerServerHelloUnsigned {
38
+ signature: string;
39
+ }
40
+ export declare function createBrokerServerHello(input: {
41
+ instanceId: string;
42
+ generation: number;
43
+ policyEpoch: number;
44
+ emergencyEpoch: number;
45
+ expiresAt: number;
46
+ challenge?: string;
47
+ }, key: KeyInput): BrokerServerHello;
48
+ export declare function verifyBrokerServerHello(value: unknown, key: KeyInput, options?: {
49
+ now?: number;
50
+ maxTtlMs?: number;
51
+ expectedInstanceId?: string;
52
+ minimumGeneration?: number;
53
+ }): BrokerServerHello;
54
+ export type BrokerEndpoint = {
55
+ kind: 'assistant-actions-host';
56
+ instanceId: string;
57
+ generation: number;
58
+ } | {
59
+ kind: 'github-broker';
60
+ instanceId: string;
61
+ generation: number;
62
+ };
63
+ export type BrokerSourceClassification = 'public' | 'internal' | 'confidential' | 'restricted';
64
+ export interface BrokerDataSource {
65
+ classification: BrokerSourceClassification;
66
+ provenanceDigest: string;
67
+ }
68
+ export interface BrokerDestination {
69
+ classification: 'github-repository';
70
+ repository: string;
71
+ branch: string;
72
+ baseBranch?: string;
73
+ }
74
+ export interface BrokerBudget {
75
+ reservationId: string;
76
+ actions: number;
77
+ bytes: number;
78
+ costMetric: 'github-api-units';
79
+ maxCostUnits: number;
80
+ }
81
+ export interface BrokerCommitPayload {
82
+ expectedHeadOid: string;
83
+ headline: string;
84
+ files: readonly Readonly<{
85
+ path: string;
86
+ content: string;
87
+ }>[];
88
+ }
89
+ export interface BrokerPullRequestPayload {
90
+ expectedHeadOid: string;
91
+ title: string;
92
+ body: string;
93
+ }
94
+ export interface BrokerInspectPayload {
95
+ kind: 'repository' | 'branch' | 'file' | 'pull-request' | 'checks' | 'reviews';
96
+ path?: string;
97
+ pullRequestNumber?: number;
98
+ }
99
+ export type BrokerOperation = 'commit' | 'inspect' | 'pull-request';
100
+ export type BrokerOperationPayload = BrokerCommitPayload | BrokerInspectPayload | BrokerPullRequestPayload;
101
+ export interface BrokerRequestIntent {
102
+ actionId: string;
103
+ grantId: string;
104
+ grantRevision: number;
105
+ grantDigest: string;
106
+ owner: {
107
+ principalDigest: string;
108
+ principalRecordId: string;
109
+ principalVersion: number;
110
+ workspace: string;
111
+ preset: string;
112
+ bindingId: string;
113
+ bindingVersion: number;
114
+ bindingGeneration: number;
115
+ };
116
+ sessionId: string;
117
+ agentId: string;
118
+ rootCallId: string;
119
+ callId: string;
120
+ operation: BrokerOperation;
121
+ source: BrokerDataSource;
122
+ destination: BrokerDestination;
123
+ payload: BrokerOperationPayload;
124
+ deadline: number;
125
+ budget: BrokerBudget;
126
+ }
127
+ export interface BrokerClientRequestUnsigned extends BrokerRequestIntent {
128
+ protocol: typeof GITHUB_BROKER_PROTOCOL;
129
+ type: 'client-request';
130
+ requestId: string;
131
+ challenge: string;
132
+ client: Extract<BrokerEndpoint, {
133
+ kind: 'assistant-actions-host';
134
+ }>;
135
+ broker: Extract<BrokerEndpoint, {
136
+ kind: 'github-broker';
137
+ }>;
138
+ payloadDigest: string;
139
+ policyEpoch: number;
140
+ emergencyEpoch: number;
141
+ clientKeyId: string;
142
+ }
143
+ export interface BrokerClientRequest extends BrokerClientRequestUnsigned {
144
+ signature: string;
145
+ }
146
+ export interface BrokerGrantAuthorityUnsigned {
147
+ protocol: 'assistant-actions/external-github-grant/v1';
148
+ id: string;
149
+ revision: number;
150
+ clientKeyId: string;
151
+ owner: BrokerRequestIntent['owner'];
152
+ sessionId: string;
153
+ destination: BrokerDestination & {
154
+ paths: readonly string[];
155
+ };
156
+ credentialId: string;
157
+ expiresAt: number;
158
+ maxActions: number;
159
+ maxTotalBytes: number;
160
+ maxCostUnits: number;
161
+ allowedOperations: readonly BrokerOperation[];
162
+ allowedInspectKinds: readonly BrokerInspectPayload['kind'][];
163
+ verifiedDelivery?: {
164
+ ownerRouteId: string;
165
+ budgetId: string;
166
+ acceptance?: 'goal-outcome' | 'goal-step';
167
+ };
168
+ client: Extract<BrokerEndpoint, {
169
+ kind: 'assistant-actions-host';
170
+ }>;
171
+ source: BrokerDataSource;
172
+ policyEpoch: number;
173
+ emergencyEpoch: number;
174
+ }
175
+ export interface BrokerGrantProjection {
176
+ id: string;
177
+ revision: number;
178
+ grantDigest: string;
179
+ owner: BrokerRequestIntent['owner'];
180
+ sessionId: string;
181
+ destination: BrokerDestination & {
182
+ paths: readonly string[];
183
+ };
184
+ expiresAt: number;
185
+ maxActions: number;
186
+ maxTotalBytes: number;
187
+ source: BrokerDataSource;
188
+ maxCostUnits: number;
189
+ allowedOperations: readonly BrokerOperation[];
190
+ allowedInspectKinds: readonly BrokerInspectPayload['kind'][];
191
+ verifiedDelivery?: {
192
+ ownerRouteId: string;
193
+ budgetId: string;
194
+ acceptance?: 'goal-outcome' | 'goal-step';
195
+ };
196
+ }
197
+ /**
198
+ * Canonical digest of the broker-authoritative grant, including fields that
199
+ * remain private to the broker. Host projections consume this issued digest;
200
+ * they must never attempt to reconstruct it from a reduced mirror.
201
+ */
202
+ export declare function normalizeBrokerGrantAuthority(value: unknown): BrokerGrantAuthorityUnsigned;
203
+ export declare function brokerGrantAuthorityDigest(grant: BrokerGrantAuthorityUnsigned): string;
204
+ export declare function createBrokerGrantProjection(grant: BrokerGrantAuthorityUnsigned): BrokerGrantProjection;
205
+ export declare function normalizeBrokerGrantProjection(value: unknown): BrokerGrantProjection;
206
+ export declare function createBrokerClientRequest(input: BrokerRequestIntent, hello: BrokerServerHello, source: Extract<BrokerEndpoint, {
207
+ kind: 'assistant-actions-host';
208
+ }>, clientKeyId: string, key: KeyInput, requestId?: string): BrokerClientRequest;
209
+ export declare function verifyBrokerClientRequest(value: unknown, hello: BrokerServerHello, key: KeyInput, options?: {
210
+ now?: number;
211
+ expectedClientKeyId?: string;
212
+ }): BrokerClientRequest;
213
+ /** Stable action semantics used by the durable actionId idempotency ledger. */
214
+ export declare function brokerRequestDigest(request: BrokerClientRequest): string;
215
+ /** Per-connection digest used only to bind a response to its exact signed request. */
216
+ export declare function brokerWireRequestDigest(request: BrokerClientRequest): string;
217
+ export type BrokerSuccessResult = {
218
+ operation: 'commit';
219
+ repository: string;
220
+ branch: string;
221
+ parentOid: string;
222
+ commitOid: string;
223
+ } | {
224
+ operation: 'pull-request';
225
+ repository: string;
226
+ branch: string;
227
+ baseBranch: string;
228
+ expectedHeadOid: string;
229
+ pullRequestNumber: number;
230
+ } | {
231
+ operation: 'inspect';
232
+ repository: string;
233
+ branch: string;
234
+ kind: BrokerInspectPayload['kind'];
235
+ observed: BrokerInspectObservation;
236
+ observedDigest: string;
237
+ };
238
+ export interface BrokerRepositoryObservation {
239
+ full_name: string;
240
+ untrusted: true;
241
+ }
242
+ export interface BrokerBranchObservation {
243
+ name: string;
244
+ commit: {
245
+ sha: string;
246
+ };
247
+ untrusted: true;
248
+ }
249
+ export interface BrokerFileObservation {
250
+ path: string;
251
+ sha: string;
252
+ content: string;
253
+ untrusted: true;
254
+ }
255
+ export interface BrokerPullRequestScope {
256
+ number: number;
257
+ state: 'open' | 'closed';
258
+ merged: boolean;
259
+ head: {
260
+ ref: string;
261
+ sha: string;
262
+ repo: {
263
+ full_name: string;
264
+ };
265
+ };
266
+ base: {
267
+ ref: string;
268
+ repo: {
269
+ full_name: string;
270
+ };
271
+ };
272
+ }
273
+ export interface BrokerPullRequestObservation extends BrokerPullRequestScope {
274
+ untrusted: true;
275
+ }
276
+ export interface BrokerCheckObservation {
277
+ id: number;
278
+ name: string;
279
+ status: 'queued' | 'in_progress' | 'completed' | 'waiting' | 'requested' | 'pending';
280
+ conclusion: string | null;
281
+ head_sha: string;
282
+ app: {
283
+ id: number;
284
+ };
285
+ }
286
+ export interface BrokerReviewObservation {
287
+ id: number;
288
+ state: 'APPROVED' | 'CHANGES_REQUESTED' | 'COMMENTED' | 'DISMISSED' | 'PENDING';
289
+ commit_id: string;
290
+ user: {
291
+ id: number;
292
+ };
293
+ submitted_at?: string;
294
+ }
295
+ export interface BrokerChecksObservation {
296
+ pullRequest: BrokerPullRequestScope;
297
+ headOid: string;
298
+ items: readonly BrokerCheckObservation[];
299
+ truncated: boolean;
300
+ untrusted: true;
301
+ }
302
+ export interface BrokerReviewsObservation {
303
+ pullRequest: BrokerPullRequestScope;
304
+ headOid: string;
305
+ items: readonly BrokerReviewObservation[];
306
+ truncated: boolean;
307
+ untrusted: true;
308
+ }
309
+ export type BrokerInspectObservation = BrokerRepositoryObservation | BrokerBranchObservation | BrokerFileObservation | BrokerPullRequestObservation | BrokerChecksObservation | BrokerReviewsObservation;
310
+ export interface BrokerResponseError {
311
+ code: string;
312
+ }
313
+ export interface BrokerServerResponseUnsigned {
314
+ protocol: typeof GITHUB_BROKER_PROTOCOL;
315
+ type: 'server-response';
316
+ requestId: string;
317
+ actionId: string;
318
+ instanceId: string;
319
+ generation: number;
320
+ challenge: string;
321
+ requestDigest: string;
322
+ status: 'succeeded' | 'failed' | 'unknown';
323
+ dispatched: boolean;
324
+ result: BrokerSuccessResult | null;
325
+ error: BrokerResponseError | null;
326
+ completedAt: number;
327
+ }
328
+ export interface BrokerServerResponse extends BrokerServerResponseUnsigned {
329
+ signature: string;
330
+ }
331
+ export declare function normalizeBrokerInspectObservation(payload: BrokerInspectPayload, value: unknown, destination: BrokerDestination): BrokerInspectObservation;
332
+ export declare function createBrokerServerResponse(input: Pick<BrokerServerResponseUnsigned, 'status' | 'dispatched' | 'result' | 'error' | 'completedAt'>, request: BrokerClientRequest, hello: BrokerServerHello, key: KeyInput): BrokerServerResponse;
333
+ export declare function verifyBrokerServerResponse(value: unknown, request: BrokerClientRequest, hello: BrokerServerHello, key: KeyInput): BrokerServerResponse;
334
+ export interface BrokerAdminEndpoint {
335
+ kind: 'assistant-actions-admin';
336
+ instanceId: string;
337
+ generation: number;
338
+ }
339
+ export type BrokerAdminIntent = {
340
+ operation: 'status';
341
+ body: Record<string, never>;
342
+ deadline: number;
343
+ } | {
344
+ operation: 'stop';
345
+ body: {
346
+ expectedControlVersion: number;
347
+ drainDeadline: number;
348
+ reason: 'operator-request' | 'security-response' | 'maintenance';
349
+ };
350
+ deadline: number;
351
+ } | {
352
+ operation: 'resume';
353
+ body: {
354
+ expectedControlVersion: number;
355
+ expectedGeneration: number;
356
+ };
357
+ deadline: number;
358
+ } | {
359
+ operation: 'revoke';
360
+ body: {
361
+ expectedControlVersion: number;
362
+ grantId: string;
363
+ grantRevision: number;
364
+ grantDigest: string;
365
+ policyEpoch: number;
366
+ emergencyEpoch: number;
367
+ reason: 'operator-request' | 'security-response' | 'grant-replaced' | 'grant-expired';
368
+ };
369
+ deadline: number;
370
+ };
371
+ export interface BrokerAdminRequestUnsigned {
372
+ protocol: typeof GITHUB_BROKER_PROTOCOL;
373
+ type: 'admin-request';
374
+ requestId: string;
375
+ nonce: string;
376
+ challenge: string;
377
+ source: BrokerAdminEndpoint;
378
+ destination: BrokerEndpoint;
379
+ operation: BrokerAdminIntent['operation'];
380
+ body: BrokerAdminIntent['body'];
381
+ deadline: number;
382
+ adminKeyId: string;
383
+ }
384
+ export interface BrokerAdminRequest extends BrokerAdminRequestUnsigned {
385
+ signature: string;
386
+ }
387
+ export declare function createBrokerAdminRequest(input: BrokerAdminIntent, hello: BrokerServerHello, source: BrokerAdminEndpoint, adminKeyId: string, key: KeyInput, requestId?: string, nonce?: string): BrokerAdminRequest;
388
+ export declare function verifyBrokerAdminRequest(value: unknown, hello: BrokerServerHello, key: KeyInput, options?: {
389
+ now?: number;
390
+ expectedAdminKeyId?: string;
391
+ }): BrokerAdminRequest;
392
+ export declare function brokerAdminRequestDigest(request: BrokerAdminRequest): string;
393
+ export interface BrokerAdminState {
394
+ admission: 'accepting' | 'draining' | 'stopped';
395
+ generation: number;
396
+ controlVersion: number;
397
+ activeRequests: number;
398
+ revocationEpoch: number;
399
+ }
400
+ export interface BrokerAdminResponseUnsigned {
401
+ protocol: typeof GITHUB_BROKER_PROTOCOL;
402
+ type: 'admin-response';
403
+ requestId: string;
404
+ instanceId: string;
405
+ generation: number;
406
+ challenge: string;
407
+ requestDigest: string;
408
+ status: 'succeeded' | 'failed';
409
+ state: BrokerAdminState;
410
+ error: BrokerResponseError | null;
411
+ completedAt: number;
412
+ }
413
+ export interface BrokerAdminResponse extends BrokerAdminResponseUnsigned {
414
+ signature: string;
415
+ }
416
+ export declare function createBrokerAdminResponse(input: Pick<BrokerAdminResponseUnsigned, 'status' | 'state' | 'error' | 'completedAt'>, request: BrokerAdminRequest, hello: BrokerServerHello, key: KeyInput): BrokerAdminResponse;
417
+ export declare function verifyBrokerAdminResponse(value: unknown, request: BrokerAdminRequest, hello: BrokerServerHello, key: KeyInput): BrokerAdminResponse;
418
+ export {};
419
+ //# sourceMappingURL=broker-protocol.d.ts.map