@run402/runtime-kernel 0.1.5 → 0.1.7

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 (34) hide show
  1. package/README.md +5 -3
  2. package/dist/apply.d.ts.map +1 -1
  3. package/dist/apply.js +35 -10
  4. package/dist/apply.js.map +1 -1
  5. package/dist/archive.d.ts +210 -0
  6. package/dist/archive.d.ts.map +1 -0
  7. package/dist/archive.js +1137 -0
  8. package/dist/archive.js.map +1 -0
  9. package/dist/capabilities.d.ts +30 -2
  10. package/dist/capabilities.d.ts.map +1 -1
  11. package/dist/capabilities.js +44 -2
  12. package/dist/capabilities.js.map +1 -1
  13. package/dist/functions-runtime.d.ts +33 -2
  14. package/dist/functions-runtime.d.ts.map +1 -1
  15. package/dist/functions-runtime.js +77 -1
  16. package/dist/functions-runtime.js.map +1 -1
  17. package/dist/index.d.ts +1 -0
  18. package/dist/index.d.ts.map +1 -1
  19. package/dist/index.js +1 -0
  20. package/dist/index.js.map +1 -1
  21. package/dist/ports.d.ts +4 -1
  22. package/dist/ports.d.ts.map +1 -1
  23. package/package.json +7 -4
  24. package/schemas/project-archive-auth-stubs.v1.schema.json +21 -0
  25. package/schemas/project-archive-database-tables.v1.schema.json +50 -0
  26. package/schemas/project-archive-descriptor.v1.schema.json +50 -0
  27. package/schemas/project-archive-export-report.v1.schema.json +44 -0
  28. package/schemas/project-archive-import-result.v1.schema.json +45 -0
  29. package/schemas/project-archive-index.v1.schema.json +132 -0
  30. package/schemas/project-archive-layout.v1.schema.json +44 -0
  31. package/schemas/project-archive-portability-report.v1.schema.json +61 -0
  32. package/schemas/project-archive-runtime-index.v1.schema.json +42 -0
  33. package/schemas/project-archive-secret-requirements.v1.schema.json +30 -0
  34. package/schemas/project-archive-storage-index.v1.schema.json +35 -0
package/README.md CHANGED
@@ -2,8 +2,10 @@
2
2
 
3
3
  Public Run402 Core runtime-kernel contracts and application services.
4
4
 
5
- This package is the first self-hostable Core runtime slice. It currently exposes the runtime capability document, typed runtime errors, and port contracts used by the public Core gateway composition root.
5
+ This package is the first self-hostable Core runtime slice. It currently exposes the runtime capability document, typed runtime errors, port contracts used by the public Core gateway composition root, and the `run402-project-archive.v1` local inspect/verify/import contract.
6
6
 
7
- It is a Developer Preview / single-node reference runtime component. Core functions are also Developer Preview trusted-local-code semantics: pre-bundled Node 22 artifacts, no external npm dependency install, explicit resource limits, and no hostile-code isolation claim.
7
+ It is a Developer Preview / single-node reference runtime component. Core functions are also Developer Preview trusted-local-code semantics: pre-bundled Node 22 artifacts, single-node scheduled functions from release manifests, no external npm dependency install, explicit resource limits, and no hostile-code isolation claim.
8
8
 
