@lumenflow/cli 5.3.0 → 5.3.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.
package/README.md CHANGED
@@ -175,6 +175,7 @@ This package provides CLI commands for the LumenFlow workflow framework, includi
175
175
  | `cloud-connect` | Connect workspace.yaml to cloud control plane |
176
176
  | `config-get` | Read and display a value from workspace.yaml software_delivery |
177
177
  | `config-set` | Safely update workspace.yaml software_delivery via micro-worktree |
178
+ | `distribution-preflight` | Audit consumer repos for @lumenflow/\* privatization readiness |
178
179
  | `init-plan` | Link plan to initiative (alias) |
179
180
  | `lumenflow` | Initialize LumenFlow in a project |
180
181
  | `lumenflow-commands` | List all available CLI commands |
@@ -0,0 +1,230 @@
1
+ #!/usr/bin/env node
2
+ // Copyright (c) 2026 Hellmai Ltd
3
+ // SPDX-License-Identifier: LicenseRef-LumenFlow-Proprietary
4
+ /**
5
+ * distribution:preflight CLI Command (WU-2898)
6
+ *
7
+ * Audits every consumer repo that installs @lumenflow/* and reports whether
8
+ * each one is ready for the npm-access flip from "public" to "restricted".
9
+ *
10
+ * For each consumer the preflight checks:
11
+ * - GitHub: NPM_TOKEN is registered as an Actions secret on the repo
12
+ * (`gh api repos/<repo>/actions/secrets`), and the repo has a `.npmrc`
13
+ * wired to the token.
14
+ * - Azure DevOps: prints a documented manual-check instruction. We cannot
15
+ * read pipeline secret variables programmatically without standing up an
16
+ * `az` PAT, so the report flags Azure rows as "needs manual check" so
17
+ * Tom can verify in the Azure DevOps web UI before the flip.
18
+ *
19
+ * Exits non-zero if any GitHub consumer is missing wiring, or if any Azure
20
+ * DevOps row is unverified. Print a single table and a copy/paste remediation
21
+ * footer so an operator can fix the gap and re-run.
22
+ *
23
+ * Usage:
24
+ * pnpm distribution:preflight
25
+ * pnpm distribution:preflight --json
26
+ */
27
+ import { execFileSync } from 'node:child_process';
28
+ import { WU_STATUS } from '@lumenflow/core';
29
+ import chalk from 'chalk';
30
+ import Table from 'cli-table3';
31
+ import { Command } from 'commander';
32
+ export const DEFAULT_CONSUMERS = [
33
+ { kind: 'github', repo: 'hellmai/lumenflow-dev' },
34
+ { kind: 'github', repo: 'hellmai/lumenflow-cloud' },
35
+ { kind: 'github', repo: 'hellmai/patientpath.co.uk' },
36
+ { kind: 'azure-devops', project: 'skynexe', repo: 'skynexe-hub' },
37
+ { kind: 'azure-devops', project: 'skynexe', repo: 'skynexe-fund-analyser' },
38
+ { kind: 'azure-devops', project: 'skynexe', repo: 'skynexe-risk' },
39
+ ];
40
+ /**
41
+ * Production GitHub probe. Shells out to `gh` (already required by other
42
+ * lifecycle commands), expecting the operator to be authenticated.
43
+ */
44
+ export const defaultRunGh = (args) => {
45
+ // sonarjs/no-os-command-from-path: this is a developer-machine CLI tool
46
+ // intentionally invoked by name so the operator's `gh` install (homebrew,
47
+ // apt, scoop, etc.) is picked up. Hard-coding an absolute path would
48
+ // break portability across the Mac/Linux/CI surfaces this script targets.
49
+ // eslint-disable-next-line sonarjs/no-os-command-from-path
50
+ return execFileSync('gh', args, {
51
+ encoding: 'utf8',
52
+ stdio: ['ignore', 'pipe', 'pipe'],
53
+ });
54
+ };
55
+ const NPM_TOKEN_NAME = 'NPM_TOKEN';
56
+ /**
57
+ * Probe a single GitHub consumer. Returns a ConsumerReport row.
58
+ *
59
+ * Failure semantics: if `gh` is unauthenticated or the repo is unreachable,
60
+ * we return `npmTokenPresent: false` with a diagnostic note rather than
61
+ * throwing — the preflight should report ALL consumer states in one pass,
62
+ * not abort on the first error.
63
+ */
64
+ export function probeGitHubConsumer(consumer, deps) {
65
+ const repo = consumer.repo;
66
+ let npmTokenPresent = false;
67
+ let npmrcWired = false;
68
+ const notes = [];
69
+ // Check 1: repo Actions secrets contain NPM_TOKEN
70
+ try {
71
+ const stdout = deps.runGh(['api', `repos/${repo}/actions/secrets`]);
72
+ const parsed = JSON.parse(stdout);
73
+ const secrets = parsed.secrets ?? [];
74
+ npmTokenPresent = secrets.some((s) => s.name === NPM_TOKEN_NAME);
75
+ if (!npmTokenPresent) {
76
+ notes.push(`secret ${NPM_TOKEN_NAME} not found on ${repo}`);
77
+ }
78
+ }
79
+ catch (error) {
80
+ notes.push(`gh secrets probe failed: ${error instanceof Error ? error.message : String(error)}`);
81
+ }
82
+ // Check 2: repo root contains a .npmrc with NPM_TOKEN auth
83
+ try {
84
+ const stdout = deps.runGh(['api', `repos/${repo}/contents/.npmrc`]);
85
+ const parsed = JSON.parse(stdout);
86
+ if (parsed.content && parsed.encoding === 'base64') {
87
+ const decoded = Buffer.from(parsed.content, 'base64').toString('utf8');
88
+ npmrcWired = /_authToken=\$\{?NPM_TOKEN\}?/.test(decoded);
89
+ if (!npmrcWired) {
90
+ notes.push(`.npmrc found on ${repo} but does not reference NPM_TOKEN`);
91
+ }
92
+ }
93
+ else {
94
+ notes.push(`.npmrc payload on ${repo} not in expected base64 shape`);
95
+ }
96
+ }
97
+ catch (error) {
98
+ notes.push(`.npmrc probe failed (${repo}): ${error instanceof Error ? error.message : String(error)}`);
99
+ }
100
+ return {
101
+ repo,
102
+ platform: 'github',
103
+ npmTokenPresent,
104
+ npmrcWired,
105
+ readyToFlip: npmTokenPresent && npmrcWired,
106
+ note: notes.join('; ') || 'OK',
107
+ };
108
+ }
109
+ /**
110
+ * Build the manual-check report row for an Azure DevOps consumer.
111
+ *
112
+ * We deliberately do NOT shell out to `az` here. Authenticating the Azure
113
+ * DevOps CLI requires per-developer PAT setup that the LumenFlow CI surface
114
+ * does not own. Treating the row as "needs manual check" is honest — a false
115
+ * green here would directly cause the consumer pipelines to break on the
116
+ * privatization flip.
117
+ */
118
+ export function buildAzureDevOpsRow(consumer) {
119
+ const repo = `${consumer.project}/${consumer.repo}`;
120
+ return {
121
+ repo,
122
+ platform: 'azure-devops',
123
+ npmTokenPresent: null,
124
+ npmrcWired: null,
125
+ readyToFlip: null,
126
+ note: 'manual check required — verify pipeline variable NPM_TOKEN is set as a secret ' +
127
+ 'and that .npmrc is wired in the repo root',
128
+ };
129
+ }
130
+ /**
131
+ * Run the full preflight against the supplied consumer list. Returns the
132
+ * raw report rows — formatting/exit-code policy is applied by `main`.
133
+ */
134
+ export function runPreflight(consumers, deps = { runGh: defaultRunGh }) {
135
+ return consumers.map((c) => c.kind === 'github' ? probeGitHubConsumer(c, deps) : buildAzureDevOpsRow(c));
136
+ }
137
+ /**
138
+ * Pretty-print the report as an aligned ASCII table.
139
+ *
140
+ * The status column uses three glyphs:
141
+ * ready = both checks passed (GitHub) — safe to flip
142
+ * FAIL = GitHub repo missing NPM_TOKEN or .npmrc — fix before flip
143
+ * manual = Azure DevOps row — operator must verify out-of-band
144
+ */
145
+ export function formatReport(rows) {
146
+ const table = new Table({
147
+ head: ['Consumer', 'Platform', 'NPM_TOKEN', '.npmrc', 'Ready', 'Note'],
148
+ style: { head: [] },
149
+ });
150
+ const triBool = (v) => {
151
+ if (v === null)
152
+ return chalk.yellow('manual');
153
+ return v ? chalk.green('yes') : chalk.red('no');
154
+ };
155
+ const status = (row) => {
156
+ if (row.readyToFlip === null)
157
+ return chalk.yellow('manual');
158
+ if (row.readyToFlip)
159
+ return chalk.green(WU_STATUS.READY);
160
+ return chalk.red('FAIL');
161
+ };
162
+ for (const row of rows) {
163
+ table.push([
164
+ row.repo,
165
+ row.platform,
166
+ triBool(row.npmTokenPresent),
167
+ triBool(row.npmrcWired),
168
+ status(row),
169
+ row.note,
170
+ ]);
171
+ }
172
+ return table.toString();
173
+ }
174
+ /**
175
+ * Compute the exit code policy. Non-zero if any GitHub row failed or any
176
+ * row needs manual verification (since the operator MUST acknowledge the
177
+ * Azure rows before the flip is safe).
178
+ */
179
+ export function computeExitCode(rows) {
180
+ const anyFail = rows.some((r) => r.readyToFlip === false);
181
+ const anyManual = rows.some((r) => r.readyToFlip === null);
182
+ return anyFail || anyManual ? 1 : 0;
183
+ }
184
+ /**
185
+ * CLI entry point. Returns the resolved exit code so tests can assert it
186
+ * without spawning a subprocess.
187
+ */
188
+ export function main(argv = process.argv, deps = { runGh: defaultRunGh }, log = (m) => console.log(m)) {
189
+ const program = new Command()
190
+ .name('distribution-preflight')
191
+ .description('Audit consumer repos for @lumenflow/* privatization readiness (WU-2898)')
192
+ .option('--json', 'Emit raw JSON instead of an ASCII table', false)
193
+ .parse(argv);
194
+ const opts = program.opts();
195
+ const rows = runPreflight(DEFAULT_CONSUMERS, deps);
196
+ if (opts.json) {
197
+ log(JSON.stringify(rows, null, 2));
198
+ }
199
+ else {
200
+ log(formatReport(rows));
201
+ const failed = rows.filter((r) => r.readyToFlip === false);
202
+ const manual = rows.filter((r) => r.readyToFlip === null);
203
+ if (failed.length > 0) {
204
+ log('');
205
+ log(chalk.red(`✗ ${failed.length} GitHub consumer(s) not ready:`));
206
+ for (const r of failed)
207
+ log(` - ${r.repo}: ${r.note}`);
208
+ }
209
+ if (manual.length > 0) {
210
+ log('');
211
+ log(chalk.yellow(`⚠ ${manual.length} Azure DevOps consumer(s) need manual verification:`));
212
+ for (const r of manual)
213
+ log(` - ${r.repo}: ${r.note}`);
214
+ }
215
+ if (failed.length === 0 && manual.length === 0) {
216
+ log('');
217
+ log(chalk.green('✓ all consumers ready to flip'));
218
+ }
219
+ }
220
+ return computeExitCode(rows);
221
+ }
222
+ // Run when invoked directly (not when imported by tests).
223
+ const isDirectInvocation = import.meta.url === `file://${process.argv[1]}` ||
224
+ // tsup bundles the CLI as ESM with the bin shim — argv[1] still ends with
225
+ // distribution-preflight.js so this guard remains correct after build.
226
+ process.argv[1]?.endsWith('distribution-preflight.js');
227
+ if (isDirectInvocation) {
228
+ process.exit(main());
229
+ }
230
+ //# sourceMappingURL=distribution-preflight.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"distribution-preflight.js","sourceRoot":"","sources":["../src/distribution-preflight.ts"],"names":[],"mappings":"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"}
@@ -219,14 +219,45 @@ if [[ -d "\$WORKTREES_DIR" ]]; then
219
219
  WORKTREE_COUNT=\$(find "\$WORKTREES_DIR" -mindepth 1 -maxdepth 1 -type d 2>/dev/null | wc -l)
