@serve.zone/interfaces 19.2.0 → 19.3.1
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 +14 -0
- package/dist_ts/00_commitinfo_data.js +1 -1
- package/dist_ts/requests/service.d.ts +23 -0
- package/package.json +1 -1
- package/ts/00_commitinfo_data.ts +1 -1
- package/ts/requests/service.ts +28 -0
package/changelog.md
CHANGED
|
@@ -1,5 +1,19 @@
|
|
|
1
1
|
# Changelog
|
|
2
2
|
|
|
3
|
+
## 2026-07-24 - 19.3.1
|
|
4
|
+
|
|
5
|
+
### Fixes
|
|
6
|
+
|
|
7
|
+
- align immutable placement repair with Cloudly's authenticated admin identity guard
|
|
8
|
+
|
|
9
|
+
## 2026-07-24 - 19.3.0
|
|
10
|
+
|
|
11
|
+
### Features
|
|
12
|
+
|
|
13
|
+
- add a fenced immutable-service placement repair contract (service)
|
|
14
|
+
- Require callers to fence the active rollout and rollout-status revision.
|
|
15
|
+
- Keep placement repair separate from generic immutable service updates.
|
|
16
|
+
|
|
3
17
|
## 2026-07-24 - 19.2.0
|
|
4
18
|
|
|
5
19
|
### Features
|
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
*/
|
|
4
4
|
export const commitinfo = {
|
|
5
5
|
name: '@serve.zone/interfaces',
|
|
6
|
-
version: '19.
|
|
6
|
+
version: '19.3.1',
|
|
7
7
|
description: 'Shared TypeScript interfaces and TypedRequest contracts for the serve.zone ecosystem.'
|
|
8
8
|
};
|
|
9
9
|
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiMDBfY29tbWl0aW5mb19kYXRhLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vdHMvMDBfY29tbWl0aW5mb19kYXRhLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOztHQUVHO0FBQ0gsTUFBTSxDQUFDLE1BQU0sVUFBVSxHQUFHO0lBQ3hCLElBQUksRUFBRSx3QkFBd0I7SUFDOUIsT0FBTyxFQUFFLFFBQVE7SUFDakIsV0FBVyxFQUFFLHVGQUF1RjtDQUNyRyxDQUFBIn0=
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import * as plugins from '../plugins.js';
|
|
2
2
|
import type { IService } from '../data/service.js';
|
|
3
3
|
import type { TServiceUpdateWritableData, TServiceWritableData } from '../data/service.js';
|
|
4
|
+
import type { IServicePlacement } from '../data/service.js';
|
|
4
5
|
import type { IRegistryTarget } from '../data/registry.js';
|
|
5
6
|
import type { IIdentity, IIdentityCredential } from '../data/user.js';
|
|
6
7
|
import type { IImageRelease } from '../data/immutableimage.js';
|
|
@@ -218,6 +219,28 @@ export interface IRequest_Any_Cloudly_UpdateService extends plugins.typedrequest
|
|
|
218
219
|
service: IService;
|
|
219
220
|
};
|
|
220
221
|
}
|
|
222
|
+
/**
|
|
223
|
+
* Narrow administrative repair for an immutable service whose persisted
|
|
224
|
+
* placement contradicts its already-active rollout target scope.
|
|
225
|
+
*
|
|
226
|
+
* The rollout and status fences make the mutation fail closed if runtime
|
|
227
|
+
* evidence changes between inspection and repair.
|
|
228
|
+
*/
|
|
229
|
+
export interface IRequest_Any_Cloudly_RepairImmutableServicePlacement extends plugins.typedrequestInterfaces.implementsTR<plugins.typedrequestInterfaces.ITypedRequest, IRequest_Any_Cloudly_RepairImmutableServicePlacement> {
|
|
230
|
+
method: 'repairImmutableServicePlacement';
|
|
231
|
+
request: {
|
|
232
|
+
identity: IIdentity;
|
|
233
|
+
serviceId: string;
|
|
234
|
+
expectedRolloutId: string;
|
|
235
|
+
expectedRolloutGeneration: number;
|
|
236
|
+
expectedRolloutStatusUpdatedAt: number;
|
|
237
|
+
placement: IServicePlacement;
|
|
238
|
+
};
|
|
239
|
+
response: {
|
|
240
|
+
service: IService;
|
|
241
|
+
changed: boolean;
|
|
242
|
+
};
|
|
243
|
+
}
|
|
221
244
|
export interface IRequest_Any_Cloudly_DeleteServiceById extends plugins.typedrequestInterfaces.implementsTR<plugins.typedrequestInterfaces.ITypedRequest, IRequest_Any_Cloudly_DeleteServiceById> {
|
|
222
245
|
method: 'deleteServiceById';
|
|
223
246
|
request: {
|
package/package.json
CHANGED
package/ts/00_commitinfo_data.ts
CHANGED
package/ts/requests/service.ts
CHANGED
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import * as plugins from '../plugins.js';
|
|
2
2
|
import type { IService } from '../data/service.js';
|
|
3
3
|
import type { TServiceUpdateWritableData, TServiceWritableData } from '../data/service.js';
|
|
4
|
+
import type { IServicePlacement } from '../data/service.js';
|
|
4
5
|
import type { IRegistryTarget } from '../data/registry.js';
|
|
5
6
|
import type { IIdentity, IIdentityCredential } from '../data/user.js';
|
|
6
7
|
import type { IServiceRessources } from '../data/docker.js';
|
|
@@ -326,6 +327,33 @@ extends plugins.typedrequestInterfaces.implementsTR<
|
|
|
326
327
|
};
|
|
327
328
|
}
|
|
328
329
|
|
|
330
|
+
/**
|
|
331
|
+
* Narrow administrative repair for an immutable service whose persisted
|
|
332
|
+
* placement contradicts its already-active rollout target scope.
|
|
333
|
+
*
|
|
334
|
+
* The rollout and status fences make the mutation fail closed if runtime
|
|
335
|
+
* evidence changes between inspection and repair.
|
|
336
|
+
*/
|
|
337
|
+
export interface IRequest_Any_Cloudly_RepairImmutableServicePlacement
|
|
338
|
+
extends plugins.typedrequestInterfaces.implementsTR<
|
|
339
|
+
plugins.typedrequestInterfaces.ITypedRequest,
|
|
340
|
+
IRequest_Any_Cloudly_RepairImmutableServicePlacement
|
|
341
|
+
> {
|
|
342
|
+
method: 'repairImmutableServicePlacement';
|
|
343
|
+
request: {
|
|
344
|
+
identity: IIdentity;
|
|
345
|
+
serviceId: string;
|
|
346
|
+
expectedRolloutId: string;
|
|
347
|
+
expectedRolloutGeneration: number;
|
|
348
|
+
expectedRolloutStatusUpdatedAt: number;
|
|
349
|
+
placement: IServicePlacement;
|
|
350
|
+
};
|
|
351
|
+
response: {
|
|
352
|
+
service: IService;
|
|
353
|
+
changed: boolean;
|
|
354
|
+
};
|
|
355
|
+
}
|
|
356
|
+
|
|
329
357
|
export interface IRequest_Any_Cloudly_DeleteServiceById
|
|
330
358
|
extends plugins.typedrequestInterfaces.implementsTR<
|
|
331
359
|
plugins.typedrequestInterfaces.ITypedRequest,
|