@astrale-domains/services 0.4.8 → 0.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.
Files changed (181) hide show
  1. package/README.md +153 -816
  2. package/dist/schema/index.d.ts +4 -5
  3. package/dist/schema/index.js +2 -3
  4. package/dist/schema/modules/deployment/classes/cloudflare-deployment.d.ts +4 -321
  5. package/dist/schema/modules/deployment/classes/cloudflare-deployment.js +1 -19
  6. package/dist/schema/modules/deployment/classes/current-deployment.d.ts +20 -0
  7. package/dist/schema/modules/deployment/classes/current-deployment.js +13 -0
  8. package/dist/schema/modules/deployment/classes/{deployment-on-line.d.ts → deployment-of.d.ts} +3 -3
  9. package/dist/schema/modules/deployment/classes/deployment-of.js +11 -0
  10. package/dist/schema/modules/deployment/classes/deployment.d.ts +9 -57
  11. package/dist/schema/modules/deployment/classes/deployment.js +9 -23
  12. package/dist/schema/modules/deployment/classes/index.d.ts +2 -3
  13. package/dist/schema/modules/deployment/classes/index.js +2 -3
  14. package/dist/schema/modules/deployment/errors/deployment-not-found.d.ts +2 -5
  15. package/dist/schema/modules/deployment/errors/deployment-not-found.js +2 -5
  16. package/dist/schema/modules/deployment/errors/index.d.ts +0 -2
  17. package/dist/schema/modules/deployment/errors/index.js +0 -2
  18. package/dist/schema/modules/deployment/functions/index.d.ts +0 -10
  19. package/dist/schema/modules/deployment/functions/index.js +0 -10
  20. package/dist/schema/modules/deployment/functions/retire-deployment.d.ts +8 -7
  21. package/dist/schema/modules/deployment/functions/retire-deployment.js +8 -7
  22. package/dist/schema/modules/deployment/index.d.ts +6 -6
  23. package/dist/schema/modules/deployment/index.js +7 -5
  24. package/dist/schema/modules/deployment/policies/index.d.ts +1 -4
  25. package/dist/schema/modules/deployment/policies/index.js +1 -4
  26. package/dist/schema/modules/deployment/policies/own-deployment.d.ts +1 -1
  27. package/dist/schema/modules/deployment/policies/own-deployment.js +6 -7
  28. package/dist/schema/modules/deployment/policies/traverse-owned-service-deployment.d.ts +2 -0
  29. package/dist/schema/modules/deployment/policies/traverse-owned-service-deployment.js +7 -0
  30. package/dist/schema/modules/deployment/states/deployment-lifecycle.d.ts +6 -9
  31. package/dist/schema/modules/deployment/states/deployment-lifecycle.js +6 -7
  32. package/dist/schema/modules/deployment/types/deployment-hosting.d.ts +9 -28
  33. package/dist/schema/modules/deployment/types/deployment-hosting.js +3 -3
  34. package/dist/schema/modules/deployment/types/deployment-request.d.ts +12 -40
  35. package/dist/schema/modules/deployment/types/deployment-request.js +17 -9
  36. package/dist/schema/modules/deployment/types/deployment-response.d.ts +7 -15
  37. package/dist/schema/modules/deployment/types/deployment-response.js +2 -2
  38. package/dist/schema/modules/deployment/types/deployment-retire.d.ts +1 -1
  39. package/dist/schema/modules/deployment/types/deployment-secret.d.ts +0 -39
  40. package/dist/schema/modules/deployment/types/deployment-secret.js +0 -34
  41. package/dist/schema/modules/deployment/types/deployment-summary.d.ts +14 -45
  42. package/dist/schema/modules/deployment/types/deployment-summary.js +9 -8
  43. package/dist/schema/modules/deployment/types/index.d.ts +7 -3
  44. package/dist/schema/modules/deployment/types/index.js +4 -2
  45. package/dist/schema/modules/{service → deployment}/types/service-deployment-artifact-module.d.ts +2 -20
  46. package/dist/schema/modules/deployment/types/service-deployment-artifact-module.js +10 -0
  47. package/dist/schema/modules/{service → deployment}/types/service-deployment-assets.d.ts +4 -20
  48. package/dist/schema/modules/{service → deployment}/types/service-deployment-assets.js +4 -7
  49. package/dist/schema/modules/service/classes/cloudflare-service.d.ts +321 -0
  50. package/dist/schema/modules/service/classes/cloudflare-service.js +35 -0
  51. package/dist/schema/modules/service/classes/index.d.ts +1 -1
  52. package/dist/schema/modules/service/classes/index.js +1 -1
  53. package/dist/schema/modules/service/classes/service.d.ts +18 -107
  54. package/dist/schema/modules/service/classes/service.js +16 -27
  55. package/dist/schema/modules/service/errors/index.d.ts +1 -0
  56. package/dist/schema/modules/service/errors/index.js +1 -0
  57. package/dist/schema/modules/service/errors/service-not-found.d.ts +7 -0
  58. package/dist/schema/modules/service/errors/service-not-found.js +8 -0
  59. package/dist/schema/modules/service/functions/delete-service.d.ts +1 -1
  60. package/dist/schema/modules/service/functions/delete-service.js +1 -1
  61. package/dist/schema/modules/{deployment/functions/deploy-cloudflare-deployment.d.ts → service/functions/deploy-service.d.ts} +20 -35
  62. package/dist/schema/modules/service/functions/deploy-service.js +15 -0
  63. package/dist/schema/modules/service/functions/describe-hosting.d.ts +8 -0
  64. package/dist/schema/modules/service/functions/describe-hosting.js +11 -0
  65. package/dist/schema/modules/service/functions/index.d.ts +5 -10
  66. package/dist/schema/modules/service/functions/index.js +5 -10
  67. package/dist/schema/modules/{deployment/functions/list-cloudflare-deployments.d.ts → service/functions/list-service-deployments.d.ts} +8 -12
  68. package/dist/schema/modules/service/functions/list-service-deployments.js +10 -0
  69. package/dist/schema/modules/service/functions/list-service-logs.d.ts +2 -1
  70. package/dist/schema/modules/service/functions/list-service-logs.js +1 -1
  71. package/dist/schema/modules/service/functions/list-service-schedules.d.ts +1 -1
  72. package/dist/schema/modules/service/functions/list-service-schedules.js +1 -1
  73. package/dist/schema/modules/service/functions/list-service-secret-names.d.ts +1 -1
  74. package/dist/schema/modules/service/functions/list-service-secret-names.js +1 -1
  75. package/dist/schema/modules/service/functions/promote-service.d.ts +14 -0
  76. package/dist/schema/modules/service/functions/promote-service.js +4 -0
  77. package/dist/schema/modules/service/functions/replace-service-schedules.d.ts +1 -1
  78. package/dist/schema/modules/service/functions/replace-service-schedules.js +1 -4
  79. package/dist/schema/modules/service/functions/set-service-secret.d.ts +4 -2
  80. package/dist/schema/modules/service/functions/set-service-secret.js +1 -1
  81. package/dist/schema/modules/service/functions/transfer-service.d.ts +14 -0
  82. package/dist/schema/modules/service/functions/transfer-service.js +4 -0
  83. package/dist/schema/modules/service/index.d.ts +5 -5
  84. package/dist/schema/modules/service/index.js +5 -4
  85. package/dist/schema/modules/service/policies/act-as.d.ts +6 -0
  86. package/dist/schema/modules/service/policies/act-as.js +10 -0
  87. package/dist/schema/modules/service/policies/index.d.ts +1 -0
  88. package/dist/schema/modules/service/policies/index.js +1 -0
  89. package/dist/schema/modules/service/states/service-lifecycle.d.ts +7 -20
  90. package/dist/schema/modules/service/states/service-lifecycle.js +6 -21
  91. package/dist/schema/modules/service/types/index.d.ts +1 -13
  92. package/dist/schema/modules/service/types/index.js +1 -8
  93. package/dist/schema/modules/service/types/service-management.d.ts +65 -24
  94. package/dist/schema/modules/service/types/service-management.js +46 -21
  95. package/dist/schema/schema.d.ts +252 -758
  96. package/dist/schema/schema.js +7 -11
  97. package/package.json +4 -11
  98. package/dist/scaffold/create-service.mjs +0 -77
  99. package/dist/scaffold/template/.env.example +0 -2
  100. package/dist/scaffold/template/README.md +0 -37
  101. package/dist/scaffold/template/gitignore +0 -6
  102. package/dist/scaffold/template/scripts/build.mjs +0 -10
  103. package/dist/scaffold/template/scripts/deploy.mjs +0 -50
  104. package/dist/scaffold/template/src/account.js +0 -26
  105. package/dist/scaffold/template/src/index.js +0 -32
  106. package/dist/scaffold/template/src/job.js +0 -19
  107. package/dist/schema/modules/deployment/classes/deployment-line.d.ts +0 -23
  108. package/dist/schema/modules/deployment/classes/deployment-line.js +0 -24
  109. package/dist/schema/modules/deployment/classes/deployment-on-line.js +0 -11
  110. package/dist/schema/modules/deployment/classes/line-owned-by.d.ts +0 -26
  111. package/dist/schema/modules/deployment/classes/line-owned-by.js +0 -19
  112. package/dist/schema/modules/deployment/errors/deployment-label-not-found.d.ts +0 -12
  113. package/dist/schema/modules/deployment/errors/deployment-label-not-found.js +0 -11
  114. package/dist/schema/modules/deployment/errors/deployment-registry-only.d.ts +0 -11
  115. package/dist/schema/modules/deployment/errors/deployment-registry-only.js +0 -12
  116. package/dist/schema/modules/deployment/functions/deploy-cloudflare-deployment.js +0 -14
  117. package/dist/schema/modules/deployment/functions/describe-deployment-hosting.d.ts +0 -8
  118. package/dist/schema/modules/deployment/functions/describe-deployment-hosting.js +0 -11
  119. package/dist/schema/modules/deployment/functions/expire-deployment-previews.d.ts +0 -16
  120. package/dist/schema/modules/deployment/functions/expire-deployment-previews.js +0 -14
  121. package/dist/schema/modules/deployment/functions/list-cloudflare-deployment-secret-names.d.ts +0 -5
  122. package/dist/schema/modules/deployment/functions/list-cloudflare-deployment-secret-names.js +0 -4
  123. package/dist/schema/modules/deployment/functions/list-cloudflare-deployments.js +0 -10
  124. package/dist/schema/modules/deployment/functions/list-deployment-secret-names.d.ts +0 -4
  125. package/dist/schema/modules/deployment/functions/list-deployment-secret-names.js +0 -6
  126. package/dist/schema/modules/deployment/functions/read-deployment-last-calls.d.ts +0 -10
  127. package/dist/schema/modules/deployment/functions/read-deployment-last-calls.js +0 -13
  128. package/dist/schema/modules/deployment/functions/retain-deployment.d.ts +0 -12
  129. package/dist/schema/modules/deployment/functions/retain-deployment.js +0 -13
  130. package/dist/schema/modules/deployment/functions/set-cloudflare-deployment-secret.d.ts +0 -18
  131. package/dist/schema/modules/deployment/functions/set-cloudflare-deployment-secret.js +0 -7
  132. package/dist/schema/modules/deployment/functions/set-deployment-secret.d.ts +0 -14
  133. package/dist/schema/modules/deployment/functions/set-deployment-secret.js +0 -3
  134. package/dist/schema/modules/deployment/policies/act-for-organization.d.ts +0 -6
  135. package/dist/schema/modules/deployment/policies/act-for-organization.js +0 -10
  136. package/dist/schema/modules/deployment/policies/own-line.d.ts +0 -5
  137. package/dist/schema/modules/deployment/policies/own-line.js +0 -10
  138. package/dist/schema/modules/deployment/policies/traverse-owned-line-deployment.d.ts +0 -2
  139. package/dist/schema/modules/deployment/policies/traverse-owned-line-deployment.js +0 -7
  140. package/dist/schema/modules/deployment/policies/traverse-owned-line.d.ts +0 -2
  141. package/dist/schema/modules/deployment/policies/traverse-owned-line.js +0 -7
  142. package/dist/schema/modules/deployment/types/deployment-retention.d.ts +0 -49
  143. package/dist/schema/modules/deployment/types/deployment-retention.js +0 -45
  144. package/dist/schema/modules/service/classes/cloudflare-worker.d.ts +0 -352
  145. package/dist/schema/modules/service/classes/cloudflare-worker.js +0 -41
  146. package/dist/schema/modules/service/functions/delete-service-secret.d.ts +0 -11
  147. package/dist/schema/modules/service/functions/delete-service-secret.js +0 -3
  148. package/dist/schema/modules/service/functions/delete-worker-secret.d.ts +0 -11
  149. package/dist/schema/modules/service/functions/delete-worker-secret.js +0 -7
  150. package/dist/schema/modules/service/functions/delete-worker.d.ts +0 -9
  151. package/dist/schema/modules/service/functions/delete-worker.js +0 -7
  152. package/dist/schema/modules/service/functions/deploy-cloudflare-worker.d.ts +0 -109
  153. package/dist/schema/modules/service/functions/deploy-cloudflare-worker.js +0 -9
  154. package/dist/schema/modules/service/functions/list-worker-logs.d.ts +0 -12
  155. package/dist/schema/modules/service/functions/list-worker-logs.js +0 -7
  156. package/dist/schema/modules/service/functions/list-worker-schedules.d.ts +0 -4
  157. package/dist/schema/modules/service/functions/list-worker-schedules.js +0 -7
  158. package/dist/schema/modules/service/functions/list-worker-secret-names.d.ts +0 -4
  159. package/dist/schema/modules/service/functions/list-worker-secret-names.js +0 -7
  160. package/dist/schema/modules/service/functions/migrate-worker-ingress.d.ts +0 -24
  161. package/dist/schema/modules/service/functions/migrate-worker-ingress.js +0 -26
  162. package/dist/schema/modules/service/functions/replace-worker-schedules.d.ts +0 -11
  163. package/dist/schema/modules/service/functions/replace-worker-schedules.js +0 -7
  164. package/dist/schema/modules/service/functions/set-worker-secret.d.ts +0 -12
  165. package/dist/schema/modules/service/functions/set-worker-secret.js +0 -7
  166. package/dist/schema/modules/service/types/deploy-cloudflare-worker.d.ts +0 -286
  167. package/dist/schema/modules/service/types/deploy-cloudflare-worker.js +0 -51
  168. package/dist/schema/modules/service/types/legacy/service-deployment-content.js +0 -22
  169. package/dist/schema/modules/service/types/service-deployment-artifact-module.js +0 -13
  170. package/dist/schema/modules/service/types/service-deployment-resource-limits.d.ts +0 -6
  171. package/dist/schema/modules/service/types/service-deployment-resource-limits.js +0 -7
  172. package/dist/schema/modules/service/types/service-readiness.d.ts +0 -6
  173. package/dist/schema/modules/service/types/service-readiness.js +0 -6
  174. package/dist/schema/modules/service/types/service-secret-operation-rejection.d.ts +0 -9
  175. package/dist/schema/modules/service/types/service-secret-operation-rejection.js +0 -5
  176. /package/dist/schema/modules/{service → deployment}/types/content/index.d.ts +0 -0
  177. /package/dist/schema/modules/{service → deployment}/types/content/index.js +0 -0
  178. /package/dist/schema/modules/{service → deployment}/types/content/limits.d.ts +0 -0
  179. /package/dist/schema/modules/{service → deployment}/types/content/limits.js +0 -0
  180. /package/dist/schema/modules/{service → deployment}/types/service-deployment-content.d.ts +0 -0
  181. /package/dist/schema/modules/{service → deployment}/types/service-deployment-content.js +0 -0