220
220
  fi
221
221
 
222
- # If worktrees exist, block writes to main repo (original behavior)
222
+ # WU-2904: Recognise an in-progress wu:done window.
223
+ #
224
+ # wu:prep writes a gates-passed checkpoint into the WORKTREE's state store
225
+ # (worktrees/<lane>-wu-xxxx/.lumenflow/checkpoints/<WU>.checkpoint.json).
226
+ # When wu:done runs from main, it legitimately writes to main paths to
227
+ # perform the merge + cleanup. Without this predicate, the next branch
228
+ # would block those writes purely because a worktree directory still
229
+ # exists (the worktree is removed only at the END of wu:done), even
230
+ # though wu:prep has already authorised the handoff.
231
+ #
232
+ # A passed prep checkpoint anywhere under WORKTREES_DIR is the
233
+ # load-bearing signal that we are in the post-prep wu:done window.
234
+ has_active_prep_checkpoint() {
235
+ if [[ ! -d "\$WORKTREES_DIR" ]]; then
236
+ return 1
237
+ fi
238
+ local ckpt
239
+ while IFS= read -r ckpt; do
240
+ [[ -z "\$ckpt" ]] && continue
241
+ if grep -q '"gatesPassed":[[:space:]]*true' "\$ckpt" 2>/dev/null; then
242
+ return 0
243
+ fi
244
+ done < <(find "\$WORKTREES_DIR" -path '*/.lumenflow/checkpoints/*.checkpoint.json' -type f 2>/dev/null)
245
+ return 1
246
+ }
247
+
248
+ # If worktrees exist, block writes to main repo unless wu:prep has produced
249
+ # a gates-passed checkpoint (= we are in the legitimate wu:done window).
223
250
  if [[ "\$WORKTREE_COUNT" -gt 0 ]]; then
251
+ if has_active_prep_checkpoint; then
252
+ exit 0 # WU-2904: wu:done window — allow main writes
253
+ fi
254
+
224
255
  ACTIVE_WORKTREES=\$(find "\$WORKTREES_DIR" -mindepth 1 -maxdepth 1 -type d -printf '%f\\n' 2>/dev/null | head -5 | tr '\\n' ', ' | sed 's/,\$//')
225
256
 
226
257
  echo "" >&2
227
258
  echo "=== Worktree Enforcement ===" >&2
228
259
  echo "" >&2
229
- echo "BLOCKED: \$TOOL_NAME to main repo" >&2
260
+ echo "BLOCKED: \$TOOL_NAME to main repo while a worktree is active" >&2
230
261
  echo "" >&2
231
262
  echo "Active worktrees: \${ACTIVE_WORKTREES:-none detected}" >&2
232
263
  echo "" >&2
@@ -234,6 +265,9 @@ if [[ "\$WORKTREE_COUNT" -gt 0 ]]; then
234
265
  echo " 1. cd to your worktree: cd ${worktreesDirSegment}/<lane>-wu-<id>/" >&2
235
266
  echo " 2. Make your edits in the worktree" >&2
236
267
  echo "" >&2
268
+ echo "(If you are completing the WU, run pnpm wu:prep in the worktree first;" >&2
269
+ echo " its checkpoint authorises the wu:done window from main.)" >&2
270
+ echo "" >&2
237
271
  echo "See: LUMENFLOW.md for worktree discipline" >&2
238
272
  echo "==============================" >&2
239
273
  exit 2
@@ -260,13 +294,12 @@ if [[ -f "\$STATE_FILE" ]]; then
260
294
  fi
261
295
  fi
262
296
 
263
- # WU-1501: Fail-closed - no active claim context, block the write
297
+ # WU-1501: Fail-closed - no active claim context, block the write.
298
+ # WU-2904: Single-reason denial wording (no OR-list of co-asserted facts).
264
299
  echo "" >&2
265
300
  echo "=== Worktree Enforcement ===" >&2
266
301
  echo "" >&2
267
- echo "BLOCKED: \$TOOL_NAME on main (no active WU claim)" >&2
268
- echo "" >&2
269
- echo "No worktrees exist and no branch-pr WU is in progress." >&2
302
+ echo "BLOCKED: \$TOOL_NAME on main no WU is currently claimed" >&2
270
303
  echo "" >&2
271
304
  echo "WHAT TO DO:" >&2
272
305
  echo " 1. Claim a WU: pnpm wu:claim --id WU-XXXX --lane \\"<Lane>\\"" >&2