9
- It does not include Astro SSR, export/import, hosted OAuth, managed backups, TLS automation, observability, Cloud-grade sandboxing, or production hardening.
9
+ Portable archive schemas ship under `@run402/runtime-kernel/schemas/*`. Archive verification is offline and treats archives as untrusted input; it checks integrity and compatibility but does not make the archive trusted. Core import verifies before mutation and supports new local projects only in v1.
10
+
11
+ It does not include Cloud archive export creation, Cloud import, existing-project archive merge, hosted OAuth, managed backups, TLS automation, observability, distributed/HA scheduling, Cloud-grade sandboxing, or production hardening.
@@ -1 +1 @@
1
- {"version":3,"file":"apply.d.ts","sourceRoot":"","sources":["../src/apply.ts"],"names":[],"mappings":"AACA,OAAO,EAQL,KAAK,aAAa,EAGlB,KAAK,oBAAoB,EAE1B,MAAM,iBAAiB,CAAC;AACzB,OAAO,KAAK,EAEV,aAAa,EAGb,kBAAkB,EACnB,MAAM,YAAY,CAAC;AAgCpB,MAAM,WAAW,oBAAoB;IACnC,IAAI,EAAE,OAAO,CAAC;CACf;AAED,MAAM,WAAW,oBAAoB;IACnC,OAAO,EAAE,MAAM,CAAC;IAChB,mBAAmB,CAAC,EAAE,MAAM,CAAC;CAC9B;AAED,MAAM,WAAW,qBAAqB;IACpC,OAAO,EAAE,MAAM,CAAC;IAChB,UAAU,EAAE,MAAM,CAAC;IACnB,UAAU,EAAE,MAAM,CAAC;IACnB,cAAc,EAAE,MAAM,CAAC;IACvB,MAAM,EAAE,WAAW,GAAG,MAAM,GAAG,UAAU,CAAC;IAC1C,cAAc,CAAC,EAAE,iBAAiB,GAAG,oBAAoB,CAAC;IAC1D,eAAe,CAAC,EAAE,MAAM,CAAC;CAC1B;AAED,qBAAa,mBAAoB,SAAQ,KAAK;IAGhC,QAAQ,CAAC,IAAI,EAAE,MAAM;IAFjC,QAAQ,CAAC,MAAM,OAAO;gBAED,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM;CAInD;AAED,wBAAgB,sBAAsB,CAAC,KAAK,EAAE,mBAAmB,GAAG;IAClE,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,MAAM,CAAC;CACjB,CAKA;AAED,wBAAsB,eAAe,CACnC,KAAK,EAAE,kBAAkB,EACzB,KAAK,EAAE,oBAAoB,GAC1B,OAAO,CAAC,aAAa,CAAC,CAoCxB;AAED,wBAAsB,eAAe,CACnC,KAAK,EAAE,kBAAkB,EACzB,KAAK,EAAE,oBAAoB,GAC1B,OAAO,CAAC,qBAAqB,CAAC,CA4GhC;AAieD,wBAAgB,qBAAqB,CAAC,GAAG,EAAE,aAAa,EAAE,KAAK,EAAE,UAAU,GAAG,IAAI,CAOjF;AAED,wBAAgB,mBAAmB,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,CAG1D;AAsBD,wBAAgB,qBAAqB,IAAI,oBAAoB,CAE5D"}
1
+ {"version":3,"file":"apply.d.ts","sourceRoot":"","sources":["../src/apply.ts"],"names":[],"mappings":"AACA,OAAO,EAQL,KAAK,aAAa,EAGlB,KAAK,oBAAoB,EAE1B,MAAM,iBAAiB,CAAC;AACzB,OAAO,KAAK,EAEV,aAAa,EAGb,kBAAkB,EACnB,MAAM,YAAY,CAAC;AAoCpB,MAAM,WAAW,oBAAoB;IACnC,IAAI,EAAE,OAAO,CAAC;CACf;AAED,MAAM,WAAW,oBAAoB;IACnC,OAAO,EAAE,MAAM,CAAC;IAChB,mBAAmB,CAAC,EAAE,MAAM,CAAC;CAC9B;AAED,MAAM,WAAW,qBAAqB;IACpC,OAAO,EAAE,MAAM,CAAC;IAChB,UAAU,EAAE,MAAM,CAAC;IACnB,UAAU,EAAE,MAAM,CAAC;IACnB,cAAc,EAAE,MAAM,CAAC;IACvB,MAAM,EAAE,WAAW,GAAG,MAAM,GAAG,UAAU,CAAC;IAC1C,cAAc,CAAC,EAAE,iBAAiB,GAAG,oBAAoB,CAAC;IAC1D,eAAe,CAAC,EAAE,MAAM,CAAC;CAC1B;AAED,qBAAa,mBAAoB,SAAQ,KAAK;IAGhC,QAAQ,CAAC,IAAI,EAAE,MAAM;IAFjC,QAAQ,CAAC,MAAM,OAAO;gBAED,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM;CAInD;AAED,wBAAgB,sBAAsB,CAAC,KAAK,EAAE,mBAAmB,GAAG;IAClE,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,MAAM,CAAC;CACjB,CAKA;AAED,wBAAsB,eAAe,CACnC,KAAK,EAAE,kBAAkB,EACzB,KAAK,EAAE,oBAAoB,GAC1B,OAAO,CAAC,aAAa,CAAC,CAoCxB;AAED,wBAAsB,eAAe,CACnC,KAAK,EAAE,kBAAkB,EACzB,KAAK,EAAE,oBAAoB,GAC1B,OAAO,CAAC,qBAAqB,CAAC,CA4GhC;AAwfD,wBAAgB,qBAAqB,CAAC,GAAG,EAAE,aAAa,EAAE,KAAK,EAAE,UAAU,GAAG,IAAI,CAOjF;AAED,wBAAgB,mBAAmB,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,CAG1D;AAsBD,wBAAgB,qBAAqB,IAAI,oBAAoB,CAE5D"}
package/dist/apply.js CHANGED
@@ -1,7 +1,7 @@
1
1
  import { createHash } from "node:crypto";