@@ -1,7 +1,6 @@
1
1
  export { schema } from './schema.js';
2
2
  export type { ServicesDomain, ServicesSchema } from './schema.js';
3
- export { artifact, artifactModule, assetBundle, assetFile, deployServiceInput, deployServiceOutput, resourceLimits, revisionedDeployment, } from './modules/service/index.js';
4
- export type { ArtifactModule, AssetBundle, DeployServiceInput, DeployServiceOutput, ResourceLimits, } from './modules/service/index.js';
5
- export { CloudflareWorker, OwnService, Service, TraverseOwnedService, service_owned_by, } from './modules/service/index.js';
6
- export { ActForOrganization, CloudflareDeployment, Deployment, DeploymentLine, OwnDeployment, OwnLine, TraverseOwnedLine, TraverseOwnedLineDeployment, deploymentCommit, deploymentHosting, deploymentLabel, deploymentLifecycle, deploymentRecord, deploymentRejection, deploymentRequest, deploymentResponse, deploymentRetention, deploymentRetirement, deploymentSecretDigests, deploymentSecretRejection, deploymentSummary, deployment_on_line, expirePreviewsOutput, frozenConfiguration, lastCallsOutput, listedDeploymentSummary, line_owned_by, MAXIMUM_LAST_CALL_LABELS, MAXIMUM_PREVIEW_EXPIRY_WRITES, retireDeploymentOutput, unadmittedDeploymentSummary, } from './modules/deployment/index.js';
7
- export type { DeploymentHosting, DeploymentLifecycle, DeploymentLifecycleEvent, DeploymentRecord, DeploymentRejection, DeploymentRejectionReason, DeploymentRequest, DeploymentResponse, DeploymentRetention, DeploymentRetirement, DeploymentSecretDigest, DeploymentSecretRejection, DeploymentSummary, ExpirePreviewsResult, FrozenConfiguration, ListedDeploymentSummary, RetireDeploymentResult, UnadmittedDeploymentSummary, } from './modules/deployment/index.js';
3
+ export { ActAs, CloudflareService, OwnService, Service, TraverseOwnedService, serviceLifecycle, service_owned_by, } from './modules/service/index.js';
4
+ export type { ServiceLifecycle, ServiceLifecycleEvent } from './modules/service/index.js';
5
+ export { artifactModule, assetBundle, assetFile, CloudflareDeployment, Deployment, OwnDeployment, TraverseOwnedServiceDeployment, current_deployment, deployment_of, deploymentCommit, deploymentHosting, deploymentLifecycle, deploymentRecord, deploymentRejection, deploymentRequest, deploymentResponse, deploymentSecretDigests, deploymentSecretRejection, deploymentSummary, frozenConfiguration, listedDeploymentSummary, retireDeploymentOutput, unadmittedDeploymentSummary, } from './modules/deployment/index.js';
6
+ export type { ArtifactModule, AssetBundle, DeploymentHosting, DeploymentLifecycle, DeploymentLifecycleEvent, DeploymentRecord, DeploymentRejection, DeploymentRejectionReason, DeploymentRequest, DeploymentResponse, DeploymentSecretDigest, DeploymentSecretRejection, DeploymentSummary, FrozenConfiguration, ListedDeploymentSummary, RetireDeploymentResult, UnadmittedDeploymentSummary, } from './modules/deployment/index.js';
@@ -1,4 +1,3 @@
1
1
  export { schema } from './schema.js';
