@run402/sdk 3.7.13 → 3.8.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 (90) hide show
  1. package/README.md +22 -4
  2. package/core-dist/config.d.ts +3 -0
  3. package/core-dist/config.js +9 -0
  4. package/core-dist/keystore.d.ts +11 -3
  5. package/core-dist/keystore.js +103 -68
  6. package/core-dist/profile-state.d.ts +29 -0
  7. package/core-dist/profile-state.js +137 -0
  8. package/dist/credentials.d.ts +24 -7
  9. package/dist/credentials.d.ts.map +1 -1
  10. package/dist/credentials.js +4 -4
  11. package/dist/errors.d.ts +27 -1
  12. package/dist/errors.d.ts.map +1 -1
  13. package/dist/errors.js +61 -3
  14. package/dist/errors.js.map +1 -1
  15. package/dist/index.d.ts +7 -2
  16. package/dist/index.d.ts.map +1 -1
  17. package/dist/index.js +8 -3
  18. package/dist/index.js.map +1 -1
  19. package/dist/kernel.d.ts +2 -0
  20. package/dist/kernel.d.ts.map +1 -1
  21. package/dist/kernel.js +5 -1
  22. package/dist/kernel.js.map +1 -1
  23. package/dist/namespaces/ai.d.ts.map +1 -1
  24. package/dist/namespaces/ai.js +5 -10
  25. package/dist/namespaces/ai.js.map +1 -1
  26. package/dist/namespaces/apps.d.ts.map +1 -1
  27. package/dist/namespaces/apps.js +5 -13
  28. package/dist/namespaces/apps.js.map +1 -1
  29. package/dist/namespaces/assets.d.ts.map +1 -1
  30. package/dist/namespaces/assets.js +9 -22
  31. package/dist/namespaces/assets.js.map +1 -1
  32. package/dist/namespaces/auth.d.ts.map +1 -1
  33. package/dist/namespaces/auth.js +16 -43
  34. package/dist/namespaces/auth.js.map +1 -1
  35. package/dist/namespaces/contracts.d.ts.map +1 -1
  36. package/dist/namespaces/contracts.js +12 -31
  37. package/dist/namespaces/contracts.js.map +1 -1
  38. package/dist/namespaces/credentials.d.ts +48 -0
  39. package/dist/namespaces/credentials.d.ts.map +1 -0
  40. package/dist/namespaces/credentials.js +115 -0
  41. package/dist/namespaces/credentials.js.map +1 -0
  42. package/dist/namespaces/deploy.d.ts.map +1 -1
  43. package/dist/namespaces/deploy.js +23 -3
  44. package/dist/namespaces/deploy.js.map +1 -1
  45. package/dist/namespaces/domains.d.ts +8 -2
  46. package/dist/namespaces/domains.d.ts.map +1 -1
  47. package/dist/namespaces/domains.js +41 -23
  48. package/dist/namespaces/domains.js.map +1 -1
  49. package/dist/namespaces/email.d.ts.map +1 -1
  50. package/dist/namespaces/email.js +8 -19
  51. package/dist/namespaces/email.js.map +1 -1
  52. package/dist/namespaces/functions.d.ts.map +1 -1
  53. package/dist/namespaces/functions.js +14 -37
  54. package/dist/namespaces/functions.js.map +1 -1
  55. package/dist/namespaces/jobs.d.ts.map +1 -1
  56. package/dist/namespaces/jobs.js +8 -19
  57. package/dist/namespaces/jobs.js.map +1 -1
  58. package/dist/namespaces/projects.d.ts +4 -4
  59. package/dist/namespaces/projects.d.ts.map +1 -1
  60. package/dist/namespaces/projects.js +18 -42
  61. package/dist/namespaces/projects.js.map +1 -1
  62. package/dist/namespaces/secrets.d.ts.map +1 -1
  63. package/dist/namespaces/secrets.js +5 -10
  64. package/dist/namespaces/secrets.js.map +1 -1
  65. package/dist/namespaces/sender-domain.d.ts.map +1 -1
  66. package/dist/namespaces/sender-domain.js +6 -16
  67. package/dist/namespaces/sender-domain.js.map +1 -1
  68. package/dist/namespaces/subdomains.d.ts.map +1 -1
  69. package/dist/namespaces/subdomains.js +5 -10
  70. package/dist/namespaces/subdomains.js.map +1 -1
  71. package/dist/node/credentials.d.ts +18 -4
  72. package/dist/node/credentials.d.ts.map +1 -1
  73. package/dist/node/credentials.js +37 -9
  74. package/dist/node/credentials.js.map +1 -1
  75. package/dist/node/index.d.ts +4 -2
  76. package/dist/node/index.d.ts.map +1 -1
  77. package/dist/node/index.js +2 -1
  78. package/dist/node/index.js.map +1 -1
  79. package/dist/node/target-profile.d.ts.map +1 -1
  80. package/dist/node/target-profile.js +6 -4
  81. package/dist/node/target-profile.js.map +1 -1
  82. package/dist/project-auth-classification.d.ts +125 -0
  83. package/dist/project-auth-classification.d.ts.map +1 -0
  84. package/dist/project-auth-classification.js +135 -0
  85. package/dist/project-auth-classification.js.map +1 -0
  86. package/dist/project-credentials.d.ts +4 -0
  87. package/dist/project-credentials.d.ts.map +1 -0
  88. package/dist/project-credentials.js +9 -0
  89. package/dist/project-credentials.js.map +1 -0
  90. package/package.json +1 -1
