@run402/sdk 2.39.4 → 2.40.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.
@@ -103,5 +103,45 @@ export class Operator {
103
103
  context: "revoking operator session",
104
104
  });
105
105
  }
106
+ // ── Loopback-PKCE write-login (v1.78, RFC 8252 §7.3) ──────────────────────
107
+ // The aws-sso-style write login: the CLI starts a `127.0.0.1` server, opens
108
+ // the browser to the authorize URL (the console runs the passkey ceremony +
109
+ // approves), receives the code on the loopback redirect, then exchanges it
110
+ // here for a write-capable, passkey-fresh control-plane session
111
+ // (`provenance=loopback_pkce`). PKCE generation + the loopback server live in
112
+ // the Node CLI; these two methods are the isomorphic SDK seam.
113
+ /**
114
+ * Build the loopback-PKCE authorize URL the CLI opens in the browser. Pure —
115
+ * no network, no Node APIs — so it is safe in any runtime. The caller
116
+ * generates `codeChallenge`/`state`/`nonce` and runs the redirect server.
117
+ */
118
+ buildCliAuthorizeUrl(params) {
119
+ const q = new URLSearchParams({
120
+ redirect_uri: params.redirectUri,
121
+ code_challenge: params.codeChallenge,
122
+ code_challenge_method: "S256",
123
+ state: params.state,
124
+ nonce: params.nonce,
125
+ });
126
+ return `${this.client.apiBase}/agent/v1/control-plane/cli/authorize?${q.toString()}`;
127
+ }
128
+ /**
129
+ * Exchange the loopback authorization code (+ PKCE verifier) for a
130
+ * write-capable {@link ControlPlaneSession}. Unauthenticated — the code +
131
+ * verifier are the credential.
132
+ */
133
+ async exchangeCliToken(params) {
134
+ return this.client.request("/agent/v1/control-plane/cli/token", {
135
+ method: "POST",
136
+ body: {
137
+ code: params.code,
138
+ code_verifier: params.codeVerifier,
139
+ redirect_uri: params.redirectUri,
140
+ state: params.state,
141
+ },
142
+ withAuth: false,
143
+ context: "exchanging CLI authorization code",
144
+ });
145
+ }
106
146
  }
107
147
  //# sourceMappingURL=operator.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"operator.js","sourceRoot":"","sources":["../../src/namespaces/operator.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"operator.js","sourceRoot":"","sources":["../../src/namespaces/operator.ts"],"names":[],"mappings":"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"}
@@ -1,13 +1,60 @@
1
1
  /**
2
- * `org` namespace — the org-owned control plane (gateway v1.77+ /
3
- * `org-member-management`). Read the resolved principal + memberships, list
4
- * orgs, and manage org membership (owner-gated). All routes use the existing
5
- * SIWX auth; authorization is a membership lookup, never `wallet == signer`.
2
+ * `org` namespace — the org-owned control plane (gateway v1.77+). Read the
3
+ * resolved principal + memberships, list orgs, manage members and email
4
+ * invites (owner-gated), and read the control-plane audit trail. All routes use
5
+ * the existing SIWX auth; authorization is a membership lookup, never
6
+ * `wallet == signer`.
7
+ *
8
+ * Sub-resources are grouped so the surface scales: `r.org.members.*` and
9
+ * `r.org.invites.*`. Org-level reads stay on the namespace itself
10
+ * (`r.org.whoami` / `r.org.list` / `r.org.audit`).
6
11
  */
7
12
  import type { Client } from "../kernel.js";
