@opengeni/contracts 5.4.0-canary.36844267522001 → 5.4.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.
Files changed (39) hide show
  1. package/dist/atlassian.js +4 -5
  2. package/dist/{chunk-2CFJCZ6Q.js → chunk-IABHGRIB.js} +2 -5
  3. package/dist/chunk-IABHGRIB.js.map +1 -0
  4. package/dist/{chunk-PAX4LXRZ.js → chunk-RSYFTR5M.js} +2 -2
  5. package/dist/{chunk-WOE2F32M.js → chunk-U56WR2ES.js} +8259 -8382
  6. package/dist/chunk-U56WR2ES.js.map +1 -0
  7. package/dist/connect.js +4 -5
  8. package/dist/connect.js.map +1 -1
  9. package/dist/connection-authority.js +5 -6
  10. package/dist/google-drive.js +4 -5
  11. package/dist/google-drive.js.map +1 -1
  12. package/dist/host-mcp-bindings.js +5 -6
  13. package/dist/host-mcp-bindings.js.map +1 -1
  14. package/dist/index.d.ts +14 -183
  15. package/dist/index.js +44 -108
  16. package/dist/personal-github.js +4 -5
  17. package/dist/personal-github.js.map +1 -1
  18. package/dist/workspace-integration-wire.d.ts +1 -1
  19. package/dist/workspace-integration-wire.js +1 -1
  20. package/dist/workspace-integrations.d.ts +31 -200
  21. package/package.json +1 -9
  22. package/src/index.ts +11 -79
  23. package/src/workspace-integration-wire.ts +0 -3
  24. package/src/workspace-integrations.ts +2 -81
  25. package/dist/allowance-refusal.d.ts +0 -9
  26. package/dist/allowance-refusal.js +0 -50
  27. package/dist/allowance-refusal.js.map +0 -1
  28. package/dist/chunk-2CFJCZ6Q.js.map +0 -1
  29. package/dist/chunk-EK7NDGFR.js +0 -128
  30. package/dist/chunk-EK7NDGFR.js.map +0 -1
  31. package/dist/chunk-WOE2F32M.js.map +0 -1
  32. package/dist/claude-subscription-oauth.d.ts +0 -17
  33. package/dist/usage-allowances.d.ts +0 -285
  34. package/dist/usage-allowances.js +0 -49
  35. package/dist/usage-allowances.js.map +0 -1
  36. package/src/allowance-refusal.ts +0 -81
  37. package/src/claude-subscription-oauth.ts +0 -32
  38. package/src/usage-allowances.ts +0 -187
  39. /package/dist/{chunk-PAX4LXRZ.js.map → chunk-RSYFTR5M.js.map} +0 -0
package/dist/atlassian.js CHANGED
@@ -17,20 +17,18 @@ import {
17
17
  AtlassianSyncCadence,
18
18
  SaveAtlassianSourcesRequest,
19
19
  atlassianScopesAllowRead
20
- } from "./chunk-WOE2F32M.js";
20
+ } from "./chunk-U56WR2ES.js";
21
21
  import "./chunk-5IXYF6XN.js";
22
22
  import "./chunk-HHZSZYYF.js";
23
23
  import "./chunk-NRMCVHAU.js";
24
24
  import "./chunk-WYBDERIY.js";
25
25
  import "./chunk-P3HLDT77.js";
26
26
  import "./chunk-4JGHSSB7.js";
27
- import "./chunk-5Q54VCCH.js";
28
- import "./chunk-EK7NDGFR.js";
29
- import "./chunk-2CFJCZ6Q.js";
27
+ import "./chunk-IABHGRIB.js";
30
28
  import "./chunk-NVJMJWLL.js";
31
29
  import "./chunk-SIOU2K4U.js";
32
30
  import "./chunk-YRKRZ6OF.js";
33
- import "./chunk-YBW5JSA3.js";
31
+ import "./chunk-5Q54VCCH.js";
34
32
  import "./chunk-3SIZGL3O.js";
35
33
  import "./chunk-RIY7GYQS.js";
36
34
  import "./chunk-JUFK3T4Q.js";
@@ -43,6 +41,7 @@ import "./chunk-RKX3NQYS.js";
43
41
  import "./chunk-Y3KNXVTD.js";
44
42
  import "./chunk-TXTQIYCV.js";
45
43
  import "./chunk-PX3VCKAU.js";
