@dsh-enhanced/lark-channel 0.1.49 → 0.1.53

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 (73) hide show
  1. package/README.md +2 -1
  2. package/docs/rsi-setup.md +27 -6
  3. package/docs/setup.md +2 -0
  4. package/lib/launchd-control.d.ts +24 -0
  5. package/lib/launchd-control.d.ts.map +1 -0
  6. package/lib/launchd-control.js +68 -0
  7. package/lib/launchd-control.js.map +1 -0
  8. package/lib/launchd-identity.d.ts +34 -0
  9. package/lib/launchd-identity.d.ts.map +1 -0
  10. package/lib/launchd-identity.js +184 -0
  11. package/lib/launchd-identity.js.map +1 -0
  12. package/lib/launchd-target-lock.d.ts +6 -0
  13. package/lib/launchd-target-lock.d.ts.map +1 -0
  14. package/lib/launchd-target-lock.js +48 -0
  15. package/lib/launchd-target-lock.js.map +1 -0
  16. package/lib/launchd.d.ts +18 -0
  17. package/lib/launchd.d.ts.map +1 -1
  18. package/lib/launchd.js +211 -54
  19. package/lib/launchd.js.map +1 -1
  20. package/lib/rsi-bootstrap-manifest.d.ts.map +1 -1
  21. package/lib/rsi-bootstrap-manifest.js +3 -24
  22. package/lib/rsi-bootstrap-manifest.js.map +1 -1
  23. package/lib/rsi-build.d.ts +10 -1
  24. package/lib/rsi-build.d.ts.map +1 -1
  25. package/lib/rsi-build.js +101 -27
  26. package/lib/rsi-build.js.map +1 -1
  27. package/lib/rsi-creation-build.d.ts +1 -0
  28. package/lib/rsi-creation-build.d.ts.map +1 -1
  29. package/lib/rsi-creation-build.js +60 -30
  30. package/lib/rsi-creation-build.js.map +1 -1
  31. package/lib/rsi-install.d.ts +1 -1
  32. package/lib/rsi-install.d.ts.map +1 -1
  33. package/lib/rsi-install.js.map +1 -1
  34. package/lib/rsi-local-install.d.ts +31 -3
  35. package/lib/rsi-local-install.d.ts.map +1 -1
  36. package/lib/rsi-local-install.js +117 -16
  37. package/lib/rsi-local-install.js.map +1 -1
  38. package/lib/rsi-memory-learning.d.ts +8 -0
  39. package/lib/rsi-memory-learning.d.ts.map +1 -1
  40. package/lib/rsi-memory-learning.js +28 -0
  41. package/lib/rsi-memory-learning.js.map +1 -1
  42. package/lib/rsi-native-install.d.ts +38 -0
  43. package/lib/rsi-native-install.d.ts.map +1 -0
  44. package/lib/rsi-native-install.js +254 -0
  45. package/lib/rsi-native-install.js.map +1 -0
  46. package/lib/rsi-native-launchd.d.ts +7 -0
  47. package/lib/rsi-native-launchd.d.ts.map +1 -0
  48. package/lib/rsi-native-launchd.js +49 -0
  49. package/lib/rsi-native-launchd.js.map +1 -0
  50. package/lib/rsi-native-profile.d.ts +64 -0
  51. package/lib/rsi-native-profile.d.ts.map +1 -0
  52. package/lib/rsi-native-profile.js +283 -0
  53. package/lib/rsi-native-profile.js.map +1 -0
  54. package/lib/rsi-native-runtime-bootstrap.d.ts +35 -0
  55. package/lib/rsi-native-runtime-bootstrap.d.ts.map +1 -0
  56. package/lib/rsi-native-runtime-bootstrap.js +385 -0
  57. package/lib/rsi-native-runtime-bootstrap.js.map +1 -0
  58. package/lib/rsi-plugin-creation.d.ts +2 -1
  59. package/lib/rsi-plugin-creation.d.ts.map +1 -1
  60. package/lib/rsi-plugin-creation.js +16 -6
  61. package/lib/rsi-plugin-creation.js.map +1 -1
  62. package/lib/rsi-setup.d.ts.map +1 -1
  63. package/lib/rsi-setup.js +24 -8
  64. package/lib/rsi-setup.js.map +1 -1
  65. package/lib/rsi-source.d.ts.map +1 -1
  66. package/lib/rsi-source.js +121 -9
  67. package/lib/rsi-source.js.map +1 -1
  68. package/lib/setup.d.ts.map +1 -1
  69. package/lib/setup.js +129 -16
  70. package/lib/setup.js.map +1 -1
  71. package/lib/version.d.ts +1 -1
  72. package/lib/version.js +1 -1
  73. package/package.json +21 -20
