@lumenflow/core 3.1.2 → 3.1.3
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 +16 -16
- package/dist/cli/is-agent-branch.js +31 -10
- package/dist/index.js +3 -0
- package/package.json +5 -2
- package/dist/active-wu-detector.d.ts +0 -25
- package/dist/active-wu-detector.d.ts.map +0 -1
- package/dist/active-wu-detector.js +0 -109
- package/dist/active-wu-detector.js.map +0 -1
- package/dist/adapters/context-adapters.d.ts +0 -101
- package/dist/adapters/context-adapters.d.ts.map +0 -1
- package/dist/adapters/context-adapters.js +0 -98
- package/dist/adapters/context-adapters.js.map +0 -1
- package/dist/adapters/filesystem-metrics.adapter.d.ts +0 -91
- package/dist/adapters/filesystem-metrics.adapter.d.ts.map +0 -1
- package/dist/adapters/filesystem-metrics.adapter.js +0 -530
- package/dist/adapters/filesystem-metrics.adapter.js.map +0 -1
- package/dist/adapters/index.d.ts +0 -15
- package/dist/adapters/index.d.ts.map +0 -1
- package/dist/adapters/index.js +0 -21
- package/dist/adapters/index.js.map +0 -1
- package/dist/adapters/mock-dashboard-renderer.adapter.d.ts +0 -86
- package/dist/adapters/mock-dashboard-renderer.adapter.d.ts.map +0 -1
- package/dist/adapters/mock-dashboard-renderer.adapter.js +0 -93
- package/dist/adapters/mock-dashboard-renderer.adapter.js.map +0 -1
- package/dist/adapters/recovery-adapters.d.ts +0 -41
- package/dist/adapters/recovery-adapters.d.ts.map +0 -1
- package/dist/adapters/recovery-adapters.js +0 -32
- package/dist/adapters/recovery-adapters.js.map +0 -1
- package/dist/adapters/terminal-renderer.adapter.d.ts +0 -86
- package/dist/adapters/terminal-renderer.adapter.d.ts.map +0 -1
- package/dist/adapters/terminal-renderer.adapter.js +0 -342
- package/dist/adapters/terminal-renderer.adapter.js.map +0 -1
- package/dist/adapters/validation-adapters.d.ts +0 -53
- package/dist/adapters/validation-adapters.d.ts.map +0 -1
- package/dist/adapters/validation-adapters.js +0 -48
- package/dist/adapters/validation-adapters.js.map +0 -1
- package/dist/agent-patterns-registry.d.ts +0 -141
- package/dist/agent-patterns-registry.d.ts.map +0 -1
- package/dist/agent-patterns-registry.js +0 -319
- package/dist/agent-patterns-registry.js.map +0 -1
- package/dist/arg-parser.d.ts +0 -94
- package/dist/arg-parser.d.ts.map +0 -1
- package/dist/arg-parser.js +0 -774
- package/dist/arg-parser.js.map +0 -1
- package/dist/atomic-merge.d.ts +0 -21
- package/dist/atomic-merge.d.ts.map +0 -1
- package/dist/atomic-merge.js +0 -87
- package/dist/atomic-merge.js.map +0 -1
- package/dist/backlog-editor.d.ts +0 -103
- package/dist/backlog-editor.d.ts.map +0 -1
- package/dist/backlog-editor.js +0 -158
- package/dist/backlog-editor.js.map +0 -1
- package/dist/backlog-generator.d.ts +0 -90
- package/dist/backlog-generator.d.ts.map +0 -1
- package/dist/backlog-generator.js +0 -536
- package/dist/backlog-generator.js.map +0 -1
- package/dist/backlog-parser.d.ts +0 -46
- package/dist/backlog-parser.d.ts.map +0 -1
- package/dist/backlog-parser.js +0 -105
- package/dist/backlog-parser.js.map +0 -1
- package/dist/backlog-sync-validator.d.ts +0 -88
- package/dist/backlog-sync-validator.d.ts.map +0 -1
- package/dist/backlog-sync-validator.js +0 -324
- package/dist/backlog-sync-validator.js.map +0 -1
- package/dist/beacon-migration.d.ts +0 -56
- package/dist/beacon-migration.js +0 -101
- package/dist/branch-check.d.ts +0 -63
- package/dist/branch-check.d.ts.map +0 -1
- package/dist/branch-check.js +0 -197
- package/dist/branch-check.js.map +0 -1
- package/dist/branch-drift.d.ts +0 -24
- package/dist/branch-drift.d.ts.map +0 -1
- package/dist/branch-drift.js +0 -54
- package/dist/branch-drift.js.map +0 -1
- package/dist/cleanup-install-config.d.ts +0 -24
- package/dist/cleanup-install-config.d.ts.map +0 -1
- package/dist/cleanup-install-config.js +0 -40
- package/dist/cleanup-install-config.js.map +0 -1
- package/dist/cleanup-lock.d.ts +0 -125
- package/dist/cleanup-lock.d.ts.map +0 -1
- package/dist/cleanup-lock.js +0 -325
- package/dist/cleanup-lock.js.map +0 -1
- package/dist/cli/is-agent-branch.d.ts +0 -15
- package/dist/cli/is-agent-branch.d.ts.map +0 -1
- package/dist/cli/is-agent-branch.js.map +0 -1
- package/dist/cloud-detect.d.ts +0 -145
- package/dist/cloud-detect.d.ts.map +0 -1
- package/dist/cloud-detect.js +0 -116
- package/dist/cloud-detect.js.map +0 -1
- package/dist/code-path-validator.d.ts +0 -147
- package/dist/code-path-validator.d.ts.map +0 -1
- package/dist/code-path-validator.js +0 -551
- package/dist/code-path-validator.js.map +0 -1
- package/dist/code-paths-overlap.d.ts +0 -50
- package/dist/code-paths-overlap.d.ts.map +0 -1
- package/dist/code-paths-overlap.js +0 -248
- package/dist/code-paths-overlap.js.map +0 -1
- package/dist/color-support.d.ts +0 -21
- package/dist/color-support.d.ts.map +0 -1
- package/dist/color-support.js +0 -67
- package/dist/color-support.js.map +0 -1
- package/dist/commands-logger.d.ts +0 -71
- package/dist/commands-logger.d.ts.map +0 -1
- package/dist/commands-logger.js +0 -256
- package/dist/commands-logger.js.map +0 -1
- package/dist/commit-message-utils.d.ts +0 -26
- package/dist/commit-message-utils.d.ts.map +0 -1
- package/dist/commit-message-utils.js +0 -44
- package/dist/commit-message-utils.js.map +0 -1
- package/dist/compliance-parser.d.ts +0 -125
- package/dist/compliance-parser.d.ts.map +0 -1
- package/dist/compliance-parser.js +0 -457
- package/dist/compliance-parser.js.map +0 -1
- package/dist/constants/backlog-patterns.d.ts +0 -21
- package/dist/constants/backlog-patterns.d.ts.map +0 -1
- package/dist/constants/backlog-patterns.js +0 -26
- package/dist/constants/backlog-patterns.js.map +0 -1
- package/dist/constants/dora-constants.d.ts +0 -50
- package/dist/constants/dora-constants.d.ts.map +0 -1
- package/dist/constants/dora-constants.js +0 -56
- package/dist/constants/dora-constants.js.map +0 -1
- package/dist/constants/gate-constants.d.ts +0 -16
- package/dist/constants/gate-constants.d.ts.map +0 -1
- package/dist/constants/gate-constants.js +0 -18
- package/dist/constants/gate-constants.js.map +0 -1
- package/dist/constants/linter-constants.d.ts +0 -17
- package/dist/constants/linter-constants.d.ts.map +0 -1
- package/dist/constants/linter-constants.js +0 -19
- package/dist/constants/linter-constants.js.map +0 -1
- package/dist/constants/tokenizer-constants.d.ts +0 -16
- package/dist/constants/tokenizer-constants.d.ts.map +0 -1
- package/dist/constants/tokenizer-constants.js +0 -18
- package/dist/constants/tokenizer-constants.js.map +0 -1
- package/dist/context/context-computer.d.ts +0 -36
- package/dist/context/context-computer.d.ts.map +0 -1
- package/dist/context/context-computer.js +0 -128
- package/dist/context/context-computer.js.map +0 -1
- package/dist/context/git-state-reader.d.ts +0 -37
- package/dist/context/git-state-reader.d.ts.map +0 -1
- package/dist/context/git-state-reader.js +0 -64
- package/dist/context/git-state-reader.js.map +0 -1
- package/dist/context/index.d.ts +0 -18
- package/dist/context/index.d.ts.map +0 -1
- package/dist/context/index.js +0 -20
- package/dist/context/index.js.map +0 -1
- package/dist/context/location-resolver.d.ts +0 -34
- package/dist/context/location-resolver.d.ts.map +0 -1
- package/dist/context/location-resolver.js +0 -179
- package/dist/context/location-resolver.js.map +0 -1
- package/dist/context/wu-state-reader.d.ts +0 -30
- package/dist/context/wu-state-reader.d.ts.map +0 -1
- package/dist/context/wu-state-reader.js +0 -126
- package/dist/context/wu-state-reader.js.map +0 -1
- package/dist/context-di.d.ts +0 -185
- package/dist/context-di.d.ts.map +0 -1
- package/dist/context-di.js +0 -165
- package/dist/context-di.js.map +0 -1
- package/dist/context-validation-integration.d.ts +0 -69
- package/dist/context-validation-integration.d.ts.map +0 -1
- package/dist/context-validation-integration.js +0 -161
- package/dist/context-validation-integration.js.map +0 -1
- package/dist/core/scope-checker.d.ts +0 -80
- package/dist/core/scope-checker.d.ts.map +0 -1
- package/dist/core/scope-checker.js +0 -166
- package/dist/core/scope-checker.js.map +0 -1
- package/dist/core/tool-runner.d.ts +0 -136
- package/dist/core/tool-runner.d.ts.map +0 -1
- package/dist/core/tool-runner.js +0 -396
- package/dist/core/tool-runner.js.map +0 -1
- package/dist/core/tool.constants.d.ts +0 -106
- package/dist/core/tool.constants.d.ts.map +0 -1
- package/dist/core/tool.constants.js +0 -104
- package/dist/core/tool.constants.js.map +0 -1
- package/dist/core/tool.schemas.d.ts +0 -227
- package/dist/core/tool.schemas.d.ts.map +0 -1
- package/dist/core/tool.schemas.js +0 -229
- package/dist/core/tool.schemas.js.map +0 -1
- package/dist/core/worktree-guard.d.ts +0 -115
- package/dist/core/worktree-guard.d.ts.map +0 -1
- package/dist/core/worktree-guard.js +0 -245
- package/dist/core/worktree-guard.js.map +0 -1
- package/dist/coverage-gate.d.ts +0 -126
- package/dist/coverage-gate.d.ts.map +0 -1
- package/dist/coverage-gate.js +0 -209
- package/dist/coverage-gate.js.map +0 -1
- package/dist/cycle-detector.d.ts +0 -52
- package/dist/cycle-detector.d.ts.map +0 -1
- package/dist/cycle-detector.js +0 -84
- package/dist/cycle-detector.js.map +0 -1
- package/dist/date-utils.d.ts +0 -66
- package/dist/date-utils.d.ts.map +0 -1
- package/dist/date-utils.js +0 -143
- package/dist/date-utils.js.map +0 -1
- package/dist/delegation-escalation.d.ts +0 -71
- package/dist/delegation-escalation.d.ts.map +0 -1
- package/dist/delegation-escalation.js +0 -264
- package/dist/delegation-escalation.js.map +0 -1
- package/dist/delegation-monitor.d.ts +0 -262
- package/dist/delegation-monitor.d.ts.map +0 -1
- package/dist/delegation-monitor.js +0 -678
- package/dist/delegation-monitor.js.map +0 -1
- package/dist/delegation-recovery.d.ts +0 -62
- package/dist/delegation-recovery.d.ts.map +0 -1
- package/dist/delegation-recovery.js +0 -304
- package/dist/delegation-recovery.js.map +0 -1
- package/dist/delegation-registry-schema.d.ts +0 -75
- package/dist/delegation-registry-schema.d.ts.map +0 -1
- package/dist/delegation-registry-schema.js +0 -93
- package/dist/delegation-registry-schema.js.map +0 -1
- package/dist/delegation-registry-store.d.ts +0 -145
- package/dist/delegation-registry-store.d.ts.map +0 -1
- package/dist/delegation-registry-store.js +0 -308
- package/dist/delegation-registry-store.js.map +0 -1
- package/dist/delegation-tree.d.ts +0 -52
- package/dist/delegation-tree.d.ts.map +0 -1
- package/dist/delegation-tree.js +0 -205
- package/dist/delegation-tree.js.map +0 -1
- package/dist/dependency-graph.d.ts +0 -169
- package/dist/dependency-graph.d.ts.map +0 -1
- package/dist/dependency-graph.js +0 -612
- package/dist/dependency-graph.js.map +0 -1
- package/dist/dependency-guard.d.ts +0 -41
- package/dist/dependency-guard.d.ts.map +0 -1
- package/dist/dependency-guard.js +0 -145
- package/dist/dependency-guard.js.map +0 -1
- package/dist/dependency-validator.d.ts +0 -89
- package/dist/dependency-validator.d.ts.map +0 -1
- package/dist/dependency-validator.js +0 -155
- package/dist/dependency-validator.js.map +0 -1
- package/dist/docs-path-validator.d.ts +0 -16
- package/dist/docs-path-validator.d.ts.map +0 -1
- package/dist/docs-path-validator.js +0 -98
- package/dist/docs-path-validator.js.map +0 -1
- package/dist/domain/context.schemas.d.ts +0 -170
- package/dist/domain/context.schemas.d.ts.map +0 -1
- package/dist/domain/context.schemas.js +0 -151
- package/dist/domain/context.schemas.js.map +0 -1
- package/dist/domain/index.d.ts +0 -15
- package/dist/domain/index.d.ts.map +0 -1
- package/dist/domain/index.js +0 -23
- package/dist/domain/index.js.map +0 -1
- package/dist/domain/orchestration.constants.d.ts +0 -111
- package/dist/domain/orchestration.constants.d.ts.map +0 -1
- package/dist/domain/orchestration.constants.js +0 -130
- package/dist/domain/orchestration.constants.js.map +0 -1
- package/dist/domain/orchestration.schemas.d.ts +0 -307
- package/dist/domain/orchestration.schemas.d.ts.map +0 -1
- package/dist/domain/orchestration.schemas.js +0 -214
- package/dist/domain/orchestration.schemas.js.map +0 -1
- package/dist/domain/orchestration.types.d.ts +0 -134
- package/dist/domain/orchestration.types.d.ts.map +0 -1
- package/dist/domain/orchestration.types.js +0 -5
- package/dist/domain/orchestration.types.js.map +0 -1
- package/dist/domain/recovery.schemas.d.ts +0 -164
- package/dist/domain/recovery.schemas.d.ts.map +0 -1
- package/dist/domain/recovery.schemas.js +0 -134
- package/dist/domain/recovery.schemas.js.map +0 -1
- package/dist/domain/validation.schemas.d.ts +0 -147
- package/dist/domain/validation.schemas.d.ts.map +0 -1
- package/dist/domain/validation.schemas.js +0 -117
- package/dist/domain/validation.schemas.js.map +0 -1
- package/dist/error-handler.d.ts +0 -144
- package/dist/error-handler.d.ts.map +0 -1
- package/dist/error-handler.js +0 -214
- package/dist/error-handler.js.map +0 -1
- package/dist/file-classifiers.d.ts +0 -63
- package/dist/file-classifiers.d.ts.map +0 -1
- package/dist/file-classifiers.js +0 -111
- package/dist/file-classifiers.js.map +0 -1
- package/dist/force-bypass-audit.d.ts +0 -47
- package/dist/force-bypass-audit.d.ts.map +0 -1
- package/dist/force-bypass-audit.js +0 -146
- package/dist/force-bypass-audit.js.map +0 -1
- package/dist/gates-agent-mode.d.ts +0 -107
- 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.d.ts +0 -268
- package/dist/gates-config.d.ts.map +0 -1
- package/dist/gates-config.js +0 -644
- package/dist/gates-config.js.map +0 -1
- package/dist/generate-traceability.d.ts +0 -106
- package/dist/generate-traceability.d.ts.map +0 -1
- package/dist/generate-traceability.js +0 -387
- package/dist/generate-traceability.js.map +0 -1
- package/dist/git-adapter.d.ts +0 -406
- package/dist/git-adapter.d.ts.map +0 -1
- package/dist/git-adapter.js +0 -686
- package/dist/git-adapter.js.map +0 -1
- package/dist/git-context-extractor.d.ts +0 -102
- package/dist/git-context-extractor.d.ts.map +0 -1
- package/dist/git-context-extractor.js +0 -571
- package/dist/git-context-extractor.js.map +0 -1
- package/dist/git-staged-validator.d.ts +0 -33
- package/dist/git-staged-validator.d.ts.map +0 -1
- package/dist/git-staged-validator.js +0 -52
- package/dist/git-staged-validator.js.map +0 -1
- package/dist/hardcoded-strings.d.ts +0 -67
- package/dist/hardcoded-strings.d.ts.map +0 -1
- package/dist/hardcoded-strings.js +0 -276
- package/dist/hardcoded-strings.js.map +0 -1
- package/dist/incremental-lint.d.ts +0 -71
- package/dist/incremental-lint.d.ts.map +0 -1
- package/dist/incremental-lint.js +0 -132
- package/dist/incremental-lint.js.map +0 -1
- package/dist/incremental-test.d.ts +0 -33
- package/dist/incremental-test.d.ts.map +0 -1
- package/dist/incremental-test.js +0 -64
- package/dist/incremental-test.js.map +0 -1
- package/dist/index.d.ts +0 -104
- package/dist/index.d.ts.map +0 -1
- package/dist/index.js.map +0 -1
- package/dist/invariants/check-automated-tests.d.ts +0 -42
- package/dist/invariants/check-automated-tests.d.ts.map +0 -1
- package/dist/invariants/check-automated-tests.js +0 -171
- package/dist/invariants/check-automated-tests.js.map +0 -1
- package/dist/invariants-runner.d.ts +0 -108
- package/dist/invariants-runner.d.ts.map +0 -1
- package/dist/invariants-runner.js +0 -547
- package/dist/invariants-runner.js.map +0 -1
- package/dist/lane-checker.d.ts +0 -132
- package/dist/lane-checker.d.ts.map +0 -1
- package/dist/lane-checker.js +0 -743
- package/dist/lane-checker.js.map +0 -1
- package/dist/lane-inference.d.ts +0 -29
- package/dist/lane-inference.d.ts.map +0 -1
- package/dist/lane-inference.js +0 -210
- package/dist/lane-inference.js.map +0 -1
- package/dist/lane-lock.d.ts +0 -220
- package/dist/lane-lock.d.ts.map +0 -1
- package/dist/lane-lock.js +0 -499
- package/dist/lane-lock.js.map +0 -1
- package/dist/lane-suggest-prompt.d.ts +0 -97
- package/dist/lane-suggest-prompt.d.ts.map +0 -1
- package/dist/lane-suggest-prompt.js +0 -362
- package/dist/lane-suggest-prompt.js.map +0 -1
- package/dist/lane-validator.d.ts +0 -49
- package/dist/lane-validator.d.ts.map +0 -1
- package/dist/lane-validator.js +0 -117
- package/dist/lane-validator.js.map +0 -1
- package/dist/logs-lib.d.ts +0 -89
- package/dist/logs-lib.d.ts.map +0 -1
- package/dist/logs-lib.js +0 -214
- package/dist/logs-lib.js.map +0 -1
- package/dist/lumenflow-config-schema.d.ts +0 -1428
- package/dist/lumenflow-config-schema.d.ts.map +0 -1
- package/dist/lumenflow-config-schema.js +0 -1255
- package/dist/lumenflow-config-schema.js.map +0 -1
- package/dist/lumenflow-config.d.ts +0 -94
- package/dist/lumenflow-config.d.ts.map +0 -1
- package/dist/lumenflow-config.js +0 -253
- package/dist/lumenflow-config.js.map +0 -1
- package/dist/lumenflow-home.d.ts +0 -118
- package/dist/lumenflow-home.d.ts.map +0 -1
- package/dist/lumenflow-home.js +0 -214
- package/dist/lumenflow-home.js.map +0 -1
- package/dist/manual-test-validator.d.ts +0 -84
- package/dist/manual-test-validator.d.ts.map +0 -1
- package/dist/manual-test-validator.js +0 -206
- package/dist/manual-test-validator.js.map +0 -1
- package/dist/merge-lock.d.ts +0 -107
- package/dist/merge-lock.d.ts.map +0 -1
- package/dist/merge-lock.js +0 -263
- package/dist/merge-lock.js.map +0 -1
- package/dist/micro-worktree-shared.d.ts +0 -128
- package/dist/micro-worktree-shared.d.ts.map +0 -1
- package/dist/micro-worktree-shared.js +0 -352
- package/dist/micro-worktree-shared.js.map +0 -1
- package/dist/micro-worktree.d.ts +0 -165
- package/dist/micro-worktree.d.ts.map +0 -1
- package/dist/micro-worktree.js +0 -463
- package/dist/micro-worktree.js.map +0 -1
- package/dist/migration-deployer.d.ts +0 -70
- package/dist/migration-deployer.d.ts.map +0 -1
- package/dist/migration-deployer.js +0 -152
- package/dist/migration-deployer.js.map +0 -1
- package/dist/normalize-config-keys.d.ts +0 -10
- package/dist/normalize-config-keys.d.ts.map +0 -1
- package/dist/normalize-config-keys.js +0 -70
- package/dist/normalize-config-keys.js.map +0 -1
- package/dist/orchestration-advisory-loader.d.ts +0 -19
- package/dist/orchestration-advisory-loader.d.ts.map +0 -1
- package/dist/orchestration-advisory-loader.js +0 -94
- package/dist/orchestration-advisory-loader.js.map +0 -1
- package/dist/orchestration-advisory.d.ts +0 -49
- package/dist/orchestration-advisory.d.ts.map +0 -1
- package/dist/orchestration-advisory.js +0 -97
- package/dist/orchestration-advisory.js.map +0 -1
- package/dist/orchestration-di.d.ts +0 -36
- package/dist/orchestration-di.d.ts.map +0 -1
- package/dist/orchestration-di.js +0 -60
- package/dist/orchestration-di.js.map +0 -1
- package/dist/orchestration-rules.d.ts +0 -60
- package/dist/orchestration-rules.d.ts.map +0 -1
- package/dist/orchestration-rules.js +0 -212
- package/dist/orchestration-rules.js.map +0 -1
- package/dist/orphan-detector.d.ts +0 -148
- package/dist/orphan-detector.d.ts.map +0 -1
- package/dist/orphan-detector.js +0 -253
- package/dist/orphan-detector.js.map +0 -1
- package/dist/pack-authoring-template-engine.d.ts +0 -54
- package/dist/pack-authoring-template-engine.d.ts.map +0 -1
- package/dist/pack-authoring-template-engine.js +0 -510
- package/dist/pack-authoring-template-engine.js.map +0 -1
- package/dist/path-classifiers.d.ts +0 -58
- package/dist/path-classifiers.d.ts.map +0 -1
- package/dist/path-classifiers.js +0 -96
- package/dist/path-classifiers.js.map +0 -1
- package/dist/patrol-loop.d.ts +0 -171
- package/dist/patrol-loop.d.ts.map +0 -1
- package/dist/patrol-loop.js +0 -197
- package/dist/patrol-loop.js.map +0 -1
- package/dist/piped-command-detector.d.ts +0 -25
- package/dist/piped-command-detector.d.ts.map +0 -1
- package/dist/piped-command-detector.js +0 -67
- package/dist/piped-command-detector.js.map +0 -1
- package/dist/ports/context.ports.d.ts +0 -136
- package/dist/ports/context.ports.d.ts.map +0 -1
- package/dist/ports/context.ports.js +0 -4
- package/dist/ports/context.ports.js.map +0 -1
- package/dist/ports/core-tools.ports.d.ts +0 -282
- package/dist/ports/core-tools.ports.d.ts.map +0 -1
- package/dist/ports/core-tools.ports.js +0 -4
- package/dist/ports/core-tools.ports.js.map +0 -1
- package/dist/ports/dashboard-renderer.port.d.ts +0 -113
- package/dist/ports/dashboard-renderer.port.d.ts.map +0 -1
- package/dist/ports/dashboard-renderer.port.js +0 -4
- package/dist/ports/dashboard-renderer.port.js.map +0 -1
- package/dist/ports/git-validator.ports.d.ts +0 -114
- package/dist/ports/git-validator.ports.d.ts.map +0 -1
- package/dist/ports/git-validator.ports.js +0 -4
- package/dist/ports/git-validator.ports.js.map +0 -1
- package/dist/ports/index.d.ts +0 -21
- package/dist/ports/index.d.ts.map +0 -1
- package/dist/ports/index.js +0 -23
- package/dist/ports/index.js.map +0 -1
- package/dist/ports/metrics-collector.port.d.ts +0 -133
- package/dist/ports/metrics-collector.port.d.ts.map +0 -1
- package/dist/ports/metrics-collector.port.js +0 -4
- package/dist/ports/metrics-collector.port.js.map +0 -1
- package/dist/ports/recovery.ports.d.ts +0 -59
- package/dist/ports/recovery.ports.d.ts.map +0 -1
- package/dist/ports/recovery.ports.js +0 -4
- package/dist/ports/recovery.ports.js.map +0 -1
- package/dist/ports/validation.ports.d.ts +0 -75
- package/dist/ports/validation.ports.d.ts.map +0 -1
- package/dist/ports/validation.ports.js +0 -4
- package/dist/ports/validation.ports.js.map +0 -1
- package/dist/ports/wu-helpers.ports.d.ts +0 -227
- package/dist/ports/wu-helpers.ports.d.ts.map +0 -1
- package/dist/ports/wu-helpers.ports.js +0 -4
- package/dist/ports/wu-helpers.ports.js.map +0 -1
- package/dist/process-detector.d.ts +0 -69
- package/dist/process-detector.d.ts.map +0 -1
- package/dist/process-detector.js +0 -175
- package/dist/process-detector.js.map +0 -1
- package/dist/prompt-linter.d.ts +0 -66
- package/dist/prompt-linter.d.ts.map +0 -1
- package/dist/prompt-linter.js +0 -323
- package/dist/prompt-linter.js.map +0 -1
- package/dist/prompt-monitor.d.ts +0 -6
- package/dist/prompt-monitor.d.ts.map +0 -1
- package/dist/prompt-monitor.js +0 -218
- package/dist/prompt-monitor.js.map +0 -1
- package/dist/rebase-artifact-cleanup.d.ts +0 -156
- package/dist/rebase-artifact-cleanup.d.ts.map +0 -1
- package/dist/rebase-artifact-cleanup.js +0 -475
- package/dist/rebase-artifact-cleanup.js.map +0 -1
- package/dist/recovery/index.d.ts +0 -12
- package/dist/recovery/index.d.ts.map +0 -1
- package/dist/recovery/index.js +0 -14
- package/dist/recovery/index.js.map +0 -1
- package/dist/recovery/recovery-analyzer.d.ts +0 -49
- package/dist/recovery/recovery-analyzer.d.ts.map +0 -1
- package/dist/recovery/recovery-analyzer.js +0 -149
- package/dist/recovery/recovery-analyzer.js.map +0 -1
- package/dist/resolve-policy.d.ts +0 -257
- package/dist/resolve-policy.d.ts.map +0 -1
- package/dist/resolve-policy.js +0 -269
- package/dist/resolve-policy.js.map +0 -1
- package/dist/retry-strategy.d.ts +0 -191
- package/dist/retry-strategy.d.ts.map +0 -1
- package/dist/retry-strategy.js +0 -286
- package/dist/retry-strategy.js.map +0 -1
- package/dist/risk-detector.d.ts +0 -109
- package/dist/risk-detector.d.ts.map +0 -1
- package/dist/risk-detector.js +0 -253
- package/dist/risk-detector.js.map +0 -1
- package/dist/rollback-utils.d.ts +0 -129
- package/dist/rollback-utils.d.ts.map +0 -1
- package/dist/rollback-utils.js +0 -217
- package/dist/rollback-utils.js.map +0 -1
- package/dist/sandbox-allowlist.d.ts +0 -16
- package/dist/sandbox-allowlist.d.ts.map +0 -1
- package/dist/sandbox-allowlist.js +0 -77
- package/dist/sandbox-allowlist.js.map +0 -1
- package/dist/sandbox-backend-linux.d.ts +0 -6
- package/dist/sandbox-backend-linux.d.ts.map +0 -1
- package/dist/sandbox-backend-linux.js +0 -67
- package/dist/sandbox-backend-linux.js.map +0 -1
- package/dist/sandbox-backend-macos.d.ts +0 -6
- package/dist/sandbox-backend-macos.d.ts.map +0 -1
- package/dist/sandbox-backend-macos.js +0 -66
- package/dist/sandbox-backend-macos.js.map +0 -1
- package/dist/sandbox-backend-windows.d.ts +0 -6
- package/dist/sandbox-backend-windows.d.ts.map +0 -1
- package/dist/sandbox-backend-windows.js +0 -30
- package/dist/sandbox-backend-windows.js.map +0 -1
- package/dist/sandbox-profile.d.ts +0 -53
- package/dist/sandbox-profile.d.ts.map +0 -1
- package/dist/sandbox-profile.js +0 -64
- package/dist/sandbox-profile.js.map +0 -1
- package/dist/schemas/arg-validators.d.ts +0 -58
- package/dist/schemas/arg-validators.d.ts.map +0 -1
- package/dist/schemas/arg-validators.js +0 -193
- package/dist/schemas/arg-validators.js.map +0 -1
- package/dist/schemas/command-schemas.d.ts +0 -171
- package/dist/schemas/command-schemas.d.ts.map +0 -1
- package/dist/schemas/command-schemas.js +0 -145
- package/dist/schemas/command-schemas.js.map +0 -1
- package/dist/schemas/flow-arg-validators.d.ts +0 -32
- package/dist/schemas/flow-arg-validators.d.ts.map +0 -1
- package/dist/schemas/flow-arg-validators.js +0 -57
- package/dist/schemas/flow-arg-validators.js.map +0 -1
- package/dist/schemas/flow-schemas.d.ts +0 -152
- package/dist/schemas/flow-schemas.d.ts.map +0 -1
- package/dist/schemas/flow-schemas.js +0 -105
- package/dist/schemas/flow-schemas.js.map +0 -1
- package/dist/schemas/index.d.ts +0 -33
- package/dist/schemas/index.d.ts.map +0 -1
- package/dist/schemas/index.js +0 -96
- package/dist/schemas/index.js.map +0 -1
- package/dist/schemas/initiative-arg-validators.d.ts +0 -64
- package/dist/schemas/initiative-arg-validators.d.ts.map +0 -1
- package/dist/schemas/initiative-arg-validators.js +0 -65
- package/dist/schemas/initiative-arg-validators.js.map +0 -1
- package/dist/schemas/initiative-schemas.d.ts +0 -256
- package/dist/schemas/initiative-schemas.d.ts.map +0 -1
- package/dist/schemas/initiative-schemas.js +0 -186
- package/dist/schemas/initiative-schemas.js.map +0 -1
- package/dist/schemas/memory-arg-validators.d.ts +0 -91
- package/dist/schemas/memory-arg-validators.d.ts.map +0 -1
- package/dist/schemas/memory-arg-validators.js +0 -75
- package/dist/schemas/memory-arg-validators.js.map +0 -1
- package/dist/schemas/memory-schemas.d.ts +0 -287
- package/dist/schemas/memory-schemas.d.ts.map +0 -1
- package/dist/schemas/memory-schemas.js +0 -242
- package/dist/schemas/memory-schemas.js.map +0 -1
- package/dist/schemas/schema-utils.d.ts +0 -87
- package/dist/schemas/schema-utils.d.ts.map +0 -1
- package/dist/schemas/schema-utils.js +0 -320
- package/dist/schemas/schema-utils.js.map +0 -1
- package/dist/schemas/setup-arg-validators.d.ts +0 -91
- package/dist/schemas/setup-arg-validators.d.ts.map +0 -1
- package/dist/schemas/setup-arg-validators.js +0 -98
- package/dist/schemas/setup-arg-validators.js.map +0 -1
- package/dist/schemas/setup-schemas.d.ts +0 -335
- package/dist/schemas/setup-schemas.d.ts.map +0 -1
- package/dist/schemas/setup-schemas.js +0 -260
- package/dist/schemas/setup-schemas.js.map +0 -1
- package/dist/schemas/validation-arg-validators.d.ts +0 -18
- package/dist/schemas/validation-arg-validators.d.ts.map +0 -1
- package/dist/schemas/validation-arg-validators.js +0 -59
- package/dist/schemas/validation-arg-validators.js.map +0 -1
- package/dist/schemas/validation-schemas.d.ts +0 -80
- package/dist/schemas/validation-schemas.d.ts.map +0 -1
- package/dist/schemas/validation-schemas.js +0 -88
- package/dist/schemas/validation-schemas.js.map +0 -1
- package/dist/schemas/wu-lifecycle-arg-validators.d.ts +0 -118
- package/dist/schemas/wu-lifecycle-arg-validators.d.ts.map +0 -1
- package/dist/schemas/wu-lifecycle-arg-validators.js +0 -82
- package/dist/schemas/wu-lifecycle-arg-validators.js.map +0 -1
- package/dist/schemas/wu-lifecycle-schemas.d.ts +0 -362
- package/dist/schemas/wu-lifecycle-schemas.d.ts.map +0 -1
- package/dist/schemas/wu-lifecycle-schemas.js +0 -284
- package/dist/schemas/wu-lifecycle-schemas.js.map +0 -1
- package/dist/section-headings.d.ts +0 -35
- package/dist/section-headings.d.ts.map +0 -1
- package/dist/section-headings.js +0 -54
- package/dist/section-headings.js.map +0 -1
- package/dist/spawn-escalation.d.ts +0 -91
- package/dist/spawn-escalation.d.ts.map +0 -1
- package/dist/spawn-escalation.js +0 -258
- package/dist/spawn-escalation.js.map +0 -1
- package/dist/spawn-monitor.d.ts +0 -230
- package/dist/spawn-monitor.d.ts.map +0 -1
- package/dist/spawn-monitor.js +0 -675
- package/dist/spawn-monitor.js.map +0 -1
- package/dist/spawn-prompt-schema.d.ts +0 -107
- package/dist/spawn-prompt-schema.d.ts.map +0 -1
- package/dist/spawn-prompt-schema.js +0 -163
- package/dist/spawn-prompt-schema.js.map +0 -1
- package/dist/spawn-recovery.d.ts +0 -83
- package/dist/spawn-recovery.d.ts.map +0 -1
- package/dist/spawn-recovery.js +0 -299
- package/dist/spawn-recovery.js.map +0 -1
- package/dist/spawn-registry-schema.d.ts +0 -122
- package/dist/spawn-registry-schema.d.ts.map +0 -1
- package/dist/spawn-registry-schema.js +0 -129
- package/dist/spawn-registry-schema.js.map +0 -1
- package/dist/spawn-registry-store.d.ts +0 -161
- package/dist/spawn-registry-store.d.ts.map +0 -1
- package/dist/spawn-registry-store.js +0 -301
- package/dist/spawn-registry-store.js.map +0 -1
- package/dist/spawn-strategy.d.ts +0 -60
- package/dist/spawn-strategy.d.ts.map +0 -1
- package/dist/spawn-strategy.js +0 -112
- package/dist/spawn-strategy.js.map +0 -1
- package/dist/spawn-tree.d.ts +0 -125
- package/dist/spawn-tree.d.ts.map +0 -1
- package/dist/spawn-tree.js +0 -286
- package/dist/spawn-tree.js.map +0 -1
- package/dist/stamp-status-validator.d.ts +0 -77
- package/dist/stamp-status-validator.d.ts.map +0 -1
- package/dist/stamp-status-validator.js +0 -138
- package/dist/stamp-status-validator.js.map +0 -1
- package/dist/stamp-tracking.d.ts +0 -12
- package/dist/stamp-tracking.d.ts.map +0 -1
- package/dist/stamp-tracking.js +0 -43
- package/dist/stamp-tracking.js.map +0 -1
- package/dist/stamp-utils.d.ts +0 -94
- package/dist/stamp-utils.d.ts.map +0 -1
- package/dist/stamp-utils.js +0 -245
- package/dist/stamp-utils.js.map +0 -1
- package/dist/state-cleanup-core.d.ts +0 -206
- package/dist/state-cleanup-core.d.ts.map +0 -1
- package/dist/state-cleanup-core.js +0 -225
- package/dist/state-cleanup-core.js.map +0 -1
- package/dist/state-doctor-core.d.ts +0 -177
- package/dist/state-doctor-core.d.ts.map +0 -1
- package/dist/state-doctor-core.js +0 -395
- package/dist/state-doctor-core.js.map +0 -1
- package/dist/state-machine.d.ts +0 -10
- package/dist/state-machine.d.ts.map +0 -1
- package/dist/state-machine.js +0 -89
- package/dist/state-machine.js.map +0 -1
- package/dist/stream-error-handler.d.ts +0 -68
- package/dist/stream-error-handler.d.ts.map +0 -1
- package/dist/stream-error-handler.js +0 -77
- package/dist/stream-error-handler.js.map +0 -1
- package/dist/system-map-validator.d.ts +0 -111
- package/dist/system-map-validator.d.ts.map +0 -1
- package/dist/system-map-validator.js +0 -383
- package/dist/system-map-validator.js.map +0 -1
- package/dist/telemetry.d.ts +0 -81
- package/dist/telemetry.d.ts.map +0 -1
- package/dist/telemetry.js +0 -219
- package/dist/telemetry.js.map +0 -1
- package/dist/template-loader.d.ts +0 -151
- package/dist/template-loader.d.ts.map +0 -1
- package/dist/template-loader.js +0 -400
- package/dist/template-loader.js.map +0 -1
- package/dist/test-baseline.d.ts +0 -177
- package/dist/test-baseline.d.ts.map +0 -1
- package/dist/test-baseline.js +0 -286
- package/dist/test-baseline.js.map +0 -1
- package/dist/token-counter.d.ts +0 -50
- package/dist/token-counter.d.ts.map +0 -1
- package/dist/token-counter.js +0 -144
- package/dist/token-counter.js.map +0 -1
- package/dist/usecases/analyze-recovery.usecase.d.ts +0 -43
- package/dist/usecases/analyze-recovery.usecase.d.ts.map +0 -1
- package/dist/usecases/analyze-recovery.usecase.js +0 -34
- package/dist/usecases/analyze-recovery.usecase.js.map +0 -1
- package/dist/usecases/compute-context.usecase.d.ts +0 -63
- package/dist/usecases/compute-context.usecase.d.ts.map +0 -1
- package/dist/usecases/compute-context.usecase.js +0 -91
- package/dist/usecases/compute-context.usecase.js.map +0 -1
- package/dist/usecases/get-dashboard-data.usecase.d.ts +0 -53
- package/dist/usecases/get-dashboard-data.usecase.d.ts.map +0 -1
- package/dist/usecases/get-dashboard-data.usecase.js +0 -54
- package/dist/usecases/get-dashboard-data.usecase.js.map +0 -1
- package/dist/usecases/get-suggestions.usecase.d.ts +0 -101
- package/dist/usecases/get-suggestions.usecase.d.ts.map +0 -1
- package/dist/usecases/get-suggestions.usecase.js +0 -148
- package/dist/usecases/get-suggestions.usecase.js.map +0 -1
- package/dist/usecases/index.d.ts +0 -15
- package/dist/usecases/index.d.ts.map +0 -1
- package/dist/usecases/index.js +0 -21
- package/dist/usecases/index.js.map +0 -1
- package/dist/usecases/validate-command.usecase.d.ts +0 -56
- package/dist/usecases/validate-command.usecase.d.ts.map +0 -1
- package/dist/usecases/validate-command.usecase.js +0 -143
- package/dist/usecases/validate-command.usecase.js.map +0 -1
- package/dist/user-normalizer.d.ts +0 -36
- package/dist/user-normalizer.d.ts.map +0 -1
- package/dist/user-normalizer.js +0 -149
- package/dist/user-normalizer.js.map +0 -1
- package/dist/validation/command-registry.d.ts +0 -26
- package/dist/validation/command-registry.d.ts.map +0 -1
- package/dist/validation/command-registry.js +0 -269
- package/dist/validation/command-registry.js.map +0 -1
- package/dist/validation/index.d.ts +0 -16
- package/dist/validation/index.d.ts.map +0 -1
- package/dist/validation/index.js +0 -18
- package/dist/validation/index.js.map +0 -1
- package/dist/validation/types.d.ts +0 -140
- package/dist/validation/types.d.ts.map +0 -1
- package/dist/validation/types.js +0 -4
- package/dist/validation/types.js.map +0 -1
- package/dist/validation/validate-command.d.ts +0 -16
- package/dist/validation/validate-command.d.ts.map +0 -1
- package/dist/validation/validate-command.js +0 -163
- package/dist/validation/validate-command.js.map +0 -1
- package/dist/validators/backlog-sync.d.ts +0 -11
- package/dist/validators/backlog-sync.d.ts.map +0 -1
- package/dist/validators/backlog-sync.js +0 -65
- package/dist/validators/backlog-sync.js.map +0 -1
- package/dist/validators/phi-constants.d.ts +0 -98
- package/dist/validators/phi-constants.d.ts.map +0 -1
- package/dist/validators/phi-constants.js +0 -153
- package/dist/validators/phi-constants.js.map +0 -1
- package/dist/validators/phi-scanner.d.ts +0 -59
- package/dist/validators/phi-scanner.d.ts.map +0 -1
- package/dist/validators/phi-scanner.js +0 -222
- package/dist/validators/phi-scanner.js.map +0 -1
- package/dist/validators/supabase-docs-linter.d.ts +0 -15
- package/dist/validators/supabase-docs-linter.d.ts.map +0 -1
- package/dist/validators/supabase-docs-linter.js +0 -45
- package/dist/validators/supabase-docs-linter.js.map +0 -1
- package/dist/validators/wu-tasks.d.ts +0 -21
- package/dist/validators/wu-tasks.d.ts.map +0 -1
- package/dist/validators/wu-tasks.js +0 -93
- package/dist/validators/wu-tasks.js.map +0 -1
- package/dist/work-classifier.d.ts +0 -95
- package/dist/work-classifier.d.ts.map +0 -1
- package/dist/work-classifier.js +0 -408
- package/dist/work-classifier.js.map +0 -1
- package/dist/worktree-ownership.d.ts +0 -51
- package/dist/worktree-ownership.d.ts.map +0 -1
- package/dist/worktree-ownership.js +0 -77
- package/dist/worktree-ownership.js.map +0 -1
- package/dist/worktree-scanner.d.ts +0 -118
- package/dist/worktree-scanner.d.ts.map +0 -1
- package/dist/worktree-scanner.js +0 -171
- package/dist/worktree-scanner.js.map +0 -1
- package/dist/worktree-symlink.d.ts +0 -86
- package/dist/worktree-symlink.d.ts.map +0 -1
- package/dist/worktree-symlink.js +0 -349
- package/dist/worktree-symlink.js.map +0 -1
- package/dist/wu-backlog-updater.d.ts +0 -10
- package/dist/wu-backlog-updater.d.ts.map +0 -1
- package/dist/wu-backlog-updater.js +0 -40
- package/dist/wu-backlog-updater.js.map +0 -1
- package/dist/wu-checkpoint.d.ts +0 -110
- package/dist/wu-checkpoint.d.ts.map +0 -1
- package/dist/wu-checkpoint.js +0 -236
- package/dist/wu-checkpoint.js.map +0 -1
- package/dist/wu-claim-helpers.d.ts +0 -21
- package/dist/wu-claim-helpers.d.ts.map +0 -1
- package/dist/wu-claim-helpers.js +0 -66
- package/dist/wu-claim-helpers.js.map +0 -1
- package/dist/wu-claim-resume.d.ts +0 -106
- package/dist/wu-claim-resume.d.ts.map +0 -1
- package/dist/wu-claim-resume.js +0 -279
- package/dist/wu-claim-resume.js.map +0 -1
- package/dist/wu-cli-constants.d.ts +0 -425
- package/dist/wu-cli-constants.d.ts.map +0 -1
- package/dist/wu-cli-constants.js +0 -430
- package/dist/wu-cli-constants.js.map +0 -1
- package/dist/wu-consistency-checker.d.ts +0 -189
- package/dist/wu-consistency-checker.d.ts.map +0 -1
- package/dist/wu-consistency-checker.js +0 -1026
- package/dist/wu-consistency-checker.js.map +0 -1
- package/dist/wu-constants.d.ts +0 -29
- package/dist/wu-constants.d.ts.map +0 -1
- package/dist/wu-constants.js +0 -37
- package/dist/wu-constants.js.map +0 -1
- package/dist/wu-context-constants.d.ts +0 -270
- package/dist/wu-context-constants.d.ts.map +0 -1
- package/dist/wu-context-constants.js +0 -267
- package/dist/wu-context-constants.js.map +0 -1
- package/dist/wu-create-defaults.d.ts +0 -11
- package/dist/wu-create-defaults.d.ts.map +0 -1
- package/dist/wu-create-defaults.js +0 -13
- package/dist/wu-create-defaults.js.map +0 -1
- package/dist/wu-create-validators.d.ts +0 -89
- package/dist/wu-create-validators.d.ts.map +0 -1
- package/dist/wu-create-validators.js +0 -215
- package/dist/wu-create-validators.js.map +0 -1
- package/dist/wu-domain-constants.d.ts +0 -295
- package/dist/wu-domain-constants.d.ts.map +0 -1
- package/dist/wu-domain-constants.js +0 -399
- package/dist/wu-domain-constants.js.map +0 -1
- package/dist/wu-done-branch-only.d.ts +0 -120
- package/dist/wu-done-branch-only.d.ts.map +0 -1
- package/dist/wu-done-branch-only.js +0 -412
- package/dist/wu-done-branch-only.js.map +0 -1
- package/dist/wu-done-branch-utils.d.ts +0 -8
- package/dist/wu-done-branch-utils.d.ts.map +0 -1
- package/dist/wu-done-branch-utils.js +0 -34
- package/dist/wu-done-branch-utils.js.map +0 -1
- package/dist/wu-done-cleanup.d.ts +0 -6
- package/dist/wu-done-cleanup.d.ts.map +0 -1
- package/dist/wu-done-cleanup.js +0 -161
- package/dist/wu-done-cleanup.js.map +0 -1
- package/dist/wu-done-concurrent-merge.d.ts +0 -103
- package/dist/wu-done-concurrent-merge.d.ts.map +0 -1
- package/dist/wu-done-concurrent-merge.js +0 -375
- package/dist/wu-done-concurrent-merge.js.map +0 -1
- package/dist/wu-done-docs-generate.d.ts +0 -72
- package/dist/wu-done-docs-generate.d.ts.map +0 -1
- package/dist/wu-done-docs-generate.js +0 -129
- package/dist/wu-done-docs-generate.js.map +0 -1
- package/dist/wu-done-docs-only.d.ts +0 -16
- package/dist/wu-done-docs-only.d.ts.map +0 -1
- package/dist/wu-done-docs-only.js +0 -68
- package/dist/wu-done-docs-only.js.map +0 -1
- package/dist/wu-done-errors.d.ts +0 -13
- package/dist/wu-done-errors.d.ts.map +0 -1
- package/dist/wu-done-errors.js +0 -27
- package/dist/wu-done-errors.js.map +0 -1
- package/dist/wu-done-initiative-sync.d.ts +0 -13
- package/dist/wu-done-initiative-sync.d.ts.map +0 -1
- package/dist/wu-done-initiative-sync.js +0 -235
- package/dist/wu-done-initiative-sync.js.map +0 -1
- package/dist/wu-done-inputs.d.ts +0 -10
- package/dist/wu-done-inputs.d.ts.map +0 -1
- package/dist/wu-done-inputs.js +0 -55
- package/dist/wu-done-inputs.js.map +0 -1
- package/dist/wu-done-machine.d.ts +0 -175
- package/dist/wu-done-machine.d.ts.map +0 -1
- package/dist/wu-done-machine.js +0 -227
- package/dist/wu-done-machine.js.map +0 -1
- package/dist/wu-done-merged-worktree.d.ts +0 -65
- package/dist/wu-done-merged-worktree.d.ts.map +0 -1
- package/dist/wu-done-merged-worktree.js +0 -197
- package/dist/wu-done-merged-worktree.js.map +0 -1
- package/dist/wu-done-messages.d.ts +0 -120
- package/dist/wu-done-messages.d.ts.map +0 -1
- package/dist/wu-done-messages.js +0 -191
- package/dist/wu-done-messages.js.map +0 -1
- package/dist/wu-done-metadata.d.ts +0 -123
- package/dist/wu-done-metadata.d.ts.map +0 -1
- package/dist/wu-done-metadata.js +0 -240
- package/dist/wu-done-metadata.js.map +0 -1
- package/dist/wu-done-paths.d.ts +0 -87
- package/dist/wu-done-paths.d.ts.map +0 -1
- package/dist/wu-done-paths.js +0 -263
- package/dist/wu-done-paths.js.map +0 -1
- package/dist/wu-done-pr.d.ts +0 -76
- package/dist/wu-done-pr.d.ts.map +0 -1
- package/dist/wu-done-pr.js +0 -189
- package/dist/wu-done-pr.js.map +0 -1
- package/dist/wu-done-preflight.d.ts +0 -65
- package/dist/wu-done-preflight.d.ts.map +0 -1
- package/dist/wu-done-preflight.js +0 -205
- package/dist/wu-done-preflight.js.map +0 -1
- package/dist/wu-done-retry-helpers.d.ts +0 -75
- package/dist/wu-done-retry-helpers.d.ts.map +0 -1
- package/dist/wu-done-retry-helpers.js +0 -175
- package/dist/wu-done-retry-helpers.js.map +0 -1
- package/dist/wu-done-ui.d.ts +0 -29
- package/dist/wu-done-ui.d.ts.map +0 -1
- package/dist/wu-done-ui.js +0 -74
- package/dist/wu-done-ui.js.map +0 -1
- package/dist/wu-done-validation.d.ts +0 -128
- package/dist/wu-done-validation.d.ts.map +0 -1
- package/dist/wu-done-validation.js +0 -530
- package/dist/wu-done-validation.js.map +0 -1
- package/dist/wu-done-validators.d.ts +0 -16
- package/dist/wu-done-validators.d.ts.map +0 -1
- package/dist/wu-done-validators.js +0 -16
- package/dist/wu-done-validators.js.map +0 -1
- package/dist/wu-done-worktree-services.d.ts +0 -174
- package/dist/wu-done-worktree-services.d.ts.map +0 -1
- package/dist/wu-done-worktree-services.js +0 -274
- package/dist/wu-done-worktree-services.js.map +0 -1
- package/dist/wu-done-worktree.d.ts +0 -229
- package/dist/wu-done-worktree.d.ts.map +0 -1
- package/dist/wu-done-worktree.js +0 -1290
- package/dist/wu-done-worktree.js.map +0 -1
- package/dist/wu-events-cleanup.d.ts +0 -131
- package/dist/wu-events-cleanup.d.ts.map +0 -1
- package/dist/wu-events-cleanup.js +0 -404
- package/dist/wu-events-cleanup.js.map +0 -1
- package/dist/wu-git-constants.d.ts +0 -176
- package/dist/wu-git-constants.d.ts.map +0 -1
- package/dist/wu-git-constants.js +0 -178
- package/dist/wu-git-constants.js.map +0 -1
- package/dist/wu-helpers.d.ts +0 -133
- package/dist/wu-helpers.d.ts.map +0 -1
- package/dist/wu-helpers.js +0 -268
- package/dist/wu-helpers.js.map +0 -1
- package/dist/wu-id-generator.d.ts +0 -51
- package/dist/wu-id-generator.d.ts.map +0 -1
- package/dist/wu-id-generator.js +0 -110
- package/dist/wu-id-generator.js.map +0 -1
- package/dist/wu-lint.d.ts +0 -191
- package/dist/wu-lint.d.ts.map +0 -1
- package/dist/wu-lint.js +0 -338
- package/dist/wu-lint.js.map +0 -1
- package/dist/wu-list.d.ts +0 -76
- package/dist/wu-list.d.ts.map +0 -1
- package/dist/wu-list.js +0 -181
- package/dist/wu-list.js.map +0 -1
- package/dist/wu-paths-constants.d.ts +0 -264
- package/dist/wu-paths-constants.d.ts.map +0 -1
- package/dist/wu-paths-constants.js +0 -272
- package/dist/wu-paths-constants.js.map +0 -1
- package/dist/wu-paths.d.ts +0 -211
- package/dist/wu-paths.d.ts.map +0 -1
- package/dist/wu-paths.js +0 -223
- package/dist/wu-paths.js.map +0 -1
- package/dist/wu-preflight-validators.d.ts +0 -64
- package/dist/wu-preflight-validators.d.ts.map +0 -1
- package/dist/wu-preflight-validators.js +0 -277
- package/dist/wu-preflight-validators.js.map +0 -1
- package/dist/wu-recovery.d.ts +0 -220
- package/dist/wu-recovery.d.ts.map +0 -1
- package/dist/wu-recovery.js +0 -470
- package/dist/wu-recovery.js.map +0 -1
- package/dist/wu-repair-core.d.ts +0 -150
- package/dist/wu-repair-core.d.ts.map +0 -1
- package/dist/wu-repair-core.js +0 -718
- package/dist/wu-repair-core.js.map +0 -1
- package/dist/wu-rules-core.d.ts +0 -95
- package/dist/wu-rules-core.d.ts.map +0 -1
- package/dist/wu-rules-core.js +0 -401
- package/dist/wu-rules-core.js.map +0 -1
- package/dist/wu-rules-engine.d.ts +0 -29
- package/dist/wu-rules-engine.d.ts.map +0 -1
- package/dist/wu-rules-engine.js +0 -61
- package/dist/wu-rules-engine.js.map +0 -1
- package/dist/wu-rules-resolvers.d.ts +0 -19
- package/dist/wu-rules-resolvers.d.ts.map +0 -1
- package/dist/wu-rules-resolvers.js +0 -210
- package/dist/wu-rules-resolvers.js.map +0 -1
- package/dist/wu-schema-normalization.d.ts +0 -18
- package/dist/wu-schema-normalization.d.ts.map +0 -1
- package/dist/wu-schema-normalization.js +0 -87
- package/dist/wu-schema-normalization.js.map +0 -1
- package/dist/wu-schema.d.ts +0 -772
- package/dist/wu-schema.d.ts.map +0 -1
- package/dist/wu-schema.js +0 -897
- package/dist/wu-schema.js.map +0 -1
- package/dist/wu-spawn-context.d.ts +0 -66
- package/dist/wu-spawn-context.d.ts.map +0 -1
- package/dist/wu-spawn-context.js +0 -185
- package/dist/wu-spawn-context.js.map +0 -1
- package/dist/wu-spawn-helpers.d.ts +0 -110
- package/dist/wu-spawn-helpers.d.ts.map +0 -1
- package/dist/wu-spawn-helpers.js +0 -276
- package/dist/wu-spawn-helpers.js.map +0 -1
- package/dist/wu-spawn-skills.d.ts +0 -39
- package/dist/wu-spawn-skills.d.ts.map +0 -1
- package/dist/wu-spawn-skills.js +0 -214
- package/dist/wu-spawn-skills.js.map +0 -1
- package/dist/wu-spawn.d.ts +0 -394
- package/dist/wu-spawn.d.ts.map +0 -1
- package/dist/wu-spawn.js +0 -1977
- package/dist/wu-spawn.js.map +0 -1
- package/dist/wu-state-schema.d.ts +0 -237
- package/dist/wu-state-schema.d.ts.map +0 -1
- package/dist/wu-state-schema.js +0 -172
- package/dist/wu-state-schema.js.map +0 -1
- package/dist/wu-state-store.d.ts +0 -275
- package/dist/wu-state-store.d.ts.map +0 -1
- package/dist/wu-state-store.js +0 -1057
- package/dist/wu-state-store.js.map +0 -1
- package/dist/wu-status-transition.d.ts +0 -58
- package/dist/wu-status-transition.d.ts.map +0 -1
- package/dist/wu-status-transition.js +0 -370
- package/dist/wu-status-transition.js.map +0 -1
- package/dist/wu-status-updater.d.ts +0 -18
- package/dist/wu-status-updater.d.ts.map +0 -1
- package/dist/wu-status-updater.js +0 -123
- package/dist/wu-status-updater.js.map +0 -1
- package/dist/wu-statuses.d.ts +0 -154
- package/dist/wu-statuses.d.ts.map +0 -1
- package/dist/wu-statuses.js +0 -176
- package/dist/wu-statuses.js.map +0 -1
- package/dist/wu-transaction-collectors.d.ts +0 -116
- package/dist/wu-transaction-collectors.d.ts.map +0 -1
- package/dist/wu-transaction-collectors.js +0 -273
- package/dist/wu-transaction-collectors.js.map +0 -1
- package/dist/wu-transaction.d.ts +0 -172
- package/dist/wu-transaction.d.ts.map +0 -1
- package/dist/wu-transaction.js +0 -288
- package/dist/wu-transaction.js.map +0 -1
- package/dist/wu-type-helpers.d.ts +0 -26
- package/dist/wu-type-helpers.d.ts.map +0 -1
- package/dist/wu-type-helpers.js +0 -45
- package/dist/wu-type-helpers.js.map +0 -1
- package/dist/wu-ui-constants.d.ts +0 -235
- package/dist/wu-ui-constants.d.ts.map +0 -1
- package/dist/wu-ui-constants.js +0 -237
- package/dist/wu-ui-constants.js.map +0 -1
- package/dist/wu-validation-constants.d.ts +0 -61
- package/dist/wu-validation-constants.d.ts.map +0 -1
- package/dist/wu-validation-constants.js +0 -69
- package/dist/wu-validation-constants.js.map +0 -1
- package/dist/wu-validation.d.ts +0 -121
- package/dist/wu-validation.d.ts.map +0 -1
- package/dist/wu-validation.js +0 -266
- package/dist/wu-validation.js.map +0 -1
- package/dist/wu-validator.d.ts +0 -128
- package/dist/wu-validator.d.ts.map +0 -1
- package/dist/wu-validator.js +0 -445
- package/dist/wu-validator.js.map +0 -1
- package/dist/wu-yaml-fixer.d.ts +0 -74
- package/dist/wu-yaml-fixer.d.ts.map +0 -1
- package/dist/wu-yaml-fixer.js +0 -273
- package/dist/wu-yaml-fixer.js.map +0 -1
- package/dist/wu-yaml.d.ts +0 -110
- package/dist/wu-yaml.d.ts.map +0 -1
- package/dist/wu-yaml.js +0 -300
- package/dist/wu-yaml.js.map +0 -1
package/dist/risk-detector.js
DELETED
|
@@ -1,253 +0,0 @@
|
|
|
1
|
-
#!/usr/bin/env node
|
|
2
|
-
/**
|
|
3
|
-
* Risk Detector
|
|
4
|
-
*
|
|
5
|
-
* WU-2062: Implement tiered test execution for faster wu:done
|
|
6
|
-
*
|
|
7
|
-
* Detects risk tier based on changed files to enable tiered test execution:
|
|
8
|
-
* - docs-only: Skip tests, run lint/typecheck only
|
|
9
|
-
* - standard: Run changed tests
|
|
10
|
-
* - high-risk: Run integration tests in addition to unit tests
|
|
11
|
-
*
|
|
12
|
-
* Safety-critical tests (red-flag, PHI, escalation) always run regardless of tier.
|
|
13
|
-
*
|
|
14
|
-
* Note: This is project-specific risk detection logic for ExampleApp's
|
|
15
|
-
* healthcare domain (PHI, RLS, auth). No standard library exists for this
|
|
16
|
-
* domain-specific classification.
|
|
17
|
-
*
|
|
18
|
-
* @see {@link packages/@lumenflow/cli/src/gates.ts} - Consumer of risk detection
|
|
19
|
-
* @see {@link packages/@lumenflow/cli/src/lib/file-classifiers.ts} - File classification utilities
|
|
20
|
-
*/
|
|
21
|
-
import path from 'node:path';
|
|
22
|
-
import { isDocumentationPath } from './file-classifiers.js';
|
|
23
|
-
/**
|
|
24
|
-
* Risk tier constants
|
|
25
|
-
* @readonly
|
|
26
|
-
* @enum {string}
|
|
27
|
-
*/
|
|
28
|
-
export const RISK_TIERS = Object.freeze({
|
|
29
|
-
/** Documentation-only changes - skip tests, run lint/typecheck only */
|
|
30
|
-
DOCS_ONLY: 'docs-only',
|
|
31
|
-
/** Standard code changes - run incremental tests */
|
|
32
|
-
STANDARD: 'standard',
|
|
33
|
-
/** Safety-critical tests need to run - always include safety test patterns */
|
|
34
|
-
SAFETY_CRITICAL: 'safety-critical',
|
|
35
|
-
/** High-risk changes (auth, PHI, RLS, migrations) - run integration tests */
|
|
36
|
-
HIGH_RISK: 'high-risk',
|
|
37
|
-
});
|
|
38
|
-
/**
|
|
39
|
-
* Test patterns that should ALWAYS run regardless of which files changed.
|
|
40
|
-
* These are safety-critical tests that verify red-flag detection, PHI protection,
|
|
41
|
-
* escalation triggers, and constitutional enforcement.
|
|
42
|
-
*
|
|
43
|
-
* @type {string[]}
|
|
44
|
-
*/
|
|
45
|
-
export const SAFETY_CRITICAL_TEST_PATTERNS = Object.freeze([
|
|
46
|
-
// Red-flag detection tests
|
|
47
|
-
'red-flag',
|
|
48
|
-
'redflag',
|
|
49
|
-
'RedFlag',
|
|
50
|
-
// PHI protection tests
|
|
51
|
-
'phi',
|
|
52
|
-
'PHI',
|
|
53
|
-
'PHIGuard',
|
|
54
|
-
// Escalation trigger tests
|
|
55
|
-
'escalation',
|
|
56
|
-
'Escalation',
|
|
57
|
-
// Privacy detection tests
|
|
58
|
-
'privacy',
|
|
59
|
-
'Privacy',
|
|
60
|
-
'privacyDetector',
|
|
61
|
-
// Constitutional enforcement tests
|
|
62
|
-
'constitutional',
|
|
63
|
-
'Constitutional',
|
|
64
|
-
// Safe prompt wrapper tests
|
|
65
|
-
'safePrompt',
|
|
66
|
-
'SafePrompt',
|
|
67
|
-
// Crisis/emergency handling tests
|
|
68
|
-
'crisis',
|
|
69
|
-
'Crisis',
|
|
70
|
-
// Policy enforcement tests
|
|
71
|
-
'policyReferee',
|
|
72
|
-
'PolicyReferee',
|
|
73
|
-
]);
|
|
74
|
-
/**
|
|
75
|
-
* Path patterns that indicate high-risk code changes.
|
|
76
|
-
* Changes to these paths should trigger integration tests.
|
|
77
|
-
*
|
|
78
|
-
* WU-2242: Added authentication/ pattern
|
|
79
|
-
*
|
|
80
|
-
* @type {string[]}
|
|
81
|
-
*/
|
|
82
|
-
// constants: HIGH_RISK_PATH_PATTERNS (skip hardcoded string detection)
|
|
83
|
-
export const HIGH_RISK_PATH_PATTERNS = Object.freeze([
|
|
84
|
-
// Authentication (WU-2242: include both auth/ and authentication/)
|
|
85
|
-
'/auth/', // constants
|
|
86
|
-
'/auth.', // constants
|
|
87
|
-
'/authentication/', // constants
|
|
88
|
-
'/authentication.', // constants
|
|
89
|
-
// PHI (Protected Health Information)
|
|
90
|
-
'/phi/',
|
|
91
|
-
'/phi.',
|
|
92
|
-
// Row Level Security
|
|
93
|
-
'/rls/',
|
|
94
|
-
'/rls.',
|
|
95
|
-
'rls.sql',
|
|
96
|
-
// Security policies
|
|
97
|
-
'/policy/',
|
|
98
|
-
'/policy.',
|
|
99
|
-
// Supabase configuration
|
|
100
|
-
'supabase/config',
|
|
101
|
-
// API routes (potential attack surface)
|
|
102
|
-
'/api/',
|
|
103
|
-
]);
|
|
104
|
-
/**
|
|
105
|
-
* Supabase migrations directory (relative to repo root).
|
|
106
|
-
* @type {string}
|
|
107
|
-
*/
|
|
108
|
-
const SUPABASE_MIGRATIONS_DIR = 'supabase/supabase/migrations/';
|
|
109
|
-
/**
|
|
110
|
-
* Filename patterns that indicate RLS or policy changes in migrations.
|
|
111
|
-
* @type {RegExp[]}
|
|
112
|
-
*/
|
|
113
|
-
const RLS_MIGRATION_PATTERNS = Object.freeze([
|
|
114
|
-
/policy/i,
|
|
115
|
-
/rls/i,
|
|
116
|
-
/row[_-]?level[_-]?security/i,
|
|
117
|
-
/enable[_-]?rls/i,
|
|
118
|
-
]);
|
|
119
|
-
/**
|
|
120
|
-
* Check if a test file path matches safety-critical patterns.
|
|
121
|
-
*
|
|
122
|
-
* @param {string} testPath - Path to test file
|
|
123
|
-
* @returns {boolean} True if test is safety-critical
|
|
124
|
-
*/
|
|
125
|
-
export function isSafetyCriticalTest(testPath) {
|
|
126
|
-
if (!testPath || typeof testPath !== 'string') {
|
|
127
|
-
return false;
|
|
128
|
-
}
|
|
129
|
-
// Normalise Windows paths
|
|
130
|
-
const normalized = testPath.replace(/\\/g, '/');
|
|
131
|
-
// Check if any safety-critical pattern matches
|
|
132
|
-
for (const pattern of SAFETY_CRITICAL_TEST_PATTERNS) {
|
|
133
|
-
if (normalized.includes(pattern)) {
|
|
134
|
-
return true;
|
|
135
|
-
}
|
|
136
|
-
}
|
|
137
|
-
return false;
|
|
138
|
-
}
|
|
139
|
-
/**
|
|
140
|
-
* Check whether a path refers to a Supabase migration file.
|
|
141
|
-
*
|
|
142
|
-
* @param {string} filePath - Path to check
|
|
143
|
-
* @returns {boolean} True if file is a migration SQL
|
|
144
|
-
*/
|
|
145
|
-
function isMigrationPath(filePath) {
|
|
146
|
-
if (!filePath || typeof filePath !== 'string') {
|
|
147
|
-
return false;
|
|
148
|
-
}
|
|
149
|
-
const normalized = filePath.replace(/\\/g, '/');
|
|
150
|
-
return normalized.includes(SUPABASE_MIGRATIONS_DIR) && normalized.endsWith('.sql');
|
|
151
|
-
}
|
|
152
|
-
/**
|
|
153
|
-
* Check if a migration file contains RLS or policy changes.
|
|
154
|
-
*
|
|
155
|
-
* @param {string} filePath - Migration file path
|
|
156
|
-
* @returns {boolean} True if migration is high-risk
|
|
157
|
-
*/
|
|
158
|
-
export function isHighRiskMigration(filePath) {
|
|
159
|
-
if (!isMigrationPath(filePath)) {
|
|
160
|
-
return false;
|
|
161
|
-
}
|
|
162
|
-
const normalized = filePath.replace(/\\/g, '/');
|
|
163
|
-
const filename = path.basename(normalized);
|
|
164
|
-
return RLS_MIGRATION_PATTERNS.some((pattern) => pattern.test(filename));
|
|
165
|
-
}
|
|
166
|
-
/**
|
|
167
|
-
* Check if a file path represents a high-risk code change.
|
|
168
|
-
*
|
|
169
|
-
* @param {string} filePath - Path to check
|
|
170
|
-
* @returns {boolean} True if path is high-risk
|
|
171
|
-
*/
|
|
172
|
-
export function isHighRiskPath(filePath) {
|
|
173
|
-
if (!filePath || typeof filePath !== 'string') {
|
|
174
|
-
return false;
|
|
175
|
-
}
|
|
176
|
-
if (isMigrationPath(filePath)) {
|
|
177
|
-
return false;
|
|
178
|
-
}
|
|
179
|
-
// Normalise Windows paths
|
|
180
|
-
const normalized = filePath.replace(/\\/g, '/');
|
|
181
|
-
// Check if any high-risk pattern matches
|
|
182
|
-
for (const pattern of HIGH_RISK_PATH_PATTERNS) {
|
|
183
|
-
if (normalized.includes(pattern)) {
|
|
184
|
-
return true;
|
|
185
|
-
}
|
|
186
|
-
}
|
|
187
|
-
return false;
|
|
188
|
-
}
|
|
189
|
-
/**
|
|
190
|
-
* Check if all changed files are documentation-only.
|
|
191
|
-
*
|
|
192
|
-
* @param {string[]} changedFiles - List of changed file paths
|
|
193
|
-
* @returns {boolean} True if all files are documentation
|
|
194
|
-
*/
|
|
195
|
-
function areAllDocsOnly(changedFiles) {
|
|
196
|
-
if (!changedFiles || changedFiles.length === 0) {
|
|
197
|
-
return true;
|
|
198
|
-
}
|
|
199
|
-
return changedFiles.every((file) => {
|
|
200
|
-
// Normalise Windows paths
|
|
201
|
-
const normalized = file.replace(/\\/g, '/');
|
|
202
|
-
return isDocumentationPath(normalized);
|
|
203
|
-
});
|
|
204
|
-
}
|
|
205
|
-
/**
|
|
206
|
-
* Find high-risk paths in changed files.
|
|
207
|
-
*
|
|
208
|
-
* @param {string[]} changedFiles - List of changed file paths
|
|
209
|
-
* @returns {string[]} List of high-risk paths found
|
|
210
|
-
*/
|
|
211
|
-
function findHighRiskPaths(changedFiles) {
|
|
212
|
-
if (!changedFiles || changedFiles.length === 0) {
|
|
213
|
-
return [];
|
|
214
|
-
}
|
|
215
|
-
return changedFiles.filter((file) => {
|
|
216
|
-
// Normalise Windows paths
|
|
217
|
-
const normalized = file.replace(/\\/g, '/');
|
|
218
|
-
if (isMigrationPath(normalized)) {
|
|
219
|
-
return isHighRiskMigration(normalized);
|
|
220
|
-
}
|
|
221
|
-
return isHighRiskPath(normalized);
|
|
222
|
-
});
|
|
223
|
-
}
|
|
224
|
-
export function detectRiskTier(options = {}) {
|
|
225
|
-
const { changedFiles = [] } = options;
|
|
226
|
-
// Normalise all paths
|
|
227
|
-
const normalizedFiles = changedFiles.map((f) => (f ? f.replace(/\\/g, '/') : ''));
|
|
228
|
-
// Check if all files are documentation-only
|
|
229
|
-
const isDocsOnly = areAllDocsOnly(normalizedFiles);
|
|
230
|
-
// Find any high-risk paths
|
|
231
|
-
const highRiskPaths = findHighRiskPaths(normalizedFiles);
|
|
232
|
-
// Determine tier
|
|
233
|
-
let tier;
|
|
234
|
-
if (isDocsOnly) {
|
|
235
|
-
tier = RISK_TIERS.DOCS_ONLY;
|
|
236
|
-
}
|
|
237
|
-
else if (highRiskPaths.length > 0) {
|
|
238
|
-
tier = RISK_TIERS.HIGH_RISK;
|
|
239
|
-
}
|
|
240
|
-
else {
|
|
241
|
-
tier = RISK_TIERS.STANDARD;
|
|
242
|
-
}
|
|
243
|
-
// Safety-critical patterns always apply (for test filtering)
|
|
244
|
-
const safetyCriticalPatterns = [...SAFETY_CRITICAL_TEST_PATTERNS];
|
|
245
|
-
return {
|
|
246
|
-
tier,
|
|
247
|
-
safetyCriticalPatterns,
|
|
248
|
-
highRiskPaths,
|
|
249
|
-
isDocsOnly,
|
|
250
|
-
shouldRunIntegration: tier === RISK_TIERS.HIGH_RISK,
|
|
251
|
-
};
|
|
252
|
-
}
|
|
253
|
-
//# sourceMappingURL=risk-detector.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"risk-detector.js","sourceRoot":"","sources":["../src/risk-detector.ts"],"names":[],"mappings":"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"}
|
package/dist/rollback-utils.d.ts
DELETED
|
@@ -1,129 +0,0 @@
|
|
|
1
|
-
#!/usr/bin/env node
|
|
2
|
-
/**
|
|
3
|
-
* Rollback Utilities for WU Tooling
|
|
4
|
-
*
|
|
5
|
-
* WU-1255: Per-file error tracking for robust rollback operations.
|
|
6
|
-
* Ensures all files are attempted even if some fail, with clear error reporting.
|
|
7
|
-
*
|
|
8
|
-
* WU-1665: Adds rollbackFromPipelineState for state-machine-driven recovery.
|
|
9
|
-
* Centralized entry point that determines rollback actions from pipeline state.
|
|
10
|
-
*
|
|
11
|
-
* @see {@link packages/@lumenflow/cli/src/wu-done.ts} - Consumer (rollbackTransaction function)
|
|
12
|
-
*/
|
|
13
|
-
import type { RollbackScope } from './wu-recovery.js';
|
|
14
|
-
/**
|
|
15
|
-
* Error entry for failed file restoration
|
|
16
|
-
*/
|
|
17
|
-
interface RollbackError {
|
|
18
|
-
name: string;
|
|
19
|
-
path: string;
|
|
20
|
-
error: string;
|
|
21
|
-
}
|
|
22
|
-
/**
|
|
23
|
-
* Result of a rollback operation.
|
|
24
|
-
* Tracks which files were restored and which failed.
|
|
25
|
-
*
|
|
26
|
-
* WU-1665: Extended with optional scope metadata for state-machine-driven recovery.
|
|
27
|
-
*
|
|
28
|
-
* @class
|
|
29
|
-
*/
|
|
30
|
-
export declare class RollbackResult {
|
|
31
|
-
/** Names of successfully restored files */
|
|
32
|
-
restored: string[];
|
|
33
|
-
/** Failed file restorations */
|
|
34
|
-
errors: RollbackError[];
|
|
35
|
-
/** WU-1665: Rollback scope from pipeline state (set by rollbackFromPipelineState) */
|
|
36
|
-
scope: RollbackScope | null;
|
|
37
|
-
constructor();
|
|
38
|
-
/**
|
|
39
|
-
* Record a successful file restoration.
|
|
40
|
-
* @param {string} name - File identifier (e.g., 'backlog.md')
|
|
41
|
-
*/
|
|
42
|
-
addSuccess(name: UnsafeAny): void;
|
|
43
|
-
/**
|
|
44
|
-
* Record a failed file restoration.
|
|
45
|
-
* @param {string} name - File identifier
|
|
46
|
-
* @param {string} path - Full file path
|
|
47
|
-
* @param {string} error - Error message
|
|
48
|
-
*/
|
|
49
|
-
addError(name: UnsafeAny, path: UnsafeAny, error: UnsafeAny): void;
|
|
50
|
-
/**
|
|
51
|
-
* Check if all files were restored successfully.
|
|
52
|
-
* @returns {boolean} True if no errors occurred
|
|
53
|
-
*/
|
|
54
|
-
get success(): boolean;
|
|
55
|
-
}
|
|
56
|
-
/**
|
|
57
|
-
* Restore multiple files with per-file error tracking.
|
|
58
|
-
*
|
|
59
|
-
* Each file is restored independently - if one fails, subsequent files
|
|
60
|
-
* are still attempted. This ensures maximum recovery even in partial
|
|
61
|
-
* failure scenarios.
|
|
62
|
-
*
|
|
63
|
-
* @param {Array<{name: string, path: string, content: string}>} filesToRestore - Files to restore
|
|
64
|
-
* @returns {RollbackResult} Result with restored files and UnsafeAny errors
|
|
65
|
-
*
|
|
66
|
-
* @example
|
|
67
|
-
* const result = rollbackFiles([
|
|
68
|
-
* { name: 'backlog.md', path: '/path/to/backlog.md', content: 'original content' },
|
|
69
|
-
* { name: 'status.md', path: '/path/to/status.md', content: 'original content' },
|
|
70
|
-
* ]);
|
|
71
|
-
*
|
|
72
|
-
* if (!result.success) {
|
|
73
|
-
* console.error('Rollback had errors:', result.errors);
|
|
74
|
-
* }
|
|
75
|
-
*/
|
|
76
|
-
export declare function rollbackFiles(filesToRestore: UnsafeAny): RollbackResult;
|
|
77
|
-
/**
|
|
78
|
-
* Delete multiple files with per-file error tracking.
|
|
79
|
-
*
|
|
80
|
-
* @param {Array<{name: string, path: string}>} filesToDelete - Files to delete
|
|
81
|
-
* @returns {RollbackResult} Result with deleted files and UnsafeAny errors
|
|
82
|
-
*/
|
|
83
|
-
export declare function deleteFiles(filesToDelete: UnsafeAny): RollbackResult;
|
|
84
|
-
/**
|
|
85
|
-
* Input for the centralized pipeline-state-aware rollback.
|
|
86
|
-
*/
|
|
87
|
-
export interface PipelineRollbackInput {
|
|
88
|
-
/** The pipeline state where failure occurred (from machine context.failedAt) */
|
|
89
|
-
failedAt: string | null;
|
|
90
|
-
/** Snapshot map of file paths to original content (from createTransactionSnapshot) */
|
|
91
|
-
snapshot: Map<string, string | null> | null;
|
|
92
|
-
/** Files to restore via the legacy per-file rollback path */
|
|
93
|
-
filesToRestore: Array<{
|
|
94
|
-
name: string;
|
|
95
|
-
path: string;
|
|
96
|
-
content: string;
|
|
97
|
-
}>;
|
|
98
|
-
}
|
|
99
|
-
/**
|
|
100
|
-
* WU-1665: Centralized rollback entry point driven by pipeline state.
|
|
101
|
-
*
|
|
102
|
-
* Determines the rollback scope from the failedAt state, then executes
|
|
103
|
-
* the appropriate rollback actions. This replaces the scattered rollback
|
|
104
|
-
* logic that was previously duplicated across wu-recovery.ts, wu-transaction.ts,
|
|
105
|
-
* and the CLI orchestrator.
|
|
106
|
-
*
|
|
107
|
-
* Scope determination:
|
|
108
|
-
* - validating/preparing/gating: no-op (nothing was written)
|
|
109
|
-
* - committing: restore files from snapshot or filesToRestore
|
|
110
|
-
* - merging/pushing: restore files + flag branch rollback needed
|
|
111
|
-
* - cleaningUp: flag worktree cleanup only (push already succeeded)
|
|
112
|
-
*
|
|
113
|
-
* @param {PipelineRollbackInput} input - Rollback inputs
|
|
114
|
-
* @returns {RollbackResult} Result with scope metadata and file restoration details
|
|
115
|
-
*/
|
|
116
|
-
export declare function rollbackFromPipelineState(input: PipelineRollbackInput): RollbackResult;
|
|
117
|
-
/**
|
|
118
|
-
* WU-1665: Compute rollback scope from pipeline failedAt state.
|
|
119
|
-
*
|
|
120
|
-
* Pure function: given the same failedAt, always returns the same scope.
|
|
121
|
-
* This is the canonical scope determination used by both
|
|
122
|
-
* StateMachineRecoveryManager.getRollbackScope() and rollbackFromPipelineState().
|
|
123
|
-
*
|
|
124
|
-
* @param {string|null} failedAt - Pipeline state where failure occurred
|
|
125
|
-
* @returns {RollbackScope} Rollback scope
|
|
126
|
-
*/
|
|
127
|
-
export declare function computeRollbackScope(failedAt: string | null): RollbackScope;
|
|
128
|
-
export {};
|
|
129
|
-
//# sourceMappingURL=rollback-utils.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"rollback-utils.d.ts","sourceRoot":"","sources":["../src/rollback-utils.ts"],"names":[],"mappings":";AAGA;;;;;;;;;;GAUG;AAGH,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AAEtD;;GAEG;AACH,UAAU,aAAa;IACrB,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,MAAM,CAAC;CACf;AAED;;;;;;;GAOG;AACH,qBAAa,cAAc;IACzB,2CAA2C;IAC3C,QAAQ,EAAE,MAAM,EAAE,CAAC;IACnB,+BAA+B;IAC/B,MAAM,EAAE,aAAa,EAAE,CAAC;IACxB,qFAAqF;IACrF,KAAK,EAAE,aAAa,GAAG,IAAI,CAAC;;IAQ5B;;;OAGG;IACH,UAAU,CAAC,IAAI,EAAE,SAAS;IAI1B;;;;;OAKG;IACH,QAAQ,CAAC,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,SAAS,EAAE,KAAK,EAAE,SAAS;IAI3D;;;OAGG;IACH,IAAI,OAAO,YAEV;CACF;AAED;;;;;;;;;;;;;;;;;;;GAmBG;AACH,wBAAgB,aAAa,CAAC,cAAc,EAAE,SAAS,kBActD;AAED;;;;;GAKG;AACH,wBAAgB,WAAW,CAAC,aAAa,EAAE,SAAS,kBAcnD;AAMD;;GAEG;AACH,MAAM,WAAW,qBAAqB;IACpC,gFAAgF;IAChF,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAC;IACxB,sFAAsF;IACtF,QAAQ,EAAE,GAAG,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI,CAAC,GAAG,IAAI,CAAC;IAC5C,6DAA6D;IAC7D,cAAc,EAAE,KAAK,CAAC;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;CACxE;AAED;;;;;;;;;;;;;;;;GAgBG;AACH,wBAAgB,yBAAyB,CAAC,KAAK,EAAE,qBAAqB,GAAG,cAAc,CA2CtF;AAED;;;;;;;;;GASG;AACH,wBAAgB,oBAAoB,CAAC,QAAQ,EAAE,MAAM,GAAG,IAAI,GAAG,aAAa,CAkC3E"}
|
package/dist/rollback-utils.js
DELETED
|
@@ -1,217 +0,0 @@
|
|
|
1
|
-
#!/usr/bin/env node
|
|
2
|
-
// Copyright (c) 2026 Hellmai Ltd
|
|
3
|
-
// SPDX-License-Identifier: AGPL-3.0-only
|
|
4
|
-
/**
|
|
5
|
-
* Rollback Utilities for WU Tooling
|
|
6
|
-
*
|
|
7
|
-
* WU-1255: Per-file error tracking for robust rollback operations.
|
|
8
|
-
* Ensures all files are attempted even if some fail, with clear error reporting.
|
|
9
|
-
*
|
|
10
|
-
* WU-1665: Adds rollbackFromPipelineState for state-machine-driven recovery.
|
|
11
|
-
* Centralized entry point that determines rollback actions from pipeline state.
|
|
12
|
-
*
|
|
13
|
-
* @see {@link packages/@lumenflow/cli/src/wu-done.ts} - Consumer (rollbackTransaction function)
|
|
14
|
-
*/
|
|
15
|
-
import { writeFileSync, unlinkSync } from 'node:fs';
|
|
16
|
-
/**
|
|
17
|
-
* Result of a rollback operation.
|
|
18
|
-
* Tracks which files were restored and which failed.
|
|
19
|
-
*
|
|
20
|
-
* WU-1665: Extended with optional scope metadata for state-machine-driven recovery.
|
|
21
|
-
*
|
|
22
|
-
* @class
|
|
23
|
-
*/
|
|
24
|
-
export class RollbackResult {
|
|
25
|
-
/** Names of successfully restored files */
|
|
26
|
-
restored;
|
|
27
|
-
/** Failed file restorations */
|
|
28
|
-
errors;
|
|
29
|
-
/** WU-1665: Rollback scope from pipeline state (set by rollbackFromPipelineState) */
|
|
30
|
-
scope;
|
|
31
|
-
constructor() {
|
|
32
|
-
this.restored = [];
|
|
33
|
-
this.errors = [];
|
|
34
|
-
this.scope = null;
|
|
35
|
-
}
|
|
36
|
-
/**
|
|
37
|
-
* Record a successful file restoration.
|
|
38
|
-
* @param {string} name - File identifier (e.g., 'backlog.md')
|
|
39
|
-
*/
|
|
40
|
-
addSuccess(name) {
|
|
41
|
-
this.restored.push(name);
|
|
42
|
-
}
|
|
43
|
-
/**
|
|
44
|
-
* Record a failed file restoration.
|
|
45
|
-
* @param {string} name - File identifier
|
|
46
|
-
* @param {string} path - Full file path
|
|
47
|
-
* @param {string} error - Error message
|
|
48
|
-
*/
|
|
49
|
-
addError(name, path, error) {
|
|
50
|
-
this.errors.push({ name, path, error });
|
|
51
|
-
}
|
|
52
|
-
/**
|
|
53
|
-
* Check if all files were restored successfully.
|
|
54
|
-
* @returns {boolean} True if no errors occurred
|
|
55
|
-
*/
|
|
56
|
-
get success() {
|
|
57
|
-
return this.errors.length === 0;
|
|
58
|
-
}
|
|
59
|
-
}
|
|
60
|
-
/**
|
|
61
|
-
* Restore multiple files with per-file error tracking.
|
|
62
|
-
*
|
|
63
|
-
* Each file is restored independently - if one fails, subsequent files
|
|
64
|
-
* are still attempted. This ensures maximum recovery even in partial
|
|
65
|
-
* failure scenarios.
|
|
66
|
-
*
|
|
67
|
-
* @param {Array<{name: string, path: string, content: string}>} filesToRestore - Files to restore
|
|
68
|
-
* @returns {RollbackResult} Result with restored files and UnsafeAny errors
|
|
69
|
-
*
|
|
70
|
-
* @example
|
|
71
|
-
* const result = rollbackFiles([
|
|
72
|
-
* { name: 'backlog.md', path: '/path/to/backlog.md', content: 'original content' },
|
|
73
|
-
* { name: 'status.md', path: '/path/to/status.md', content: 'original content' },
|
|
74
|
-
* ]);
|
|
75
|
-
*
|
|
76
|
-
* if (!result.success) {
|
|
77
|
-
* console.error('Rollback had errors:', result.errors);
|
|
78
|
-
* }
|
|
79
|
-
*/
|
|
80
|
-
export function rollbackFiles(filesToRestore) {
|
|
81
|
-
const result = new RollbackResult();
|
|
82
|
-
for (const file of filesToRestore) {
|
|
83
|
-
try {
|
|
84
|
-
writeFileSync(file.path, file.content, { encoding: 'utf-8' });
|
|
85
|
-
result.addSuccess(file.name);
|
|
86
|
-
}
|
|
87
|
-
catch (err) {
|
|
88
|
-
const message = err instanceof Error ? err.message : String(err);
|
|
89
|
-
result.addError(file.name, file.path, message);
|
|
90
|
-
}
|
|
91
|
-
}
|
|
92
|
-
return result;
|
|
93
|
-
}
|
|
94
|
-
/**
|
|
95
|
-
* Delete multiple files with per-file error tracking.
|
|
96
|
-
*
|
|
97
|
-
* @param {Array<{name: string, path: string}>} filesToDelete - Files to delete
|
|
98
|
-
* @returns {RollbackResult} Result with deleted files and UnsafeAny errors
|
|
99
|
-
*/
|
|
100
|
-
export function deleteFiles(filesToDelete) {
|
|
101
|
-
const result = new RollbackResult();
|
|
102
|
-
for (const file of filesToDelete) {
|
|
103
|
-
try {
|
|
104
|
-
unlinkSync(file.path);
|
|
105
|
-
result.addSuccess(file.name);
|
|
106
|
-
}
|
|
107
|
-
catch (err) {
|
|
108
|
-
const message = err instanceof Error ? err.message : String(err);
|
|
109
|
-
result.addError(file.name, file.path, message);
|
|
110
|
-
}
|
|
111
|
-
}
|
|
112
|
-
return result;
|
|
113
|
-
}
|
|
114
|
-
/**
|
|
115
|
-
* WU-1665: Centralized rollback entry point driven by pipeline state.
|
|
116
|
-
*
|
|
117
|
-
* Determines the rollback scope from the failedAt state, then executes
|
|
118
|
-
* the appropriate rollback actions. This replaces the scattered rollback
|
|
119
|
-
* logic that was previously duplicated across wu-recovery.ts, wu-transaction.ts,
|
|
120
|
-
* and the CLI orchestrator.
|
|
121
|
-
*
|
|
122
|
-
* Scope determination:
|
|
123
|
-
* - validating/preparing/gating: no-op (nothing was written)
|
|
124
|
-
* - committing: restore files from snapshot or filesToRestore
|
|
125
|
-
* - merging/pushing: restore files + flag branch rollback needed
|
|
126
|
-
* - cleaningUp: flag worktree cleanup only (push already succeeded)
|
|
127
|
-
*
|
|
128
|
-
* @param {PipelineRollbackInput} input - Rollback inputs
|
|
129
|
-
* @returns {RollbackResult} Result with scope metadata and file restoration details
|
|
130
|
-
*/
|
|
131
|
-
export function rollbackFromPipelineState(input) {
|
|
132
|
-
const { failedAt, snapshot, filesToRestore } = input;
|
|
133
|
-
const result = new RollbackResult();
|
|
134
|
-
// Determine scope from failedAt state (same logic as StateMachineRecoveryManager)
|
|
135
|
-
const scope = computeRollbackScope(failedAt);
|
|
136
|
-
result.scope = scope;
|
|
137
|
-
// If no file restoration needed, return early with scope metadata
|
|
138
|
-
if (!scope.snapshotRestore) {
|
|
139
|
-
return result;
|
|
140
|
-
}
|
|
141
|
-
// Restore files using snapshot if available, otherwise fall back to filesToRestore
|
|
142
|
-
if (snapshot && snapshot.size > 0) {
|
|
143
|
-
for (const [filePath, content] of snapshot) {
|
|
144
|
-
try {
|
|
145
|
-
if (content === null) {
|
|
146
|
-
// File didn't exist before - delete if created
|
|
147
|
-
try {
|
|
148
|
-
unlinkSync(filePath);
|
|
149
|
-
result.addSuccess(filePath);
|
|
150
|
-
}
|
|
151
|
-
catch {
|
|
152
|
-
// File might not exist, which is fine
|
|
153
|
-
result.addSuccess(filePath);
|
|
154
|
-
}
|
|
155
|
-
}
|
|
156
|
-
else {
|
|
157
|
-
writeFileSync(filePath, content, { encoding: 'utf-8' });
|
|
158
|
-
result.addSuccess(filePath);
|
|
159
|
-
}
|
|
160
|
-
}
|
|
161
|
-
catch (err) {
|
|
162
|
-
const message = err instanceof Error ? err.message : String(err);
|
|
163
|
-
result.addError(filePath, filePath, message);
|
|
164
|
-
}
|
|
165
|
-
}
|
|
166
|
-
}
|
|
167
|
-
else if (filesToRestore.length > 0) {
|
|
168
|
-
// Legacy-compatible file restoration
|
|
169
|
-
const legacyResult = rollbackFiles(filesToRestore);
|
|
170
|
-
result.restored.push(...legacyResult.restored);
|
|
171
|
-
result.errors.push(...legacyResult.errors);
|
|
172
|
-
}
|
|
173
|
-
return result;
|
|
174
|
-
}
|
|
175
|
-
/**
|
|
176
|
-
* WU-1665: Compute rollback scope from pipeline failedAt state.
|
|
177
|
-
*
|
|
178
|
-
* Pure function: given the same failedAt, always returns the same scope.
|
|
179
|
-
* This is the canonical scope determination used by both
|
|
180
|
-
* StateMachineRecoveryManager.getRollbackScope() and rollbackFromPipelineState().
|
|
181
|
-
*
|
|
182
|
-
* @param {string|null} failedAt - Pipeline state where failure occurred
|
|
183
|
-
* @returns {RollbackScope} Rollback scope
|
|
184
|
-
*/
|
|
185
|
-
export function computeRollbackScope(failedAt) {
|
|
186
|
-
// Pre-write states: nothing to roll back
|
|
187
|
-
if (!failedAt || failedAt === 'validating' || failedAt === 'preparing' || failedAt === 'gating') {
|
|
188
|
-
return {
|
|
189
|
-
snapshotRestore: false,
|
|
190
|
-
branchRollback: false,
|
|
191
|
-
worktreeCleanup: false,
|
|
192
|
-
};
|
|
193
|
-
}
|
|
194
|
-
// Post-push state: push already succeeded, only cleanup remains
|
|
195
|
-
if (failedAt === 'cleaningUp') {
|
|
196
|
-
return {
|
|
197
|
-
snapshotRestore: false,
|
|
198
|
-
branchRollback: false,
|
|
199
|
-
worktreeCleanup: true,
|
|
200
|
-
};
|
|
201
|
-
}
|
|
202
|
-
// Commit-phase failures: files written, need snapshot restore
|
|
203
|
-
if (failedAt === 'committing') {
|
|
204
|
-
return {
|
|
205
|
-
snapshotRestore: true,
|
|
206
|
-
branchRollback: false,
|
|
207
|
-
worktreeCleanup: false,
|
|
208
|
-
};
|
|
209
|
-
}
|
|
210
|
-
// Merge/push phase failures: committed + potentially merged, need full rollback
|
|
211
|
-
return {
|
|
212
|
-
snapshotRestore: true,
|
|
213
|
-
branchRollback: true,
|
|
214
|
-
worktreeCleanup: false,
|
|
215
|
-
};
|
|
216
|
-
}
|
|
217
|
-
//# sourceMappingURL=rollback-utils.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"rollback-utils.js","sourceRoot":"","sources":["../src/rollback-utils.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,16 +0,0 @@
|
|
|
1
|
-
export interface SandboxAllowlistEntry {
|
|
2
|
-
originalPath: string;
|
|
3
|
-
normalizedPath: string;
|
|
4
|
-
canonicalPath: string;
|
|
5
|
-
}
|
|
6
|
-
export interface SandboxAllowlist {
|
|
7
|
-
projectRoot: string;
|
|
8
|
-
writableRoots: SandboxAllowlistEntry[];
|
|
9
|
-
}
|
|
10
|
-
export interface BuildSandboxAllowlistInput {
|
|
11
|
-
projectRoot: string;
|
|
12
|
-
writableRoots: string[];
|
|
13
|
-
}
|
|
14
|
-
export declare function buildSandboxAllowlist(input: BuildSandboxAllowlistInput): SandboxAllowlist;
|
|
15
|
-
export declare function isWritePathAllowed(allowlist: SandboxAllowlist, targetPath: string): boolean;
|
|
16
|
-
//# sourceMappingURL=sandbox-allowlist.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"sandbox-allowlist.d.ts","sourceRoot":"","sources":["../src/sandbox-allowlist.ts"],"names":[],"mappings":"AAMA,MAAM,WAAW,qBAAqB;IACpC,YAAY,EAAE,MAAM,CAAC;IACrB,cAAc,EAAE,MAAM,CAAC;IACvB,aAAa,EAAE,MAAM,CAAC;CACvB;AAED,MAAM,WAAW,gBAAgB;IAC/B,WAAW,EAAE,MAAM,CAAC;IACpB,aAAa,EAAE,qBAAqB,EAAE,CAAC;CACxC;AAED,MAAM,WAAW,0BAA0B;IACzC,WAAW,EAAE,MAAM,CAAC;IACpB,aAAa,EAAE,MAAM,EAAE,CAAC;CACzB;AAkED,wBAAgB,qBAAqB,CAAC,KAAK,EAAE,0BAA0B,GAAG,gBAAgB,CAgBzF;AAED,wBAAgB,kBAAkB,CAAC,SAAS,EAAE,gBAAgB,EAAE,UAAU,EAAE,MAAM,GAAG,OAAO,CAa3F"}
|