@@ -0,0 +1,135 @@
1
+ export const PROJECT_OPERATION_AUTH_CLASSIFICATIONS = [
2
+ {
3
+ operation: "projects.list",
4
+ scope: "project",
5
+ plane: "control",
6
+ authModes: ["principal", "delegate"],
7
+ defaultAuthMode: "principal",
8
+ requiresProjectId: false,
9
+ mayUseLocalCredentialCache: false,
10
+ },
11
+ {
12
+ operation: "projects.get",
13
+ scope: "project",
14
+ plane: "control",
15
+ authModes: ["principal", "delegate"],
16
+ defaultAuthMode: "principal",
17
+ requiresProjectId: true,
18
+ mayUseLocalCredentialCache: false,
19
+ },
20
+ {
21
+ operation: "projects.use",
22
+ scope: "project",
23
+ plane: "control",
24
+ authModes: ["principal", "delegate"],
25
+ defaultAuthMode: "principal",
26
+ requiresProjectId: true,
27
+ mayUseLocalCredentialCache: false,
28
+ },
29
+ {
30
+ operation: "projects.keys",
31
+ scope: "project",
32
+ plane: "local",
33
+ authModes: ["project_credential"],
34
+ defaultAuthMode: "project_credential",
35
+ requiresProjectId: true,
36
+ mayUseLocalCredentialCache: true,
37
+ localCredentialMissCode: "PROJECT_CREDENTIAL_NOT_FOUND",
38
+ },
39
+ {
40
+ operation: "projects.sql",
41
+ scope: "project",
42
+ plane: "data",
43
+ authModes: ["service_key"],
44
+ defaultAuthMode: "project_credential",
45
+ requiresProjectId: true,
46
+ mayUseLocalCredentialCache: true,
47
+ localCredentialMissCode: "PROJECT_CREDENTIAL_NOT_FOUND",
48
+ },
49
+ {
50
+ operation: "projects.rest",
51
+ scope: "project",
52
+ plane: "data",
53
+ authModes: ["anon_key", "service_key"],
54
+ defaultAuthMode: "project_credential",
55
+ requiresProjectId: true,
56
+ mayUseLocalCredentialCache: true,
57
+ localCredentialMissCode: "PROJECT_CREDENTIAL_NOT_FOUND",
58
+ },
59
+ {
60
+ operation: "domains.add",
61
+ scope: "project",
62
+ plane: "control",
63
+ authModes: ["principal", "delegate", "service_key"],
64
+ defaultAuthMode: "principal",
65
+ requiresProjectId: true,
66
+ mayUseLocalCredentialCache: false,
67
+ },
68
+ {
69
+ operation: "domains.list",
70
+ scope: "project",
71
+ plane: "control",
72
+ authModes: ["principal", "delegate", "service_key"],
73
+ defaultAuthMode: "principal",
74
+ requiresProjectId: true,
75
+ mayUseLocalCredentialCache: false,
76
+ },
77
+ {
78
+ operation: "domains.status",
79
+ scope: "project",
80
+ plane: "control",
81
+ authModes: ["principal", "delegate", "service_key"],
82
+ defaultAuthMode: "principal",
83
+ requiresProjectId: true,
84
+ mayUseLocalCredentialCache: false,
85
+ },
86
+ {
87
+ operation: "domains.delete",
88
+ scope: "project",
89
+ plane: "control",
90
+ authModes: ["principal", "delegate", "service_key"],
91
+ defaultAuthMode: "principal",
92
+ requiresProjectId: true,
93
+ mayUseLocalCredentialCache: false,
94
+ },
95
+ {
96
+ operation: "functions.*",
97
+ scope: "project",
98
+ plane: "control",
99
+ authModes: ["service_key"],
100
+ defaultAuthMode: "project_credential",
101
+ requiresProjectId: true,
102
+ mayUseLocalCredentialCache: true,
103
+ localCredentialMissCode: "PROJECT_CREDENTIAL_NOT_FOUND",
104
+ },
105
+ {
106
+ operation: "assets.*",
107
+ scope: "project",
108
+ plane: "data",
109
+ authModes: ["service_key"],
110
+ defaultAuthMode: "project_credential",
111
+ requiresProjectId: true,
112
+ mayUseLocalCredentialCache: true,
113
+ localCredentialMissCode: "PROJECT_CREDENTIAL_NOT_FOUND",
114
+ },
115
+ {
116
+ operation: "jobs.*",
117
+ scope: "project",
118
+ plane: "control",
119
+ authModes: ["service_key"],
120
+ defaultAuthMode: "project_credential",
121
+ requiresProjectId: true,
122
+ mayUseLocalCredentialCache: true,
123
+ localCredentialMissCode: "PROJECT_CREDENTIAL_NOT_FOUND",
124
+ },
125
+ ];
126
+ export function projectOperationAuthClassification(operation) {
127
+ return PROJECT_OPERATION_AUTH_CLASSIFICATIONS.find((entry) => {
128
+ if (entry.operation === operation)
129
+ return true;
130
+ if (entry.operation.endsWith(".*"))
131
+ return operation.startsWith(entry.operation.slice(0, -1));
132
+ return false;
133
+ }) ?? null;
134
+ }
135
+ //# sourceMappingURL=project-auth-classification.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"project-auth-classification.js","sourceRoot":"","sources":["../src/project-auth-classification.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,4 @@
1
+ import type { ProjectKeys } from "./credentials.js";
2
+ import type { Client } from "./kernel.js";
3
+ export declare function requireProjectCredentials(client: Client, projectId: string, context: string): Promise<ProjectKeys>;
4
+ //# sourceMappingURL=project-credentials.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"project-credentials.d.ts","sourceRoot":"","sources":["../src/project-credentials.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AACpD,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AAG1C,wBAAsB,yBAAyB,CAC7C,MAAM,EAAE,MAAM,EACd,SAAS,EAAE,MAAM,EACjB,OAAO,EAAE,MAAM,GACd,OAAO,CAAC,WAAW,CAAC,CAKtB"}
@@ -0,0 +1,9 @@
1
+ import { ProjectCredentialNotFound } from "./errors.js";
2
+ export async function requireProjectCredentials(client, projectId, context) {
3
+ const project = await client.getProjectCredentials(projectId);
4
+ if (project)
5
+ return project;
6
+ const info = client.credentials.getProjectCredentialCacheInfo?.();
7
+ throw new ProjectCredentialNotFound(projectId, context, (info ?? {}));
8
+ }
9
+ //# sourceMappingURL=project-credentials.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"project-credentials.js","sourceRoot":"","sources":["../src/project-credentials.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,yBAAyB,EAAE,MAAM,aAAa,CAAC;AAExD,MAAM,CAAC,KAAK,UAAU,yBAAyB,CAC7C,MAAc,EACd,SAAiB,EACjB,OAAe;IAEf,MAAM,OAAO,GAAG,MAAM,MAAM,CAAC,qBAAqB,CAAC,SAAS,CAAC,CAAC;IAC9D,IAAI,OAAO;QAAE,OAAO,OAAO,CAAC;IAC5B,MAAM,IAAI,GAAG,MAAM,CAAC,WAAW,CAAC,6BAA6B,EAAE,EAAE,CAAC;IAClE,MAAM,IAAI,yBAAyB,CAAC,SAAS,EAAE,OAAO,EAAE,CAAC,IAAI,IAAI,EAAE,CAAuC,CAAC,CAAC;AAC9G,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@run402/sdk",
3
- "version": "3.7.13",
3
+ "version": "3.8.0",
4
4
  "description": "Typed TypeScript client for the Run402 API. Kernel shared by the run402-mcp server, the run402 CLI, and user-deployed run402 functions.",
5
5
  "type": "module",
6
6
  "main": "dist/index.js",