@lumenflow/core 4.24.0 → 5.0.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/dist/arg-parser.d.ts.map +1 -1
- package/dist/arg-parser.js +16 -0
- package/dist/arg-parser.js.map +1 -1
- package/dist/atomic-merge.d.ts.map +1 -1
- package/dist/atomic-merge.js +25 -18
- package/dist/atomic-merge.js.map +1 -1
- package/dist/client-ids.d.ts +1 -15
- package/dist/client-ids.d.ts.map +1 -1
- package/dist/client-ids.js +4 -13
- package/dist/client-ids.js.map +1 -1
- package/dist/code-path-validator.d.ts.map +1 -1
- package/dist/code-path-validator.js +6 -3
- package/dist/code-path-validator.js.map +1 -1
- package/dist/config-contract.d.ts +1 -30
- package/dist/config-contract.d.ts.map +1 -1
- package/dist/config-contract.js +4 -60
- package/dist/config-contract.js.map +1 -1
- package/dist/constants/backlog-patterns.d.ts +1 -20
- package/dist/constants/backlog-patterns.d.ts.map +1 -1
- package/dist/constants/backlog-patterns.js +2 -23
- package/dist/constants/backlog-patterns.js.map +1 -1
- package/dist/constants/duration-constants.d.ts +1 -28
- package/dist/constants/duration-constants.d.ts.map +1 -1
- package/dist/constants/duration-constants.js +4 -28
- package/dist/constants/duration-constants.js.map +1 -1
- package/dist/constants/gate-constants.d.ts +1 -23
- package/dist/constants/gate-constants.d.ts.map +1 -1
- package/dist/constants/gate-constants.js +4 -23
- package/dist/constants/gate-constants.js.map +1 -1
- package/dist/constants/lock-constants.d.ts +1 -28
- package/dist/constants/lock-constants.d.ts.map +1 -1
- package/dist/constants/lock-constants.js +2 -28
- package/dist/constants/lock-constants.js.map +1 -1
- package/dist/core/tool.schemas.d.ts +11 -11
- package/dist/core/worktree-guard.js +2 -2
- package/dist/core/worktree-guard.js.map +1 -1
- package/dist/cycle-detector.d.ts +4 -48
- package/dist/cycle-detector.d.ts.map +1 -1
- package/dist/cycle-detector.js +4 -78
- package/dist/cycle-detector.js.map +1 -1
- package/dist/date-utils.d.ts +1 -65
- package/dist/date-utils.d.ts.map +1 -1
- package/dist/date-utils.js +4 -140
- package/dist/date-utils.js.map +1 -1
- package/dist/delegation-monitor.d.ts +2 -0
- package/dist/delegation-monitor.d.ts.map +1 -1
- package/dist/delegation-monitor.js +29 -2
- package/dist/delegation-monitor.js.map +1 -1
- package/dist/delegation-recovery.d.ts +36 -17
- package/dist/delegation-recovery.d.ts.map +1 -1
- package/dist/delegation-recovery.js +285 -82
- package/dist/delegation-recovery.js.map +1 -1
- package/dist/delegation-registry-schema.d.ts +257 -31
- package/dist/delegation-registry-schema.d.ts.map +1 -1
- package/dist/delegation-registry-schema.js +43 -34
- package/dist/delegation-registry-schema.js.map +1 -1
- package/dist/delegation-registry-store.d.ts +4 -128
- package/dist/delegation-registry-store.d.ts.map +1 -1
- package/dist/delegation-registry-store.js +39 -178
- package/dist/delegation-registry-store.js.map +1 -1
- package/dist/delegation-tree.d.ts +12 -20
- package/dist/delegation-tree.d.ts.map +1 -1
- package/dist/delegation-tree.js +40 -29
- package/dist/delegation-tree.js.map +1 -1
- package/dist/delivery-review-contract.d.ts +1 -1
- package/dist/delivery-review-contract.d.ts.map +1 -1
- package/dist/docs-layout-presets.d.ts +1 -30
- package/dist/docs-layout-presets.d.ts.map +1 -1
- package/dist/docs-layout-presets.js +4 -38
- package/dist/docs-layout-presets.js.map +1 -1
- package/dist/domain/context.schemas.d.ts +3 -3
- package/dist/domain/orchestration.constants.d.ts +1 -110
- package/dist/domain/orchestration.constants.d.ts.map +1 -1
- package/dist/domain/orchestration.constants.js +2 -127
- package/dist/domain/orchestration.constants.js.map +1 -1
- package/dist/domain/orchestration.schemas.d.ts +1 -306
- package/dist/domain/orchestration.schemas.d.ts.map +1 -1
- package/dist/domain/orchestration.schemas.js +2 -211
- package/dist/domain/orchestration.schemas.js.map +1 -1
- package/dist/domain/orchestration.types.d.ts +1 -133
- package/dist/domain/orchestration.types.d.ts.map +1 -1
- package/dist/domain/orchestration.types.js +2 -2
- package/dist/domain/orchestration.types.js.map +1 -1
- package/dist/domain/recovery.schemas.d.ts +3 -3
- package/dist/domain/validation.schemas.d.ts +4 -4
- package/dist/error-handler.d.ts +4 -173
- package/dist/error-handler.d.ts.map +1 -1
- package/dist/error-handler.js +4 -244
- package/dist/error-handler.js.map +1 -1
- package/dist/file-classifiers.d.ts.map +1 -1
- package/dist/file-classifiers.js +26 -0
- package/dist/file-classifiers.js.map +1 -1
- package/dist/git-adapter.d.ts +4 -448
- package/dist/git-adapter.d.ts.map +1 -1
- package/dist/git-adapter.js +4 -772
- package/dist/git-adapter.js.map +1 -1
- package/dist/git-context-extractor.d.ts +4 -98
- package/dist/git-context-extractor.d.ts.map +1 -1
- package/dist/git-context-extractor.js +4 -563
- package/dist/git-context-extractor.js.map +1 -1
- package/dist/git-staged-validator.d.ts +4 -29
- package/dist/git-staged-validator.d.ts.map +1 -1
- package/dist/git-staged-validator.js +4 -46
- package/dist/git-staged-validator.js.map +1 -1
- package/dist/incremental-lint.d.ts.map +1 -1
- package/dist/incremental-lint.js +3 -2
- package/dist/incremental-lint.js.map +1 -1
- package/dist/incremental-test.d.ts +1 -32
- package/dist/incremental-test.d.ts.map +1 -1
- package/dist/incremental-test.js +4 -61
- package/dist/incremental-test.js.map +1 -1
- package/dist/index.d.ts +3 -2
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +10 -2
- package/dist/index.js.map +1 -1
- package/dist/integration-target.d.ts +30 -0
- package/dist/integration-target.d.ts.map +1 -0
- package/dist/integration-target.js +51 -0
- package/dist/integration-target.js.map +1 -0
- package/dist/lane-checker.d.ts.map +1 -1
- package/dist/lane-checker.js +8 -0
- package/dist/lane-checker.js.map +1 -1
- package/dist/lumenflow-config-schema.d.ts +73 -29
- package/dist/lumenflow-config-schema.d.ts.map +1 -1
- package/dist/lumenflow-config-schema.js +1 -1
- package/dist/lumenflow-config-schema.js.map +1 -1
- package/dist/lumenflow-config.d.ts +10 -34
- package/dist/lumenflow-config.d.ts.map +1 -1
- package/dist/lumenflow-config.js +32 -142
- package/dist/lumenflow-config.js.map +1 -1
- package/dist/manual-test-validator.d.ts +1 -96
- package/dist/manual-test-validator.d.ts.map +1 -1
- package/dist/manual-test-validator.js +4 -245
- package/dist/manual-test-validator.js.map +1 -1
- package/dist/micro-worktree-shared.d.ts.map +1 -1
- package/dist/micro-worktree-shared.js +10 -9
- package/dist/micro-worktree-shared.js.map +1 -1
- package/dist/micro-worktree.d.ts.map +1 -1
- package/dist/micro-worktree.js +26 -23
- package/dist/micro-worktree.js.map +1 -1
- package/dist/normalize-config-keys.d.ts +1 -10
- package/dist/normalize-config-keys.d.ts.map +1 -1
- package/dist/normalize-config-keys.js +7 -73
- package/dist/normalize-config-keys.js.map +1 -1
- package/dist/object-guards.d.ts +1 -10
- package/dist/object-guards.d.ts.map +1 -1
- package/dist/object-guards.js +7 -20
- package/dist/object-guards.js.map +1 -1
- package/dist/ports/config.ports.d.ts +1 -82
- package/dist/ports/config.ports.d.ts.map +1 -1
- package/dist/ports/config.ports.js +2 -1
- package/dist/ports/config.ports.js.map +1 -1
- package/dist/ports/dashboard-renderer.port.d.ts +1 -112
- package/dist/ports/dashboard-renderer.port.d.ts.map +1 -1
- package/dist/ports/dashboard-renderer.port.js +2 -1
- package/dist/ports/dashboard-renderer.port.js.map +1 -1
- package/dist/ports/git-validator.ports.d.ts +5 -110
- package/dist/ports/git-validator.ports.d.ts.map +1 -1
- package/dist/ports/git-validator.ports.js +8 -1
- package/dist/ports/git-validator.ports.js.map +1 -1
- package/dist/ports/sync-validator.ports.d.ts +1 -51
- package/dist/ports/sync-validator.ports.d.ts.map +1 -1
- package/dist/ports/sync-validator.ports.js +2 -1
- package/dist/ports/sync-validator.ports.js.map +1 -1
- package/dist/ports/wu-helpers.ports.d.ts +1 -156
- package/dist/ports/wu-helpers.ports.d.ts.map +1 -1
- package/dist/ports/wu-helpers.ports.js +2 -1
- package/dist/ports/wu-helpers.ports.js.map +1 -1
- package/dist/ports/wu-state.ports.d.ts +1 -208
- package/dist/ports/wu-state.ports.d.ts.map +1 -1
- package/dist/ports/wu-state.ports.js +2 -1
- package/dist/ports/wu-state.ports.js.map +1 -1
- package/dist/rebase-artifact-cleanup.d.ts.map +1 -1
- package/dist/rebase-artifact-cleanup.js +6 -3
- package/dist/rebase-artifact-cleanup.js.map +1 -1
- package/dist/sandbox-allowlist.d.ts +1 -15
- package/dist/sandbox-allowlist.d.ts.map +1 -1
- package/dist/sandbox-allowlist.js +4 -74
- package/dist/sandbox-allowlist.js.map +1 -1
- package/dist/sandbox-backend-linux.d.ts +1 -5
- package/dist/sandbox-backend-linux.d.ts.map +1 -1
- package/dist/sandbox-backend-linux.js +4 -64
- package/dist/sandbox-backend-linux.js.map +1 -1
- package/dist/sandbox-backend-macos.d.ts +1 -5
- package/dist/sandbox-backend-macos.d.ts.map +1 -1
- package/dist/sandbox-backend-macos.js +4 -109
- package/dist/sandbox-backend-macos.js.map +1 -1
- package/dist/sandbox-backend-windows.d.ts +1 -5
- package/dist/sandbox-backend-windows.d.ts.map +1 -1
- package/dist/sandbox-backend-windows.js +4 -27
- package/dist/sandbox-backend-windows.js.map +1 -1
- package/dist/sandbox-profile.d.ts +1 -57
- package/dist/sandbox-profile.d.ts.map +1 -1
- package/dist/sandbox-profile.js +4 -65
- package/dist/sandbox-profile.js.map +1 -1
- package/dist/schemas/agents-config.d.ts +47 -0
- package/dist/schemas/agents-config.d.ts.map +1 -1
- package/dist/schemas/agents-config.js +59 -0
- package/dist/schemas/agents-config.js.map +1 -1
- package/dist/schemas/command-schemas.d.ts +4 -4
- package/dist/schemas/flow-arg-validators.d.ts +2 -2
- package/dist/schemas/flow-schemas.d.ts +4 -4
- package/dist/schemas/gates-section-config.d.ts +32 -13
- package/dist/schemas/gates-section-config.d.ts.map +1 -1
- package/dist/schemas/gates-section-config.js +16 -1
- package/dist/schemas/gates-section-config.js.map +1 -1
- package/dist/schemas/initiative-arg-validators.d.ts +2 -2
- package/dist/schemas/initiative-schemas.d.ts +12 -12
- package/dist/schemas/lanes-config.d.ts +5 -5
- package/dist/schemas/memory-arg-validators.d.ts +6 -0
- package/dist/schemas/memory-arg-validators.d.ts.map +1 -1
- package/dist/schemas/memory-config.d.ts +4 -4
- package/dist/schemas/memory-schemas.d.ts +12 -0
- package/dist/schemas/memory-schemas.d.ts.map +1 -1
- package/dist/schemas/memory-schemas.js +12 -0
- package/dist/schemas/memory-schemas.js.map +1 -1
- package/dist/schemas/operational-config.d.ts +4 -4
- package/dist/schemas/setup-arg-validators.d.ts +3 -3
- package/dist/schemas/setup-schemas.d.ts +8 -8
- package/dist/schemas/wu-config.d.ts +3 -3
- package/dist/schemas/wu-lifecycle-arg-validators.d.ts +2 -2
- package/dist/schemas/wu-lifecycle-schemas.d.ts +4 -4
- package/dist/section-headings.d.ts +1 -34
- package/dist/section-headings.d.ts.map +1 -1
- package/dist/section-headings.js +2 -51
- package/dist/section-headings.js.map +1 -1
- package/dist/spawn-constraints-generator.js +3 -3
- package/dist/spawn-constraints-generator.js.map +1 -1
- package/dist/spawn-guidance-generators.d.ts +1 -1
- package/dist/spawn-guidance-generators.d.ts.map +1 -1
- package/dist/spawn-policy-resolver.d.ts +1 -1
- package/dist/spawn-policy-resolver.d.ts.map +1 -1
- package/dist/spawn-task-builder.d.ts +17 -1
- package/dist/spawn-task-builder.d.ts.map +1 -1
- package/dist/spawn-task-builder.js +63 -1
- package/dist/spawn-task-builder.js.map +1 -1
- package/dist/spawn-template-assembler.d.ts +1 -1
- package/dist/spawn-template-assembler.d.ts.map +1 -1
- package/dist/state-machine.d.ts +1 -9
- package/dist/state-machine.d.ts.map +1 -1
- package/dist/state-machine.js +2 -86
- package/dist/state-machine.js.map +1 -1
- package/dist/sync-validator.d.ts.map +1 -1
- package/dist/sync-validator.js +15 -12
- package/dist/sync-validator.js.map +1 -1
- package/dist/telemetry.d.ts.map +1 -1
- package/dist/telemetry.js +3 -2
- package/dist/telemetry.js.map +1 -1
- package/dist/work-classifier.d.ts +1 -102
- package/dist/work-classifier.d.ts.map +1 -1
- package/dist/work-classifier.js +2 -424
- package/dist/work-classifier.js.map +1 -1
- package/dist/worktree-symlink.d.ts +2 -2
- package/dist/worktree-symlink.d.ts.map +1 -1
- package/dist/worktree-symlink.js +37 -12
- package/dist/worktree-symlink.js.map +1 -1
- package/dist/wu-cli-constants.d.ts +1 -433
- package/dist/wu-cli-constants.d.ts.map +1 -1
- package/dist/wu-cli-constants.js +4 -436
- package/dist/wu-cli-constants.js.map +1 -1
- package/dist/wu-consistency-file-repairs.d.ts.map +1 -1
- package/dist/wu-consistency-file-repairs.js +5 -3
- package/dist/wu-consistency-file-repairs.js.map +1 -1
- package/dist/wu-context-constants.d.ts +22 -0
- package/dist/wu-context-constants.d.ts.map +1 -1
- package/dist/wu-context-constants.js +22 -0
- package/dist/wu-context-constants.js.map +1 -1
- package/dist/wu-doc-types.d.ts +1 -47
- package/dist/wu-doc-types.d.ts.map +1 -1
- package/dist/wu-domain-constants.d.ts +1 -295
- package/dist/wu-domain-constants.d.ts.map +1 -1
- package/dist/wu-domain-constants.js +4 -397
- package/dist/wu-domain-constants.js.map +1 -1
- package/dist/wu-done-branch-only.d.ts +1 -1
- package/dist/wu-done-branch-only.d.ts.map +1 -1
- package/dist/wu-done-branch-only.js +22 -13
- package/dist/wu-done-branch-only.js.map +1 -1
- package/dist/wu-done-branch-utils.d.ts.map +1 -1
- package/dist/wu-done-branch-utils.js +5 -3
- package/dist/wu-done-branch-utils.js.map +1 -1
- package/dist/wu-done-cleanup.d.ts.map +1 -1
- package/dist/wu-done-cleanup.js +66 -22
- package/dist/wu-done-cleanup.js.map +1 -1
- package/dist/wu-done-concurrent-merge.d.ts.map +1 -1
- package/dist/wu-done-concurrent-merge.js +9 -6
- package/dist/wu-done-concurrent-merge.js.map +1 -1
- package/dist/wu-done-errors.d.ts +3 -3
- package/dist/wu-done-errors.d.ts.map +1 -1
- package/dist/wu-done-inputs.d.ts.map +1 -1
- package/dist/wu-done-inputs.js +3 -0
- package/dist/wu-done-inputs.js.map +1 -1
- package/dist/wu-done-merge-phase.d.ts.map +1 -1
- package/dist/wu-done-merge-phase.js +4 -2
- package/dist/wu-done-merge-phase.js.map +1 -1
- package/dist/wu-done-merge.d.ts.map +1 -1
- package/dist/wu-done-merge.js +16 -8
- package/dist/wu-done-merge.js.map +1 -1
- package/dist/wu-done-merged-worktree.d.ts.map +1 -1
- package/dist/wu-done-merged-worktree.js +7 -8
- package/dist/wu-done-merged-worktree.js.map +1 -1
- package/dist/wu-done-messages.d.ts.map +1 -1
- package/dist/wu-done-messages.js +12 -5
- package/dist/wu-done-messages.js.map +1 -1
- package/dist/wu-done-metadata.d.ts.map +1 -1
- package/dist/wu-done-metadata.js +3 -8
- package/dist/wu-done-metadata.js.map +1 -1
- package/dist/wu-done-preflight-checks.d.ts.map +1 -1
- package/dist/wu-done-preflight-checks.js +21 -15
- package/dist/wu-done-preflight-checks.js.map +1 -1
- package/dist/wu-done-rebase.d.ts.map +1 -1
- package/dist/wu-done-rebase.js +10 -8
- package/dist/wu-done-rebase.js.map +1 -1
- package/dist/wu-done-retry-helpers.d.ts.map +1 -1
- package/dist/wu-done-retry-helpers.js +13 -11
- package/dist/wu-done-retry-helpers.js.map +1 -1
- package/dist/wu-done-validation.d.ts.map +1 -1
- package/dist/wu-done-validation.js +4 -2
- package/dist/wu-done-validation.js.map +1 -1
- package/dist/wu-done-worktree-services.d.ts.map +1 -1
- package/dist/wu-done-worktree-services.js +4 -2
- package/dist/wu-done-worktree-services.js.map +1 -1
- package/dist/wu-done-worktree.d.ts.map +1 -1
- package/dist/wu-done-worktree.js +4 -2
- package/dist/wu-done-worktree.js.map +1 -1
- package/dist/wu-git-constants.d.ts +1 -175
- package/dist/wu-git-constants.d.ts.map +1 -1
- package/dist/wu-git-constants.js +4 -175
- package/dist/wu-git-constants.js.map +1 -1
- package/dist/wu-helpers.d.ts +24 -0
- package/dist/wu-helpers.d.ts.map +1 -1
- package/dist/wu-helpers.js +37 -4
- package/dist/wu-helpers.js.map +1 -1
- package/dist/wu-id-format.d.ts +1 -137
- package/dist/wu-id-format.d.ts.map +1 -1
- package/dist/wu-id-format.js +2 -249
- package/dist/wu-id-format.js.map +1 -1
- package/dist/wu-id-generator.d.ts.map +1 -1
- package/dist/wu-id-generator.js +8 -5
- package/dist/wu-id-generator.js.map +1 -1
- package/dist/wu-paths-constants.d.ts +1 -253
- package/dist/wu-paths-constants.d.ts.map +1 -1
- package/dist/wu-paths-constants.js +4 -273
- package/dist/wu-paths-constants.js.map +1 -1
- package/dist/wu-paths.d.ts +1 -274
- package/dist/wu-paths.d.ts.map +1 -1
- package/dist/wu-paths.js +4 -236
- package/dist/wu-paths.js.map +1 -1
- package/dist/wu-rules-resolvers.d.ts.map +1 -1
- package/dist/wu-rules-resolvers.js +11 -6
- package/dist/wu-rules-resolvers.js.map +1 -1
- package/dist/wu-schema.d.ts +1 -830
- package/dist/wu-schema.d.ts.map +1 -1
- package/dist/wu-schema.js +4 -929
- package/dist/wu-schema.js.map +1 -1
- package/dist/wu-spawn-helpers.d.ts.map +1 -1
- package/dist/wu-spawn-helpers.js +5 -2
- package/dist/wu-spawn-helpers.js.map +1 -1
- package/dist/wu-spawn.d.ts +2 -2
- package/dist/wu-spawn.d.ts.map +1 -1
- package/dist/wu-spawn.js +2 -2
- package/dist/wu-spawn.js.map +1 -1
- package/dist/wu-state-schema.d.ts +1 -291
- package/dist/wu-state-schema.d.ts.map +1 -1
- package/dist/wu-state-schema.js +4 -212
- package/dist/wu-state-schema.js.map +1 -1
- package/dist/wu-status-transition.d.ts +3 -1
- package/dist/wu-status-transition.d.ts.map +1 -1
- package/dist/wu-status-transition.js +9 -24
- package/dist/wu-status-transition.js.map +1 -1
- package/dist/wu-statuses.d.ts +1 -208
- package/dist/wu-statuses.d.ts.map +1 -1
- package/dist/wu-statuses.js +4 -242
- package/dist/wu-statuses.js.map +1 -1
- package/dist/wu-transaction-collectors.d.ts +1 -0
- package/dist/wu-transaction-collectors.d.ts.map +1 -1
- package/dist/wu-transaction-collectors.js +13 -8
- package/dist/wu-transaction-collectors.js.map +1 -1
- package/dist/wu-type-helpers.d.ts +1 -27
- package/dist/wu-type-helpers.d.ts.map +1 -1
- package/dist/wu-type-helpers.js +4 -46
- package/dist/wu-type-helpers.js.map +1 -1
- package/dist/wu-ui-constants.d.ts +1 -235
- package/dist/wu-ui-constants.d.ts.map +1 -1
- package/dist/wu-ui-constants.js +5 -235
- package/dist/wu-ui-constants.js.map +1 -1
- package/dist/wu-validation-constants.d.ts +1 -60
- package/dist/wu-validation-constants.d.ts.map +1 -1
- package/dist/wu-validation-constants.js +4 -66
- package/dist/wu-validation-constants.js.map +1 -1
- package/dist/wu-yaml.d.ts +1 -112
- package/dist/wu-yaml.d.ts.map +1 -1
- package/dist/wu-yaml.js +4 -304
- package/dist/wu-yaml.js.map +1 -1
- package/package.json +12 -9
- package/dist/coverage-gate.d.ts +0 -128
- package/dist/coverage-gate.d.ts.map +0 -1
- package/dist/coverage-gate.js +0 -211
- package/dist/coverage-gate.js.map +0 -1
- package/dist/gates-agent-mode.d.ts +0 -108
- package/dist/gates-agent-mode.d.ts.map +0 -1
- package/dist/gates-agent-mode.js +0 -138
- package/dist/gates-agent-mode.js.map +0 -1
- package/dist/gates-config-internal.d.ts +0 -54
- package/dist/gates-config-internal.d.ts.map +0 -1
- package/dist/gates-config-internal.js +0 -107
- package/dist/gates-config-internal.js.map +0 -1
- package/dist/gates-config.d.ts +0 -68
- package/dist/gates-config.d.ts.map +0 -1
- package/dist/gates-config.js +0 -193
- package/dist/gates-config.js.map +0 -1
- package/dist/gates-coverage.d.ts +0 -42
- package/dist/gates-coverage.d.ts.map +0 -1
- package/dist/gates-coverage.js +0 -162
- package/dist/gates-coverage.js.map +0 -1
- package/dist/gates-presets.d.ts +0 -52
- package/dist/gates-presets.d.ts.map +0 -1
- package/dist/gates-presets.js +0 -117
- package/dist/gates-presets.js.map +0 -1
- package/dist/gates-schemas.d.ts +0 -143
- package/dist/gates-schemas.d.ts.map +0 -1
- package/dist/gates-schemas.js +0 -67
- package/dist/gates-schemas.js.map +0 -1
- package/dist/package-manager-resolver.d.ts +0 -80
- package/dist/package-manager-resolver.d.ts.map +0 -1
- package/dist/package-manager-resolver.js +0 -245
- package/dist/package-manager-resolver.js.map +0 -1
- package/dist/resolve-policy.d.ts +0 -293
- package/dist/resolve-policy.d.ts.map +0 -1
- package/dist/resolve-policy.js +0 -303
- package/dist/resolve-policy.js.map +0 -1
package/dist/wu-git-constants.js
CHANGED
|
@@ -1,178 +1,7 @@
|
|
|
1
1
|
// Copyright (c) 2026 Hellmai Ltd
|
|
2
2
|
// SPDX-License-Identifier: AGPL-3.0-only
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
*
|
|
7
|
-
* Contains git branch names, remotes, refs, flags, commands, and display constants.
|
|
8
|
-
*
|
|
9
|
-
* @module wu-git-constants
|
|
10
|
-
*/
|
|
11
|
-
/**
|
|
12
|
-
* Git branch names
|
|
13
|
-
*/
|
|
14
|
-
export const BRANCHES = {
|
|
15
|
-
MAIN: 'main',
|
|
16
|
-
MASTER: 'master', // Legacy default branch name (defensive check)
|
|
17
|
-
/** Temporary branch prefix for micro-worktree operations */
|
|
18
|
-
TEMP_PREFIX: 'tmp/',
|
|
19
|
-
};
|
|
20
|
-
/**
|
|
21
|
-
* Git remote names
|
|
22
|
-
*
|
|
23
|
-
* WU-1302: Centralized to eliminate hardcoded 'origin' strings
|
|
24
|
-
*/
|
|
25
|
-
export const REMOTES = {
|
|
26
|
-
ORIGIN: 'origin',
|
|
27
|
-
};
|
|
28
|
-
/**
|
|
29
|
-
* Git ref construction helpers
|
|
30
|
-
*
|
|
31
|
-
* Centralized to eliminate hardcoded 'origin/main' strings
|
|
32
|
-
*/
|
|
33
|
-
export const GIT_REFS = {
|
|
34
|
-
/** Construct remote ref like 'origin/main' */
|
|
35
|
-
remote: (remoteName, branchName) => `${remoteName}/${branchName}`,
|
|
36
|
-
/** Shortcut for origin/main */
|
|
37
|
-
ORIGIN_MAIN: 'origin/main',
|
|
38
|
-
/** Current HEAD ref */
|
|
39
|
-
HEAD: 'HEAD',
|
|
40
|
-
/** Upstream ref */
|
|
41
|
-
UPSTREAM: '@{u}',
|
|
42
|
-
/** Range of upstream..HEAD */
|
|
43
|
-
UPSTREAM_RANGE: '@{u}..HEAD',
|
|
44
|
-
/** Fetch head ref */
|
|
45
|
-
FETCH_HEAD: 'FETCH_HEAD',
|
|
46
|
-
};
|
|
47
|
-
/**
|
|
48
|
-
* Git display constants
|
|
49
|
-
*
|
|
50
|
-
* Emergency fix (Session 2): Centralized from hardcoded magic numbers
|
|
51
|
-
* Used for display truncation of SHAs and session IDs
|
|
52
|
-
*/
|
|
53
|
-
export const GIT = {
|
|
54
|
-
/** Standard length for displaying short SHA hashes (e.g., "abc12345") */
|
|
55
|
-
SHA_SHORT_LENGTH: 8,
|
|
56
|
-
/** Max number of commits to inspect in git log lookbacks */
|
|
57
|
-
LOG_MAX_COUNT: 50,
|
|
58
|
-
};
|
|
59
|
-
/**
|
|
60
|
-
* Real git executable path - MUST bypass tools/shims to prevent recursion.
|
|
61
|
-
*
|
|
62
|
-
* CRITICAL: The git shim (tools/shims/git) calls functions that need to run git
|
|
63
|
-
* commands. If those functions use 'git' (which resolves to the shim), we get
|
|
64
|
-
* infinite recursion: shim -> helper -> git -> shim -> helper -> git -> ...
|
|
65
|
-
*
|
|
66
|
-
* With VS Code extensions making dozens of git calls per second, this causes
|
|
67
|
-
* memory exhaustion within seconds -> OOM crash -> system reboot.
|
|
68
|
-
*
|
|
69
|
-
* P0 incident: 2025-12-10 server crash due to recursive fork bomb.
|
|
70
|
-
*
|
|
71
|
-
* @see tools/shims/git - The git shim that blocks destructive commands
|
|
72
|
-
* @see tools/lib/wu-helpers.ts - Uses REAL_GIT to avoid recursion
|
|
73
|
-
*/
|
|
74
|
-
export const REAL_GIT = '/usr/bin/git';
|
|
75
|
-
/**
|
|
76
|
-
* Git command flags
|
|
77
|
-
*
|
|
78
|
-
* Centralized git flag constants to eliminate hardcoded strings.
|
|
79
|
-
* Used by git-adapter.ts and other git operation utilities.
|
|
80
|
-
*/
|
|
81
|
-
export const GIT_FLAGS = {
|
|
82
|
-
/** Show abbreviated ref names (for branch name resolution) */
|
|
83
|
-
ABBREV_REF: '--abbrev-ref',
|
|
84
|
-
/** Porcelain format (machine-readable output) */
|
|
85
|
-
PORCELAIN: '--porcelain',
|
|
86
|
-
/** Create new branch and switch to it */
|
|
87
|
-
BRANCH: '-b',
|
|
88
|
-
/** Force flag (long form) */
|
|
89
|
-
FORCE: '--force',
|
|
90
|
-
/** Force flag (short form) */
|
|
91
|
-
FORCE_SHORT: '-f',
|
|
92
|
-
/** Fast-forward only merge */
|
|
93
|
-
FF_ONLY: '--ff-only',
|
|
94
|
-
/** Rebase local commits on top of fetched branch */
|
|
95
|
-
REBASE: '--rebase',
|
|
96
|
-
/** Check ancestry without output (merge-base) */
|
|
97
|
-
IS_ANCESTOR: '--is-ancestor',
|
|
98
|
-
/** Write merged tree object and return conflict status code */
|
|
99
|
-
WRITE_TREE: '--write-tree',
|
|
100
|
-
/** Set upstream tracking */
|
|
101
|
-
UPSTREAM: '-u',
|
|
102
|
-
/** Delete branch (safe - only if merged) */
|
|
103
|
-
DELETE: '-d',
|
|
104
|
-
/** Delete branch (force - even if not merged) */
|
|
105
|
-
DELETE_FORCE: '-D',
|
|
106
|
-
/** Delete remote branch flag (for git push --delete) */
|
|
107
|
-
DELETE_REMOTE: '--delete',
|
|
108
|
-
/** Hard reset flag */
|
|
109
|
-
HARD: '--hard',
|
|
110
|
-
/** Soft reset flag */
|
|
111
|
-
SOFT: '--soft',
|
|
112
|
-
/** fd flags for clean (force delete directories) */
|
|
113
|
-
FD_SHORT: '-fd',
|
|
114
|
-
/** df flags for clean (delete force directories) */
|
|
115
|
-
DF_SHORT: '-df',
|
|
116
|
-
/** No verify flag (skip pre-commit/commit-msg hooks) */
|
|
117
|
-
NO_VERIFY: '--no-verify',
|
|
118
|
-
/** No GPG sign flag (skip commit signing) */
|
|
119
|
-
NO_GPG_SIGN: '--no-gpg-sign',
|
|
120
|
-
/** One-line log format */
|
|
121
|
-
ONELINE: '--oneline',
|
|
122
|
-
/** List heads only (for ls-remote) */
|
|
123
|
-
HEADS: '--heads',
|
|
124
|
-
/** Path separator (separates git options from file paths) */
|
|
125
|
-
PATH_SEPARATOR: '--',
|
|
126
|
-
};
|
|
127
|
-
/**
|
|
128
|
-
* Git commands
|
|
129
|
-
*
|
|
130
|
-
* Centralized git command strings to eliminate hardcoded strings.
|
|
131
|
-
* Used for direct git command execution via execSync/execa.
|
|
132
|
-
*/
|
|
133
|
-
export const GIT_COMMANDS = {
|
|
134
|
-
/** Git binary */
|
|
135
|
-
GIT: 'git',
|
|
136
|
-
/** Git reset command */
|
|
137
|
-
RESET: 'reset',
|
|
138
|
-
/** List tree objects (check file existence on branch) */
|
|
139
|
-
LS_TREE: 'ls-tree',
|
|
140
|
-
/** List remote references */
|
|
141
|
-
LS_REMOTE: 'ls-remote',
|
|
142
|
-
/** Push command */
|
|
143
|
-
PUSH: 'push',
|
|
144
|
-
/** Pull command */
|
|
145
|
-
PULL: 'pull',
|
|
146
|
-
/** Git diff command */
|
|
147
|
-
DIFF: 'diff',
|
|
148
|
-
/** Git log command */
|
|
149
|
-
LOG: 'log',
|
|
150
|
-
/** Git merge-base command */
|
|
151
|
-
MERGE_BASE: 'merge-base',
|
|
152
|
-
/** Git merge-tree command */
|
|
153
|
-
MERGE_TREE: 'merge-tree',
|
|
154
|
-
/** Git rev-parse command */
|
|
155
|
-
REV_PARSE: 'rev-parse',
|
|
156
|
-
/** Git diff flags */
|
|
157
|
-
CACHED: '--cached',
|
|
158
|
-
NAME_ONLY: '--name-only',
|
|
159
|
-
DIFF_FILTER_ACM: '--diff-filter=ACM',
|
|
160
|
-
};
|
|
161
|
-
/**
|
|
162
|
-
* Git command combinations
|
|
163
|
-
*
|
|
164
|
-
* Full git command strings for common operations.
|
|
165
|
-
*/
|
|
166
|
-
export const GIT_COMMAND_STRINGS = {
|
|
167
|
-
/** Get diff of cached (staged) files */
|
|
168
|
-
DIFF_CACHED: 'git diff --cached',
|
|
169
|
-
/** Get names of cached files */
|
|
170
|
-
DIFF_CACHED_NAMES: 'git diff --cached --name-only',
|
|
171
|
-
/** Get names of cached files (added, copied, modified) */
|
|
172
|
-
DIFF_CACHED_ACM: 'git diff --cached --name-only --diff-filter=ACM',
|
|
173
|
-
/** Get cached diff with zero context (used for hook validation) */
|
|
174
|
-
DIFF_CACHED_UNIFIED_ZERO: 'git diff --cached -U0',
|
|
175
|
-
/** Get current branch name */
|
|
176
|
-
REV_PARSE_ABBREV_REF_HEAD: 'git rev-parse --abbrev-ref HEAD',
|
|
177
|
-
};
|
|
3
|
+
// WU-2679 (INIT-058 L2c): Shim — real module lives in @lumenflow/packs-software-delivery.
|
|
4
|
+
// Re-export preserves the `@lumenflow/core/wu-git-constants` subpath for existing consumers
|
|
5
|
+
// until Layer 7 removes the shim.
|
|
6
|
+
export * from '@lumenflow/packs-software-delivery/constants/wu-git-constants';
|
|
178
7
|
//# sourceMappingURL=wu-git-constants.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"wu-git-constants.js","sourceRoot":"","sources":["../src/wu-git-constants.ts"],"names":[],"mappings":"AAAA,iCAAiC;AACjC,yCAAyC;AAEzC
|
|
1
|
+
{"version":3,"file":"wu-git-constants.js","sourceRoot":"","sources":["../src/wu-git-constants.ts"],"names":[],"mappings":"AAAA,iCAAiC;AACjC,yCAAyC;AAEzC,0FAA0F;AAC1F,4FAA4F;AAC5F,kCAAkC;AAClC,cAAc,+DAA+D,CAAC"}
|
package/dist/wu-helpers.d.ts
CHANGED
|
@@ -63,6 +63,30 @@ export declare function isMainWorktree(): boolean;
|
|
|
63
63
|
* @returns {string|null} WU ID (e.g., 'WU-401') or null
|
|
64
64
|
*/
|
|
65
65
|
export declare function extractWUFromBranch(branch: string | null | undefined): string | null;
|
|
66
|
+
/**
|
|
67
|
+
* Build a `chore:` commit message prefix scoped to the current WU when the
|
|
68
|
+
* caller is on a `lane/<lane>/wu-N` branch.
|
|
69
|
+
*
|
|
70
|
+
* WU-2656: Auto-commits generated by pack-level CLI commands (config:set,
|
|
71
|
+
* gate:co-change, gate:conditional, …) must carry the current WU-ID on lane
|
|
72
|
+
* branches, or the commit-msg hook rejects them. Previously agents bypassed
|
|
73
|
+
* this with LUMENFLOW_FORCE=1, generating audit-log noise. This helper
|
|
74
|
+
* centralises the resolver so every auto-commit uses the same rule.
|
|
75
|
+
*
|
|
76
|
+
* Returns:
|
|
77
|
+
* - On a `lane/<lane>/wu-N` branch: `chore(wu-N): <subcommand>`
|
|
78
|
+
* (lowercase `wu-N`, per Conventional Commits scope convention).
|
|
79
|
+
* - On `main`, a non-lane branch, detached HEAD, or outside a git repo:
|
|
80
|
+
* `chore: <subcommand>` (existing behaviour, unchanged).
|
|
81
|
+
*
|
|
82
|
+
* Branch is accepted as a parameter (rather than being resolved internally)
|
|
83
|
+
* to keep the function pure and trivially testable without git mocks.
|
|
84
|
+
*
|
|
85
|
+
* @param subcommand - The command tag that follows the type/scope (e.g. `config:set`)
|
|
86
|
+
* @param branch - Current git branch, typically from `getCurrentBranch()`
|
|
87
|
+
* @returns The commit message prefix, including the trailing ` <subcommand>` tag.
|
|
88
|
+
*/
|
|
89
|
+
export declare function buildChoreCommitPrefix(subcommand: string, branch: string | null | undefined): string;
|
|
66
90
|
/**
|
|
67
91
|
* Validate branch name follows lane convention
|
|
68
92
|
* Expected: lane/<lane-name>/<wu-id>
|
package/dist/wu-helpers.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"wu-helpers.d.ts","sourceRoot":"","sources":["../src/wu-helpers.ts"],"names":[],"mappings":";AAGA;;;;;;;GAOG;AAEH,OAAO,EAAY,KAAK,iCAAiC,EAAE,MAAM,oBAAoB,CAAC;
|
|
1
|
+
{"version":3,"file":"wu-helpers.d.ts","sourceRoot":"","sources":["../src/wu-helpers.ts"],"names":[],"mappings":";AAGA;;;;;;;GAOG;AAEH,OAAO,EAAY,KAAK,iCAAiC,EAAE,MAAM,oBAAoB,CAAC;AAStF,OAAO,KAAK,EACV,uBAAuB,EACvB,aAAa,EACb,oBAAoB,EACrB,MAAM,6BAA6B,CAAC;AAErC,UAAU,YAAY;IACpB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC;CACxB;AAED,KAAK,sBAAsB,GAAG,IAAI,CAAC,aAAa,EAAE,kBAAkB,CAAC,CAAC;AACtE,KAAK,UAAU,GAAG,IAAI,CAAC,iCAAiC,EAAE,UAAU,CAAC,CAAC;AAGtE;;;;;;;;;;;;;GAaG;AACH,wBAAgB,kBAAkB,CAAC,EAAE,EAAE,MAAM,GAAG,IAAI,CAInD;AAED;;;;;GAKG;AACH,wBAAgB,GAAG,CAAC,GAAG,EAAE,MAAM,EAAE,IAAI,GAAE,UAAe,GAAG,MAAM,CAM9D;AAED;;;;GAIG;AACH,wBAAgB,gBAAgB,kBAE/B;AAED;;;;GAIG;AACH,wBAAgB,aAAa,WAK5B;AAED;;;;GAIG;AACH,wBAAgB,cAAc,YAM7B;AAED;;;;;GAKG;AACH,wBAAgB,mBAAmB,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,GAAG,MAAM,GAAG,IAAI,CAQpF;AAED;;;;;;;;;;;;;;;;;;;;;;GAsBG;AACH,wBAAgB,sBAAsB,CACpC,UAAU,EAAE,MAAM,EAClB,MAAM,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,GAChC,MAAM,CAOR;AAED;;;;;GAKG;AACH,wBAAgB,kBAAkB,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,GAAG,uBAAuB,CAuB7F;AAED;;;;;GAKG;AACH,wBAAgB,UAAU,CAAC,IAAI,EAAE,MAAM,GAAG,YAAY,GAAG,IAAI,CAc5D;AAED;;;;;GAKG;AACH,wBAAgB,aAAa,CAC3B,IAAI,EAAE,MAAM,EACZ,eAAe,GAAE,MAAM,EAA+B,GACrD,oBAAoB,CA6BtB;AAED;;;;;GAKG;AACH,wBAAgB,eAAe,CAAC,QAAQ,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,MAAM,CAQzE;AAED;;;;;;;;GAQG;AACH,wBAAgB,0BAA0B,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,GAAG,MAAM,GAAG,IAAI,CAiB5F;AAED;;;;;;;;;;;;GAYG;AACH,wBAAsB,YAAY,CAAC,GAAG,EAAE,sBAAsB,GAAG,OAAO,CAAC,IAAI,CAAC,CAiB7E;AAED,OAAO,EAAE,kBAAkB,EAAE,MAAM,qBAAqB,CAAC"}
|
package/dist/wu-helpers.js
CHANGED
|
@@ -13,10 +13,11 @@ import { execSync } from 'node:child_process';
|
|
|
13
13
|
import { existsSync, readFileSync } from 'node:fs';
|
|
14
14
|
import path from 'node:path';
|
|
15
15
|
import { parse } from 'yaml';
|
|
16
|
-
import {
|
|
16
|
+
import { DIRECTORIES, STDIO, REAL_GIT, PATTERNS } from './wu-constants.js';
|
|
17
17
|
import { die, createError, ErrorCodes } from './error-handler.js';
|
|
18
18
|
import { isAgentBranchWithDetails } from './branch-check.js';
|
|
19
19
|
import { createWuPaths } from './wu-paths.js';
|
|
20
|
+
import { isIntegrationMainBranch, resolveIntegrationTarget } from './integration-target.js';
|
|
20
21
|
const GIT_WORKTREES_SEGMENT = `/${DIRECTORIES.WORKTREES.replace(/\/+$/, '')}/`;
|
|
21
22
|
/**
|
|
22
23
|
* Validate WU ID format
|
|
@@ -100,6 +101,37 @@ export function extractWUFromBranch(branch) {
|
|
|
100
101
|
}
|
|
101
102
|
return null;
|
|
102
103
|
}
|
|
104
|
+
/**
|
|
105
|
+
* Build a `chore:` commit message prefix scoped to the current WU when the
|
|
106
|
+
* caller is on a `lane/<lane>/wu-N` branch.
|
|
107
|
+
*
|
|
108
|
+
* WU-2656: Auto-commits generated by pack-level CLI commands (config:set,
|
|
109
|
+
* gate:co-change, gate:conditional, …) must carry the current WU-ID on lane
|
|
110
|
+
* branches, or the commit-msg hook rejects them. Previously agents bypassed
|
|
111
|
+
* this with LUMENFLOW_FORCE=1, generating audit-log noise. This helper
|
|
112
|
+
* centralises the resolver so every auto-commit uses the same rule.
|
|
113
|
+
*
|
|
114
|
+
* Returns:
|
|
115
|
+
* - On a `lane/<lane>/wu-N` branch: `chore(wu-N): <subcommand>`
|
|
116
|
+
* (lowercase `wu-N`, per Conventional Commits scope convention).
|
|
117
|
+
* - On `main`, a non-lane branch, detached HEAD, or outside a git repo:
|
|
118
|
+
* `chore: <subcommand>` (existing behaviour, unchanged).
|
|
119
|
+
*
|
|
120
|
+
* Branch is accepted as a parameter (rather than being resolved internally)
|
|
121
|
+
* to keep the function pure and trivially testable without git mocks.
|
|
122
|
+
*
|
|
123
|
+
* @param subcommand - The command tag that follows the type/scope (e.g. `config:set`)
|
|
124
|
+
* @param branch - Current git branch, typically from `getCurrentBranch()`
|
|
125
|
+
* @returns The commit message prefix, including the trailing ` <subcommand>` tag.
|
|
126
|
+
*/
|
|
127
|
+
export function buildChoreCommitPrefix(subcommand, branch) {
|
|
128
|
+
const wuid = extractWUFromBranch(branch);
|
|
129
|
+
if (!wuid) {
|
|
130
|
+
return `chore: ${subcommand}`;
|
|
131
|
+
}
|
|
132
|
+
// Conventional Commits scope convention: lowercase (e.g. `wu-2656`).
|
|
133
|
+
return `chore(${wuid.toLowerCase()}): ${subcommand}`;
|
|
134
|
+
}
|
|
103
135
|
/**
|
|
104
136
|
* Validate branch name follows lane convention
|
|
105
137
|
* Expected: lane/<lane-name>/<wu-id>
|
|
@@ -107,7 +139,7 @@ export function extractWUFromBranch(branch) {
|
|
|
107
139
|
* @returns {{valid: boolean, lane: string|null, wuid: string|null, error: string|null}}
|
|
108
140
|
*/
|
|
109
141
|
export function validateBranchName(branch) {
|
|
110
|
-
if (!branch || branch
|
|
142
|
+
if (!branch || isIntegrationMainBranch(branch)) {
|
|
111
143
|
return { valid: true, lane: null, wuid: null, error: null };
|
|
112
144
|
}
|
|
113
145
|
const match = branch.match(/^lane\/([^/]+)\/(wu-\d+)$/i);
|
|
@@ -238,14 +270,15 @@ export function extractWUFromCommitMessage(message) {
|
|
|
238
270
|
*/
|
|
239
271
|
export async function ensureOnMain(git) {
|
|
240
272
|
const branch = await git.getCurrentBranch();
|
|
241
|
-
|
|
273
|
+
const configuredMain = resolveIntegrationTarget().mainBranch;
|
|
274
|
+
if (branch !== configuredMain) {
|
|
242
275
|
// WU-1091: Check if this is an agent branch that can bypass the main requirement
|
|
243
276
|
const agentResult = await isAgentBranchWithDetails(branch);
|
|
244
277
|
if (agentResult.isMatch) {
|
|
245
278
|
console.log(`[ensureOnMain] Bypassing for agent branch '${branch}' (${agentResult.patternResult.source})`);
|
|
246
279
|
return;
|
|
247
280
|
}
|
|
248
|
-
throw createError(ErrorCodes.BRANCH_ERROR, `Run from shared checkout on '${
|
|
281
|
+
throw createError(ErrorCodes.BRANCH_ERROR, `Run from shared checkout on '${configuredMain}' (found '${branch}')`);
|
|
249
282
|
}
|
|
250
283
|
}
|
|
251
284
|
export { ensureMainUpToDate } from './sync-validator.js';
|
package/dist/wu-helpers.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"wu-helpers.js","sourceRoot":"","sources":["../src/wu-helpers.ts"],"names":[],"mappings":";AACA,iCAAiC;AACjC,yCAAyC;AACzC;;;;;;;GAOG;AAEH,OAAO,EAAE,QAAQ,EAA0C,MAAM,oBAAoB,CAAC;AACtF,OAAO,EAAE,UAAU,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AACnD,OAAO,IAAI,MAAM,WAAW,CAAC;AAC7B,OAAO,EAAE,KAAK,EAAE,MAAM,MAAM,CAAC;AAC7B,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"wu-helpers.js","sourceRoot":"","sources":["../src/wu-helpers.ts"],"names":[],"mappings":"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"}
|
package/dist/wu-id-format.d.ts
CHANGED
|
@@ -1,139 +1,3 @@
|
|
|
1
1
|
/// <reference path="./types.d.ts" />
|
|
2
|
-
|
|
3
|
-
export declare const WU_ID_WIDTH_MIN = 1;
|
|
4
|
-
/** Maximum allowed zero-padding width. */
|
|
5
|
-
export declare const WU_ID_WIDTH_MAX = 6;
|
|
6
|
-
/**
|
|
7
|
-
* Prefix validation pattern: uppercase letter start, followed by 1-9 more
|
|
8
|
-
* uppercase-alphanumeric characters, terminated by a dash. Matches 'WU-',
|
|
9
|
-
* 'TASK-', 'STORY-', 'TICKET-', 'JIRA123-'. Rejects lowercase, missing dash,
|
|
10
|
-
* single-char prefixes, and over-long prefixes.
|
|
11
|
-
*/
|
|
12
|
-
export declare const WU_ID_PREFIX_PATTERN: RegExp;
|
|
13
|
-
/** Canonical WU ID configuration. */
|
|
14
|
-
export interface WuIdConfig {
|
|
15
|
-
/** Zero-padding width. Default 4 (WU-0001). */
|
|
16
|
-
width: number;
|
|
17
|
-
/**
|
|
18
|
-
* Strict mode. When true, non-canonical legacy IDs are flagged as errors
|
|
19
|
-
* by wu:doctor and wu:create canonicalizes --id input. When false, legacy
|
|
20
|
-
* IDs are tolerated as warnings for incremental migration.
|
|
21
|
-
*/
|
|
22
|
-
strict: boolean;
|
|
23
|
-
/** Canonical prefix including trailing dash. Default 'WU-'. */
|
|
24
|
-
prefix: string;
|
|
25
|
-
}
|
|
26
|
-
/** Default WU ID configuration. */
|
|
27
|
-
export declare const WU_ID_DEFAULTS: WuIdConfig;
|
|
28
|
-
/**
|
|
29
|
-
* Validate and resolve a partial WU ID config against the defaults.
|
|
30
|
-
*
|
|
31
|
-
* @throws {Error} If width is not an integer in [1, 6] or prefix does not
|
|
32
|
-
* match {@link WU_ID_PREFIX_PATTERN}.
|
|
33
|
-
*/
|
|
34
|
-
export declare function validateWuIdConfig(partial?: Partial<WuIdConfig>): WuIdConfig;
|
|
35
|
-
/**
|
|
36
|
-
* Format an integer as a canonical WU ID.
|
|
37
|
-
*
|
|
38
|
-
* Zero-pads to the configured width. If the integer exceeds 10^width, the
|
|
39
|
-
* result is wider than width (overflow is preserved, never truncated).
|
|
40
|
-
*
|
|
41
|
-
* @throws {Error} If n is not a positive integer.
|
|
42
|
-
*/
|
|
43
|
-
export declare function formatWuId(n: number, config?: Partial<WuIdConfig>): string;
|
|
44
|
-
/**
|
|
45
|
-
* Parse a WU ID (or YAML/stamp filename) into its prefix and numeric parts.
|
|
46
|
-
*
|
|
47
|
-
* Returns null for any input that does not match the configured prefix or
|
|
48
|
-
* does not carry a positive integer body. Accepts both canonical padded and
|
|
49
|
-
* legacy unpadded forms.
|
|
50
|
-
*
|
|
51
|
-
* Strips `.yaml` and `.done` extensions before parsing.
|
|
52
|
-
*/
|
|
53
|
-
export declare function parseWuId(id: string, config?: Partial<WuIdConfig>): {
|
|
54
|
-
prefix: string;
|
|
55
|
-
num: number;
|
|
56
|
-
} | null;
|
|
57
|
-
/**
|
|
58
|
-
* Build an anchored regex that matches WU IDs (both padded and unpadded
|
|
59
|
-
* digit counts) for the configured prefix. Intended for file scans and
|
|
60
|
-
* consumers that previously hardcoded `/^WU-\d+$/`.
|
|
61
|
-
*
|
|
62
|
-
* Strict canonical-form enforcement lives in {@link isCanonicalWuId}, not here.
|
|
63
|
-
*/
|
|
64
|
-
export declare function wuIdRegex(config?: Partial<WuIdConfig>): RegExp;
|
|
65
|
-
/**
|
|
66
|
-
* Return an unanchored pattern string (for embedding in longer regexes)
|
|
67
|
-
* that matches the WU id body — the configured prefix followed by one
|
|
68
|
-
* or more digits. Consumers that previously hardcoded `WU-\\d+` inside
|
|
69
|
-
* a larger regex should use this helper so prefix configuration
|
|
70
|
-
* (`software_delivery.wu_id.prefix`) is honored.
|
|
71
|
-
*
|
|
72
|
-
* The pattern does NOT include anchors; callers decide whether to
|
|
73
|
-
* anchor with `^`/`$` or embed in a path/substring match.
|
|
74
|
-
*/
|
|
75
|
-
export declare function wuIdBodyPattern(config?: Partial<WuIdConfig>): string;
|
|
76
|
-
/**
|
|
77
|
-
* Return true if the given string is a canonical WU ID for the configured
|
|
78
|
-
* width and prefix. Canonical means:
|
|
79
|
-
* - Prefix matches.
|
|
80
|
-
* - Digit body is at least `width` characters long.
|
|
81
|
-
* - The digit body is not shorter than width (no unpadded legacy).
|
|
82
|
-
* - Overflow (body wider than width) is allowed so the sequence never truncates.
|
|
83
|
-
*/
|
|
84
|
-
export declare function isCanonicalWuId(id: string, config?: Partial<WuIdConfig>): boolean;
|
|
85
|
-
/**
|
|
86
|
-
* Canonicalize a (possibly legacy) WU ID to the canonical form for the
|
|
87
|
-
* configured width. Returns null for unparseable input or prefix mismatch.
|
|
88
|
-
*
|
|
89
|
-
* Already-canonical IDs are returned unchanged. Overflow IDs (wider than
|
|
90
|
-
* width) are preserved.
|
|
91
|
-
*/
|
|
92
|
-
export declare function canonicalizeWuId(id: string, config?: Partial<WuIdConfig>): string | null;
|
|
93
|
-
/**
|
|
94
|
-
* Load the canonical WU id config from workspace.yaml
|
|
95
|
-
* `software_delivery.wu_id.{width,strict,prefix}`.
|
|
96
|
-
*
|
|
97
|
-
* Falls back to {@link WU_ID_DEFAULTS} when the block is absent, so
|
|
98
|
-
* existing repos without any wu_id config continue to see WU- prefixed
|
|
99
|
-
* ids (backward compatible) with the only visible change being
|
|
100
|
-
* zero-padding on newly-generated ids.
|
|
101
|
-
*
|
|
102
|
-
* @param options.projectRoot - Optional override for the project root.
|
|
103
|
-
*/
|
|
104
|
-
export declare function loadWuIdConfig(options?: {
|
|
105
|
-
projectRoot?: string;
|
|
106
|
-
}): WuIdConfig;
|
|
107
|
-
/** Inputs for {@link scanExistingWuNumbers}. */
|
|
108
|
-
export interface ScanExistingWuNumbersInput {
|
|
109
|
-
/** Absolute path to the WU YAML directory. */
|
|
110
|
-
wuDir: string;
|
|
111
|
-
/** Absolute path to the stamps directory. */
|
|
112
|
-
stampsDir: string;
|
|
113
|
-
/** Absolute path to `wu-events.jsonl` (may or may not exist). */
|
|
114
|
-
eventsPath: string;
|
|
115
|
-
}
|
|
116
|
-
/**
|
|
117
|
-
* Scan every existing WU id integer across the yaml directory, stamps
|
|
118
|
-
* directory, and event log. Used by wu:create for integer-level
|
|
119
|
-
* collision detection so `WU-14` and `WU-0014` can never coexist.
|
|
120
|
-
*
|
|
121
|
-
* Results are deduplicated across sources. Entries whose prefix does
|
|
122
|
-
* not match the configured prefix are ignored. Extension suffixes
|
|
123
|
-
* (`.yaml`, `.done`) are stripped before parsing.
|
|
124
|
-
*/
|
|
125
|
-
export declare function scanExistingWuNumbers(input: ScanExistingWuNumbersInput, config?: Partial<WuIdConfig>): Set<number>;
|
|
126
|
-
/**
|
|
127
|
-
* Returns true when `num` is already present in the given set.
|
|
128
|
-
* Thin wrapper for call-site readability at the wu:create integration point.
|
|
129
|
-
*/
|
|
130
|
-
export declare function integerCollides(existing: ReadonlySet<number>, num: number): boolean;
|
|
131
|
-
/**
|
|
132
|
-
* Returns true when the given WU number is within the width-exhaustion
|
|
133
|
-
* warning band (>= 90% of 10^width) but still below the width ceiling.
|
|
134
|
-
*
|
|
135
|
-
* Numbers that already exceed the width capacity return false so the
|
|
136
|
-
* warning only fires once, not on every subsequent overflow id.
|
|
137
|
-
*/
|
|
138
|
-
export declare function isWidthExhaustionWarning(num: number, config?: Partial<WuIdConfig>): boolean;
|
|
2
|
+
export * from '@lumenflow/packs-software-delivery/constants/wu-id-format';
|
|
139
3
|
//# sourceMappingURL=wu-id-format.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"wu-id-format.d.ts","sourceRoot":"","sources":["../src/wu-id-format.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"wu-id-format.d.ts","sourceRoot":"","sources":["../src/wu-id-format.ts"],"names":[],"mappings":"AAGA,cAAc,2DAA2D,CAAC"}
|