@lumenflow/cli 5.3.1 → 5.4.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.
Files changed (55) hide show
  1. package/README.md +20 -18
  2. package/dist/agent-session.js +21 -0
  3. package/dist/agent-session.js.map +1 -1
  4. package/dist/commands/integrate.js +25 -1
  5. package/dist/commands/integrate.js.map +1 -1
  6. package/dist/gates-runners.js +1 -1
  7. package/dist/gates-runners.js.map +1 -1
  8. package/dist/hooks/enforcement-generator.js +14 -8
  9. package/dist/hooks/enforcement-generator.js.map +1 -1
  10. package/dist/hooks/enforcement-sync.js +2 -1
  11. package/dist/hooks/enforcement-sync.js.map +1 -1
  12. package/dist/hooks/generators/index.js +1 -0
  13. package/dist/hooks/generators/index.js.map +1 -1
  14. package/dist/hooks/generators/signal-received.js +4 -0
  15. package/dist/hooks/generators/signal-received.js.map +1 -0
  16. package/dist/mem-converged.js +101 -0
  17. package/dist/mem-converged.js.map +1 -0
  18. package/dist/mem-inbox.js +85 -22
  19. package/dist/mem-inbox.js.map +1 -1
  20. package/dist/mem-roster.js +11 -1
  21. package/dist/mem-roster.js.map +1 -1
  22. package/dist/mem-signal.js +162 -16
  23. package/dist/mem-signal.js.map +1 -1
  24. package/dist/mem-watch.js +207 -0
  25. package/dist/mem-watch.js.map +1 -0
  26. package/dist/public-manifest.js +14 -0
  27. package/dist/public-manifest.js.map +1 -1
  28. package/dist/session-cross-link.js +14 -2
  29. package/dist/session-cross-link.js.map +1 -1
  30. package/dist/sidecar-manager.js +25 -0
  31. package/dist/sidecar-manager.js.map +1 -1
  32. package/dist/signal-hook.js +351 -0
  33. package/dist/signal-hook.js.map +1 -0
  34. package/dist/wu-prep.js +106 -4
  35. package/dist/wu-prep.js.map +1 -1
  36. package/dist/wu-spawn-prompt-builders.js.map +1 -1
  37. package/dist/wu-spawn-strategy-resolver.js +46 -4
  38. package/dist/wu-spawn-strategy-resolver.js.map +1 -1
  39. package/package.json +13 -11
  40. package/packs/agent-runtime/auto-session-integration.ts +14 -0
  41. package/packs/agent-runtime/package.json +1 -1
  42. package/packs/agent-runtime/session-schema.ts +44 -0
  43. package/packs/sidekick/package.json +1 -1
  44. package/packs/software-delivery/manifest.ts +3 -0
  45. package/packs/software-delivery/manifest.yaml +7 -0
  46. package/packs/software-delivery/package.json +1 -1
  47. package/packs/software-delivery/src/methodology/incremental-test.ts +48 -16
  48. package/packs/software-delivery/src/policy/gates-coverage.ts +10 -0
  49. package/packs/software-delivery/src/policy/resolve-policy.ts +83 -0
  50. package/packs/software-delivery/tool-impl/memory-tools.ts +56 -1
  51. package/packs/software-delivery/tool-impl/runtime-cli-adapter.ts +1 -0
  52. package/templates/core/AGENTS.md.template +19 -1
  53. package/templates/core/LUMENFLOW.md.template +17 -0
  54. package/templates/core/ai/onboarding/agent-safety-card.md.template +16 -0
  55. package/templates/core/ai/onboarding/vendor-support.md.template +9 -9
@@ -9,7 +9,7 @@
9
9
  *
10
10
  * @module wu-spawn-strategy-resolver
11
11
  */
12
- import { existsSync, readFileSync, mkdirSync, writeFileSync } from 'node:fs';
12
+ import { existsSync, readFileSync, mkdirSync, statSync, writeFileSync } from 'node:fs';
13
13
  import path from 'node:path';
