@dsh-enhanced/lark-channel 0.1.65 → 0.1.66

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 (155) hide show
  1. package/README.md +19 -5
  2. package/cordis.patch.yml +1 -0
  3. package/docs/operations.md +1 -1
  4. package/docs/progress-security.md +3 -0
  5. package/docs/rsi-setup.md +11 -7
  6. package/docs/setup.md +2 -1
  7. package/lib/adapter.d.ts +8 -0
  8. package/lib/adapter.d.ts.map +1 -1
  9. package/lib/adapter.js +34 -2
  10. package/lib/adapter.js.map +1 -1
  11. package/lib/config.d.ts +4 -0
  12. package/lib/config.d.ts.map +1 -1
  13. package/lib/config.js +52 -8
  14. package/lib/config.js.map +1 -1
  15. package/lib/index.d.ts +5 -0
  16. package/lib/index.d.ts.map +1 -1
  17. package/lib/index.js +24 -1
  18. package/lib/index.js.map +1 -1
  19. package/lib/progress.d.ts +11 -1
  20. package/lib/progress.d.ts.map +1 -1
  21. package/lib/progress.js +13 -1
  22. package/lib/progress.js.map +1 -1
  23. package/lib/rsi-authority-runtime.d.ts +1 -0
  24. package/lib/rsi-authority-runtime.d.ts.map +1 -1
  25. package/lib/rsi-authority-runtime.js +17 -7
  26. package/lib/rsi-authority-runtime.js.map +1 -1
  27. package/lib/rsi-bootstrap-manifest.d.ts +12 -5
  28. package/lib/rsi-bootstrap-manifest.d.ts.map +1 -1
  29. package/lib/rsi-bootstrap-manifest.js +63 -9
  30. package/lib/rsi-bootstrap-manifest.js.map +1 -1
  31. package/lib/rsi-bootstrap.js +3 -3
  32. package/lib/rsi-bootstrap.js.map +1 -1
  33. package/lib/rsi-build.d.ts +12 -0
  34. package/lib/rsi-build.d.ts.map +1 -1
  35. package/lib/rsi-build.js +55 -5
  36. package/lib/rsi-build.js.map +1 -1
  37. package/lib/rsi-creation-build.d.ts +3 -0
  38. package/lib/rsi-creation-build.d.ts.map +1 -1
  39. package/lib/rsi-creation-build.js +45 -0
  40. package/lib/rsi-creation-build.js.map +1 -1
  41. package/lib/rsi-host-update.d.ts +51 -0
  42. package/lib/rsi-host-update.d.ts.map +1 -1
  43. package/lib/rsi-host-update.js +61 -1
  44. package/lib/rsi-host-update.js.map +1 -1
  45. package/lib/rsi-install.d.ts +10 -3
  46. package/lib/rsi-install.d.ts.map +1 -1
  47. package/lib/rsi-install.js +65 -15
  48. package/lib/rsi-install.js.map +1 -1
  49. package/lib/rsi-linux-cgroup-roots.d.ts +3 -0
  50. package/lib/rsi-linux-cgroup-roots.d.ts.map +1 -0
  51. package/lib/rsi-linux-cgroup-roots.js +3 -0
  52. package/lib/rsi-linux-cgroup-roots.js.map +1 -0
  53. package/lib/rsi-linux-creation-build.d.ts +36 -0
  54. package/lib/rsi-linux-creation-build.d.ts.map +1 -0
  55. package/lib/rsi-linux-creation-build.js +213 -0
  56. package/lib/rsi-linux-creation-build.js.map +1 -0
  57. package/lib/rsi-linux-native-materialize.d.ts +31 -0
  58. package/lib/rsi-linux-native-materialize.d.ts.map +1 -0
  59. package/lib/rsi-linux-native-materialize.js +162 -0
  60. package/lib/rsi-linux-native-materialize.js.map +1 -0
  61. package/lib/rsi-linux-native-relocation.d.ts +120 -0
  62. package/lib/rsi-linux-native-relocation.d.ts.map +1 -0
  63. package/lib/rsi-linux-native-relocation.js +1555 -0
  64. package/lib/rsi-linux-native-relocation.js.map +1 -0
  65. package/lib/rsi-linux-native-resources.d.ts +97 -0
  66. package/lib/rsi-linux-native-resources.d.ts.map +1 -0
  67. package/lib/rsi-linux-native-resources.js +521 -0
  68. package/lib/rsi-linux-native-resources.js.map +1 -0
  69. package/lib/rsi-linux-repository-bootstrap.d.ts +17 -0
  70. package/lib/rsi-linux-repository-bootstrap.d.ts.map +1 -0
  71. package/lib/rsi-linux-repository-bootstrap.js +317 -0
  72. package/lib/rsi-linux-repository-bootstrap.js.map +1 -0
  73. package/lib/rsi-linux-runner-states.d.ts +20 -0
  74. package/lib/rsi-linux-runner-states.d.ts.map +1 -0
  75. package/lib/rsi-linux-runner-states.js +70 -0
  76. package/lib/rsi-linux-runner-states.js.map +1 -0
  77. package/lib/rsi-linux-runtime-bootstrap.d.ts +10 -0
  78. package/lib/rsi-linux-runtime-bootstrap.d.ts.map +1 -0
  79. package/lib/rsi-linux-runtime-bootstrap.js +38 -0
  80. package/lib/rsi-linux-runtime-bootstrap.js.map +1 -0
  81. package/lib/rsi-linux-source-build.d.ts +28 -0
  82. package/lib/rsi-linux-source-build.d.ts.map +1 -0
  83. package/lib/rsi-linux-source-build.js +43 -0
  84. package/lib/rsi-linux-source-build.js.map +1 -0
  85. package/lib/rsi-local-install.d.ts +2 -0
  86. package/lib/rsi-local-install.d.ts.map +1 -1
  87. package/lib/rsi-local-install.js +42 -1
  88. package/lib/rsi-local-install.js.map +1 -1
  89. package/lib/rsi-local-pair-install.d.ts +15 -0
  90. package/lib/rsi-local-pair-install.d.ts.map +1 -1
  91. package/lib/rsi-local-pair-install.js +21 -6
  92. package/lib/rsi-local-pair-install.js.map +1 -1
  93. package/lib/rsi-local-resources.d.ts +2 -2
  94. package/lib/rsi-local-resources.d.ts.map +1 -1
  95. package/lib/rsi-local-resources.js +5 -0
  96. package/lib/rsi-local-resources.js.map +1 -1
  97. package/lib/rsi-local-update-build.d.ts +25 -6
  98. package/lib/rsi-local-update-build.d.ts.map +1 -1
  99. package/lib/rsi-local-update-build.js +46 -7
  100. package/lib/rsi-local-update-build.js.map +1 -1
  101. package/lib/rsi-local-update.d.ts +5 -2
  102. package/lib/rsi-local-update.d.ts.map +1 -1
  103. package/lib/rsi-local-update.js +6 -5
  104. package/lib/rsi-local-update.js.map +1 -1
  105. package/lib/rsi-plugin-creation.d.ts +16 -1
  106. package/lib/rsi-plugin-creation.d.ts.map +1 -1
  107. package/lib/rsi-plugin-creation.js +60 -14
  108. package/lib/rsi-plugin-creation.js.map +1 -1
  109. package/lib/rsi-plugin-revision.d.ts +35 -0
  110. package/lib/rsi-plugin-revision.d.ts.map +1 -0
  111. package/lib/rsi-plugin-revision.js +200 -0
  112. package/lib/rsi-plugin-revision.js.map +1 -0
  113. package/lib/rsi-profile.d.ts +8 -0
  114. package/lib/rsi-profile.d.ts.map +1 -1
  115. package/lib/rsi-profile.js +55 -2
  116. package/lib/rsi-profile.js.map +1 -1
  117. package/lib/rsi-release-build.d.ts +24 -8
  118. package/lib/rsi-release-build.d.ts.map +1 -1
  119. package/lib/rsi-release-build.js +89 -37
  120. package/lib/rsi-release-build.js.map +1 -1
  121. package/lib/rsi-scanner-retirement-config.d.ts +34 -0
  122. package/lib/rsi-scanner-retirement-config.d.ts.map +1 -0
  123. package/lib/rsi-scanner-retirement-config.js +272 -0
  124. package/lib/rsi-scanner-retirement-config.js.map +1 -0
  125. package/lib/rsi-scanner-retirement-runtime.d.ts +23 -0
  126. package/lib/rsi-scanner-retirement-runtime.d.ts.map +1 -0
  127. package/lib/rsi-scanner-retirement-runtime.js +98 -0
  128. package/lib/rsi-scanner-retirement-runtime.js.map +1 -0
  129. package/lib/rsi-scanner-retirement-stage.d.ts +55 -0
  130. package/lib/rsi-scanner-retirement-stage.d.ts.map +1 -0
  131. package/lib/rsi-scanner-retirement-stage.js +183 -0
  132. package/lib/rsi-scanner-retirement-stage.js.map +1 -0
  133. package/lib/rsi-scanner-retirement-transition.d.ts +57 -0
  134. package/lib/rsi-scanner-retirement-transition.d.ts.map +1 -0
  135. package/lib/rsi-scanner-retirement-transition.js +320 -0
  136. package/lib/rsi-scanner-retirement-transition.js.map +1 -0
  137. package/lib/rsi-setup.d.ts +20 -0
  138. package/lib/rsi-setup.d.ts.map +1 -1
  139. package/lib/rsi-setup.js +102 -5
  140. package/lib/rsi-setup.js.map +1 -1
  141. package/lib/rsi-source-maintenance.d.ts +9 -1
  142. package/lib/rsi-source-maintenance.d.ts.map +1 -1
  143. package/lib/rsi-source-maintenance.js +64 -5
  144. package/lib/rsi-source-maintenance.js.map +1 -1
  145. package/lib/rsi-source-update.js +2 -2
  146. package/lib/rsi-source-update.js.map +1 -1
  147. package/lib/service.d.ts.map +1 -1
  148. package/lib/service.js +1 -0
  149. package/lib/service.js.map +1 -1
  150. package/lib/setup-profile.d.ts.map +1 -1
  151. package/lib/setup-profile.js +1 -0
  152. package/lib/setup-profile.js.map +1 -1
  153. package/lib/version.d.ts +1 -1
  154. package/lib/version.js +1 -1
  155. package/package.json +21 -21
