@company-semantics/contracts 27.5.0 → 27.6.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": "27.5.0",
3
+ "version": "27.6.0",
4
4
  "private": false,
5
5
  "repository": {
6
6
  "type": "git",
@@ -105,9 +105,11 @@
105
105
  "test": "vitest run",
106
106
  "test:run": "vitest run",
107
107
  "generate:spec-hash": "tsx scripts/generate-spec-hash.ts",
108
- "generate:api": "pnpm generate:api-types && pnpm generate:spec-hash",
108
+ "generate:spec-hash:check": "tsx scripts/generate-spec-hash.ts --check",
109
+ "generate:api": "pnpm generate:api-types && pnpm generate:spec-hash && pnpm generate:openapi-routes",
109
110
  "generate:api-types": "openapi-typescript openapi/backend.yaml -o src/api/generated.ts",
110
111
  "generate:openapi-routes": "tsx scripts/generate-openapi-routes.ts",
112
+ "generate:openapi-routes:check": "tsx scripts/generate-openapi-routes.ts --check",
111
113
  "generate:api-types:check": "openapi-typescript openapi/backend.yaml -o /tmp/cs-api-types-check.ts && diff -q src/api/generated.ts /tmp/cs-api-types-check.ts",
112
114
  "generate:current": "tsx ../company-semantics-ci/scripts/generate-current.ts",
113
115
  "repo-map": "tsx ../company-semantics-ci/scripts/generate-repo-map.ts --roots src --name company-semantics-contracts --write",
@@ -123,7 +125,7 @@
123
125
  "zod": "^4.4.3"
124
126
  },
125
127
  "devDependencies": {
126
- "@types/node": "^26.0.1",
128
+ "@types/node": "^22.20.0",
127
129
  "husky": "^9.1.7",
128
130
  "lint-staged": "^17.0.8",
129
131
  "markdownlint-cli2": "^0.22.1",
@@ -1,3 +1,3 @@
1
1
  // AUTO-GENERATED — do not edit. Run pnpm generate:spec-hash to regenerate.
2
- export const SPEC_HASH = '511ebe19b2ad' as const;
3
- export const SPEC_HASH_FULL = '511ebe19b2adea947b0bfbd6ad39a192a616cf10e2d30606dde9ef8517389eed' as const;
2
+ export const SPEC_HASH = '628fe99ff916' as const;
3
+ export const SPEC_HASH_FULL = '628fe99ff9166b9eb6c0b2bab2794f4e730ceabff0785b7b54b8015897e9551d' as const;
@@ -770,6 +770,23 @@ export interface paths {
770
770
  patch?: never;
771
771
  trace?: never;
772
772
  };
773
+ "/api/reporting/move/apply": {
774
+ parameters: {
775
+ query?: never;
776
+ header?: never;
777
+ path?: never;
778
+ cookie?: never;
779
+ };
780
+ get?: never;
781
+ put?: never;
782
+ /** Apply a confirmed org-chart reporting move as a governed semantic transform */
783
+ post: operations["applyReportingMove"];
784
+ delete?: never;
785
+ options?: never;
786
+ head?: never;
787
+ patch?: never;
788
+ trace?: never;
789
+ };
773
790
  "/api/chat/interactive-tasks/submit": {
774
791
  parameters: {
775
792
  query?: never;
@@ -3927,16 +3944,47 @@ export interface components {
3927
3944
  idempotencyKey: string;
3928
3945
  };
3929
3946
  MovePreviewRequest: {
3930
- /**
3931
- * Format: uuid
3932
- * @description Workspace member (users.id) being moved in the chart
3933
- */
3934
- memberId: string;
3935
- /**
3936
- * Format: uuid
3937
- * @description The member (users.id) the dragged member should report to after the move
3938
- */
3939
- newManagerUserId: string;
3947
+ /** @constant */
3948
+ kind: "reporting.setManager";
3949
+ /** Format: uuid */
3950
+ reportPositionId: string;
3951
+ /** Format: uuid */
3952
+ managerPositionId: string;
3953
+ } | {
3954
+ /** @constant */
3955
+ kind: "unit.setParent";
3956
+ /** Format: uuid */
3957
+ unitId: string;
3958
+ parentUnitId: string | null;
3959
+ } | {
3960
+ /** @constant */
3961
+ kind: "position.setTitle";
3962
+ /** Format: uuid */
3963
+ positionId: string;
3964
+ title: string;
3965
+ };
3966
+ MoveApplyRequest: {
3967
+ mutations: ({
3968
+ /** @constant */
3969
+ kind: "reporting.setManager";
3970
+ /** Format: uuid */
3971
+ reportPositionId: string;
3972
+ managerPositionId: string | null;
3973
+ } | {
3974
+ /** @constant */
3975
+ kind: "unit.setParent";
3976
+ /** Format: uuid */
3977
+ unitId: string;
3978
+ parentUnitId: string | null;
3979
+ } | {
3980
+ /** @constant */
3981
+ kind: "position.setTitle";
3982
+ /** Format: uuid */
3983
+ positionId: string;
3984
+ title: string;
3985
+ })[];
3986
+ reason: string | null;
3987
+ idempotencyKey: string;
3940
3988
  };
3941
3989
  SubmitInteractiveTaskResponse: {
3942
3990
  executionId: string;
@@ -7101,6 +7149,28 @@ export interface operations {
7101
7149
  };
7102
7150
  };
7103
7151
  };
7152
+ applyReportingMove: {
7153
+ parameters: {
7154
+ query?: never;
7155
+ header?: never;
7156
+ path?: never;
7157
+ cookie?: never;
7158
+ };
7159
+ requestBody: {
7160
+ content: {
7161
+ "application/json": components["schemas"]["MoveApplyRequest"];
7162
+ };
7163
+ };
7164
+ responses: {
7165
+ /** @description The confirmed transformation was applied through the governed execution */
7166
+ 200: {
7167
+ headers: {
7168
+ [name: string]: unknown;
7169
+ };
7170
+ content?: never;
7171
+ };
7172
+ };
7173
+ };
7104
7174
  submitInteractiveTask: {
7105
7175
  parameters: {
7106
7176
  query?: never;
@@ -126,6 +126,7 @@ export const openApiRoutes = {
126
126
  '/api/orgs/{orgId}/level-config': ['GET', 'PUT'],
127
127
  '/api/rbac/roles': ['GET'],
128
128
  '/api/reporting/bulk-reparent': ['POST'],
129
+ '/api/reporting/move/apply': ['POST'],
129
130
  '/api/reporting/move/preview': ['POST'],
130
131
  '/api/scope/check': ['GET'],
131
132
  '/api/scope/check-batch': ['POST'],