14
14
  import { createWUParser, WU_OPTIONS } from '@lumenflow/core/arg-parser';
15
15
  import { WU_PATHS } from '@lumenflow/core/wu-paths';
@@ -28,7 +28,7 @@ import { generateDelegationId, } from '@lumenflow/core/delegation-registry-schem
28
28
  import { resolveDefaultRoleContract } from './delegation-role-resolver.js';
29
29
  import { WUStateStore, WU_BRIEF_EVIDENCE_NOTE_PREFIX } from '@lumenflow/core/wu-state-store';
30
30
  import { SpawnStrategyFactory } from '@lumenflow/core/spawn-strategy';
31
- import { getConfig } from '@lumenflow/core/config';
31
+ import { GIT_DIRECTORY_NAME, getConfig } from '@lumenflow/core/config';
32
32
  import { resolveClientConfig } from '@lumenflow/core/wu-spawn-skills';
33
33
  import { validateSpawnDependencies, formatDependencyError, } from '@lumenflow/core/dependency-validator';
34
34
  import { checkMemoryLayerInitialized, getMemoryContextMaxSize, generateMemoryContextSection, generateInboxSection, } from '@lumenflow/core/wu-spawn-context';
@@ -39,6 +39,7 @@ import { resolveStateDir, resolveWuEventsRelativePath } from './state-path-resol
39
39
  import { withMicroWorktree, isInGitWorktree } from '@lumenflow/core/micro-worktree';
40
40
  // WU-2654: narrow conductor emissions for brief/delegation call sites.
41
41
  import { buildBriefEmittedEvent, buildDelegationRecordedEvent, readOrgIdFromConfig, resolveConductorEventSink, } from './kernel-event-sync/lifecycle-emitters.js';
42
+ import { collectActiveSessionRecords } from './session-cross-link.js';
42
43
  // WU-2144: Import worktree detection to gate evidence recording
43
44
  import { isInWorktree as isInWorktreeDefault } from '@lumenflow/core/core/worktree-guard';
44
45
  // WU-2141: Import sizing check for advisory/strict enforcement
@@ -60,6 +61,39 @@ function buildBriefAttestation(output, clientName, generatedAt = new Date().toIS
60
61
  clientName,
61
62
  };
62
63
  }
64
+ function resolveWorktreeMainCheckout(baseDir) {
65
+ const gitMarkerPath = path.join(baseDir, GIT_DIRECTORY_NAME);
66
+ if (!existsSync(gitMarkerPath)) {
67
+ return undefined;
68
+ }
69
+ try {
70
+ if (!statSync(gitMarkerPath).isFile()) {
71
+ return undefined;
72
+ }
73
+ const marker = readFileSync(gitMarkerPath, { encoding: 'utf-8' }).trim();
74
+ const gitDirMatch = marker.match(/^gitdir:\s*(.+)$/i);
75
+ const gitDir = gitDirMatch?.[1]?.trim();
76
+ if (!gitDir) {
77
+ return undefined;
78
+ }
79
+ const absoluteGitDir = path.isAbsolute(gitDir) ? gitDir : path.resolve(baseDir, gitDir);
80
+ const commonGitDir = path.dirname(path.dirname(absoluteGitDir));
81
+ return path.dirname(commonGitDir);
82
+ }
83
+ catch {
84
+ return undefined;
85
+ }
86
+ }
87
+ function resolveBriefSessionId(baseDir, wuId) {
88
+ const lookupRoots = [baseDir, resolveWorktreeMainCheckout(baseDir)].filter((root) => typeof root === 'string' && root.length > 0);
89
+ for (const root of lookupRoots) {
90
+ const session = collectActiveSessionRecords(root).find((record) => record.wu_id === wuId && record.session_id);
91
+ if (session?.session_id) {
92
+ return session.session_id;
93
+ }
94
+ }
95
+ return undefined;
96
+ }
63
97
  // ─── Lane Occupation ───
