create-principles-disciple 1.132.6 → 1.133.1

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 (134) hide show
  1. package/codex-adapter/dist/ingestion/ingestion.js +3 -3
  2. package/codex-adapter/dist/ingestion/transcript-locate.d.ts +6 -11
  3. package/codex-adapter/dist/ingestion/transcript-locate.js +5 -73
  4. package/codex-adapter/dist/ingestion/transcript-path.d.ts +2 -2
  5. package/codex-adapter/dist/ingestion/transcript-path.js +4 -21
  6. package/codex-adapter/dist/worker/workspace-worker.d.ts +1 -12
  7. package/codex-adapter/dist/worker/workspace-worker.js +4 -34
  8. package/codex-adapter/package.json +1 -1
  9. package/console/dist/server/models/CodexGovernanceHealthModel.d.ts +97 -0
  10. package/console/dist/server/models/CodexGovernanceHealthModel.js +81 -0
  11. package/console/dist/server/models/EvidenceChainConsoleModel.js +16 -2
  12. package/console/dist/server/routes/health.js +59 -3
  13. package/console/dist/server/routes/update.js +105 -1
  14. package/console/dist/ui/i18n/en.json +4 -0
  15. package/console/dist/ui/i18n/zh-CN.json +4 -0
  16. package/console/dist/ui/pages/pain/PainPage.js +1 -1
  17. package/console/dist/ui/utils/validators.d.ts +2 -0
  18. package/console/dist/ui/utils/validators.js +7 -0
  19. package/console/dist/web/assets/app.js +15 -1
  20. package/core/dist/host/index.d.ts +2 -0
  21. package/core/dist/host/index.d.ts.map +1 -1
  22. package/core/dist/host/index.js +3 -0
  23. package/core/dist/host/index.js.map +1 -1
  24. package/core/dist/host/legacy-registration.d.ts +28 -0
  25. package/core/dist/host/legacy-registration.d.ts.map +1 -0
  26. package/core/dist/host/legacy-registration.js +49 -0
  27. package/core/dist/host/legacy-registration.js.map +1 -0
  28. package/core/dist/runtime-v2/__tests__/evidence-chain-host-kind.test.d.ts +2 -0
  29. package/core/dist/runtime-v2/__tests__/evidence-chain-host-kind.test.d.ts.map +1 -0
  30. package/core/dist/runtime-v2/__tests__/evidence-chain-host-kind.test.js +49 -0
  31. package/core/dist/runtime-v2/__tests__/evidence-chain-host-kind.test.js.map +1 -0
  32. package/core/dist/runtime-v2/feature-flags/__tests__/feature-flag-contract.test.js +7 -0
  33. package/core/dist/runtime-v2/feature-flags/__tests__/feature-flag-contract.test.js.map +1 -1
  34. package/core/dist/runtime-v2/feature-flags/feature-flag-contract.d.ts.map +1 -1
  35. package/core/dist/runtime-v2/feature-flags/feature-flag-contract.js +17 -6
  36. package/core/dist/runtime-v2/feature-flags/feature-flag-contract.js.map +1 -1
  37. package/core/dist/runtime-v2/feature-flags/feature-flag-lifecycle.d.ts.map +1 -1
  38. package/core/dist/runtime-v2/feature-flags/feature-flag-lifecycle.js +14 -6
  39. package/core/dist/runtime-v2/feature-flags/feature-flag-lifecycle.js.map +1 -1
  40. package/core/dist/runtime-v2/types/evidence-chain-contract.d.ts +6 -0
  41. package/core/dist/runtime-v2/types/evidence-chain-contract.d.ts.map +1 -1
  42. package/core/dist/runtime-v2/types/evidence-chain-contract.js +12 -0
  43. package/core/dist/runtime-v2/types/evidence-chain-contract.js.map +1 -1
  44. package/core/package.json +1 -1
  45. package/dist/installer.d.ts +9 -3
  46. package/dist/installer.d.ts.map +1 -1
  47. package/dist/installer.js +37 -28
  48. package/dist/installer.js.map +1 -1
  49. package/dist/installers/codex-host-installer.d.ts +17 -7
  50. package/dist/installers/codex-host-installer.d.ts.map +1 -1
  51. package/dist/installers/codex-host-installer.js +78 -194
  52. package/dist/installers/codex-host-installer.js.map +1 -1
  53. package/dist/update/apply-payload.d.ts +88 -0
  54. package/dist/update/apply-payload.d.ts.map +1 -0
  55. package/dist/update/apply-payload.js +166 -0
  56. package/dist/update/apply-payload.js.map +1 -0
  57. package/dist/update/bootstrap-protocol.d.ts.map +1 -1
  58. package/dist/update/bootstrap-protocol.js +14 -2
  59. package/dist/update/bootstrap-protocol.js.map +1 -1
  60. package/dist/update/release-manager-authority.d.ts +15 -0
  61. package/dist/update/release-manager-authority.d.ts.map +1 -1
  62. package/dist/update/release-manager-authority.js +35 -7
  63. package/dist/update/release-manager-authority.js.map +1 -1
  64. package/dist/update/release-manager.d.ts +74 -6
  65. package/dist/update/release-manager.d.ts.map +1 -1
  66. package/dist/update/release-manager.js +272 -36
  67. package/dist/update/release-manager.js.map +1 -1
  68. package/dist/update/transaction-journal.d.ts +3 -1
  69. package/dist/update/transaction-journal.d.ts.map +1 -1
  70. package/dist/update/transaction-journal.js +3 -1
  71. package/dist/update/transaction-journal.js.map +1 -1
  72. package/host-runtime/dist/codex-disclosure.d.ts +23 -0
  73. package/host-runtime/dist/codex-disclosure.js +60 -0
  74. package/host-runtime/dist/codex-ingestion-consent.d.ts +111 -0
  75. package/host-runtime/dist/codex-ingestion-consent.js +223 -0
  76. package/host-runtime/dist/codex-legacy-registration.d.ts +18 -0
  77. package/host-runtime/dist/codex-legacy-registration.js +34 -0
  78. package/host-runtime/dist/codex-transcript-locate.d.ts +16 -0
  79. package/host-runtime/dist/codex-transcript-locate.js +106 -0
  80. package/host-runtime/dist/codex-worker-status.d.ts +24 -0
  81. package/host-runtime/dist/codex-worker-status.js +52 -0
  82. package/host-runtime/dist/governance-observation-store.d.ts +77 -1
  83. package/host-runtime/dist/governance-observation-store.js +188 -3
  84. package/host-runtime/dist/governance-signal-admission.d.ts +26 -0
  85. package/host-runtime/dist/governance-signal-admission.js +47 -0
  86. package/host-runtime/dist/index.d.ts +5 -0
  87. package/host-runtime/dist/index.js +14 -0
  88. package/host-runtime/package.json +1 -1
  89. package/package.json +1 -1
  90. package/pd-cli/dist/commands/codex-ingest-quarantine.d.ts +12 -0
  91. package/pd-cli/dist/commands/codex-ingest-quarantine.d.ts.map +1 -0
  92. package/pd-cli/dist/commands/codex-ingest-quarantine.js +116 -0
  93. package/pd-cli/dist/commands/codex-ingest-quarantine.js.map +1 -0
  94. package/pd-cli/dist/commands/codex-setup.d.ts +46 -0
  95. package/pd-cli/dist/commands/codex-setup.d.ts.map +1 -0
  96. package/pd-cli/dist/commands/codex-setup.js +423 -0
  97. package/pd-cli/dist/commands/codex-setup.js.map +1 -0
  98. package/pd-cli/dist/commands/health-codex.d.ts.map +1 -1
  99. package/pd-cli/dist/commands/health-codex.js +350 -67
  100. package/pd-cli/dist/commands/health-codex.js.map +1 -1
  101. package/pd-cli/dist/index.js +51 -0
  102. package/pd-cli/dist/index.js.map +1 -1
  103. package/pd-cli/package.json +1 -1
  104. package/plugin/dist/bundle.js +331 -331
  105. package/plugin/dist/governance-audit.js +1 -1
  106. package/plugin/dist/rulehost-evidence.js +1 -1
  107. package/release-manager/dist/installer.d.ts +9 -3
  108. package/release-manager/dist/installer.d.ts.map +1 -1
  109. package/release-manager/dist/installer.js +37 -28
  110. package/release-manager/dist/installer.js.map +1 -1
  111. package/release-manager/dist/installers/codex-host-installer.d.ts +17 -7
  112. package/release-manager/dist/installers/codex-host-installer.d.ts.map +1 -1
  113. package/release-manager/dist/installers/codex-host-installer.js +78 -194
  114. package/release-manager/dist/installers/codex-host-installer.js.map +1 -1
  115. package/release-manager/dist/update/apply-payload.d.ts +88 -0
  116. package/release-manager/dist/update/apply-payload.d.ts.map +1 -0
  117. package/release-manager/dist/update/apply-payload.js +166 -0
  118. package/release-manager/dist/update/apply-payload.js.map +1 -0
  119. package/release-manager/dist/update/bootstrap-protocol.d.ts.map +1 -1
  120. package/release-manager/dist/update/bootstrap-protocol.js +14 -2
  121. package/release-manager/dist/update/bootstrap-protocol.js.map +1 -1
  122. package/release-manager/dist/update/release-manager-authority.d.ts +15 -0
  123. package/release-manager/dist/update/release-manager-authority.d.ts.map +1 -1
  124. package/release-manager/dist/update/release-manager-authority.js +35 -7
  125. package/release-manager/dist/update/release-manager-authority.js.map +1 -1
  126. package/release-manager/dist/update/release-manager.d.ts +74 -6
  127. package/release-manager/dist/update/release-manager.d.ts.map +1 -1
  128. package/release-manager/dist/update/release-manager.js +272 -36
  129. package/release-manager/dist/update/release-manager.js.map +1 -1
  130. package/release-manager/dist/update/transaction-journal.d.ts +3 -1
  131. package/release-manager/dist/update/transaction-journal.d.ts.map +1 -1
  132. package/release-manager/dist/update/transaction-journal.js +3 -1
  133. package/release-manager/dist/update/transaction-journal.js.map +1 -1
  134. package/release-manager/package.json +1 -1