44
+ import "./chunk-YBW5JSA3.js";
46
45
  export {
47
46
  ATLASSIAN_CREDENTIAL_LABEL,
48
47
  ATLASSIAN_CREDENTIAL_ROLE,
@@ -5,10 +5,7 @@ var WORKSPACE_WEBHOOK_EVENT_TYPES = [
5
5
  "turn.cancelled",
6
6
  "session.status.changed",
7
7
  "session.requiresAction",
8
- "session.humanInput.requested",
9
- "usage.threshold_reached",
10
- "usage.exhausted",
11
- "usage.period_reset"
8
+ "session.humanInput.requested"
12
9
  ];
13
10
  var OPENGENI_SIGNATURE_HEADER = "OpenGeni-Signature";
14
11
  var OPENGENI_EVENT_ID_HEADER = "OpenGeni-Event-Id";
@@ -63,4 +60,4 @@ export {
63
60
  signOpenGeniPayload,
64
61
  verifyOpenGeniSignature
65
62
  };
66
- //# sourceMappingURL=chunk-2CFJCZ6Q.js.map
63
+ //# sourceMappingURL=chunk-IABHGRIB.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/workspace-integration-wire.ts"],"sourcesContent":["/**\n * Dependency-free wire constants and the OpenGeni-Signature scheme shared by\n * workspace webhooks and credential providers. Kept free of zod so browser and\n * React Native bundles can verify signatures without the schema runtime.\n */\n\nexport const WORKSPACE_WEBHOOK_EVENT_TYPES = [\n \"turn.completed\",\n \"turn.failed\",\n \"turn.cancelled\",\n \"session.status.changed\",\n \"session.requiresAction\",\n \"session.humanInput.requested\",\n] as const;\n\nexport const OPENGENI_SIGNATURE_HEADER = \"OpenGeni-Signature\";\nexport const OPENGENI_EVENT_ID_HEADER = \"OpenGeni-Event-Id\";\nexport const OPENGENI_DELIVERY_ID_HEADER = \"OpenGeni-Delivery-Id\";\nexport const OPENGENI_SIGNATURE_TOLERANCE_SECONDS = 300;\n\nconst encoder = new TextEncoder();\n\nasync function hmacSha256Hex(secret: string, message: string): Promise<string> {\n const key = await crypto.subtle.importKey(\n \"raw\",\n encoder.encode(secret),\n { name: \"HMAC\", hash: \"SHA-256\" },\n false,\n [\"sign\"],\n );\n const signature = new Uint8Array(await crypto.subtle.sign(\"HMAC\", key, encoder.encode(message)));\n return Array.from(signature, (byte) => byte.toString(16).padStart(2, \"0\")).join(\"\");\n}\n\nfunction constantTimeEqualHex(left: string, right: string): boolean {\n if (left.length !== right.length) return false;\n let difference = 0;\n for (let index = 0; index < left.length; index += 1) {\n difference |= left.charCodeAt(index) ^ right.charCodeAt(index);\n }\n return difference === 0;\n}\n\n/**\n * `OpenGeni-Signature: t=<unix seconds>,v1=<hex HMAC-SHA256(secret, \"<t>.<body>\")>`.\n * The timestamp is signed so a captured request cannot be replayed later.\n */\nexport async function signOpenGeniPayload(\n secret: string,\n body: string,\n timestampSeconds = Math.floor(Date.now() / 1000),\n): Promise<string> {\n return `t=${timestampSeconds},v1=${await hmacSha256Hex(secret, `${timestampSeconds}.${body}`)}`;\n}\n\nexport type VerifyOpenGeniSignatureInput = {\n secret: string;\n /** The exact raw request body, before JSON parsing. */\n body: string;\n /** The `OpenGeni-Signature` header value. */\n signature: string | null | undefined;\n toleranceSeconds?: number;\n nowSeconds?: number;\n};\n\nexport async function verifyOpenGeniSignature(\n input: VerifyOpenGeniSignatureInput,\n): Promise<boolean> {\n if (!input.signature) return false;\n let timestamp: number | null = null;\n const candidates: string[] = [];\n for (const part of input.signature.split(\",\")) {\n const [key, value] = part.trim().split(\"=\", 2);\n if (key === \"t\" && value && /^\\d{1,12}$/.test(value)) timestamp = Number(value);\n if (key === \"v1\" && value && /^[0-9a-f]{64}$/.test(value)) candidates.push(value);\n }\n if (timestamp === null || candidates.length === 0) return false;\n const now = input.nowSeconds ?? Math.floor(Date.now() / 1000);\n const tolerance = input.toleranceSeconds ?? OPENGENI_SIGNATURE_TOLERANCE_SECONDS;\n if (Math.abs(now - timestamp) > tolerance) return false;\n const expected = await hmacSha256Hex(input.secret, `${timestamp}.${input.body}`);\n return candidates.some((candidate) => constantTimeEqualHex(candidate, expected));\n}\n"],"mappings":";AAMO,IAAM,gCAAgC;AAAA,EAC3C;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AACF;AAEO,IAAM,4BAA4B;AAClC,IAAM,2BAA2B;AACjC,IAAM,8BAA8B;AACpC,IAAM,uCAAuC;AAEpD,IAAM,UAAU,IAAI,YAAY;AAEhC,eAAe,cAAc,QAAgB,SAAkC;AAC7E,QAAM,MAAM,MAAM,OAAO,OAAO;AAAA,IAC9B;AAAA,IACA,QAAQ,OAAO,MAAM;AAAA,IACrB,EAAE,MAAM,QAAQ,MAAM,UAAU;AAAA,IAChC;AAAA,IACA,CAAC,MAAM;AAAA,EACT;AACA,QAAM,YAAY,IAAI,WAAW,MAAM,OAAO,OAAO,KAAK,QAAQ,KAAK,QAAQ,OAAO,OAAO,CAAC,CAAC;AAC/F,SAAO,MAAM,KAAK,WAAW,CAAC,SAAS,KAAK,SAAS,EAAE,EAAE,SAAS,GAAG,GAAG,CAAC,EAAE,KAAK,EAAE;AACpF;AAEA,SAAS,qBAAqB,MAAc,OAAwB;AAClE,MAAI,KAAK,WAAW,MAAM,OAAQ,QAAO;AACzC,MAAI,aAAa;AACjB,WAAS,QAAQ,GAAG,QAAQ,KAAK,QAAQ,SAAS,GAAG;AACnD,kBAAc,KAAK,WAAW,KAAK,IAAI,MAAM,WAAW,KAAK;AAAA,EAC/D;AACA,SAAO,eAAe;AACxB;AAMA,eAAsB,oBACpB,QACA,MACA,mBAAmB,KAAK,MAAM,KAAK,IAAI,IAAI,GAAI,GAC9B;AACjB,SAAO,KAAK,gBAAgB,OAAO,MAAM,cAAc,QAAQ,GAAG,gBAAgB,IAAI,IAAI,EAAE,CAAC;AAC/F;AAYA,eAAsB,wBACpB,OACkB;AAClB,MAAI,CAAC,MAAM,UAAW,QAAO;AAC7B,MAAI,YAA2B;AAC/B,QAAM,aAAuB,CAAC;AAC9B,aAAW,QAAQ,MAAM,UAAU,MAAM,GAAG,GAAG;AAC7C,UAAM,CAAC,KAAK,KAAK,IAAI,KAAK,KAAK,EAAE,MAAM,KAAK,CAAC;AAC7C,QAAI,QAAQ,OAAO,SAAS,aAAa,KAAK,KAAK,EAAG,aAAY,OAAO,KAAK;AAC9E,QAAI,QAAQ,QAAQ,SAAS,iBAAiB,KAAK,KAAK,EAAG,YAAW,KAAK,KAAK;AAAA,EAClF;AACA,MAAI,cAAc,QAAQ,WAAW,WAAW,EAAG,QAAO;AAC1D,QAAM,MAAM,MAAM,cAAc,KAAK,MAAM,KAAK,IAAI,IAAI,GAAI;AAC5D,QAAM,YAAY,MAAM,oBAAoB;AAC5C,MAAI,KAAK,IAAI,MAAM,SAAS,IAAI,UAAW,QAAO;AAClD,QAAM,WAAW,MAAM,cAAc,MAAM,QAAQ,GAAG,SAAS,IAAI,MAAM,IAAI,EAAE;AAC/E,SAAO,WAAW,KAAK,CAAC,cAAc,qBAAqB,WAAW,QAAQ,CAAC;AACjF;","names":[]}
@@ -1,7 +1,7 @@
1
1
  import {
2
2
  ConnectionKind,
3
3
  SessionTenancyVisibility
4
- } from "./chunk-WOE2F32M.js";
4
+ } from "./chunk-U56WR2ES.js";
5
5
 
6
6
  // src/connection-authority.ts
7
7
  import { z } from "zod";
@@ -183,4 +183,4 @@ export {
183
183
  ConnectionUseAuditFact,
184
184
  ConnectionUseAuthorizationResult
185
185
  };
186
- //# sourceMappingURL=chunk-PAX4LXRZ.js.map
186
+ //# sourceMappingURL=chunk-RSYFTR5M.js.map