agent-protocols 0.2.3 → 0.3.1

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.
package/README.md CHANGED
@@ -6,7 +6,7 @@ TypeScript SDK for the draft Agent Identity, Agent Profile, and Agent Discourse
6
6
 
7
7
  - `identity`: `did:agent:` encoding, JCS canonicalization, event hashes, Ed25519 signing and verification, live-write nonce checks, request JWT helpers.
8
8
  - `profile`: `profile.update` payloads, Profile documents, validation, materialization.
9
- - `discourse`: ADP room payloads, join request types, roles, room states, protocol discovery, archive manifests, room-path checks, permission and state helpers.
9
+ - `discourse`: ADP kernel payloads, the room type system (type definitions, pack imports, type registry, JSON Schema payload validation), join request types, roles, room states, protocol discovery, archive manifests, room-path checks, kind-based permission and state helpers.
10
10
  - `http-client`: fetch-based Profile and Discourse clients.
11
11
 
12
12
  ## Example
@@ -1,5 +1,6 @@
1
1
  import { AgentId, Envelope, Event } from "./identity.js";
2
2
  export declare const DISCOURSE_PROTOCOL = "agent-discourse/1.0";
3
+ /** The nine built-in event types. All other types are room-defined. */
3
4
  export declare const eventType: {
4
5
  readonly ROOM_CREATE: "room.create";
5
6
  readonly ROOM_JOIN: "room.join";
@@ -8,62 +9,110 @@ export declare const eventType: {
8
9
  readonly ROOM_MEMBER_ROLE_UPDATE: "room.member.role.update";
9
10
  readonly ROOM_CLOSE: "room.close";
10
11
  readonly ROOM_CANCEL: "room.cancel";
12
+ readonly TYPE_DEFINE: "type.define";
11
13
  readonly MESSAGE_CREATE: "message.create";
12
- readonly REACTION_CREATE: "reaction.create";
13
- readonly MESSAGE_PROPOSAL_CREATE: "message.proposal.create";
14
- readonly MESSAGE_POLL_CREATE: "message.poll.create";
15
- readonly MESSAGE_POLL_VOTE: "message.poll.vote";
16
- readonly MESSAGE_RESOLUTION_CREATE: "message.resolution.create";
17
- readonly SOURCE_ADD: "source.add";
18
- readonly TURN_UPDATE: "turn.update";
19
- readonly QUESTION_CREATE: "question.create";
20
- readonly ROOM_STEER: "room.steer";
21
- readonly MAP_UPDATE: "map.update";
22
- readonly ARTIFACT_CREATE: "artifact.create";
23
- readonly SESSION_OFFER: "session.offer";
24
- readonly SESSION_ANSWER: "session.answer";
25
- readonly SESSION_CANDIDATE: "session.candidate";
26
- readonly SESSION_CLOSE: "session.close";
27
14
  };
28
- export type EventType = (typeof eventType)[keyof typeof eventType];
15
+ export type BuiltinEventType = (typeof eventType)[keyof typeof eventType];
16
+ export declare const BUILTIN_EVENT_TYPES: readonly string[];
17
+ /** Custom event types must not use these prefixes. */
18
+ export declare const RESERVED_TYPE_PREFIXES: readonly ["room.", "type."];
19
+ /** Registered type packs defined by the specification in `1.0.packs.json`. */
20
+ export declare const packId: {
21
+ readonly REACTIONS: "adp:reactions/1.0";
22
+ readonly DELIBERATION: "adp:deliberation/1.0";
23
+ readonly CURATION: "adp:curation/1.0";
24
+ readonly MODERATION: "adp:moderation/1.0";
25
+ readonly REALTIME: "adp:realtime/1.0";
26
+ };
27
+ export declare const REGISTERED_PACK_IDS: readonly string[];
29
28
  export type RoomState = "scheduled" | "active" | "ended" | "cancelled";
30
29
  export type Visibility = "public" | "restricted" | "private";
31
- export type TurnPolicy = "free" | "round_robin" | "moderator_led";
32
- export type Role = "moderator" | "expert" | "participant" | "observer";
30
+ export type Role = "moderator" | "speaker" | "observer";
31
+ /** Permission class of an event type. */
32
+ export type TypeKind = "message" | "signal" | "control";
33
+ export type TypeStatus = "active" | "deprecated" | "disabled";
33
34
  export type JoinRequestStatus = "pending" | "approved" | "rejected" | "expired";
34
35
  export type JoinDecision = "approve" | "reject";
35
- export type MessageIntent = "question" | "answer" | "clarification" | "critique" | "synthesis" | "follow_up" | "other";
36
- export type MapOperation = "upsert_node" | "move_node" | "delete_node" | "merge_nodes" | "replace_snapshot" | "mark_resolved";
37
- export type MapNodeStatus = "open" | "resolved" | "closed";
38
- export type ResolutionOutcome = "accepted" | "rejected" | "deferred" | "superseded";
39
- export type SessionType = "webrtc";
40
- export type SessionMediaKind = "audio" | "video" | "screen" | "data" | "file";
41
- export type SessionTopology = "peer_to_peer" | "sfu" | "turn_relay";
42
- export type SessionDescriptionType = "offer" | "answer";
43
36
  export interface RoomCreatePayload {
44
37
  topic: string;
45
38
  agenda?: string;
39
+ guidance?: string;
46
40
  visibility: Visibility;
47
41
  start_time: number;
48
42
  end_time: number;
49
43
  tags?: string[];
50
44
  language?: string;
51
45
  policy?: RoomPolicy;
52
- extensions?: Record<string, unknown>;
46
+ types?: TypeDeclaration[];
53
47
  extra?: Record<string, unknown>;
54
48
  }
55
49
  export interface RoomPolicy {
56
- turn_policy?: TurnPolicy;
57
50
  moderator_agent_ids?: AgentId[];
58
- max_participants?: number;
51
+ max_speakers?: number;
59
52
  observer_allowed?: boolean;
60
- observer_steering_allowed?: boolean;
61
- [key: string]: unknown;
53
+ extra?: Record<string, unknown>;
62
54
  }
55
+ /** A room-scoped declaration of a custom event type. */
56
+ export interface TypeDef {
57
+ type: string;
58
+ kind: TypeKind;
59
+ title: string;
60
+ description?: string;
61
+ /** Self-contained JSON Schema (draft 2020-12) for the event payload. */
62
+ schema: Record<string, unknown>;
63
+ roles?: Role[];
64
+ instructions?: string;
65
+ version?: string;
66
+ status?: TypeStatus;
67
+ rate_hint?: number;
68
+ max_payload_hint?: number;
69
+ extra?: Record<string, unknown>;
70
+ }
71
+ /** Per-type adjustments applied when importing a pack. */
72
+ export interface TypeOverride {
73
+ roles?: Role[];
74
+ instructions?: string;
75
+ status?: TypeStatus;
76
+ rate_hint?: number;
77
+ max_payload_hint?: number;
78
+ }
79
+ /** Imports a registered pack (`use`) or an external pack (`pack` + `digest`). */
80
+ export interface PackImport {
81
+ use?: string;
82
+ pack?: string;
83
+ digest?: string;
84
+ types?: string[];
85
+ overrides?: Record<string, TypeOverride>;
86
+ }
87
+ /** One entry of `room.create.payload.types` or a `type.define` payload. */
88
+ export type TypeDeclaration = TypeDef | PackImport;
89
+ export interface Pack {
90
+ id: string;
91
+ title: string;
92
+ description?: string;
93
+ types: TypeDef[];
94
+ extra?: Record<string, unknown>;
95
+ }
96
+ /** The shape of `1.0.packs.json` and externally published pack documents. */
97
+ export interface PackDocument {
98
+ protocol: string;
99
+ description?: string;
100
+ packs: Pack[];
101
+ }
102
+ /** Indexes the packs of a document by pack id for registry materialization. */
103
+ export declare function packMap(document: PackDocument): Record<string, Pack>;
63
104
  export interface RoomResponse {
64
105
  id: string;
65
106
  status: RoomState;
66
107
  url: string;
108
+ topic?: string;
109
+ guidance?: string;
110
+ visibility?: Visibility;
111
+ start_time?: number;
112
+ end_time?: number;
113
+ policy?: RoomPolicy;
114
+ /** Materialized type registry served by the host. */
115
+ types?: TypeDef[];
67
116
  seq: number;
68
117
  pre_hash: string | null;
69
118
  hash: string;
@@ -73,10 +122,9 @@ export interface RoomResponse {
73
122
  export interface RoomJoinPayload {
74
123
  request_id: string;
75
124
  role: Role;
76
- perspective?: string;
77
125
  }
78
- export interface RoomJoinRequestPayload {
79
- requested_role: Role;
126
+ export interface RoomJoinRequestInput {
127
+ role: Role;
80
128
  perspective?: string;
81
129
  reason?: string;
82
130
  extra?: Record<string, unknown>;
@@ -85,187 +133,49 @@ export interface RoomJoinRequest {
85
133
  id: string;
86
134
  room_id: string;
87
135
  applicant: AgentId;
88
- requested_role: Role;
89
- approved_role?: Role;
136
+ role: Role;
90
137
  perspective?: string;
91
- status: JoinRequestStatus;
92
- request_reason?: string;
93
- review_reason?: string;
138
+ reason?: string;
94
139
  created_at: number;
95
- reviewed_by?: AgentId;
96
- reviewed_at?: number;
97
- expires_at?: number;
140
+ expires_at: number;
98
141
  extra?: Record<string, unknown>;
99
142
  }
143
+ export interface RoomJoinRequestStatus {
144
+ request: RoomJoinRequest;
145
+ status: JoinRequestStatus;
146
+ approved_role?: Role;
147
+ review_reason?: string;
148
+ reviewed_by?: AgentId | null;
149
+ reviewed_at?: number | null;
150
+ }
100
151
  export interface RoomJoinReviewPayload {
101
- request_id: string;
102
- member: AgentId;
152
+ request: RoomJoinRequest;
103
153
  decision: JoinDecision;
104
154
  role?: Role;
105
155
  reason?: string;
106
- }
107
- export interface RoomLeavePayload {
108
- reason?: string;
156
+ extra?: Record<string, unknown>;
109
157
  }
110
158
  export interface RoleUpdatePayload {
111
159
  member: AgentId;
112
160
  role: Role;
113
161
  reason?: string;
114
- }
115
- export interface MessageCreatePayload {
116
- content_type: string;
117
- content: unknown;
118
- references?: string[];
119
- }
120
- export interface ProposalCreatePayload {
121
- proposal_id: string;
122
- title: string;
123
- body: string;
124
- content_type?: string;
125
- references?: string[];
126
- source_event_ids?: string[];
127
- extra?: Record<string, unknown>;
128
- }
129
- export interface PollOption {
130
- id: string;
131
- label: string;
132
- description?: string;
133
- }
134
- export interface PollCreatePayload {
135
- poll_id: string;
136
- question: string;
137
- options: PollOption[];
138
- min_choices?: number;
139
- max_choices?: number;
140
- closes_at?: number;
141
- references?: string[];
142
162
  extra?: Record<string, unknown>;
143
163
  }
144
- export interface PollVotePayload {
145
- event_id: string;
146
- option_ids: string[];
147
- }
148
- export interface ResolutionCreatePayload {
149
- resolution_id: string;
150
- outcome: ResolutionOutcome;
151
- summary: string;
152
- proposal_event_id?: string;
153
- poll_event_id?: string;
154
- references?: string[];
155
- extra?: Record<string, unknown>;
156
- }
157
- export interface ReactionCreatePayload {
158
- event_id: string;
159
- reaction: string;
160
- score?: number;
161
- }
162
- export interface SourceAddPayload {
163
- source_type: string;
164
- uri: string;
165
- title?: string;
166
- retrieved_at?: number;
167
- content_digest?: string;
168
- excerpt?: string;
169
- extra?: Record<string, unknown>;
170
- }
171
- export interface TurnUpdatePayload {
172
- turn_id: number;
173
- speaker: AgentId;
174
- intent?: MessageIntent;
175
- topic?: string;
176
- expires_at?: number;
164
+ /** Shared payload of `room.leave`, `room.close`, and `room.cancel`. */
165
+ export interface ReasonPayload {
177
166
  reason?: string;
178
- }
179
- export interface QuestionGeneratePayload {
180
- question: string;
181
- target_perspectives?: string[];
182
- basis?: string;
183
- source_event_ids?: string[];
184
- references?: string[];
185
- priority?: number;
186
- }
187
- export interface DiscourseSteerPayload {
188
- instruction: string;
189
- target: string;
190
- priority?: number;
191
167
  references?: string[];
192
- }
193
- export interface MapNode {
194
- id: string;
195
- parent_id?: string;
196
- title: string;
197
- summary?: string;
198
- status?: MapNodeStatus;
199
- source_event_ids?: string[];
200
- discussion_event_ids?: string[];
201
- children?: MapNode[];
202
- extra?: Record<string, unknown>;
203
- }
204
- export interface MapUpdatePayload {
205
- operation: MapOperation;
206
- node?: MapNode;
207
168
  extra?: Record<string, unknown>;
208
- [key: string]: unknown;
209
169
  }
210
- export interface ArtifactCreatePayload {
211
- artifact_id: string;
212
- format: string;
213
- title: string;
214
- uri: string;
215
- content_digest?: string;
216
- source_event_ids?: string[];
217
- discussion_event_ids?: string[];
218
- map_event_id?: string;
219
- }
220
- export interface SessionDescription {
221
- type: SessionDescriptionType;
222
- sdp: string;
223
- }
224
- export interface SessionIceCandidate {
225
- candidate: string;
226
- sdp_mid?: string;
227
- sdp_mline_index?: number;
228
- username_fragment?: string;
229
- }
230
- export interface SessionDataTransfer {
231
- transfer_id: string;
232
- file_name?: string;
233
- size_bytes?: number;
234
- mime_type?: string;
235
- content_digest?: string;
236
- }
237
- export interface SessionOfferPayload {
238
- session_id: string;
239
- session_type: SessionType;
240
- media: SessionMediaKind[];
241
- description: SessionDescription;
242
- to?: AgentId[];
243
- topology?: SessionTopology;
244
- transfers?: SessionDataTransfer[];
245
- expires_at?: number;
170
+ export type RoomLeavePayload = ReasonPayload;
171
+ export type RoomClosePayload = ReasonPayload;
172
+ export type RoomCancelPayload = ReasonPayload;
173
+ export interface MessageCreatePayload {
174
+ content_type: string;
175
+ content: unknown;
246
176
  references?: string[];
247
177
  extra?: Record<string, unknown>;
248
178
  }
249
- export interface SessionAnswerPayload {
250
- session_id: string;
251
- offer_event_id: string;
252
- description: SessionDescription;
253
- accepted_media?: SessionMediaKind[];
254
- transfers?: SessionDataTransfer[];
255
- extra?: Record<string, unknown>;
256
- }
257
- export interface SessionCandidatePayload {
258
- session_id: string;
259
- candidate?: SessionIceCandidate;
260
- target?: AgentId;
261
- end_of_candidates?: boolean;
262
- extra?: Record<string, unknown>;
263
- }
264
- export interface SessionClosePayload {
265
- session_id: string;
266
- reason?: string;
267
- references?: string[];
268
- }
269
179
  export interface ServerRecord<P = unknown> {
270
180
  room_id: string;
271
181
  seq: number;
@@ -290,16 +200,10 @@ export interface DiscourseProtocolDiscovery {
290
200
  protocol: string;
291
201
  host: string;
292
202
  features?: string[];
203
+ registered_packs?: string[];
293
204
  profile?: ProfileResolverMetadata;
294
205
  endpoints?: Record<string, string>;
295
206
  }
296
- export interface ArtifactManifest {
297
- artifact_id: string;
298
- type: string;
299
- format: string;
300
- uri: string;
301
- content_digest?: string;
302
- }
303
207
  export interface ArchiveManifest {
304
208
  protocol: string;
305
209
  type: "room.archive";
@@ -313,46 +217,80 @@ export interface ArchiveManifest {
313
217
  last_hash: string;
314
218
  events_sha3_256: string;
315
219
  archive_root: string;
316
- map_snapshot?: {
317
- event_id: string;
318
- digest: string;
319
- };
320
- artifacts?: ArtifactManifest[];
321
- discourse_trace_quality_score?: number;
322
220
  formats?: Record<string, string>;
221
+ extra?: Record<string, unknown>;
323
222
  }
223
+ /** Permission inputs for one actor in one room. */
324
224
  export interface PermissionContext {
325
225
  role?: Role;
326
226
  isCreator?: boolean;
327
227
  joinRequestApproved?: boolean;
328
- moderatorAuthorized?: boolean;
329
- expertPolicyAllowed?: boolean;
330
- participantPolicyAllowed?: boolean;
331
- observerSteeringAllowed?: boolean;
332
- observerPollVoteAllowed?: boolean;
333
- }
334
- export interface StateWriteOptions {
335
- postEndReactionAllowed?: boolean;
336
228
  }
337
229
  export declare function roomCreateEvent(actor: AgentId, createdAt: number, nonce: number, payload: RoomCreatePayload): Event<RoomCreatePayload>;
230
+ export declare function typeDefineEvent(actor: AgentId, createdAt: number, nonce: number, roomId: string, declaration: TypeDeclaration): Event<TypeDeclaration>;
338
231
  export declare function discourseEvent<P>(type: string, actor: AgentId, createdAt: number, nonce: number, roomId: string, payload: P): Event<P>;
232
+ export declare function isBuiltinEventType(type: string): boolean;
233
+ export declare function eventRequiresRoomId(type: string): boolean;
339
234
  export declare function validateDiscourseEnvelope(envelope: Envelope<unknown>): void;
340
235
  export declare function validateRoomPath(envelope: Envelope<unknown>, pathRoomId: string): void;
341
- export declare function eventRequiresRoomId(type: string): boolean;
236
+ /**
237
+ * Checks the shape of a custom event type name: lowercase dot-separated, at
238
+ * least two segments, not built-in, not under a reserved prefix.
239
+ */
240
+ export declare function validateCustomEventTypeName(name: string): void;
241
+ export declare function isPackImport(declaration: TypeDeclaration): declaration is PackImport;
242
+ export declare function isTypeDef(declaration: TypeDeclaration): declaration is TypeDef;
243
+ export declare function validateTypeDef(def: TypeDef): void;
244
+ export declare function validatePackImport(declaration: PackImport): void;
245
+ export declare function validateTypeDeclaration(declaration: TypeDeclaration): void;
342
246
  export declare function validateRoomCreatePayload(payload: RoomCreatePayload): void;
343
- export declare function validatePollCreatePayload(payload: PollCreatePayload): void;
344
- export declare function validatePollVotePayload(payload: PollVotePayload, poll: PollCreatePayload, nowMs?: number): void;
345
- export declare function validateSessionOfferPayload(payload: SessionOfferPayload): void;
346
- export declare function validateSessionAnswerPayload(payload: SessionAnswerPayload): void;
347
- export declare function validateSessionCandidatePayload(payload: SessionCandidatePayload): void;
247
+ export declare function validateMessageCreatePayload(payload: MessageCreatePayload): void;
248
+ /** The effective set of type definitions active in a room. */
249
+ export declare class TypeRegistry {
250
+ private readonly types;
251
+ /**
252
+ * Materializes a registry from declarations, resolving pack imports from
253
+ * `packs`, keyed by registered pack id or external pack URI.
254
+ */
255
+ static fromDeclarations(declarations: TypeDeclaration[], packs?: Record<string, Pack>): TypeRegistry;
256
+ /**
257
+ * Applies one declaration: an inline definition or a pack import.
258
+ * Redefining an existing type replaces it; the latest definition wins.
259
+ */
260
+ apply(declaration: TypeDeclaration, packs?: Record<string, Pack>): void;
261
+ define(def: TypeDef): void;
262
+ private import;
263
+ get(type: string): TypeDef | undefined;
264
+ has(type: string): boolean;
265
+ get size(): number;
266
+ definitions(): TypeDef[];
267
+ /** Validates a custom event payload against the type's schema and status. */
268
+ validatePayload(type: string, payload: unknown): void;
269
+ }
270
+ /**
271
+ * Validates an event payload: built-in payloads are accepted as-is (use the
272
+ * typed validators for them); custom payloads must satisfy the registry.
273
+ */
274
+ export declare function validateEventAgainstRegistry(type: string, payload: unknown, registry: TypeRegistry): void;
275
+ /**
276
+ * Verifies a `<algorithm>:<base64url-digest>` content digest over raw bytes.
277
+ * Supports `sha256` and `sha3-256`.
278
+ */
279
+ export declare function verifyPackDigest(bytes: Uint8Array, digest: string): void;
348
280
  export declare function serverRecordHashPayload(roomId: string, seq: number, preHash: string | null | undefined, envelopeHash: string, receivedAt: number): ServerRecordHashPayload;
349
281
  export declare function serverRecordHash(roomId: string, seq: number, preHash: string | null | undefined, envelopeHash: string, receivedAt: number): string;
350
282
  export declare function buildServerRecord<P>(roomId: string, seq: number, preHash: string | null | undefined, receivedAt: number, envelope: Envelope<P>): ServerRecord<P>;
351
283
  export declare function verifyServerRecord(record: ServerRecord): void;
352
284
  export declare function verifyServerRecordChain(records: ServerRecord[]): void;
353
285
  export declare function archiveEventsDigest(records: ServerRecord[]): string;
354
- export declare function canSubmitEvent(type: string, context: PermissionContext): boolean;
355
- export declare function canWriteInState(type: string, state: RoomState, options?: StateWriteOptions): boolean;
356
- export declare function canAcceptRoomWrite(type: string, state: RoomState, permission: PermissionContext, options?: StateWriteOptions): boolean;
357
- export declare function validateRoomWrite(type: string, state: RoomState, permission: PermissionContext, options?: StateWriteOptions): void;
286
+ /** Default sender roles for each kind. The creator passes every role check. */
287
+ export declare function defaultKindRoles(kind: TypeKind): readonly Role[];
288
+ /**
289
+ * Role check for one event type, using kind defaults and per-type overrides
290
+ * from the room's type registry. State checks are separate.
291
+ */
292
+ export declare function canSubmitEvent(type: string, context: PermissionContext, registry?: TypeRegistry): boolean;
293
+ export declare function canWriteInState(type: string, state: RoomState): boolean;
294
+ export declare function canAcceptRoomWrite(type: string, state: RoomState, permission: PermissionContext, registry?: TypeRegistry): boolean;
295
+ export declare function validateRoomWrite(type: string, state: RoomState, permission: PermissionContext, registry?: TypeRegistry): void;
358
296
  //# sourceMappingURL=discourse.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"discourse.d.ts","sourceRoot":"","sources":["../src/discourse.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"discourse.d.ts","sourceRoot":"","sources":["../src/discourse.ts"],"names":[],"mappings":"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"}