2
- export { artifact, artifactModule, assetBundle, assetFile, deployServiceInput, deployServiceOutput, resourceLimits, revisionedDeployment, } from './modules/service/index.js';
3
- export { CloudflareWorker, OwnService, Service, TraverseOwnedService, service_owned_by, } from './modules/service/index.js';
4
- export { ActForOrganization, CloudflareDeployment, Deployment, DeploymentLine, OwnDeployment, OwnLine, TraverseOwnedLine, TraverseOwnedLineDeployment, deploymentCommit, deploymentHosting, deploymentLabel, deploymentLifecycle, deploymentRecord, deploymentRejection, deploymentRequest, deploymentResponse, deploymentRetention, deploymentRetirement, deploymentSecretDigests, deploymentSecretRejection, deploymentSummary, deployment_on_line, expirePreviewsOutput, frozenConfiguration, lastCallsOutput, listedDeploymentSummary, line_owned_by, MAXIMUM_LAST_CALL_LABELS, MAXIMUM_PREVIEW_EXPIRY_WRITES, retireDeploymentOutput, unadmittedDeploymentSummary, } from './modules/deployment/index.js';
2
+ export { ActAs, CloudflareService, OwnService, Service, TraverseOwnedService, serviceLifecycle, service_owned_by, } from './modules/service/index.js';
3
+ export { artifactModule, assetBundle, assetFile, CloudflareDeployment, Deployment, OwnDeployment, TraverseOwnedServiceDeployment, current_deployment, deployment_of, deploymentCommit, deploymentHosting, deploymentLifecycle, deploymentRecord, deploymentRejection, deploymentRequest, deploymentResponse, deploymentSecretDigests, deploymentSecretRejection, deploymentSummary, frozenConfiguration, listedDeploymentSummary, retireDeploymentOutput, unadmittedDeploymentSummary, } from './modules/deployment/index.js';
@@ -3,7 +3,7 @@ export declare const CloudflareDeployment: import("@astrale-os/sdk/schema").Auth
3
3
  readonly icon: import("@astrale-os/sdk/schema").ClassIcon;