2
2
  import { canonicalizeJson, digestApplyRequest, digestMaterializedRelease, emptyPortableReleaseState, materializeRelease, parseReleaseSpec, } from "@run402/release";
3
3
  import { AstroSsrUnsupportedFeatureError, DependencyInstallRejectedError, FunctionBundleValidationError, MissingRequiredSecretError, UnsupportedCapabilityError, } from "./errors.js";
4
- import { CORE_ASTRO_SSR_FALLBACK_PATTERN, CORE_ASTRO_SSR_OUTPUT_CONTRACT_VERSION, CORE_FUNCTION_DEPENDENCY_MODE, CORE_FUNCTION_RESOURCE_DEFAULTS, emptyFunctionApplyEffects, functionMemoryBytes, isAstroSsrFunction, normalizeFunctionEntrypoint, } from "./functions-runtime.js";
4
+ import { CORE_ASTRO_SSR_FALLBACK_PATTERN, CORE_ASTRO_SSR_OUTPUT_CONTRACT_VERSION, CORE_FUNCTION_DEPENDENCY_MODE, CORE_FUNCTION_RESOURCE_DEFAULTS, CORE_FUNCTION_SCHEDULE_LIMIT_DEFAULTS, emptyFunctionApplyEffects, emptyCoreFunctionScheduleMetadata, functionMemoryBytes, isAstroSsrFunction, nextCoreCronRunIso, normalizeFunctionEntrypoint, validateCoreFunctionSchedule, } from "./functions-runtime.js";
5
5
  import { computeStorageInventoryRevision, normalizeSha256Hex, normalizeStorageContentType, normalizeStorageKey, normalizeStoragePrefix, normalizeStorageVisibility, StorageValidationError, } from "./storage.js";
6
6
  import { validateProjectId } from "./projects.js";