@@ -20,6 +20,9 @@ export interface RsiSetupArgs {
20
20
  dockerPath?: string;
21
21
  prepareAuthorities?: boolean;
22
22
  installOwner?: boolean;
23
+ /** Read-only onboarding wait: poll until the owner's first Lark DM binding exists. */
24
+ waitOwnerDm?: boolean;
25
+ timeoutSeconds?: number;
23
26
  ackExistingAutomations?: boolean;
24
27
  /** Installer's pre-stop source and destination inventories; never parsed from CLI. */
25
28
  expectedAutomationInventories?: RsiAutomationInventories;
@@ -59,5 +62,22 @@ export declare function configureRsiSetupLocked(args: RsiSetupArgs, ports?: RsiS
59
62
  mode: string;
60
63
  profiles: readonly string[];
61
64
  }>;
65
+ export interface OwnerDmWaitResult {
66
+ mode: 'ready' | 'timeout' | 'ambiguous';
67
+ bindings: number;
68
+ }
69
+ /**
70
+ * Onboarding helper: read-only poll of the delivery database until the owner's
71
+ * first Lark DM has produced exactly one active owner binding. It never creates
72
+ * or widens a binding; owner authorization stays with the Lark DSH-CONNECT flow.
73
+ * A missing database is "not yet" because the Host creates it on first message.
74
+ */
75
+ export declare function waitForOwnerDmBinding(input: {
76
+ profile: string;
77
+ dshHome: string;
78
+ timeoutMs: number;
79
+ intervalMs?: number;
80
+ signal?: AbortSignal;
81
+ }, ports?: Pick<RsiSetupPorts, 'dump' | 'snapshot'>, sleep?: (ms: number, signal?: AbortSignal) => Promise<void>, now?: () => number): Promise<OwnerDmWaitResult>;
62
82
  export declare function runRsiSetup(argv?: readonly string[]): Promise<void>;
63
83
  //# sourceMappingURL=rsi-setup.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"rsi-setup.d.ts","sourceRoot":"","sources":["../src/rsi-setup.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"rsi-setup.d.ts","sourceRoot":"","sources":["../src/rsi-setup.ts"],"names":[],"mappings":"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"}
package/lib/rsi-setup.js CHANGED
@@ -14,6 +14,7 @@ import { installDshResidentService } from './resident.js';
14
14
  import { prepareRsiSourceWorkspace } from './rsi-source.js';
15
15
  import { prepareRsiBuildEnvironment, RsiBuildUnavailableError } from './rsi-build.js';
16
16
  import { prepareRsiReleaseBuildEnvironment, RsiReleaseBuildUnavailableError } from './rsi-release-build.js';
17
+ import { prepareLinuxRsiRuntime, LinuxRsiRuntimeUnavailableError } from './rsi-linux-runtime-bootstrap.js';
17
18
  import { prepareRsiAuthorityRuntime } from './rsi-authority-runtime.js';
18
19
  import { prepareRsiAuthorityResources } from './rsi-authority-resources.js';
19
20
  import { version } from './version.js';
@@ -92,6 +93,14 @@ export function parseRsiSetupArgs(argv) {
92
93
  result.prepareAuthorities = true;
93
94
  else if (key === '--install-owner')
94
95
  result.installOwner = true;
96
+ else if (key === '--wait-owner-dm')
97
+ result.waitOwnerDm = true;
98
+ else if (key === '--timeout-seconds') {
99
+ const value = argv[++i];
100
+ if (!value || !/^[1-9][0-9]{0,4}$/u.test(value) || Number(value) > 3600)
101
+ fail('--timeout-seconds requires an integer from 1 to 3600');
102
+ result.timeoutSeconds = Number(value);
103
+ }
95
104
  else if (key === '--ack-existing-automations')
96
105
  result.ackExistingAutomations = true;
97
106
  else if (key === '--install-local-cohort')
@@ -128,6 +137,19 @@ export function parseRsiSetupArgs(argv) {
128
137
  }
129
138
  if (result.help)
130
139
  return result;
140
+ if (result.timeoutSeconds !== undefined && !result.waitOwnerDm)
141
+ fail('--timeout-seconds requires --wait-owner-dm');
142
+ if (result.waitOwnerDm) {
143
+ if (result.manifestPath || result.apply || result.rollback || result.start || result.confirmStopped || result.installOwner
144
+ || result.prepareSource || result.prepareBuild || result.prepareAuthorities || result.optionalBuild || result.dockerPath
145
+ || result.sourceRepository || result.ackExistingAutomations || result.installLocalCohort || result.bundles
146
+ || result.prepareLocalUpdate || result.addMemoryLearning) {
147
+ fail('owner DM wait cannot be combined with other operations');
148
+ }
149
+ if (!isAbsolute(result.dshHome) || !result.profile || !profilePattern.test(result.profile))
150
+ fail('owner DM wait requires --profile and absolute DSH_HOME');
151
+ return result;
152
+ }
131
153
  if (result.addMemoryLearning && !result.prepareLocalUpdate)
132
154
  fail('--add-memory-learning requires --prepare-local-update');
133
155
  if (result.ackExistingAutomations && (!result.installOwner && !result.apply || result.rollback
@@ -136,12 +158,18 @@ export function parseRsiSetupArgs(argv) {
136
158
  if (result.prepareLocalUpdate) {
137
159
  if (result.installLocalCohort || result.installOwner || result.prepareSource || result.prepareBuild
138
160
  || result.prepareAuthorities || result.manifestPath || result.apply || result.rollback || result.start
139
- || result.confirmStopped || result.optionalBuild || result.dockerPath || result.bundles)
161
+ || result.confirmStopped || result.optionalBuild || result.bundles)
140
162
  fail('local update preparation cannot be combined with other operations');
141
163
  if (!isAbsolute(result.dshHome) || !result.profile || !profilePattern.test(result.profile))
142
164
  fail('local update preparation requires --profile and absolute DSH_HOME');
143
165
  if (result.sourceRepository && !isAbsolute(result.sourceRepository))
144
166
  fail('--source-repository must be absolute');
167
+ // Linux defaults to the native runtime; an explicit absolute --docker-path
168
+ // keeps a legacy image receipt replayable during coexistence.
169
+ if (result.dockerPath && process.platform === 'darwin')
170
+ fail('--docker-path is not supported by macOS native build preparation');
171
+ if (result.dockerPath && !isAbsolute(result.dockerPath))
172
+ fail('--docker-path must be absolute');
145
173
  return result;
146
174
  }
147
175
  if (result.bundles && !result.installLocalCohort)
@@ -662,12 +690,60 @@ export async function configureRsiSetupLocked(args, ports = rsiSetupPorts) {
662
690
  return { mode: args.start ? 'services-started' : 'configured', profiles: pair };
663
691
  })();
664
692
  }
693
+ /**
694
+ * Onboarding helper: read-only poll of the delivery database until the owner's
695
+ * first Lark DM has produced exactly one active owner binding. It never creates
696
+ * or widens a binding; owner authorization stays with the Lark DSH-CONNECT flow.
697
+ * A missing database is "not yet" because the Host creates it on first message.
698
+ */
699
+ export async function waitForOwnerDmBinding(input, ports = rsiSetupPorts, sleep = (ms, signal) => new Promise((resolveSleep, reject) => {
700
+ const timer = setTimeout(resolveSleep, ms);
701
+ signal?.addEventListener('abort', () => { clearTimeout(timer); reject(signal.reason); }, { once: true });
702
+ }), now = Date.now) {
703
+ const effective = ports.dump(input.profile, input.dshHome);
704
+ const deadline = now() + input.timeoutMs, interval = input.intervalMs ?? 3_000;
705
+ let bindings = 0;
706
+ for (;;) {
707
+ input.signal?.throwIfAborted();
708
+ try {
709
+ bindings = (await ports.snapshot(effective, input.dshHome)).bindings.length;
710
+ }
711
+ catch {
712
+ bindings = 0;
713
+ }
714
+ if (bindings === 1)
715
+ return { mode: 'ready', bindings };
716
+ if (bindings > 1)
717
+ return { mode: 'ambiguous', bindings };
718
+ if (now() >= deadline)
719
+ return { mode: 'timeout', bindings };
720
+ await sleep(Math.min(interval, Math.max(0, deadline - now())), input.signal);
721
+ }
722
+ }
665
723
  export async function runRsiSetup(argv = process.argv.slice(2)) {
666
724
  const args = parseRsiSetupArgs(argv);
667
725
  if (args.help) {
668
- process.stdout.write('Usage: dsh-rsi-setup --manifest <private.json> [--dsh-home <absolute>] [--apply --confirm-hosts-stopped [--ack-existing-automations] [--start] | --rollback --confirm-hosts-stopped]\n dsh-rsi-setup --prepare-source --profile <name> [--dsh-home <absolute>] [--source-repository <local-absolute>]\n dsh-rsi-setup --prepare-build --profile <name> [--dsh-home <absolute>] [--source-repository <local-absolute>] [--docker-path <absolute>] [--optional-build]\n dsh-rsi-setup --prepare-authorities --profile <name> [--dsh-home <absolute>]\n dsh-rsi-setup --install-owner --profile <name> [--dsh-home <absolute>] [--source-repository <local-absolute>] [--ack-existing-automations]\n dsh-rsi-setup --install-local-cohort --profile <name> --source-repository <local-absolute> --bundle <slug> [--bundle <slug> ...] [--dsh-home <absolute>]\n--ack-existing-automations acknowledges active or paused durable rows when enabling or switching an Automation scheduler; accepted only with --install-owner or --apply, and does not bypass inventory drift checks.\nDefault: validate installed profiles and finite authority configuration without changing profiles.\nSource preparation creates a private checkout and release repository for the installed version. Build preparation also prepares private authority tools, signing identities and local release storage on Linux, creates an offline image and exports a pinned native release toolchain/store/cache; --optional-build reports which build prerequisites are unavailable. Authority preparation alone needs neither Docker nor a source checkout and does not issue grants or start Hosts.\n');
726
+ process.stdout.write('Usage: dsh-rsi-setup --manifest <private.json> [--dsh-home <absolute>] [--apply --confirm-hosts-stopped [--ack-existing-automations] [--start] | --rollback --confirm-hosts-stopped]\n dsh-rsi-setup --prepare-source --profile <name> [--dsh-home <absolute>] [--source-repository <local-absolute>]\n dsh-rsi-setup --prepare-build --profile <name> [--dsh-home <absolute>] [--source-repository <local-absolute>] [--docker-path <absolute>] [--optional-build]\n dsh-rsi-setup --prepare-authorities --profile <name> [--dsh-home <absolute>]\n dsh-rsi-setup --install-owner --profile <name> [--dsh-home <absolute>] [--source-repository <local-absolute>] [--ack-existing-automations]\n dsh-rsi-setup --wait-owner-dm --profile <name> [--dsh-home <absolute>] [--timeout-seconds <1-3600>]\n dsh-rsi-setup --install-local-cohort --profile <name> --source-repository <local-absolute> --bundle <slug> [--bundle <slug> ...] [--dsh-home <absolute>]\n--ack-existing-automations acknowledges active or paused durable rows when enabling or switching an Automation scheduler; accepted only with --install-owner or --apply, and does not bypass inventory drift checks.\nDefault: validate installed profiles and finite authority configuration without changing profiles.\nSource preparation creates a private checkout and release repository for the installed version. Build preparation also prepares private authority tools, signing identities and local release storage on Linux, prepares a pinned native offline runtime by default and exports its release toolchain/store/cache (--docker-path instead prepares the legacy offline image); --optional-build reports which build prerequisites are unavailable. Authority preparation alone needs neither Docker nor a source checkout and does not issue grants or start Hosts.\n');
669
727
  process.stdout.write('macOS: --prepare-build installs a pinned private Node and frozen manifest-only dependencies for offline Seatbelt checks; --docker-path is rejected and --optional-build does not suppress native preparation failure. --install-owner configures a native launchd Host with finite memory learning and verified plugin creation. Source replacement/release remains Linux-only.\n');
670
- process.stdout.write(' dsh-rsi-setup --prepare-local-update --profile <name> [--dsh-home <absolute>] [--source-repository <local-absolute>] [--add-memory-learning]\nPrepare local update source and tarballs outside the active Home; does not install or activate them. --add-memory-learning explicitly prepares the disabled learner bundle for a verified pre-owner installation.\n');
728
+ process.stdout.write(' dsh-rsi-setup --prepare-local-update --profile <name> [--dsh-home <absolute>] [--source-repository <local-absolute>] [--add-memory-learning] [--docker-path <absolute>]\nPrepare local update source and tarballs outside the active Home; does not install or activate them. Linux builds with the native runtime by default; --docker-path keeps the legacy image builder. --add-memory-learning explicitly prepares the disabled learner bundle for a verified pre-owner installation.\n');
729
+ return;
730
+ }
731
+ if (args.waitOwnerDm) {
732
+ const controller = new AbortController();
733
+ const cancel = () => controller.abort(new Error('owner DM wait interrupted'));
734
+ process.once('SIGINT', cancel);
735
+ process.once('SIGTERM', cancel);
736
+ try {
737
+ const result = await waitForOwnerDmBinding({ profile: args.profile, dshHome: args.dshHome,
738
+ timeoutMs: (args.timeoutSeconds ?? 600) * 1_000, signal: controller.signal });
739
+ process.stdout.write(`${JSON.stringify(result)}\n`);
740
+ if (result.mode !== 'ready')
741
+ process.exitCode = 3;
742
+ }
743
+ finally {
744
+ process.off('SIGINT', cancel);
745
+ process.off('SIGTERM', cancel);
746
+ }
671
747
  return;
672
748
  }
673
749
  if (args.prepareLocalUpdate) {
@@ -680,7 +756,8 @@ export async function runRsiSetup(argv = process.argv.slice(2)) {
680
756
  const { readRsiLocalCohort } = await import('./rsi-local-cohort.js');
681
757
  const sourceRepository = args.sourceRepository ?? (await readRsiLocalCohort({ dshHome: args.dshHome, profile: args.profile })).sourceRepository;
682
758
  const prepared = await prepareRsiLocalUpdate({ dshHome: args.dshHome, profile: args.profile, sourceRepository,
683
- ...(args.addMemoryLearning ? { rootExtension: 'memory-learning' } : {}), signal: controller.signal });
759
+ ...(args.addMemoryLearning ? { rootExtension: 'memory-learning' } : {}),
760
+ ...(args.dockerPath ? { dockerPath: args.dockerPath } : {}), signal: controller.signal });
684
761
  process.stdout.write(`${JSON.stringify({ mode: prepared.mode, root: prepared.root, profile: prepared.profile,
685
762
  sourceCommit: prepared.source.sourceCommit, version: prepared.cohort.version,
686
763
  packages: prepared.cohort.packages.length, receiptDigest: prepared.receiptDigest,
@@ -769,6 +846,25 @@ export async function runRsiSetup(argv = process.argv.slice(2)) {
769
846
  return { ...provisioned, sourceBuild: build.sourceBuild, creationBuild: nativeRsiCreationBuild(build),
770
847
  capabilities: ['native-memory-learning', 'verified-plugin-creation', 'dynamic-tool-adoption'] };
771
848
  }
849
+ // Linux prepares the schema 3 native runtime by default: no Docker
850
+ // CLI, daemon, socket or image is involved. An explicit --docker-path
851
+ // keeps the legacy image path available during migration coexistence.
852
+ if (process.platform === 'linux' && !args.dockerPath) {
853
+ const build = await prepareLinuxRsiRuntime({ dshHome: args.dshHome, profile: args.profile, source,
854
+ signal: controller.signal });
855
+ try {
856
+ const release = await prepareRsiReleaseBuildEnvironment({ dshHome: args.dshHome, profile: args.profile,
857
+ build, signal: controller.signal });
858
+ return { ...provisioned, sourceBuild: build, releaseBuild: release };
859
+ }
860
+ catch (error) {
861
+ controller.signal.throwIfAborted();
862
+ if (!args.optionalBuild || !(error instanceof RsiReleaseBuildUnavailableError))
863
+ throw error;
864
+ process.stderr.write(`自迭代发布构建环境未就绪:${error.message}。已保留源码、验证运行时与原生工具链。\n`);
865
+ return { ...provisioned, sourceBuild: build, releaseBuildUnavailable: error.message };
866
+ }
867
+ }
772
868
  const build = await prepareRsiBuildEnvironment({ dshHome: args.dshHome, profile: args.profile, source,
773
869
  dockerPath: args.dockerPath, signal: controller.signal });
774
870
  try {
@@ -786,7 +882,8 @@ export async function runRsiSetup(argv = process.argv.slice(2)) {
786
882
  }
787
883
  catch (error) {
788
884
  controller.signal.throwIfAborted();
789
- if (!args.optionalBuild || !(error instanceof RsiBuildUnavailableError))
885
+ if (!args.optionalBuild
886
+ || !(error instanceof RsiBuildUnavailableError || error instanceof LinuxRsiRuntimeUnavailableError))
790
887
  throw error;
791
888
  process.stderr.write(`自迭代构建环境未就绪:${error.message}。已保留源码准备结果。\n`);
792
889
  return { ...provisioned, buildUnavailable: error.message };
@@ -1 +1 @@
1
- {"version":3,"file":"rsi-setup.js","sourceRoot":"","sources":["../src/rsi-setup.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"rsi-setup.js","sourceRoot":"","sources":["../src/rsi-setup.ts"],"names":[],"mappings":"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"}
@@ -7,12 +7,20 @@ export interface RsiSourceMaintenanceInput {
7
7
  signal?: AbortSignal;
8
8
  }
9
9
  /** Read a copied or live source through its physical path while all receipts retain logical Home paths. */
10
- declare function readSourceState(input: RsiSourceMaintenanceInput, checkCohort: boolean): Promise<{
10
+ declare function readSourceState(input: RsiSourceMaintenanceInput, checkCohort: boolean, snapshotDigest?: string): Promise<{
11
11
  workspace: RsiSourceWorkspace;
12
12
  originalBootstrapDigest: string;
13
13
  records: readonly SourceMaintenanceRecord[];
14
14
  anchor: SourceMaintenanceAnchor;
15
15
  }>;
16
+ export interface RsiSourceMaintenanceSnapshotInput extends RsiSourceMaintenanceInput {
17
+ expectedStateDigest: string;
18
+ }
19
+ /** Read-only recovery of an already frozen source identity after the original
20
+ * Home was renamed away. Never substitutes a new Host key for the frozen anchor.
21
+ * Caller still owns the lifecycle lock and separately verifies manifest directory
22
+ * identity/runtime inodes: this API proves source identity, not directory identity. */
23
+ export declare function readRsiSourceMaintenanceSnapshot(input: RsiSourceMaintenanceSnapshotInput): ReturnType<typeof readSourceState>;
16
24
  export declare function readRsiSourceMaintenance(input: RsiSourceMaintenanceInput): ReturnType<typeof readSourceState>;
17
25
  export interface ApplyRsiSourceMaintenanceInput extends RsiSourceMaintenanceInput {
18
26
  sourceRepository: string;
@@ -1 +1 @@
1
- {"version":3,"file":"rsi-source-maintenance.d.ts","sourceRoot":"","sources":["../src/rsi-source-maintenance.ts"],"names":[],"mappings":"AAIA,OAAO,EACL,KAAK,uBAAuB,EAAE,KAAK,uBAAuB,EAAE,MAAM,oCAAoC,CAAA;AAExG,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,iBAAiB,CAAA;AAgMzD,MAAM,WAAW,yBAAyB;IACxC,WAAW,EAAE,MAAM,CAAA;IACnB,YAAY,EAAE,MAAM,CAAA;IACpB,OAAO,EAAE,MAAM,CAAA;IACf,MAAM,CAAC,EAAE,WAAW,CAAA;CACrB;AAKD,2GAA2G;AAC3G,iBAAe,eAAe,CAAC,KAAK,EAAE,yBAAyB,EAAE,WAAW,EAAE,OAAO,GAAG,OAAO,CAAC;IAC9F,SAAS,EAAE,kBAAkB,CAAC;IAAC,uBAAuB,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,SAAS,uBAAuB,EAAE,CAAA;IAC3G,MAAM,EAAE,uBAAuB,CAAA;CAChC,CAAC,CA8BD;AAED,wBAAsB,wBAAwB,CAAC,KAAK,EAAE,yBAAyB,GAAG,UAAU,CAAC,OAAO,eAAe,CAAC,CAEnH;AAED,MAAM,WAAW,8BAA+B,SAAQ,yBAAyB;IAC/E,gBAAgB,EAAE,MAAM,CAAA;IACxB,aAAa,EAAE,MAAM,CAAA;IACrB,OAAO,EAAE,SAAS,uBAAuB,EAAE,CAAA;CAC5C;AAED,mHAAmH;AACnH,wBAAsB,gCAAgC,CAAC,KAAK,EAAE,8BAA8B,GAAG,OAAO,CAAC,OAAO,CAAC,UAAU,CAAC,OAAO,wBAAwB,CAAC,CAAC,CAAC,CAiF3J"}
1
+ {"version":3,"file":"rsi-source-maintenance.d.ts","sourceRoot":"","sources":["../src/rsi-source-maintenance.ts"],"names":[],"mappings":"AAIA,OAAO,EACL,KAAK,uBAAuB,EAAE,KAAK,uBAAuB,EAAE,MAAM,oCAAoC,CAAA;AAExG,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,iBAAiB,CAAA;AAuMzD,MAAM,WAAW,yBAAyB;IACxC,WAAW,EAAE,MAAM,CAAA;IACnB,YAAY,EAAE,MAAM,CAAA;IACpB,OAAO,EAAE,MAAM,CAAA;IACf,MAAM,CAAC,EAAE,WAAW,CAAA;CACrB;AAKD,2GAA2G;AAC3G,iBAAe,eAAe,CAAC,KAAK,EAAE,yBAAyB,EAAE,WAAW,EAAE,OAAO,EAAE,cAAc,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC;IACvH,SAAS,EAAE,kBAAkB,CAAC;IAAC,uBAAuB,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,SAAS,uBAAuB,EAAE,CAAA;IAC3G,MAAM,EAAE,uBAAuB,CAAA;CAChC,CAAC,CAoDD;AAWD,MAAM,WAAW,iCAAkC,SAAQ,yBAAyB;IAClF,mBAAmB,EAAE,MAAM,CAAA;CAC5B;AAED;;;uFAGuF;AACvF,wBAAsB,gCAAgC,CAAC,KAAK,EAAE,iCAAiC,GAAG,UAAU,CAAC,OAAO,eAAe,CAAC,CAGnI;AAED,wBAAsB,wBAAwB,CAAC,KAAK,EAAE,yBAAyB,GAAG,UAAU,CAAC,OAAO,eAAe,CAAC,CAEnH;AAED,MAAM,WAAW,8BAA+B,SAAQ,yBAAyB;IAC/E,gBAAgB,EAAE,MAAM,CAAA;IACxB,aAAa,EAAE,MAAM,CAAA;IACrB,OAAO,EAAE,SAAS,uBAAuB,EAAE,CAAA;CAC5C;AAED,mHAAmH;AACnH,wBAAsB,gCAAgC,CAAC,KAAK,EAAE,8BAA8B,GAAG,OAAO,CAAC,OAAO,CAAC,UAAU,CAAC,OAAO,wBAAwB,CAAC,CAAC,CAAC,CAiF3J"}
@@ -1,6 +1,6 @@
1
1
  import { createHash, createPrivateKey, createPublicKey } from 'node:crypto';
2
2
  import { lstat, realpath, rename, rm } from 'node:fs/promises';
3
- import { isAbsolute, join, resolve, sep } from 'node:path';
3
+ import { dirname, isAbsolute, join, resolve, sep } from 'node:path';
4
4
  import { isDeepStrictEqual } from 'node:util';
5
5
  import { sourceMaintenanceDigest, verifySourceMaintenanceRecords } from '@dsh-enhanced/plugin-control-plane';
6
6
  import { rsiBuildResources as io } from './rsi-build.js';
@@ -10,6 +10,15 @@ const VERSION = /^[0-9]+\.[0-9]+\.[0-9]+(?:-[0-9A-Za-z]+(?:[.-][0-9A-Za-z]+)*)?$
10
10
  const PROFILE = /^[A-Za-z0-9][A-Za-z0-9._-]{0,63}$/u;
11
11
  const hash = (value) => createHash('sha256').update(value).digest('hex');
12
12
  const fail = (message) => { throw new Error(`rsi source maintenance: ${message}`); };
13
+ // Existing installer selection.sourceDigest protocol: lexical Object.keys.sort(),
14
+ // with no undefined filtering. Do not substitute the control-plane signing encoder.
15
+ function installerSnapshotCanonical(value) {
16
+ if (value === null || typeof value !== 'object')
17
+ return JSON.stringify(value);
18
+ if (Array.isArray(value))
19
+ return `[${value.map(installerSnapshotCanonical).join(',')}]`;
20
+ return `{${Object.keys(value).sort().map(key => `${JSON.stringify(key)}:${installerSnapshotCanonical(value[key])}`).join(',')}}`;
21
+ }
13
22
  const inside = (root, path) => path === root || path.startsWith(`${root}${sep}`);
14
23
  function canonical(path) { return typeof path === 'string' && isAbsolute(path) && resolve(path) === path && !path.includes('\0'); }
15
24
  function object(value, keys) {
@@ -214,10 +223,20 @@ function validateInput(input) {
214
223
  fail('invalid source maintenance path');
215
224
  }
216
225
  /** Read a copied or live source through its physical path while all receipts retain logical Home paths. */
217
- async function readSourceState(input, checkCohort) {
226
+ async function readSourceState(input, checkCohort, snapshotDigest) {
218
227
  validateInput(input);
219
- const physicalHome = await realpath(input.physicalHome);
220
228
  const signal = AbortSignal.any([input.signal ?? new AbortController().signal, AbortSignal.timeout(180_000)]);
229
+ signal.throwIfAborted();
230
+ if (snapshotDigest !== undefined) {
231
+ if (!HASH.test(snapshotDigest) || input.logicalHome === input.physicalHome
232
+ || inside(input.logicalHome, input.physicalHome) || inside(input.physicalHome, input.logicalHome))
233
+ fail('invalid frozen snapshot binding');
234
+ await absentLogicalHome(input.logicalHome);
235
+ await io.directory(input.physicalHome, false);
236
+ if (await realpath(input.physicalHome) !== input.physicalHome)
237
+ fail('snapshot physical Home is not canonical');
238
+ }
239
+ const physicalHome = await realpath(input.physicalHome);
221
240
  const saved = await original(input.logicalHome, physicalHome, input.profile);
222
241
  const sidecar = join(physicalHome, 'rsi-sources', input.profile, 'maintenance.json');
223
242
  let records = [];
@@ -232,7 +251,9 @@ async function readSourceState(input, checkCohort) {
232
251
  }
233
252
  // Resolve the Host signing anchor on every read, including a live Home with no
234
253
  // sidecar, so maintenance producers can extend the chain without re-reading it.
235
- const anchor = await trustedAnchor(input.logicalHome, physicalHome, input.profile, saved);
254
+ const anchor = snapshotDigest === undefined
255
+ ? await trustedAnchor(input.logicalHome, physicalHome, input.profile, saved)
256
+ : await authorityAnchor(input.logicalHome, physicalHome, input.profile, saved.workspace);
236
257
  if (hasSidecar) {
237
258
  const parsed = JSON.parse((await privateFile(sidecar, 4_194_304)).toString('utf8'));
238
259
  if (!Array.isArray(parsed) || parsed.length < 1 || parsed.length > 256)
@@ -247,8 +268,46 @@ async function readSourceState(input, checkCohort) {
247
268
  fail('source maintenance tip chain differs');
248
269
  }
249
270
  }
250
- return { workspace: await repoState(saved, records, input.logicalHome, physicalHome, input.profile, signal, checkCohort),
271
+ const result = { workspace: await repoState(saved, records, input.logicalHome, physicalHome, input.profile, signal, checkCohort),
251
272
  originalBootstrapDigest: hash(saved.bytes), records, anchor };
273
+ if (snapshotDigest !== undefined) {
274
+ // Empty history still needs an actual matching cohort; repoState's ordinary
275
+ // bootstrap-only path intentionally preserves its existing read contract.
276
+ const cohort = await cohortDigest(input.logicalHome, physicalHome, input.profile);
277
+ if (cohort.sourceCommit !== result.workspace.sourceCommit || cohort.version !== result.workspace.version)
278
+ fail('snapshot source/cohort identity differs');
279
+ if (hash(installerSnapshotCanonical({ anchor: result.anchor, records: result.records, workspace: result.workspace,
280
+ originalBootstrapDigest: result.originalBootstrapDigest })) !== snapshotDigest)
281
+ fail('frozen source snapshot digest differs');
282
+ await io.directory(input.physicalHome, false);
283
+ signal.throwIfAborted();
284
+ await absentLogicalHome(input.logicalHome);
285
+ }
286
+ return result;
287
+ }
288
+ async function absentLogicalHome(logicalHome) {
289
+ // lstat distinguishes a truly absent final entry from a dangling symlink.
290
+ // Do not treat inaccessible ancestors or any other I/O error as absence.
291
+ if (await realpath(dirname(logicalHome)) !== dirname(logicalHome))
292
+ fail('snapshot logical parent is not canonical');
293
+ try {
294
+ await lstat(logicalHome);
295
+ }
296
+ catch (error) {
297
+ if (error.code === 'ENOENT')
298
+ return;
299
+ throw error;
300
+ }
301
+ fail('snapshot requires an absent logical Home');
302
+ }
303
+ /** Read-only recovery of an already frozen source identity after the original
304
+ * Home was renamed away. Never substitutes a new Host key for the frozen anchor.
305
+ * Caller still owns the lifecycle lock and separately verifies manifest directory
306
+ * identity/runtime inodes: this API proves source identity, not directory identity. */
307
+ export async function readRsiSourceMaintenanceSnapshot(input) {
308
+ if (typeof input.expectedStateDigest !== 'string' || !HASH.test(input.expectedStateDigest))
309
+ fail('snapshot requires an explicit frozen state digest');
310
+ return readSourceState(input, true, input.expectedStateDigest);
252
311
  }
253
312
  export async function readRsiSourceMaintenance(input) {
254
313
  return readSourceState(input, true);