@@ -23,13 +23,20 @@
23
23
  * merge into it, never overwrite. The marker file is our own bookkeeping
24
24
  * for precise uninstall.
25
25
  */
26
- import { existsSync, readFileSync, writeFileSync, mkdirSync } from 'fs';
26
+ import { existsSync, readFileSync, writeFileSync } from 'fs';
27
27
  import { execSync } from 'child_process';
28
28
  import * as path from 'path';
29
29
  import * as os from 'os';
30
30
  import { createRequire } from 'module';
31
31
  import { pathToFileURL } from 'url';
32
32
  import { isNpmDependencyResolutionEnabled } from '../installer.js';
33
+ // NOTE (PRI-625 review round 3 / PRI-669 gate): this installer ships as the
34
+ // self-contained npx package — @principles/core is NOT in its dependencies,
35
+ // and type-only imports are erased at compile time, so the import above is
36
+ // safe. The legacy-registration PARSER must therefore NOT be value-imported
37
+ // here. Its single authority lives in @principles/core/host
38
+ // (parseLegacyCodexHooksRegistration); the local classification below is the
39
+ // npx-parity edge, and a CI parity test pins the two shapes together.
33
40
  const requireFromModule = createRequire(import.meta.url);
34
41
  // ─── Codex hook event names (SPEC v4.1 §5.7) ────────────────────────────────
35
42
  const CODEX_EVENTS = ['PreToolUse', 'PostToolUse', 'UserPromptSubmit', 'SessionStart'];
@@ -129,73 +136,11 @@ export function resolvePdHookPath(deps = {}) {
129
136
  return undefined;
130
137
  }
131
138
  /**
132
- * Build the hook command string for hooks.json.
133
- *
134
- * The wrapper script sets PD_HOST_CODEX_ENABLED=1 and PD_WORKSPACE_DIR before
135
- * invoking pd-hook.js. This is cross-platform (no shell-specific env var syntax).
139
+ * Hook entry / matcher-group shapes (rc-2 typing for detectLegacyCodexHookRegistration).
140
+ * The builder that CREATED these groups was retired with the legacy installer
141
+ * (SPEC rev 2 §17); the shapes remain because uninstall and the legacy
142
+ * detector must still recognize what old installers wrote.
136
143
  */
