@beacon-build/sdk 1.46.3 → 1.46.4

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
@@ -1,5 +1,18 @@
1
1
  # @beacon-build/sdk Changelog
2
2
 
3
+ ## 1.46.4
4
+
5
+ ### Patch Changes
6
+
7
+ - 46ef648: F452 Stufe 8 (Auslöser-Kette): Session.triggeredByActorId persisted at create (POST /v1/sessions legacy branch from the authenticated caller, MCP session_start's optional triggered_by_human override for agent-JWT callers) and inherited onto skill_executions/workflow_instances at run-create time. AC-12 DRY: agent_controllers binding-management authorization (mayManageAgentBindings) moved from services/api/src/routes/agent-controllers.ts into packages/core, the route now only wires concrete lookups. AC-30: the project-scope role dropdown (GrantAccessDialog) and its SDK/server write path (GrantProjectAccessInput, POST /v1/projects/:slug/access) now source from PROJECT_ACCESS_ROLES instead of a stale hardcoded 3-value list — closes a real gap where the server route 400'd reviewer/contributor even though the DB CHECK already allowed them.
8
+ - 7206ed1: F454: Lead entity + full CRUD (create/list/get/update), leads table migration, LeadsOpsClient SDK, create-notify DM to @Mischa
9
+ - Updated dependencies [5099935]
10
+ - Updated dependencies [e34aadc]
11
+ - Updated dependencies [8865cb0]
12
+ - Updated dependencies [46ef648]
13
+ - Updated dependencies [7206ed1]
14
+ - @beacon-build/core@1.46.4
15
+
3
16
  ## 1.46.3
4
17
 
5
18
  ### Patch Changes
@@ -1,4 +1,4 @@
1
- import type { ProjectApiItem } from '@beacon-build/core';
1
+ import type { ProjectApiItem, ProjectAccessRole } from '@beacon-build/core';
2
2
  import type { HttpClient } from '../../transport/http-client.js';
3
3
  /** F438/AC-5/AC-6/AC-20: self-serve create input — mirrors the `POST /v1/projects` request
4
4
  * shape. `ownerOrgId` omitted/undefined means the caller becomes the direct user-owner. */
@@ -27,11 +27,16 @@ export interface ProjectAccessListDto {
27
27
  orgId: string | null;
28
28
  grants: ProjectAccessGrantDto[];
29
29
  }
30
- /** F442/AC-8: `POST /{slug}/access` body — upsert semantics (re-granting an existing
31
- * `principalId` updates its role, no duplicate-row error). */
30
+ /**
31
+ * F442/AC-8: `POST /{slug}/access` body upsert semantics (re-granting an existing
32
+ * `principalId` updates its role, no duplicate-row error).
33
+ * F452/AC-30: `role` is `ProjectAccessRole` — the SAME type `PROJECT_ACCESS_ROLES` enumerates,
34
+ * never a second, hand-copied union (this was one — silently rejecting `reviewer`/`contributor`
35
+ * at the SDK boundary even after the dialog above offered them).
36
+ */
32
37
  export interface GrantProjectAccessInput {
33
38
  principalId: string;
34
- role: 'admin' | 'member' | 'viewer';
39
+ role: ProjectAccessRole;
35
40
  }
36
41
  export interface ProjectAccessGrantResultDto {
37
42
  project: string;
@@ -1 +1 @@
1
- {"version":3,"file":"projects.client.d.ts","sourceRoot":"","sources":["../../../src/clients/admin/projects.client.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAA;AACxD,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,gCAAgC,CAAA;AAEhE;2FAC2F;AAC3F,MAAM,WAAW,kBAAkB;IAC/B,IAAI,EAAE,MAAM,CAAA;IACZ,IAAI,EAAE,MAAM,CAAA;IACZ,UAAU,CAAC,EAAE,MAAM,CAAA;CACtB;AAED,MAAM,WAAW,mBAAmB;IAChC,IAAI,EAAE,MAAM,CAAA;IACZ,IAAI,EAAE,MAAM,CAAA;IACZ,KAAK,EAAE,MAAM,GAAG,IAAI,CAAA;IACpB,WAAW,EAAE,MAAM,GAAG,IAAI,CAAA;CAC7B;AAED,mGAAmG;AACnG,MAAM,WAAW,qBAAqB;IAClC,WAAW,EAAE,MAAM,CAAA;IACnB,IAAI,EAAE,MAAM,CAAA;IACZ,SAAS,EAAE,MAAM,GAAG,IAAI,CAAA;IACxB,SAAS,EAAE,MAAM,CAAA;CACpB;AAED;iEACiE;AACjE,MAAM,WAAW,oBAAoB;IACjC,WAAW,EAAE,MAAM,GAAG,IAAI,CAAA;IAC1B,KAAK,EAAE,MAAM,GAAG,IAAI,CAAA;IACpB,MAAM,EAAE,qBAAqB,EAAE,CAAA;CAClC;AAED;8DAC8D;AAC9D,MAAM,WAAW,uBAAuB;IACpC,WAAW,EAAE,MAAM,CAAA;IACnB,IAAI,EAAE,OAAO,GAAG,QAAQ,GAAG,QAAQ,CAAA;CACtC;AAED,MAAM,WAAW,2BAA2B;IACxC,OAAO,EAAE,MAAM,CAAA;IACf,WAAW,EAAE,MAAM,CAAA;IACnB,IAAI,EAAE,MAAM,CAAA;CACf;AAED,sEAAsE;AACtE,MAAM,WAAW,qBAAqB;IAClC,IAAI,EAAE,MAAM,CAAA;IACZ,KAAK,EAAE,OAAO,CAAA;IACd,SAAS,EAAE,MAAM,GAAG,IAAI,CAAA;CAC3B;AAED,qBAAa,mBAAmB;IAChB,OAAO,CAAC,QAAQ,CAAC,IAAI;gBAAJ,IAAI,EAAE,UAAU;IAEvC,IAAI,IAAI,OAAO,CAAC,cAAc,EAAE,CAAC;IAIjC,GAAG,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,cAAc,GAAG,IAAI,CAAC;IAQvD;oEACgE;IAC1D,MAAM,CAAC,KAAK,EAAE,kBAAkB,GAAG,OAAO,CAAC,mBAAmB,CAAC;IAI/D,MAAM,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAIzC;0FACsF;IAChF,YAAY,CAAC,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC;IAIhF;iGAC6F;IACvF,UAAU,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,oBAAoB,CAAC;IAI7D;iEAC6D;IACvD,WAAW,CACb,IAAI,EAAE,MAAM,EACZ,KAAK,EAAE,uBAAuB,GAC/B,OAAO,CAAC,2BAA2B,CAAC;IAOvC,wFAAwF;IAClF,YAAY,CAAC,IAAI,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAMpE,mFAAmF;IAC7E,WAAW,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,qBAAqB,EAAE,CAAC;IAQjE,4FAA4F;IACtF,SAAS,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,qBAAqB,CAAC;IAQ1F,+DAA+D;IACzD,YAAY,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;CAKhE"}
1
+ {"version":3,"file":"projects.client.d.ts","sourceRoot":"","sources":["../../../src/clients/admin/projects.client.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,iBAAiB,EAAE,MAAM,oBAAoB,CAAA;AAC3E,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,gCAAgC,CAAA;AAEhE;2FAC2F;AAC3F,MAAM,WAAW,kBAAkB;IAC/B,IAAI,EAAE,MAAM,CAAA;IACZ,IAAI,EAAE,MAAM,CAAA;IACZ,UAAU,CAAC,EAAE,MAAM,CAAA;CACtB;AAED,MAAM,WAAW,mBAAmB;IAChC,IAAI,EAAE,MAAM,CAAA;IACZ,IAAI,EAAE,MAAM,CAAA;IACZ,KAAK,EAAE,MAAM,GAAG,IAAI,CAAA;IACpB,WAAW,EAAE,MAAM,GAAG,IAAI,CAAA;CAC7B;AAED,mGAAmG;AACnG,MAAM,WAAW,qBAAqB;IAClC,WAAW,EAAE,MAAM,CAAA;IACnB,IAAI,EAAE,MAAM,CAAA;IACZ,SAAS,EAAE,MAAM,GAAG,IAAI,CAAA;IACxB,SAAS,EAAE,MAAM,CAAA;CACpB;AAED;iEACiE;AACjE,MAAM,WAAW,oBAAoB;IACjC,WAAW,EAAE,MAAM,GAAG,IAAI,CAAA;IAC1B,KAAK,EAAE,MAAM,GAAG,IAAI,CAAA;IACpB,MAAM,EAAE,qBAAqB,EAAE,CAAA;CAClC;AAED;;;;;;GAMG;AACH,MAAM,WAAW,uBAAuB;IACpC,WAAW,EAAE,MAAM,CAAA;IACnB,IAAI,EAAE,iBAAiB,CAAA;CAC1B;AAED,MAAM,WAAW,2BAA2B;IACxC,OAAO,EAAE,MAAM,CAAA;IACf,WAAW,EAAE,MAAM,CAAA;IACnB,IAAI,EAAE,MAAM,CAAA;CACf;AAED,sEAAsE;AACtE,MAAM,WAAW,qBAAqB;IAClC,IAAI,EAAE,MAAM,CAAA;IACZ,KAAK,EAAE,OAAO,CAAA;IACd,SAAS,EAAE,MAAM,GAAG,IAAI,CAAA;CAC3B;AAED,qBAAa,mBAAmB;IAChB,OAAO,CAAC,QAAQ,CAAC,IAAI;gBAAJ,IAAI,EAAE,UAAU;IAEvC,IAAI,IAAI,OAAO,CAAC,cAAc,EAAE,CAAC;IAIjC,GAAG,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,cAAc,GAAG,IAAI,CAAC;IAQvD;oEACgE;IAC1D,MAAM,CAAC,KAAK,EAAE,kBAAkB,GAAG,OAAO,CAAC,mBAAmB,CAAC;IAI/D,MAAM,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAIzC;0FACsF;IAChF,YAAY,CAAC,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC;IAIhF;iGAC6F;IACvF,UAAU,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,oBAAoB,CAAC;IAI7D;iEAC6D;IACvD,WAAW,CACb,IAAI,EAAE,MAAM,EACZ,KAAK,EAAE,uBAAuB,GAC/B,OAAO,CAAC,2BAA2B,CAAC;IAOvC,wFAAwF;IAClF,YAAY,CAAC,IAAI,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAMpE,mFAAmF;IAC7E,WAAW,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,qBAAqB,EAAE,CAAC;IAQjE,4FAA4F;IACtF,SAAS,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,qBAAqB,CAAC;IAQ1F,+DAA+D;IACzD,YAAY,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;CAKhE"}
@@ -1 +1 @@
1
- {"version":3,"file":"projects.client.js","sourceRoot":"","sources":["../../../src/clients/admin/projects.client.ts"],"names":[],"mappings":"AAsDA,MAAM,OAAO,mBAAmB;IACC;IAA7B,YAA6B,IAAgB;QAAhB,SAAI,GAAJ,IAAI,CAAY;IAAG,CAAC;IAEjD,KAAK,CAAC,IAAI;QACN,OAAO,IAAI,CAAC,IAAI,CAAC,GAAG,CAAmB,WAAW,CAAC,CAAA;IACvD,CAAC;IAED,KAAK,CAAC,GAAG,CAAC,IAAY;QAClB,IAAI,CAAC;YACD,OAAO,MAAM,IAAI,CAAC,IAAI,CAAC,GAAG,CAAiB,aAAa,kBAAkB,CAAC,IAAI,CAAC,EAAE,CAAC,CAAA;QACvF,CAAC;QAAC,OAAO,IAAI,EAAE,CAAC;YACZ,OAAO,IAAI,CAAA;QACf,CAAC;IACL,CAAC;IAED;oEACgE;IAChE,KAAK,CAAC,MAAM,CAAC,KAAyB;QAClC,OAAO,IAAI,CAAC,IAAI,CAAC,IAAI,CAAsB,WAAW,EAAE,KAAK,CAAC,CAAA;IAClE,CAAC;IAED,KAAK,CAAC,MAAM,CAAC,IAAY;QACrB,MAAM,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,aAAa,kBAAkB,CAAC,IAAI,CAAC,EAAE,CAAC,CAAA;IACnE,CAAC;IAED;0FACsF;IACtF,KAAK,CAAC,YAAY,CAAC,IAAY,EAAE,MAA+B;QAC5D,MAAM,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,aAAa,kBAAkB,CAAC,IAAI,CAAC,SAAS,EAAE,EAAE,MAAM,EAAE,CAAC,CAAA;IACrF,CAAC;IAED;iGAC6F;IAC7F,KAAK,CAAC,UAAU,CAAC,IAAY;QACzB,OAAO,IAAI,CAAC,IAAI,CAAC,GAAG,CAAuB,aAAa,kBAAkB,CAAC,IAAI,CAAC,SAAS,CAAC,CAAA;IAC9F,CAAC;IAED;iEAC6D;IAC7D,KAAK,CAAC,WAAW,CACb,IAAY,EACZ,KAA8B;QAE9B,OAAO,IAAI,CAAC,IAAI,CAAC,IAAI,CACjB,aAAa,kBAAkB,CAAC,IAAI,CAAC,SAAS,EAC9C,KAAK,CACR,CAAA;IACL,CAAC;IAED,wFAAwF;IACxF,KAAK,CAAC,YAAY,CAAC,IAAY,EAAE,WAAmB;QAChD,MAAM,IAAI,CAAC,IAAI,CAAC,MAAM,CAClB,aAAa,kBAAkB,CAAC,IAAI,CAAC,WAAW,kBAAkB,CAAC,WAAW,CAAC,EAAE,CACpF,CAAA;IACL,CAAC;IAED,mFAAmF;IACnF,KAAK,CAAC,WAAW,CAAC,IAAY;QAC1B,8FAA8F;QAC9F,gGAAgG;QAChG,OAAO,IAAI,CAAC,IAAI,CAAC,GAAG,CAChB,aAAa,kBAAkB,CAAC,IAAI,CAAC,UAAU,CAClD,CAAA;IACL,CAAC;IAED,4FAA4F;IAC5F,KAAK,CAAC,SAAS,CAAC,IAAY,EAAE,IAAY,EAAE,KAAa;QACrD,2FAA2F;QAC3F,OAAO,IAAI,CAAC,IAAI,CAAC,GAAG,CAChB,aAAa,kBAAkB,CAAC,IAAI,CAAC,YAAY,kBAAkB,CAAC,IAAI,CAAC,EAAE,EAC3E,EAAE,KAAK,EAAE,CACZ,CAAA;IACL,CAAC;IAED,+DAA+D;IAC/D,KAAK,CAAC,YAAY,CAAC,IAAY,EAAE,IAAY;QACzC,MAAM,IAAI,CAAC,IAAI,CAAC,MAAM,CAClB,aAAa,kBAAkB,CAAC,IAAI,CAAC,YAAY,kBAAkB,CAAC,IAAI,CAAC,EAAE,CAC9E,CAAA;IACL,CAAC;CACJ"}
1
+ {"version":3,"file":"projects.client.js","sourceRoot":"","sources":["../../../src/clients/admin/projects.client.ts"],"names":[],"mappings":"AA2DA,MAAM,OAAO,mBAAmB;IACC;IAA7B,YAA6B,IAAgB;QAAhB,SAAI,GAAJ,IAAI,CAAY;IAAG,CAAC;IAEjD,KAAK,CAAC,IAAI;QACN,OAAO,IAAI,CAAC,IAAI,CAAC,GAAG,CAAmB,WAAW,CAAC,CAAA;IACvD,CAAC;IAED,KAAK,CAAC,GAAG,CAAC,IAAY;QAClB,IAAI,CAAC;YACD,OAAO,MAAM,IAAI,CAAC,IAAI,CAAC,GAAG,CAAiB,aAAa,kBAAkB,CAAC,IAAI,CAAC,EAAE,CAAC,CAAA;QACvF,CAAC;QAAC,OAAO,IAAI,EAAE,CAAC;YACZ,OAAO,IAAI,CAAA;QACf,CAAC;IACL,CAAC;IAED;oEACgE;IAChE,KAAK,CAAC,MAAM,CAAC,KAAyB;QAClC,OAAO,IAAI,CAAC,IAAI,CAAC,IAAI,CAAsB,WAAW,EAAE,KAAK,CAAC,CAAA;IAClE,CAAC;IAED,KAAK,CAAC,MAAM,CAAC,IAAY;QACrB,MAAM,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,aAAa,kBAAkB,CAAC,IAAI,CAAC,EAAE,CAAC,CAAA;IACnE,CAAC;IAED;0FACsF;IACtF,KAAK,CAAC,YAAY,CAAC,IAAY,EAAE,MAA+B;QAC5D,MAAM,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,aAAa,kBAAkB,CAAC,IAAI,CAAC,SAAS,EAAE,EAAE,MAAM,EAAE,CAAC,CAAA;IACrF,CAAC;IAED;iGAC6F;IAC7F,KAAK,CAAC,UAAU,CAAC,IAAY;QACzB,OAAO,IAAI,CAAC,IAAI,CAAC,GAAG,CAAuB,aAAa,kBAAkB,CAAC,IAAI,CAAC,SAAS,CAAC,CAAA;IAC9F,CAAC;IAED;iEAC6D;IAC7D,KAAK,CAAC,WAAW,CACb,IAAY,EACZ,KAA8B;QAE9B,OAAO,IAAI,CAAC,IAAI,CAAC,IAAI,CACjB,aAAa,kBAAkB,CAAC,IAAI,CAAC,SAAS,EAC9C,KAAK,CACR,CAAA;IACL,CAAC;IAED,wFAAwF;IACxF,KAAK,CAAC,YAAY,CAAC,IAAY,EAAE,WAAmB;QAChD,MAAM,IAAI,CAAC,IAAI,CAAC,MAAM,CAClB,aAAa,kBAAkB,CAAC,IAAI,CAAC,WAAW,kBAAkB,CAAC,WAAW,CAAC,EAAE,CACpF,CAAA;IACL,CAAC;IAED,mFAAmF;IACnF,KAAK,CAAC,WAAW,CAAC,IAAY;QAC1B,8FAA8F;QAC9F,gGAAgG;QAChG,OAAO,IAAI,CAAC,IAAI,CAAC,GAAG,CAChB,aAAa,kBAAkB,CAAC,IAAI,CAAC,UAAU,CAClD,CAAA;IACL,CAAC;IAED,4FAA4F;IAC5F,KAAK,CAAC,SAAS,CAAC,IAAY,EAAE,IAAY,EAAE,KAAa;QACrD,2FAA2F;QAC3F,OAAO,IAAI,CAAC,IAAI,CAAC,GAAG,CAChB,aAAa,kBAAkB,CAAC,IAAI,CAAC,YAAY,kBAAkB,CAAC,IAAI,CAAC,EAAE,EAC3E,EAAE,KAAK,EAAE,CACZ,CAAA;IACL,CAAC;IAED,+DAA+D;IAC/D,KAAK,CAAC,YAAY,CAAC,IAAY,EAAE,IAAY;QACzC,MAAM,IAAI,CAAC,IAAI,CAAC,MAAM,CAClB,aAAa,kBAAkB,CAAC,IAAI,CAAC,YAAY,kBAAkB,CAAC,IAAI,CAAC,EAAE,CAC9E,CAAA;IACL,CAAC;CACJ"}
@@ -0,0 +1,32 @@
1
+ import type { LeadDto } from '@beacon-build/core';
2
+ import type { OpsApiClient } from '../../transport/ops-api-client.js';
3
+ /** AC-27/AC-28: `LeadsOpsClient` — create/list/get/update, mirrors `TasksOpsClient`'s
4
+ * shape/registration exactly. Every method unwraps the `{ data }` envelope — never
5
+ * returns the raw envelope object. */
6
+ export interface CreateLeadOpsInput {
7
+ email: string;
8
+ source: string;
9
+ locale: string;
10
+ company?: string;
11
+ message?: string;
12
+ }
13
+ export interface UpdateLeadOpsFields {
14
+ email?: string;
15
+ status?: string;
16
+ company?: string;
17
+ message?: string;
18
+ }
19
+ export interface LeadListOpsFilter {
20
+ status?: string;
21
+ page?: number;
22
+ limit?: number;
23
+ }
24
+ export declare class LeadsOpsClient {
25
+ private readonly api;
26
+ constructor(api: OpsApiClient);
27
+ create(input: CreateLeadOpsInput): Promise<LeadDto>;
28
+ list(filter?: LeadListOpsFilter): Promise<LeadDto[]>;
29
+ get(id: string): Promise<LeadDto>;
30
+ update(id: string, fields: UpdateLeadOpsFields): Promise<LeadDto>;
31
+ }
32
+ //# sourceMappingURL=leads-ops.client.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"leads-ops.client.d.ts","sourceRoot":"","sources":["../../../src/clients/ops/leads-ops.client.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,oBAAoB,CAAA;AACjD,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,mCAAmC,CAAA;AAErE;;uCAEuC;AAEvC,MAAM,WAAW,kBAAkB;IAC/B,KAAK,EAAE,MAAM,CAAA;IACb,MAAM,EAAE,MAAM,CAAA;IACd,MAAM,EAAE,MAAM,CAAA;IACd,OAAO,CAAC,EAAE,MAAM,CAAA;IAChB,OAAO,CAAC,EAAE,MAAM,CAAA;CACnB;AAED,MAAM,WAAW,mBAAmB;IAChC,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,MAAM,CAAC,EAAE,MAAM,CAAA;IACf,OAAO,CAAC,EAAE,MAAM,CAAA;IAChB,OAAO,CAAC,EAAE,MAAM,CAAA;CACnB;AAED,MAAM,WAAW,iBAAiB;IAC9B,MAAM,CAAC,EAAE,MAAM,CAAA;IACf,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,KAAK,CAAC,EAAE,MAAM,CAAA;CACjB;AAED,qBAAa,cAAc;IACX,OAAO,CAAC,QAAQ,CAAC,GAAG;gBAAH,GAAG,EAAE,YAAY;IAExC,MAAM,CAAC,KAAK,EAAE,kBAAkB,GAAG,OAAO,CAAC,OAAO,CAAC;IAOnD,IAAI,CAAC,MAAM,GAAE,iBAAsB,GAAG,OAAO,CAAC,OAAO,EAAE,CAAC;IAUxD,GAAG,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IAKjC,MAAM,CAAC,EAAE,EAAE,MAAM,EAAE,MAAM,EAAE,mBAAmB,GAAG,OAAO,CAAC,OAAO,CAAC;CAO1E"}
@@ -0,0 +1,33 @@
1
+ export class LeadsOpsClient {
2
+ api;
3
+ constructor(api) {
4
+ this.api = api;
5
+ }
6
+ async create(input) {
7
+ const res = await this.api.post('/api/v1/leads', input);
8
+ return res.data;
9
+ }
10
+ // AC-28: unwraps the `{ data }` envelope — same contract shape as
11
+ // `TasksOpsClient.list()` (returns the bare array, drops `meta`).
12
+ async list(filter = {}) {
13
+ const params = new URLSearchParams();
14
+ if (filter.status)
15
+ params.set('status', filter.status);
16
+ if (filter.page != null)
17
+ params.set('page', String(filter.page));
18
+ if (filter.limit != null)
19
+ params.set('limit', String(filter.limit));
20
+ const qs = params.toString();
21
+ const res = await this.api.get(`/api/v1/leads${qs ? `?${qs}` : ''}`);
22
+ return res.data ?? [];
23
+ }
24
+ async get(id) {
25
+ const res = await this.api.get(`/api/v1/leads/${encodeURIComponent(id)}`);
26
+ return res.data;
27
+ }
28
+ async update(id, fields) {
29
+ const res = await this.api.patch(`/api/v1/leads/${encodeURIComponent(id)}`, fields);
30
+ return res.data;
31
+ }
32
+ }
33
+ //# sourceMappingURL=leads-ops.client.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"leads-ops.client.js","sourceRoot":"","sources":["../../../src/clients/ops/leads-ops.client.ts"],"names":[],"mappings":"AA4BA,MAAM,OAAO,cAAc;IACM;IAA7B,YAA6B,GAAiB;QAAjB,QAAG,GAAH,GAAG,CAAc;IAAG,CAAC;IAElD,KAAK,CAAC,MAAM,CAAC,KAAyB;QAClC,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC,GAAG,CAAC,IAAI,CAAoB,eAAe,EAAE,KAAK,CAAC,CAAA;QAC1E,OAAO,GAAG,CAAC,IAAI,CAAA;IACnB,CAAC;IAED,kEAAkE;IAClE,kEAAkE;IAClE,KAAK,CAAC,IAAI,CAAC,SAA4B,EAAE;QACrC,MAAM,MAAM,GAAG,IAAI,eAAe,EAAE,CAAA;QACpC,IAAI,MAAM,CAAC,MAAM;YAAE,MAAM,CAAC,GAAG,CAAC,QAAQ,EAAE,MAAM,CAAC,MAAM,CAAC,CAAA;QACtD,IAAI,MAAM,CAAC,IAAI,IAAI,IAAI;YAAE,MAAM,CAAC,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAA;QAChE,IAAI,MAAM,CAAC,KAAK,IAAI,IAAI;YAAE,MAAM,CAAC,GAAG,CAAC,OAAO,EAAE,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAA;QACnE,MAAM,EAAE,GAAG,MAAM,CAAC,QAAQ,EAAE,CAAA;QAC5B,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC,GAAG,CAAC,GAAG,CAAsB,gBAAgB,EAAE,CAAC,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAA;QACzF,OAAO,GAAG,CAAC,IAAI,IAAI,EAAE,CAAA;IACzB,CAAC;IAED,KAAK,CAAC,GAAG,CAAC,EAAU;QAChB,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC,GAAG,CAAC,GAAG,CAAoB,iBAAiB,kBAAkB,CAAC,EAAE,CAAC,EAAE,CAAC,CAAA;QAC5F,OAAO,GAAG,CAAC,IAAI,CAAA;IACnB,CAAC;IAED,KAAK,CAAC,MAAM,CAAC,EAAU,EAAE,MAA2B;QAChD,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC,GAAG,CAAC,KAAK,CAC5B,iBAAiB,kBAAkB,CAAC,EAAE,CAAC,EAAE,EACzC,MAAM,CACT,CAAA;QACD,OAAO,GAAG,CAAC,IAAI,CAAA;IACnB,CAAC;CACJ"}
@@ -20,7 +20,10 @@ export declare class SessionsOpsClient {
20
20
  create(agentId: string, project: string, meta?: Record<string, unknown>, runtime?: SessionRuntime, external?: {
21
21
  provider?: string;
22
22
  externalSessionId: string;
23
- }, seat?: string): Promise<CreateSessionResult>;
23
+ }, seat?: string,
24
+ /** F452/AC-20: an explicit triggering-human override — see `AgentMeta.triggeredByHuman`
25
+ * (mcp/agent) and `AgentContext.triggeredByActorId` (core) for the full chain. */
26
+ triggeredByHuman?: string): Promise<CreateSessionResult>;
24
27
  heartbeat(sessionId: string): Promise<void>;
25
28
  terminate(sessionId: string): Promise<void>;
26
29
  terminateByAgent(agentId: string): Promise<void>;
@@ -1 +1 @@
1
- {"version":3,"file":"sessions-ops.client.d.ts","sourceRoot":"","sources":["../../../src/clients/ops/sessions-ops.client.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACR,iBAAiB,EACjB,kBAAkB,EAClB,kBAAkB,EAClB,cAAc,EACjB,MAAM,oBAAoB,CAAA;AAC3B,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,mCAAmC,CAAA;AAErE,MAAM,WAAW,iBAAiB;IAC9B,OAAO,CAAC,EAAE,MAAM,CAAA;IAChB,OAAO,CAAC,EAAE,MAAM,CAAA;IAChB,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,KAAK,CAAC,EAAE,MAAM,CAAA;CACjB;AAED,MAAM,MAAM,mBAAmB,GAAG,iBAAiB,CAAA;AAEnD,qBAAa,iBAAiB;IACd,OAAO,CAAC,QAAQ,CAAC,GAAG;gBAAH,GAAG,EAAE,YAAY;IAExC,GAAG,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,iBAAiB,GAAG,IAAI,CAAC;IAYzD,IAAI,CAAC,MAAM,GAAE,iBAAsB,GAAG,OAAO,CAAC;QAChD,QAAQ,EAAE,kBAAkB,EAAE,CAAA;QAC9B,KAAK,EAAE,MAAM,CAAA;QACb,IAAI,EAAE,MAAM,CAAA;QACZ,KAAK,EAAE,MAAM,CAAA;KAChB,CAAC;IAeI,MAAM,CACR,OAAO,EAAE,MAAM,EACf,OAAO,EAAE,MAAM,EACf,IAAI,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAC9B,OAAO,CAAC,EAAE,cAAc,EACxB,QAAQ,CAAC,EAAE;QAAE,QAAQ,CAAC,EAAE,MAAM,CAAC;QAAC,iBAAiB,EAAE,MAAM,CAAA;KAAE,EAC3D,IAAI,CAAC,EAAE,MAAM,GACd,OAAO,CAAC,mBAAmB,CAAC;IAoBzB,SAAS,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAM3C,SAAS,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAM3C,gBAAgB,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAIhD,KAAK,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,iBAAiB,GAAG,IAAI,CAAC;IAM5D,UAAU,CAAC,QAAQ,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,iBAAiB,GAAG,IAAI,CAAC;IAQnF,kBAAkB,CACpB,SAAS,EAAE,MAAM,EACjB,QAAQ,EAAE,MAAM,EAChB,UAAU,EAAE,MAAM,GACnB,OAAO,CAAC,IAAI,CAAC;IAOV,eAAe,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,kBAAkB,EAAE,CAAC;CAW1E"}
1
+ {"version":3,"file":"sessions-ops.client.d.ts","sourceRoot":"","sources":["../../../src/clients/ops/sessions-ops.client.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACR,iBAAiB,EACjB,kBAAkB,EAClB,kBAAkB,EAClB,cAAc,EACjB,MAAM,oBAAoB,CAAA;AAC3B,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,mCAAmC,CAAA;AAErE,MAAM,WAAW,iBAAiB;IAC9B,OAAO,CAAC,EAAE,MAAM,CAAA;IAChB,OAAO,CAAC,EAAE,MAAM,CAAA;IAChB,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,KAAK,CAAC,EAAE,MAAM,CAAA;CACjB;AAED,MAAM,MAAM,mBAAmB,GAAG,iBAAiB,CAAA;AAEnD,qBAAa,iBAAiB;IACd,OAAO,CAAC,QAAQ,CAAC,GAAG;gBAAH,GAAG,EAAE,YAAY;IAExC,GAAG,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,iBAAiB,GAAG,IAAI,CAAC;IAYzD,IAAI,CAAC,MAAM,GAAE,iBAAsB,GAAG,OAAO,CAAC;QAChD,QAAQ,EAAE,kBAAkB,EAAE,CAAA;QAC9B,KAAK,EAAE,MAAM,CAAA;QACb,IAAI,EAAE,MAAM,CAAA;QACZ,KAAK,EAAE,MAAM,CAAA;KAChB,CAAC;IAeI,MAAM,CACR,OAAO,EAAE,MAAM,EACf,OAAO,EAAE,MAAM,EACf,IAAI,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAC9B,OAAO,CAAC,EAAE,cAAc,EACxB,QAAQ,CAAC,EAAE;QAAE,QAAQ,CAAC,EAAE,MAAM,CAAC;QAAC,iBAAiB,EAAE,MAAM,CAAA;KAAE,EAC3D,IAAI,CAAC,EAAE,MAAM;IACb;sFACkF;IAClF,gBAAgB,CAAC,EAAE,MAAM,GAC1B,OAAO,CAAC,mBAAmB,CAAC;IAqBzB,SAAS,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAM3C,SAAS,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAM3C,gBAAgB,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAIhD,KAAK,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,iBAAiB,GAAG,IAAI,CAAC;IAM5D,UAAU,CAAC,QAAQ,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,iBAAiB,GAAG,IAAI,CAAC;IAQnF,kBAAkB,CACpB,SAAS,EAAE,MAAM,EACjB,QAAQ,EAAE,MAAM,EAChB,UAAU,EAAE,MAAM,GACnB,OAAO,CAAC,IAAI,CAAC;IAOV,eAAe,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,kBAAkB,EAAE,CAAC;CAW1E"}
@@ -26,7 +26,10 @@ export class SessionsOpsClient {
26
26
  const qs = params.toString();
27
27
  return this.api.get(`/api/v1/sessions${qs ? `?${qs}` : ''}`);
28
28
  }
29
- async create(agentId, project, meta, runtime, external, seat) {
29
+ async create(agentId, project, meta, runtime, external, seat,
30
+ /** F452/AC-20: an explicit triggering-human override — see `AgentMeta.triggeredByHuman`
31
+ * (mcp/agent) and `AgentContext.triggeredByActorId` (core) for the full chain. */
32
+ triggeredByHuman) {
30
33
  // F319: forward the detected runtime dimensions (client/env/cwd) so the
31
34
  // session row captures them; the API validates the enum values (AC-9).
32
35
  // B384: `seat` (the deterministic `deriveSeat` output) is now the SOLE
@@ -43,6 +46,7 @@ export class SessionsOpsClient {
43
46
  cwd: runtime?.cwd ?? undefined,
44
47
  externalSessionId: external?.externalSessionId ?? undefined,
45
48
  provider: external?.provider ?? undefined,
49
+ triggeredByHuman: triggeredByHuman ?? undefined,
46
50
  });
47
51
  }
48
52
  async heartbeat(sessionId) {
@@ -1 +1 @@
1
- {"version":3,"file":"sessions-ops.client.js","sourceRoot":"","sources":["../../../src/clients/ops/sessions-ops.client.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"sessions-ops.client.js","sourceRoot":"","sources":["../../../src/clients/ops/sessions-ops.client.ts"],"names":[],"mappings":"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"}
@@ -13,6 +13,7 @@ import { OpsNorthflankClient } from '../clients/ops/ops-northflank.client.js';
13
13
  import { OpsMqClient } from '../clients/ops/ops-mq.client.js';
14
14
  import { OpsLogsClient } from '../clients/ops/ops-logs.client.js';
15
15
  import { OpsWorkersClient } from '../clients/ops/ops-workers.client.js';
16
+ import { LeadsOpsClient } from '../clients/ops/leads-ops.client.js';
16
17
  export interface OpsSdkConfig {
17
18
  /** Base URL for the beacon API (e.g. 'https://api.beacon.build') */
18
19
  baseUrl: string;
@@ -42,6 +43,8 @@ export interface OpsSdk {
42
43
  mq: OpsMqClient;
43
44
  logs: OpsLogsClient;
44
45
  workers: OpsWorkersClient;
46
+ /** F454: Lead-Entität + CRUD (Ingest + Verwaltung, FS56/DSC-020 Step 1). */
47
+ leads: LeadsOpsClient;
45
48
  }
46
49
  /**
47
50
  * createOpsClient — creates an Ops SDK instance authenticated with an OPS_API_KEY.
@@ -1 +1 @@
1
- {"version":3,"file":"ops-sdk.d.ts","sourceRoot":"","sources":["../../src/factory/ops-sdk.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,cAAc,EAAE,MAAM,oCAAoC,CAAA;AACnE,OAAO,EAAE,iBAAiB,EAAE,MAAM,uCAAuC,CAAA;AACzE,OAAO,EAAE,eAAe,EAAE,MAAM,qCAAqC,CAAA;AACrE,OAAO,EAAE,iBAAiB,EAAE,MAAM,uCAAuC,CAAA;AACzE,OAAO,EAAE,kBAAkB,EAAE,MAAM,wCAAwC,CAAA;AAC3E,OAAO,EAAE,iBAAiB,EAAE,MAAM,uCAAuC,CAAA;AACzE,OAAO,EAAE,6BAA6B,EAAE,MAAM,oDAAoD,CAAA;AAClG,OAAO,EAAE,uBAAuB,EAAE,MAAM,8CAA8C,CAAA;AACtF,OAAO,EAAE,iBAAiB,EAAE,MAAM,uCAAuC,CAAA;AACzE,OAAO,EAAE,WAAW,EAAE,MAAM,iCAAiC,CAAA;AAC7D,OAAO,EAAE,gBAAgB,EAAE,MAAM,sCAAsC,CAAA;AACvE,OAAO,EAAE,mBAAmB,EAAE,MAAM,yCAAyC,CAAA;AAC7E,OAAO,EAAE,WAAW,EAAE,MAAM,iCAAiC,CAAA;AAC7D,OAAO,EAAE,aAAa,EAAE,MAAM,mCAAmC,CAAA;AACjE,OAAO,EAAE,gBAAgB,EAAE,MAAM,sCAAsC,CAAA;AAEvE,MAAM,WAAW,YAAY;IACzB,oEAAoE;IACpE,OAAO,EAAE,MAAM,CAAA;IACf,qFAAqF;IACrF,MAAM,CAAC,EAAE,MAAM,CAAA;IACf;mFAC+E;IAC/E,GAAG,CAAC,EAAE,MAAM,CAAA;IACZ,6DAA6D;IAC7D,OAAO,CAAC,EAAE,MAAM,CAAA;IAChB,2DAA2D;IAC3D,WAAW,CAAC,EAAE,MAAM,CAAA;CACvB;AAED,MAAM,WAAW,MAAM;IACnB,KAAK,EAAE,cAAc,CAAA;IACrB,QAAQ,EAAE,iBAAiB,CAAA;IAC3B,MAAM,EAAE,eAAe,CAAA;IACvB,QAAQ,EAAE,iBAAiB,CAAA;IAC3B,SAAS,EAAE,kBAAkB,CAAA;IAC7B,QAAQ,EAAE,iBAAiB,CAAA;IAC3B,oBAAoB,EAAE,6BAA6B,CAAA;IACnD,cAAc,EAAE,uBAAuB,CAAA;IACvC,QAAQ,EAAE,iBAAiB,CAAA;IAC3B,EAAE,EAAE,WAAW,CAAA;IACf,OAAO,EAAE,gBAAgB,CAAA;IACzB,UAAU,EAAE,mBAAmB,CAAA;IAC/B,EAAE,EAAE,WAAW,CAAA;IACf,IAAI,EAAE,aAAa,CAAA;IACnB,OAAO,EAAE,gBAAgB,CAAA;CAC5B;AAED;;;;;;;GAOG;AACH,wBAAgB,eAAe,CAAC,MAAM,EAAE,YAAY,GAAG,MAAM,CAmD5D"}
1
+ {"version":3,"file":"ops-sdk.d.ts","sourceRoot":"","sources":["../../src/factory/ops-sdk.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,cAAc,EAAE,MAAM,oCAAoC,CAAA;AACnE,OAAO,EAAE,iBAAiB,EAAE,MAAM,uCAAuC,CAAA;AACzE,OAAO,EAAE,eAAe,EAAE,MAAM,qCAAqC,CAAA;AACrE,OAAO,EAAE,iBAAiB,EAAE,MAAM,uCAAuC,CAAA;AACzE,OAAO,EAAE,kBAAkB,EAAE,MAAM,wCAAwC,CAAA;AAC3E,OAAO,EAAE,iBAAiB,EAAE,MAAM,uCAAuC,CAAA;AACzE,OAAO,EAAE,6BAA6B,EAAE,MAAM,oDAAoD,CAAA;AAClG,OAAO,EAAE,uBAAuB,EAAE,MAAM,8CAA8C,CAAA;AACtF,OAAO,EAAE,iBAAiB,EAAE,MAAM,uCAAuC,CAAA;AACzE,OAAO,EAAE,WAAW,EAAE,MAAM,iCAAiC,CAAA;AAC7D,OAAO,EAAE,gBAAgB,EAAE,MAAM,sCAAsC,CAAA;AACvE,OAAO,EAAE,mBAAmB,EAAE,MAAM,yCAAyC,CAAA;AAC7E,OAAO,EAAE,WAAW,EAAE,MAAM,iCAAiC,CAAA;AAC7D,OAAO,EAAE,aAAa,EAAE,MAAM,mCAAmC,CAAA;AACjE,OAAO,EAAE,gBAAgB,EAAE,MAAM,sCAAsC,CAAA;AACvE,OAAO,EAAE,cAAc,EAAE,MAAM,oCAAoC,CAAA;AAEnE,MAAM,WAAW,YAAY;IACzB,oEAAoE;IACpE,OAAO,EAAE,MAAM,CAAA;IACf,qFAAqF;IACrF,MAAM,CAAC,EAAE,MAAM,CAAA;IACf;mFAC+E;IAC/E,GAAG,CAAC,EAAE,MAAM,CAAA;IACZ,6DAA6D;IAC7D,OAAO,CAAC,EAAE,MAAM,CAAA;IAChB,2DAA2D;IAC3D,WAAW,CAAC,EAAE,MAAM,CAAA;CACvB;AAED,MAAM,WAAW,MAAM;IACnB,KAAK,EAAE,cAAc,CAAA;IACrB,QAAQ,EAAE,iBAAiB,CAAA;IAC3B,MAAM,EAAE,eAAe,CAAA;IACvB,QAAQ,EAAE,iBAAiB,CAAA;IAC3B,SAAS,EAAE,kBAAkB,CAAA;IAC7B,QAAQ,EAAE,iBAAiB,CAAA;IAC3B,oBAAoB,EAAE,6BAA6B,CAAA;IACnD,cAAc,EAAE,uBAAuB,CAAA;IACvC,QAAQ,EAAE,iBAAiB,CAAA;IAC3B,EAAE,EAAE,WAAW,CAAA;IACf,OAAO,EAAE,gBAAgB,CAAA;IACzB,UAAU,EAAE,mBAAmB,CAAA;IAC/B,EAAE,EAAE,WAAW,CAAA;IACf,IAAI,EAAE,aAAa,CAAA;IACnB,OAAO,EAAE,gBAAgB,CAAA;IACzB,4EAA4E;IAC5E,KAAK,EAAE,cAAc,CAAA;CACxB;AAED;;;;;;;GAOG;AACH,wBAAgB,eAAe,CAAC,MAAM,EAAE,YAAY,GAAG,MAAM,CAoD5D"}
@@ -15,6 +15,7 @@ import { OpsNorthflankClient } from '../clients/ops/ops-northflank.client.js';
15
15
  import { OpsMqClient } from '../clients/ops/ops-mq.client.js';
16
16
  import { OpsLogsClient } from '../clients/ops/ops-logs.client.js';
17
17
  import { OpsWorkersClient } from '../clients/ops/ops-workers.client.js';
18
+ import { LeadsOpsClient } from '../clients/ops/leads-ops.client.js';
18
19
  /**
19
20
  * createOpsClient — creates an Ops SDK instance authenticated with an OPS_API_KEY.
20
21
  * Use for daemon/runtime/MCP server operations against /api/v1/*.
@@ -64,6 +65,7 @@ export function createOpsClient(config) {
64
65
  northflank: new OpsNorthflankClient(api, authToken),
65
66
  mq: new OpsMqClient(api),
66
67
  logs: new OpsLogsClient(api),
68
+ leads: new LeadsOpsClient(api),
67
69
  // OpsApiClient uses full /api/v1/* paths and does not unwrap the { data }
68
70
  // envelope — exactly the WorkersTransport contract.
69
71
  workers: new OpsWorkersClient({
@@ -1 +1 @@
1
- {"version":3,"file":"ops-sdk.js","sourceRoot":"","sources":["../../src/factory/ops-sdk.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ops-sdk.js","sourceRoot":"","sources":["../../src/factory/ops-sdk.ts"],"names":[],"mappings":"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"}
@@ -9,6 +9,12 @@ export interface Permissions {
9
9
  isOrgMember: (orgId?: string | null) => boolean;
10
10
  /** Vendor or admin of at least one org. */
11
11
  canManageUsers: boolean;
12
+ /** F412 (apps/platform): project-workspace gates (Roadmap, Workflows/SOPs,
13
+ * Planning sidebar section) — open to vendor OR org admin/member; `viewer`
14
+ * stays excluded (OQ-3). UI visibility only — the tenant-safe API opening
15
+ * is F415. Included here (not app-specific-only, per F453/S1/AC-3) since
16
+ * apps/platform is now the same consumer of this one definition. */
17
+ canAccessProjectWorkspace: boolean;
12
18
  }
13
19
  /**
14
20
  * Pure — computes Permissions from a role list. `roles` is typically
@@ -1 +1 @@
1
- {"version":3,"file":"permissions.d.ts","sourceRoot":"","sources":["../src/permissions.ts"],"names":[],"mappings":"AAmBA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,4BAA4B,CAAA;AAEzD,YAAY,EAAE,OAAO,EAAE,CAAA;AAEvB,MAAM,WAAW,WAAW;IACxB,+CAA+C;IAC/C,QAAQ,EAAE,OAAO,CAAA;IACjB,gFAAgF;IAChF,UAAU,EAAE,CAAC,KAAK,CAAC,EAAE,MAAM,GAAG,IAAI,KAAK,OAAO,CAAA;IAC9C,6FAA6F;IAC7F,WAAW,EAAE,CAAC,KAAK,CAAC,EAAE,MAAM,GAAG,IAAI,KAAK,OAAO,CAAA;IAC/C,2CAA2C;IAC3C,cAAc,EAAE,OAAO,CAAA;CAC1B;AAED;;;;GAIG;AACH,wBAAgB,kBAAkB,CAAC,KAAK,EAAE,OAAO,EAAE,GAAG,WAAW,CAWhE"}
1
+ {"version":3,"file":"permissions.d.ts","sourceRoot":"","sources":["../src/permissions.ts"],"names":[],"mappings":"AAsBA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,4BAA4B,CAAA;AAEzD,YAAY,EAAE,OAAO,EAAE,CAAA;AAEvB,MAAM,WAAW,WAAW;IACxB,+CAA+C;IAC/C,QAAQ,EAAE,OAAO,CAAA;IACjB,gFAAgF;IAChF,UAAU,EAAE,CAAC,KAAK,CAAC,EAAE,MAAM,GAAG,IAAI,KAAK,OAAO,CAAA;IAC9C,6FAA6F;IAC7F,WAAW,EAAE,CAAC,KAAK,CAAC,EAAE,MAAM,GAAG,IAAI,KAAK,OAAO,CAAA;IAC/C,2CAA2C;IAC3C,cAAc,EAAE,OAAO,CAAA;IACvB;;;;wEAIoE;IACpE,yBAAyB,EAAE,OAAO,CAAA;CACrC;AAED;;;;GAIG;AACH,wBAAgB,kBAAkB,CAAC,KAAK,EAAE,OAAO,EAAE,GAAG,WAAW,CAchE"}
@@ -2,8 +2,8 @@
2
2
  * F148 — Scoped Permissions API for @beacon-build/sdk consumers.
3
3
  *
4
4
  * Exposes the SAME org-scoped RBAC predicates apps/platform's internal
5
- * usePermissions() hook (F121/AC-8) already bundles — but at the SDK layer, so
6
- * a consumer that is NOT apps/platform (its own frontend, a Node script, a
5
+ * usePermissions() hook (F121/AC-8) bundles — at the SDK layer, so a consumer
6
+ * that is NOT apps/platform (its own frontend, a Node script, a
7
7
  * server-side render) can compute the same permission gates without a direct
8
8
  * @beacon-build/core dependency and without re-implementing the logic.
9
9
  *
@@ -12,9 +12,12 @@
12
12
  * (assertVendor/assertOrgAdminOrVendor/assertOrgMembership, CON-5 "Check at
13
13
  * API boundary. Never trust the frontend for auth decisions").
14
14
  *
15
- * Deliberately generic/app-agnostic: this does NOT include apps/platform-
16
- * specific derived gates (e.g. canAccessProjectWorkspace) a consumer needing
17
- * an app-specific derived gate composes it from these primitives itself.
15
+ * F453/S1/AC-3: this IS the one `computePermissions` — apps/platform's
16
+ * `usePermissions.ts` used to carry a near-identical duplicate (missing only
17
+ * `canAccessProjectWorkspace` below); it now imports this module directly and
18
+ * defines no computation of its own, only the React `usePermissions()` hook
19
+ * wrapper (memoization, `useAuth()` wiring — inherently React/apps/platform-
20
+ * specific, stays there).
18
21
  */
19
22
  import { isVendor, isOrgAdmin, isOrgMember } from '@beacon-build/core/browser';
20
23
  /**
@@ -30,6 +33,8 @@ export function computePermissions(roles) {
30
33
  isOrgAdmin: (orgId) => orgId ? isOrgAdmin(roles, orgId) : vendor || adminOrgIds.length > 0,
31
34
  isOrgMember: (orgId) => (orgId ? isOrgMember(roles, orgId) : vendor || roles.length > 0),
32
35
  canManageUsers: vendor || adminOrgIds.length > 0,
36
+ canAccessProjectWorkspace: vendor ||
37
+ roles.some((r) => (r.role === 'admin' || r.role === 'member') && r.orgId != null),
33
38
  };
34
39
  }
35
40
  //# sourceMappingURL=permissions.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"permissions.js","sourceRoot":"","sources":["../src/permissions.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;GAiBG;AACH,OAAO,EAAE,QAAQ,EAAE,UAAU,EAAE,WAAW,EAAE,MAAM,4BAA4B,CAAA;AAgB9E;;;;GAIG;AACH,MAAM,UAAU,kBAAkB,CAAC,KAAgB;IAC/C,MAAM,MAAM,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAA;IAC9B,MAAM,WAAW,GAAG,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,OAAO,IAAI,CAAC,CAAC,KAAK,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,CAAA;IAE1F,OAAO;QACH,QAAQ,EAAE,MAAM;QAChB,UAAU,EAAE,CAAC,KAAK,EAAE,EAAE,CAClB,KAAK,CAAC,CAAC,CAAC,UAAU,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC,CAAC,CAAC,MAAM,IAAI,WAAW,CAAC,MAAM,GAAG,CAAC;QACvE,WAAW,EAAE,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,WAAW,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC,CAAC,CAAC,MAAM,IAAI,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC;QACxF,cAAc,EAAE,MAAM,IAAI,WAAW,CAAC,MAAM,GAAG,CAAC;KACnD,CAAA;AACL,CAAC"}
1
+ {"version":3,"file":"permissions.js","sourceRoot":"","sources":["../src/permissions.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,OAAO,EAAE,QAAQ,EAAE,UAAU,EAAE,WAAW,EAAE,MAAM,4BAA4B,CAAA;AAsB9E;;;;GAIG;AACH,MAAM,UAAU,kBAAkB,CAAC,KAAgB;IAC/C,MAAM,MAAM,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAA;IAC9B,MAAM,WAAW,GAAG,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,OAAO,IAAI,CAAC,CAAC,KAAK,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,CAAA;IAE1F,OAAO;QACH,QAAQ,EAAE,MAAM;QAChB,UAAU,EAAE,CAAC,KAAK,EAAE,EAAE,CAClB,KAAK,CAAC,CAAC,CAAC,UAAU,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC,CAAC,CAAC,MAAM,IAAI,WAAW,CAAC,MAAM,GAAG,CAAC;QACvE,WAAW,EAAE,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,WAAW,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC,CAAC,CAAC,MAAM,IAAI,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC;QACxF,cAAc,EAAE,MAAM,IAAI,WAAW,CAAC,MAAM,GAAG,CAAC;QAChD,yBAAyB,EACrB,MAAM;YACN,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,IAAI,KAAK,OAAO,IAAI,CAAC,CAAC,IAAI,KAAK,QAAQ,CAAC,IAAI,CAAC,CAAC,KAAK,IAAI,IAAI,CAAC;KACxF,CAAA;AACL,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@beacon-build/sdk",
3
- "version": "1.46.3",
3
+ "version": "1.46.4",
4
4
  "type": "module",
5
5
  "main": "dist/index.js",
6
6
  "types": "dist/index.d.ts",
@@ -26,7 +26,7 @@
26
26
  "@types/react": "^19.2.0",
27
27
  "@types/react-dom": "^19.2.0",
28
28
  "event-source-polyfill": "^1.0.31",
29
- "@beacon-build/core": "1.46.3"
29
+ "@beacon-build/core": "1.46.4"
30
30
  },
31
31
  "devDependencies": {
32
32
  "@testing-library/react": "^16.3.2",