@@ -1 +1 @@
1
- {"version":3,"file":"enforce-worktree.js","sourceRoot":"","sources":["../../../src/hooks/generators/enforce-worktree.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"enforce-worktree.js","sourceRoot":"","sources":["../../../src/hooks/generators/enforce-worktree.ts"],"names":[],"mappings":"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"}
@@ -724,6 +724,13 @@ export const PUBLIC_MANIFEST = [
724
724
  description: 'Run release workflow',
725
725
  category: COMMAND_CATEGORIES.SETUP_DEVELOPMENT,
726
726
  },
727
+ {
728
+ name: 'distribution:preflight',
729
+ binName: 'distribution-preflight',
730
+ binPath: './dist/distribution-preflight.js',
731
+ description: 'Audit consumer repos for @lumenflow/* privatization readiness',
732
+ category: COMMAND_CATEGORIES.SETUP_DEVELOPMENT,
733
+ },
727
734
  {
728
735
  name: 'lumenflow:docs-sync',
729
736
  binName: 'lumenflow-docs-sync',
@@ -1 +1 @@
1
- {"version":3,"file":"public-manifest.js","sourceRoot":"","sources":["../src/public-manifest.ts"],"names":[],"mappings":"AAAA,iCAAiC;AACjC,4DAA4D;AAgD5D;;GAEG;AACH,MAAM,CAAC,MAAM,kBAAkB,GAAG;IAChC,YAAY,EAAE,cAAc;IAC5B,cAAc,EAAE,gBAAgB;IAChC,aAAa,EAAE,iBAAiB;IAChC,eAAe,EAAE,mBAAmB;IACpC,WAAW,EAAE,aAAa;IAC1B,KAAK,EAAE,OAAO;IACd,aAAa,EAAE,eAAe;IAC9B,iBAAiB,EAAE,qBAAqB;IACxC,YAAY,EAAE,gBAAgB;IAC9B,gBAAgB,EAAE,kBAAkB;IACpC,KAAK,EAAE,OAAO;CACN,CAAC;AAEX,MAAM,2BAA2B,GAAG,eAAe,CAAC;AACpD,MAAM,qBAAqB,GAAG,mBAAmB,CAAC;AAClD,MAAM,0BAA0B,GAAG,GAAG,qBAAqB,UAAU,2BAA2B,gCAAgC,CAAC;AACjI,MAAM,iCAAiC,GAAG,0BAA0B,CAAC;AAErE;;;;;;;;;;GAUG;AACH,MAAM,CAAC,MAAM,eAAe,GAAoB;IAC9C,+EAA+E;IAC/E,wCAAwC;IACxC,+EAA+E;IAC/E;QACE,IAAI,EAAE,WAAW;QACjB,OAAO,EAAE,WAAW;QACpB,OAAO,EAAE,qBAAqB;QAC9B,WAAW,EAAE,oBAAoB;QACjC,QAAQ,EAAE,kBAAkB,CAAC,YAAY;KAC1C;IACD;QACE,IAAI,EAAE,UAAU;QAChB,OAAO,EAAE,UAAU;QACnB,OAAO,EAAE,oBAAoB;QAC7B,WAAW,EAAE,8BAA8B;QAC3C,QAAQ,EAAE,kBAAkB,CAAC,YAAY;KAC1C;IACD;QACE,IAAI,EAAE,YAAY;QAClB,OAAO,EAAE,YAAY;QACrB,OAAO,EAAE,sBAAsB;QAC/B,WAAW,EAAE,iDAAiD;QAC9D,QAAQ,EAAE,kBAAkB,CAAC,YAAY;KAC1C;IACD;QACE,IAAI,EAAE,SAAS;QACf,OAAO,EAAE,SAAS;QAClB,OAAO,EAAE,mBAAmB;QAC5B,WAAW,EAAE,yCAAyC;QACtD,QAAQ,EAAE,kBAAkB,CAAC,YAAY;KAC1C;IACD;QACE,IAAI,EAAE,SAAS;QACf,OAAO,EAAE,SAAS;QAClB,OAAO,EAAE,mBAAmB;QAC5B,WAAW,EAAE,+CAA+C;QAC5D,QAAQ,EAAE,kBAAkB,CAAC,YAAY;KAC1C;IACD;QACE,IAAI,EAAE,SAAS;QACf,OAAO,EAAE,SAAS;QAClB,OAAO,EAAE,mBAAmB;QAC5B,WAAW,EAAE,qBAAqB;QAClC,QAAQ,EAAE,kBAAkB,CAAC,YAAY;KAC1C;IACD;QACE,IAAI,EAAE,UAAU;QAChB,OAAO,EAAE,UAAU;QACnB,OAAO,EAAE,oBAAoB;QAC7B,WAAW,EAAE,sBAAsB;QACnC,QAAQ,EAAE,kBAAkB,CAAC,YAAY;KAC1C;IACD;QACE,IAAI,EAAE,YAAY;QAClB,OAAO,EAAE,YAAY;QACrB,OAAO,EAAE,sBAAsB;QAC/B,WAAW,EAAE,YAAY;QACzB,QAAQ,EAAE,kBAAkB,CAAC,YAAY;KAC1C;IACD;QACE,IAAI,EAAE,YAAY;QAClB,OAAO,EAAE,YAAY;QACrB,OAAO,EAAE,sBAAsB;QAC/B,WAAW,EAAE,4CAA4C;QACzD,QAAQ,EAAE,kBAAkB,CAAC,YAAY;KAC1C;IACD;QACE,IAAI,EAAE,WAAW;QACjB,OAAO,EAAE,WAAW;QACpB,OAAO,EAAE,qBAAqB;QAC9B,WAAW,EAAE,yDAAyD;QACtE,QAAQ,EAAE,kBAAkB,CAAC,YAAY;KAC1C;IACD;QACE,IAAI,EAAE,WAAW;QACjB,OAAO,EAAE,WAAW;QACpB,OAAO,EAAE,qBAAqB;QAC9B,WAAW,EAAE,0CAA0C;QACvD,QAAQ,EAAE,kBAAkB,CAAC,YAAY;KAC1C;IACD;QACE,IAAI,EAAE,UAAU;QAChB,OAAO,EAAE,UAAU;QACnB,OAAO,EAAE,oBAAoB;QAC7B,WAAW,EAAE,yEAAyE;QACtF,QAAQ,EAAE,kBAAkB,CAAC,YAAY;KAC1C;IACD;QACE,IAAI,EAAE,aAAa;QACnB,OAAO,EAAE,aAAa;QACtB,OAAO,EAAE,uBAAuB;QAChC,WAAW,EACT,qFAAqF;QACvF,QAAQ,EAAE,kBAAkB,CAAC,YAAY;KAC1C;IACD;QACE,IAAI,EAAE,aAAa;QACnB,OAAO,EAAE,aAAa;QACtB,OAAO,EAAE,uBAAuB;QAChC,WAAW,EAAE,kBAAkB;QAC/B,QAAQ,EAAE,kBAAkB,CAAC,YAAY;KAC1C;IACD;QACE,IAAI,EAAE,YAAY;QAClB,OAAO,EAAE,YAAY;QACrB,OAAO,EAAE,sBAAsB;QAC/B,WAAW,EAAE,0CAA0C;QACvD,QAAQ,EAAE,kBAAkB,CAAC,YAAY;KAC1C;IACD;QACE,IAAI,EAAE,WAAW;QACjB,OAAO,EAAE,WAAW;QACpB,OAAO,EAAE,qBAAqB;QAC9B,WAAW,EAAE,kDAAkD;QAC/D,QAAQ,EAAE,kBAAkB,CAAC,YAAY;KAC1C;IACD;QACE,IAAI,EAAE,aAAa;QACnB,OAAO,EAAE,aAAa;QACtB,OAAO,EAAE,uBAAuB;QAChC,WAAW,EAAE,sCAAsC;QACnD,QAAQ,EAAE,kBAAkB,CAAC,YAAY;KAC1C;IACD;QACE,IAAI,EAAE,kBAAkB;QACxB,OAAO,EAAE,kBAAkB;QAC3B,OAAO,EAAE,4BAA4B;QACrC,WAAW,EAAE,sDAAsD;QACnE,QAAQ,EAAE,kBAAkB,CAAC,YAAY;QACzC,QAAQ,EAAE,UAAU;KACrB;IACD;QACE,IAAI,EAAE,iBAAiB;QACvB,OAAO,EAAE,iBAAiB;QAC1B,OAAO,EAAE,2BAA2B;QACpC,WAAW,EAAE,2CAA2C;QACxD,QAAQ,EAAE,kBAAkB,CAAC,YAAY;QACzC,QAAQ,EAAE,UAAU;KACrB;IACD;QACE,IAAI,EAAE,eAAe;QACrB,OAAO,EAAE,eAAe;QACxB,OAAO,EAAE,yBAAyB;QAClC,WAAW,EAAE,oDAAoD;QACjE,QAAQ,EAAE,kBAAkB,CAAC,YAAY;QACzC,QAAQ,EAAE,UAAU;KACrB;IAED,+EAA+E;IAC/E,oDAAoD;IACpD,+EAA+E;IAC/E;QACE,IAAI,EAAE,cAAc;QACpB,OAAO,EAAE,cAAc;QACvB,OAAO,EAAE,wBAAwB;QACjC,WAAW,EAAE,kCAAkC;QAC/C,QAAQ,EAAE,kBAAkB,CAAC,cAAc;KAC5C;IACD;QACE,IAAI,EAAE,WAAW;QACjB,OAAO,EAAE,WAAW;QACpB,OAAO,EAAE,qBAAqB;QAC9B,WAAW,EAAE,gEAAgE;QAC7E,QAAQ,EAAE,kBAAkB,CAAC,cAAc;KAC5C;IACD;QACE,IAAI,EAAE,WAAW;QACjB,OAAO,EAAE,WAAW;QACpB,OAAO,EAAE,qBAAqB;QAC9B,WAAW,EAAE,wBAAwB;QACrC,QAAQ,EAAE,kBAAkB,CAAC,cAAc;KAC5C;IACD;QACE,IAAI,EAAE,UAAU;QAChB,OAAO,EAAE,UAAU;QACnB,OAAO,EAAE,oBAAoB;QAC7B,WAAW,EAAE,uBAAuB;QACpC,QAAQ,EAAE,kBAAkB,CAAC,cAAc;KAC5C;IACD;QACE,IAAI,EAAE,YAAY;QAClB,OAAO,EAAE,YAAY;QACrB,OAAO,EAAE,sBAAsB;QAC/B,WAAW,EAAE,wBAAwB;QACrC,QAAQ,EAAE,kBAAkB,CAAC,cAAc;KAC5C;IACD;QACE,IAAI,EAAE,SAAS;QACf,OAAO,EAAE,SAAS;QAClB,OAAO,EAAE,mBAAmB;QAC5B,WAAW,EAAE,sBAAsB;QACnC,QAAQ,EAAE,kBAAkB,CAAC,cAAc;KAC5C;IACD;QACE,IAAI,EAAE,eAAe;QACrB,OAAO,EAAE,eAAe;QACxB,OAAO,EAAE,yBAAyB;QAClC,WAAW,EAAE,oEAAoE;QACjF,QAAQ,EAAE,kBAAkB,CAAC,cAAc;KAC5C;IACD;QACE,IAAI,EAAE,WAAW;QACjB,OAAO,EAAE,WAAW;QACpB,OAAO,EAAE,qBAAqB;QAC9B,WAAW,EAAE,4BAA4B;QACzC,QAAQ,EAAE,kBAAkB,CAAC,cAAc;KAC5C;IACD;QACE,IAAI,EAAE,gBAAgB;QACtB,OAAO,EAAE,gBAAgB;QACzB,OAAO,EAAE,0BAA0B;QACnC,WAAW,EAAE,mBAAmB;QAChC,QAAQ,EAAE,kBAAkB,CAAC,cAAc;KAC5C;IACD;QACE,IAAI,EAAE,UAAU;QAChB,OAAO,EAAE,UAAU;QACnB,OAAO,EAAE,oBAAoB;QAC7B,WAAW,EAAE,qBAAqB;QAClC,QAAQ,EAAE,kBAAkB,CAAC,cAAc;KAC5C;IAED,+EAA+E;IAC/E,kBAAkB;IAClB,+EAA+E;IAC/E;QACE,IAAI,EAAE,OAAO;QACb,OAAO,EAAE,OAAO;QAChB,OAAO,EAAE,iBAAiB;QAC1B,WAAW,EAAE,uBAAuB;QACpC,QAAQ,EAAE,kBAAkB,CAAC,aAAa;KAC3C;IACD;QACE,IAAI,EAAE,YAAY;QAClB,OAAO,EAAE,OAAO;QAChB,OAAO,EAAE,iBAAiB;QAC1B,WAAW,EAAE,qCAAqC;QAClD,QAAQ,EAAE,kBAAkB,CAAC,aAAa;QAC1C,OAAO,EAAE,OAAO;KACjB;IACD;QACE,IAAI,EAAE,iBAAiB;QACvB,OAAO,EAAE,iBAAiB;QAC1B,OAAO,EAAE,iBAAiB;QAC1B,WAAW,EAAE,+BAA+B;QAC5C,QAAQ,EAAE,kBAAkB,CAAC,aAAa;QAC1C,OAAO,EAAE,OAAO;KACjB;IACD;QACE,IAAI,EAAE,UAAU;QAChB,OAAO,EAAE,UAAU;QACnB,OAAO,EAAE,oBAAoB;QAC7B,WAAW,EAAE,uBAAuB;QACpC,QAAQ,EAAE,kBAAkB,CAAC,aAAa;KAC3C;IACD;QACE,IAAI,EAAE,oBAAoB;QAC1B,OAAO,EAAE,oBAAoB;QAC7B,OAAO,EAAE,oBAAoB;QAC7B,WAAW,EAAE,+BAA+B;QAC5C,QAAQ,EAAE,kBAAkB,CAAC,aAAa;QAC1C,OAAO,EAAE,OAAO;KACjB;IACD;QACE,IAAI,EAAE,4BAA4B;QAClC,OAAO,EAAE,4BAA4B;QACrC,OAAO,EAAE,4BAA4B;QACrC,WAAW,EAAE,kDAAkD;QAC/D,QAAQ,EAAE,kBAAkB,CAAC,aAAa;QAC1C,QAAQ,EAAE,UAAU;KACrB;IACD;QACE,IAAI,EAAE,gBAAgB,EAAE,2BAA2B;QACnD,OAAO,EAAE,gBAAgB;QACzB,OAAO,EAAE,0BAA0B;QACnC,WAAW,EAAE,uDAAuD;QACpE,QAAQ,EAAE,kBAAkB,CAAC,aAAa;KAC3C;IACD;QACE,IAAI,EAAE,kBAAkB,EAAE,UAAU;QACpC,OAAO,EAAE,kBAAkB;QAC3B,OAAO,EAAE,4BAA4B;QACrC,WAAW,EAAE,oEAAoE;QACjF,QAAQ,EAAE,kBAAkB,CAAC,aAAa;KAC3C;IACD;QACE,IAAI,EAAE,aAAa;QACnB,OAAO,EAAE,aAAa;QACtB,OAAO,EAAE,uBAAuB;QAChC,WAAW,EAAE,8BAA8B;QAC3C,QAAQ,EAAE,kBAAkB,CAAC,aAAa;KAC3C;IACD;QACE,IAAI,EAAE,WAAW;QACjB,OAAO,EAAE,WAAW;QACpB,OAAO,EAAE,qBAAqB;QAC9B,WAAW,EAAE,gEAAgE;QAC7E,QAAQ,EAAE,kBAAkB,CAAC,aAAa;KAC3C;IACD;QACE,IAAI,EAAE,aAAa;QACnB,OAAO,EAAE,aAAa;QACtB,OAAO,EAAE,uBAAuB;QAChC,WAAW,EAAE,gEAAgE;QAC7E,QAAQ,EAAE,kBAAkB,CAAC,aAAa;KAC3C;IACD;QACE,IAAI,EAAE,WAAW;QACjB,OAAO,EAAE,WAAW;QACpB,OAAO,EAAE,qBAAqB;QAC9B,WAAW,EAAE,yCAAyC;QACtD,QAAQ,EAAE,kBAAkB,CAAC,aAAa;KAC3C;IACD;QACE,IAAI,EAAE,aAAa;QACnB,OAAO,EAAE,aAAa;QACtB,OAAO,EAAE,uBAAuB;QAChC,WAAW,EAAE,0BAA0B;QACvC,QAAQ,EAAE,kBAAkB,CAAC,aAAa;KAC3C;IACD;QACE,IAAI,EAAE,cAAc;QACpB,OAAO,EAAE,cAAc;QACvB,OAAO,EAAE,wBAAwB;QACjC,WAAW,EAAE,yDAAyD;QACtE,QAAQ,EAAE,kBAAkB,CAAC,aAAa;KAC3C;IACD;QACE,IAAI,EAAE,aAAa;QACnB,OAAO,EAAE,aAAa;QACtB,OAAO,EAAE,uBAAuB;QAChC,WAAW,EAAE,0CAA0C;QACvD,QAAQ,EAAE,kBAAkB,CAAC,aAAa;KAC3C;IACD;QACE,IAAI,EAAE,YAAY;QAClB,OAAO,EAAE,YAAY;QACrB,OAAO,EAAE,sBAAsB;QAC/B,WAAW,EAAE,oCAAoC;QACjD,QAAQ,EAAE,kBAAkB,CAAC,aAAa;KAC3C;IACD;QACE,IAAI,EAAE,eAAe;QACrB,OAAO,EAAE,eAAe;QACxB,OAAO,EAAE,yBAAyB;QAClC,WAAW,EAAE,qCAAqC;QAClD,QAAQ,EAAE,kBAAkB,CAAC,aAAa;KAC3C;IACD;QACE,IAAI,EAAE,WAAW;QACjB,OAAO,EAAE,WAAW;QACpB,OAAO,EAAE,qBAAqB;QAC9B,WAAW,EAAE,sCAAsC;QACnD,QAAQ,EAAE,kBAAkB,CAAC,aAAa;KAC3C;IAED,+EAA+E;IAC/E,oBAAoB;IACpB,+EAA+E;IAC/E;QACE,IAAI,EAAE,UAAU;QAChB,OAAO,EAAE,UAAU;QACnB,OAAO,EAAE,oBAAoB;QAC7B,WAAW,EAAE,0BAA0B;QACvC,QAAQ,EAAE,kBAAkB,CAAC,eAAe;KAC7C;IACD;QACE,IAAI,EAAE,gBAAgB;QACtB,OAAO,EAAE,gBAAgB;QACzB,OAAO,EAAE,0BAA0B;QACnC,WAAW,EAAE,0BAA0B;QACvC,QAAQ,EAAE,kBAAkB,CAAC,eAAe;KAC7C;IACD;QACE,IAAI,EAAE,WAAW;QACjB,OAAO,EAAE,WAAW;QACpB,OAAO,EAAE,qBAAqB;QAC9B,WAAW,EAAE,wBAAwB;QACrC,QAAQ,EAAE,kBAAkB,CAAC,eAAe;KAC7C;IACD;QACE,IAAI,EAAE,WAAW;QACjB,OAAO,EAAE,WAAW;QACpB,OAAO,EAAE,qBAAqB;QAC9B,WAAW,EAAE,4BAA4B;QACzC,QAAQ,EAAE,kBAAkB,CAAC,eAAe;KAC7C;IACD;QACE,IAAI,EAAE,YAAY;QAClB,OAAO,EAAE,YAAY;QACrB,OAAO,EAAE,sBAAsB;QAC/B,WAAW,EAAE,2BAA2B;QACxC,QAAQ,EAAE,kBAAkB,CAAC,eAAe;KAC7C;IACD;QACE,IAAI,EAAE,YAAY;QAClB,OAAO,EAAE,YAAY;QACrB,OAAO,EAAE,sBAAsB;QAC/B,WAAW,EAAE,+BAA+B;QAC5C,QAAQ,EAAE,kBAAkB,CAAC,eAAe;KAC7C;IACD;QACE,IAAI,EAAE,aAAa;QACnB,OAAO,EAAE,aAAa;QACtB,OAAO,EAAE,uBAAuB;QAChC,WAAW,EAAE,4BAA4B;QACzC,QAAQ,EAAE,kBAAkB,CAAC,eAAe;KAC7C;IACD;QACE,IAAI,EAAE,aAAa;QACnB,OAAO,EAAE,aAAa;QACtB,OAAO,EAAE,uBAAuB;QAChC,WAAW,EAAE,iCAAiC;QAC9C,QAAQ,EAAE,kBAAkB,CAAC,eAAe;KAC7C;IACD;QACE,IAAI,EAAE,YAAY;QAClB,OAAO,EAAE,YAAY;QACrB,OAAO,EAAE,sBAAsB;QAC/B,WAAW,EAAE,oCAAoC;QACjD,QAAQ,EAAE,kBAAkB,CAAC,eAAe;KAC7C;IACD;QACE,IAAI,EAAE,WAAW;QACjB,OAAO,EAAE,WAAW;QACpB,OAAO,EAAE,qBAAqB;QAC9B,WAAW,EAAE,4BAA4B;QACzC,QAAQ,EAAE,kBAAkB,CAAC,eAAe;KAC7C;IACD;QACE,IAAI,EAAE,YAAY;QAClB,OAAO,EAAE,YAAY;QACrB,OAAO,EAAE,sBAAsB;QAC/B,WAAW,EAAE,wCAAwC;QACrD,QAAQ,EAAE,kBAAkB,CAAC,eAAe;KAC7C;IACD;QACE,IAAI,EAAE,eAAe;QACrB,OAAO,EAAE,eAAe;QACxB,OAAO,EAAE,yBAAyB;QAClC,WAAW,EAAE,0BAA0B;QACvC,QAAQ,EAAE,kBAAkB,CAAC,eAAe;KAC7C;IACD;QACE,IAAI,EAAE,YAAY;QAClB,OAAO,EAAE,YAAY;QACrB,OAAO,EAAE,sBAAsB;QAC/B,WAAW,EAAE,wBAAwB;QACrC,QAAQ,EAAE,kBAAkB,CAAC,eAAe;KAC7C;IACD;QACE,IAAI,EAAE,YAAY;QAClB,OAAO,EAAE,YAAY;QACrB,OAAO,EAAE,sBAAsB;QAC/B,WAAW,EAAE,8BAA8B;QAC3C,QAAQ,EAAE,kBAAkB,CAAC,eAAe;KAC7C;IACD;QACE,IAAI,EAAE,aAAa;QACnB,OAAO,EAAE,aAAa;QACtB,OAAO,EAAE,uBAAuB;QAChC,WAAW,EAAE,4CAA4C;QACzD,QAAQ,EAAE,kBAAkB,CAAC,eAAe;KAC7C;IACD;QACE,IAAI,EAAE,gBAAgB;QACtB,OAAO,EAAE,gBAAgB;QACzB,OAAO,EAAE,0BAA0B;QACnC,WAAW,EAAE,wBAAwB;QACrC,QAAQ,EAAE,kBAAkB,CAAC,eAAe;KAC7C;IAED,+EAA+E;IAC/E,cAAc;IACd,+EAA+E;IAC/E;QACE,IAAI,EAAE,mBAAmB;QACzB,OAAO,EAAE,mBAAmB;QAC5B,OAAO,EAAE,6BAA6B;QACtC,WAAW,EAAE,uBAAuB;QACpC,QAAQ,EAAE,kBAAkB,CAAC,WAAW;KACzC;IACD;QACE,IAAI,EAAE,iBAAiB;QACvB,OAAO,EAAE,iBAAiB;QAC1B,OAAO,EAAE,2BAA2B;QACpC,WAAW,EAAE,2CAA2C;QACxD,QAAQ,EAAE,kBAAkB,CAAC,WAAW;KACzC;IACD;QACE,IAAI,EAAE,iBAAiB;QACvB,OAAO,EAAE,iBAAiB;QAC1B,OAAO,EAAE,2BAA2B;QACpC,WAAW,EAAE,sBAAsB;QACnC,QAAQ,EAAE,kBAAkB,CAAC,WAAW;KACzC;IACD;QACE,IAAI,EAAE,mBAAmB;QACzB,OAAO,EAAE,mBAAmB;QAC5B,OAAO,EAAE,6BAA6B;QACtC,WAAW,EAAE,wBAAwB;QACrC,QAAQ,EAAE,kBAAkB,CAAC,WAAW;KACzC;IACD;QACE,IAAI,EAAE,mBAAmB;QACzB,OAAO,EAAE,mBAAmB;QAC5B,OAAO,EAAE,6BAA6B;QACtC,WAAW,EAAE,sBAAsB;QACnC,QAAQ,EAAE,kBAAkB,CAAC,WAAW;KACzC;IACD;QACE,IAAI,EAAE,sBAAsB;QAC5B,OAAO,EAAE,sBAAsB;QAC/B,OAAO,EAAE,gCAAgC;QACzC,WAAW,EAAE,2BAA2B;QACxC,QAAQ,EAAE,kBAAkB,CAAC,WAAW;KACzC;IACD;QACE,IAAI,EAAE,mBAAmB;QACzB,OAAO,EAAE,mBAAmB;QAC5B,OAAO,EAAE,6BAA6B;QACtC,WAAW,EAAE,oDAAoD;QACjE,QAAQ,EAAE,kBAAkB,CAAC,WAAW;KACzC;IACD;QACE,IAAI,EAAE,mBAAmB;QACzB,OAAO,EAAE,mBAAmB;QAC5B,OAAO,EAAE,6BAA6B;QACtC,WAAW,EAAE,yDAAyD;QACtE,QAAQ,EAAE,kBAAkB,CAAC,WAAW;KACzC;IACD;QACE,IAAI,EAAE,iBAAiB;QACvB,OAAO,EAAE,iBAAiB;QAC1B,OAAO,EAAE,2BAA2B;QACpC,WAAW,EAAE,yBAAyB;QACtC,QAAQ,EAAE,kBAAkB,CAAC,WAAW;KACzC;IACD;QACE,IAAI,EAAE,wBAAwB;QAC9B,OAAO,EAAE,4BAA4B;QACrC,OAAO,EAAE,sCAAsC;QAC/C,WAAW,EAAE,+BAA+B;QAC5C,QAAQ,EAAE,kBAAkB,CAAC,WAAW;KACzC;IAED,+EAA+E;IAC/E,QAAQ;IACR,+EAA+E;IAC/E;QACE,IAAI,EAAE,aAAa;QACnB,OAAO,EAAE,aAAa;QACtB,OAAO,EAAE,uBAAuB;QAChC,WAAW,EAAE,mBAAmB;QAChC,QAAQ,EAAE,kBAAkB,CAAC,KAAK;KACnC;IACD;QACE,IAAI,EAAE,WAAW;QACjB,OAAO,EAAE,WAAW;QACpB,OAAO,EAAE,qBAAqB;QAC9B,WAAW,EAAE,+BAA+B;QAC5C,QAAQ,EAAE,kBAAkB,CAAC,KAAK;KACnC;IACD;QACE,IAAI,EAAE,WAAW;QACjB,OAAO,EAAE,WAAW;QACpB,OAAO,EAAE,qBAAqB;QAC9B,WAAW,EAAE,mBAAmB;QAChC,QAAQ,EAAE,kBAAkB,CAAC,KAAK;KACnC;IACD;QACE,IAAI,EAAE,cAAc;QACpB,OAAO,EAAE,cAAc;QACvB,OAAO,EAAE,wBAAwB;QACjC,WAAW,EAAE,oBAAoB;QACjC,QAAQ,EAAE,kBAAkB,CAAC,KAAK;KACnC;IACD;QACE,IAAI,EAAE,WAAW;QACjB,OAAO,EAAE,WAAW;QACpB,OAAO,EAAE,2BAA2B;QACpC,WAAW,EAAE,iCAAiC;QAC9C,QAAQ,EAAE,kBAAkB,CAAC,KAAK;QAClC,OAAO,EAAE,OAAO;KACjB;IAED,+EAA+E;IAC/E,gBAAgB;IAChB,+EAA+E;IAC/E;QACE,IAAI,EAAE,wBAAwB;QAC9B,OAAO,EAAE,wBAAwB;QACjC,OAAO,EAAE,kCAAkC;QAC3C,WAAW,EACT,8KAA8K;QAChL,QAAQ,EAAE,kBAAkB,CAAC,aAAa;KAC3C;IACD;QACE,IAAI,EAAE,yBAAyB;QAC/B,OAAO,EAAE,yBAAyB;QAClC,OAAO,EAAE,mCAAmC;QAC5C,WAAW,EAAE,mEAAmE;QAChF,QAAQ,EAAE,kBAAkB,CAAC,aAAa;KAC3C;IACD;QACE,IAAI,EAAE,qBAAqB;QAC3B,OAAO,EAAE,qBAAqB;QAC9B,OAAO,EAAE,+BAA+B;QACxC,WAAW,EAAE,gFAAgF;QAC7F,QAAQ,EAAE,kBAAkB,CAAC,aAAa;KAC3C;IACD;QACE,IAAI,EAAE,iBAAiB;QACvB,OAAO,EAAE,iBAAiB;QAC1B,OAAO,EAAE,2BAA2B;QACpC,WAAW,EAAE,uEAAuE;QACpF,QAAQ,EAAE,kBAAkB,CAAC,aAAa;KAC3C;IACD;QACE,IAAI,EAAE,YAAY;QAClB,OAAO,EAAE,YAAY;QACrB,OAAO,EAAE,sBAAsB;QAC/B,WAAW,EAAE,6CAA6C;QAC1D,QAAQ,EAAE,kBAAkB,CAAC,aAAa;KAC3C;IACD;QACE,IAAI,EAAE,eAAe;QACrB,OAAO,EAAE,eAAe;QACxB,OAAO,EAAE,yBAAyB;QAClC,WAAW,EAAE,qBAAqB;QAClC,QAAQ,EAAE,kBAAkB,CAAC,aAAa;KAC3C;IACD;QACE,IAAI,EAAE,mBAAmB;QACzB,OAAO,EAAE,mBAAmB;QAC5B,OAAO,EAAE,6BAA6B;QACtC,WAAW,EAAE,mBAAmB;QAChC,QAAQ,EAAE,kBAAkB,CAAC,aAAa;KAC3C;IACD;QACE,IAAI,EAAE,iBAAiB;QACvB,OAAO,EAAE,iBAAiB;QAC1B,OAAO,EAAE,2BAA2B;QACpC,WAAW,EAAE,gCAAgC;QAC7C,QAAQ,EAAE,kBAAkB,CAAC,aAAa;KAC3C;IACD;QACE,IAAI,EAAE,oBAAoB;QAC1B,OAAO,EAAE,oBAAoB;QAC7B,OAAO,EAAE,8BAA8B;QACvC,WAAW,EAAE,oCAAoC;QACjD,QAAQ,EAAE,kBAAkB,CAAC,aAAa;KAC3C;IAED,+EAA+E;IAC/E,sBAAsB;IACtB,+EAA+E;IAC/E;QACE,IAAI,EAAE,WAAW;QACjB,OAAO,EAAE,WAAW;QACpB,OAAO,EAAE,gBAAgB;QACzB,WAAW,EAAE,mCAAmC;QAChD,QAAQ,EAAE,kBAAkB,CAAC,iBAAiB;KAC/C;IACD;QACE,IAAI,EAAE,gBAAgB;QACtB,OAAO,EAAE,gBAAgB;QACzB,OAAO,EAAE,gBAAgB;QACzB,WAAW,EAAE,2CAA2C;QACxD,QAAQ,EAAE,kBAAkB,CAAC,iBAAiB;QAC9C,OAAO,EAAE,OAAO;KACjB;IACD;QACE,IAAI,EAAE,gBAAgB;QACtB,OAAO,EAAE,gBAAgB;QACzB,OAAO,EAAE,gBAAgB;QACzB,WAAW,EAAE,2CAA2C;QACxD,QAAQ,EAAE,kBAAkB,CAAC,iBAAiB;QAC9C,OAAO,EAAE,OAAO;KACjB;IACD;QACE,IAAI,EAAE,kBAAkB;QACxB,OAAO,EAAE,kBAAkB;QAC3B,OAAO,EAAE,kBAAkB;QAC3B,WAAW,EAAE,kCAAkC;QAC/C,QAAQ,EAAE,kBAAkB,CAAC,iBAAiB;KAC/C;IACD;QACE,IAAI,EAAE,oBAAoB;QAC1B,OAAO,EAAE,oBAAoB;QAC7B,OAAO,EAAE,oBAAoB;QAC7B,WAAW,EAAE,iCAAiC;QAC9C,QAAQ,EAAE,kBAAkB,CAAC,iBAAiB;KAC/C;IACD;QACE,IAAI,EAAE,mBAAmB;QACzB,OAAO,EAAE,mBAAmB;QAC5B,OAAO,EAAE,mBAAmB;QAC5B,WAAW,EAAE,sBAAsB;QACnC,QAAQ,EAAE,kBAAkB,CAAC,iBAAiB;KAC/C;IACD;QACE,IAAI,EAAE,qBAAqB;QAC3B,OAAO,EAAE,qBAAqB;QAC9B,OAAO,EAAE,qBAAqB;QAC9B,WAAW,EAAE,iEAAiE;QAC9E,QAAQ,EAAE,kBAAkB,CAAC,iBAAiB;KAC/C;IACD;QACE,IAAI,EAAE,WAAW;QACjB,OAAO,EAAE,qBAAqB;QAC9B,OAAO,EAAE,qBAAqB;QAC9B,WAAW,EAAE,yEAAyE;QACtF,QAAQ,EAAE,kBAAkB,CAAC,iBAAiB;QAC9C,OAAO,EAAE,OAAO;KACjB;IACD;QACE,IAAI,EAAE,0BAA0B;QAChC,OAAO,EAAE,0BAA0B;QACnC,OAAO,EAAE,0BAA0B;QACnC,WAAW,EAAE,2BAA2B;QACxC,QAAQ,EAAE,kBAAkB,CAAC,iBAAiB;KAC/C;IACD;QACE,IAAI,EAAE,gBAAgB;QACtB,OAAO,EAAE,gBAAgB;QACzB,OAAO,EAAE,0BAA0B;QACnC,WAAW,EAAE,mCAAmC;QAChD,QAAQ,EAAE,kBAAkB,CAAC,iBAAiB;QAC9C,OAAO,EAAE,OAAO;KACjB;IACD;QACE,IAAI,EAAE,gBAAgB;QACtB,OAAO,EAAE,gBAAgB;QACzB,OAAO,EAAE,0BAA0B;QACnC,WAAW,EAAE,mCAAmC;QAChD,QAAQ,EAAE,kBAAkB,CAAC,iBAAiB;QAC9C,OAAO,EAAE,OAAO;KACjB;IACD;QACE,IAAI,EAAE,mBAAmB;QACzB,OAAO,EAAE,mBAAmB;QAC5B,OAAO,EAAE,6BAA6B;QACtC,WAAW,EAAE,4BAA4B;QACzC,QAAQ,EAAE,kBAAkB,CAAC,iBAAiB;KAC/C;IACD;QACE,IAAI,EAAE,qBAAqB;QAC3B,OAAO,EAAE,qBAAqB;QAC9B,OAAO,EAAE,8BAA8B;QACvC,WAAW,EAAE,uCAAuC;QACpD,QAAQ,EAAE,kBAAkB,CAAC,iBAAiB;KAC/C;IACD;QACE,IAAI,EAAE,mBAAmB;QACzB,OAAO,EAAE,mBAAmB;QAC5B,OAAO,EAAE,6BAA6B;QACtC,WAAW,EAAE,6EAA6E;QAC1F,QAAQ,EAAE,kBAAkB,CAAC,iBAAiB;KAC/C;IACD;QACE,IAAI,EAAE,kBAAkB;QACxB,OAAO,EAAE,kBAAkB;QAC3B,OAAO,EAAE,4BAA4B;QACrC,WAAW,EAAE,sEAAsE;QACnF,QAAQ,EAAE,kBAAkB,CAAC,iBAAiB;KAC/C;IACD;QACE,IAAI,EAAE,qBAAqB;QAC3B,OAAO,EAAE,qBAAqB;QAC9B,OAAO,EAAE,+BAA+B;QACxC,WAAW,EAAE,2EAA2E;QACxF,QAAQ,EAAE,kBAAkB,CAAC,iBAAiB;KAC/C;IACD;QACE,IAAI,EAAE,eAAe;QACrB,OAAO,EAAE,eAAe;QACxB,OAAO,EAAE,yBAAyB;QAClC,WAAW,EAAE,6BAA6B;QAC1C,QAAQ,EAAE,kBAAkB,CAAC,iBAAiB;KAC/C;IACD;QACE,IAAI,EAAE,YAAY;QAClB,OAAO,EAAE,YAAY;QACrB,OAAO,EAAE,sBAAsB;QAC/B,WAAW,EAAE,mEAAmE;QAChF,QAAQ,EAAE,kBAAkB,CAAC,iBAAiB;KAC/C;IACD;QACE,IAAI,EAAE,YAAY;QAClB,OAAO,EAAE,YAAY;QACrB,OAAO,EAAE,sBAAsB;QAC/B,WAAW,EAAE,gEAAgE;QAC7E,QAAQ,EAAE,kBAAkB,CAAC,iBAAiB;KAC/C;IACD;QACE,IAAI,EAAE,eAAe;QACrB,OAAO,EAAE,eAAe;QACxB,OAAO,EAAE,gBAAgB;QACzB,WAAW,EAAE,+CAA+C;QAC5D,QAAQ,EAAE,kBAAkB,CAAC,iBAAiB;KAC/C;IACD;QACE,IAAI,EAAE,SAAS;QACf,OAAO,EAAE,SAAS;QAClB,OAAO,EAAE,mBAAmB;QAC5B,WAAW,EAAE,0BAA0B;QACvC,QAAQ,EAAE,kBAAkB,CAAC,iBAAiB;QAC9C,OAAO,EAAE,QAAQ;QACjB,MAAM,EAAE,YAAY;KACrB;IACD;QACE,IAAI,EAAE,mBAAmB;QACzB,OAAO,EAAE,mBAAmB;QAC5B,OAAO,EAAE,mBAAmB;QAC5B,WAAW,EAAE,0BAA0B;QACvC,QAAQ,EAAE,kBAAkB,CAAC,iBAAiB;QAC9C,OAAO,EAAE,QAAQ;QACjB,MAAM,EAAE,YAAY;KACrB;IACD;QACE,IAAI,EAAE,gBAAgB;QACtB,OAAO,EAAE,gBAAgB;QACzB,OAAO,EAAE,0BAA0B;QACnC,WAAW,EAAE,iCAAiC;QAC9C,QAAQ,EAAE,kBAAkB,CAAC,iBAAiB;QAC9C,OAAO,EAAE,QAAQ;QACjB,MAAM,EAAE,YAAY;KACrB;IAED,+EAA+E;IAC/E,iBAAiB;IACjB,+EAA+E;IAC/E;QACE,IAAI,EAAE,aAAa;QACnB,OAAO,EAAE,aAAa;QACtB,OAAO,EAAE,uBAAuB;QAChC,WAAW,EAAE,8BAA8B;QAC3C,QAAQ,EAAE,kBAAkB,CAAC,YAAY;KAC1C;IACD;QACE,IAAI,EAAE,kBAAkB;QACxB,OAAO,EAAE,kBAAkB;QAC3B,OAAO,EAAE,4BAA4B;QACrC,WAAW,EAAE,2BAA2B;QACxC,QAAQ,EAAE,kBAAkB,CAAC,YAAY;KAC1C;IACD;QACE,IAAI,EAAE,kBAAkB;QACxB,OAAO,EAAE,kBAAkB;QAC3B,OAAO,EAAE,4BAA4B;QACrC,WAAW,EAAE,0BAA0B;QACvC,QAAQ,EAAE,kBAAkB,CAAC,YAAY;KAC1C;IACD;QACE,IAAI,EAAE,cAAc;QACpB,OAAO,EAAE,cAAc;QACvB,OAAO,EAAE,wBAAwB;QACjC,WAAW,EAAE,gCAAgC;QAC7C,QAAQ,EAAE,kBAAkB,CAAC,YAAY;KAC1C;IACD;QACE,IAAI,EAAE,SAAS;QACf,OAAO,EAAE,SAAS;QAClB,OAAO,EAAE,uBAAuB;QAChC,WAAW,EAAE,uBAAuB;QACpC,QAAQ,EAAE,kBAAkB,CAAC,YAAY;KAC1C;IACD;QACE,IAAI,EAAE,mBAAmB;QACzB,OAAO,EAAE,mBAAmB;QAC5B,OAAO,EAAE,uBAAuB;QAChC,WAAW,EAAE,+BAA+B;QAC5C,QAAQ,EAAE,kBAAkB,CAAC,YAAY;QACzC,OAAO,EAAE,OAAO;KACjB;IAED,+EAA+E;IAC/E,mBAAmB;IACnB,+EAA+E;IAC/E;QACE,IAAI,EAAE,cAAc;QACpB,OAAO,EAAE,cAAc;QACvB,OAAO,EAAE,wBAAwB;QACjC,WAAW,EAAE,6BAA6B;QAC1C,QAAQ,EAAE,kBAAkB,CAAC,gBAAgB;KAC9C;IACD;QACE,IAAI,EAAE,eAAe;QACrB,OAAO,EAAE,eAAe;QACxB,OAAO,EAAE,yBAAyB;QAClC,WAAW,EAAE,2BAA2B;QACxC,QAAQ,EAAE,kBAAkB,CAAC,gBAAgB;KAC9C;IACD;QACE,IAAI,EAAE,iBAAiB;QACvB,OAAO,EAAE,iBAAiB;QAC1B,OAAO,EAAE,2BAA2B;QACpC,WAAW,EAAE,uBAAuB;QACpC,QAAQ,EAAE,kBAAkB,CAAC,gBAAgB;KAC9C;IACD;QACE,IAAI,EAAE,YAAY;QAClB,OAAO,EAAE,YAAY;QACrB,OAAO,EAAE,sBAAsB;QAC/B,WAAW,EAAE,gDAAgD;QAC7D,QAAQ,EAAE,kBAAkB,CAAC,gBAAgB;KAC9C;IAED,+EAA+E;IAC/E,kDAAkD;IAClD,+EAA+E;IAC/E;QACE,IAAI,EAAE,WAAW;QACjB,OAAO,EAAE,WAAW;QACpB,OAAO,EAAE,qBAAqB;QAC9B,WAAW,EAAE,4BAA4B;QACzC,QAAQ,EAAE,kBAAkB,CAAC,iBAAiB;KAC/C;IACD;QACE,IAAI,EAAE,YAAY;QAClB,OAAO,EAAE,YAAY;QACrB,OAAO,EAAE,sBAAsB;QAC/B,WAAW,EAAE,6BAA6B;QAC1C,QAAQ,EAAE,kBAAkB,CAAC,iBAAiB;KAC/C;IACD;QACE,IAAI,EAAE,WAAW;QACjB,OAAO,EAAE,WAAW;QACpB,OAAO,EAAE,qBAAqB;QAC9B,WAAW,EAAE,4BAA4B;QACzC,QAAQ,EAAE,kBAAkB,CAAC,iBAAiB;KAC/C;IACD;QACE,IAAI,EAAE,aAAa;QACnB,OAAO,EAAE,aAAa;QACtB,OAAO,EAAE,uBAAuB;QAChC,WAAW,EAAE,8BAA8B;QAC3C,QAAQ,EAAE,kBAAkB,CAAC,iBAAiB;KAC/C;IAED,+EAA+E;IAC/E,gDAAgD;IAChD,+EAA+E;IAC/E;QACE,IAAI,EAAE,YAAY;QAClB,OAAO,EAAE,YAAY;QACrB,OAAO,EAAE,sBAAsB;QAC/B,WAAW,EAAE,kCAAkC;QAC/C,QAAQ,EAAE,kBAAkB,CAAC,iBAAiB;KAC/C;IACD;QACE,IAAI,EAAE,UAAU;QAChB,OAAO,EAAE,UAAU;QACnB,OAAO,EAAE,oBAAoB;QAC7B,WAAW,EAAE,gCAAgC;QAC7C,QAAQ,EAAE,kBAAkB,CAAC,iBAAiB;KAC/C;IACD;QACE,IAAI,EAAE,SAAS;QACf,OAAO,EAAE,SAAS;QAClB,OAAO,EAAE,mBAAmB;QAC5B,WAAW,EAAE,+BAA+B;QAC5C,QAAQ,EAAE,kBAAkB,CAAC,iBAAiB;KAC/C;IACD;QACE,IAAI,EAAE,YAAY;QAClB,OAAO,EAAE,YAAY;QACrB,OAAO,EAAE,sBAAsB;QAC/B,WAAW,EAAE,kCAAkC;QAC/C,QAAQ,EAAE,kBAAkB,CAAC,iBAAiB;KAC/C;IAED,+EAA+E;IAC/E,wCAAwC;IACxC,+EAA+E;IAC/E;QACE,IAAI,EAAE,aAAa;QACnB,OAAO,EAAE,aAAa;QACtB,OAAO,EAAE,uBAAuB;QAChC,WAAW,EAAE,4CAA4C;QACzD,QAAQ,EAAE,kBAAkB,CAAC,KAAK;KACnC;IACD;QACE,IAAI,EAAE,eAAe;QACrB,OAAO,EAAE,eAAe;QACxB,OAAO,EAAE,yBAAyB;QAClC,WAAW,EAAE,4BAA4B;QACzC,QAAQ,EAAE,kBAAkB,CAAC,KAAK;KACnC;IACD;QACE,IAAI,EAAE,eAAe;QACrB,OAAO,EAAE,eAAe;QACxB,OAAO,EAAE,yBAAyB;QAClC,WAAW,EAAE,sCAAsC;QACnD,QAAQ,EAAE,kBAAkB,CAAC,KAAK;KACnC;IACD;QACE,IAAI,EAAE,WAAW;QACjB,OAAO,EAAE,WAAW;QACpB,OAAO,EAAE,qBAAqB;QAC9B,WAAW,EAAE,0CAA0C;QACvD,QAAQ,EAAE,kBAAkB,CAAC,KAAK;KACnC;IACD;QACE,IAAI,EAAE,cAAc;QACpB,OAAO,EAAE,cAAc;QACvB,OAAO,EAAE,wBAAwB;QACjC,WAAW,EAAE,qCAAqC;QAClD,QAAQ,EAAE,kBAAkB,CAAC,KAAK;KACnC;IACD;QACE,IAAI,EAAE,cAAc;QACpB,OAAO,EAAE,cAAc;QACvB,OAAO,EAAE,wBAAwB;QACjC,WAAW,EAAE,sCAAsC;QACnD,QAAQ,EAAE,kBAAkB,CAAC,KAAK;KACnC;IACD;QACE,IAAI,EAAE,aAAa;QACnB,OAAO,EAAE,aAAa;QACtB,OAAO,EAAE,uBAAuB;QAChC,WAAW,EAAE,uCAAuC;QACpD,QAAQ,EAAE,kBAAkB,CAAC,KAAK;KACnC;CACF,CAAC;AAEF,+EAA+E;AAC/E,6DAA6D;AAC7D,+EAA+E;AAC/E,mFAAmF;AACnF,EAAE;AACF,uDAAuD;AACvD,4CAA4C;AAC5C,8CAA8C;AAC9C,0EAA0E;AAC1E,gFAAgF;AAChF,qDAAqD;AACrD,wDAAwD;AACxD,4DAA4D;AAC5D,0DAA0D;AAC1D,qDAAqD;AACrD,qDAAqD;AACrD,+CAA+C;AAC/C,+EAA+E;AAE/E,MAAM,uBAAuB,GAAmB,SAAS,CAAC;AAC1D,MAAM,wBAAwB,GAAoB,SAAS,CAAC;AAC5D,MAAM,sBAAsB,GAAkB,QAAQ,CAAC;AAQvD,MAAM,UAAU,4BAA4B,CAAC,OAAsB;IACjE,OAAO;QACL,GAAG,OAAO;QACV,OAAO,EAAE,OAAO,CAAC,OAAO,IAAI,uBAAuB;QACnD,QAAQ,EAAE,OAAO,CAAC,QAAQ,IAAI,wBAAwB;QACtD,MAAM,EAAE,OAAO,CAAC,MAAM,IAAI,sBAAsB;KACjD,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,sBAAsB,CAAC,OAGtC;IACC,MAAM,cAAc,GAAG,OAAO,EAAE,cAAc,IAAI,KAAK,CAAC;IACxD,MAAM,aAAa,GAAG,OAAO,EAAE,aAAa,IAAI,KAAK,CAAC;IAEtD,OAAO,eAAe,CAAC,GAAG,CAAC,4BAA4B,CAAC,CAAC,MAAM,CAAC,CAAC,OAAO,EAAE,EAAE;QAC1E,IAAI,OAAO,CAAC,OAAO,KAAK,SAAS,EAAE,CAAC;YAClC,OAAO,IAAI,CAAC;QACd,CAAC;QACD,IAAI,OAAO,CAAC,OAAO,KAAK,OAAO,EAAE,CAAC;YAChC,OAAO,cAAc,CAAC;QACxB,CAAC;QACD,IAAI,OAAO,CAAC,OAAO,KAAK,QAAQ,EAAE,CAAC;YACjC,OAAO,aAAa,CAAC;QACvB,CAAC;QACD,OAAO,KAAK,CAAC;IACf,CAAC,CAAC,CAAC;AACL,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,iBAAiB;IAC/B,OAAO,eAAe,CAAC;AACzB,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,qBAAqB;IACnC,OAAO,eAAe,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;AAChD,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,iBAAiB;IAC/B,OAAO,eAAe,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;AACnD,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,eAAe,CAAC,IAAY;IAC1C,OAAO,eAAe,CAAC,IAAI,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,IAAI,KAAK,IAAI,IAAI,GAAG,CAAC,OAAO,KAAK,IAAI,CAAC,CAAC;AAClF,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,qBAAqB;IACnC,MAAM,UAAU,GAAG,IAAI,GAAG,EAA2B,CAAC;IAEtD,KAAK,MAAM,GAAG,IAAI,eAAe,EAAE,CAAC;QAClC,MAAM,QAAQ,GAAG,UAAU,CAAC,GAAG,CAAC,GAAG,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC;QACpD,QAAQ,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QACnB,UAAU,CAAC,GAAG,CAAC,GAAG,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAC;IACzC,CAAC;IAED,OAAO,UAAU,CAAC;AACpB,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,sBAAsB;IACpC,MAAM,GAAG,GAA2B,EAAE,CAAC;IACvC,KAAK,MAAM,GAAG,IAAI,eAAe,EAAE,CAAC;QAClC,GAAG,CAAC,GAAG,CAAC,OAAO,CAAC,GAAG,GAAG,CAAC,OAAO,CAAC;IACjC,CAAC;IACD,OAAO,GAAG,CAAC;AACb,CAAC;AAED;;;;;;GAMG;AACH,MAAM,CAAC,MAAM,oBAAoB,GAA2B;IAC1D,YAAY,EAAE,mBAAmB;CAClC,CAAC;AAEF;;;;;;;;;;GAUG;AACH,MAAM,UAAU,2BAA2B;IACzC,MAAM,OAAO,GAA2B,EAAE,CAAC;IAC3C,KAAK,MAAM,GAAG,IAAI,eAAe,EAAE,CAAC;QAClC,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG,oBAAoB,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,GAAG,CAAC,OAAO,CAAC;IACpE,CAAC;IACD,OAAO,OAAO,CAAC;AACjB,CAAC"}
1
+ {"version":3,"file":"public-manifest.js","sourceRoot":"","sources":["../src/public-manifest.ts"],"names":[],"mappings":"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"}
package/dist/release.js CHANGED
@@ -136,6 +136,24 @@ const PACK_COUNT_BELOW_BASELINE_PREFIX = 'packed file count';
136
136
  const PACK_COUNT_BELOW_BASELINE_MID = 'is below 10% of previous published version';
137
137
  const SKIP_BUILD_SYMLINK_ERROR_PREFIX = 'Refusing release with --skip-build:';
138
138
  const SKIP_BUILD_SYMLINK_ERROR_GUIDANCE = 'Run release without --skip-build so dist can be rebuilt as real files.';
139
+ /**
140
+ * WU-2898: npm/pnpm `--access` value used for @lumenflow/* publish.
141
+ *
142
+ * The repo treats this as a single source of truth so the release command,
143
+ * the dry-run instruction printout, and the regression test all agree.
144
+ * Flipping this to "public" without also reverting the per-package
145
+ * publishConfig.access values would re-publish the org publicly.
146
+ */
147
+ export const RELEASE_PUBLISH_ACCESS = 'restricted';
148
+ /**
149
+ * WU-2898: Build the recursive publish command line that the release
150
+ * micro-worktree spawns via `runCommand`. Exposed for unit tests so the
151
+ * `--access restricted` invariant can be asserted without standing up the
152
+ * full release transaction.
153
+ */
154
+ export function buildPublishCommand(pkgManager = PKG_MANAGER, access = RELEASE_PUBLISH_ACCESS) {
155
+ return `${pkgManager} -r publish --access ${access} --no-git-checks`;
156
+ }
139
157
  /**
140
158
  * Environment variable for WU tool identification (WU-1296)
141
159
  * Pre-push hook checks this to allow approved tool operations
@@ -1103,6 +1121,11 @@ export function resolveRegistryVersionViaNpmView(packageName) {
1103
1121
  return null;
1104
1122
  }
1105
1123
  }
1124
+ const defaultConsumerInstallExecutor = (command, options) => execSync(command, {
1125
+ cwd: options.cwd,
1126
+ stdio: ['ignore', 'pipe', 'pipe'],
1127
+ encoding: options.encoding,
1128
+ });
1106
1129
  /** Sentinel token npm prints on registry 404s */
1107
1130
  const NPM_404_TOKEN = '404';
1108
1131
  /**
@@ -1137,11 +1160,11 @@ export function verifyConsumerInstall(packageJsonPaths, options = {}) {
1137
1160
  writeFileSync(join(consumerDir, PACKAGE_JSON_FILENAME), JSON.stringify({ name: 'lumenflow-release-consumer-probe', private: true }));
1138
1161
  const installArgs = tarballs.map((t) => t.tarballPath).join(' ');
1139
1162
  const installCommand = `npm install --no-save --no-audit --no-fund ${installArgs}`;
1163
+ const installer = options.installer ?? defaultConsumerInstallExecutor;
1140
1164
  let output = '';
1141
1165
  try {
1142
- output = execSync(installCommand, {
1166
+ output = installer(installCommand, {
1143
1167
  cwd: consumerDir,
1144
- stdio: ['ignore', 'pipe', 'pipe'],
1145
1168
  encoding: FILE_SYSTEM.ENCODING,
1146
1169
  });
1147
1170
  }
@@ -1465,7 +1488,12 @@ export async function executeReleaseInMicroWorktree(opts) {
1465
1488
  // Phase 4: Publish to npm (from micro-worktree)
1466
1489
  if (shouldPublishPackages) {
1467
1490
  console.log(`${LOG_PREFIX} Publishing packages to npm...`);
1468
- runCommand(`${PKG_MANAGER} -r publish --access public --no-git-checks`, {
1491
+ // WU-2898: Privatize @lumenflow/* distribution. Switch to
1492
+ // --access restricted so the npm publish operation refuses to
1493
+ // accept @lumenflow/* tarballs at public access. Each package
1494
+ // also declares publishConfig.access = "restricted", which gives
1495
+ // a second line of defence at the package manifest level.
1496
+ runCommand(buildPublishCommand(), {
1469
1497
  label: 'publish',
1470
1498
  cwd: worktreePath,
1471
1499
  });
@@ -1537,7 +1565,7 @@ export async function executeReleaseInMicroWorktree(opts) {
1537
1565
  console.log(`\n${LOG_PREFIX} Next steps:`);
1538
1566
  console.log(` - Create GitHub release: gh release create ${tagName} --title "Release ${tagName}"`);
1539
1567
  if (!shouldPublishPackages) {
1540
- console.log(` - Publish to npm: ${PKG_MANAGER} -r publish --access public --no-git-checks`);
1568
+ console.log(` - Publish to npm: ${buildPublishCommand()}`);
1541
1569
  }
1542
1570
  console.log(` - Verify packages: npm view @lumenflow/cli version`);
1543
1571
  }