64
98
  /**
65
99
  * WU-1603: Check if a lane is currently occupied by another WU
@@ -566,12 +600,16 @@ export async function runBriefLogic(options = {}) {
566
600
  console.log(`${effectiveLogPrefix} Memory context loaded (${memoryContextContent.length} bytes)`);
567
601
  }
568
602
  }
569
- // WU-2607: Append coordination signals (mem:inbox) under the same Memory Context block.
603
+ // WU-2607/WU-2911: Append the Inbox Snapshot under the same Memory Context block.
570
604
  // Always attempted (independent of memory.jsonl init state) since signals.jsonl can exist
571
605
  // standalone. generateInboxSection is lenient and returns '' on any failure.
606
+ const briefSessionId = resolveBriefSessionId(baseDir, id);
572
607
  const inboxSection = await generateInboxSection(baseDir, {
573
608
  wuId: id,
574
609
  lane: doc.lane,
610
+ initiative: doc.initiative,
611
+ sessionId: briefSessionId,
612
+ includeEmptySnapshot: true,
575
613
  });
576
614
  if (inboxSection) {
577
615
  // Ensure the parent ## Memory Context header exists when we only have inbox content.
@@ -580,7 +618,7 @@ export async function runBriefLogic(options = {}) {
580
618
  memoryContextContent = memoryContextContent
581
619
  ? `${memoryContextContent.trimEnd()}\n\n${inboxSection}`
582
620
  : inboxBlock;
583
- console.log(`${effectiveLogPrefix} Coordination signals loaded (${inboxSection.length} bytes)`);
621
+ console.log(`${effectiveLogPrefix} Inbox snapshot loaded (${inboxSection.length} bytes)`);
584
622
  }
585
623
  }
586
624
  // Create strategy
@@ -592,6 +630,10 @@ export async function runBriefLogic(options = {}) {
592
630
  ...thinkingOptions,
593
631
  client: clientContext,
594
632
  config,
633
+ baseDir,
634
+ includeMemoryContext: shouldIncludeMemoryContext && memoryContextContent.length > 0,
635
+ memoryContextContent,
636
+ noContext: args.noContext,
595
637
  });
596
638
  const briefAttestation = explicitDelegation
597
639
  ? buildBriefAttestation(prompt, clientName)
@@ -1 +1 @@
1
- {"version":3,"file":"wu-spawn-strategy-resolver.js","sourceRoot":"","sources":["../src/wu-spawn-strategy-resolver.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"wu-spawn-strategy-resolver.js","sourceRoot":"","sources":["../src/wu-spawn-strategy-resolver.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@lumenflow/cli",
3
- "version": "5.3.1",
3
+ "version": "5.4.0",
4
4
  "description": "Command-line interface for LumenFlow workflow framework",
5
5
  "keywords": [
6
6
  "lumenflow",
@@ -98,6 +98,7 @@
98
98
  "lumenflow-validate": "./dist/validate.js",
99
99
  "mem-checkpoint": "./dist/mem-checkpoint.js",
100
100
  "mem-cleanup": "./dist/mem-cleanup.js",
101
+ "mem-converged": "./dist/mem-converged.js",
101
102
  "mem-context": "./dist/mem-context.js",
102
103
  "mem-create": "./dist/mem-create.js",
103
104
  "mem-delete": "./dist/mem-delete.js",
@@ -111,6 +112,7 @@
111
112
  "mem-start": "./dist/mem-start.js",
112
113
  "mem-summarize": "./dist/mem-summarize.js",
113
114
  "mem-triage": "./dist/mem-triage.js",
115
+ "mem-watch": "./dist/mem-watch.js",
114
116
  "metrics": "./dist/metrics-cli.js",
115
117
  "metrics-snapshot": "./dist/metrics-snapshot.js",
116
118
  "onboard": "./dist/onboard.js",
@@ -198,16 +200,16 @@
198
200
  "xstate": "^5.28.0",
199
201
  "yaml": "^2.8.2",
200
202
  "zod": "^4.3.6",
201
- "@lumenflow/agent": "5.3.1",
202
- "@lumenflow/host": "^5.3.1",
203
- "@lumenflow/core": "5.3.1",
204
- "@lumenflow/initiatives": "5.3.1",
205
- "@lumenflow/memory": "5.3.1",
206
- "@lumenflow/packs-agent-runtime": "^5.3.1",
207
- "@lumenflow/kernel": "5.3.1",
208
- "@lumenflow/control-plane-sdk": "5.3.1",
209
- "@lumenflow/packs-software-delivery": "^5.3.1",
210
- "@lumenflow/metrics": "5.3.1"
203
+ "@lumenflow/core": "5.4.0",
204
+ "@lumenflow/host": "^5.4.0",
205
+ "@lumenflow/initiatives": "5.4.0",
206
+ "@lumenflow/kernel": "5.4.0",
207
+ "@lumenflow/memory": "5.4.0",
208
+ "@lumenflow/agent": "5.4.0",
209
+ "@lumenflow/packs-software-delivery": "^5.4.0",
210
+ "@lumenflow/metrics": "5.4.0",
211
+ "@lumenflow/packs-agent-runtime": "^5.4.0",
212
+ "@lumenflow/control-plane-sdk": "5.4.0"
211
213
  },
212
214
  "devDependencies": {
213
215
  "@vitest/coverage-v8": "^4.0.18",
@@ -83,6 +83,10 @@ interface SessionFileData {
83
83
  /** ADR-014 extension 2 — which skill bundle the agent identifies as carrying (WU-2754). */