7
7
  export class ApplyInvariantError extends Error {
@@ -21,7 +21,7 @@ export function applyInvariantEnvelope(error) {
21
21
  }
22
22
  export async function createApplyPlan(ports, input) {
23
23
  const spec = parseReleaseSpec(input.spec);
24
- validateSupportedSpec(spec);
24
+ validateSupportedSpec(spec, ports);
25
25
  validateProjectId(spec.project);
26
26
  const project = await ports.projects.inspect(spec.project);
27
27
  if (!project) {
@@ -62,7 +62,7 @@ export async function commitApplyPlan(ports, input) {
62
62
  throw new ApplyInvariantError("release_spec_digest_mismatch", "Apply plan digest does not match commit input.");
63
63
  }
64
64
  const spec = parseReleaseSpec(plan.spec);
65
- validateSupportedSpec(spec);
65
+ validateSupportedSpec(spec, ports);
66
66
  if (plan.status === "committed") {
67
67
  return {
68
68
  plan_id: plan.plan_id,
@@ -165,8 +165,8 @@ function deferredCommitResult(plan, releaseId, deferred) {
165
165
  deferred_reason: deferred.reason,
166
166
  };
167
167
  }
168
- function validateSupportedSpec(spec) {
169
- validateFunctionSubset(spec);
168
+ function validateSupportedSpec(spec, ports) {
169
+ validateFunctionSubset(spec, ports);
170
170
  if (spec.subdomains)
171
171
  throw new UnsupportedCapabilityError("subdomains.managed");
172
172
  if (spec.assets && !spec.assets.put && !spec.assets.delete && !spec.assets.sync) {
@@ -195,17 +195,27 @@ function validateSupportedSpec(spec) {
195
195
  }
196
196
  }
197
197
  }
198
- function validateFunctionSubset(spec) {
198
+ function validateFunctionSubset(spec, ports) {
199
199
  if (!spec.functions)
200
200
  return;
201
201
  if (!("replace" in spec.functions) || !spec.functions.replace) {
202
202
  throw new UnsupportedCapabilityError("functions.patch");
203
203
  }
204
204
  let ssrCount = 0;
205
+ let scheduledCount = 0;
205
206
  for (const [name, fn] of Object.entries(spec.functions.replace)) {
206
- validateCoreFunctionSpec(name, fn);
207
+ validateCoreFunctionSpec(name, fn, ports);
207
208
  if (fn.class === "ssr")
208
209
  ssrCount += 1;
210
+ if (fn.schedule !== undefined && fn.schedule !== null)
211
+ scheduledCount += 1;
212
+ }
213
+ const scheduleLimits = ports.scheduleLimits ?? CORE_FUNCTION_SCHEDULE_LIMIT_DEFAULTS;
214
+ if (scheduledCount > scheduleLimits.maxScheduledFunctionsPerProject) {
215
+ throw new FunctionBundleValidationError("schedule_limit_exceeded", `Core schedule limit exceeded: ${scheduledCount} scheduled function(s), maximum is ${scheduleLimits.maxScheduledFunctionsPerProject}.`, {
216
+ scheduled_count: scheduledCount,
217
+ max_scheduled_functions_per_project: scheduleLimits.maxScheduledFunctionsPerProject,
218
+ });
209
219
  }
210
220
  if (ssrCount > 1) {
211
221
  throw new AstroSsrUnsupportedFeatureError("multiple_ssr_targets", "Core Astro SSR Developer Preview supports one fallback target per release.", {
@@ -213,7 +223,7 @@ function validateFunctionSubset(spec) {
213
223
  });
214
224
  }
215
225
  }
216
- function validateCoreFunctionSpec(name, fn) {
226
+ function validateCoreFunctionSpec(name, fn, ports) {
217
227
  if (fn.runtime !== "node22") {
218
228
  throw new FunctionBundleValidationError("invalid_function_bundle", `Function ${name} must use runtime node22.`, {
219
229
  function_name: name,
@@ -239,8 +249,18 @@ function validateCoreFunctionSpec(name, fn) {
239
249
  dependency_mode: CORE_FUNCTION_DEPENDENCY_MODE,
240
250
  });
241
251
  }
242
- if (fn.schedule) {
243
- throw new UnsupportedCapabilityError("functions.scheduled");
252
+ try {
253
+ validateCoreFunctionSchedule({
254
+ functionName: name,
255
+ schedule: fn.schedule,
256
+ limits: ports.scheduleLimits,
257
+ });
258
+ }
259
+ catch (error) {
260
+ throw new FunctionBundleValidationError("invalid_function_schedule", error instanceof Error ? error.message : String(error), {
261
+ function_name: name,
262
+ schedule: fn.schedule ?? null,
263
+ });
244
264
  }
245
265
  if (fn.class === "ssr") {
246
266
  if (!fn.capabilities?.includes(CORE_ASTRO_SSR_OUTPUT_CONTRACT_VERSION)) {
@@ -341,6 +361,11 @@ function bundleMetadataFromSpec(name, spec, requireRole, requiredSecrets) {
341
361
  memory_bytes: functionMemoryBytes({ memory_mb: spec.config?.memoryMb ?? 128 }),
342
362
  require_auth: spec.requireAuth === true,
343
363
  require_role: requireRole,
364
+ schedule: spec.schedule ?? null,
365
+ schedule_meta: spec.schedule ? {
366
+ ...emptyCoreFunctionScheduleMetadata(),
367
+ next_run_at: nextCoreCronRunIso(spec.schedule),
368
+ } : null,
344
369
  class: spec.class ?? "standard",
345
370
  capabilities: spec.capabilities ? [...spec.capabilities].sort() : [],
346
371
  };
package/dist/apply.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"apply.js","sourceRoot":"","sources":["../src/apply.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"apply.js","sourceRoot":"","sources":["../src/apply.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,210 @@
1
+ import { RuntimeKernelTypedError, type RuntimeKernelTypedErrorDetails } from "./errors.js";
2
+ export declare const PROJECT_ARCHIVE_VERSION: "run402-project-archive.v1";
3
+ export declare const PROJECT_ARCHIVE_LAYOUT_SCHEMA_VERSION: "run402.project_archive.layout.v1";
4
+ export declare const PROJECT_ARCHIVE_INDEX_SCHEMA_VERSION: "run402.project_archive.index.v1";
5
+ export declare const PROJECT_ARCHIVE_DIGEST_IDENTITY: "run402-project-archive-logical-v1";
6
+ export declare const PROJECT_ARCHIVE_DEFAULT_EXTENSION: ".r402ar";
7
+ export declare const PROJECT_ARCHIVE_TRANSPORTS: readonly ["directory", "tar"];
8
+ export type PortableArchiveTransport = (typeof PROJECT_ARCHIVE_TRANSPORTS)[number];
9
+ export declare const PROJECT_ARCHIVE_MEDIA_TYPES: {
10
+ readonly layout: "application/vnd.run402.project-archive.layout.v1+json";
11
+ readonly index: "application/vnd.run402.project-archive.index.v1+json";
12
+ readonly descriptor: "application/vnd.run402.project-archive.descriptor.v1+json";
13
+ readonly exportReport: "application/vnd.run402.project-archive.export-report.v1+json";
14
+ readonly portabilityReport: "application/vnd.run402.project-archive.portability-report.v1+json";
15
+ readonly consistency: "application/vnd.run402.project-archive.consistency.v1+json";
16
+ readonly databaseTables: "application/vnd.run402.project-archive.database-tables.v1+json";
17
+ readonly databaseSequences: "application/vnd.run402.project-archive.database-sequences.v1+json";
18
+ readonly databaseSql: "application/sql; dialect=postgresql";
19
+ readonly databaseCopy: "application/vnd.postgresql.copy.text";
20
+ readonly authConfig: "application/vnd.run402.project-archive.auth-config.v1+json";
21
+ readonly authSubjects: "application/x-ndjson; profile=run402-auth-subject-stubs-v1";
22
+ readonly storageIndex: "application/vnd.run402.project-archive.storage-index.v1+json";
23
+ readonly runtimeIndex: "application/vnd.run402.project-archive.runtime-index.v1+json";
24
+ readonly secretRequirements: "application/vnd.run402.project-archive.secret-requirements.v1+json";
25
+ readonly envTemplate: "text/plain; profile=run402-required-env-template-v1";
26
+ readonly releaseSpec: "application/vnd.run402.release-spec.v1+json";
27
+ readonly portableReleaseState: "application/vnd.run402.portable-release-state.v1+json";
28
+ readonly releaseFactSet: "application/vnd.run402.release-fact-set.v1+json";
29
+ readonly blob: "application/octet-stream";
30
+ };
31
+ export declare const SUPPORTED_ARCHIVE_CAPABILITIES: readonly ["run402.core.release-state.v1", "run402.core.database.phased-postgres-copy.v1", "run402.core.storage.cas.v1", "run402.core.functions.node22.v1", "run402.core.astro-ssr.v1", "run402.core.auth-stubs.v1", "run402.core.secret-requirements.v1"];
32
+ export declare const ARCHIVE_ERROR_CODES: readonly ["EXPORT_CONSISTENCY_UNAVAILABLE", "EXPORT_SCOPE_UNSUPPORTED", "ARCHIVE_EXPIRED", "ARCHIVE_DIGEST_MISMATCH", "ARCHIVE_SIZE_MISMATCH", "ARCHIVE_UNSUPPORTED_VERSION", "ARCHIVE_UNSUPPORTED_REQUIRED_CAPABILITY", "ARCHIVE_MEDIA_TYPE_UNSUPPORTED", "ARCHIVE_PATH_UNSAFE", "ARCHIVE_SIZE_LIMIT_EXCEEDED", "ARCHIVE_FILE_COUNT_LIMIT_EXCEEDED", "ARCHIVE_DESCRIPTOR_TOO_DEEP", "ARCHIVE_DESCRIPTOR_MISSING", "ARCHIVE_BLOB_MISSING", "ARCHIVE_DUPLICATE_PATH", "ARCHIVE_DUPLICATE_JSON_KEY", "ARCHIVE_MALFORMED_JSON", "ARCHIVE_MALFORMED_TAR", "ARCHIVE_ENTRY_TYPE_UNSUPPORTED", "DATABASE_EXTENSION_UNSUPPORTED", "DATABASE_RLS_IMPORT_UNSUPPORTED", "DATABASE_SCHEMA_UNSAFE", "DATABASE_SEQUENCE_RESTORE_FAILED", "NON_DETERMINISTIC_TABLE_ORDER", "STORAGE_OBJECT_CHANGED_DURING_EXPORT", "STORAGE_OBJECT_DIGEST_MISMATCH", "AUTH_CREDENTIALS_NOT_EXPORTED", "AUTH_SUBJECT_STUBS_IMPORTED", "SECRET_VALUES_REQUIRED", "CLOUD_ONLY_FEATURE_EXCLUDED", "PROJECT_ALREADY_EXISTS", "IMPORT_VERIFY_FAILED", "IMPORT_CONFORMANCE_FAILED"];
33
+ export type ArchiveErrorCode = (typeof ARCHIVE_ERROR_CODES)[number];
34
+ export declare const PORTABILITY_REPORT_SEVERITIES: readonly ["info", "warning", "blocking"];
35
+ export type PortabilityReportSeverity = (typeof PORTABILITY_REPORT_SEVERITIES)[number];
36
+ export declare const ARCHIVE_NEXT_ACTION_TYPES: readonly ["run_command", "set_secret", "change_export_scope", "remove_unsupported_feature", "retry_later", "contact_support", "read_docs", "none"];
37
+ export type ArchiveNextActionType = (typeof ARCHIVE_NEXT_ACTION_TYPES)[number];
38
+ export interface ArchiveNextAction {
39
+ type: ArchiveNextActionType;
40
+ command?: string;
41
+ env_var?: string;
42
+ docs_url?: string;
43
+ message?: string;
44
+ }
45
+ export interface ArchiveDiagnostic {
46
+ code: ArchiveErrorCode;
47
+ severity: PortabilityReportSeverity;
48
+ resource_type: string;
49
+ resource_id?: string;
50
+ path?: string;
51
+ message: string;
52
+ next_action: ArchiveNextAction;
53
+ retryable: boolean;
54
+ context?: Record<string, unknown>;
55
+ }
56
+ export interface PortableArchiveDescriptor {
57
+ mediaType: string;
58
+ digest: `sha256:${string}`;
59
+ size: number;
60
+ path?: string;
61
+ annotations?: Record<string, string>;
62
+ }
63
+ export interface PortableArchiveConsistencyDescriptor {
64
+ mode: "cloud_write_pause_v1" | "core_fixture_v1";
65
+ pinned_release_id?: string | null;
66
+ started_at?: string;
67
+ completed_at?: string;
68
+ database?: {
69
+ postgres_version?: string;
70
+ snapshot?: string | null;
71
+ wal_lsn?: string | null;
72
+ };
73
+ storage?: {
74
+ mutation_pause: "not_applicable" | "paused" | "unavailable";
75
+ };
76
+ runtime?: {
77
+ artifact_capture: "captured" | "not_applicable" | "unavailable";
78
+ };
79
+ }
80
+ export interface PortableArchiveIndex {
81
+ schema_version: typeof PROJECT_ARCHIVE_INDEX_SCHEMA_VERSION;
82
+ archive_version: typeof PROJECT_ARCHIVE_VERSION;
83
+ mediaType: typeof PROJECT_ARCHIVE_MEDIA_TYPES.index;
84
+ archive_digest?: `sha256:${string}`;
85
+ core_compatibility: {
86
+ runtime_kernel: string;
87
+ release_spec: string;
88
+ };
89
+ source: {
90
+ platform: "run402-cloud" | "run402-core" | "run402-core-fixture";
91
+ label?: string;
92
+ };
93
+ required_capabilities: string[];
94
+ identity_descriptors: string[];
95
+ descriptors: Record<string, PortableArchiveDescriptor>;
96
+ consistency?: PortableArchiveConsistencyDescriptor;
97
+ annotations?: Record<string, string>;
98
+ }
99
+ export interface PortableArchiveLayout {
100
+ schema_version: typeof PROJECT_ARCHIVE_LAYOUT_SCHEMA_VERSION;
101
+ archive_version: typeof PROJECT_ARCHIVE_VERSION;
102
+ mediaType: typeof PROJECT_ARCHIVE_MEDIA_TYPES.layout;
103
+ index: "index.json";
104
+ blobs: "blobs/sha256";
105
+ transports: PortableArchiveTransport[];
106
+ checksum_lists_authoritative: false;
107
+ }
108
+ export interface ArchiveSecretRequirement {
109
+ name: string;
110
+ required: boolean;
111
+ targets?: string[];
112
+ description?: string;
113
+ }
114
+ export interface ArchivePortabilityReportEntry extends ArchiveDiagnostic {
115
+ resource_id?: string;
116
+ }
117
+ export interface ArchivePortabilityReport {
118
+ schema_version: "run402.project_archive.portability_report.v1";
119
+ entries: ArchivePortabilityReportEntry[];
120
+ }
121
+ export interface ArchiveExportReport {
122
+ schema_version: "run402.project_archive.export_report.v1";
123
+ export_scope: "portable-runtime-v1";
124
+ auth_export: "none" | "stubs";
125
+ consistency: "cloud_write_pause_v1" | "core_fixture_v1";
126
+ omitted_sensitive_resource_count?: number;
127
+ unsupported_resource_count?: number;
128
+ }
129
+ export interface PortableArchiveLimits {
130
+ maxFiles: number;
131
+ maxExpandedBytes: number;
132
+ maxFileBytes: number;
133
+ maxDescriptorBytes: number;
134
+ maxDescriptorDepth: number;
135
+ }
136
+ export interface PortableArchiveVerifyInput {
137
+ archivePath: string;
138
+ limits?: Partial<PortableArchiveLimits>;
139
+ }
140
+ export interface PortableArchiveVerifyResult {
141
+ ok: boolean;
142
+ archive_version: typeof PROJECT_ARCHIVE_VERSION | null;
143
+ archive_digest: `sha256:${string}` | null;
144
+ transport: PortableArchiveTransport | null;
145
+ file_count: number;
146
+ total_bytes: number;
147
+ descriptor_count: number;
148
+ required_capabilities: string[];
149
+ required_secrets: ArchiveSecretRequirement[];
150
+ auth_subject_stub_count: number;
151
+ export_report: ArchiveExportReport | null;
152
+ portability_report: ArchivePortabilityReport | null;
153
+ diagnostics: ArchiveDiagnostic[];
154
+ }
155
+ export type PortableArchiveImportTarget = {
156
+ kind: "new_project";
157
+ name?: string | null;
158
+ } | {
159
+ kind: "existing_project";
160
+ project_id: string;
161
+ };
162
+ export interface PortableArchiveImportInput {
163
+ archivePath: string;
164
+ target: PortableArchiveImportTarget;
165
+ dryRun?: boolean;
166
+ requireRunnable?: boolean;
167
+ secretValues?: Record<string, string>;
168
+ limits?: Partial<PortableArchiveLimits>;
169
+ }
170
+ export interface PortableArchiveImportedProject {
171
+ project_id: string;
172
+ project_name: string;
173
+ release_id: string | null;
174
+ endpoints?: Record<string, string>;
175
+ }
176
+ export interface PortableArchiveVerifiedImportInput {
177
+ archive_path: string;
178
+ project_name: string;
179
+ verification: PortableArchiveVerifyResult;
180
+ secret_values: Record<string, string>;
181
+ require_runnable: boolean;
182
+ }
183
+ export interface PortableArchiveImporterPort {
184
+ importVerifiedArchive(input: PortableArchiveVerifiedImportInput): Promise<PortableArchiveImportedProject>;
185
+ }
186
+ export interface PortableArchiveImportPorts {
187
+ importer: PortableArchiveImporterPort;
188
+ }
189
+ export interface PortableArchiveImportResult {
190
+ schema_version: "run402.project_archive.import_result.v1";
191
+ status: "dry_run" | "imported" | "blocked" | "failed";
192
+ archive_digest: `sha256:${string}` | null;
193
+ project_id?: string;
194
+ project_name?: string;
195
+ release_id?: string | null;
196
+ required_secrets: ArchiveSecretRequirement[];
197
+ diagnostics: ArchiveDiagnostic[];
198
+ next_action: ArchiveNextAction;
199
+ }
200
+ export declare class PortableArchiveError extends RuntimeKernelTypedError {
201
+ constructor(code: ArchiveErrorCode, message: string, details?: RuntimeKernelTypedErrorDetails);
202
+ }
203
+ export declare function canonicalizePortableArchiveJson(value: unknown): string;
204
+ export declare function computePortableArchiveBytesDigest(bytes: Uint8Array): `sha256:${string}`;
205
+ export declare function computePortableArchiveJsonDigest(value: unknown): `sha256:${string}`;
206
+ export declare function computePortableArchiveLogicalDigest(index: PortableArchiveIndex): `sha256:${string}`;
207
+ export declare function inspectPortableArchive(input: PortableArchiveVerifyInput): Promise<PortableArchiveVerifyResult>;
208
+ export declare function importPortableArchive(ports: PortableArchiveImportPorts, input: PortableArchiveImportInput): Promise<PortableArchiveImportResult>;
209
+ export declare function verifyPortableArchive(input: PortableArchiveVerifyInput): Promise<PortableArchiveVerifyResult>;
210
+ //# sourceMappingURL=archive.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"archive.d.ts","sourceRoot":"","sources":["../src/archive.ts"],"names":[],"mappings":"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"}