@@ -0,0 +1,283 @@
1
+ import { createHash } from 'node:crypto';
2
+ import { isAbsolute, join, resolve } from 'node:path';
3
+ import { isDeepStrictEqual } from 'node:util';
4
+ import { normalizeConfig } from '@dsh-enhanced/assistant-growth-driver';
5
+ import { defaultHostAttestationPolicy, normalizeControlPlaneConfig, runtimeConfigDigest } from '@dsh-enhanced/plugin-control-plane';
6
+ import { isMap, isSeq, parseDocument } from 'yaml';
7
+ import { createRsiMemoryLearningSetup } from './rsi-memory-learning.js';
8
+ import { resolveRsiOwnerRoute } from './rsi-owner-profile.js';
9
+ import { createRsiPluginCreationSetup } from './rsi-plugin-creation.js';
10
+ import { rawLoaderConfig } from './rsi-bootstrap-manifest.js';
11
+ const day = 86_400_000;
12
+ const profilePattern = /^[A-Za-z0-9][A-Za-z0-9._-]{0,63}$/u;
13
+ const managed = {
14
+ personal: '@dsh-enhanced/personal-assistant', delivery: '@dsh-enhanced/assistant-delivery',
15
+ verifier: '@dsh-enhanced/assistant-verifier', growth: '@dsh-enhanced/assistant-growth-driver',
16
+ control: '@dsh-enhanced/plugin-control-plane', memory: '@dsh-enhanced/assistant-memory-learning',
17
+ };
18
+ const ids = Object.fromEntries(Object.entries(managed).map(([key, name]) => [key, `dsh-enhanced-${name.slice('@dsh-enhanced/'.length)}`]));
19
+ const prefix = 'rsi-native-';
20
+ function fail(message) { throw new Error(`rsi native profile: ${message}`); }
21
+ function absolute(value, label) {
22
+ if (typeof value !== 'string' || !isAbsolute(value) || resolve(value) !== value || value.includes('\0') || /[\r\n]/u.test(value))
23
+ fail(`${label} must be canonical absolute`);
24
+ return value;
25
+ }
26
+ function mapping(value, label) { if (!isMap(value))
27
+ fail(`${label} must be a mapping`); return value; }
28
+ function sequence(value, label) { if (!isSeq(value))
29
+ fail(`${label} must be a sequence`); return value; }
30
+ function parseRows(value, label) {
31
+ const document = parseDocument(value, { uniqueKeys: true });
32
+ if (document.errors.length)
33
+ fail(`invalid ${label}: ${document.errors[0].message}`);
34
+ const rows = sequence(document.contents ?? undefined, label), byId = new Map();
35
+ for (const item of rows.items) {
36
+ const entry = mapping(item, label), id = entry.get('id');
37
+ if (typeof id !== 'string' || !id || byId.has(id))
38
+ fail(`${label} has duplicate or invalid row id`);
39
+ byId.set(id, entry);
40
+ }
41
+ return { document, rows, byId };
42
+ }
43
+ function effectiveRow(rows, key, disabled = false) {
44
+ const result = rows.get(ids[key]);
45
+ if (!result || result.get('name') !== managed[key] || result.get('disabled') === true && !disabled)
46
+ fail(`${key} bundle missing or package identity differs`);
47
+ return result;
48
+ }
49
+ function options(row, label) { return mapping(row.get('config', true), `${label} config`); }
50
+ function plain(node, label) {
51
+ const value = node.toJSON();
52
+ if (!value || typeof value !== 'object' || Array.isArray(value))
53
+ fail(`${label} is not an object`);
54
+ return value;
55
+ }
56
+ function setExact(document, node, key, value, label) {
57
+ if (node.has(key) && !isDeepStrictEqual(node.get(key, true).toJSON(), value))
58
+ fail(`${label} conflicts with native grant`);
59
+ node.set(key, document.createNode(value));
60
+ }
61
+ function upsert(document, sequence, value, label) {
62
+ const matches = sequence.items.filter(item => isMap(item) && item.get('id') === value.id);
63
+ if (matches.length > 1 || matches.length === 1 && !isDeepStrictEqual(matches[0].toJSON(), value))
64
+ fail(`${label} conflicts with native grant`);
65
+ if (!matches.length)
66
+ sequence.add(document.createNode(value));
67
+ }
68
+ function copyConfig(out, effective, key) {
69
+ const effectiveConfig = effectiveRow(effective.byId, key);
70
+ const source = key === 'growth' && !effectiveConfig.has('config')
71
+ ? mapping(out.document.createNode({}), 'growth config') : options(effectiveConfig, key);
72
+ let row = out.byId.get(ids[key]);
73
+ if (!row) {
74
+ row = mapping(out.document.createNode({ id: ids[key] }), key);
75
+ out.rows.add(row);
76
+ out.byId.set(ids[key], row);
77
+ }
78
+ if (row.get('name') !== undefined && row.get('name') !== managed[key] || row.get('disabled') === true)
79
+ fail(`${key} patch override differs`);
80
+ // Retain !!js scalars and unrelated effective options verbatim.
81
+ row.set('config', source.clone());
82
+ return options(row, key);
83
+ }
84
+ function chooseModel(growth) {
85
+ const value = plain(growth, 'growth');
86
+ if (value.provider === undefined && value.model === undefined && value.reasoningEffort === undefined)
87
+ return {};
88
+ if (typeof value.provider !== 'string' || !value.provider || typeof value.model !== 'string' || !value.model
89
+ || value.reasoningEffort !== undefined && (typeof value.reasoningEffort !== 'string' || !value.reasoningEffort))
90
+ fail('existing growth model override is invalid');
91
+ return { provider: value.provider, model: value.model, ...(value.reasoningEffort ? { reasoningEffort: value.reasoningEffort } : {}) };
92
+ }
93
+ function rule(scope, id, subjectId, action, resourceKind, resourceId, initiator) {
94
+ return { id: `${prefix}${id}`, effect: 'allow', subject: { kind: subjectId === scope.preset ? 'agent' : 'background', id: subjectId,
95
+ workspace: scope.workspace, principal: scope.principal }, actions: [action], resource: { kind: resourceKind, id: resourceId },
96
+ context: { initiators: [initiator] } };
97
+ }
98
+ /** Pure profile composition: prepared identities/builds are inputs, and the caller owns I/O and activation. */
99
+ export function compileNativeRsiProfile(input) {
100
+ absolute(input.dshHome, 'dshHome');
101
+ if (!profilePattern.test(input.targetProfile) || !Number.isSafeInteger(input.now) || !Number.isSafeInteger(input.expiresAt)
102
+ || input.expiresAt <= input.now || input.expiresAt - input.now > 365 * day)
103
+ fail('profile or authority lifetime is invalid');
104
+ const resources = input.resources, installation = resources?.installationId;
105
+ if (resources?.schemaVersion !== 1 || resources.root !== join(input.dshHome, 'rsi-authorities', input.targetProfile)
106
+ || resources.stateRoot !== join(resources.root, 'state') || resources.configRoot !== join(resources.root, 'config')
107
+ || resources.catalog.path !== join(resources.root, 'catalog.json') || !installation)
108
+ fail('prepared resources differ from target installation');
109
+ for (const path of [input.source?.repository, input.source?.baseline.remote, input.observer?.socketPath,
110
+ input.observer?.keyPath, input.executor?.path])
111
+ absolute(path, 'prepared path');
112
+ if (input.source.schemaVersion !== 1 || input.sourceBuild.versioning !== 'patch'
113
+ || input.creationBuild.sourceCommit !== input.source.sourceCommit)
114
+ fail('creation build differs from prepared source');
115
+ if ('backend' in input.sourceBuild && input.sourceBuild.backend === 'macos-seatbelt') {
116
+ if (input.creationBuild.schemaVersion !== 2 || input.creationBuild.backend !== 'macos-seatbelt'
117
+ || !isDeepStrictEqual(input.creationBuild.runtime, input.sourceBuild.runtime))
118
+ fail('native creation runtime differs');
119
+ }
120
+ else {
121
+ if ('backend' in input.sourceBuild || input.creationBuild.schemaVersion !== 1
122
+ || input.creationBuild.sourceImage !== input.sourceBuild.image
123
+ || input.creationBuild.dockerPath !== input.sourceBuild.dockerPath
124
+ || input.creationBuild.socketPath !== input.sourceBuild.socketPath)
125
+ fail('creation build differs from prepared source');
126
+ }
127
+ if (!/^[a-f0-9]{64}$/u.test(input.executor.sha256) || !input.executor.id || !input.executor.version
128
+ || !Array.isArray(input.executor.environmentAllowlist))
129
+ fail('executor pin is invalid');
130
+ const effective = parseRows(input.targetEffective, 'effective profile'), out = parseRows(input.targetPatch, 'target patch');
131
+ for (const key of Object.keys(managed))
132
+ effectiveRow(effective.byId, key, key === 'memory');
133
+ for (const [id, row] of effective.byId)
134
+ if (id.startsWith('dsh-enhanced-')) {
135
+ const name = row.get('name');
136
+ if (typeof name !== 'string' || id !== `dsh-enhanced-${name.replace(/^@dsh-enhanced\//u, '')}` || !name.startsWith('@dsh-enhanced/'))
137
+ fail(`bundle ${id} package identity differs`);
138
+ }
139
+ const standalone = effective.byId.get('dsh-enhanced-assistant-automations');
140
+ if (standalone && standalone.get('disabled') !== true)
141
+ fail('standalone Automations conflicts with embedded provider');
142
+ const standaloneMemory = effective.byId.get('dsh-enhanced-personal-memory');
143
+ if (standaloneMemory && standaloneMemory.get('disabled') !== true)
144
+ fail('standalone Memory conflicts with embedded provider');
145
+ const delivery = options(effectiveRow(effective.byId, 'delivery'), 'delivery');
146
+ const resolved = resolveRsiOwnerRoute(plain(delivery, 'delivery'), input.owner, input.dshHome);
147
+ const owner = { authorityId: resolved.route.id, authorityHash: resolved.route.authorityHash, principalId: resolved.principal,
148
+ principalRecordId: input.owner.owner.id, principalVersion: input.owner.owner.version,
149
+ workspace: resolved.workspace, agentPreset: resolved.preset };
150
+ const scope = { ownerRouteId: owner.authorityId, principalId: owner.principalId, workspace: owner.workspace, preset: owner.agentPreset };
151
+ const creation = createRsiPluginCreationSetup({ resources, build: input.creationBuild, owner, now: input.now, expiresAt: input.expiresAt });
152
+ const memory = createRsiMemoryLearningSetup({ installationId: installation, stateRoot: resources.stateRoot,
153
+ owner, now: input.now, expiresAt: input.expiresAt });
154
+ const currentLearner = effectiveRow(effective.byId, 'memory', true);
155
+ if (currentLearner.get('disabled') !== true && !isDeepStrictEqual(plain(options(currentLearner, 'memory'), 'memory'), memory.learning))
156
+ fail('existing memory learner grant differs');
157
+ const growthCurrent = effectiveRow(effective.byId, 'growth');
158
+ const growth = { enabled: true, intervalMs: 0, maxReviewsPerWake: 1, minRepeatedSuccesses: 2,
159
+ budgetId: `rsi-reviews-${installation}`, budgetAmount: 1, ...chooseModel(growthCurrent.has('config') ? options(growthCurrent, 'growth') : mapping(out.document.createNode({}), 'growth')),
160
+ scope, workflowOwnerAnchored: { enabled: true },
161
+ usageLearning: { enabled: true, databasePath: join(resources.stateRoot, 'growth.sqlite'), scanBudgetId: `rsi-discovery-${installation}`, scanBudgetAmount: 1 },
162
+ pluginSourceProposals: { enabled: true, allowModification: false, allowCreation: true, allowRevision: false,
163
+ preparationMode: 'durable', repository: input.source.repository, maxPlansPerWake: 1, offline: true, planTtlMs: day } };
164
+ normalizeConfig(growth);
165
+ const sourceBuildForControl = 'backend' in input.sourceBuild
166
+ ? { ...input.sourceBuild, stateRoot: join(resources.stateRoot, 'native-source-build'),
167
+ authorityDigest: createHash('sha256').update(JSON.stringify({ installation, owner, sourceCommit: input.source.sourceCommit,
168
+ runtime: input.sourceBuild.runtime, expiresAt: input.expiresAt })).digest('hex'),
169
+ expiresAt: input.expiresAt, maxRuns: 1000, maxTotalDurationMs: day }
170
+ : input.sourceBuild;
171
+ const control = { catalogPath: resources.catalog.path, statePath: join(resources.stateRoot, 'control-plane'),
172
+ trustPath: join(resources.configRoot, 'native-trust.json'), sourceBuild: sourceBuildForControl,
173
+ sourceJobs: { authorityId: `source-jobs-${installation}`, expiresAt: input.expiresAt, maxSubmissions: 1000,
174
+ allowedModes: ['create'], repository: input.source.repository, baseline: { ...input.source.baseline }, creation: creation.creation,
175
+ ...scope, budgetId: `rsi-source-${installation}`, budgetAmount: 1 },
176
+ creationVerifications: creation.verifications, creationCapabilities: creation.capabilities,
177
+ runtimeObserver: { socketPath: input.observer.socketPath, keyPath: input.observer.keyPath,
178
+ profilePath: join(input.dshHome, 'profiles', input.targetProfile), targets: [] } };
179
+ // The observer pins the final Loader options after all mutations below.
180
+ if (resolved.created) {
181
+ const targetDelivery = copyConfig(out, effective, 'delivery');
182
+ const routes = sequence(targetDelivery.get('ownerRoutes', true), 'delivery ownerRoutes');
183
+ routes.add(out.document.createNode(resolved.authority));
184
+ }
185
+ const personal = copyConfig(out, effective, 'personal');
186
+ const policy = mapping(personal.get('assistantPolicy', true), 'assistantPolicy');
187
+ const automations = mapping(personal.get('assistantAutomations', true), 'assistantAutomations');
188
+ if (automations.get('allowUnbudgetedExecution') === true)
189
+ fail('unbudgeted Automations is forbidden');
190
+ automations.set('schedulerEnabled', true);
191
+ const budgets = sequence(policy.get('budgets', true), 'policy budgets');
192
+ const limits = { periodMs: day, reviews: 7, discovery: 1440, source: 7, memoryExtractions: memory.limits.extractions,
193
+ memoryScans: memory.limits.scans };
194
+ const existingGlobal = budgets.items.filter(item => isMap(item) && item.get('metric') === 'automation-runs'
195
+ && item.get('scope') === 'global' && item.get('periodMs') === day);
196
+ if (existingGlobal.length) {
197
+ const values = new Set(existingGlobal.map(item => item.get('limit')));
198
+ if (values.size !== 1 || !Number.isSafeInteger([...values][0]) || Number([...values][0]) < 1)
199
+ fail('global automation budget conflicts');
200
+ limits.reviews = Number([...values][0]);
201
+ }
202
+ for (const [id, limit, subject] of [[growth.budgetId, limits.reviews, 'global'],
203
+ [growth.usageLearning.scanBudgetId, limits.discovery, 'subject'],
204
+ [control.sourceJobs.budgetId, limits.source, 'subject'],
205
+ [memory.learning.budgetId, limits.memoryExtractions, 'workspace'],
206
+ [memory.learning.scanBudgetId, limits.memoryScans, 'subject']]) {
207
+ if (subject === 'workspace' && budgets.items.some(item => isMap(item) && item.get('id') !== id
208
+ && item.get('metric') === 'automation-runs' && item.get('scope') === 'workspace' && item.get('periodMs') === day))
209
+ fail('workspace memory budget conflicts');
210
+ upsert(out.document, budgets, { id, metric: 'automation-runs', limit, periodMs: day, scope: subject }, 'Policy budget');
211
+ }
212
+ const rules = sequence(policy.get('rules', true), 'policy rules');
213
+ const policyScope = { workspace: owner.workspace, principal: owner.principalId, preset: owner.agentPreset };
214
+ const add = (id, subject, action, kind, resource, initiator = 'background') => upsert(out.document, rules, rule(policyScope, id, subject, action, kind, resource, initiator), 'Policy rule');
215
+ for (const [id, subject, automation] of [['usage', 'assistant-growth-usage', 'usage-*'],
216
+ ['source', 'plugin-control-plane-source', 'source-job-*'], ['memory-scan', 'assistant-memory-learning', 'memory-scan-*'],
217
+ ['memory-job', 'assistant-memory-learning', 'memory-learning:*']]) {
218
+ add(`${id}-reconcile`, subject, 'reconcile', 'automation', automation);
219
+ add(`${id}-execute`, automation, 'execute', 'automation', automation);
220
+ }
221
+ for (const [action, authority] of [['extract', memory.learning.authorityId], ['review', memory.reviews.authorityId],
222
+ ['adopt', memory.adoption.authorityId]])
223
+ add(`memory-${action}`, 'assistant-memory-learning', action, 'memory', `learning:${authority}`);
224
+ for (const tool of ['growth_*', 'plugin_source_*'])
225
+ add(tool, owner.agentPreset, 'execute', 'tool', tool);
226
+ add('created-tools', owner.agentPreset, 'execute', 'tool', `evolved_${creation.creation.namePrefix.replaceAll('-', '_')}*`, 'external');
227
+ add('verified-workflows', owner.agentPreset, 'draft', 'evolution', 'verified-workflows');
228
+ const embeddedMemory = mapping(personal.get('personalMemory', true), 'personalMemory');
229
+ setExact(out.document, embeddedMemory, 'automaticLearning', memory.adoption, 'memory adoption');
230
+ const verifier = copyConfig(out, effective, 'verifier');
231
+ setExact(out.document, verifier, 'memoryReviews', memory.reviews, 'memory review');
232
+ setExact(out.document, verifier, 'creationReviews', creation.reviews, 'creation review');
233
+ const learner = out.byId.get(ids.memory) ?? mapping(out.document.createNode({ id: ids.memory }), 'learner patch');
234
+ if (!out.byId.has(ids.memory)) {
235
+ out.rows.add(learner);
236
+ out.byId.set(ids.memory, learner);
237
+ }
238
+ if (learner.get('name') !== undefined && learner.get('name') !== managed.memory)
239
+ fail('learner patch package differs');
240
+ learner.set('name', managed.memory);
241
+ learner.set('disabled', false);
242
+ setExact(out.document, learner, 'config', memory.learning, 'memory learner');
243
+ const growthRow = copyConfig(out, effective, 'growth');
244
+ if (growthRow.has('pluginSourceProposals') && !isDeepStrictEqual(growthRow.get('pluginSourceProposals', true).toJSON(), growth.pluginSourceProposals))
245
+ fail('existing source proposal grant differs');
246
+ out.byId.get(ids.growth).set('config', out.document.createNode(growth));
247
+ const controlRow = copyConfig(out, effective, 'control');
248
+ for (const key of ['sourceJobs', 'sourceApprovals', 'sourceReleases', 'sourceAdoptions', 'creationVerifications', 'creationCapabilities']) {
249
+ if (controlRow.has(key) && !isDeepStrictEqual(controlRow.get(key, true).toJSON(), control[key]))
250
+ fail(`existing ${key} grant differs`);
251
+ }
252
+ out.byId.get(ids.control).set('config', out.document.createNode(control));
253
+ const final = parseRows(out.document.toString({ lineWidth: 0 }), 'compiled target');
254
+ const targets = [];
255
+ for (const [key, services] of [['personal', ['personalMemory', 'assistantPolicy', 'assistantAutomations']],
256
+ ['delivery', ['assistantDelivery']], ['verifier', ['assistantVerifier']], ['growth', ['assistantGrowthDriver']],
257
+ ['memory', ['assistantMemoryLearning']]]) {
258
+ const finalRow = final.byId.get(ids[key]) ?? effectiveRow(effective.byId, key);
259
+ targets.push({ entryId: ids[key], module: managed[key], configDigest: runtimeConfigDigest(rawLoaderConfig(finalRow.get('config', true), key)), services: [...services] });
260
+ }
261
+ const larkRow = effective.byId.get('dsh-enhanced-lark-channel');
262
+ if (!larkRow || larkRow.get('disabled') === true || larkRow.get('name') !== '@dsh-enhanced/lark-channel')
263
+ fail('active Lark channel is required');
264
+ targets.push({ entryId: 'dsh-enhanced-lark-channel', module: '@dsh-enhanced/lark-channel',
265
+ configDigest: runtimeConfigDigest(rawLoaderConfig(larkRow.get('config', true), 'lark-channel')),
266
+ services: ['larkChannel'] });
267
+ control.runtimeObserver.targets = targets;
268
+ normalizeControlPlaneConfig(control);
269
+ final.byId.get(ids.control).set('config', final.document.createNode(control));
270
+ const trust = { schemaVersion: 2, installationId: installation, dshHome: input.dshHome,
271
+ ledger: { id: resources.ledgerId, path: join(resources.stateRoot, 'control-plane', 'control.sqlite') },
272
+ executor: { ...input.executor, environmentAllowlist: [...input.executor.environmentAllowlist] },
273
+ hostPolicy: defaultHostAttestationPolicy, hostAttestor: null,
274
+ approvalKeys: [{ authority: resources.identities.approval.authority, keyId: resources.identities.approval.keyId,
275
+ publicKeyPem: resources.identities.approval.publicKeyPem }],
276
+ hostAttestationKeys: [{ authority: resources.identities.host.authority, keyId: resources.identities.host.keyId,
277
+ publicKeyPem: resources.identities.host.publicKeyPem }] };
278
+ const manifest = { schemaVersion: 1, kind: 'native-plugin-learning', targetProfile: input.targetProfile,
279
+ owner, now: input.now, expiresAt: input.expiresAt, controlPlane: control, growthDriver: growth, memoryLearning: memory,
280
+ pluginCreation: creation, limits };
281
+ return { manifest, targetPatch: final.document.toString({ lineWidth: 0 }), trust };
282
+ }
283
+ //# sourceMappingURL=rsi-native-profile.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"rsi-native-profile.js","sourceRoot":"","sources":["../src/rsi-native-profile.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,35 @@
1
+ import { type NativeMacRuntime } from '@dsh-enhanced/assistant-isolation';
2
+ import { type RsiSourceWorkspace } from './rsi-source.js';
3
+ export interface NativeRsiBuildEnvironment {
4
+ schemaVersion: 2;
5
+ sourceCommit: string;
6
+ lockSha256: string;
7
+ runtime: NativeMacRuntime;
8
+ sourceBuild: {
9
+ backend: 'macos-seatbelt';
10
+ runtime: NativeMacRuntime;
11
+ timeoutMs: 60_000;
12
+ outputBytes: 1_048_576;
13
+ versioning: 'patch';
14
+ };
15
+ }
16
+ export interface NativeRsiCreationBuildEnvironment {
17
+ schemaVersion: 2;
18
+ backend: 'macos-seatbelt';
19
+ sourceCommit: string;
20
+ runtime: NativeMacRuntime;
21
+ }
22
+ export declare function nativeRsiCreationBuild(build: NativeRsiBuildEnvironment): NativeRsiCreationBuildEnvironment;
23
+ export interface NativeRsiBootstrapInput {
24
+ dshHome: string;
25
+ profile: string;
26
+ source: RsiSourceWorkspace;
27
+ signal?: AbortSignal;
28
+ /** Exact predownloaded official bytes; only intended for an isolated installer cache or test. */
29
+ nodeArchivePath?: string;
30
+ pnpmArchivePath?: string;
31
+ }
32
+ /** Install only committed manifests and their frozen dependencies into a private native runtime. */
33
+ export declare function prepareNativeRsiRuntime(input: NativeRsiBootstrapInput): Promise<NativeRsiBuildEnvironment>;
34
+ export declare function readNativeRsiRuntime(input: NativeRsiBootstrapInput): Promise<NativeRsiBuildEnvironment>;
35
+ //# sourceMappingURL=rsi-native-runtime-bootstrap.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"rsi-native-runtime-bootstrap.d.ts","sourceRoot":"","sources":["../src/rsi-native-runtime-bootstrap.ts"],"names":[],"mappings":"AAOA,OAAO,EAAoD,KAAK,gBAAgB,EAAE,MAAM,mCAAmC,CAAA;AAE3H,OAAO,EAA0B,KAAK,kBAAkB,EAAE,MAAM,iBAAiB,CAAA;AAiBjF,MAAM,WAAW,yBAAyB;IACxC,aAAa,EAAE,CAAC,CAAA;IAChB,YAAY,EAAE,MAAM,CAAA;IACpB,UAAU,EAAE,MAAM,CAAA;IAClB,OAAO,EAAE,gBAAgB,CAAA;IACzB,WAAW,EAAE;QAAE,OAAO,EAAE,gBAAgB,CAAC;QAAC,OAAO,EAAE,gBAAgB,CAAC;QAAC,SAAS,EAAE,MAAM,CAAC;QACrF,WAAW,EAAE,SAAS,CAAC;QAAC,UAAU,EAAE,OAAO,CAAA;KAAE,CAAA;CAChD;AACD,MAAM,WAAW,iCAAiC;IAChD,aAAa,EAAE,CAAC,CAAA;IAChB,OAAO,EAAE,gBAAgB,CAAA;IACzB,YAAY,EAAE,MAAM,CAAA;IACpB,OAAO,EAAE,gBAAgB,CAAA;CAC1B;AACD,wBAAgB,sBAAsB,CAAC,KAAK,EAAE,yBAAyB,GAAG,iCAAiC,CAE1G;AASD,MAAM,WAAW,uBAAuB;IACtC,OAAO,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,kBAAkB,CAAC;IAAC,MAAM,CAAC,EAAE,WAAW,CAAA;IAClF,iGAAiG;IACjG,eAAe,CAAC,EAAE,MAAM,CAAC;IAAC,eAAe,CAAC,EAAE,MAAM,CAAA;CACnD;AAuLD,oGAAoG;AACpG,wBAAsB,uBAAuB,CAAC,KAAK,EAAE,uBAAuB,GAAG,OAAO,CAAC,yBAAyB,CAAC,CA4FhH;AAED,wBAAsB,oBAAoB,CAAC,KAAK,EAAE,uBAAuB,GAAG,OAAO,CAAC,yBAAyB,CAAC,CAK7G"}