84
84
  specialty_profile?: string;
85
85
  display_name?: string;
86
+ /** Stable explicit A2A reader identity. Format hint: <owner>:<role>:<purpose>. */
87
+ agent_identity?: string;
88
+ /** Reserved cloud workspace/tenant scope slot; unused by local runtime. */
89
+ tenant_id?: string;
86
90
  /** ADR-014 extension 2 — parent delegation registry reference (WU-2754). */
87
91
  delegation_id?: string;
88
92
  }
@@ -455,6 +459,10 @@ interface StartSessionOptions {
455
459
  /** ADR-014 specialty_profile for this session (e.g. 'delivery'). */
456
460
  specialtyProfile?: string;
457
461
  displayName?: string;
462
+ /** Explicit stable A2A reader identity. Format hint: <owner>:<role>:<purpose>. */
463
+ agentIdentity?: string;
464
+ /** Reserved cloud workspace/tenant scope slot; unused by local runtime. */
465
+ tenantId?: string;
458
466
  /** Parent delegation-registry record reference (dlg-XXXX). */
459
467
  delegationId?: string;
460
468
  }
@@ -511,6 +519,8 @@ export async function startSessionForWU(options: StartSessionOptions): Promise<S
511
519
  lifecycleRole,
512
520
  specialtyProfile,
513
521
  displayName,
522
+ agentIdentity,
523
+ tenantId,
514
524
  delegationId,
515
525
  } = options;
516
526
 
@@ -542,6 +552,8 @@ export async function startSessionForWU(options: StartSessionOptions): Promise<S
542
552
  lifecycle_role: lifecycleRole,
543
553
  specialty_profile: specialtyProfile,
544
554
  display_name: displayName,
555
+ agent_identity: agentIdentity,
556
+ tenant_id: tenantId,
545
557
  delegation_id: delegationId,
546
558
  });
547
559
  const resolvedDisplayName = roleAxes.display_name ?? acquireDisplayName(workspaceRoot, sessionId);
@@ -564,6 +576,8 @@ export async function startSessionForWU(options: StartSessionOptions): Promise<S
564
576
  lifecycle_role: roleAxes.lifecycle_role,
565
577
  specialty_profile: roleAxes.specialty_profile,
566
578
  display_name: resolvedDisplayName,
