@company-semantics/contracts 6.3.1 → 6.5.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/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@company-semantics/contracts",
3
- "version": "6.3.1",
3
+ "version": "6.5.0",
4
4
  "private": false,
5
5
  "repository": {
6
6
  "type": "git",
@@ -1,3 +1,3 @@
1
1
  // AUTO-GENERATED — do not edit. Run pnpm generate:spec-hash to regenerate.
2
- export const SPEC_HASH = '22781c2b738f' as const;
3
- export const SPEC_HASH_FULL = '22781c2b738fdbdb0833b50ceab729227eccb7c54176ee35a373cc903d536b6c' as const;
2
+ export const SPEC_HASH = 'c8a21126db6c' as const;
3
+ export const SPEC_HASH_FULL = 'c8a21126db6c84f641327e778c710c41e539cd5f0a1272d077ec54f1a6e382b2' as const;
@@ -496,6 +496,23 @@ export interface paths {
496
496
  patch: operations["updateWorkspaceHandle"];
497
497
  trace?: never;
498
498
  };
499
+ "/api/workspace/organization": {
500
+ parameters: {
501
+ query?: never;
502
+ header?: never;
503
+ path?: never;
504
+ cookie?: never;
505
+ };
506
+ get?: never;
507
+ put?: never;
508
+ post?: never;
509
+ delete?: never;
510
+ options?: never;
511
+ head?: never;
512
+ /** Rename the organization (org.settings.write) */
513
+ patch: operations["renameOrganization"];
514
+ trace?: never;
515
+ };
499
516
  "/api/workspace/members": {
500
517
  parameters: {
501
518
  query?: never;
@@ -3070,6 +3087,9 @@ export interface components {
3070
3087
  WorkspaceHandleRequest: {
3071
3088
  handle: string;
3072
3089
  };
3090
+ OrgRenameRequest: {
3091
+ name: string;
3092
+ };
3073
3093
  WorkspaceMembersResponse: {
3074
3094
  items: {
3075
3095
  id: string;
@@ -5571,6 +5591,30 @@ export interface operations {
5571
5591
  };
5572
5592
  };
5573
5593
  };
5594
+ renameOrganization: {
5595
+ parameters: {
5596
+ query?: never;
5597
+ header?: never;
5598
+ path?: never;
5599
+ cookie?: never;
5600
+ };
5601
+ requestBody: {
5602
+ content: {
5603
+ "application/json": components["schemas"]["OrgRenameRequest"];
5604
+ };
5605
+ };
5606
+ responses: {
5607
+ /** @description Updated workspace overview */
5608
+ 200: {
5609
+ headers: {
5610
+ [name: string]: unknown;
5611
+ };
5612
+ content: {
5613
+ "application/json": components["schemas"]["WorkspaceOverview"];
5614
+ };
5615
+ };
5616
+ };
5617
+ };
5574
5618
  getWorkspaceMembers: {
5575
5619
  parameters: {
5576
5620
  query?: {
@@ -7490,6 +7534,7 @@ export interface operations {
7490
7534
  userId: string;
7491
7535
  note?: string;
7492
7536
  expiresAt?: string | null;
7537
+ notify?: boolean;
7493
7538
  };
7494
7539
  };
7495
7540
  };
@@ -7621,6 +7666,7 @@ export interface operations {
7621
7666
  /** Format: uuid */
7622
7667
  userId: string;
7623
7668
  reason?: string;
7669
+ notify?: boolean;
7624
7670
  };
7625
7671
  };
7626
7672
  };
@@ -140,6 +140,7 @@ export const openApiRoutes = {
140
140
  '/api/workspace/members/{id}': ['DELETE', 'GET'],
141
141
  '/api/workspace/members/{id}/role': ['PATCH'],
142
142
  '/api/workspace/name': ['PATCH'],
143
+ '/api/workspace/organization': ['PATCH'],
143
144
  '/api/workspace/resolve-path': ['POST'],
144
145
  '/api/workspace/resync-slack-logo': ['POST'],
145
146
  '/api/workspace/work-item-counts': ['GET'],
package/src/org/types.ts CHANGED
@@ -104,6 +104,16 @@ export interface WorkspaceMember {
104
104
  id: string;
105
105
  name: string;
106
106
  email: string;
107
+ /**
108
+ * Resolved avatar photo URL for the member, or `null`/absent when none is
109
+ * stored. SOURCE-AGNOSTIC: today the backend resolves this from the Slack
110
+ * profile photo cached on the user record, but the field name deliberately
111
+ * does not encode the origin so future sources (in-app upload, etc.) slot in
112
+ * behind the backend avatar resolver without a contract change. UI MUST fall
113
+ * back to initials when this is absent. Optional because it is an additive
114
+ * display-only enrichment (see ADR-CONTRACTS-055).
115
+ */
116
+ avatarUrl?: string | null;
107
117
  /** Free-text job title (`users.job_title`). Null when unset. */
108
118
  jobTitle: string | null;
109
119
  /**