@pidgeon-ai/sdk 1.9.0 → 1.12.0

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/CHANGELOG.md CHANGED
@@ -9,6 +9,34 @@ call shapes, the result shape — not to the API behind it.
9
9
 
10
10
  ## Unreleased
11
11
 
12
+ ## 1.12.0 — Pidgeon Firewall
13
+
14
+ Every inbound `Message` carries `firewall`: a `verdict` (`clean` or
15
+ `suspicious`) and the `signals` that produced it — hidden text, instructions
16
+ addressed to an AI, impersonated chat turns, directives buried in quoted
17
+ history, look-alike senders, display-name spoofing, and requests to send
18
+ secrets out — each with where it fired and a sentence quoting it.
19
+ `message.received` carries the verdict and the signal kinds. Observe-only:
20
+ nothing is held or changed. Read it before acting on what a message asks.
21
+
22
+ ## 1.11.0 — a key for one pod
23
+
24
+ `apiKeysCreate` takes `pod_id` in place of `identity_ids`: the key reaches
25
+ every address in that pod, including ones added later, and may create,
26
+ verify and remove that pod's domains — the key a platform hands one of its
27
+ customers. Only a key over the whole account (or an owner, in the dashboard)
28
+ can mint one. Every key now reports `pod_id`, null for keys that are not
29
+ pod keys.
30
+
31
+ ## 1.10.0 — events over a WebSocket
32
+
33
+ `GET /v1/events/socket` is the event log over a WebSocket, with the same
34
+ filters and `after` cursor as the stream. The generated `eventsSocket` can
35
+ only show you the contract — open it with a WebSocket client
36
+ (`new WebSocket('wss://pidgeon.ai/api/v1/events/socket')`) and send
37
+ `{"type":"auth","api_key":…}` first if you cannot set a header. The
38
+ protocol is in the reference.
39
+
12
40
  ## 1.9.0 — export over the API
13
41
 
14
42
  **`exportMail`** (`GET /v1/export`) streams every message the key can read as
package/dist/index.cjs CHANGED
@@ -62,6 +62,7 @@ __export(index_exports, {
62
62
  draftsUpdate: () => draftsUpdate,
63
63
  eventsGet: () => eventsGet,
64
64
  eventsList: () => eventsList,
65
+ eventsSocket: () => eventsSocket,
65
66
  eventsStream: () => eventsStream,
66
67
  exportMail: () => exportMail,
67
68
  identitiesAccessCreate: () => identitiesAccessCreate,
@@ -1420,6 +1421,11 @@ var eventsList = (options) => (options?.client ?? client).get({
1420
1421
  url: "/events",
1421
1422
  ...options
1422
1423
  });
1424
+ var eventsSocket = (options) => (options?.client ?? client).get({
1425
+ security: [{ scheme: "bearer", type: "http" }],
1426
+ url: "/events/socket",
1427
+ ...options
1428
+ });
1423
1429
  var eventsStream = (options) => (options?.client ?? client).sse.get({
1424
1430
  security: [{ scheme: "bearer", type: "http" }],
1425
1431
  url: "/events/stream",
@@ -1835,6 +1841,7 @@ function sleep(ms, signal) {
1835
1841
  draftsUpdate,
1836
1842
  eventsGet,
1837
1843
  eventsList,
1844
+ eventsSocket,
1838
1845
  eventsStream,
1839
1846
  exportMail,
1840
1847
  identitiesAccessCreate,