137
- function buildHookCommand(entryScriptPath, _workspaceDir) {
138
- // Unix command: node <entry>
139
- // workspaceDir is injected by the wrapper script (pd-hook-entry.cjs), not here.
140
- void _workspaceDir;
141
- return `node "${entryScriptPath}"`;
142
- }
143
- function buildHookCommandWindows(entryScriptPath, _workspaceDir) {
144
- // Windows command — same node invocation; the entry script handles env internally
145
- void _workspaceDir;
146
- return `node "${entryScriptPath}"`;
147
- }
148
- function buildMatcherGroup(eventName, entryScriptPath, workspaceDir) {
149
- const command = buildHookCommand(entryScriptPath, workspaceDir);
150
- const commandWindows = buildHookCommandWindows(entryScriptPath, workspaceDir);
151
- switch (eventName) {
152
- case 'PreToolUse':
153
- return {
154
- matcher: 'Bash|apply_patch',
155
- hooks: [{
156
- type: 'command',
157
- command,
158
- commandWindows,
159
- timeout: 5,
160
- statusMessage: 'PD: checking tool call',
161
- }],
162
- };
163
- case 'PostToolUse':
164
- return {
165
- matcher: '.*',
166
- hooks: [{
167
- type: 'command',
168
- command,
169
- commandWindows,
170
- timeout: 5,
171
- async: true,
172
- statusMessage: 'PD: capturing pain signal',
173
- }],
174
- };
175
- case 'UserPromptSubmit':
176
- return {
177
- hooks: [{
178
- type: 'command',
179
- command,
180
- commandWindows,
181
- timeout: 5,
182
- additionalContextLimit: 10000,
183
- statusMessage: 'PD: injecting principles',
184
- }],
185
- };
186
- case 'SessionStart':
187
- return {
188
- hooks: [{
189
- type: 'command',
190
- command,
191
- commandWindows,
192
- timeout: 600,
193
- additionalContextLimit: 10000,
194
- statusMessage: 'PD: hydrating state',
195
- }],
196
- };
197
- }
198
- }
199
144
  // ─── Wrapper script content ─────────────────────────────────────────────────