579
+ ...(roleAxes.agent_identity ? { agent_identity: roleAxes.agent_identity } : {}),
580
+ ...(roleAxes.tenant_id ? { tenant_id: roleAxes.tenant_id } : {}),
567
581
  ...(roleAxes.delegation_id ? { delegation_id: roleAxes.delegation_id } : {}),
568
582
  };
569
583
 
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@lumenflow/packs-agent-runtime",
3
- "version": "5.3.1",
3
+ "version": "5.4.0",
4
4
  "description": "Agent runtime pack scaffold for LumenFlow — governed model-turn execution, pack config, and provider capability baselines",
5
5
  "keywords": [
6
6
  "lumenflow",
@@ -70,6 +70,7 @@ export const DISPLAY_NAME_POOL_RELATIVE_PATH = '.lumenflow/agents/display-name-p
70
70
  export const DISPLAY_NAME_RESERVATIONS_RELATIVE_PATH =
71
71
  '.lumenflow/state/display-name-reservations.jsonl';
72
72
  export const DISPLAY_NAME_RESERVATION_TTL_HOURS = 12;
73
+ export const AGENT_IDENTITY_MIN_LENGTH = 3;
73
74
 
74
75
  /** Regex for delegation_id references back into delegation registry. */
75
76
  export const DELEGATION_ID_PATTERN = /^dlg-[0-9a-f]{4}$/;
@@ -93,6 +94,14 @@ export const SessionRoleAxesSchema = z.object({
93
94
  .optional(),
94
95
  });
95
96
 
97
+ const AgentIdentitySchema = z
98
+ .string()
99
+ .trim()
100
+ .min(AGENT_IDENTITY_MIN_LENGTH, {
101
+ message: `agent_identity must be at least ${AGENT_IDENTITY_MIN_LENGTH} characters`,
102
+ });
103
+ const TenantIdSchema = z.string().trim().min(1, { message: 'tenant_id must be non-empty' });
104
+
96
105
  /**
97
106
  * Base session schema — shared fields across v1 and v2.
98
107
  *
@@ -104,6 +113,8 @@ const SessionRecordBaseSchema = z.object({
104
113
  session_id: z.string().min(1),
105
114
  wu_id: z.string().min(1),
106
115
  started: z.string().min(1),
116
+ agent_identity: AgentIdentitySchema.optional(),
117
+ tenant_id: TenantIdSchema.optional(),
107
118
  });
108
119
 
109
120
  /**
@@ -172,11 +183,15 @@ export function withV2RoleDefaults(input: {
172
183
  specialty_profile?: string | null;
173
184
  display_name?: string | null;
174
185
  delegation_id?: string | null;
186
+ agent_identity?: string | null;
187
+ tenant_id?: string | null;
175
188
  }): {
176
189
  lifecycle_role: string;
177
190
  specialty_profile: string;
178
191
  display_name?: string;
179
192
  delegation_id?: string;
193
+ agent_identity?: string;
194
+ tenant_id?: string;
180
195
  } {
181
196
  const lifecycle_role =
182
197
  typeof input.lifecycle_role === 'string' && input.lifecycle_role.trim().length > 0
@@ -194,11 +209,14 @@ export function withV2RoleDefaults(input: {
194
209
  typeof input.display_name === 'string' && input.display_name.trim().length > 0
195
210
  ? input.display_name.trim()
196
211
  : undefined;
212
+ const identityFields = normalizeOptionalSessionIdentityFields(input);
197
213
  const out: {
198
214
  lifecycle_role: string;
199
215
  specialty_profile: string;
200
216
  display_name?: string;
201
217
  delegation_id?: string;
218
+ agent_identity?: string;
219
+ tenant_id?: string;
202
220
  } = {
203
221
  lifecycle_role,
204
222
  specialty_profile,
@@ -209,6 +227,32 @@ export function withV2RoleDefaults(input: {
209
227
  if (delegation_id) {
210
228
  out.delegation_id = delegation_id;
211
229
  }
230
+ if (identityFields.agent_identity) {
231
+ out.agent_identity = identityFields.agent_identity;
232
+ }
233
+ if (identityFields.tenant_id) {
234
+ out.tenant_id = identityFields.tenant_id;
235
+ }
236
+ return out;
237
+ }
238
+
239
+ export function normalizeOptionalSessionIdentityFields(input: {
240
+ agent_identity?: string | null;
241
+ tenant_id?: string | null;
242
+ }): {
243
+ agent_identity?: string;
244
+ tenant_id?: string;
245
+ } {
246
+ const out: {
247
+ agent_identity?: string;
248
+ tenant_id?: string;
249
+ } = {};
250
+ if (typeof input.agent_identity === 'string' && input.agent_identity.trim().length > 0) {
251
+ out.agent_identity = AgentIdentitySchema.parse(input.agent_identity);
252
+ }
253
+ if (typeof input.tenant_id === 'string' && input.tenant_id.trim().length > 0) {
254
+ out.tenant_id = TenantIdSchema.parse(input.tenant_id);
255
+ }
212
256
  return out;
213
257
  }
214
258
 
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@lumenflow/packs-sidekick",
3
- "version": "5.3.1",
3
+ "version": "5.4.0",
4
4
  "description": "Sidekick personal assistant pack for LumenFlow — 16 tools for task management, typed memory, channels, routines, and audit",
5
5
  "keywords": [
6
6
  "lumenflow",
@@ -140,6 +140,7 @@ const MEM_DELETE_TOOL_ENTRY = 'tool-impl/memory-tools.ts#memDeleteTool';
140
140
  const MEM_EXPORT_TOOL_ENTRY = 'tool-impl/memory-tools.ts#memExportTool';
141
141
  const MEM_INBOX_TOOL_ENTRY = 'tool-impl/memory-tools.ts#memInboxTool';
142
142
  const MEM_SIGNAL_TOOL_ENTRY = 'tool-impl/memory-tools.ts#memSignalTool';
143
+ const MEM_CONVERGED_TOOL_ENTRY = 'tool-impl/memory-tools.ts#memConvergedTool';
143
144
  const MEM_SUMMARIZE_TOOL_ENTRY = 'tool-impl/memory-tools.ts#memSummarizeTool';
144
145
  const MEM_TRIAGE_TOOL_ENTRY = 'tool-impl/memory-tools.ts#memTriageTool';
145
146
  const MEM_RECOVER_TOOL_ENTRY = 'tool-impl/memory-tools.ts#memRecoverTool';
@@ -245,6 +246,7 @@ const TOOL_PERMISSIONS = {
245
246
  'wu:validate': 'read',
246
247
  'mem:checkpoint': 'write',
247
248
  'mem:cleanup': 'write',
249
+ 'mem:converged': 'read',
248
250
  'mem:context': 'read',
249
251
  'mem:create': 'write',
250
252
  'mem:delete': 'write',
@@ -371,6 +373,7 @@ const TOOL_ENTRY_OVERRIDES: Partial<Record<ToolName, string>> = {
371
373
  'mem:export': MEM_EXPORT_TOOL_ENTRY,
372
374
  'mem:inbox': MEM_INBOX_TOOL_ENTRY,
373
375
  'mem:signal': MEM_SIGNAL_TOOL_ENTRY,
376
+ 'mem:converged': MEM_CONVERGED_TOOL_ENTRY,
374
377
  'mem:summarize': MEM_SUMMARIZE_TOOL_ENTRY,
375
378
  'mem:triage': MEM_TRIAGE_TOOL_ENTRY,
376
379
  'mem:recover': MEM_RECOVER_TOOL_ENTRY,
@@ -244,6 +244,13 @@ tools:
244
244
  entry: tool-impl/memory-tools.ts#memCleanupTool
245
245
  permission: write
246
246
  required_scopes: *softwareDeliveryWriteScopes
247
+ - name: mem:converged
248
+ entry: tool-impl/memory-tools.ts#memConvergedTool
249
+ permission: read
250
+ required_scopes:
251
+ - type: path
252
+ pattern: '**'
253
+ access: read
247
254
  - name: mem:context
248
255
  entry: tool-impl/memory-tools.ts#memContextTool
249
256
  permission: read
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@lumenflow/packs-software-delivery",
3
- "version": "5.3.1",
3
+ "version": "5.4.0",
4
4
  "description": "Software delivery pack for LumenFlow — work units, gates, lanes, initiatives, and agent coordination",
5
5
  "keywords": [
6
6
  "lumenflow",
@@ -7,9 +7,15 @@
7
7
  *
8
8
  * WU-1920: Add incremental test execution to gates
9
9
  * WU-2504: Use Vitest --changed instead of custom file diff logic
10
+ * WU-2905: Code-file extensions are sourced from the resolved
11
+ * tdd_diff_evidence policy so non-TS/JS consumers (.NET, Python,
12
+ * Go, ...) can teach the gate which files count as production code
13
+ * via workspace.yaml. Extension defaults remain TS/JS so existing
14
+ * consumers see no behaviour change.
10
15
  */
11
16
 
12
17
  import { GIT_REFS } from '../constants/wu-git-constants.js';
18
+ import { DEFAULT_TDD_DIFF_CODE_FILE_EXTENSIONS } from '../policy/resolve-policy.js';
13
19
 
14
20
  // WU-2790 follow-up: the software-delivery pack cannot import from
15
21
  // @lumenflow/core (pack import-boundary enforcement restricts packs to
@@ -23,38 +29,59 @@ import { GIT_REFS } from '../constants/wu-git-constants.js';
23
29
 
24
30
  /**
25
31
  * Glob patterns to exclude slow integration/golden tests from changed runs.
32
+ *
33
+ * NOTE (WU-2905): These are runtime-platform excludes (slow integration /
34
+ * golden suites), not language-test patterns. They stay hardcoded because
35
+ * Vitest itself only exists in TS/JS contexts; non-TS/JS consumers do not
36
+ * use buildVitestChangedArgs(). Per-language test detection happens via
37
+ * tdd_diff_evidence.test_file_patterns, not here.
38
+ *
26
39
  * @type {string[]}
27
40
  */
28
41
  export const VITEST_CHANGED_EXCLUDES = Object.freeze(['**/*.integration.*', '**/golden-*.test.*']);
29
42
 
30
43
  /**
31
44
  * File extensions considered executable code for test runs.
45
+ *
46
+ * Re-exported alias for `DEFAULT_TDD_DIFF_CODE_FILE_EXTENSIONS` (single
47
+ * source of truth). Kept for backwards compatibility with existing imports
48
+ * (`@lumenflow/core/incremental-test#CODE_FILE_EXTENSIONS`).
49
+ *
32
50
  * @type {string[]}
33
51
  */
34
- export const CODE_FILE_EXTENSIONS = Object.freeze([
35
- '.ts',
36
- '.tsx',
37
- '.js',
38
- '.jsx',
39
- '.js',
40
- '.cjs',
41
- '.mts',
42
- '.cts',
43
- ]);
52
+ export const CODE_FILE_EXTENSIONS = DEFAULT_TDD_DIFF_CODE_FILE_EXTENSIONS;
53
+
54
+ /**
55
+ * Options for {@link isCodeFilePath}.
56
+ *
57
+ * WU-2905: Callers in gate paths can pass the resolved
58
+ * tdd_diff_evidence.code_file_extensions so the classification honours
59
+ * workspace overrides (e.g. ['.cs'] for C#). When omitted, falls back to the
60
+ * built-in TS/JS defaults.
61
+ */
62
+ export interface IsCodeFilePathOptions {
63
+ /** Override the default TS/JS code file extensions. */
64
+ extensions?: readonly string[];
65
+ }
44
66
 
45
67
  /**
46
68
  * Check if a path points to a code file that should trigger full tests.
47
69
  *
48
- * @param {string} filePath - Path to check
49
- * @returns {boolean} True if the path has a code extension
70
+ * @param filePath - Path to check
71
+ * @param options - Optional extension override (WU-2905)
72
+ * @returns True if the path has a code extension recognised by the gate
50
73
  */
51
- export function isCodeFilePath(filePath: string) {
74
+ export function isCodeFilePath(filePath: string, options?: IsCodeFilePathOptions): boolean {
52
75
  if (!filePath || typeof filePath !== 'string') {
53
76
  return false;
54
77
  }
55
78
 
79
+ // Guard against `.filter(isCodeFilePath)` style callers, where the second
80
+ // argument is the array index (number), not an options object. WU-2905.
81
+ const safeOptions = typeof options === 'object' && !Array.isArray(options) ? options : undefined;
82
+ const extensions = safeOptions?.extensions ?? CODE_FILE_EXTENSIONS;
56
83
  const normalized = filePath.replace(/\\/g, '/').toLowerCase();
57
- return CODE_FILE_EXTENSIONS.some((ext) => normalized.endsWith(ext));
84
+ return extensions.some((ext) => normalized.endsWith(ext.toLowerCase()));
58
85
  }
59
86
 
60
87
  /**
@@ -63,6 +90,11 @@ export function isCodeFilePath(filePath: string) {
63
90
  interface BuildVitestChangedArgsOptions {
64
91
  /** Base branch for diff */
65
92
  baseBranch?: string;
93
+ /**
94
+ * WU-2905: Optional excludes override. When omitted, defaults to
95
+ * VITEST_CHANGED_EXCLUDES (slow integration / golden suites).
96
+ */
97
+ excludes?: readonly string[];
66
98
  }
67
99
 
68
100
  /**
@@ -72,7 +104,7 @@ interface BuildVitestChangedArgsOptions {
72
104
  * @returns {string[]} Vitest args for changed test runs
73
105
  */
74
106
  export function buildVitestChangedArgs(options: BuildVitestChangedArgsOptions = {}) {
75
- const { baseBranch = GIT_REFS.ORIGIN_MAIN } = options;
107
+ const { baseBranch = GIT_REFS.ORIGIN_MAIN, excludes = VITEST_CHANGED_EXCLUDES } = options;
76
108
  const args = [
77
109
  '--changed',
78
110
  baseBranch,
@@ -82,7 +114,7 @@ export function buildVitestChangedArgs(options: BuildVitestChangedArgsOptions =
82
114
  '--teardownTimeout=30000',
83
115
  ];
84
116
 
85
- for (const pattern of VITEST_CHANGED_EXCLUDES) {
117
+ for (const pattern of excludes) {
86
118
  args.push(`--exclude='${pattern}'`);
87
119
  }
88
120
 
@@ -221,6 +221,16 @@ export function resolveTestPolicy(projectRoot: string): TestPolicy {
221
221
  };
222
222
  }
223
223
 
224
+ /**
225
+ * Resolve the tdd_diff_evidence policy for a project.
226
+ *
227
+ * WU-2905: The returned policy now also exposes resolved
228
+ * `test_file_patterns` (globs) and `code_file_extensions` so non-TS/JS
229
+ * consumers (.NET, Python, Go, ...) can opt their toolchain into the gate
230
+ * via `software_delivery.gates.tdd_diff_evidence.test_file_patterns` /
231
+ * `code_file_extensions` in workspace.yaml. Defaults preserve TS/JS
232
+ * behaviour byte-for-byte for existing consumers.
233
+ */
224
234
  export function resolveTddDiffEvidencePolicy(projectRoot: string): TddDiffEvidencePolicy {
225
235
  const rawConfig = loadSoftwareDeliveryConfig(projectRoot) ?? {};
226
236