4
4
  readonly extends: readonly [import("@astrale-os/sdk/schema").AuthoredNodeClass<{
5
5
  readonly abstract: true;
6
- readonly description: "One immutable deployment of a release on a publisher line.";
6
+ readonly description: "One immutable deployment of a Service.";
7
7
  readonly icon: import("@astrale-os/sdk/schema").ClassIcon;
8
8
  readonly extends: readonly [import("@astrale-os/sdk/schema").KernelClass<"Timestamped">];
9
9
  readonly properties: {
@@ -20,9 +20,7 @@ export declare const CloudflareDeployment: import("@astrale-os/sdk/schema").Auth
20
20
  readonly retiring: {
21
21
  readonly completeRetirement: "retired";
22
22
  };
23
- readonly retired: {
24
- readonly revive: "deploying";
25
- };
23
+ readonly retired: {};
26
24
  readonly failed: {
27
25
  readonly retry: "deploying";
28
26
  readonly retire: "retiring";
@@ -31,10 +29,6 @@ export declare const CloudflareDeployment: import("@astrale-os/sdk/schema").Auth
31
29
  required?: boolean;
32
30
  description?: string;
33
31
  }>;
34
- retention: import("zod").ZodEnum<{
35
- preview: "preview";
36
- published: "published";
37
- }>;
38
32
  record: import("zod").ZodObject<{
39
33
  format: import("zod").ZodLiteral<"astrale.deployment-record">;
40
34
  version: import("zod").ZodLiteral<1>;
@@ -113,30 +107,12 @@ export declare const CloudflareDeployment: import("@astrale-os/sdk/schema").Auth
113
107
  }>, {
114
108
  readonly required: false;
115
109
  }>;
116
- lastCallAt: import("@astrale-os/sdk/schema").AuthoredProperty<Readonly<{
117
- readonly type: 'string';
118
- readonly 'x-astrale-value-kind': 'instant';
119
- }>, {
120
- readonly required: false;
121
- }>;
122
- expiresAt: import("@astrale-os/sdk/schema").AuthoredProperty<Readonly<{
123
- readonly type: 'string';
124
- readonly 'x-astrale-value-kind': 'instant';
125
- }>, {
126
- readonly required: false;
127
- }>;
128
110
  retiredAt: import("@astrale-os/sdk/schema").AuthoredProperty<Readonly<{
129
111
  readonly type: 'string';
130
112
  readonly 'x-astrale-value-kind': 'instant';
131
113
  }>, {
132
114
  readonly required: false;
133
115
  }>;
134
- retirement: import("@astrale-os/sdk/schema").AuthoredProperty<import("zod").ZodEnum<{
135
- expired: "expired";
136
- withdrawn: "withdrawn";
137
- }>, {
138
- readonly required: false;
139
- }>;
140
116
  operationReceipt: import("@astrale-os/sdk/schema").AuthoredProperty<import("zod").ZodString, {
141
117
  readonly required: false;
142
118
  }>;
@@ -147,313 +123,20 @@ export declare const CloudflareDeployment: import("@astrale-os/sdk/schema").Auth
147
123
  readonly required: false;
148
124
  }>;
149
125
  };
150
- readonly methods: {
151
- setSecret: import("@astrale-os/sdk/schema").Method<import("@astrale-os/sdk/schema").CallableProjection<{
152
- name: string;
153
- value: string;
154
- }, {
155
- readonly mode: 'value';
156
- readonly value: {
157
- name: string;
158
- } | {
159
- kind: "rejected";
160
- reason: "secret-undeclared" | "service-unavailable";
161
- message: string;
162
- retryAfter?: string | undefined;
163
- };
164
- }, "authenticated", false, true, undefined>>;
165
- secrets: import("@astrale-os/sdk/schema").Method<import("@astrale-os/sdk/schema").CallableProjection<Record<string, never>, {
166
- readonly mode: 'value';
167
- readonly value: string[];
168
- }, "authenticated", false, true, undefined>>;
169
- };
170
126
  }>];