8
- import type { AddMemberInput, MemberMutationResult, MemberRevokeResult, OrgMember, OrgMembership, OrgRole, WhoAmIResult } from "./org.types.js";
13
+ import type { AddMemberInput, AuditEvent, AuditOptions, CreateInviteInput, MemberMutationResult, MemberRevokeResult, OrgInvite, OrgInviteRevokeResult, OrgMember, OrgMembership, OrgRole, WhoAmIResult } from "./org.types.js";
14
+ /** Member management — `r.org.members.*`. */
15
+ export declare class OrgMembers {
16
+ private readonly client;
17
+ constructor(client: Client);
18
+ /** List members of an org (`GET /orgs/v1/:billing_account_id/members`). Any active member. */
19
+ list(billingAccountId: string): Promise<OrgMember[]>;
20
+ /**
21
+ * Add a member by wallet (`POST /orgs/v1/:billing_account_id/members`).
22
+ * Requires an active `owner` membership. A brand-new wallet is provisioned as
23
+ * a `human` principal; `role` defaults to `"developer"` server-side.
24
+ */
25
+ add(billingAccountId: string, input: AddMemberInput): Promise<MemberMutationResult>;
26
+ /**
27
+ * Change a member's role (`PATCH …/members/:principal_id`). Requires `owner`;
28
+ * demoting the org's only active owner fails with `409 LAST_OWNER`.
29
+ */
30
+ setRole(billingAccountId: string, principalId: string, role: OrgRole): Promise<MemberMutationResult>;
31
+ /**
32
+ * Revoke a member (`DELETE …/members/:principal_id`) — one row, status
33
+ * `revoked`, no key rotation. Requires `owner`; revoking the org's only active
34
+ * owner fails with `409 LAST_OWNER`.
35
+ */
36
+ revoke(billingAccountId: string, principalId: string): Promise<MemberRevokeResult>;
37
+ }
38
+ /** Email-invite management — `r.org.invites.*`. */
39
+ export declare class OrgInvites {
40
+ private readonly client;
41
+ constructor(client: Client);
42
+ /** List pending email invites (`GET /orgs/v1/:billing_account_id/invites`). Any active member. */
43
+ list(billingAccountId: string): Promise<OrgInvite[]>;
44
+ /**
45
+ * Invite a person by email (`POST …/invites`); claimed at their first login.
46
+ * Requires `owner` (plus step-up when driven by a control-plane session).
47
+ */
48
+ create(billingAccountId: string, input: CreateInviteInput): Promise<OrgInvite>;
49
+ /** Revoke a pending invite by its pending principal id (`DELETE …/invites/:principal_id`). Requires `owner`. */
50
+ revoke(billingAccountId: string, principalId: string): Promise<OrgInviteRevokeResult>;
51
+ }
9
52
  export declare class Org {
10
53
  private readonly client;
54
+ /** Member management (`r.org.members.*`). */
55
+ readonly members: OrgMembers;
56
+ /** Email-invite management (`r.org.invites.*`). */
57
+ readonly invites: OrgInvites;
11
58
  constructor(client: Client);
12
59
  /**
13
60
  * Resolve the caller's control-plane principal and its org memberships
@@ -17,25 +64,10 @@ export declare class Org {
17
64
  whoami(): Promise<WhoAmIResult>;
18
65
  /** List the orgs the caller is a member of (`GET /orgs/v1`), as memberships. */
19
66
  list(): Promise<OrgMembership[]>;
20
- /** List members of an org (`GET /orgs/v1/:billing_account_id/members`). */
21
- members(billingAccountId: string): Promise<OrgMember[]>;
22
- /**
23
- * Add a member to an org by wallet (`POST /orgs/v1/:billing_account_id/members`).
24
- * Requires an active `owner` membership. A brand-new wallet is provisioned as
25
- * a `human` principal. `role` defaults to `"developer"` server-side.
26
- */
27
- addMember(billingAccountId: string, input: AddMemberInput): Promise<MemberMutationResult>;
28
- /**
29
- * Change a member's role (`PATCH /orgs/v1/:billing_account_id/members/:principal_id`).
30
- * Requires an active `owner` membership. Demoting the org's only active owner
31
- * fails with `409 LAST_OWNER`.
32
- */
33
- setRole(billingAccountId: string, principalId: string, role: OrgRole): Promise<MemberMutationResult>;
34
67
  /**
35
- * Remove a member (`DELETE /orgs/v1/:billing_account_id/members/:principal_id`).
36
- * Requires an active `owner` membership. Removing the org's only active owner
37
- * fails with `409 LAST_OWNER`.
68
+ * Control-plane audit trail for an org (`GET /orgs/v1/:billing_account_id/audit`).
69
+ * admin+. Newest-first; page with the `before` cursor.
38
70
  */
39
- removeMember(billingAccountId: string, principalId: string): Promise<MemberRevokeResult>;
71
+ audit(billingAccountId: string, opts?: AuditOptions): Promise<AuditEvent[]>;
40
72
  }
41
73
  //# sourceMappingURL=org.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"org.d.ts","sourceRoot":"","sources":["../../src/namespaces/org.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,cAAc,CAAC;AAE3C,OAAO,KAAK,EACV,cAAc,EACd,oBAAoB,EACpB,kBAAkB,EAClB,SAAS,EACT,aAAa,EACb,OAAO,EACP,YAAY,EACb,MAAM,gBAAgB,CAAC;AAExB,qBAAa,GAAG;IACF,OAAO,CAAC,QAAQ,CAAC,MAAM;gBAAN,MAAM,EAAE,MAAM;IAE3C;;;;OAIG;IACG,MAAM,IAAI,OAAO,CAAC,YAAY,CAAC;IAMrC,gFAAgF;IAC1E,IAAI,IAAI,OAAO,CAAC,aAAa,EAAE,CAAC;IAOtC,2EAA2E;IACrE,OAAO,CAAC,gBAAgB,EAAE,MAAM,GAAG,OAAO,CAAC,SAAS,EAAE,CAAC;IAS7D;;;;OAIG;IACG,SAAS,CACb,gBAAgB,EAAE,MAAM,EACxB,KAAK,EAAE,cAAc,GACpB,OAAO,CAAC,oBAAoB,CAAC;IAahC;;;;OAIG;IACG,OAAO,CACX,gBAAgB,EAAE,MAAM,EACxB,WAAW,EAAE,MAAM,EACnB,IAAI,EAAE,OAAO,GACZ,OAAO,CAAC,oBAAoB,CAAC;IAchC;;;;OAIG;IACG,YAAY,CAChB,gBAAgB,EAAE,MAAM,EACxB,WAAW,EAAE,MAAM,GAClB,OAAO,CAAC,kBAAkB,CAAC;CAU/B"}
