@lumenflow/cli 3.16.0 → 3.17.0
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 +1 -3
- package/dist/config-get.js +3 -3
- package/dist/config-get.js.map +1 -1
- package/dist/config-set.js +3 -3
- package/dist/config-set.js.map +1 -1
- package/dist/docs-sync.js +302 -57
- package/dist/docs-sync.js.map +1 -1
- package/dist/doctor.js +3 -3
- package/dist/doctor.js.map +1 -1
- package/dist/gate-defaults.js +3 -0
- package/dist/gate-defaults.js.map +1 -1
- package/dist/gates-plan-resolvers.js +3 -4
- package/dist/gates-plan-resolvers.js.map +1 -1
- package/dist/gates-runners.js +48 -0
- package/dist/gates-runners.js.map +1 -1
- package/dist/gates-utils.js +64 -3
- package/dist/gates-utils.js.map +1 -1
- package/dist/gates.js +2 -1
- package/dist/gates.js.map +1 -1
- package/dist/init-scaffolding.js +28 -1
- package/dist/init-scaffolding.js.map +1 -1
- package/dist/init-templates.js +6 -2
- package/dist/init-templates.js.map +1 -1
- package/dist/init.js +22 -25
- package/dist/init.js.map +1 -1
- package/dist/lane-create.js +2 -2
- package/dist/lane-create.js.map +1 -1
- package/dist/lane-edit.js +2 -2
- package/dist/lane-edit.js.map +1 -1
- package/dist/lane-lock.js +8 -6
- package/dist/lane-lock.js.map +1 -1
- package/dist/lane-setup.js +7 -5
- package/dist/lane-setup.js.map +1 -1
- package/dist/lane-status.js +7 -5
- package/dist/lane-status.js.map +1 -1
- package/dist/lane-validate.js +8 -6
- package/dist/lane-validate.js.map +1 -1
- package/dist/lumenflow-upgrade.js +22 -13
- package/dist/lumenflow-upgrade.js.map +1 -1
- package/dist/onboard.js +15 -16
- package/dist/onboard.js.map +1 -1
- package/dist/orchestrate-initiative.js +29 -8
- package/dist/orchestrate-initiative.js.map +1 -1
- package/dist/state-doctor.js +3 -4
- package/dist/state-doctor.js.map +1 -1
- package/dist/wu-done-policies.js +38 -0
- package/dist/wu-done-policies.js.map +1 -1
- package/dist/wu-edit-operations.js +27 -24
- package/dist/wu-edit-operations.js.map +1 -1
- package/dist/wu-edit-validators.js +68 -0
- package/dist/wu-edit-validators.js.map +1 -1
- package/dist/wu-edit.js +11 -3
- package/dist/wu-edit.js.map +1 -1
- package/package.json +8 -8
- package/packs/sidekick/.turbo/turbo-build.log +1 -1
- package/packs/sidekick/package.json +1 -1
- package/packs/software-delivery/.turbo/turbo-build.log +1 -1
- package/packs/software-delivery/package.json +1 -1
- package/templates/core/AGENTS.md.template +2 -1
- package/templates/core/LUMENFLOW.md.template +5 -1
- package/templates/core/UPGRADING.md.template +14 -10
- package/templates/core/ai/onboarding/initiative-orchestration.md.template +1 -1
- package/templates/core/ai/onboarding/quick-ref-commands.md.template +11 -10
- package/templates/core/ai/onboarding/starting-prompt.md.template +3 -3
- package/templates/vendors/claude/.claude/CLAUDE.md.template +2 -1
- package/templates/vendors/cursor/.cursor/rules/lumenflow.md.template +2 -1
- package/templates/vendors/windsurf/.windsurf/rules/lumenflow.md.template +2 -1
- package/dist/chunk-2D2VOCA4.js +0 -37
- package/dist/chunk-2D5KFYGX.js +0 -284
- package/dist/chunk-2GXVIN57.js +0 -14072
- package/dist/chunk-2MQ7HZWZ.js +0 -26
- package/dist/chunk-2UFQ3A3C.js +0 -643
- package/dist/chunk-3RG5ZIWI.js +0 -10
- package/dist/chunk-4N74J3UT.js +0 -15
- package/dist/chunk-5GTOXFYR.js +0 -392
- package/dist/chunk-5VY6MQMC.js +0 -240
- package/dist/chunk-67XVPMRY.js +0 -1297
- package/dist/chunk-6HO4GWJE.js +0 -164
- package/dist/chunk-6W5XHWYV.js +0 -1890
- package/dist/chunk-6X4EMYJQ.js +0 -64
- package/dist/chunk-6XYXI2NQ.js +0 -772
- package/dist/chunk-7ANSOV6Q.js +0 -285
- package/dist/chunk-A624LFLB.js +0 -1380
- package/dist/chunk-ADN5NHG4.js +0 -126
- package/dist/chunk-B7YJYJKG.js +0 -33
- package/dist/chunk-CCLHCPKG.js +0 -210
- package/dist/chunk-CK36VROC.js +0 -1584
- package/dist/chunk-D3UOFRSB.js +0 -81
- package/dist/chunk-DFR4DJBM.js +0 -230
- package/dist/chunk-DSYBDHYH.js +0 -79
- package/dist/chunk-DWMLTXKQ.js +0 -1176
- package/dist/chunk-E3REJTAJ.js +0 -28
- package/dist/chunk-EA3IVO64.js +0 -633
- package/dist/chunk-EK2AKZKD.js +0 -55
- package/dist/chunk-ELD7JTTT.js +0 -343
- package/dist/chunk-EX6TT2XI.js +0 -195
- package/dist/chunk-EXINSFZE.js +0 -82
- package/dist/chunk-EZ6ZBYBM.js +0 -510
- package/dist/chunk-FBKAPTJ2.js +0 -16
- package/dist/chunk-FVLV5RYH.js +0 -1118
- package/dist/chunk-GDNSBQVK.js +0 -2485
- package/dist/chunk-GPQHMBNN.js +0 -278
- package/dist/chunk-GTFJB67L.js +0 -68
- package/dist/chunk-HANJXVKW.js +0 -1127
- package/dist/chunk-HEVS5YLD.js +0 -269
- package/dist/chunk-HMEVZKPQ.js +0 -9
- package/dist/chunk-HRGSYNLM.js +0 -3511
- package/dist/chunk-ISZR5N4K.js +0 -60
- package/dist/chunk-J6SUPR2C.js +0 -226
- package/dist/chunk-JERYVEIZ.js +0 -244
- package/dist/chunk-JHHWGL2N.js +0 -87
- package/dist/chunk-JONWQUB5.js +0 -775
- package/dist/chunk-K2DIWWDM.js +0 -1766
- package/dist/chunk-KY4PGL5V.js +0 -969
- package/dist/chunk-L737LQ4C.js +0 -1285
- package/dist/chunk-LFTWYIB2.js +0 -497
- package/dist/chunk-LV47RFNJ.js +0 -41
- package/dist/chunk-MKSAITI7.js +0 -15
- package/dist/chunk-MZ7RKIX4.js +0 -212
- package/dist/chunk-NAP6CFSO.js +0 -84
- package/dist/chunk-ND6MY37M.js +0 -16
- package/dist/chunk-NMG736UR.js +0 -683
- package/dist/chunk-NRAXROED.js +0 -32
- package/dist/chunk-NRIZR3A7.js +0 -690
- package/dist/chunk-NX43BG3M.js +0 -233
- package/dist/chunk-O645XLSI.js +0 -297
- package/dist/chunk-OMJD6A3S.js +0 -235
- package/dist/chunk-QB6SJD4T.js +0 -430
- package/dist/chunk-QFSTL4J3.js +0 -276
- package/dist/chunk-QLGDFMFX.js +0 -212
- package/dist/chunk-RIAAGL2E.js +0 -13
- package/dist/chunk-RWO5XMZ6.js +0 -86
- package/dist/chunk-RXRKBBSM.js +0 -149
- package/dist/chunk-RZOZMML6.js +0 -363
- package/dist/chunk-U7I7FS7T.js +0 -113
- package/dist/chunk-UI42RODY.js +0 -717
- package/dist/chunk-UTVMVSCO.js +0 -519
- package/dist/chunk-V6OJGLBA.js +0 -1746
- package/dist/chunk-W2JHVH7D.js +0 -152
- package/dist/chunk-WD3Y7VQN.js +0 -280
- package/dist/chunk-WOCTQ5MS.js +0 -303
- package/dist/chunk-WZR3ZUNN.js +0 -696
- package/dist/chunk-XGI665H7.js +0 -150
- package/dist/chunk-XKY65P2T.js +0 -304
- package/dist/chunk-Y4CQZY65.js +0 -57
- package/dist/chunk-YFEXKLVE.js +0 -194
- package/dist/chunk-YHO3HS5X.js +0 -287
- package/dist/chunk-YLS7AZSX.js +0 -738
- package/dist/chunk-ZE473AO6.js +0 -49
- package/dist/chunk-ZF747T3O.js +0 -644
- package/dist/chunk-ZHCZHZH3.js +0 -43
- package/dist/chunk-ZZNZX2XY.js +0 -87
- package/dist/constants-7QAP3VQ4.js +0 -23
- package/dist/dist-IY3UUMWK.js +0 -33
- package/dist/invariants-runner-W5RGHCSU.js +0 -27
- package/dist/lane-lock-6J36HD5O.js +0 -35
- package/dist/mem-checkpoint-core-EANG2GVN.js +0 -14
- package/dist/mem-signal-core-2LZ2WYHW.js +0 -19
- package/dist/memory-store-OLB5FO7K.js +0 -18
- package/dist/service-6BYCOCO5.js +0 -13
- package/dist/spawn-policy-resolver-NTSZYQ6R.js +0 -17
- package/dist/spawn-task-builder-R4E2BHSW.js +0 -22
- package/dist/wu-done-pr-WLFFFEPJ.js +0 -25
- package/dist/wu-done-validation-3J5E36FE.js +0 -30
- package/dist/wu-duplicate-id-detector-5S7JHELK.js +0 -232
- package/packs/sidekick/.turbo/turbo-typecheck.log +0 -4
- package/packs/software-delivery/.turbo/turbo-typecheck.log +0 -4
package/README.md
CHANGED
|
@@ -302,11 +302,9 @@ pnpm outdated @lumenflow/*
|
|
|
302
302
|
# Update all LumenFlow packages atomically
|
|
303
303
|
pnpm lumenflow:upgrade --latest
|
|
304
304
|
|
|
305
|
-
# Refresh scaffolded onboarding docs and vendor assets
|
|
306
|
-
pnpm docs:sync --force
|
|
307
305
|
```
|
|
308
306
|
|
|
309
|
-
**
|
|
307
|
+
> **Note:** `lumenflow:upgrade` syncs docs automatically as part of the upgrade transaction. A separate `docs:sync` step is no longer needed.
|
|
310
308
|
|
|
311
309
|
For current setup guidance and troubleshooting, see [LUMENFLOW.md](https://lumenflow.dev).
|
|
312
310
|
|
package/dist/config-get.js
CHANGED
|
@@ -17,7 +17,7 @@
|
|
|
17
17
|
import path from 'node:path';
|
|
18
18
|
import { existsSync, readFileSync } from 'node:fs';
|
|
19
19
|
import YAML from 'yaml';
|
|
20
|
-
import { findProjectRoot, WRITABLE_ROOT_KEYS } from '@lumenflow/core/config';
|
|
20
|
+
import { findProjectRoot, getWorkspaceInitCommand, WRITABLE_ROOT_KEYS, } from '@lumenflow/core/config';
|
|
21
21
|
import { die } from '@lumenflow/core/error-handler';
|
|
22
22
|
import { FILE_SYSTEM } from '@lumenflow/core/wu-constants';
|
|
23
23
|
import { runCLI } from './cli-entry-point.js';
|
|
@@ -26,7 +26,6 @@ import { parseConfigGetArgs, getConfigValue, routeConfigKey, loadPackConfigKeys,
|
|
|
26
26
|
// Constants
|
|
27
27
|
// ---------------------------------------------------------------------------
|
|
28
28
|
const LOG_PREFIX = '[config:get]';
|
|
29
|
-
const WORKSPACE_INIT_COMMAND = 'pnpm workspace-init --yes';
|
|
30
29
|
// ---------------------------------------------------------------------------
|
|
31
30
|
// Core logic: applyConfigGet (pure, no side effects)
|
|
32
31
|
// ---------------------------------------------------------------------------
|
|
@@ -77,8 +76,9 @@ export async function main() {
|
|
|
77
76
|
const options = parseConfigGetArgs(userArgs);
|
|
78
77
|
const projectRoot = findProjectRoot();
|
|
79
78
|
const workspacePath = path.join(projectRoot, WORKSPACE_FILE_NAME);
|
|
79
|
+
const workspaceInitCommand = getWorkspaceInitCommand(projectRoot);
|
|
80
80
|
if (!existsSync(workspacePath)) {
|
|
81
|
-
die(`${LOG_PREFIX} Missing ${WORKSPACE_FILE_NAME}. Run \`${
|
|
81
|
+
die(`${LOG_PREFIX} Missing ${WORKSPACE_FILE_NAME}. Run \`${workspaceInitCommand}\` first.`);
|
|
82
82
|
}
|
|
83
83
|
// Read raw workspace (preserving YAML structure, not Zod-parsed defaults)
|
|
84
84
|
const content = readFileSync(workspacePath, FILE_SYSTEM.UTF8);
|
package/dist/config-get.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"config-get.js","sourceRoot":"","sources":["../src/config-get.ts"],"names":[],"mappings":";AACA,iCAAiC;AACjC,yCAAyC;AAEzC;;;;;;;;;;;;GAYG;AAEH,OAAO,IAAI,MAAM,WAAW,CAAC;AAC7B,OAAO,EAAE,UAAU,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AACnD,OAAO,IAAI,MAAM,MAAM,CAAC;AACxB,OAAO,
|
|
1
|
+
{"version":3,"file":"config-get.js","sourceRoot":"","sources":["../src/config-get.ts"],"names":[],"mappings":"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"}
|
package/dist/config-set.js
CHANGED
|
@@ -23,7 +23,7 @@ import path from 'node:path';
|
|
|
23
23
|
import { createError, ErrorCodes } from '@lumenflow/core';
|
|
24
24
|
import { existsSync, readFileSync, writeFileSync } from 'node:fs';
|
|
25
25
|
import YAML from 'yaml';
|
|
26
|
-
import { findProjectRoot, WORKSPACE_CONFIG_FILE_NAME, clearConfigCache, } from '@lumenflow/core/config';
|
|
26
|
+
import { findProjectRoot, WORKSPACE_CONFIG_FILE_NAME, clearConfigCache, getWorkspaceInitCommand, } from '@lumenflow/core/config';
|
|
27
27
|
import { die } from '@lumenflow/core/error-handler';
|
|
28
28
|
import { FILE_SYSTEM } from '@lumenflow/core/wu-constants';
|
|
29
29
|
import { withMicroWorktree } from '@lumenflow/core/micro-worktree';
|
|
@@ -42,7 +42,6 @@ const ARG_KEY = '--key';
|
|
|
42
42
|
const ARG_VALUE = '--value';
|
|
43
43
|
const ARG_HELP = '--help';
|
|
44
44
|
const COMMIT_PREFIX = 'chore: config:set';
|
|
45
|
-
const WORKSPACE_INIT_COMMAND = 'pnpm workspace-init --yes';
|
|
46
45
|
export const WORKSPACE_FILE_NAME = WORKSPACE_CONFIG_FILE_NAME;
|
|
47
46
|
/**
|
|
48
47
|
* Known sub-keys of LumenFlowConfigSchema (software_delivery pack config).
|
|
@@ -701,8 +700,9 @@ export async function main() {
|
|
|
701
700
|
const options = parseConfigSetArgs(userArgs);
|
|
702
701
|
const projectRoot = findProjectRoot();
|
|
703
702
|
const workspacePath = path.join(projectRoot, WORKSPACE_FILE_NAME);
|
|
703
|
+
const workspaceInitCommand = getWorkspaceInitCommand(projectRoot);
|
|
704
704
|
if (!existsSync(workspacePath)) {
|
|
705
|
-
die(`${LOG_PREFIX} Missing ${WORKSPACE_FILE_NAME}. Run \`${
|
|
705
|
+
die(`${LOG_PREFIX} Missing ${WORKSPACE_FILE_NAME}. Run \`${workspaceInitCommand}\` first.`);
|
|
706
706
|
}
|
|
707
707
|
// Load pack config_keys from workspace for routing
|
|
708
708
|
const rawWorkspace = readRawWorkspace(workspacePath);
|
package/dist/config-set.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"config-set.js","sourceRoot":"","sources":["../src/config-set.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"config-set.js","sourceRoot":"","sources":["../src/config-set.ts"],"names":[],"mappings":"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"}
|
package/dist/docs-sync.js
CHANGED
|
@@ -10,13 +10,16 @@
|
|
|
10
10
|
*/
|
|
11
11
|
import * as fs from 'node:fs';
|
|
12
12
|
import * as path from 'node:path';
|
|
13
|
-
import { createWUParser, WU_OPTIONS, getDefaultConfig, createError, ErrorCodes, } from '@lumenflow/core';
|
|
13
|
+
import { createWUParser, WU_OPTIONS, getDefaultConfig, createError, ErrorCodes, LUMENFLOW_CLIENT_IDS, } from '@lumenflow/core';
|
|
14
14
|
import { createWuPaths } from '@lumenflow/core/wu-paths';
|
|
15
15
|
import { GIT_DIRECTORY_NAME, getConfig } from '@lumenflow/core/config';
|
|
16
16
|
// WU-1362: Import worktree guard utilities for branch checking
|
|
17
17
|
import { isMainBranch, isInWorktree } from '@lumenflow/core/core/worktree-guard';
|
|
18
|
+
// WU-2373: Import micro-worktree for isolation on main branch
|
|
19
|
+
import { withMicroWorktree, isInGitWorktree } from '@lumenflow/core/micro-worktree';
|
|
18
20
|
import { SCAFFOLDED_ONBOARDING_TEMPLATE_PATHS } from './onboarding-template-paths.js';
|
|
19
21
|
import { resolveCliTemplatesDir } from './template-directory-resolver.js';
|
|
22
|
+
import { updateMergeBlock, MARKERS } from './merge-block.js';
|
|
20
23
|
/**
|
|
21
24
|
* WU-1085: CLI option definitions for docs-sync command
|
|
22
25
|
*/
|
|
@@ -24,7 +27,7 @@ const DOCS_SYNC_OPTIONS = {
|
|
|
24
27
|
vendor: {
|
|
25
28
|
name: 'vendor',
|
|
26
29
|
flags: '--vendor <type>',
|
|
27
|
-
description: 'Vendor type (claude, cursor, aider, all, none)',
|
|
30
|
+
description: 'Vendor type (claude, cursor, windsurf, cline, aider, all, none)',
|
|
28
31
|
default: 'claude',
|
|
29
32
|
},
|
|
30
33
|
force: WU_OPTIONS.force,
|
|
@@ -36,7 +39,7 @@ const DOCS_SYNC_OPTIONS = {
|
|
|
36
39
|
export function parseDocsSyncOptions() {
|
|
37
40
|
const opts = createWUParser({
|
|
38
41
|
name: 'lumenflow-docs-sync',
|
|
39
|
-
description: 'Refresh
|
|
42
|
+
description: 'Refresh managed docs, onboarding docs, and selected vendor bootstrap assets safely',
|
|
40
43
|
options: Object.values(DOCS_SYNC_OPTIONS),
|
|
41
44
|
});
|
|
42
45
|
return {
|
|
@@ -161,6 +164,36 @@ export const CORE_DOC_TEMPLATE_PATHS = {
|
|
|
161
164
|
'AGENTS.md': 'core/AGENTS.md.template',
|
|
162
165
|
'.lumenflow/constraints.md': 'core/.lumenflow/constraints.md.template',
|
|
163
166
|
};
|
|
167
|
+
/**
|
|
168
|
+
* WU-2383: Managed docs — 100% LumenFlow-owned, safe to force-sync on upgrade.
|
|
169
|
+
* Users MUST NOT edit these files; use LUMENFLOW.local.md for project-specific additions.
|
|
170
|
+
*/
|
|
171
|
+
export const MANAGED_DOC_PATHS = {
|
|
172
|
+
'LUMENFLOW.md': 'core/LUMENFLOW.md.template',
|
|
173
|
+
'.lumenflow/constraints.md': 'core/.lumenflow/constraints.md.template',
|
|
174
|
+
};
|
|
175
|
+
/**
|
|
176
|
+
* WU-2383: Bootstrap docs — shared files using merge-block markers.
|
|
177
|
+
* LumenFlow content lives between LUMENFLOW:START/END markers.
|
|
178
|
+
* User content outside markers is never touched.
|
|
179
|
+
*/
|
|
180
|
+
export const BOOTSTRAP_DOC_PATHS = {
|
|
181
|
+
'AGENTS.md': 'core/AGENTS.md.template',
|
|
182
|
+
};
|
|
183
|
+
export const VENDOR_BOOTSTRAP_TEMPLATE_PATHS = {
|
|
184
|
+
claude: {
|
|
185
|
+
'CLAUDE.md': 'vendors/claude/.claude/CLAUDE.md.template',
|
|
186
|
+
},
|
|
187
|
+
cursor: {
|
|
188
|
+
'.cursor/rules/lumenflow.md': 'vendors/cursor/.cursor/rules/lumenflow.md.template',
|
|
189
|
+
},
|
|
190
|
+
windsurf: {
|
|
191
|
+
'.windsurf/rules/lumenflow.md': 'vendors/windsurf/.windsurf/rules/lumenflow.md.template',
|
|
192
|
+
},
|
|
193
|
+
cline: {
|
|
194
|
+
'.clinerules': 'vendors/cline/.clinerules.template',
|
|
195
|
+
},
|
|
196
|
+
};
|
|
164
197
|
const CLAUDE_VENDOR_TEMPLATE_ROOT = ['vendors', 'claude', '.claude'].join('/');
|
|
165
198
|
const CLAUDE_SKILLS_TEMPLATE_ROOT = `${CLAUDE_VENDOR_TEMPLATE_ROOT}/skills`;
|
|
166
199
|
/**
|
|
@@ -172,6 +205,97 @@ const SKILL_TEMPLATE_PATHS = {
|
|
|
172
205
|
'worktree-discipline': `${CLAUDE_SKILLS_TEMPLATE_ROOT}/worktree-discipline/SKILL.md.template`,
|
|
173
206
|
'lumenflow-gates': `${CLAUDE_SKILLS_TEMPLATE_ROOT}/lumenflow-gates/SKILL.md.template`,
|
|
174
207
|
};
|
|
208
|
+
/**
|
|
209
|
+
* WU-2383: Exact allowlist of LumenFlow-owned skill names.
|
|
210
|
+
* These skills are managed and updatable on upgrade.
|
|
211
|
+
* User-created skills outside this list are never touched.
|
|
212
|
+
*/
|
|
213
|
+
export const RESERVED_SKILL_NAMES = Object.keys(SKILL_TEMPLATE_PATHS);
|
|
214
|
+
function mergeBootstrapContent(filePath, processedContent, targetDir, result) {
|
|
215
|
+
const relativePath = path.relative(targetDir, filePath).split(path.sep).join('/');
|
|
216
|
+
if (fs.existsSync(filePath)) {
|
|
217
|
+
const existingContent = fs.readFileSync(filePath, 'utf-8');
|
|
218
|
+
const mergeResult = updateMergeBlock(existingContent, processedContent);
|
|
219
|
+
if (mergeResult.updated) {
|
|
220
|
+
fs.writeFileSync(filePath, mergeResult.content);
|
|
221
|
+
result.created.push(relativePath);
|
|
222
|
+
}
|
|
223
|
+
else {
|
|
224
|
+
result.skipped.push(relativePath);
|
|
225
|
+
}
|
|
226
|
+
if (mergeResult.warning) {
|
|
227
|
+
result.warnings = result.warnings ?? [];
|
|
228
|
+
result.warnings.push(`${relativePath}: ${mergeResult.warning}`);
|
|
229
|
+
}
|
|
230
|
+
return;
|
|
231
|
+
}
|
|
232
|
+
const wrappedContent = `${MARKERS.START}\n${processedContent}\n${MARKERS.END}\n`;
|
|
233
|
+
const parentDir = path.dirname(filePath);
|
|
234
|
+
if (!fs.existsSync(parentDir)) {
|
|
235
|
+
fs.mkdirSync(parentDir, { recursive: true });
|
|
236
|
+
}
|
|
237
|
+
fs.writeFileSync(filePath, wrappedContent);
|
|
238
|
+
result.created.push(relativePath);
|
|
239
|
+
}
|
|
240
|
+
function normalizeConfiguredVendor(clientName) {
|
|
241
|
+
switch (clientName) {
|
|
242
|
+
case 'claude':
|
|
243
|
+
case LUMENFLOW_CLIENT_IDS.CLAUDE_CODE:
|
|
244
|
+
return 'claude';
|
|
245
|
+
case 'cursor':
|
|
246
|
+
return 'cursor';
|
|
247
|
+
case 'windsurf':
|
|
248
|
+
return 'windsurf';
|
|
249
|
+
case 'cline':
|
|
250
|
+
return 'cline';
|
|
251
|
+
default:
|
|
252
|
+
return null;
|
|
253
|
+
}
|
|
254
|
+
}
|
|
255
|
+
export function inferConfiguredVendors(targetDir) {
|
|
256
|
+
const inferred = new Set();
|
|
257
|
+
const workspacePath = path.join(targetDir, 'workspace.yaml');
|
|
258
|
+
for (const [vendor, files] of Object.entries(VENDOR_BOOTSTRAP_TEMPLATE_PATHS)) {
|
|
259
|
+
if (Object.keys(files).some((relPath) => fs.existsSync(path.join(targetDir, relPath)))) {
|
|
260
|
+
inferred.add(vendor);
|
|
261
|
+
}
|
|
262
|
+
}
|
|
263
|
+
if (!fs.existsSync(workspacePath)) {
|
|
264
|
+
return [...inferred];
|
|
265
|
+
}
|
|
266
|
+
try {
|
|
267
|
+
const config = getConfig({ projectRoot: targetDir, reload: true });
|
|
268
|
+
const configuredClients = new Set([
|
|
269
|
+
config.agents.defaultClient,
|
|
270
|
+
...Object.keys(config.agents.clients ?? {}),
|
|
271
|
+
]);
|
|
272
|
+
for (const clientName of configuredClients) {
|
|
273
|
+
const vendor = normalizeConfiguredVendor(clientName);
|
|
274
|
+
if (vendor) {
|
|
275
|
+
inferred.add(vendor);
|
|
276
|
+
}
|
|
277
|
+
}
|
|
278
|
+
}
|
|
279
|
+
catch {
|
|
280
|
+
// Fall back to file-based detection only.
|
|
281
|
+
}
|
|
282
|
+
return [...inferred];
|
|
283
|
+
}
|
|
284
|
+
function resolveSelectedVendors(vendor, vendors) {
|
|
285
|
+
if (vendors && vendors.length > 0) {
|
|
286
|
+
return [...vendors];
|
|
287
|
+
}
|
|
288
|
+
if (!vendor || vendor === 'none') {
|
|
289
|
+
return [];
|
|
290
|
+
}
|
|
291
|
+
if (vendor === 'all') {
|
|
292
|
+
return Object.keys(VENDOR_BOOTSTRAP_TEMPLATE_PATHS);
|
|
293
|
+
}
|
|
294
|
+
if (vendor === 'aider') {
|
|
295
|
+
return [];
|
|
296
|
+
}
|
|
297
|
+
return [vendor];
|
|
298
|
+
}
|
|
175
299
|
/**
|
|
176
300
|
* Sync agent onboarding docs to an existing project
|
|
177
301
|
* WU-1124: Now reads templates from bundled files instead of hardcoded strings
|
|
@@ -195,115 +319,236 @@ export async function syncAgentDocs(targetDir, options) {
|
|
|
195
319
|
/**
|
|
196
320
|
* Sync Claude skills to an existing project
|
|
197
321
|
* WU-1124: Now reads templates from bundled files instead of hardcoded strings
|
|
322
|
+
* WU-2383: Reserved skill names are always updated (allowlist-based).
|
|
323
|
+
* User-created skills outside the allowlist are never touched.
|
|
198
324
|
*/
|
|
199
325
|
export async function syncSkills(targetDir, options) {
|
|
200
326
|
const result = {
|
|
201
327
|
created: [],
|
|
202
328
|
skipped: [],
|
|
203
329
|
};
|
|
204
|
-
const
|
|
205
|
-
if (
|
|
330
|
+
const selectedVendors = resolveSelectedVendors(options.vendor, options.vendors);
|
|
331
|
+
if (!selectedVendors.includes('claude')) {
|
|
206
332
|
return result;
|
|
207
333
|
}
|
|
208
334
|
const tokens = {
|
|
209
335
|
DATE: getCurrentDate(),
|
|
210
336
|
};
|
|
211
337
|
const { skillsDir } = resolveDocsSyncDirectories(targetDir);
|
|
212
|
-
// WU-
|
|
338
|
+
// WU-2383: Only sync skills in the reserved allowlist. User-created skills are never touched.
|
|
213
339
|
for (const [skillName, templatePath] of Object.entries(SKILL_TEMPLATE_PATHS)) {
|
|
214
340
|
const skillDir = path.join(skillsDir, skillName);
|
|
215
341
|
await createDirectory(skillDir, result, targetDir);
|
|
216
342
|
const templateContent = loadTemplate(templatePath);
|
|
217
343
|
const processedContent = processTemplate(templateContent, tokens);
|
|
218
|
-
|
|
344
|
+
// WU-2383: Reserved skills are always written (managed content).
|
|
345
|
+
// force=true for reserved skills regardless of caller's force flag.
|
|
346
|
+
await createFile(path.join(skillDir, 'SKILL.md'), processedContent, true, result, targetDir);
|
|
347
|
+
}
|
|
348
|
+
return result;
|
|
349
|
+
}
|
|
350
|
+
export async function syncVendorBootstraps(targetDir, options) {
|
|
351
|
+
const result = {
|
|
352
|
+
created: [],
|
|
353
|
+
skipped: [],
|
|
354
|
+
};
|
|
355
|
+
const tokens = buildCoreDocTokens(targetDir);
|
|
356
|
+
const selectedVendors = resolveSelectedVendors(options.vendor, options.vendors);
|
|
357
|
+
for (const vendor of selectedVendors) {
|
|
358
|
+
const templateMap = VENDOR_BOOTSTRAP_TEMPLATE_PATHS[vendor];
|
|
359
|
+
if (!templateMap) {
|
|
360
|
+
continue;
|
|
361
|
+
}
|
|
362
|
+
for (const [outputFile, templatePath] of Object.entries(templateMap)) {
|
|
363
|
+
const processedContent = processTemplate(loadTemplate(templatePath), tokens);
|
|
364
|
+
mergeBootstrapContent(path.join(targetDir, outputFile), processedContent, targetDir, result);
|
|
365
|
+
}
|
|
219
366
|
}
|
|
220
367
|
return result;
|
|
221
368
|
}
|
|
222
369
|
/**
|
|
223
370
|
* WU-2366: Sync core docs (LUMENFLOW.md, AGENTS.md, constraints.md) to an existing project
|
|
224
|
-
*
|
|
371
|
+
* WU-2383: Split into managed docs (force-sync) and bootstrap docs (merge-block).
|
|
372
|
+
*
|
|
373
|
+
* Managed docs (LUMENFLOW.md, constraints.md) are always written from template.
|
|
374
|
+
* Bootstrap docs (AGENTS.md) use merge-block markers to preserve user content.
|
|
225
375
|
*/
|
|
226
|
-
export async function syncCoreDocs(targetDir,
|
|
376
|
+
export async function syncCoreDocs(targetDir, _options) {
|
|
227
377
|
const result = {
|
|
228
378
|
created: [],
|
|
229
379
|
skipped: [],
|
|
230
380
|
};
|
|
231
381
|
const tokens = buildCoreDocTokens(targetDir);
|
|
232
|
-
|
|
382
|
+
// WU-2383: Managed docs — always write from template (these are 100% LumenFlow-owned)
|
|
383
|
+
for (const [outputFile, templatePath] of Object.entries(MANAGED_DOC_PATHS)) {
|
|
233
384
|
const templateContent = loadTemplate(templatePath);
|
|
234
385
|
const processedContent = processTemplate(templateContent, tokens);
|
|
235
|
-
|
|
386
|
+
const filePath = path.join(targetDir, outputFile);
|
|
387
|
+
// WU-2383: Migration guard — if user has hand-edited a managed file,
|
|
388
|
+
// back up to .local.md before overwriting (first upgrade only).
|
|
389
|
+
if (outputFile === 'LUMENFLOW.md' && fs.existsSync(filePath)) {
|
|
390
|
+
const existingContent = fs.readFileSync(filePath, 'utf-8');
|
|
391
|
+
const DATE_PATTERN = /\d{4}-\d{2}-\d{2}/g;
|
|
392
|
+
const DATE_PLACEHOLDER = 'XXXX-XX-XX';
|
|
393
|
+
const normalizedExisting = existingContent.replace(DATE_PATTERN, DATE_PLACEHOLDER);
|
|
394
|
+
const normalizedTemplate = processedContent.replace(DATE_PATTERN, DATE_PLACEHOLDER);
|
|
395
|
+
if (normalizedExisting !== normalizedTemplate) {
|
|
396
|
+
const localPath = path.join(targetDir, 'LUMENFLOW.local.md');
|
|
397
|
+
if (!fs.existsSync(localPath)) {
|
|
398
|
+
// First drift detection: save user's custom content to .local.md
|
|
399
|
+
fs.writeFileSync(localPath, existingContent);
|
|
400
|
+
result.warnings = result.warnings ?? [];
|
|
401
|
+
result.warnings.push(`LUMENFLOW.md has local modifications. Backed up to LUMENFLOW.local.md before overwriting.`);
|
|
402
|
+
result.created.push('LUMENFLOW.local.md');
|
|
403
|
+
}
|
|
404
|
+
}
|
|
405
|
+
}
|
|
406
|
+
// Always write managed docs regardless of force flag
|
|
407
|
+
await createFile(filePath, processedContent, true, result, targetDir);
|
|
408
|
+
}
|
|
409
|
+
// WU-2383: Bootstrap docs — use merge-block to preserve user content
|
|
410
|
+
for (const [outputFile, templatePath] of Object.entries(BOOTSTRAP_DOC_PATHS)) {
|
|
411
|
+
const templateContent = loadTemplate(templatePath);
|
|
412
|
+
const processedContent = processTemplate(templateContent, tokens);
|
|
413
|
+
const filePath = path.join(targetDir, outputFile);
|
|
414
|
+
mergeBootstrapContent(filePath, processedContent, targetDir, result);
|
|
236
415
|
}
|
|
237
416
|
return result;
|
|
238
417
|
}
|
|
418
|
+
/** Log prefix for console output */
|
|
419
|
+
const LOG_PREFIX = '[lumenflow docs:sync]';
|
|
420
|
+
/** Operation name for micro-worktree */
|
|
421
|
+
const OPERATION_NAME = 'docs-sync';
|
|
239
422
|
/**
|
|
240
|
-
* WU-
|
|
241
|
-
*
|
|
242
|
-
* Warns (but does not block) if:
|
|
243
|
-
* - On main branch AND
|
|
244
|
-
* - Not in a worktree directory AND
|
|
245
|
-
* - Git repository exists (has .git)
|
|
423
|
+
* WU-2373: Determine whether docs:sync should use micro-worktree isolation.
|
|
246
424
|
*
|
|
247
|
-
*
|
|
248
|
-
*
|
|
425
|
+
* Returns true when on main branch AND not in a worktree.
|
|
426
|
+
* Returns false when in a worktree, on a non-main branch, or not in git.
|
|
249
427
|
*/
|
|
250
|
-
async function
|
|
251
|
-
|
|
428
|
+
async function shouldUseMicroWorktree(targetDir) {
|
|
429
|
+
// If running inside a git worktree, write directly (existing behavior)
|
|
430
|
+
if (isInGitWorktree()) {
|
|
431
|
+
return false;
|
|
432
|
+
}
|
|
433
|
+
// Check if we're in a worktree via path-based detection
|
|
434
|
+
if (isInWorktree({ cwd: targetDir })) {
|
|
435
|
+
return false;
|
|
436
|
+
}
|
|
252
437
|
// Only check if target is a git repository
|
|
253
438
|
const gitDir = path.join(targetDir, GIT_DIRECTORY_NAME);
|
|
254
439
|
if (!fs.existsSync(gitDir)) {
|
|
255
|
-
return
|
|
256
|
-
}
|
|
257
|
-
// Check if we're in a worktree (always allow)
|
|
258
|
-
if (isInWorktree({ cwd: targetDir })) {
|
|
259
|
-
return warnings;
|
|
440
|
+
return false;
|
|
260
441
|
}
|
|
261
442
|
// Check if on main branch
|
|
262
443
|
try {
|
|
263
|
-
|
|
264
|
-
if (onMain) {
|
|
265
|
-
warnings.push('Running docs:sync on main branch in main checkout. ' +
|
|
266
|
-
'Consider using a worktree for changes to tracked files.');
|
|
267
|
-
}
|
|
444
|
+
return await isMainBranch();
|
|
268
445
|
}
|
|
269
446
|
catch {
|
|
270
|
-
|
|
447
|
+
return false;
|
|
448
|
+
}
|
|
449
|
+
}
|
|
450
|
+
/**
|
|
451
|
+
* WU-2373: Execute all docs sync operations in a given directory.
|
|
452
|
+
* Shared logic used by both direct-write and micro-worktree paths.
|
|
453
|
+
*
|
|
454
|
+
* @returns Object with created files list and commit message
|
|
455
|
+
*/
|
|
456
|
+
export async function executeDocsSyncInDir(targetDir, options) {
|
|
457
|
+
const selectedVendors = options.vendor === undefined
|
|
458
|
+
? inferConfiguredVendors(targetDir)
|
|
459
|
+
: resolveSelectedVendors(options.vendor, options.vendors);
|
|
460
|
+
const coreResult = await syncCoreDocs(targetDir, { force: options.force });
|
|
461
|
+
const docsResult = await syncAgentDocs(targetDir, { force: options.force });
|
|
462
|
+
const vendorBootstrapResult = await syncVendorBootstraps(targetDir, {
|
|
463
|
+
force: options.force,
|
|
464
|
+
vendors: selectedVendors,
|
|
465
|
+
});
|
|
466
|
+
const skillsResult = await syncSkills(targetDir, {
|
|
467
|
+
force: options.force,
|
|
468
|
+
vendors: selectedVendors,
|
|
469
|
+
});
|
|
470
|
+
const created = [
|
|
471
|
+
...coreResult.created,
|
|
472
|
+
...docsResult.created,
|
|
473
|
+
...vendorBootstrapResult.created,
|
|
474
|
+
...skillsResult.created,
|
|
475
|
+
];
|
|
476
|
+
const skipped = [
|
|
477
|
+
...coreResult.skipped,
|
|
478
|
+
...docsResult.skipped,
|
|
479
|
+
...vendorBootstrapResult.skipped,
|
|
480
|
+
...skillsResult.skipped,
|
|
481
|
+
];
|
|
482
|
+
const allFiles = [...created];
|
|
483
|
+
return { created, skipped, allFiles };
|
|
484
|
+
}
|
|
485
|
+
/**
|
|
486
|
+
* WU-2373: Run docs:sync with micro-worktree isolation when on main branch.
|
|
487
|
+
*
|
|
488
|
+
* When on main branch and not in a worktree, uses withMicroWorktree to:
|
|
489
|
+
* 1. Create a temporary worktree
|
|
490
|
+
* 2. Write synced docs there
|
|
491
|
+
* 3. Commit and push atomically
|
|
492
|
+
*
|
|
493
|
+
* When in a worktree or on a non-main branch, writes directly to cwd (preserving
|
|
494
|
+
* existing behavior).
|
|
495
|
+
*
|
|
496
|
+
* @param options - Sync options (force, vendor)
|
|
497
|
+
*/
|
|
498
|
+
export async function runDocsSyncWithIsolation(options) {
|
|
499
|
+
const targetDir = process.cwd();
|
|
500
|
+
const useMicroWorktree = await shouldUseMicroWorktree(targetDir);
|
|
501
|
+
if (useMicroWorktree) {
|
|
502
|
+
console.log(`${LOG_PREFIX} Using micro-worktree isolation (WU-2373)`);
|
|
503
|
+
const syncId = `sync-${Date.now()}`;
|
|
504
|
+
await withMicroWorktree({
|
|
505
|
+
operation: OPERATION_NAME,
|
|
506
|
+
id: syncId,
|
|
507
|
+
logPrefix: LOG_PREFIX,
|
|
508
|
+
execute: async ({ worktreePath }) => {
|
|
509
|
+
const { created, skipped, allFiles } = await executeDocsSyncInDir(worktreePath, options);
|
|
510
|
+
if (created.length > 0) {
|
|
511
|
+
console.log('\nCreated:');
|
|
512
|
+
created.forEach((f) => console.log(` + ${f}`));
|
|
513
|
+
}
|
|
514
|
+
if (skipped.length > 0) {
|
|
515
|
+
console.log('\nSkipped (already up to date or not selected for sync):');
|
|
516
|
+
skipped.forEach((f) => console.log(` - ${f}`));
|
|
517
|
+
}
|
|
518
|
+
return {
|
|
519
|
+
commitMessage: 'chore: docs:sync core docs, onboarding, and vendor assets',
|
|
520
|
+
files: allFiles,
|
|
521
|
+
};
|
|
522
|
+
},
|
|
523
|
+
});
|
|
524
|
+
console.log(`\n${LOG_PREFIX} Done!`);
|
|
525
|
+
}
|
|
526
|
+
else {
|
|
527
|
+
// Direct write path (in worktree or non-main branch)
|
|
528
|
+
const { created, skipped } = await executeDocsSyncInDir(targetDir, options);
|
|
529
|
+
if (created.length > 0) {
|
|
530
|
+
console.log('\nCreated:');
|
|
531
|
+
created.forEach((f) => console.log(` + ${f}`));
|
|
532
|
+
}
|
|
533
|
+
if (skipped.length > 0) {
|
|
534
|
+
console.log('\nSkipped (already up to date or not selected for sync):');
|
|
535
|
+
skipped.forEach((f) => console.log(` - ${f}`));
|
|
536
|
+
}
|
|
537
|
+
console.log(`\n${LOG_PREFIX} Done!`);
|
|
271
538
|
}
|
|
272
|
-
return warnings;
|
|
273
539
|
}
|
|
274
540
|
/**
|
|
275
541
|
* CLI entry point for docs:sync command
|
|
276
542
|
* WU-1085: Updated to use parseDocsSyncOptions for proper --help support
|
|
277
543
|
* WU-1362: Added branch guard check
|
|
544
|
+
* WU-2373: Uses micro-worktree isolation on main branch
|
|
278
545
|
*/
|
|
279
546
|
export async function main() {
|
|
280
547
|
const opts = parseDocsSyncOptions();
|
|
281
|
-
|
|
282
|
-
console.log('[lumenflow docs:sync] Syncing core docs, onboarding docs, and vendor assets...');
|
|
548
|
+
console.log(`${LOG_PREFIX} Syncing core docs, onboarding docs, and vendor assets...`);
|
|
283
549
|
console.log(` Vendor: ${opts.vendor}`);
|
|
284
550
|
console.log(` Force: ${opts.force}`);
|
|
285
|
-
|
|
286
|
-
const branchWarnings = await checkBranchGuard(targetDir);
|
|
287
|
-
// WU-2366: Sync core docs (LUMENFLOW.md, AGENTS.md, constraints.md)
|
|
288
|
-
const coreResult = await syncCoreDocs(targetDir, { force: opts.force });
|
|
289
|
-
const docsResult = await syncAgentDocs(targetDir, { force: opts.force });
|
|
290
|
-
const skillsResult = await syncSkills(targetDir, { force: opts.force, vendor: opts.vendor });
|
|
291
|
-
const created = [...coreResult.created, ...docsResult.created, ...skillsResult.created];
|
|
292
|
-
const skipped = [...coreResult.skipped, ...docsResult.skipped, ...skillsResult.skipped];
|
|
293
|
-
const warnings = [...branchWarnings];
|
|
294
|
-
if (created.length > 0) {
|
|
295
|
-
console.log('\nCreated:');
|
|
296
|
-
created.forEach((f) => console.log(` + ${f}`));
|
|
297
|
-
}
|
|
298
|
-
if (skipped.length > 0) {
|
|
299
|
-
console.log('\nSkipped (already exists, use --force to overwrite):');
|
|
300
|
-
skipped.forEach((f) => console.log(` - ${f}`));
|
|
301
|
-
}
|
|
302
|
-
if (warnings.length > 0) {
|
|
303
|
-
console.log('\nWarnings:');
|
|
304
|
-
warnings.forEach((w) => console.log(` ! ${w}`));
|
|
305
|
-
}
|
|
306
|
-
console.log('\n[lumenflow docs:sync] Done!');
|
|
551
|
+
await runDocsSyncWithIsolation({ force: opts.force, vendor: opts.vendor });
|
|
307
552
|
}
|
|
308
553
|
// CLI entry point (WU-1071 pattern: import.meta.main)
|
|
309
554
|
import { runCLI } from './cli-entry-point.js';
|