@serve.zone/interfaces 7.5.0 → 7.7.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/changelog.md CHANGED
@@ -1,5 +1,21 @@
1
1
  # Changelog
2
2
 
3
+ ## 2026-06-10 - 7.7.0
4
+
5
+ ### Features
6
+
7
+ - add reporter node scoping to deployment snapshots (deployment)
8
+ - Adds optional reporterNodeNames to deployment snapshot requests to identify the node hostnames a report is authoritative for.
9
+ - Preserves existing full-service replacement behavior when reporterNodeNames is omitted.
10
+
11
+ ## 2026-06-10 - 7.6.0
12
+
13
+ ### Features
14
+
15
+ - add deployment snapshot and reconciliation request contracts (requests/deployment)
16
+ - Add typed request contract for reporting deployment snapshots with service metadata and deployment data.
17
+ - Add push request contracts for deployment updates and service reconciliation status.
18
+
3
19
  ## 2026-06-09 - 7.5.0
4
20
 
5
21
  ### Features
@@ -3,7 +3,7 @@
3
3
  */
4
4
  export const commitinfo = {
5
5
  name: '@serve.zone/interfaces',
6
- version: '7.5.0',
6
+ version: '7.7.0',
7
7
  description: 'Shared TypeScript interfaces and TypedRequest contracts for the serve.zone ecosystem.'
8
8
  };
9
9
  //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiMDBfY29tbWl0aW5mb19kYXRhLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vdHMvMDBfY29tbWl0aW5mb19kYXRhLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOztHQUVHO0FBQ0gsTUFBTSxDQUFDLE1BQU0sVUFBVSxHQUFHO0lBQ3hCLElBQUksRUFBRSx3QkFBd0I7SUFDOUIsT0FBTyxFQUFFLE9BQU87SUFDaEIsV0FBVyxFQUFFLHVGQUF1RjtDQUNyRyxDQUFBIn0=
@@ -295,3 +295,37 @@ export interface IReq_Cloudly_Coreflow_DeploymentWorkspaceExec extends plugins.t
295
295
  exitCode?: number;
296
296
  };
297
297
  }
298
+ export interface IReq_Coreflow_Cloudly_ReportDeploymentSnapshots extends plugins.typedrequestInterfaces.implementsTR<plugins.typedrequestInterfaces.ITypedRequest, IReq_Coreflow_Cloudly_ReportDeploymentSnapshots> {
299
+ method: 'reportDeploymentSnapshots';
300
+ request: {
301
+ identity: IIdentity;
302
+ serviceId: string;
303
+ serviceName?: string;
304
+ deployments: IDeployment[];
305
+ /**
306
+ * Node hostnames this snapshot is authoritative for (the reporter's swarm).
307
+ * Cloudly prunes stale deployments for the service only on these nodes, so
308
+ * reports from different swarms/nodes do not delete each other's records.
309
+ * When absent, the snapshot replaces all persisted deployments of the service.
310
+ */
311
+ reporterNodeNames?: string[];
312
+ reportedAt: number;
313
+ };
314
+ response: Record<string, never>;
315
+ }
316
+ export interface IReq_Cloudly_Any_PushDeploymentUpdate extends plugins.typedrequestInterfaces.implementsTR<plugins.typedrequestInterfaces.ITypedRequest, IReq_Cloudly_Any_PushDeploymentUpdate> {
317
+ method: 'pushDeploymentUpdate';
318
+ request: {
319
+ serviceId: string;
320
+ deployments: IDeployment[];
321
+ };
322
+ response: Record<string, never>;
323
+ }
324
+ export interface IReq_Cloudly_Any_PushServiceReconciliationStatus extends plugins.typedrequestInterfaces.implementsTR<plugins.typedrequestInterfaces.ITypedRequest, IReq_Cloudly_Any_PushServiceReconciliationStatus> {
325
+ method: 'pushServiceReconciliationStatus';
326
+ request: {
327
+ serviceId: string;
328
+ reconciliationStatus: NonNullable<IService['data']['reconciliationStatus']>;
329
+ };
330
+ response: Record<string, never>;
331
+ }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@serve.zone/interfaces",
3
- "version": "7.5.0",
3
+ "version": "7.7.0",
4
4
  "private": false,
5
5
  "description": "Shared TypeScript interfaces and TypedRequest contracts for the serve.zone ecosystem.",
6
6
  "exports": {
@@ -3,6 +3,6 @@
3
3
  */
4
4
  export const commitinfo = {
5
5
  name: '@serve.zone/interfaces',
6
- version: '7.5.0',
6
+ version: '7.7.0',
7
7
  description: 'Shared TypeScript interfaces and TypedRequest contracts for the serve.zone ecosystem.'
8
8
  }
@@ -431,3 +431,52 @@ extends plugins.typedrequestInterfaces.implementsTR<
431
431
  exitCode?: number;
432
432
  };
433
433
  }
434
+
435
+ export interface IReq_Coreflow_Cloudly_ReportDeploymentSnapshots
436
+ extends plugins.typedrequestInterfaces.implementsTR<
437
+ plugins.typedrequestInterfaces.ITypedRequest,
438
+ IReq_Coreflow_Cloudly_ReportDeploymentSnapshots
439
+ > {
440
+ method: 'reportDeploymentSnapshots';
441
+ request: {
442
+ identity: IIdentity;
443
+ serviceId: string;
444
+ serviceName?: string;
445
+ deployments: IDeployment[];
446
+ /**
447
+ * Node hostnames this snapshot is authoritative for (the reporter's swarm).
448
+ * Cloudly prunes stale deployments for the service only on these nodes, so
449
+ * reports from different swarms/nodes do not delete each other's records.
450
+ * When absent, the snapshot replaces all persisted deployments of the service.
451
+ */
452
+ reporterNodeNames?: string[];
453
+ reportedAt: number;
454
+ };
455
+ response: Record<string, never>;
456
+ }
457
+
458
+ export interface IReq_Cloudly_Any_PushDeploymentUpdate
459
+ extends plugins.typedrequestInterfaces.implementsTR<
460
+ plugins.typedrequestInterfaces.ITypedRequest,
461
+ IReq_Cloudly_Any_PushDeploymentUpdate
462
+ > {
463
+ method: 'pushDeploymentUpdate';
464
+ request: {
465
+ serviceId: string;
466
+ deployments: IDeployment[];
467
+ };
468
+ response: Record<string, never>;
469
+ }
470
+
471
+ export interface IReq_Cloudly_Any_PushServiceReconciliationStatus
472
+ extends plugins.typedrequestInterfaces.implementsTR<
473
+ plugins.typedrequestInterfaces.ITypedRequest,
474
+ IReq_Cloudly_Any_PushServiceReconciliationStatus
475
+ > {
476
+ method: 'pushServiceReconciliationStatus';
477
+ request: {
478
+ serviceId: string;
479
+ reconciliationStatus: NonNullable<IService['data']['reconciliationStatus']>;
480
+ };
481
+ response: Record<string, never>;
482
+ }