171
127
  readonly methods: {
172
- deploy: import("@astrale-os/sdk/schema").Method<import("@astrale-os/sdk/schema").CallableProjection<{
173
- format: "astrale.services.deployment-request";
174
- version: 1;
175
- organization?: string | undefined;
176
- origin: string;
177
- environment: string;
178
- addressing: "opaque" | "readable";
179
- label: string;
180
- buildDigest: string;
181
- configuration: {
182
- format: "astrale.deployment.configuration";
183
- version: 1;
184
- vars: Record<string, string>;
185
- settings: {
186
- maximumRequestBytes: number;
187
- invocationTimeoutMs: number;
188
- tokenExchange: false | {
189
- maximumLifetimeSeconds: number;
190
- };
191
- durableOptions?: {
192
- retentionMs?: number | undefined;
193
- retry?: {
194
- initialIntervalMs?: number | undefined;
195
- maxAttempts?: number | undefined;
196
- maxIntervalMs?: number | undefined;
197
- } | undefined;
198
- stepTimeoutMs?: number | undefined;
199
- } | undefined;
200
- };
201
- runtime: {
202
- compatibilityDate: string;
203
- compatibilityFlags: string[];
204
- };
205
- bindings: {
206
- services: {
207
- name: string;
208
- service: string;
209
- }[];
210
- dispatchNamespaces: {
211
- name: string;
212
- namespace: string;
213
- }[];
214
- secrets: string[];
215
- };
216
- router: false | {
217
- service: string;
218
- hostSuffix: string;
219
- minLabels: number;
220
- };
221
- };
222
- record: {
223
- releaseDigest: string;
224
- schemaRevision: string;
225
- schemaBundle: string;
226
- commit: {
227
- sha: string;
228
- dirty: boolean;
229
- base?: {
230
- version: string;
231
- distance: number;
232
- } | undefined;
233
- } | null;
234
- };
235
- bundle: {
236
- entrypoint: string;
237
- modules: ({
238
- name: string;
239
- kind?: "data" | "esm" | "text" | "wasm" | undefined;
240
- content: {
241
- encoding: "gzip" | "identity";
242
- decodedSize: number;
243
- contentBase64: string;
244
- } | {
245
- encoding: "gzip" | "identity";
246
- decodedSize: number;
247
- contentBase64Chunks: string[];
248
- };
249
- } | {
250
- contentBase64: string;
251
- name: string;
252
- kind?: "data" | "esm" | "text" | "wasm" | undefined;
253
- } | {
254
- contentBase64Chunks: string[];
255
- name: string;
256
- kind?: "data" | "esm" | "text" | "wasm" | undefined;
257
- })[];
258
- assets?: {
259
- files: ({
260
- path: string;
261
- contentType?: string | undefined;
262
- content: {
263
- encoding: "gzip" | "identity";
264
- decodedSize: number;
265
- contentBase64: string;
266
- } | {
267
- encoding: "gzip" | "identity";
268
- decodedSize: number;
269
- contentBase64Chunks: string[];
270
- };
271
- } | {
272
- contentBase64: string;
273
- path: string;
274
- contentType?: string | undefined;
275
- } | {
276
- contentBase64Chunks: string[];
277
- path: string;
278
- contentType?: string | undefined;
279
- })[];
280
- notFound?: "404-page" | "none" | "single-page-application" | undefined;
281
- runWorkerFirst?: boolean | undefined;
282
- htmlHandling?: "none" | undefined;
283
- } | undefined;
284
- };
285
- secrets: Record<string, string>;
286
- readiness?: {
287
- paths: string[];
288
- } | undefined;
289
- }, {
128
+ retire: import("@astrale-os/sdk/schema").Method<import("@astrale-os/sdk/schema").CallableProjection<Record<string, never>, {
290
129
  readonly mode: 'value';
291
130
  readonly value: {
292
131
  kind: "rejected";
293
- reason: "address-mismatch" | "build-mismatch" | "deployment-conflict" | "deployment-retired" | "hosting-unavailable" | "invalid-deployment" | "line-owned-elsewhere" | "service-unavailable";
132
+ reason: "address-mismatch" | "build-mismatch" | "deployment-conflict" | "deployment-retired" | "hosting-unavailable" | "invalid-deployment" | "service-owned-elsewhere" | "service-unavailable";
294
133
  message: string;
295
134
  retryAfter?: string | undefined;
296
135
  } | {
297
- kind: "deployed";
298
- state: "created" | "reused";
299
- secrets: {
300
- state: "bound" | "unchanged" | "updated";
301
- };
302
- deployment: {
303
- id: string;
304
- url: string;
305
- label: string;
306
- line: string;
307
- owner: string;
308
- state: "active" | "deploying" | "failed" | "retired" | "retiring";
309
- retention: "preview" | "published";
310
- createdAt: string;
311
- lastCallAt?: string | undefined;
312
- expiresAt?: string | undefined;
313
- retiredAt?: string | undefined;
314
- retirement?: "expired" | "withdrawn" | undefined;
315
- signingKeyId: string;
316
- record: {
317
- format: "astrale.deployment-record";
318
- version: 1;
319
- origin: string;
320
- environment: string;
321
- releaseDigest: string;
322
- buildDigest: string;
323
- schemaRevision: string;
324
- configuration: string;
325
- providerScript: string;
326
- commit: {
327
- sha: string;
328
- dirty: boolean;
329
- base?: {
330
- version: string;
331
- distance: number;
332
- } | undefined;
333
- } | null;
334
- };
335
- };
336
- };
337
- }, "authenticated", true, false, undefined>>;
338
- hosting: import("@astrale-os/sdk/schema").Method<import("@astrale-os/sdk/schema").CallableProjection<Record<string, never>, {
339
- readonly mode: 'value';
340
- readonly value: {
341
- routingDomain: string;
342
- addressing: "opaque" | "readable";
343
- };
344
- }, "authenticated", true, false, undefined>>;
345
- list: import("@astrale-os/sdk/schema").Method<import("@astrale-os/sdk/schema").CallableProjection<{
346
- origin?: string | undefined;
347
- environment?: string | undefined;
348
- }, {
349
- readonly mode: 'value';
350
- readonly value: {
351
- deployments: ({
352
- id: string;
353
- url: string;
354
- label: string;
355
- line: string;
356
- owner: string;
357
- state: "active" | "deploying" | "failed" | "retired" | "retiring";
358
- retention: "preview" | "published";
359
- createdAt: string;
360
- lastCallAt?: string | undefined;
361
- expiresAt?: string | undefined;
362
- retiredAt?: string | undefined;
363
- retirement?: "expired" | "withdrawn" | undefined;
364
- signingKeyId: string;
365
- record: {
366
- format: "astrale.deployment-record";
367
- version: 1;
368
- origin: string;
369
- environment: string;
370
- releaseDigest: string;
371
- buildDigest: string;
372
- schemaRevision: string;
373
- configuration: string;
374
- providerScript: string;
375
- commit: {
376
- sha: string;
377
- dirty: boolean;
378
- base?: {
379
- version: string;
380
- distance: number;
381
- } | undefined;
382
- } | null;
383
- };
384
- } | {
385
- id: string;
386
- url: string;
387
- label: string;
388
- line: string;
389
- owner: string;
390
- state: "active" | "deploying" | "failed" | "retired" | "retiring";
391
- retention: "preview" | "published";
392
- createdAt: string;
393
- lastCallAt?: string | undefined;
394
- expiresAt?: string | undefined;
395
- retiredAt?: string | undefined;
396
- retirement?: "expired" | "withdrawn" | undefined;
397
- signingKeyId: string;
398
- record: unknown;
399
- })[];
400
- };
401
- }, "authenticated", true, false, undefined>>;
402
- setSecret: import("@astrale-os/sdk/schema").Method<import("@astrale-os/sdk/schema").CallableProjection<{
403
- name: string;
404
- value: string;
405
- }, {
406
- readonly mode: 'value';
407
- readonly value: {
408
- name: string;
409
- } | {
410
- kind: "rejected";
411
- reason: "secret-undeclared" | "service-unavailable";
412
- message: string;
413
- retryAfter?: string | undefined;
414
- };
415
- }, "authenticated", false, false, undefined>>;
416
- secrets: import("@astrale-os/sdk/schema").Method<import("@astrale-os/sdk/schema").CallableProjection<Record<string, never>, {
417
- readonly mode: 'value';
418
- readonly value: string[];
419
- }, "authenticated", false, false, undefined>>;
420
- lastCalls: import("@astrale-os/sdk/schema").Method<import("@astrale-os/sdk/schema").CallableProjection<{
421
- labels: string[];
422
- }, {
423
- readonly mode: 'value';
424
- readonly value: Record<string, string | null>;
425
- }, "authenticated", true, false, undefined>>;
426
- expirePreviews: import("@astrale-os/sdk/schema").Method<import("@astrale-os/sdk/schema").CallableProjection<{
427
- limit?: number | undefined;
428
- apply?: boolean | undefined;
429
- }, {
430
- readonly mode: 'value';
431
- readonly value: {
432
- planned: string[];
433
- retired: string[];
434
- pending: string[];
435
- };
436
- }, "authenticated", true, false, undefined>>;
437
- retain: import("@astrale-os/sdk/schema").Method<import("@astrale-os/sdk/schema").CallableProjection<{
438
- label: string;
439
- }, {
440
- readonly mode: 'value';
441
- readonly value: {
442
- retention: "published";
443
- };
444
- }, "authenticated", true, false, undefined>>;
445
- retire: import("@astrale-os/sdk/schema").Method<import("@astrale-os/sdk/schema").CallableProjection<Record<string, never>, {
446
- readonly mode: 'value';
447
- readonly value: {
448
136
  kind: "retired";
449
137
  } | {
450
138
  kind: "retiring";
451
139
  retryAfterMs: number;
452
- } | {
453
- kind: "rejected";
454
- reason: "address-mismatch" | "build-mismatch" | "deployment-conflict" | "deployment-retired" | "hosting-unavailable" | "invalid-deployment" | "line-owned-elsewhere" | "service-unavailable";
455
- message: string;
456
- retryAfter?: string | undefined;
457
140
  };
458
141
  }, "authenticated", false, false, undefined>>;
459
142
  };
@@ -1,30 +1,12 @@
1
1
  import { classIcon, nodeClass } from '@astrale-os/sdk/schema';
2
2
  import { CloudUpload } from '@astrale-os/sdk/schema/icons';
3
- import { deployCloudflareDeployment } from '../functions/deploy-cloudflare-deployment.js';
4
- import { describeDeploymentHosting } from '../functions/describe-deployment-hosting.js';
5
- import { expireDeploymentPreviews } from '../functions/expire-deployment-previews.js';
6
- import { listCloudflareDeploymentSecretNames } from '../functions/list-cloudflare-deployment-secret-names.js';
7
- import { listCloudflareDeployments } from '../functions/list-cloudflare-deployments.js';
8
- import { readDeploymentLastCalls } from '../functions/read-deployment-last-calls.js';
9
- import { retainDeployment } from '../functions/retain-deployment.js';
10
3
  import { retireDeployment } from '../functions/retire-deployment.js';
11
- import { setCloudflareDeploymentSecret } from '../functions/set-cloudflare-deployment-secret.js';
12
4
  import { OwnDeployment } from '../policies/own-deployment.js';
13
5
  import { Deployment } from './deployment.js';
14
6
  export const CloudflareDeployment = nodeClass({
15
7
  description: 'One Deployment uploaded as the Workers for Platforms script its label names.',
16
8
  icon: classIcon.lucide(CloudUpload),
17
9
  extends: [Deployment],
18
- methods: {
19
- deploy: deployCloudflareDeployment,
20
- hosting: describeDeploymentHosting,
21
- list: listCloudflareDeployments,
22
- setSecret: setCloudflareDeploymentSecret,
23
- secrets: listCloudflareDeploymentSecretNames,
24
- lastCalls: readDeploymentLastCalls,
25
- expirePreviews: expireDeploymentPreviews,
26
- retain: retainDeployment,
27
- retire: retireDeployment,
28
- },
10
+ methods: { retire: retireDeployment },
29
11
  policies: { read: () => OwnDeployment },
30
12
  });
@@ -0,0 +1,20 @@
1
+ /**
2
+ * The deployment one Service's URL serves, and on which its crons run. Promoting another
3
+ * deployment of the Service moves this Edge; the deployments themselves never change.
4
+ */
5
+ export declare const current_deployment: import("@astrale-os/sdk/schema").DirectedEdgeClass<{
6
+ readonly depth: 0;
7
+ readonly abstract: false;
8
+ readonly extends: readonly [];
9
+ readonly properties: never;
10
+ readonly source: {
11
+ readonly as: "service";
12
+ readonly outgoing: "0..1";
13
+ };
14
+ readonly target: {
15
+ readonly as: "deployment";
16
+ readonly incoming: "0..1";
17
+ };
18
+ readonly constraints: Record<never, never>;
19
+ readonly effectiveProperties: never;
20
+ }>;
@@ -0,0 +1,13 @@
1
+ import { edgeClass } from '@astrale-os/sdk/schema';
2
+ import { Service, TraverseOwnedService } from '../../service/index.js';
3
+ import { Deployment } from './deployment.js';
4
+ /**
5
+ * The deployment one Service's URL serves, and on which its crons run. Promoting another
6
+ * deployment of the Service moves this Edge; the deployments themselves never change.
7
+ */
8
+ export const current_deployment = edgeClass.directed({
9
+ description: 'The deployment one Service currently serves.',
10
+ source: { as: 'service', accepts: [() => Service], outgoing: '0..1' },
11
+ target: { as: 'deployment', accepts: [() => Deployment], incoming: '0..1' },
12
+ policies: { traverse: () => TraverseOwnedService },
13
+ });
@@ -1,5 +1,5 @@
1
- /** The line one deployment was made on; a deployment never moves to another line. */
2
- export declare const deployment_on_line: import("@astrale-os/sdk/schema").DirectedEdgeClass<{
1
+ /** The Service one deployment is a version of; a deployment never moves to another Service. */
2
+ export declare const deployment_of: import("@astrale-os/sdk/schema").DirectedEdgeClass<{
3
3
  readonly depth: 0;
4
4
  readonly abstract: false;
5
5
  readonly extends: readonly [];
@@ -9,7 +9,7 @@ export declare const deployment_on_line: import("@astrale-os/sdk/schema").Direct
9
9
  readonly outgoing: "1";
10
10
  };
11
11
  readonly target: {
12
- readonly as: "line";
12
+ readonly as: "service";
13
13
  readonly incoming: "0..*";
14
14
  };
15
15
  readonly constraints: Record<never, never>;
@@ -0,0 +1,11 @@
1
+ import { edgeClass } from '@astrale-os/sdk/schema';
2
+ import { Service } from '../../service/index.js';
3
+ import { TraverseOwnedServiceDeployment } from '../policies/traverse-owned-service-deployment.js';
4
+ import { Deployment } from './deployment.js';
5
+ /** The Service one deployment is a version of; a deployment never moves to another Service. */
6
+ export const deployment_of = edgeClass.directed({
7
+ description: 'The Service one Deployment is a version of.',
8
+ source: { as: 'deployment', accepts: [() => Deployment], outgoing: '1' },
9
+ target: { as: 'service', accepts: [() => Service], incoming: '0..*' },
10
+ policies: { traverse: () => TraverseOwnedServiceDeployment },
11
+ });
@@ -1,17 +1,17 @@
1
1
  import { z } from 'zod';
2
2
  /**
3
- * One immutable deployment of a release: one build in one environment with its frozen
4
- * configuration, served by one script at its own URL. It never changes code; a new release is a
5
- * new deployment on the same line. Its secrets alone rotate in place, on this deployment only,
6
- * and only under the names its configuration declares: a name added or removed is a new release.
3
+ * One immutable deployment of one Service: one build in one environment with its frozen
4
+ * configuration, served by one script at its own URL. It never changes code; a new release is a new
5
+ * deployment of the same Service. Only its secrets rotate in place, under the names its
6
+ * configuration declares.
7
7
  */
8
8
  export declare const Deployment: import("@astrale-os/sdk/schema").AuthoredNodeClass<{
9
9
  readonly abstract: true;
10
- readonly description: "One immutable deployment of a release on a publisher line.";
10
+ readonly description: "One immutable deployment of a Service.";
11
11
  readonly icon: import("@astrale-os/sdk/schema").ClassIcon;
12
12
  readonly extends: readonly [import("@astrale-os/sdk/schema").KernelClass<"Timestamped">];
13
13
  readonly properties: {
14
- /** `<line>-<content16>`, the DNS label and provider script name of this deployment. */
14
+ /** `<service name>-<content16>`, the DNS label and provider script name of this deployment. */
15
15
  label: z.ZodString;
16
16
  url: z.ZodString;
17
17
  state: import("@astrale-os/sdk/schema").StateProperty<import("@astrale-os/sdk/schema").StateMachine<{
@@ -25,9 +25,7 @@ export declare const Deployment: import("@astrale-os/sdk/schema").AuthoredNodeCl
25
25
  readonly retiring: {
26
26
  readonly completeRetirement: "retired";
27
27
  };
28
- readonly retired: {
29
- readonly revive: "deploying";
30
- };
28
+ readonly retired: {};
31
29
  readonly failed: {
32
30
  readonly retry: "deploying";
33
31
  readonly retire: "retiring";
@@ -36,10 +34,6 @@ export declare const Deployment: import("@astrale-os/sdk/schema").AuthoredNodeCl
36
34
  required?: boolean;
37
35
  description?: string;
38
36
  }>;
39
- retention: z.ZodEnum<{
40
- preview: "preview";
41
- published: "published";
42
- }>;
43
37
  record: z.ZodObject<{
44
38
  format: z.ZodLiteral<"astrale.deployment-record">;
45
39
  version: z.ZodLiteral<1>;
@@ -118,43 +112,21 @@ export declare const Deployment: import("@astrale-os/sdk/schema").AuthoredNodeCl
118
112
  signingKeyId: import("@astrale-os/sdk/schema").AuthoredProperty<z.ZodString, {
119
113
  readonly required: false;
120
114
  }>;
121
- /**
122
- * The last time this deployment became active: its creation, or its revival after it expired.
123
- * A preview's 30 days run from it or from its last call, whichever is later.
124
- */
125
115
  activatedAt: import("@astrale-os/sdk/schema").AuthoredProperty<Readonly<{
126
116
  readonly type: 'string';
127
117
  readonly 'x-astrale-value-kind': 'instant';
128
118
  }>, {
129
119
  readonly required: false;
130
120
  }>;
131
- lastCallAt: import("@astrale-os/sdk/schema").AuthoredProperty<Readonly<{
132
- readonly type: 'string';
133
- readonly 'x-astrale-value-kind': 'instant';
134
- }>, {
135
- readonly required: false;
136
- }>;
137
- expiresAt: import("@astrale-os/sdk/schema").AuthoredProperty<Readonly<{
138
- readonly type: 'string';
139
- readonly 'x-astrale-value-kind': 'instant';
140
- }>, {
141
- readonly required: false;
142
- }>;
143
121
  retiredAt: import("@astrale-os/sdk/schema").AuthoredProperty<Readonly<{
144
122
  readonly type: 'string';
145
123
  readonly 'x-astrale-value-kind': 'instant';
146
124
  }>, {
147
125
  readonly required: false;
148
126
  }>;
149
- retirement: import("@astrale-os/sdk/schema").AuthoredProperty<z.ZodEnum<{
150
- expired: "expired";
151
- withdrawn: "withdrawn";
152
- }>, {
153
- readonly required: false;
154
- }>;
155
127
  /**
156
- * The graph lease of the provider operation in flight on this deployment: its creation, or an
157
- * in-place rewrite of its secrets once it serves.
128
+ * The graph lease of the provider operation in flight on this deployment: its creation, an
129
+ * in-place rewrite of its secrets, or its retirement.
158
130
  */
159
131
  operationReceipt: import("@astrale-os/sdk/schema").AuthoredProperty<z.ZodString, {
160
132
  readonly required: false;
@@ -166,24 +138,4 @@ export declare const Deployment: import("@astrale-os/sdk/schema").AuthoredNodeCl
166
138
  readonly required: false;
167
139
  }>;
168
140
  };
169
- readonly methods: {
170
- setSecret: import("@astrale-os/sdk/schema").Method<import("@astrale-os/sdk/schema").CallableProjection<{
171
- name: string;
172
- value: string;
173
- }, {
174
- readonly mode: 'value';
175
- readonly value: {
176
- name: string;
177
- } | {
178
- kind: "rejected";
179
- reason: "secret-undeclared" | "service-unavailable";
180
- message: string;
181
- retryAfter?: string | undefined;
182
- };
183
- }, "authenticated", false, true, undefined>>;
184
- secrets: import("@astrale-os/sdk/schema").Method<import("@astrale-os/sdk/schema").CallableProjection<Record<string, never>, {
185
- readonly mode: 'value';
186
- readonly value: string[];
187
- }, "authenticated", false, true, undefined>>;
188
- };
189
141
  }>;