200
145
  /**
201
146
  * Generate the wrapper script that sets env vars and imports pd-hook.js.
@@ -221,144 +166,83 @@ export function buildWrapperScriptContent(pdHookPath, workspaceDir) {
221
166
  '',
222
167
  ].join('\n');
223
168
  }
169
+ // ─── Legacy registration detection (Slice D, SPEC rev 2 §17) ────────────────
170
+ // The single PARSING authority lives in @principles/core/host
171
+ // (parseLegacyCodexHooksRegistration — pure, no I/O). This installer is the
172
+ // npx-parity FS edge: same classification semantics, mirrored here because
173
+ // @principles/core is not a runtime dependency of this self-contained
174
+ // package. CI pins the two shapes together (codex-host-installer.test.ts →
175
+ // parseLegacyCodexHooksRegistration parity).
176
+ export function detectLegacyCodexHookRegistration(hooksJsonPathOverride) {
177
+ const hooksJsonPath = hooksJsonPathOverride ?? getCodexHooksJsonPath();
178
+ let parsed;
179
+ try {
180
+ parsed = JSON.parse(readFileSync(hooksJsonPath, 'utf-8'));
181
+ }
182
+ catch {
183
+ return { detected: false, legacyAsyncPostToolUse: false };
184
+ }
185
+ // npx-parity mirror of @principles/core/host parseLegacyCodexHooksRegistration
186
+ // (kept here because @principles/core is not a runtime dep of this package;
187
+ // parity with the core parser is enforced by codex-host-installer.test.ts).
188
+ if (!isRecord(parsed))
189
+ return { detected: false, legacyAsyncPostToolUse: false };
190
+ let detected = false;
191
+ let legacyAsyncPostToolUse = false;
192
+ for (const eventName of CODEX_EVENTS) {
193
+ const groups = parsed[eventName];
194
+ if (!isUnknownArray(groups))
195
+ continue;
196
+ for (const group of groups) {
197
+ if (!(isRecord(group) && Object.hasOwn(group, '__pd_marker') && group.__pd_marker === 'pd-owned'))
198
+ continue;
199
+ detected = true;
200
+ const entries = group.hooks;
201
+ if (!isUnknownArray(entries))
202
+ continue;
203
+ for (const entry of entries) {
204
+ if (isRecord(entry) && eventName === 'PostToolUse' && Object.hasOwn(entry, 'async') && entry.async === true) {
205
+ legacyAsyncPostToolUse = true;
206
+ }
207
+ }
208
+ }
209
+ }
210
+ return { detected, legacyAsyncPostToolUse };
211
+ }
224
212
  // ─── CodexHostInstaller ─────────────────────────────────────────────────────
225
213
  export class CodexHostInstaller {
226
214
  hostId = 'codex';
227
- async install(ctx) {
228
- const pdCodexDir = getPdCodexDir();
215
+ /**
216
+ * RETIRED for new registrations (Codex Governance Closure Slice D; SPEC rev
217
+ * 2 §17 — the Marketplace plugin is the only supported new install path;
218
+ * this legacy global-hook installer is migration/uninstall-only).
219
+ *
220
+ * This method NEVER writes hook registrations anymore. It returns a
221
+ * structured refusal that points at the supported path, and when a legacy
222
+ * PD global registration is detected it offers the explicit migration
223
+ * route (precise uninstall → Marketplace plugin → $pd-setup consent).
224
+ */
225
+ async install(_ctx) {
229
226
  const hooksJsonPath = getCodexHooksJsonPath();
230
- const markerPath = getPdHookMarkerPath();
231
- // 1. Resolve codex-adapter pd-hook.js
232
- const pdHookPath = resolvePdHookPath();
233
- if (!pdHookPath) {
234
- return {
235
- success: false,
236
- hostId: this.hostId,
237
- configPath: hooksJsonPath,
238
- configAction: 'skipped',
239
- reason: '@principles/codex-adapter is not installed. The codex-adapter package provides the pd-hook.js entry Codex spawns.',
240
- nextAction: 'Install it first: npm install -g @principles/codex-adapter, then re-run: npx create-principles-disciple install --host codex',
241
- };
242
- }
243
- // 2. Write wrapper script to ~/.pd/codex/pd-hook-entry.cjs
244
- // (marker file is written AFTER mergeHooksJson succeeds — see step 3.
245
- // Writing the marker before the merge would make detect() report a
246
- // failed install as installed, violating rc-3-fail-loud-missing.)
247
- try {
248
- if (!existsSync(pdCodexDir)) {
249
- mkdirSync(pdCodexDir, { recursive: true });
250
- }
251
- const wrapperPath = path.join(pdCodexDir, 'pd-hook-entry.cjs');
252
- const wrapperContent = buildWrapperScriptContent(pdHookPath, ctx.workspaceDir);
253
- writeFileSync(wrapperPath, wrapperContent, { encoding: 'utf-8' });
254
- // 3. Merge PD hook entries into ~/.codex/hooks.json (append, never overwrite).
255
- // If hooks.json is malformed, mergeHooksJson returns 'preserved' without
256
- // writing any PD entries. This MUST surface as a failure (rc-3 / rc-9)
257
- // — otherwise the user would see "install succeeded" while Codex never
258
- // triggers PD hooks. The marker is NOT written in this branch, so
259
- // detect() correctly reports "not installed".
260
- const configAction = this.mergeHooksJson(hooksJsonPath, wrapperPath, ctx.workspaceDir);
261
- if (configAction === 'preserved') {
262
- return {
263
- success: false,
264
- hostId: this.hostId,
265
- configPath: hooksJsonPath,
266
- configAction,
267
- reason: `${hooksJsonPath} is malformed (not a JSON object). PD did not write any hook entries to avoid overwriting the user's config.`,
268
- nextAction: `Manually fix ${hooksJsonPath} (must be a JSON object), then re-run: npx create-principles-disciple install --host codex`,
269
- };
270
- }
271
- // 4. Merge succeeded — now safe to record the marker. detect() will
272
- // only report installed when hooks.json actually contains PD entries.
273
- writeFileSync(markerPath, JSON.stringify({
274
- installedAt: new Date().toISOString(),
275
- workspaceDir: ctx.workspaceDir,
276
- pdHookPath,
277
- wrapperPath,
278
- events: CODEX_EVENTS,
279
- }, null, 2), { encoding: 'utf-8' });
280
- return {
281
- success: true,
282
- hostId: this.hostId,
283
- configPath: hooksJsonPath,
284
- configAction,
285
- nextAction: 'Open Codex and run /hooks to trust PD hooks before they execute. Verify with: codex doctor (hooks feature should be ON).',
286
- };
287
- }
288
- catch (err) {
289
- const reason = err instanceof Error ? err.message : String(err);
227
+ const legacy = detectLegacyCodexHookRegistration();
228
+ if (legacy.detected) {
290
229
  return {
291
230
  success: false,
292
231
  hostId: this.hostId,
293
232
  configPath: hooksJsonPath,
294
233
  configAction: 'skipped',
295
- reason: `Failed to write Codex hook config: ${reason}`,
296
- nextAction: `Check write permissions on ${pdCodexDir} and ${hooksJsonPath}, then re-run installer.`,
234
+ reason: 'A legacy PD global Codex hook registration was detected (async PostToolUse in ~/.codex/hooks.json). The legacy global installer is retired (SPEC rev 2 §17) and cannot update it.',
235
+ nextAction: 'Migrate to the Marketplace plugin: 1) npx create-principles-disciple uninstall --host codex (removes ONLY PD-owned entries; evidence is preserved); 2) codex plugin add principles-disciple@principles; 3) run the plugin setup ($pd-setup) — it presents the ingestion disclosure and records consent.',
297
236
  };
298
237
  }
299
- }
300
- /**
301
- * Merge PD hook entries into ~/.codex/hooks.json.
302
- * - If file doesn't exist: create it with PD entries (configAction = 'created').
303
- * - If file exists: merge PD entries into existing event arrays (configAction = 'updated').
304
- * - Idempotent: re-running install replaces PD entries (matched by marker), not duplicates.
305
- */
306
- // eslint-disable-next-line @typescript-eslint/class-methods-use-this
307
- mergeHooksJson(hooksJsonPath, wrapperPath, workspaceDir) {
308
- const codexDir = getCodexDir();
309
- if (!existsSync(codexDir)) {
310
- mkdirSync(codexDir, { recursive: true });
311
- }
312
- let existing = {};
313
- let action = 'created';
314
- // CodeQL TOCTOU fix: try/catch read instead of existsSync+readFileSync.
315
- // ENOENT → 'created' (file doesn't exist yet); other parse errors → 'preserved'.
316
- try {
317
- const raw = readFileSync(hooksJsonPath, 'utf-8');
318
- const parsed = JSON.parse(raw);
319
- if (isRecord(parsed)) {
320
- existing = { ...parsed };
321
- action = 'updated';
322
- }
323
- else {
324
- // Malformed — back off, don't overwrite
325
- action = 'preserved';
326
- }
327
- }
328
- catch (err) {
329
- const code = getErrorCode(err);
330
- if (code === 'ENOENT') {
331
- // File doesn't exist — 'created' (default action stays)
332
- }
333
- else {
334
- // Malformed JSON — back off
335
- action = 'preserved';
336
- }
337
- }
338
- if (action === 'preserved') {
339
- return action;
340
- }
341
- // For each Codex event, replace any existing PD-owned matcher groups
342
- // with our fresh set (idempotent — re-install doesn't duplicate).
343
- const PD_MARKER = 'pd-owned';
344
- for (const eventName of CODEX_EVENTS) {
345
- const group = buildMatcherGroup(eventName, wrapperPath, workspaceDir);
346
- // Tag the group so uninstall can find PD-owned entries precisely.
347
- group.__pd_marker = PD_MARKER;
348
- const existingGroups = existing[eventName];
349
- if (isUnknownArray(existingGroups)) {
350
- // Filter out previously-PD-owned groups, then append the new one.
351
- // rc-2: no `as` bypass — use Object.hasOwn to check marker presence.
352
- const filtered = existingGroups.filter((g) => !(isRecord(g) && Object.hasOwn(g, '__pd_marker') && g.__pd_marker === PD_MARKER));
353
- filtered.push(group);
354
- existing[eventName] = filtered;
355
- }
356
- else {
357
- existing[eventName] = [group];
358
- }
359
- }
360
- writeFileSync(hooksJsonPath, JSON.stringify(existing, null, 2), { encoding: 'utf-8' });
361
- return action;
238
+ return {
239
+ success: false,
240
+ hostId: this.hostId,
241
+ configPath: hooksJsonPath,
242
+ configAction: 'skipped',
243
+ reason: 'New Codex global hook registrations are retired (SPEC rev 2 §17). The Marketplace plugin is the only supported new install path for Codex.',
244
+ nextAction: 'Install the plugin: codex plugin add principles-disciple@principles — then run its setup ($pd-setup), which verifies Node/runtime/workspace/trust and records the conversation-ingestion consent.',
245
+ };
362
246
  }
363
247
  async uninstall(_ctx) {
364
248
  const hooksJsonPath = getCodexHooksJsonPath();
@@ -1 +1 @@
1
- {"version":3,"file":"codex-host-installer.js","sourceRoot":"","sources":["../../src/installers/codex-host-installer.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"codex-host-installer.js","sourceRoot":"","sources":["../../src/installers/codex-host-installer.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,88 @@
1
+ /**
2
+ * PRI-698 Phase 1 — apply payload acquisition for the ReleaseManager.
3
+ *
4
+ * Bridges the signed metadata world (TUF-verified release metadata + artifact
5
+ * target) and the installer's deployment contract (a local, extracted,
6
+ * self-contained release-asset directory). Owns ONLY acquisition-side writes,
7
+ * strictly bounded to the ReleaseManager staging area:
8
+ *
9
+ * ~/.pd/staging/<transactionId>/release-asset.tar.gz (verified download)
10
+ * ~/.pd/staging/<transactionId>/payload/ (extracted payload)
11
+ *
12
+ * Deployment writes (~/.pd/runtime, host extension dirs) belong exclusively
13
+ * to the installer; this module never touches them (ADR-0023 Decision 1,
14
+ * ADR-0024 §2.1). release-manager.ts itself stays free of filesystem
15
+ * mutation: it orchestrates, this helper acquires.
16
+ *
17
+ * Import-graph constraint: this module is reachable from the console's
18
+ * dynamically-imported authority module, so `installer.js` (the heavy CLI
19
+ * graph) is loaded via dynamic import at acquisition time only — the
20
+ * governed check path never pays for it.
21
+ *
22
+ * Artifact target convention (Phase 1, see
23
+ * docs/architecture/PRI-698-phase4-preflight-analysis.md §4): the release
24
+ * pipeline publishes each release asset as TUF target
25
+ *
26
+ * releases/<releaseId>/release-asset-<platform>-<arch>.tar.gz
27
+ *
28
+ * with TUF `custom` identity {releaseId, channel, platform} and tarball
29
+ * contents = the release-asset directory at its root (no wrapping component
30
+ * directory). The pipeline does not publish these targets yet; the flag
31
+ * stays off in production until it does.
32
+ */
33
+ import { resolveTrustedReleaseTarget, type TrustedReleaseTarget } from './trust-metadata.js';
34
+ import type { ReleaseMetadata } from './release-metadata.js';
35
+ import type { ReleaseChannelName } from './product-identity.js';
36
+ import type { PdHomePaths } from './install-layout.js';
37
+ type TrustFetcher = NonNullable<Parameters<typeof resolveTrustedReleaseTarget>[0]['fetcher']>;
38
+ /** Acquisition failure with a stable reason; release-manager.ts maps it onto the ReleaseManagerError contract. */
39
+ export declare class ApplyPayloadError extends Error {
40
+ readonly reason: 'metadata_refresh_failed' | 'release_metadata_invalid';
41
+ readonly nextAction: string;
42
+ constructor(reason: 'metadata_refresh_failed' | 'release_metadata_invalid', message: string, nextAction: string);
43
+ }
44
+ /**
45
+ * Select the release asset matching THIS runtime (platform + arch + node ABI)
46
+ * from the signed release metadata. A payload built for a different node ABI
47
+ * can break native modules after the swap, so a mismatch is a refusal, never
48
+ * a warning (rc-3: fail loud before any mutation).
49
+ */
50
+ export declare function selectReleaseAsset(releaseMetadata: ReleaseMetadata): ReleaseMetadata['assets'][number];
51
+ /** TUF target path of the release asset for THIS platform (Phase 1 convention). */
52
+ export declare function releaseAssetTargetPath(releaseId: string): string;
53
+ export interface DownloadReleaseAssetOptions {
54
+ readonly paths: PdHomePaths;
55
+ readonly metadataBaseUrl: string;
56
+ readonly fetcher?: TrustFetcher;
57
+ readonly releaseMetadata: ReleaseMetadata;
58
+ readonly channel: ReleaseChannelName;
59
+ /** Transaction the acquisition is journaled under; scopes the staging dir. */
60
+ readonly transactionId: string;
61
+ }
62
+ export interface DownloadedReleaseAsset {
63
+ readonly transactionDir: string;
64
+ readonly archivePath: string;
65
+ readonly trustedTarget: TrustedReleaseTarget;
66
+ }
67
+ /**
68
+ * Resolve the signed artifact target, cross-check the TUF identity and digest
69
+ * against the signed release metadata (rc-6), and download it with in-flight
70
+ * sha256 verification into `~/.pd/staging/<transactionId>/`.
71
+ * Zero writes happen before every identity check has passed.
72
+ */
73
+ export declare function downloadReleaseAsset(options: DownloadReleaseAssetOptions): Promise<DownloadedReleaseAsset>;
74
+ export interface ExtractAndVerifyOptions {
75
+ readonly transactionDir: string;
76
+ readonly archivePath: string;
77
+ }
78
+ /**
79
+ * Extract the verified archive inside the staging transaction dir and run the
80
+ * installer's own self-contained asset preflight (the same verification gate
81
+ * a manual `npx create-principles-disciple` run of this payload would face).
82
+ * Every write stays inside the staging transaction dir.
83
+ */
84
+ export declare function extractAndVerifyReleaseAsset(options: ExtractAndVerifyOptions): Promise<{
85
+ payloadDir: string;
86
+ }>;
87
+ export {};
88
+ //# sourceMappingURL=apply-payload.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"apply-payload.d.ts","sourceRoot":"","sources":["../../src/update/apply-payload.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA+BG;AAKH,OAAO,EACL,2BAA2B,EAE3B,KAAK,oBAAoB,EAC1B,MAAM,qBAAqB,CAAC;AAC7B,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAC;AAC7D,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,uBAAuB,CAAC;AAChE,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,qBAAqB,CAAC;AAEvD,KAAK,YAAY,GAAG,WAAW,CAAC,UAAU,CAAC,OAAO,2BAA2B,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC;AAE9F,kHAAkH;AAClH,qBAAa,iBAAkB,SAAQ,KAAK;IAC1C,QAAQ,CAAC,MAAM,EAAE,yBAAyB,GAAG,0BAA0B,CAAC;IACxE,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;IAE5B,YAAY,MAAM,EAAE,yBAAyB,GAAG,0BAA0B,EAAE,OAAO,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,EAK9G;CACF;AAED;;;;;GAKG;AACH,wBAAgB,kBAAkB,CAAC,eAAe,EAAE,eAAe,GAAG,eAAe,CAAC,QAAQ,CAAC,CAAC,MAAM,CAAC,CAoBtG;AAED,mFAAmF;AACnF,wBAAgB,sBAAsB,CAAC,SAAS,EAAE,MAAM,GAAG,MAAM,CAEhE;AAED,MAAM,WAAW,2BAA2B;IAC1C,QAAQ,CAAC,KAAK,EAAE,WAAW,CAAC;IAC5B,QAAQ,CAAC,eAAe,EAAE,MAAM,CAAC;IACjC,QAAQ,CAAC,OAAO,CAAC,EAAE,YAAY,CAAC;IAChC,QAAQ,CAAC,eAAe,EAAE,eAAe,CAAC;IAC1C,QAAQ,CAAC,OAAO,EAAE,kBAAkB,CAAC;IACrC,8EAA8E;IAC9E,QAAQ,CAAC,aAAa,EAAE,MAAM,CAAC;CAChC;AAED,MAAM,WAAW,sBAAsB;IACrC,QAAQ,CAAC,cAAc,EAAE,MAAM,CAAC;IAChC,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;IAC7B,QAAQ,CAAC,aAAa,EAAE,oBAAoB,CAAC;CAC9C;AAED;;;;;GAKG;AACH,wBAAsB,oBAAoB,CAAC,OAAO,EAAE,2BAA2B,GAAG,OAAO,CAAC,sBAAsB,CAAC,CA2DhH;AAED,MAAM,WAAW,uBAAuB;IACtC,QAAQ,CAAC,cAAc,EAAE,MAAM,CAAC;IAChC,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;CAC9B;AAsBD;;;;;GAKG;AACH,wBAAsB,4BAA4B,CAAC,OAAO,EAAE,uBAAuB,GAAG,OAAO,CAAC;IAAE,UAAU,EAAE,MAAM,CAAA;CAAE,CAAC,CA2BpH"}
@@ -0,0 +1,166 @@
1
+ /**
2
+ * PRI-698 Phase 1 — apply payload acquisition for the ReleaseManager.
3
+ *
4
+ * Bridges the signed metadata world (TUF-verified release metadata + artifact
5
+ * target) and the installer's deployment contract (a local, extracted,
6
+ * self-contained release-asset directory). Owns ONLY acquisition-side writes,
7
+ * strictly bounded to the ReleaseManager staging area:
8
+ *
9
+ * ~/.pd/staging/<transactionId>/release-asset.tar.gz (verified download)
10
+ * ~/.pd/staging/<transactionId>/payload/ (extracted payload)
11
+ *
12
+ * Deployment writes (~/.pd/runtime, host extension dirs) belong exclusively
13
+ * to the installer; this module never touches them (ADR-0023 Decision 1,
14
+ * ADR-0024 §2.1). release-manager.ts itself stays free of filesystem
15
+ * mutation: it orchestrates, this helper acquires.
16
+ *
17
+ * Import-graph constraint: this module is reachable from the console's
18
+ * dynamically-imported authority module, so `installer.js` (the heavy CLI
19
+ * graph) is loaded via dynamic import at acquisition time only — the
20
+ * governed check path never pays for it.
21
+ *
22
+ * Artifact target convention (Phase 1, see
23
+ * docs/architecture/PRI-698-phase4-preflight-analysis.md §4): the release
24
+ * pipeline publishes each release asset as TUF target
25
+ *
26
+ * releases/<releaseId>/release-asset-<platform>-<arch>.tar.gz
27
+ *
28
+ * with TUF `custom` identity {releaseId, channel, platform} and tarball
29
+ * contents = the release-asset directory at its root (no wrapping component
30
+ * directory). The pipeline does not publish these targets yet; the flag
31
+ * stays off in production until it does.
32
+ */
33
+ import { execFileSync } from 'node:child_process';
34
+ import * as fs from 'node:fs';
35
+ import * as path from 'node:path';
36
+ import { resolveTrustedReleaseTarget, downloadTrustedReleasePayload, } from './trust-metadata.js';
37
+ /** Acquisition failure with a stable reason; release-manager.ts maps it onto the ReleaseManagerError contract. */
38
+ export class ApplyPayloadError extends Error {
39
+ reason;
40
+ nextAction;
41
+ constructor(reason, message, nextAction) {
42
+ super(message);
43
+ this.name = 'ApplyPayloadError';
44
+ this.reason = reason;
45
+ this.nextAction = nextAction;
46
+ }
47
+ }
48
+ /**
49
+ * Select the release asset matching THIS runtime (platform + arch + node ABI)
50
+ * from the signed release metadata. A payload built for a different node ABI
51
+ * can break native modules after the swap, so a mismatch is a refusal, never
52
+ * a warning (rc-3: fail loud before any mutation).
53
+ */
54
+ export function selectReleaseAsset(releaseMetadata) {
55
+ const { platform } = process;
56
+ const { arch } = process;
57
+ const nodeAbi = process.versions.modules;
58
+ const asset = releaseMetadata.assets.find((a) => a.platform === platform && a.arch === arch);
59
+ if (asset === undefined) {
60
+ throw new ApplyPayloadError('release_metadata_invalid', `Release ${releaseMetadata.productVersion} declares no asset for this platform (${platform}/${arch}); declared: ${releaseMetadata.assets.map((a) => `${a.platform}/${a.arch}`).join(', ') || 'none'}.`, 'Wait for a release asset covering this platform, or update from a supported host.');
61
+ }
62
+ if (asset.nodeAbi !== nodeAbi) {
63
+ throw new ApplyPayloadError('release_metadata_invalid', `Release ${releaseMetadata.productVersion} asset for ${platform}/${arch} targets node ABI ${asset.nodeAbi}, but this runtime is ABI ${nodeAbi}.`, 'Upgrade the bootstrap runtime first, or publish a release asset built for this node ABI.');
64
+ }
65
+ return asset;
66
+ }
67
+ /** TUF target path of the release asset for THIS platform (Phase 1 convention). */
68
+ export function releaseAssetTargetPath(releaseId) {
69
+ return `releases/${releaseId}/release-asset-${process.platform}-${process.arch}.tar.gz`;
70
+ }
71
+ /**
72
+ * Resolve the signed artifact target, cross-check the TUF identity and digest
73
+ * against the signed release metadata (rc-6), and download it with in-flight
74
+ * sha256 verification into `~/.pd/staging/<transactionId>/`.
75
+ * Zero writes happen before every identity check has passed.
76
+ */
77
+ export async function downloadReleaseAsset(options) {
78
+ const { paths, metadataBaseUrl, fetcher, releaseMetadata, channel, transactionId } = options;
79
+ const asset = selectReleaseAsset(releaseMetadata);
80
+ const targetPath = releaseAssetTargetPath(releaseMetadata.releaseId);
81
+ let trustedTarget;
82
+ try {
83
+ trustedTarget = await resolveTrustedReleaseTarget({
84
+ metadataDir: paths.trustDir,
85
+ metadataBaseUrl,
86
+ targetPath,
87
+ expectedChannel: channel,
88
+ expectedPlatform: process.platform,
89
+ fetcher,
90
+ });
91
+ }
92
+ catch (error) {
93
+ throw new ApplyPayloadError('metadata_refresh_failed', `The signed artifact target for release ${releaseMetadata.releaseId} could not be resolved: ${error instanceof Error ? error.message : String(error)}`, 'Verify that the release pipeline published this release asset to the signed repository, then retry.');
94
+ }
95
+ // rc-6: the TUF-signed identity and the release metadata must name the same
96
+ // release and the same bytes — a mismatch means the channel points at
97
+ // metadata the artifact repo does not answer for. Refuse before any write.
98
+ if (trustedTarget.releaseId !== releaseMetadata.releaseId) {
99
+ throw new ApplyPayloadError('release_metadata_invalid', `Signed artifact target names release ${trustedTarget.releaseId}, but the channel metadata names ${releaseMetadata.releaseId}.`, 'The release repository is inconsistent; wait for refreshed signed metadata. Nothing was modified.');
100
+ }
101
+ if (trustedTarget.artifactSha256 !== asset.archiveSha256) {
102
+ throw new ApplyPayloadError('release_metadata_invalid', 'The signed artifact digest disagrees with the digest in the signed release metadata.', 'The release repository is inconsistent; wait for refreshed signed metadata. Nothing was modified.');
103
+ }
104
+ const transactionDir = path.join(paths.stagingDir, transactionId);
105
+ const archivePath = path.join(transactionDir, 'release-asset.tar.gz');
106
+ fs.mkdirSync(transactionDir, { recursive: true });
107
+ try {
108
+ await downloadTrustedReleasePayload({
109
+ metadataDir: paths.trustDir,
110
+ metadataBaseUrl,
111
+ targetPath,
112
+ destinationPath: archivePath,
113
+ fetcher,
114
+ });
115
+ }
116
+ catch (error) {
117
+ throw new ApplyPayloadError('metadata_refresh_failed', `The signed release asset could not be downloaded: ${error instanceof Error ? error.message : String(error)}`, 'Check network access to the release repository and retry; nothing was deployed.');
118
+ }
119
+ return { transactionDir, archivePath, trustedTarget };
120
+ }
121
+ /**
122
+ * Extract the release-asset tarball with the same discipline as the legacy
123
+ * console updater (EP-08): spawn tar via an argv array so paths stay data,
124
+ * and use cwd + RELATIVE archive/dir paths — Git Bash GNU tar on Windows
125
+ * misparses `D:\...` as a remote host (ERR: "Cannot connect to C:"), while
126
+ * Windows System32 bsdtar does not support GNU's --force-local. Relative is
127
+ * the universal form.
128
+ */
129
+ function extractReleaseAssetArchive(transactionDir, payloadDir) {
130
+ execFileSync('tar', ['xzf', 'release-asset.tar.gz', '-C', 'payload'], {
131
+ cwd: transactionDir,
132
+ stdio: 'pipe',
133
+ });
134
+ if (!fs.existsSync(path.join(payloadDir, '_release', 'manifest.json'))) {
135
+ throw new Error('the artifact tarball does not contain a self-contained release asset at its root (missing _release/manifest.json)');
136
+ }
137
+ }
138
+ /**
139
+ * Extract the verified archive inside the staging transaction dir and run the
140
+ * installer's own self-contained asset preflight (the same verification gate
141
+ * a manual `npx create-principles-disciple` run of this payload would face).
142
+ * Every write stays inside the staging transaction dir.
143
+ */
144
+ export async function extractAndVerifyReleaseAsset(options) {
145
+ const { transactionDir, archivePath } = options;
146
+ if (!fs.existsSync(archivePath)) {
147
+ throw new ApplyPayloadError('release_metadata_invalid', `The verified release archive is missing from staging: ${archivePath}`, 'Nothing was deployed; the runtime is unchanged. Retry the update.');
148
+ }
149
+ const payloadDir = path.join(transactionDir, 'payload');
150
+ try {
151
+ fs.mkdirSync(payloadDir, { recursive: true });
152
+ extractReleaseAssetArchive(transactionDir, payloadDir);
153
+ // Dynamic import: keeps installer.js (and its CLI dependency graph) out
154
+ // of the module graph until a real acquisition needs it — the governed
155
+ // check path never pays for it.
156
+ const { preflightSelfContainedReleaseAsset } = await import('../installer.js');
157
+ await preflightSelfContainedReleaseAsset(payloadDir);
158
+ }
159
+ catch (error) {
160
+ if (error instanceof ApplyPayloadError)
161
+ throw error;
162
+ throw new ApplyPayloadError('release_metadata_invalid', `The downloaded release payload failed verification: ${error instanceof Error ? error.message : String(error)}`, 'Nothing was deployed; the runtime is unchanged. Retry the update after the release repository issue is resolved.');
163
+ }
164
+ return { payloadDir };
165
+ }
166
+ //# sourceMappingURL=apply-payload.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"apply-payload.js","sourceRoot":"","sources":["../../src/update/apply-payload.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"bootstrap-protocol.d.ts","sourceRoot":"","sources":["../../src/update/bootstrap-protocol.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAEH,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,uBAAuB,CAAC;AAEhE,OAAO,KAAK,EAAE,cAAc,EAAC,MAAM,sBAAsB,CAAC;AAG1D,MAAM,MAAM,kBAAkB,GAAG,SAAS,GAAG,OAAO,GAAG,OAAO,GAAG,UAAU,CAAC;AAE5E,MAAM,MAAM,gBAAgB,GACxB;IAAE,QAAQ,CAAC,EAAE,EAAE,SAAS,CAAA;CAAE,GAC1B;IAAE,QAAQ,CAAC,EAAE,EAAE,OAAO,CAAC;IAAC,QAAQ,CAAC,OAAO,EAAE,kBAAkB,CAAA;CAAE,GAC9D;IAAE,QAAQ,CAAC,EAAE,EAAE,OAAO,CAAC;IAAC,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAA;CAAE,GACpD;IAAE,QAAQ,CAAC,EAAE,EAAE,UAAU,CAAA;CAAE,CAAC;AAEhC,MAAM,WAAW,mBAAmB;IAClC,QAAQ,CAAC,EAAE,EAAE,IAAI,CAAC;IAClB,QAAQ,CAAC,MAAM,EAAE,OAAO,CAAC;CAC1B;AAED,MAAM,WAAW,wBAAwB;IACvC,QAAQ,CAAC,EAAE,EAAE,KAAK,CAAC;IACnB,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;CAC7B;AAED,MAAM,MAAM,iBAAiB,GAAG,mBAAmB,GAAG,wBAAwB,CAAC;AAE/E,qBAAa,sBAAuB,SAAQ,KAAK;IAC/C,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IAExB,YAAY,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAI1C;CACF;AAED;;;;;GAKG;AACH,wBAAgB,qBAAqB,CAAC,GAAG,EAAE,MAAM,GAAG,gBAAgB,CAsDnE;AAED,iFAAiF;AACjF,wBAAgB,0BAA0B,CAAC,QAAQ,EAAE,iBAAiB,GAAG,MAAM,CAE9E;AAED;;;;GAIG;AACH,wBAAsB,sBAAsB,CAC1C,OAAO,EAAE,gBAAgB,EACzB,OAAO,EAAE,cAAc,GACtB,OAAO,CAAC,iBAAiB,CAAC,CAsC5B"}
1
+ {"version":3,"file":"bootstrap-protocol.d.ts","sourceRoot":"","sources":["../../src/update/bootstrap-protocol.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAEH,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,uBAAuB,CAAC;AAEhE,OAAO,KAAK,EAAE,cAAc,EAAC,MAAM,sBAAsB,CAAC;AAG1D,MAAM,MAAM,kBAAkB,GAAG,SAAS,GAAG,OAAO,GAAG,OAAO,GAAG,UAAU,CAAC;AAE5E,MAAM,MAAM,gBAAgB,GACxB;IAAE,QAAQ,CAAC,EAAE,EAAE,SAAS,CAAA;CAAE,GAC1B;IAAE,QAAQ,CAAC,EAAE,EAAE,OAAO,CAAC;IAAC,QAAQ,CAAC,OAAO,EAAE,kBAAkB,CAAA;CAAE,GAC9D;IAAE,QAAQ,CAAC,EAAE,EAAE,OAAO,CAAC;IAAC,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAA;CAAE,GACpD;IAAE,QAAQ,CAAC,EAAE,EAAE,UAAU,CAAA;CAAE,CAAC;AAEhC,MAAM,WAAW,mBAAmB;IAClC,QAAQ,CAAC,EAAE,EAAE,IAAI,CAAC;IAClB,QAAQ,CAAC,MAAM,EAAE,OAAO,CAAC;CAC1B;AAED,MAAM,WAAW,wBAAwB;IACvC,QAAQ,CAAC,EAAE,EAAE,KAAK,CAAC;IACnB,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;CAC7B;AAED,MAAM,MAAM,iBAAiB,GAAG,mBAAmB,GAAG,wBAAwB,CAAC;AAE/E,qBAAa,sBAAuB,SAAQ,KAAK;IAC/C,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IAExB,YAAY,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAI1C;CACF;AAED;;;;;GAKG;AACH,wBAAgB,qBAAqB,CAAC,GAAG,EAAE,MAAM,GAAG,gBAAgB,CAsDnE;AAED,iFAAiF;AACjF,wBAAgB,0BAA0B,CAAC,QAAQ,EAAE,iBAAiB,GAAG,MAAM,CAE9E;AAED;;;;GAIG;AACH,wBAAsB,sBAAsB,CAC1C,OAAO,EAAE,gBAAgB,EACzB,OAAO,EAAE,cAAc,GACtB,OAAO,CAAC,iBAAiB,CAAC,CAkD5B"}