1
+ {"version":3,"file":"org.d.ts","sourceRoot":"","sources":["../../src/namespaces/org.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAEH,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,cAAc,CAAC;AAE3C,OAAO,KAAK,EACV,cAAc,EACd,UAAU,EACV,YAAY,EACZ,iBAAiB,EACjB,oBAAoB,EACpB,kBAAkB,EAClB,SAAS,EACT,qBAAqB,EACrB,SAAS,EACT,aAAa,EACb,OAAO,EACP,YAAY,EACb,MAAM,gBAAgB,CAAC;AAQxB,6CAA6C;AAC7C,qBAAa,UAAU;IACT,OAAO,CAAC,QAAQ,CAAC,MAAM;gBAAN,MAAM,EAAE,MAAM;IAE3C,8FAA8F;IACxF,IAAI,CAAC,gBAAgB,EAAE,MAAM,GAAG,OAAO,CAAC,SAAS,EAAE,CAAC;IAS1D;;;;OAIG;IACG,GAAG,CAAC,gBAAgB,EAAE,MAAM,EAAE,KAAK,EAAE,cAAc,GAAG,OAAO,CAAC,oBAAoB,CAAC;IAazF;;;OAGG;IACG,OAAO,CAAC,gBAAgB,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,EAAE,IAAI,EAAE,OAAO,GAAG,OAAO,CAAC,oBAAoB,CAAC;IAU1G;;;;OAIG;IACG,MAAM,CAAC,gBAAgB,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,GAAG,OAAO,CAAC,kBAAkB,CAAC;CAQzF;AAED,mDAAmD;AACnD,qBAAa,UAAU;IACT,OAAO,CAAC,QAAQ,CAAC,MAAM;gBAAN,MAAM,EAAE,MAAM;IAE3C,kGAAkG;IAC5F,IAAI,CAAC,gBAAgB,EAAE,MAAM,GAAG,OAAO,CAAC,SAAS,EAAE,CAAC;IAS1D;;;OAGG;IACG,MAAM,CAAC,gBAAgB,EAAE,MAAM,EAAE,KAAK,EAAE,iBAAiB,GAAG,OAAO,CAAC,SAAS,CAAC;IAYpF,gHAAgH;IAC1G,MAAM,CAAC,gBAAgB,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,GAAG,OAAO,CAAC,qBAAqB,CAAC;CAQ5F;AAED,qBAAa,GAAG;IAMF,OAAO,CAAC,QAAQ,CAAC,MAAM;IALnC,6CAA6C;IAC7C,QAAQ,CAAC,OAAO,EAAE,UAAU,CAAC;IAC7B,mDAAmD;IACnD,QAAQ,CAAC,OAAO,EAAE,UAAU,CAAC;gBAEA,MAAM,EAAE,MAAM;IAK3C;;;;OAIG;IACG,MAAM,IAAI,OAAO,CAAC,YAAY,CAAC;IAMrC,gFAAgF;IAC1E,IAAI,IAAI,OAAO,CAAC,aAAa,EAAE,CAAC;IAOtC;;;OAGG;IACG,KAAK,CAAC,gBAAgB,EAAE,MAAM,EAAE,IAAI,GAAE,YAAiB,GAAG,OAAO,CAAC,UAAU,EAAE,CAAC;CAatF"}
@@ -1,47 +1,41 @@
1
1
  /**
2
- * `org` namespace — the org-owned control plane (gateway v1.77+ /
3
- * `org-member-management`). Read the resolved principal + memberships, list
4
- * orgs, and manage org membership (owner-gated). All routes use the existing
5
- * SIWX auth; authorization is a membership lookup, never `wallet == signer`.
2
+ * `org` namespace — the org-owned control plane (gateway v1.77+). Read the
3
+ * resolved principal + memberships, list orgs, manage members and email
4
+ * invites (owner-gated), and read the control-plane audit trail. All routes use
5
+ * the existing SIWX auth; authorization is a membership lookup, never
6
+ * `wallet == signer`.
7
+ *
8
+ * Sub-resources are grouped so the surface scales: `r.org.members.*` and
9
+ * `r.org.invites.*`. Org-level reads stay on the namespace itself
10
+ * (`r.org.whoami` / `r.org.list` / `r.org.audit`).
6
11
  */
7
12
  import { LocalError } from "../errors.js";
8
- export class Org {
13
+ function requireBa(billingAccountId, method, context) {
14
+ if (!billingAccountId) {
15
+ throw new LocalError(`${method} requires a billing_account_id`, context);
16
+ }
17
+ }
18
+ /** Member management — `r.org.members.*`. */
19
+ export class OrgMembers {
9
20
  client;
10
21
  constructor(client) {
11
22
  this.client = client;
12
23
  }
13
- /**
14
- * Resolve the caller's control-plane principal and its org memberships
15
- * (`GET /agent/v1/whoami`). This is the REMOTE identity; for the local,
16
- * network-free wallet/profile identity use `r.whoami()`.
17
- */
18
- async whoami() {
19
- return this.client.request("/agent/v1/whoami", {
20
- context: "resolving principal identity",
21
- });
22
- }
23
- /** List the orgs the caller is a member of (`GET /orgs/v1`), as memberships. */
24
- async list() {
25
- const res = await this.client.request("/orgs/v1", {
26
- context: "listing organizations",
27
- });
28
- return res.orgs ?? [];
29
- }
30
- /** List members of an org (`GET /orgs/v1/:billing_account_id/members`). */
31
- async members(billingAccountId) {
32
- requireBa(billingAccountId, "org.members", "listing org members");
24
+ /** List members of an org (`GET /orgs/v1/:billing_account_id/members`). Any active member. */
25
+ async list(billingAccountId) {
26
+ requireBa(billingAccountId, "org.members.list", "listing org members");
33
27
  const res = await this.client.request(`/orgs/v1/${encodeURIComponent(billingAccountId)}/members`, { context: "listing org members" });
34
28
  return res.members ?? [];
35
29
  }
36
30
  /**
37
- * Add a member to an org by wallet (`POST /orgs/v1/:billing_account_id/members`).
31
+ * Add a member by wallet (`POST /orgs/v1/:billing_account_id/members`).
38
32
  * Requires an active `owner` membership. A brand-new wallet is provisioned as
39
- * a `human` principal. `role` defaults to `"developer"` server-side.
33
+ * a `human` principal; `role` defaults to `"developer"` server-side.
40
34
  */
41
- async addMember(billingAccountId, input) {
42
- requireBa(billingAccountId, "org.addMember", "adding org member");
35
+ async add(billingAccountId, input) {
36
+ requireBa(billingAccountId, "org.members.add", "adding org member");
43
37
  if (!input?.wallet) {
44
- throw new LocalError("org.addMember requires { wallet }", "adding org member");
38
+ throw new LocalError("org.members.add requires { wallet }", "adding org member");
45
39
  }
46
40
  const body = { wallet: input.wallet };
47
41
  if (input.role !== undefined)
@@ -49,36 +43,107 @@ export class Org {
49
43
  return this.client.request(`/orgs/v1/${encodeURIComponent(billingAccountId)}/members`, { method: "POST", body, context: "adding org member" });
50
44
  }
51
45
  /**
52
- * Change a member's role (`PATCH /orgs/v1/:billing_account_id/members/:principal_id`).
53
- * Requires an active `owner` membership. Demoting the org's only active owner
54
- * fails with `409 LAST_OWNER`.
46
+ * Change a member's role (`PATCH …/members/:principal_id`). Requires `owner`;
47
+ * demoting the org's only active owner fails with `409 LAST_OWNER`.
55
48
  */
56
49
  async setRole(billingAccountId, principalId, role) {
57
- requireBa(billingAccountId, "org.setRole", "setting member role");
58
- if (!principalId) {
59
- throw new LocalError("org.setRole requires a principalId", "setting member role");
60
- }
61
- if (!role) {
62
- throw new LocalError("org.setRole requires a role", "setting member role");
63
- }
50
+ requireBa(billingAccountId, "org.members.setRole", "setting member role");
51
+ if (!principalId)
52
+ throw new LocalError("org.members.setRole requires a principalId", "setting member role");
53
+ if (!role)
54
+ throw new LocalError("org.members.setRole requires a role", "setting member role");
64
55
  return this.client.request(`/orgs/v1/${encodeURIComponent(billingAccountId)}/members/${encodeURIComponent(principalId)}`, { method: "PATCH", body: { role }, context: "setting member role" });
65
56
  }
66
57
  /**
67
- * Remove a member (`DELETE /orgs/v1/:billing_account_id/members/:principal_id`).
68
- * Requires an active `owner` membership. Removing the org's only active owner
69
- * fails with `409 LAST_OWNER`.
58
+ * Revoke a member (`DELETE …/members/:principal_id`) — one row, status
59
+ * `revoked`, no key rotation. Requires `owner`; revoking the org's only active
60
+ * owner fails with `409 LAST_OWNER`.
70
61
  */
71
- async removeMember(billingAccountId, principalId) {
72
- requireBa(billingAccountId, "org.removeMember", "removing org member");
73
- if (!principalId) {
74
- throw new LocalError("org.removeMember requires a principalId", "removing org member");
75
- }
76
- return this.client.request(`/orgs/v1/${encodeURIComponent(billingAccountId)}/members/${encodeURIComponent(principalId)}`, { method: "DELETE", context: "removing org member" });
62
+ async revoke(billingAccountId, principalId) {
63
+ requireBa(billingAccountId, "org.members.revoke", "revoking org member");
64
+ if (!principalId)
65
+ throw new LocalError("org.members.revoke requires a principalId", "revoking org member");
66
+ return this.client.request(`/orgs/v1/${encodeURIComponent(billingAccountId)}/members/${encodeURIComponent(principalId)}`, { method: "DELETE", context: "revoking org member" });
77
67
  }
78
68
  }
79
- function requireBa(billingAccountId, method, context) {
80
- if (!billingAccountId) {
81
- throw new LocalError(`${method} requires a billing_account_id`, context);
69
+ /** Email-invite management `r.org.invites.*`. */
70
+ export class OrgInvites {
71
+ client;
72
+ constructor(client) {
73
+ this.client = client;
74
+ }
75
+ /** List pending email invites (`GET /orgs/v1/:billing_account_id/invites`). Any active member. */
76
+ async list(billingAccountId) {
77
+ requireBa(billingAccountId, "org.invites.list", "listing org invites");
78
+ const res = await this.client.request(`/orgs/v1/${encodeURIComponent(billingAccountId)}/invites`, { context: "listing org invites" });
79
+ return res.invites ?? [];
80
+ }
81
+ /**
82
+ * Invite a person by email (`POST …/invites`); claimed at their first login.
83
+ * Requires `owner` (plus step-up when driven by a control-plane session).
84
+ */
85
+ async create(billingAccountId, input) {
86
+ requireBa(billingAccountId, "org.invites.create", "creating org invite");
87
+ if (!input?.email)
88
+ throw new LocalError("org.invites.create requires { email }", "creating org invite");
89
+ if (!input?.role)
90
+ throw new LocalError("org.invites.create requires { role }", "creating org invite");
91
+ const body = { email: input.email, role: input.role };
92
+ if (input.inviteTtlHours !== undefined)
93
+ body.invite_ttl_hours = input.inviteTtlHours;
94
+ return this.client.request(`/orgs/v1/${encodeURIComponent(billingAccountId)}/invites`, { method: "POST", body, context: "creating org invite" });
95
+ }
96
+ /** Revoke a pending invite by its pending principal id (`DELETE …/invites/:principal_id`). Requires `owner`. */
97
+ async revoke(billingAccountId, principalId) {
98
+ requireBa(billingAccountId, "org.invites.revoke", "revoking org invite");
99
+ if (!principalId)
100
+ throw new LocalError("org.invites.revoke requires a principalId", "revoking org invite");
101
+ return this.client.request(`/orgs/v1/${encodeURIComponent(billingAccountId)}/invites/${encodeURIComponent(principalId)}`, { method: "DELETE", context: "revoking org invite" });
102
+ }
103
+ }
104
+ export class Org {
105
+ client;
106
+ /** Member management (`r.org.members.*`). */
107
+ members;
108
+ /** Email-invite management (`r.org.invites.*`). */
109
+ invites;
110
+ constructor(client) {
111
+ this.client = client;
112
+ this.members = new OrgMembers(client);
113
+ this.invites = new OrgInvites(client);
114
+ }
115
+ /**
116
+ * Resolve the caller's control-plane principal and its org memberships
117
+ * (`GET /agent/v1/whoami`). This is the REMOTE identity; for the local,
118
+ * network-free wallet/profile identity use `r.whoami()`.
119
+ */
120
+ async whoami() {
121
+ return this.client.request("/agent/v1/whoami", {
122
+ context: "resolving principal identity",
123
+ });
124
+ }
125
+ /** List the orgs the caller is a member of (`GET /orgs/v1`), as memberships. */
126
+ async list() {
127
+ const res = await this.client.request("/orgs/v1", {
128
+ context: "listing organizations",
129
+ });
130
+ return res.orgs ?? [];
131
+ }
132
+ /**
133
+ * Control-plane audit trail for an org (`GET /orgs/v1/:billing_account_id/audit`).
134
+ * admin+. Newest-first; page with the `before` cursor.
135
+ */
136
+ async audit(billingAccountId, opts = {}) {
137
+ requireBa(billingAccountId, "org.audit", "reading org audit trail");
138
+ const parts = [];
139
+ if (opts.limit !== undefined)
140
+ parts.push(`limit=${encodeURIComponent(String(opts.limit))}`);
141
+ if (opts.before !== undefined)
142
+ parts.push(`before=${encodeURIComponent(opts.before)}`);
143
+ const q = parts.join("&");
144
+ const base = `/orgs/v1/${encodeURIComponent(billingAccountId)}/audit`;
145
+ const res = await this.client.request(q ? `${base}?${q}` : base, { context: "reading org audit trail" });
146
+ return res.events ?? res.audit_events ?? [];
82
147
  }
83
148
  }
84
149
  //# sourceMappingURL=org.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"org.js","sourceRoot":"","sources":["../../src/namespaces/org.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"org.js","sourceRoot":"","sources":["../../src/namespaces/org.ts"],"names":[],"mappings":"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"}
@@ -76,10 +76,46 @@ export interface MemberMutationResult {
76
76
  role: OrgRole;
77
77
  [key: string]: unknown;
78
78
  }
79
- /** Result of {@link Org.removeMember} (`{ status:"revoked", principal_id }`). */
79
+ /** Result of {@link OrgMembers.revoke} (`{ status:"revoked", principal_id }`). */
80
80
  export interface MemberRevokeResult {
81
81
  status: string;
82
82
  principal_id: string;
83
83
  [key: string]: unknown;
84
84
  }
85
+ /** Input to {@link OrgInvites.create} — invite a person by email at a role. */
86
+ export interface CreateInviteInput {
87
+ email: string;
88
+ role: OrgRole;
89
+ /** Optional invite lifetime in hours; gateway default applies when omitted. */
90
+ inviteTtlHours?: number;
91
+ }
92
+ /**
93
+ * A pending email invite from {@link OrgInvites.list} (`GET /orgs/v1/:ba/invites`).
94
+ * Represented by a pending `principal_id` — pass it to {@link OrgInvites.revoke}.
95
+ */
96
+ export interface OrgInvite {
97
+ principal_id: string;
98
+ email: string;
99
+ role: OrgRole;
100
+ status: string;
101
+ expires_at?: string;
102
+ [key: string]: unknown;
103
+ }
104
+ /** Result of {@link OrgInvites.revoke} (`{ status:"revoked", principal_id }`). */
105
+ export interface OrgInviteRevokeResult {
106
+ status: string;
107
+ principal_id: string;
108
+ [key: string]: unknown;
109
+ }
110
+ /** Options for {@link Org.audit}. */
111
+ export interface AuditOptions {
112
+ /** Page size; gateway default applies when omitted. */
113
+ limit?: number;
114
+ /** Cursor — return events before this opaque marker. */
115
+ before?: string;
116
+ }
117
+ /** One control-plane audit event from {@link Org.audit}. Shape is gateway-owned (forward-compatible). */
118
+ export interface AuditEvent {
119
+ [key: string]: unknown;
120
+ }
85
121
  //# sourceMappingURL=org.types.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"org.types.d.ts","sourceRoot":"","sources":["../../src/namespaces/org.types.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,0FAA0F;AAC1F,MAAM,MAAM,OAAO,GAAG,OAAO,GAAG,OAAO,GAAG,WAAW,GAAG,SAAS,GAAG,QAAQ,CAAC;AAE7E;;;;;;;;;GASG;AACH,MAAM,WAAW,SAAS;IACxB,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;IACb,2FAA2F;IAC3F,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,8BAA8B;IAC9B,SAAS,EAAE,MAAM,CAAC;IAClB,+GAA+G;IAC/G,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC;CACxB;AAED;;;;GAIG;AACH,MAAM,WAAW,aAAa;IAC5B,kBAAkB,EAAE,MAAM,CAAC;IAC3B,IAAI,EAAE,OAAO,CAAC;IACd,MAAM,EAAE,MAAM,CAAC;IACf,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC;CACxB;AAED;;;;;GAKG;AACH,MAAM,WAAW,YAAY;IAC3B,SAAS,EAAE,SAAS,CAAC;IACrB,WAAW,EAAE,aAAa,EAAE,CAAC;IAC7B,gBAAgB,EAAE,MAAM,CAAC;IACzB,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC;CACxB;AAED,0EAA0E;AAC1E,MAAM,WAAW,SAAS;IACxB,YAAY,EAAE,MAAM,CAAC;IACrB,IAAI,EAAE,OAAO,CAAC;IACd,MAAM,EAAE,MAAM,CAAC;IACf,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC;CACxB;AAED;;;;GAIG;AACH,MAAM,WAAW,cAAc;IAC7B,4CAA4C;IAC5C,MAAM,EAAE,MAAM,CAAC;IACf,wEAAwE;IACxE,IAAI,CAAC,EAAE,OAAO,CAAC;CAChB;AAED,qGAAqG;AACrG,MAAM,WAAW,oBAAoB;IACnC,MAAM,EAAE,MAAM,CAAC;IACf,YAAY,EAAE,MAAM,CAAC;IACrB,IAAI,EAAE,OAAO,CAAC;IACd,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC;CACxB;AAED,iFAAiF;AACjF,MAAM,WAAW,kBAAkB;IACjC,MAAM,EAAE,MAAM,CAAC;IACf,YAAY,EAAE,MAAM,CAAC;IACrB,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC;CACxB"}
1
+ {"version":3,"file":"org.types.d.ts","sourceRoot":"","sources":["../../src/namespaces/org.types.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,0FAA0F;AAC1F,MAAM,MAAM,OAAO,GAAG,OAAO,GAAG,OAAO,GAAG,WAAW,GAAG,SAAS,GAAG,QAAQ,CAAC;AAE7E;;;;;;;;;GASG;AACH,MAAM,WAAW,SAAS;IACxB,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;IACb,2FAA2F;IAC3F,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,8BAA8B;IAC9B,SAAS,EAAE,MAAM,CAAC;IAClB,+GAA+G;IAC/G,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC;CACxB;AAED;;;;GAIG;AACH,MAAM,WAAW,aAAa;IAC5B,kBAAkB,EAAE,MAAM,CAAC;IAC3B,IAAI,EAAE,OAAO,CAAC;IACd,MAAM,EAAE,MAAM,CAAC;IACf,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC;CACxB;AAED;;;;;GAKG;AACH,MAAM,WAAW,YAAY;IAC3B,SAAS,EAAE,SAAS,CAAC;IACrB,WAAW,EAAE,aAAa,EAAE,CAAC;IAC7B,gBAAgB,EAAE,MAAM,CAAC;IACzB,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC;CACxB;AAED,0EAA0E;AAC1E,MAAM,WAAW,SAAS;IACxB,YAAY,EAAE,MAAM,CAAC;IACrB,IAAI,EAAE,OAAO,CAAC;IACd,MAAM,EAAE,MAAM,CAAC;IACf,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC;CACxB;AAED;;;;GAIG;AACH,MAAM,WAAW,cAAc;IAC7B,4CAA4C;IAC5C,MAAM,EAAE,MAAM,CAAC;IACf,wEAAwE;IACxE,IAAI,CAAC,EAAE,OAAO,CAAC;CAChB;AAED,qGAAqG;AACrG,MAAM,WAAW,oBAAoB;IACnC,MAAM,EAAE,MAAM,CAAC;IACf,YAAY,EAAE,MAAM,CAAC;IACrB,IAAI,EAAE,OAAO,CAAC;IACd,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC;CACxB;AAED,kFAAkF;AAClF,MAAM,WAAW,kBAAkB;IACjC,MAAM,EAAE,MAAM,CAAC;IACf,YAAY,EAAE,MAAM,CAAC;IACrB,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC;CACxB;AAED,+EAA+E;AAC/E,MAAM,WAAW,iBAAiB;IAChC,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,EAAE,OAAO,CAAC;IACd,+EAA+E;IAC/E,cAAc,CAAC,EAAE,MAAM,CAAC;CACzB;AAED;;;GAGG;AACH,MAAM,WAAW,SAAS;IACxB,YAAY,EAAE,MAAM,CAAC;IACrB,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,EAAE,OAAO,CAAC;IACd,MAAM,EAAE,MAAM,CAAC;IACf,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC;CACxB;AAED,kFAAkF;AAClF,MAAM,WAAW,qBAAqB;IACpC,MAAM,EAAE,MAAM,CAAC;IACf,YAAY,EAAE,MAAM,CAAC;IACrB,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC;CACxB;AAED,qCAAqC;AACrC,MAAM,WAAW,YAAY;IAC3B,uDAAuD;IACvD,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,wDAAwD;IACxD,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAED,yGAAyG;AACzG,MAAM,WAAW,UAAU;IACzB,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC;CACxB"}
@@ -159,6 +159,46 @@ export interface ProjectTransferPreview {
159
159
  github_repo_note: string;
160
160
  billing_implications: BillingImplications;
161
161
  }
162
+ /** Inputs to {@link Transfers.initiateHandoff}. */
163
+ export interface InitiateHandoffInput {
164
+ /** Project id to hand off. Caller must currently own it. */
165
+ projectId: string;
166
+ /** Recipient email; claimed at the recipient's first login. */
167
+ toEmail: string;
168
+ /** Optional note shown to the recipient (HTML-escaped server-side). */
169
+ message?: string;
170
+ }
171
+ /** Result of {@link Transfers.initiateHandoff}. Forward-compatible (gateway owns the exact shape). */
172
+ export interface HandoffResult {
173
+ transfer_id: string;
174
+ expires_at?: string;
175
+ [key: string]: unknown;
176
+ }
177
+ /** Summary row from `GET /agent/v1/handoffs/incoming`. Forward-compatible. */
178
+ export interface HandoffSummary {
179
+ transfer_id: string;
180
+ project_id: string;
181
+ to_email?: string;
182
+ [key: string]: unknown;
183
+ }
184
+ /** Preview from `GET /agent/v1/handoffs/:transfer_id`. Forward-compatible. */
185
+ export interface ProjectHandoffPreview {
186
+ transfer_id: string;
187
+ project_id: string;
188
+ status?: TransferStatus | string;
189
+ [key: string]: unknown;
190
+ }
191
+ /** Inputs to {@link Transfers.claimHandoff}. */
192
+ export interface ClaimHandoffInput {
193
+ /** Org (billing account) to claim into. Omit to claim into a brand-new org. */
194
+ billingAccountId?: string;
195
+ }
196
+ /** Result of {@link Transfers.claimHandoff}. Forward-compatible. */
197
+ export interface ClaimHandoffResult {
198
+ project_id: string;
199
+ new_billing_account_id?: string | null;
200
+ [key: string]: unknown;
201
+ }
162
202
  export declare class Transfers {
163
203
  private readonly client;
164
204
  constructor(client: Client);
@@ -195,5 +235,23 @@ export declare class Transfers {
195
235
  listIncoming(opts?: ListTransfersOptions): Promise<TransferSummary[]>;
196
236
  /** Pending transfers INITIATED BY the authenticated wallet. */
197
237
  listOutgoing(opts?: ListTransfersOptions): Promise<TransferSummary[]>;
238
+ /**
239
+ * Initiate an email→org handoff of `projectId` to `toEmail`. Like a wallet
240
+ * transfer, freezes owner-side mutations until the recipient claims, the
241
+ * sender cancels, or it expires.
242
+ */
243
+ initiateHandoff(input: InitiateHandoffInput): Promise<HandoffResult>;
244
+ /** Pending handoffs addressed to the authenticated principal's email. */
245
+ listIncomingHandoffs(): Promise<HandoffSummary[]>;
246
+ /** Preview a handoff (sender, or the addressed recipient). */
247
+ previewHandoff(transferId: string): Promise<ProjectHandoffPreview>;
248
+ /**
249
+ * Claim an incoming handoff into an org. Omit `billingAccountId` to claim
250
+ * into a brand-new org. The claim atomically flips ownership (the handoff
251
+ * analog of {@link Transfers.accept}).
252
+ */
253
+ claimHandoff(transferId: string, input?: ClaimHandoffInput): Promise<ClaimHandoffResult>;
254
+ /** Cancel a pending handoff (sender or recipient). */
255
+ cancelHandoff(transferId: string): Promise<CancelTransferResult>;
198
256
  }
199
257
  //# sourceMappingURL=transfers.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"transfers.d.ts","sourceRoot":"","sources":["../../src/namespaces/transfers.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"transfers.d.ts","sourceRoot":"","sources":["../../src/namespaces/transfers.ts"],"names":[],"mappings":"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"}
@@ -103,6 +103,46 @@ export class Transfers {
103
103
  });
104
104
  return res.transfers;
105
105
  }
106
+ // ── Email→org handoff (v1.78) ─────────────────────────────────────────────
107
+ // Same transfer rail, but the recipient is an EMAIL (resolved to an org at
108
+ // claim time) rather than a wallet. The caller must own the project; the
109
+ // recipient claims into an org they own (or a brand-new one). Exposed under
110
+ // the same `transfer` noun on the CLI (`transfer init --to <email>`).
111
+ /**
112
+ * Initiate an email→org handoff of `projectId` to `toEmail`. Like a wallet
113
+ * transfer, freezes owner-side mutations until the recipient claims, the
114
+ * sender cancels, or it expires.
115
+ */
116
+ async initiateHandoff(input) {
117
+ const body = { to_email: input.toEmail };
118
+ if (input.message !== undefined)
119
+ body.message = input.message;
120
+ return this.client.request(`/projects/v1/${encodeURIComponent(input.projectId)}/handoffs`, { method: "POST", body, context: "initiating project handoff" });
121
+ }
122
+ /** Pending handoffs addressed to the authenticated principal's email. */
123
+ async listIncomingHandoffs() {
124
+ const res = await this.client.request("/agent/v1/handoffs/incoming", { context: "listing incoming handoffs" });
125
+ return res.handoffs ?? res.transfers ?? [];
126
+ }
127
+ /** Preview a handoff (sender, or the addressed recipient). */
128
+ async previewHandoff(transferId) {
129
+ return this.client.request(`/agent/v1/handoffs/${encodeURIComponent(transferId)}`, { context: "previewing project handoff" });
130
+ }
131
+ /**
132
+ * Claim an incoming handoff into an org. Omit `billingAccountId` to claim
133
+ * into a brand-new org. The claim atomically flips ownership (the handoff
134
+ * analog of {@link Transfers.accept}).
135
+ */
136
+ async claimHandoff(transferId, input = {}) {
137
+ const body = {};
138
+ if (input.billingAccountId !== undefined)
139
+ body.billing_account_id = input.billingAccountId;
140
+ return this.client.request(`/agent/v1/handoffs/${encodeURIComponent(transferId)}/claim`, { method: "POST", body, context: "claiming project handoff" });
141
+ }
142
+ /** Cancel a pending handoff (sender or recipient). */
143
+ async cancelHandoff(transferId) {
144
+ return this.client.request(`/agent/v1/handoffs/${encodeURIComponent(transferId)}/cancel`, { method: "POST", body: {}, context: "cancelling project handoff" });
145
+ }
106
146
  }
107
147
  function buildPagination(opts) {
108
148
  const parts = [];
@@ -1 +1 @@
1
- {"version":3,"file":"transfers.js","sourceRoot":"","sources":["../../src/namespaces/transfers.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"transfers.js","sourceRoot":"","sources":["../../src/namespaces/transfers.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@run402/sdk",
3
- "version": "2.39.4",
3
+ "version": "2.40.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",