groundswell 0.0.2 → 0.0.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/dist/__tests__/adversarial/attachChild-performance.test.d.ts +16 -0
- package/dist/__tests__/adversarial/attachChild-performance.test.d.ts.map +1 -0
- package/dist/__tests__/adversarial/attachChild-performance.test.js +187 -0
- package/dist/__tests__/adversarial/attachChild-performance.test.js.map +1 -0
- package/dist/__tests__/adversarial/circular-reference.test.d.ts +13 -0
- package/dist/__tests__/adversarial/circular-reference.test.d.ts.map +1 -0
- package/dist/__tests__/adversarial/circular-reference.test.js +92 -0
- package/dist/__tests__/adversarial/circular-reference.test.js.map +1 -0
- package/dist/__tests__/adversarial/complex-circular-reference.test.d.ts +16 -0
- package/dist/__tests__/adversarial/complex-circular-reference.test.d.ts.map +1 -0
- package/dist/__tests__/adversarial/complex-circular-reference.test.js +127 -0
- package/dist/__tests__/adversarial/complex-circular-reference.test.js.map +1 -0
- package/dist/__tests__/adversarial/concurrent-task-failures.test.d.ts +21 -0
- package/dist/__tests__/adversarial/concurrent-task-failures.test.d.ts.map +1 -0
- package/dist/__tests__/adversarial/concurrent-task-failures.test.js +667 -0
- package/dist/__tests__/adversarial/concurrent-task-failures.test.js.map +1 -0
- package/dist/__tests__/adversarial/deep-analysis.test.d.ts +6 -0
- package/dist/__tests__/adversarial/deep-analysis.test.d.ts.map +1 -0
- package/dist/__tests__/adversarial/deep-analysis.test.js +877 -0
- package/dist/__tests__/adversarial/deep-analysis.test.js.map +1 -0
- package/dist/__tests__/adversarial/deep-hierarchy-stress.test.d.ts +13 -0
- package/dist/__tests__/adversarial/deep-hierarchy-stress.test.d.ts.map +1 -0
- package/dist/__tests__/adversarial/deep-hierarchy-stress.test.js +186 -0
- package/dist/__tests__/adversarial/deep-hierarchy-stress.test.js.map +1 -0
- package/dist/__tests__/adversarial/e2e-prd-validation.test.d.ts +6 -0
- package/dist/__tests__/adversarial/e2e-prd-validation.test.d.ts.map +1 -0
- package/dist/__tests__/adversarial/e2e-prd-validation.test.js +626 -0
- package/dist/__tests__/adversarial/e2e-prd-validation.test.js.map +1 -0
- package/dist/__tests__/adversarial/edge-case.test.d.ts +6 -0
- package/dist/__tests__/adversarial/edge-case.test.d.ts.map +1 -0
- package/dist/__tests__/adversarial/edge-case.test.js +857 -0
- package/dist/__tests__/adversarial/edge-case.test.js.map +1 -0
- package/dist/__tests__/adversarial/error-merge-strategy.test.d.ts +20 -0
- package/dist/__tests__/adversarial/error-merge-strategy.test.d.ts.map +1 -0
- package/dist/__tests__/adversarial/error-merge-strategy.test.js +907 -0
- package/dist/__tests__/adversarial/error-merge-strategy.test.js.map +1 -0
- package/dist/__tests__/adversarial/incremental-performance.test.d.ts +2 -0
- package/dist/__tests__/adversarial/incremental-performance.test.d.ts.map +1 -0
- package/dist/__tests__/adversarial/incremental-performance.test.js +113 -0
- package/dist/__tests__/adversarial/incremental-performance.test.js.map +1 -0
- package/dist/__tests__/adversarial/node-map-update-benchmarks.test.d.ts +22 -0
- package/dist/__tests__/adversarial/node-map-update-benchmarks.test.d.ts.map +1 -0
- package/dist/__tests__/adversarial/node-map-update-benchmarks.test.js +383 -0
- package/dist/__tests__/adversarial/node-map-update-benchmarks.test.js.map +1 -0
- package/dist/__tests__/adversarial/observer-propagation.test.d.ts +21 -0
- package/dist/__tests__/adversarial/observer-propagation.test.d.ts.map +1 -0
- package/dist/__tests__/adversarial/observer-propagation.test.js +404 -0
- package/dist/__tests__/adversarial/observer-propagation.test.js.map +1 -0
- package/dist/__tests__/adversarial/parent-validation.test.d.ts +13 -0
- package/dist/__tests__/adversarial/parent-validation.test.d.ts.map +1 -0
- package/dist/__tests__/adversarial/parent-validation.test.js +128 -0
- package/dist/__tests__/adversarial/parent-validation.test.js.map +1 -0
- package/dist/__tests__/adversarial/prd-12-2-compliance.test.d.ts +20 -0
- package/dist/__tests__/adversarial/prd-12-2-compliance.test.d.ts.map +1 -0
- package/dist/__tests__/adversarial/prd-12-2-compliance.test.js +482 -0
- package/dist/__tests__/adversarial/prd-12-2-compliance.test.js.map +1 -0
- package/dist/__tests__/adversarial/prd-compliance.test.d.ts +6 -0
- package/dist/__tests__/adversarial/prd-compliance.test.d.ts.map +1 -0
- package/dist/__tests__/adversarial/prd-compliance.test.js +886 -0
- package/dist/__tests__/adversarial/prd-compliance.test.js.map +1 -0
- package/dist/__tests__/compatibility/backward-compatibility.test.d.ts +22 -0
- package/dist/__tests__/compatibility/backward-compatibility.test.d.ts.map +1 -0
- package/dist/__tests__/compatibility/backward-compatibility.test.js +1843 -0
- package/dist/__tests__/compatibility/backward-compatibility.test.js.map +1 -0
- package/dist/__tests__/helpers/index.d.ts +10 -0
- package/dist/__tests__/helpers/index.d.ts.map +1 -0
- package/{src/__tests__/helpers/index.ts → dist/__tests__/helpers/index.js} +2 -10
- package/dist/__tests__/helpers/index.js.map +1 -0
- package/dist/__tests__/helpers/tree-verification.d.ts +90 -0
- package/dist/__tests__/helpers/tree-verification.d.ts.map +1 -0
- package/dist/__tests__/helpers/tree-verification.js +202 -0
- package/dist/__tests__/helpers/tree-verification.js.map +1 -0
- package/dist/__tests__/integration/agent-workflow.test.d.ts +2 -0
- package/dist/__tests__/integration/agent-workflow.test.d.ts.map +1 -0
- package/dist/__tests__/integration/agent-workflow.test.js +256 -0
- package/dist/__tests__/integration/agent-workflow.test.js.map +1 -0
- package/dist/__tests__/integration/bidirectional-consistency.test.d.ts +14 -0
- package/dist/__tests__/integration/bidirectional-consistency.test.d.ts.map +1 -0
- package/dist/__tests__/integration/bidirectional-consistency.test.js +668 -0
- package/dist/__tests__/integration/bidirectional-consistency.test.js.map +1 -0
- package/dist/__tests__/integration/observer-logging.test.d.ts +2 -0
- package/dist/__tests__/integration/observer-logging.test.d.ts.map +1 -0
- package/dist/__tests__/integration/observer-logging.test.js +517 -0
- package/dist/__tests__/integration/observer-logging.test.js.map +1 -0
- package/dist/__tests__/integration/tree-mirroring.test.d.ts +2 -0
- package/dist/__tests__/integration/tree-mirroring.test.d.ts.map +1 -0
- package/dist/__tests__/integration/tree-mirroring.test.js +117 -0
- package/dist/__tests__/integration/tree-mirroring.test.js.map +1 -0
- package/dist/__tests__/integration/workflow-reparenting.test.d.ts +12 -0
- package/dist/__tests__/integration/workflow-reparenting.test.d.ts.map +1 -0
- package/dist/__tests__/integration/workflow-reparenting.test.js +239 -0
- package/dist/__tests__/integration/workflow-reparenting.test.js.map +1 -0
- package/dist/__tests__/unit/agent.test.d.ts +2 -0
- package/dist/__tests__/unit/agent.test.d.ts.map +1 -0
- package/dist/__tests__/unit/agent.test.js +143 -0
- package/dist/__tests__/unit/agent.test.js.map +1 -0
- package/dist/__tests__/unit/cache-key.test.d.ts +5 -0
- package/dist/__tests__/unit/cache-key.test.d.ts.map +1 -0
- package/dist/__tests__/unit/cache-key.test.js +145 -0
- package/dist/__tests__/unit/cache-key.test.js.map +1 -0
- package/dist/__tests__/unit/cache.test.d.ts +5 -0
- package/dist/__tests__/unit/cache.test.d.ts.map +1 -0
- package/dist/__tests__/unit/cache.test.js +132 -0
- package/dist/__tests__/unit/cache.test.js.map +1 -0
- package/dist/__tests__/unit/context.test.d.ts +2 -0
- package/dist/__tests__/unit/context.test.d.ts.map +1 -0
- package/dist/__tests__/unit/context.test.js +220 -0
- package/dist/__tests__/unit/context.test.js.map +1 -0
- package/dist/__tests__/unit/decorators.test.d.ts +2 -0
- package/dist/__tests__/unit/decorators.test.d.ts.map +1 -0
- package/dist/__tests__/unit/decorators.test.js +162 -0
- package/dist/__tests__/unit/decorators.test.js.map +1 -0
- package/dist/__tests__/unit/introspection-tools.test.d.ts +5 -0
- package/dist/__tests__/unit/introspection-tools.test.d.ts.map +1 -0
- package/dist/__tests__/unit/introspection-tools.test.js +191 -0
- package/dist/__tests__/unit/introspection-tools.test.js.map +1 -0
- package/dist/__tests__/unit/logger.test.d.ts +2 -0
- package/dist/__tests__/unit/logger.test.d.ts.map +1 -0
- package/dist/__tests__/unit/logger.test.js +241 -0
- package/dist/__tests__/unit/logger.test.js.map +1 -0
- package/dist/__tests__/unit/observable.test.d.ts +2 -0
- package/dist/__tests__/unit/observable.test.d.ts.map +1 -0
- package/dist/__tests__/unit/observable.test.js +251 -0
- package/dist/__tests__/unit/observable.test.js.map +1 -0
- package/dist/__tests__/unit/prompt.test.d.ts +2 -0
- package/dist/__tests__/unit/prompt.test.d.ts.map +1 -0
- package/dist/__tests__/unit/prompt.test.js +113 -0
- package/dist/__tests__/unit/prompt.test.js.map +1 -0
- package/dist/__tests__/unit/reflection.test.d.ts +5 -0
- package/dist/__tests__/unit/reflection.test.d.ts.map +1 -0
- package/dist/__tests__/unit/reflection.test.js +160 -0
- package/dist/__tests__/unit/reflection.test.js.map +1 -0
- package/dist/__tests__/unit/tree-debugger-incremental.test.d.ts +2 -0
- package/dist/__tests__/unit/tree-debugger-incremental.test.d.ts.map +1 -0
- package/dist/__tests__/unit/tree-debugger-incremental.test.js +136 -0
- package/dist/__tests__/unit/tree-debugger-incremental.test.js.map +1 -0
- package/dist/__tests__/unit/tree-debugger.test.d.ts +2 -0
- package/dist/__tests__/unit/tree-debugger.test.d.ts.map +1 -0
- package/dist/__tests__/unit/tree-debugger.test.js +69 -0
- package/dist/__tests__/unit/tree-debugger.test.js.map +1 -0
- package/dist/__tests__/unit/utils/workflow-error-utils.test.d.ts +2 -0
- package/dist/__tests__/unit/utils/workflow-error-utils.test.d.ts.map +1 -0
- package/dist/__tests__/unit/utils/workflow-error-utils.test.js +154 -0
- package/dist/__tests__/unit/utils/workflow-error-utils.test.js.map +1 -0
- package/dist/__tests__/unit/workflow-detachChild.test.d.ts +2 -0
- package/dist/__tests__/unit/workflow-detachChild.test.d.ts.map +1 -0
- package/dist/__tests__/unit/workflow-detachChild.test.js +76 -0
- package/dist/__tests__/unit/workflow-detachChild.test.js.map +1 -0
- package/dist/__tests__/unit/workflow-emitEvent-childDetached.test.d.ts +2 -0
- package/dist/__tests__/unit/workflow-emitEvent-childDetached.test.d.ts.map +1 -0
- package/dist/__tests__/unit/workflow-emitEvent-childDetached.test.js +122 -0
- package/dist/__tests__/unit/workflow-emitEvent-childDetached.test.js.map +1 -0
- package/dist/__tests__/unit/workflow-isDescendantOf.test.d.ts +2 -0
- package/dist/__tests__/unit/workflow-isDescendantOf.test.d.ts.map +1 -0
- package/dist/__tests__/unit/workflow-isDescendantOf.test.js +140 -0
- package/dist/__tests__/unit/workflow-isDescendantOf.test.js.map +1 -0
- package/dist/__tests__/unit/workflow.test.d.ts +2 -0
- package/dist/__tests__/unit/workflow.test.d.ts.map +1 -0
- package/dist/__tests__/unit/workflow.test.js +330 -0
- package/dist/__tests__/unit/workflow.test.js.map +1 -0
- package/dist/cache/cache-key.d.ts +66 -0
- package/dist/cache/cache-key.d.ts.map +1 -0
- package/dist/cache/cache-key.js +195 -0
- package/dist/cache/cache-key.js.map +1 -0
- package/dist/cache/cache.d.ts +104 -0
- package/dist/cache/cache.d.ts.map +1 -0
- package/dist/cache/cache.js +179 -0
- package/dist/cache/cache.js.map +1 -0
- package/{src/cache/index.ts → dist/cache/index.d.ts} +1 -1
- package/dist/cache/index.d.ts.map +1 -0
- package/dist/cache/index.js +6 -0
- package/dist/cache/index.js.map +1 -0
- package/dist/core/agent.d.ts +112 -0
- package/dist/core/agent.d.ts.map +1 -0
- package/dist/core/agent.js +426 -0
- package/dist/core/agent.js.map +1 -0
- package/{src/core/context.ts → dist/core/context.d.ts} +16 -67
- package/dist/core/context.d.ts.map +1 -0
- package/dist/core/context.js +80 -0
- package/dist/core/context.js.map +1 -0
- package/dist/core/event-tree.d.ts +72 -0
- package/dist/core/event-tree.d.ts.map +1 -0
- package/dist/core/event-tree.js +211 -0
- package/dist/core/event-tree.js.map +1 -0
- package/{src/core/factory.ts → dist/core/factory.d.ts} +6 -27
- package/dist/core/factory.d.ts.map +1 -0
- package/dist/core/factory.js +110 -0
- package/dist/core/factory.js.map +1 -0
- package/{src/core/index.ts → dist/core/index.d.ts} +2 -10
- package/dist/core/index.d.ts.map +1 -0
- package/dist/core/index.js +9 -0
- package/dist/core/index.js.map +1 -0
- package/dist/core/logger.d.ts +50 -0
- package/dist/core/logger.d.ts.map +1 -0
- package/dist/core/logger.js +91 -0
- package/dist/core/logger.js.map +1 -0
- package/dist/core/mcp-handler.d.ts +69 -0
- package/dist/core/mcp-handler.d.ts.map +1 -0
- package/dist/core/mcp-handler.js +143 -0
- package/dist/core/mcp-handler.js.map +1 -0
- package/dist/core/prompt.d.ts +80 -0
- package/dist/core/prompt.d.ts.map +1 -0
- package/dist/core/prompt.js +120 -0
- package/dist/core/prompt.js.map +1 -0
- package/dist/core/workflow-context.d.ts +57 -0
- package/dist/core/workflow-context.d.ts.map +1 -0
- package/dist/core/workflow-context.js +263 -0
- package/dist/core/workflow-context.js.map +1 -0
- package/dist/core/workflow.d.ts +241 -0
- package/dist/core/workflow.d.ts.map +1 -0
- package/dist/core/workflow.js +464 -0
- package/dist/core/workflow.js.map +1 -0
- package/dist/debugger/index.d.ts +2 -0
- package/dist/debugger/index.d.ts.map +1 -0
- package/{src/debugger/index.ts → dist/debugger/index.js} +1 -0
- package/dist/debugger/index.js.map +1 -0
- package/dist/debugger/tree-debugger.d.ts +71 -0
- package/dist/debugger/tree-debugger.d.ts.map +1 -0
- package/dist/debugger/tree-debugger.js +198 -0
- package/dist/debugger/tree-debugger.js.map +1 -0
- package/dist/decorators/index.d.ts +4 -0
- package/dist/decorators/index.d.ts.map +1 -0
- package/{src/decorators/index.ts → dist/decorators/index.js} +1 -0
- package/dist/decorators/index.js.map +1 -0
- package/dist/decorators/observed-state.d.ts +32 -0
- package/dist/decorators/observed-state.d.ts.map +1 -0
- package/dist/decorators/observed-state.js +79 -0
- package/dist/decorators/observed-state.js.map +1 -0
- package/dist/decorators/step.d.ts +15 -0
- package/dist/decorators/step.d.ts.map +1 -0
- package/dist/decorators/step.js +110 -0
- package/dist/decorators/step.js.map +1 -0
- package/dist/decorators/task.d.ts +50 -0
- package/dist/decorators/task.d.ts.map +1 -0
- package/dist/decorators/task.js +118 -0
- package/dist/decorators/task.js.map +1 -0
- package/dist/examples/index.d.ts +3 -0
- package/dist/examples/index.d.ts.map +1 -0
- package/{src/examples/index.ts → dist/examples/index.js} +1 -0
- package/dist/examples/index.js.map +1 -0
- package/dist/examples/tdd-orchestrator.d.ts +15 -0
- package/dist/examples/tdd-orchestrator.d.ts.map +1 -0
- package/dist/examples/tdd-orchestrator.js +121 -0
- package/dist/examples/tdd-orchestrator.js.map +1 -0
- package/dist/examples/test-cycle-workflow.d.ts +14 -0
- package/dist/examples/test-cycle-workflow.d.ts.map +1 -0
- package/dist/examples/test-cycle-workflow.js +116 -0
- package/dist/examples/test-cycle-workflow.js.map +1 -0
- package/dist/index.d.ts +27 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +40 -0
- package/dist/index.js.map +1 -0
- package/dist/reflection/index.d.ts +5 -0
- package/dist/reflection/index.d.ts.map +1 -0
- package/{src/reflection/index.ts → dist/reflection/index.js} +1 -1
- package/dist/reflection/index.js.map +1 -0
- package/dist/reflection/reflection.d.ts +84 -0
- package/dist/reflection/reflection.d.ts.map +1 -0
- package/dist/reflection/reflection.js +329 -0
- package/dist/reflection/reflection.js.map +1 -0
- package/dist/tools/index.d.ts +6 -0
- package/dist/tools/index.d.ts.map +1 -0
- package/dist/tools/index.js +11 -0
- package/dist/tools/index.js.map +1 -0
- package/dist/tools/introspection.d.ts +165 -0
- package/dist/tools/introspection.d.ts.map +1 -0
- package/dist/tools/introspection.js +324 -0
- package/dist/tools/introspection.js.map +1 -0
- package/dist/types/agent.d.ts +66 -0
- package/dist/types/agent.d.ts.map +1 -0
- package/dist/types/agent.js +6 -0
- package/dist/types/agent.js.map +1 -0
- package/dist/types/decorators.d.ts +31 -0
- package/dist/types/decorators.d.ts.map +1 -0
- package/dist/types/decorators.js +2 -0
- package/dist/types/decorators.js.map +1 -0
- package/dist/types/error-strategy.d.ts +13 -0
- package/dist/types/error-strategy.d.ts.map +1 -0
- package/dist/types/error-strategy.js +2 -0
- package/dist/types/error-strategy.js.map +1 -0
- package/dist/types/error.d.ts +20 -0
- package/dist/types/error.d.ts.map +1 -0
- package/dist/types/error.js +2 -0
- package/dist/types/error.js.map +1 -0
- package/dist/types/events.d.ts +87 -0
- package/dist/types/events.d.ts.map +1 -0
- package/dist/types/events.js +2 -0
- package/dist/types/events.js.map +1 -0
- package/dist/types/index.d.ts +15 -0
- package/dist/types/index.d.ts.map +1 -0
- package/dist/types/index.js +2 -0
- package/dist/types/index.js.map +1 -0
- package/dist/types/logging.d.ts +24 -0
- package/dist/types/logging.d.ts.map +1 -0
- package/dist/types/logging.js +2 -0
- package/dist/types/logging.js.map +1 -0
- package/dist/types/observer.d.ts +18 -0
- package/dist/types/observer.d.ts.map +1 -0
- package/dist/types/observer.js +2 -0
- package/dist/types/observer.js.map +1 -0
- package/dist/types/prompt.d.ts +31 -0
- package/dist/types/prompt.d.ts.map +1 -0
- package/dist/types/prompt.js +6 -0
- package/dist/types/prompt.js.map +1 -0
- package/dist/types/reflection.d.ts +96 -0
- package/dist/types/reflection.d.ts.map +1 -0
- package/dist/types/reflection.js +24 -0
- package/dist/types/reflection.js.map +1 -0
- package/dist/types/sdk-primitives.d.ts +118 -0
- package/dist/types/sdk-primitives.d.ts.map +1 -0
- package/dist/types/sdk-primitives.js +6 -0
- package/dist/types/sdk-primitives.js.map +1 -0
- package/{src/types/snapshot.ts → dist/types/snapshot.d.ts} +5 -5
- package/dist/types/snapshot.d.ts.map +1 -0
- package/dist/types/snapshot.js +2 -0
- package/dist/types/snapshot.js.map +1 -0
- package/dist/types/workflow-context.d.ts +139 -0
- package/dist/types/workflow-context.d.ts.map +1 -0
- package/dist/types/workflow-context.js +8 -0
- package/dist/types/workflow-context.js.map +1 -0
- package/dist/types/workflow.d.ts +30 -0
- package/dist/types/workflow.d.ts.map +1 -0
- package/dist/types/workflow.js +2 -0
- package/dist/types/workflow.js.map +1 -0
- package/dist/utils/id.d.ts +6 -0
- package/dist/utils/id.d.ts.map +1 -0
- package/dist/utils/id.js +12 -0
- package/dist/utils/id.js.map +1 -0
- package/{src/utils/index.ts → dist/utils/index.d.ts} +1 -0
- package/dist/utils/index.d.ts.map +1 -0
- package/dist/utils/index.js +4 -0
- package/dist/utils/index.js.map +1 -0
- package/dist/utils/observable.d.ts +54 -0
- package/dist/utils/observable.d.ts.map +1 -0
- package/dist/utils/observable.js +82 -0
- package/dist/utils/observable.js.map +1 -0
- package/dist/utils/workflow-error-utils.d.ts +22 -0
- package/dist/utils/workflow-error-utils.d.ts.map +1 -0
- package/dist/utils/workflow-error-utils.js +45 -0
- package/dist/utils/workflow-error-utils.js.map +1 -0
- package/package.json +5 -2
- package/.claude/commands/subtask-planning/prp-base-create.md +0 -120
- package/.claude/commands/subtask-planning/prp-base-execute.md +0 -65
- package/.claude/commands/task-breakdown.md +0 -94
- package/.claude/settings.local.json +0 -9
- package/.claude/system_prompts/task-breakdown.md +0 -101
- package/PRD.md +0 -543
- package/PRPs/001-hierarchical-workflow-engine.md +0 -2438
- package/PRPs/PRDs/002-agent-prompt.md +0 -390
- package/PRPs/PRDs/003-agent-prompt.md +0 -943
- package/PRPs/PRDs/004-agent-prompt.md +0 -1136
- package/PRPs/PRDs/tasks-001.json +0 -492
- package/PRPs/README.md +0 -83
- package/PRPs/templates/prp_base.md +0 -222
- package/docs/agent.md +0 -422
- package/docs/prompt.md +0 -419
- package/docs/workflow.md +0 -600
- package/examples/README.md +0 -258
- package/examples/examples/01-basic-workflow.ts +0 -100
- package/examples/examples/02-decorator-options.ts +0 -217
- package/examples/examples/03-parent-child.ts +0 -241
- package/examples/examples/04-observers-debugger.ts +0 -340
- package/examples/examples/05-error-handling.ts +0 -387
- package/examples/examples/06-concurrent-tasks.ts +0 -352
- package/examples/examples/07-agent-loops.ts +0 -432
- package/examples/examples/08-sdk-features.ts +0 -667
- package/examples/examples/09-reflection.ts +0 -573
- package/examples/examples/10-introspection.ts +0 -550
- package/examples/examples/11-reparenting-workflows.ts +0 -269
- package/examples/index.ts +0 -147
- package/examples/utils/helpers.ts +0 -57
- package/package-lock.json +0 -2398
- package/plan/001_d3bb02af4886/TEST_RESULTS.md +0 -259
- package/plan/001_d3bb02af4886/backlog.json +0 -867
- package/plan/001_d3bb02af4886/bug_fix_tasks.json +0 -484
- package/plan/001_d3bb02af4886/bugfix/001_e8e04329daf3/P1M1T1S1/PRP.md +0 -488
- package/plan/001_d3bb02af4886/bugfix/001_e8e04329daf3/P1M1T1S2/PRP.md +0 -581
- package/plan/001_d3bb02af4886/bugfix/001_e8e04329daf3/P1M1T1S3/PRP.md +0 -687
- package/plan/001_d3bb02af4886/bugfix/001_e8e04329daf3/P1M2T1S1/PRP.md +0 -492
- package/plan/001_d3bb02af4886/bugfix/001_e8e04329daf3/P1M2T1S3/PRP.md +0 -932
- package/plan/001_d3bb02af4886/bugfix/001_e8e04329daf3/P1M2T1S3/research/concurrent_error_testing_patterns.md +0 -1109
- package/plan/001_d3bb02af4886/bugfix/001_e8e04329daf3/P1M2T1S3/research/vitest_concurrent_testing.md +0 -802
- package/plan/001_d3bb02af4886/bugfix/001_e8e04329daf3/P1M2T1S3/research/workflow_engine_test_references.md +0 -603
- package/plan/001_d3bb02af4886/bugfix/001_e8e04329daf3/P1M2T2S1/PRP.md +0 -564
- package/plan/001_d3bb02af4886/bugfix/001_e8e04329daf3/P1M2T2S3/PRP.md +0 -518
- package/plan/001_d3bb02af4886/bugfix/001_e8e04329daf3/P1M2T2S4/PRP.md +0 -1252
- package/plan/001_d3bb02af4886/bugfix/001_e8e04329daf3/P1M2T3S1/PRP.md +0 -364
- package/plan/001_d3bb02af4886/bugfix/001_e8e04329daf3/P1M2T3S1/research/CODEBASE_INVENTORY.md +0 -114
- package/plan/001_d3bb02af4886/bugfix/001_e8e04329daf3/P1M2T3S1/research/DECORATOR_DOCUMENTATION_PATTERNS.md +0 -205
- package/plan/001_d3bb02af4886/bugfix/001_e8e04329daf3/P1M2T3S1/research/PRD_LOCATION_ANALYSIS.md +0 -199
- package/plan/001_d3bb02af4886/bugfix/001_e8e04329daf3/P1M2T3S1/research/ULTRATHINK_PRP_PLAN.md +0 -134
- package/plan/001_d3bb02af4886/bugfix/001_e8e04329daf3/P1M3T1S1/PRP.md +0 -495
- package/plan/001_d3bb02af4886/bugfix/001_e8e04329daf3/P1M3T1S1/research/console_error_inventory.md +0 -435
- package/plan/001_d3bb02af4886/bugfix/001_e8e04329daf3/P1M3T1S2/PRP.md +0 -506
- package/plan/001_d3bb02af4886/bugfix/001_e8e04329daf3/P1M3T1S3/PRP.md +0 -612
- package/plan/001_d3bb02af4886/bugfix/001_e8e04329daf3/P1M3T2S2/PRP.md +0 -558
- package/plan/001_d3bb02af4886/bugfix/001_e8e04329daf3/P1M3T2S2/research/external_research.md +0 -788
- package/plan/001_d3bb02af4886/bugfix/001_e8e04329daf3/P1M3T3S2/PRP.md +0 -460
- package/plan/001_d3bb02af4886/bugfix/001_e8e04329daf3/P1M3T3S3/PRP.md +0 -454
- package/plan/001_d3bb02af4886/bugfix/001_e8e04329daf3/P1M3T4S1/PRP.md +0 -520
- package/plan/001_d3bb02af4886/bugfix/001_e8e04329daf3/P1M3T4S1/RECOMMENDATION.md +0 -417
- package/plan/001_d3bb02af4886/bugfix/001_e8e04329daf3/P1M3T4S1/research/external_workflow_engines_research.md +0 -760
- package/plan/001_d3bb02af4886/bugfix/001_e8e04329daf3/P1M3T4S1/research/security_implications_analysis.md +0 -245
- package/plan/001_d3bb02af4886/bugfix/001_e8e04329daf3/P1M3T4S2/PRP.md +0 -792
- package/plan/001_d3bb02af4886/bugfix/001_e8e04329daf3/P1M4T1S1/PRP.md +0 -535
- package/plan/001_d3bb02af4886/bugfix/001_e8e04329daf3/P1M4T1S1/TEST_EXECUTION_REPORT.md +0 -190
- package/plan/001_d3bb02af4886/bugfix/001_e8e04329daf3/P1M4T1S2/PRP.md +0 -654
- package/plan/001_d3bb02af4886/bugfix/001_e8e04329daf3/P1M4T1S2/TEST_FIX_REPORT.md +0 -227
- package/plan/001_d3bb02af4886/bugfix/001_e8e04329daf3/P1M4T1S2/research/KEY_FINDINGS.md +0 -345
- package/plan/001_d3bb02af4886/bugfix/001_e8e04329daf3/P1M4T1S2/research/QUICK_REFERENCE.md +0 -193
- package/plan/001_d3bb02af4886/bugfix/001_e8e04329daf3/P1M4T1S2/research/test_maintenance_research.md +0 -1323
- package/plan/001_d3bb02af4886/bugfix/001_e8e04329daf3/P1M4T3S1/BREAKING_CHANGES_AUDIT.md +0 -1011
- package/plan/001_d3bb02af4886/bugfix/001_e8e04329daf3/P1M4T3S1/PRP.md +0 -927
- package/plan/001_d3bb02af4886/bugfix/001_e8e04329daf3/P1M4T3S2/PRP.md +0 -505
- package/plan/001_d3bb02af4886/bugfix/001_e8e04329daf3/architecture/logger_child_signature_analysis.md +0 -401
- package/plan/001_d3bb02af4886/bugfix/001_e8e04329daf3/docs/P1M1T1S3/child_implementation_research.md +0 -142
- package/plan/001_d3bb02af4886/bugfix/001_e8e04329daf3/docs/P1M1T1S3/test_patterns_research.md +0 -112
- package/plan/001_d3bb02af4886/bugfix/001_e8e04329daf3/docs/P1M1T1S3/vitest_patterns_research.md +0 -159
- package/plan/001_d3bb02af4886/bugfix/001_e8e04329daf3/docs/P1M1T1S4/PRP.md +0 -549
- package/plan/001_d3bb02af4886/bugfix/001_e8e04329daf3/docs/P1M1T1S4/VERIFICATION_REPORT.md +0 -368
- package/plan/001_d3bb02af4886/bugfix/001_e8e04329daf3/docs/P1M1T1S4/edge_case_analysis.md +0 -172
- package/plan/001_d3bb02af4886/bugfix/001_e8e04329daf3/docs/P1M1T1S4/usage_inventory.md +0 -175
- package/plan/001_d3bb02af4886/bugfix/001_e8e04329daf3/docs/P1M2T1S2/PRP.md +0 -696
- package/plan/001_d3bb02af4886/bugfix/001_e8e04329daf3/docs/P1M2T1S4/PRP.md +0 -860
- package/plan/001_d3bb02af4886/bugfix/001_e8e04329daf3/docs/P1M2T2S2/PRP.md +0 -1066
- package/plan/001_d3bb02af4886/bugfix/001_e8e04329daf3/docs/P1M2T2S2/research/01-testing-aggregated-errors.md +0 -1103
- package/plan/001_d3bb02af4886/bugfix/001_e8e04329daf3/docs/P1M2T2S2/research/01_typescript_error_aggregation_patterns.md +0 -789
- package/plan/001_d3bb02af4886/bugfix/001_e8e04329daf3/docs/P1M2T2S2/research/02-error-merge-strategy-testing-guide.md +0 -1098
- package/plan/001_d3bb02af4886/bugfix/001_e8e04329daf3/docs/P1M2T2S2/research/02_aggregate_error_patterns.md +0 -1037
- package/plan/001_d3bb02af4886/bugfix/001_e8e04329daf3/docs/P1M2T2S2/research/03-promise-allsettled-testing-patterns.md +0 -916
- package/plan/001_d3bb02af4886/bugfix/001_e8e04329daf3/docs/P1M2T2S2/research/03_error_merging_strategies.md +0 -1045
- package/plan/001_d3bb02af4886/bugfix/001_e8e04329daf3/docs/P1M2T2S2/research/04_github_stackoverflow_examples.md +0 -890
- package/plan/001_d3bb02af4886/bugfix/001_e8e04329daf3/docs/P1M2T2S2/research/05_comprehensive_summary.md +0 -822
- package/plan/001_d3bb02af4886/bugfix/001_e8e04329daf3/docs/P1M2T2S2/research/INDEX.md +0 -668
- package/plan/001_d3bb02af4886/bugfix/001_e8e04329daf3/docs/P1M2T2S2/research/QUICK_REFERENCE.md +0 -706
- package/plan/001_d3bb02af4886/bugfix/001_e8e04329daf3/docs/P1M2T2S2/research/README.md +0 -265
- package/plan/001_d3bb02af4886/bugfix/001_e8e04329daf3/docs/P1M2T2S2/research/RESEARCH_REPORT.md +0 -655
- package/plan/001_d3bb02af4886/bugfix/001_e8e04329daf3/docs/P1M2T2S4/research/vitest_testing_patterns.md +0 -1103
- package/plan/001_d3bb02af4886/bugfix/001_e8e04329daf3/docs/P1M2T3S2/PRP.md +0 -426
- package/plan/001_d3bb02af4886/bugfix/001_e8e04329daf3/docs/P1M3T1S2/PRP.md +0 -506
- package/plan/001_d3bb02af4886/bugfix/001_e8e04329daf3/docs/P1M3T1S2/research/QUICK_REFERENCE.md +0 -114
- package/plan/001_d3bb02af4886/bugfix/001_e8e04329daf3/docs/P1M3T1S2/research/RESEARCH_SUMMARY.md +0 -316
- package/plan/001_d3bb02af4886/bugfix/001_e8e04329daf3/docs/P1M3T1S2/research/vitest_observer_error_logging_best_practices.md +0 -754
- package/plan/001_d3bb02af4886/bugfix/001_e8e04329daf3/docs/P1M3T1S3/PRP.md +0 -612
- package/plan/001_d3bb02af4886/bugfix/001_e8e04329daf3/docs/P1M3T2S1/PRP.md +0 -719
- package/plan/001_d3bb02af4886/bugfix/001_e8e04329daf3/docs/P1M3T2S1/README.md +0 -215
- package/plan/001_d3bb02af4886/bugfix/001_e8e04329daf3/docs/P1M3T2S1/analysis.md +0 -765
- package/plan/001_d3bb02af4886/bugfix/001_e8e04329daf3/docs/P1M3T2S3/PRP.md +0 -718
- package/plan/001_d3bb02af4886/bugfix/001_e8e04329daf3/docs/P1M3T3S1/DECISION.md +0 -149
- package/plan/001_d3bb02af4886/bugfix/001_e8e04329daf3/docs/P1M3T3S1/PRP.md +0 -470
- package/plan/001_d3bb02af4886/bugfix/001_e8e04329daf3/docs/P1M3T3S1/research/ULTRATHINK_PLAN.md +0 -332
- package/plan/001_d3bb02af4886/bugfix/001_e8e04329daf3/docs/P1M3T3S1/research/codebase_workflow_name_analysis.md +0 -167
- package/plan/001_d3bb02af4886/bugfix/001_e8e04329daf3/docs/P1M3T3S1/research/external_best_practices.md +0 -265
- package/plan/001_d3bb02af4886/bugfix/001_e8e04329daf3/docs/P1M3T3S1/research/validation_patterns.md +0 -273
- package/plan/001_d3bb02af4886/bugfix/001_e8e04329daf3/docs/P1M3T4S1/workflow_engine_ancestry_api_research.md +0 -760
- package/plan/001_d3bb02af4886/bugfix/001_e8e04329daf3/docs/P1M3T4S3-PRP.md +0 -434
- package/plan/001_d3bb02af4886/bugfix/001_e8e04329daf3/docs/P1M4T2S1/PRP.md +0 -717
- package/plan/001_d3bb02af4886/bugfix/001_e8e04329daf3/docs/P1M4T2S2/PRP.md +0 -472
- package/plan/001_d3bb02af4886/bugfix/001_e8e04329daf3/docs/P1M4T2S2/VALIDATION_REPORT.md +0 -125
- package/plan/001_d3bb02af4886/bugfix/001_e8e04329daf3/docs/P1M4T2S2/research/ULTRATHINK_PRP_PLAN.md +0 -301
- package/plan/001_d3bb02af4886/bugfix/001_e8e04329daf3/docs/error-logging-best-practices.md +0 -1170
- package/plan/001_d3bb02af4886/bugfix/001_e8e04329daf3/docs/research_typescript_partial_and_overloads.md +0 -940
- package/plan/001_d3bb02af4886/bugfix/001_e8e04329daf3/docs/vitest-quick-reference.md +0 -151
- package/plan/001_d3bb02af4886/bugfix/001_e8e04329daf3/docs/vitest-research.md +0 -650
- package/plan/001_d3bb02af4886/bugfix/001_e8e04329daf3/prd_snapshot.md +0 -259
- package/plan/001_d3bb02af4886/bugfix/P1M1T1S1/PRP.md +0 -457
- package/plan/001_d3bb02af4886/bugfix/RESEARCH_SUMMARY.md +0 -346
- package/plan/001_d3bb02af4886/bugfix/architecture/codebase_structure.md +0 -311
- package/plan/001_d3bb02af4886/bugfix/architecture/concurrent_execution_best_practices.md +0 -1565
- package/plan/001_d3bb02af4886/bugfix/architecture/error_handling_patterns.md +0 -288
- package/plan/001_d3bb02af4886/bugfix/architecture/promise_all_analysis.md +0 -741
- package/plan/001_d3bb02af4886/docs/PRP/P1M1T1S4-functional-workflow-error-state-capture-test.md +0 -652
- package/plan/001_d3bb02af4886/docs/PRP/P1P2-PRP.md +0 -527
- package/plan/001_d3bb02af4886/docs/PRP/P3P4-PRP.md +0 -1388
- package/plan/001_d3bb02af4886/docs/PRP/P4P5-PRP.md +0 -1136
- package/plan/001_d3bb02af4886/docs/PRP/PRP.md +0 -527
- package/plan/001_d3bb02af4886/docs/PRP/bugfix/P1M1T2S1-PRP.md +0 -415
- package/plan/001_d3bb02af4886/docs/PRP/bugfix/P1M1T2S2-PRP.md +0 -378
- package/plan/001_d3bb02af4886/docs/PRP/bugfix/P1M1T2S4-PRP.md +0 -713
- package/plan/001_d3bb02af4886/docs/PRP/bugfix/P1M2T1S4-PRP.md +0 -370
- package/plan/001_d3bb02af4886/docs/PRP_P1M3T1S3.md +0 -499
- package/plan/001_d3bb02af4886/docs/TEST_RESULTS.md +0 -230
- package/plan/001_d3bb02af4886/docs/architecture/external_deps.md +0 -358
- package/plan/001_d3bb02af4886/docs/architecture/system_context.md +0 -242
- package/plan/001_d3bb02af4886/docs/bugfix/ANALYSIS_PRD_VS_IMPLEMENTATION.md +0 -1134
- package/plan/001_d3bb02af4886/docs/bugfix/GAP_ANALYSIS_SUMMARY.md +0 -179
- package/plan/001_d3bb02af4886/docs/bugfix/P1M4T2S1/PRP.md +0 -629
- package/plan/001_d3bb02af4886/docs/bugfix/P1M4T2S1/validation-report.md +0 -214
- package/plan/001_d3bb02af4886/docs/bugfix/PRP_P1M4T2S3.md +0 -629
- package/plan/001_d3bb02af4886/docs/bugfix/bugfix_PRP.md +0 -529
- package/plan/001_d3bb02af4886/docs/bugfix/bugfix_QUICK_REFERENCE.md +0 -142
- package/plan/001_d3bb02af4886/docs/bugfix/bugfix_README.md +0 -304
- package/plan/001_d3bb02af4886/docs/bugfix/bugfix_TEST_RESULTS.md +0 -558
- package/plan/001_d3bb02af4886/docs/bugfix/bugfix_VALIDATION_SUMMARY.md +0 -256
- package/plan/001_d3bb02af4886/docs/bugfix/system_context.md +0 -346
- package/plan/001_d3bb02af4886/docs/bugfix-architecture/bug_analysis.md +0 -415
- package/plan/001_d3bb02af4886/docs/bugfix-architecture/implementation_patterns.md +0 -489
- package/plan/001_d3bb02af4886/docs/bugfix-architecture/system_context.md +0 -218
- package/plan/001_d3bb02af4886/docs/bugfix_INITIATION_SUMMARY.md +0 -380
- package/plan/001_d3bb02af4886/docs/research/CYCLE_DETECTION_PATTERNS.md +0 -1923
- package/plan/001_d3bb02af4886/docs/research/CYCLE_DETECTION_QUICK_REF.md +0 -319
- package/plan/001_d3bb02af4886/docs/research/P1M1T2S1/codebase-context.md +0 -115
- package/plan/001_d3bb02af4886/docs/research/P1M1T2S1/cycle-detection-algorithms.md +0 -134
- package/plan/001_d3bb02af4886/docs/research/P1M1T2S1/test-patterns.md +0 -153
- package/plan/001_d3bb02af4886/docs/research/P1M1T2S1/workflow-class.md +0 -132
- package/plan/001_d3bb02af4886/docs/research/P1M2T1S4/DECORATOR_DOCUMENTATION_BEST_PRACTICES.md +0 -716
- package/plan/001_d3bb02af4886/docs/research/P1M2T1S4/DECORATOR_DOCUMENTATION_QUICK_REF.md +0 -186
- package/plan/001_d3bb02af4886/docs/research/P1M2T1S4/GROUNDSWELL_DECORATOR_EXAMPLES.md +0 -604
- package/plan/001_d3bb02af4886/docs/research/P1M2T1S4/INDEX.md +0 -213
- package/plan/001_d3bb02af4886/docs/research/P1M2T1S4/codebase_structure.md +0 -30
- package/plan/001_d3bb02af4886/docs/research/P1M2T1S4/existing_test_pattern.md +0 -56
- package/plan/001_d3bb02af4886/docs/research/P1M2T1S4/getRootObservers_implementation.md +0 -53
- package/plan/001_d3bb02af4886/docs/research/P1M2T1S4/test_conventions.md +0 -49
- package/plan/001_d3bb02af4886/docs/research/P1M3T1S4/PRP.md +0 -958
- package/plan/001_d3bb02af4886/docs/research/P1M3T1S4/QUICK_REFERENCE.md +0 -339
- package/plan/001_d3bb02af4886/docs/research/P1M3T1S4/README.md +0 -305
- package/plan/001_d3bb02af4886/docs/research/P1M3T1S4/SUMMARY.md +0 -433
- package/plan/001_d3bb02af4886/docs/research/P1M3T1S4/bidirectional-tree-consistency-testing.md +0 -1574
- package/plan/001_d3bb02af4886/docs/research/P1M3T1S4/test-pattern-examples.md +0 -1014
- package/plan/001_d3bb02af4886/docs/research/P1P2/LRU_CACHE_BEST_PRACTICES.md +0 -1929
- package/plan/001_d3bb02af4886/docs/research/P1P2/LRU_CACHE_CODE_PATTERNS.md +0 -857
- package/plan/001_d3bb02af4886/docs/research/P1P2/LRU_CACHE_INTEGRATION_GUIDE.md +0 -738
- package/plan/001_d3bb02af4886/docs/research/P1P2/LRU_CACHE_RESEARCH_INDEX.md +0 -424
- package/plan/001_d3bb02af4886/docs/research/P1P2/REFLECTION_INDEX.md +0 -291
- package/plan/001_d3bb02af4886/docs/research/P1P2/REFLECTION_RESEARCH_REPORT.md +0 -1342
- package/plan/001_d3bb02af4886/docs/research/P1P2/RESEARCH_SUMMARY.md +0 -342
- package/plan/001_d3bb02af4886/docs/research/P1P2/anthropic-sdk.md +0 -174
- package/plan/001_d3bb02af4886/docs/research/P1P2/async-local-storage.md +0 -200
- package/plan/001_d3bb02af4886/docs/research/P1P2/reflection-code-patterns.md +0 -1205
- package/plan/001_d3bb02af4886/docs/research/P1P2/reflection-decision-matrix.md +0 -421
- package/plan/001_d3bb02af4886/docs/research/P1P2/reflection-implementation-guide.md +0 -1341
- package/plan/001_d3bb02af4886/docs/research/P1P2/reflection-integration-guide.md +0 -834
- package/plan/001_d3bb02af4886/docs/research/P1P2/reflection-patterns.md +0 -1468
- package/plan/001_d3bb02af4886/docs/research/P1P2/reflection-quick-reference.md +0 -558
- package/plan/001_d3bb02af4886/docs/research/P1P2/zod-schema.md +0 -152
- package/plan/001_d3bb02af4886/docs/research/P3P4/caching-lru.md +0 -116
- package/plan/001_d3bb02af4886/docs/research/P3P4/introspection-tools.md +0 -177
- package/plan/001_d3bb02af4886/docs/research/P3P4/reflection-patterns.md +0 -117
- package/plan/001_d3bb02af4886/docs/research/P4P5/RESEARCH_SUMMARY.md +0 -151
- package/plan/001_d3bb02af4886/docs/research/PROMISE_ALLSETTLED_QUICK_REF.md +0 -376
- package/plan/001_d3bb02af4886/docs/research/PROMISE_ALLSETTLED_RESEARCH.md +0 -1507
- package/plan/001_d3bb02af4886/docs/research/bugfix_typescript_patterns.md +0 -949
- package/plan/001_d3bb02af4886/docs/research/error-testing-research.md +0 -619
- package/plan/001_d3bb02af4886/docs/research/error_handling_patterns.md +0 -723
- package/plan/001_d3bb02af4886/docs/research/general/INTROSPECTION_RESEARCH_SUMMARY.md +0 -378
- package/plan/001_d3bb02af4886/docs/research/general/README-INTROSPECTION.md +0 -352
- package/plan/001_d3bb02af4886/docs/research/general/agent-introspection-patterns.md +0 -1085
- package/plan/001_d3bb02af4886/docs/research/general/introspection-security-guide.md +0 -984
- package/plan/001_d3bb02af4886/docs/research/general/introspection-tool-examples.md +0 -875
- package/plan/001_d3bb02af4886/docs/research/incremental-tree-map-updates/PRP_TEMPLATE.md +0 -460
- package/plan/001_d3bb02af4886/docs/research/incremental-tree-map-updates/QUICK_REFERENCE.md +0 -324
- package/plan/001_d3bb02af4886/docs/research/incremental-tree-map-updates/README.md +0 -175
- package/plan/001_d3bb02af4886/docs/research/incremental-tree-map-updates/RESEARCH_REPORT.md +0 -499
- package/plan/001_d3bb02af4886/docs/research/incremental-tree-map-updates/SUMMARY.md +0 -163
- package/plan/001_d3bb02af4886/prd_snapshot.md +0 -543
- package/plan/bugfix/BUG_FIX_SUMMARY.md +0 -961
- package/scripts/generate-llms-full.ts +0 -206
- package/src/__tests__/adversarial/attachChild-performance.test.ts +0 -216
- package/src/__tests__/adversarial/circular-reference.test.ts +0 -101
- package/src/__tests__/adversarial/complex-circular-reference.test.ts +0 -139
- package/src/__tests__/adversarial/concurrent-task-failures.test.ts +0 -571
- package/src/__tests__/adversarial/deep-analysis.test.ts +0 -729
- package/src/__tests__/adversarial/deep-hierarchy-stress.test.ts +0 -213
- package/src/__tests__/adversarial/e2e-prd-validation.test.ts +0 -448
- package/src/__tests__/adversarial/edge-case.test.ts +0 -703
- package/src/__tests__/adversarial/error-merge-strategy.test.ts +0 -760
- package/src/__tests__/adversarial/incremental-performance.test.ts +0 -140
- package/src/__tests__/adversarial/node-map-update-benchmarks.test.ts +0 -457
- package/src/__tests__/adversarial/observer-propagation.test.ts +0 -487
- package/src/__tests__/adversarial/parent-validation.test.ts +0 -143
- package/src/__tests__/adversarial/prd-12-2-compliance.test.ts +0 -611
- package/src/__tests__/adversarial/prd-compliance.test.ts +0 -731
- package/src/__tests__/compatibility/backward-compatibility.test.ts +0 -1572
- package/src/__tests__/helpers/tree-verification.ts +0 -257
- package/src/__tests__/integration/agent-workflow.test.ts +0 -256
- package/src/__tests__/integration/bidirectional-consistency.test.ts +0 -847
- package/src/__tests__/integration/observer-logging.test.ts +0 -643
- package/src/__tests__/integration/tree-mirroring.test.ts +0 -151
- package/src/__tests__/integration/workflow-reparenting.test.ts +0 -303
- package/src/__tests__/unit/agent.test.ts +0 -169
- package/src/__tests__/unit/cache-key.test.ts +0 -182
- package/src/__tests__/unit/cache.test.ts +0 -172
- package/src/__tests__/unit/context.test.ts +0 -217
- package/src/__tests__/unit/decorators.test.ts +0 -100
- package/src/__tests__/unit/introspection-tools.test.ts +0 -277
- package/src/__tests__/unit/logger.test.ts +0 -293
- package/src/__tests__/unit/observable.test.ts +0 -321
- package/src/__tests__/unit/prompt.test.ts +0 -135
- package/src/__tests__/unit/reflection.test.ts +0 -210
- package/src/__tests__/unit/tree-debugger-incremental.test.ts +0 -170
- package/src/__tests__/unit/tree-debugger.test.ts +0 -85
- package/src/__tests__/unit/utils/workflow-error-utils.test.ts +0 -209
- package/src/__tests__/unit/workflow-detachChild.test.ts +0 -100
- package/src/__tests__/unit/workflow-emitEvent-childDetached.test.ts +0 -153
- package/src/__tests__/unit/workflow-isDescendantOf.test.ts +0 -180
- package/src/__tests__/unit/workflow.test.ts +0 -357
- package/src/cache/cache-key.ts +0 -244
- package/src/cache/cache.ts +0 -236
- package/src/core/agent.ts +0 -593
- package/src/core/event-tree.ts +0 -260
- package/src/core/logger.ts +0 -112
- package/src/core/mcp-handler.ts +0 -184
- package/src/core/prompt.ts +0 -150
- package/src/core/workflow-context.ts +0 -351
- package/src/core/workflow.ts +0 -540
- package/src/debugger/tree-debugger.ts +0 -255
- package/src/decorators/observed-state.ts +0 -95
- package/src/decorators/step.ts +0 -139
- package/src/decorators/task.ts +0 -159
- package/src/examples/tdd-orchestrator.ts +0 -65
- package/src/examples/test-cycle-workflow.ts +0 -64
- package/src/index.ts +0 -142
- package/src/reflection/reflection.ts +0 -407
- package/src/tools/index.ts +0 -36
- package/src/tools/introspection.ts +0 -464
- package/src/types/agent.ts +0 -90
- package/src/types/decorators.ts +0 -32
- package/src/types/error-strategy.ts +0 -13
- package/src/types/error.ts +0 -20
- package/src/types/events.ts +0 -75
- package/src/types/index.ts +0 -55
- package/src/types/logging.ts +0 -24
- package/src/types/observer.ts +0 -18
- package/src/types/prompt.ts +0 -40
- package/src/types/reflection.ts +0 -117
- package/src/types/sdk-primitives.ts +0 -128
- package/src/types/workflow-context.ts +0 -163
- package/src/types/workflow.ts +0 -37
- package/src/utils/id.ts +0 -11
- package/src/utils/observable.ts +0 -106
- package/src/utils/workflow-error-utils.ts +0 -56
- package/tsconfig.json +0 -22
- package/vitest.config.ts +0 -16
|
@@ -1,860 +0,0 @@
|
|
|
1
|
-
# PRP: P1.M2.T1.S4 - Run Full Test Suite to Ensure No Regressions
|
|
2
|
-
|
|
3
|
-
**Document Version:** 1.0
|
|
4
|
-
**Creation Date:** 2026-01-12
|
|
5
|
-
**Target:** Subtask P1.M2.T1.S4 - Run full test suite to ensure no regressions
|
|
6
|
-
**Primary Files:** Test execution (no new files), Validation of existing tests
|
|
7
|
-
|
|
8
|
-
---
|
|
9
|
-
|
|
10
|
-
## Goal
|
|
11
|
-
|
|
12
|
-
**Feature Goal**: Execute the complete test suite using the project's Vitest framework to verify that the Promise.allSettled implementation from S2 and the new concurrent task failure tests from S3 work correctly without introducing any regressions to the existing 387 tests across the codebase.
|
|
13
|
-
|
|
14
|
-
**Deliverable**: Full test suite execution with documented results showing:
|
|
15
|
-
1. All existing tests still pass (100% pass rate maintained)
|
|
16
|
-
2. New concurrent-task-failures.test.ts tests pass
|
|
17
|
-
3. No regressions introduced by Promise.allSettled changes
|
|
18
|
-
4. Documentation of any edge cases or issues encountered
|
|
19
|
-
|
|
20
|
-
**Success Definition**:
|
|
21
|
-
- Test suite executes successfully with `npm test` command
|
|
22
|
-
- All 387+ tests pass (existing tests + new S3 tests)
|
|
23
|
-
- Zero test failures or errors
|
|
24
|
-
- No regressions in existing functionality
|
|
25
|
-
- Promise.allSettled implementation validated through test coverage
|
|
26
|
-
|
|
27
|
-
---
|
|
28
|
-
|
|
29
|
-
## User Persona
|
|
30
|
-
|
|
31
|
-
**Target User**: Development team members, QA engineers, and maintainers who need to verify code changes don't break existing functionality.
|
|
32
|
-
|
|
33
|
-
**Use Case**: After implementing the Promise.allSettled change in S2 and adding comprehensive tests in S3, the full test suite must be run to ensure no regressions were introduced.
|
|
34
|
-
|
|
35
|
-
**User Journey**:
|
|
36
|
-
1. Developer runs `npm test` to execute the full test suite
|
|
37
|
-
2. Vitest runs all tests across unit, integration, and adversarial categories
|
|
38
|
-
3. Results show all tests passing with no failures
|
|
39
|
-
4. Developer gains confidence that the implementation is production-ready
|
|
40
|
-
|
|
41
|
-
**Pain Points Addressed**:
|
|
42
|
-
- Fear of breaking existing functionality when changing core concurrency logic
|
|
43
|
-
- Uncertainty about whether new tests properly validate the implementation
|
|
44
|
-
- Need for systematic validation before merging changes
|
|
45
|
-
|
|
46
|
-
---
|
|
47
|
-
|
|
48
|
-
## Why
|
|
49
|
-
|
|
50
|
-
- **Quality Assurance**: Ensures the Promise.allSettled migration from Promise.all doesn't break any existing concurrent execution patterns
|
|
51
|
-
- **Validation of S3 Tests**: Confirms the new concurrent-task-failures.test.ts tests work correctly and integrate with the existing test suite
|
|
52
|
-
- **Regression Prevention**: Catches any unintended side effects of the changes before they reach production
|
|
53
|
-
- **Confidence Building**: Provides objective proof that the codebase remains in a working state
|
|
54
|
-
- **PRD Compliance**: Validates that bug fix 001_e8e04329daf3 is fully resolved
|
|
55
|
-
|
|
56
|
-
---
|
|
57
|
-
|
|
58
|
-
## What
|
|
59
|
-
|
|
60
|
-
### User-Visible Behavior
|
|
61
|
-
|
|
62
|
-
**Test Execution**: The full test suite runs all 387+ tests using Vitest, providing clear output on pass/fail status for each test.
|
|
63
|
-
|
|
64
|
-
**Expected Results**:
|
|
65
|
-
- All existing tests continue to pass
|
|
66
|
-
- New concurrent-task-failures tests pass
|
|
67
|
-
- No errors or warnings related to the Promise.allSettled changes
|
|
68
|
-
- Clear summary output showing total tests passed
|
|
69
|
-
|
|
70
|
-
### Success Criteria
|
|
71
|
-
|
|
72
|
-
- [ ] All 387 existing tests pass (100% pass rate maintained)
|
|
73
|
-
- [ ] New concurrent-task-failures.test.ts tests (from S3) pass
|
|
74
|
-
- [ ] Zero test failures or errors in the full suite
|
|
75
|
-
- [ ] Promise.allSettled implementation validated through test coverage
|
|
76
|
-
- [ ] No regressions in existing concurrent execution patterns
|
|
77
|
-
- [ ] Test execution completes in reasonable time (no hanging tests)
|
|
78
|
-
- [ ] Document any edge cases or issues encountered during execution
|
|
79
|
-
|
|
80
|
-
---
|
|
81
|
-
|
|
82
|
-
## All Needed Context
|
|
83
|
-
|
|
84
|
-
### Context Completeness Check
|
|
85
|
-
|
|
86
|
-
**"No Prior Knowledge" Test**: If someone knew nothing about this codebase, would they have everything needed to implement this successfully?
|
|
87
|
-
|
|
88
|
-
**Answer**: YES - This PRP provides:
|
|
89
|
-
- Exact test command and execution pattern
|
|
90
|
-
- Complete test suite structure and file locations
|
|
91
|
-
- Expected test count (387+ tests)
|
|
92
|
-
- Vitest configuration details
|
|
93
|
-
- Promise.allSettled implementation context from S2
|
|
94
|
-
- New test file context from S3
|
|
95
|
-
- Troubleshooting steps for common issues
|
|
96
|
-
|
|
97
|
-
### Documentation & References
|
|
98
|
-
|
|
99
|
-
```yaml
|
|
100
|
-
# MUST READ - Test Configuration
|
|
101
|
-
- file: vitest.config.ts
|
|
102
|
-
why: Test runner configuration showing file patterns and globals
|
|
103
|
-
pattern: include: ['src/__tests__/**/*.test.ts'], globals: true
|
|
104
|
-
critical: Tests must match this pattern to be executed
|
|
105
|
-
|
|
106
|
-
- file: package.json
|
|
107
|
-
lines: 34-35
|
|
108
|
-
why: Test script definitions
|
|
109
|
-
command: "test": "vitest run", "test:watch": "vitest"
|
|
110
|
-
critical: Use `npm test` to run full suite
|
|
111
|
-
|
|
112
|
-
# S2 IMPLEMENTATION - What changed
|
|
113
|
-
- file: src/decorators/task.ts
|
|
114
|
-
lines: 111-120
|
|
115
|
-
why: Promise.allSettled implementation that needs validation
|
|
116
|
-
pattern: const results = await Promise.allSettled(runnable.map((w) => w.run()));
|
|
117
|
-
critical: This change replaced Promise.all and needs test verification
|
|
118
|
-
|
|
119
|
-
# S3 NEW TESTS - What was added
|
|
120
|
-
- file: src/__tests__/adversarial/concurrent-task-failures.test.ts
|
|
121
|
-
why: New comprehensive test suite for concurrent failures
|
|
122
|
-
pattern: Tests for single/multiple failures, mixed scenarios, orphaned workflows
|
|
123
|
-
critical: These tests must pass as part of the full suite
|
|
124
|
-
|
|
125
|
-
# EXISTING TEST PATTERNS - For context
|
|
126
|
-
- file: src/__tests__/adversarial/edge-case.test.ts
|
|
127
|
-
lines: 366-430
|
|
128
|
-
why: Existing concurrent execution tests that must continue to pass
|
|
129
|
-
pattern: @Task({ concurrent: true }) usage with error handling
|
|
130
|
-
critical: These tests validate backward compatibility
|
|
131
|
-
|
|
132
|
-
- file: src/__tests__/adversarial/deep-hierarchy-stress.test.ts
|
|
133
|
-
lines: 297-324
|
|
134
|
-
why: Concurrent execution stress tests that must pass
|
|
135
|
-
pattern: Multiple child workflows with concurrent execution
|
|
136
|
-
critical: Validates Promise.allSettled doesn't break deep hierarchies
|
|
137
|
-
|
|
138
|
-
- file: src/__tests__/adversarial/observer-propagation.test.ts
|
|
139
|
-
why: Event emission tests that must continue to work
|
|
140
|
-
pattern: Event collection and verification during failures
|
|
141
|
-
critical: Ensures error events still emitted correctly
|
|
142
|
-
|
|
143
|
-
# VITEST DOCUMENTATION
|
|
144
|
-
- url: https://vitest.dev/guide/cli.html
|
|
145
|
-
why: Complete CLI reference for vitest commands
|
|
146
|
-
section: Command Line Interface
|
|
147
|
-
critical: --run, --watch, --reporter options
|
|
148
|
-
|
|
149
|
-
- url: https://vitest.dev/guide/reporters.html
|
|
150
|
-
why: Test output reporter options
|
|
151
|
-
section: Reporters
|
|
152
|
-
critical: Understanding test output format
|
|
153
|
-
|
|
154
|
-
# PROJECT ARCHITECTURE
|
|
155
|
-
- docfile: plan/001_d3bb02af4886/bugfix/001_e8e04329daf3/docs/P1M2T1S2/PRP.md
|
|
156
|
-
why: PRP for S2 implementation showing exact changes made
|
|
157
|
-
section: "Appendix: Complete Code Change Reference"
|
|
158
|
-
critical: Shows before/after of Promise.all to Promise.allSettled migration
|
|
159
|
-
|
|
160
|
-
- docfile: plan/001_d3bb02af4886/bugfix/001_e8e04329daf3/P1M2T1S3/PRP.md
|
|
161
|
-
why: PRP for S3 test implementation
|
|
162
|
-
section: "Success Metrics"
|
|
163
|
-
critical: Shows what tests were added and their expected behavior
|
|
164
|
-
```
|
|
165
|
-
|
|
166
|
-
### Current Codebase Tree (Test Structure)
|
|
167
|
-
|
|
168
|
-
```bash
|
|
169
|
-
/home/dustin/projects/groundswell
|
|
170
|
-
├── src/
|
|
171
|
-
│ └── __tests__/
|
|
172
|
-
│ ├── unit/ # 13 test files (unit tests)
|
|
173
|
-
│ │ ├── agent.test.ts
|
|
174
|
-
│ │ ├── cache-key.test.ts
|
|
175
|
-
│ │ ├── cache.test.ts
|
|
176
|
-
│ │ ├── context.test.ts
|
|
177
|
-
│ │ ├── decorators.test.ts
|
|
178
|
-
│ │ ├── introspection-tools.test.ts
|
|
179
|
-
│ │ ├── logger.test.ts
|
|
180
|
-
│ │ ├── prompt.test.ts
|
|
181
|
-
│ │ ├── reflection.test.ts
|
|
182
|
-
│ │ ├── tree-debugger.test.ts
|
|
183
|
-
│ │ ├── workflow-detachChild.test.ts
|
|
184
|
-
│ │ ├── workflow-emitEvent-childDetached.test.ts
|
|
185
|
-
│ │ └── workflow.test.ts
|
|
186
|
-
│ ├── integration/ # 4 test files (integration tests)
|
|
187
|
-
│ │ ├── agent-workflow.test.ts
|
|
188
|
-
│ │ ├── bidirectional-consistency.test.ts
|
|
189
|
-
│ │ ├── tree-mirroring.test.ts
|
|
190
|
-
│ │ └── workflow-reparenting.test.ts
|
|
191
|
-
│ └── adversarial/ # 12 test files (adversarial/stress tests)
|
|
192
|
-
│ ├── attachChild-performance.test.ts
|
|
193
|
-
│ ├── circular-reference.test.ts
|
|
194
|
-
│ ├── complex-circular-reference.test.ts
|
|
195
|
-
│ ├── concurrent-task-failures.test.ts # NEW from S3
|
|
196
|
-
│ ├── deep-analysis.test.ts
|
|
197
|
-
│ ├── deep-hierarchy-stress.test.ts
|
|
198
|
-
│ ├── e2e-prd-validation.test.ts
|
|
199
|
-
│ ├── edge-case.test.ts
|
|
200
|
-
│ ├── observer-propagation.test.ts
|
|
201
|
-
│ ├── parent-validation.test.ts
|
|
202
|
-
│ ├── prd-12-2-compliance.test.ts
|
|
203
|
-
│ └── prd-compliance.test.ts
|
|
204
|
-
├── vitest.config.ts # Test configuration
|
|
205
|
-
├── package.json # Test scripts: npm test, npm run test:watch
|
|
206
|
-
└── tsconfig.json # TypeScript configuration
|
|
207
|
-
```
|
|
208
|
-
|
|
209
|
-
### Test Count Breakdown
|
|
210
|
-
|
|
211
|
-
```yaml
|
|
212
|
-
TOTAL_TESTS: 387+ individual test cases
|
|
213
|
-
|
|
214
|
-
UNIT_TESTS:
|
|
215
|
-
- 13 test files
|
|
216
|
-
- Tests for individual components (decorators, workflow, logger, etc.)
|
|
217
|
-
- Fast execution, isolated testing
|
|
218
|
-
|
|
219
|
-
INTEGRATION_TESTS:
|
|
220
|
-
- 4 test files
|
|
221
|
-
- Tests for component interactions
|
|
222
|
-
- Medium execution time
|
|
223
|
-
|
|
224
|
-
ADVERSARIAL_TESTS:
|
|
225
|
-
- 12 test files (including new concurrent-task-failures.test.ts)
|
|
226
|
-
- Stress tests, edge cases, PRD compliance
|
|
227
|
-
- Longer execution time, comprehensive coverage
|
|
228
|
-
```
|
|
229
|
-
|
|
230
|
-
### Desired Codebase Tree with Files to be Added
|
|
231
|
-
|
|
232
|
-
```bash
|
|
233
|
-
# NO NEW FILES for this task
|
|
234
|
-
# This task executes existing tests only
|
|
235
|
-
# Output: Test results document (optional) or console output
|
|
236
|
-
```
|
|
237
|
-
|
|
238
|
-
### Known Gotchas of Our Codebase & Library Quirks
|
|
239
|
-
|
|
240
|
-
```typescript
|
|
241
|
-
// CRITICAL GOTCHA #1: Test file location and naming
|
|
242
|
-
// Tests MUST be in src/__tests__/ and end in .test.ts
|
|
243
|
-
// Vitest config pattern: include: ['src/__tests__/**/*.test.ts']
|
|
244
|
-
// If tests aren't discovered, check file location and extension
|
|
245
|
-
|
|
246
|
-
// CRITICAL GOTCHA #2: Use `npm test` not `vitest` directly
|
|
247
|
-
// package.json script: "test": "vitest run"
|
|
248
|
-
// Direct vitest command may use different config
|
|
249
|
-
// ALWAYS use npm test to ensure consistent behavior
|
|
250
|
-
|
|
251
|
-
// CRITICAL GOTCHA #3: TypeScript compilation happens before tests
|
|
252
|
-
// If TypeScript has errors, tests won't run
|
|
253
|
-
// Check `npx tsc --noEmit` if tests fail to load
|
|
254
|
-
// Common issue: Import paths with .js extension for TypeScript files
|
|
255
|
-
|
|
256
|
-
// CRITICAL GOTCHA #4: Vitest globals enabled
|
|
257
|
-
// vitest.config.ts has globals: true
|
|
258
|
-
// No need to import describe, it, expect from vitest
|
|
259
|
-
// Files may still have imports (which is fine)
|
|
260
|
-
|
|
261
|
-
// CRITICAL GOTCHA #5: Promise.allSettled changes affect concurrent tests
|
|
262
|
-
// Any test using @Task({ concurrent: true }) is affected
|
|
263
|
-
// Existing tests expect all-or-nothing behavior (Promise.all)
|
|
264
|
-
// New behavior: all complete, then first error thrown
|
|
265
|
-
// Tests that catch errors may see different timing
|
|
266
|
-
|
|
267
|
-
// CRITICAL GOTCHA #6: Test execution order may affect results
|
|
268
|
-
// Vitest runs tests in parallel by default
|
|
269
|
-
-- If tests share state or resources, may see flakes
|
|
270
|
-
// Groundswell tests are isolated, so this shouldn't be an issue
|
|
271
|
-
|
|
272
|
-
// CRITICAL GOTCHA #7: Test timeout defaults
|
|
273
|
-
// Vitest has default timeout (usually 5000ms)
|
|
274
|
-
// Hanging tests will fail with timeout error
|
|
275
|
-
// New concurrent-task-failures.test.ts has timeout protection
|
|
276
|
-
|
|
277
|
-
// CRITICAL GOTCHA #8: ES modules and .js extension imports
|
|
278
|
-
// Imports use .js extension even for .ts files
|
|
279
|
-
// Example: import { Workflow } from '../../index.js';
|
|
280
|
-
// This is correct TypeScript + ESM pattern
|
|
281
|
-
|
|
282
|
-
// CRITICAL GOTCHA #9: New test file from S3
|
|
283
|
-
// concurrent-task-failures.test.ts is new
|
|
284
|
-
// Must be included in test run
|
|
285
|
-
// Verify it's being executed (check test output)
|
|
286
|
-
|
|
287
|
-
// CRITICAL GOTCHA #10: CI/CD not configured
|
|
288
|
-
// No GitHub Actions, GitLab CI, or other CI
|
|
289
|
-
// Test validation must be done manually
|
|
290
|
-
-- Consider this when planning release process
|
|
291
|
-
|
|
292
|
-
// CRITICAL GOTCHA #11: Node.js version requirement
|
|
293
|
-
// vitest.config.ts targets 'node18'
|
|
294
|
-
-- Tests may fail on older Node versions
|
|
295
|
-
// Check node version: node --version
|
|
296
|
-
|
|
297
|
-
// CRITICAL GOTCHA #12: Memory considerations for full test suite
|
|
298
|
-
// 387 tests may consume significant memory
|
|
299
|
-
// If OOM errors occur, run tests in smaller batches
|
|
300
|
-
// Example: npm test -- src/__tests__/unit/
|
|
301
|
-
```
|
|
302
|
-
|
|
303
|
-
---
|
|
304
|
-
|
|
305
|
-
## Implementation Blueprint
|
|
306
|
-
|
|
307
|
-
### Data Models and Structure
|
|
308
|
-
|
|
309
|
-
**No new data models** - This task executes existing tests and validates the codebase.
|
|
310
|
-
|
|
311
|
-
**Test Execution Structure**:
|
|
312
|
-
```typescript
|
|
313
|
-
// Test execution flow:
|
|
314
|
-
// 1. npm test → vitest run
|
|
315
|
-
// 2. Vitest loads vitest.config.ts
|
|
316
|
-
// 3. Discovers all tests matching src/__tests__/**/*.test.ts
|
|
317
|
-
// 4. Compiles TypeScript (via tsconfig.json)
|
|
318
|
-
// 5. Runs all tests in parallel
|
|
319
|
-
// 6. Reports results to console
|
|
320
|
-
```
|
|
321
|
-
|
|
322
|
-
### Implementation Tasks (ordered by dependencies)
|
|
323
|
-
|
|
324
|
-
```yaml
|
|
325
|
-
Task 1: PRE-FLIGHT CHECKS - Verify environment setup
|
|
326
|
-
- RUN: node --version (ensure Node 18+)
|
|
327
|
-
- RUN: npm ls vitest (verify vitest installed)
|
|
328
|
-
- RUN: npx tsc --noEmit (verify TypeScript compiles)
|
|
329
|
-
- VERIFY: No TypeScript errors blocking test execution
|
|
330
|
-
- DOCUMENT: Any environment issues found
|
|
331
|
-
|
|
332
|
-
Task 2: RUN NEW TESTS ONLY - Verify S3 tests work
|
|
333
|
-
- RUN: npm test -- src/__tests__/adversarial/concurrent-task-failures.test.ts
|
|
334
|
-
- VERIFY: All new tests from S3 pass
|
|
335
|
-
- VERIFY: Test file is discovered and executed
|
|
336
|
-
- DOCUMENT: Any test failures with full error messages
|
|
337
|
-
|
|
338
|
-
Task 3: RUN UNIT TESTS - Verify unit test suite
|
|
339
|
-
- RUN: npm test -- src/__tests__/unit/
|
|
340
|
-
- VERIFY: All 13 unit test files pass
|
|
341
|
-
- VERIFY: No regressions in decorator, workflow, logger tests
|
|
342
|
-
- DOCUMENT: Any failures with specific test names
|
|
343
|
-
|
|
344
|
-
Task 4: RUN INTEGRATION TESTS - Verify integration suite
|
|
345
|
-
- RUN: npm test -- src/__tests__/integration/
|
|
346
|
-
- VERIFY: All 4 integration test files pass
|
|
347
|
-
- VERIFY: No regressions in agent-workflow, tree-mirroring tests
|
|
348
|
-
- DOCUMENT: Any failures with specific test names
|
|
349
|
-
|
|
350
|
-
Task 5: RUN ADVERSARIAL TESTS - Verify adversarial suite
|
|
351
|
-
- RUN: npm test -- src/__tests__/adversarial/
|
|
352
|
-
- VERIFY: All 12 adversarial test files pass
|
|
353
|
-
- VERIFY: concurrent-task-failures.test.ts included
|
|
354
|
-
- VERIFY: No regressions in edge-case, deep-hierarchy tests
|
|
355
|
-
- DOCUMENT: Any failures with specific test names
|
|
356
|
-
|
|
357
|
-
Task 6: RUN FULL TEST SUITE - Complete validation
|
|
358
|
-
- RUN: npm test
|
|
359
|
-
- VERIFY: All 387+ tests pass
|
|
360
|
-
- VERIFY: Test count shows increase from baseline (344 → 387+)
|
|
361
|
-
- VERIFY: 100% pass rate maintained
|
|
362
|
-
- DOCUMENT: Total test count, pass count, execution time
|
|
363
|
-
|
|
364
|
-
Task 7: VALIDATE PROMISE.ALLSETTLED COVERAGE
|
|
365
|
-
- ANALYZE: Test output for concurrent execution tests
|
|
366
|
-
- VERIFY: concurrent-task-failures.test.ts tests executed
|
|
367
|
-
- VERIFY: All concurrent failure scenarios covered
|
|
368
|
-
- DOCUMENT: Specific test counts for concurrent scenarios
|
|
369
|
-
|
|
370
|
-
Task 8: DOCUMENT RESULTS - Create summary report
|
|
371
|
-
- CREATE: Summary of test execution results
|
|
372
|
-
- INCLUDE: Total tests passed, execution time, any issues
|
|
373
|
-
- INCLUDE: Validation of Promise.allSettled implementation
|
|
374
|
-
- INCLUDE: Edge cases or issues encountered
|
|
375
|
-
- STORE: Results in work item directory or as comment
|
|
376
|
-
|
|
377
|
-
Task 9: TROUBLESHOOTING (if needed)
|
|
378
|
-
- IF: Tests fail, analyze error messages
|
|
379
|
-
- RUN: Failing test with --reporter=verbose for details
|
|
380
|
-
- DEBUG: Use npm run test:watch for interactive debugging
|
|
381
|
-
- FIX: Any regressions discovered (coordinate with team)
|
|
382
|
-
- RERUN: Full suite after fixes
|
|
383
|
-
```
|
|
384
|
-
|
|
385
|
-
### Implementation Patterns & Key Details
|
|
386
|
-
|
|
387
|
-
```bash
|
|
388
|
-
# ============================================
|
|
389
|
-
# PATTERN 1: Basic Test Execution
|
|
390
|
-
# Command: npm test
|
|
391
|
-
# ============================================
|
|
392
|
-
|
|
393
|
-
# Run all tests once (non-interactive)
|
|
394
|
-
npm test
|
|
395
|
-
|
|
396
|
-
# Expected output format:
|
|
397
|
-
# ✓ src/__tests__/unit/decorators.test.ts (10 tests)
|
|
398
|
-
# ✓ src/__tests__/unit/workflow.test.ts (15 tests)
|
|
399
|
-
# ...
|
|
400
|
-
# ✓ src/__tests__/adversarial/concurrent-task-failures.test.ts (9 tests)
|
|
401
|
-
# Test Files 29 passed (29)
|
|
402
|
-
# Tests 387 passed (387)
|
|
403
|
-
# Duration 2.34s
|
|
404
|
-
|
|
405
|
-
# KEY INSIGHTS:
|
|
406
|
-
# - Shows each test file with test count
|
|
407
|
-
# - Final summary shows total pass/fail
|
|
408
|
-
# - Duration indicates performance
|
|
409
|
-
|
|
410
|
-
# ============================================
|
|
411
|
-
# PATTERN 2: Run Specific Test Directory
|
|
412
|
-
# Command: npm test -- <directory>
|
|
413
|
-
# ============================================
|
|
414
|
-
|
|
415
|
-
# Run only unit tests
|
|
416
|
-
npm test -- src/__tests__/unit/
|
|
417
|
-
|
|
418
|
-
# Run only adversarial tests
|
|
419
|
-
npm test -- src/__tests__/adversarial/
|
|
420
|
-
|
|
421
|
-
# Run specific test file
|
|
422
|
-
npm test -- src/__tests__/adversarial/concurrent-task-failures.test.ts
|
|
423
|
-
|
|
424
|
-
# KEY INSIGHTS:
|
|
425
|
-
# - Use -- to pass arguments to vitest
|
|
426
|
-
# - Useful for isolating test categories
|
|
427
|
-
# - Faster feedback during debugging
|
|
428
|
-
|
|
429
|
-
# ============================================
|
|
430
|
-
# PATTERN 3: Watch Mode for Development
|
|
431
|
-
# Command: npm run test:watch
|
|
432
|
-
# ============================================
|
|
433
|
-
|
|
434
|
-
# Run tests in watch mode
|
|
435
|
-
npm run test:watch
|
|
436
|
-
|
|
437
|
-
# Watch specific file
|
|
438
|
-
npm run test:watch -- concurrent-task-failures
|
|
439
|
-
|
|
440
|
-
# KEY INSIGHTS:
|
|
441
|
-
# - Automatically re-runs tests on file changes
|
|
442
|
-
# - Useful for debugging test failures
|
|
443
|
-
# - Press 'q' to quit
|
|
444
|
-
|
|
445
|
-
# ============================================
|
|
446
|
-
# PATTERN 4: Verbose Output for Debugging
|
|
447
|
-
# Command: npm test -- --reporter=verbose
|
|
448
|
-
# ============================================
|
|
449
|
-
|
|
450
|
-
# Run with verbose output
|
|
451
|
-
npm test -- --reporter=verbose
|
|
452
|
-
|
|
453
|
-
# Run specific test with verbose output
|
|
454
|
-
npm test -- concurrent-task-failures --reporter=verbose
|
|
455
|
-
|
|
456
|
-
# Expected output:
|
|
457
|
-
# ✓ should complete all siblings when one child fails
|
|
458
|
-
# ✓ should collect all errors when multiple children fail concurrently
|
|
459
|
-
# ...
|
|
460
|
-
|
|
461
|
-
# KEY INSIGHTS:
|
|
462
|
-
# - Shows individual test names
|
|
463
|
-
# - Useful for identifying which specific test failed
|
|
464
|
-
# - Can be combined with file filters
|
|
465
|
-
|
|
466
|
-
# ============================================
|
|
467
|
-
# PATTERN 5: TypeScript Check Before Tests
|
|
468
|
-
# Command: npx tsc --noEmit
|
|
469
|
-
# ============================================
|
|
470
|
-
|
|
471
|
-
# Check TypeScript compiles without errors
|
|
472
|
-
npx tsc --noEmit
|
|
473
|
-
|
|
474
|
-
# Expected: No output (if successful)
|
|
475
|
-
# Errors shown if TypeScript has issues
|
|
476
|
-
|
|
477
|
-
# KEY INSIGHTS:
|
|
478
|
-
# - Catches type errors before running tests
|
|
479
|
-
# - Faster than running full test suite
|
|
480
|
-
# - Use when tests fail to load
|
|
481
|
-
|
|
482
|
-
# ============================================
|
|
483
|
-
# PATTERN 6: Parallel vs Sequential Execution
|
|
484
|
-
# Command: npm test -- --run --reporter=dot
|
|
485
|
-
# ============================================
|
|
486
|
-
|
|
487
|
-
# Run tests sequentially (useful for debugging)
|
|
488
|
-
npm test -- --reporter=dot --no-parallel
|
|
489
|
-
|
|
490
|
-
# Run with dot reporter (compact output)
|
|
491
|
-
npm test -- --reporter=dot
|
|
492
|
-
|
|
493
|
-
# KEY INSIGHTS:
|
|
494
|
-
# - Sequential execution can reveal race conditions
|
|
495
|
-
# - Dot reporter shows progress with dots
|
|
496
|
-
# - Useful for CI/CD pipelines
|
|
497
|
-
|
|
498
|
-
# ============================================
|
|
499
|
-
# PATTERN 7: Coverage Report (if configured)
|
|
500
|
-
# Command: npm test -- --coverage
|
|
501
|
-
# ============================================
|
|
502
|
-
|
|
503
|
-
# Run tests with coverage
|
|
504
|
-
npm test -- --coverage
|
|
505
|
-
|
|
506
|
-
# Expected coverage output (if configured):
|
|
507
|
-
# % Coverage report
|
|
508
|
-
# Files % Stmts % Branch % Funcs % Lines
|
|
509
|
-
# ...
|
|
510
|
-
|
|
511
|
-
# KEY INSIGHTS:
|
|
512
|
-
# - Shows code coverage for tests
|
|
513
|
-
# - Not currently configured in vitest.config.ts
|
|
514
|
-
# - Would need to add coverage configuration
|
|
515
|
-
|
|
516
|
-
# ============================================
|
|
517
|
-
# PATTERN 8: Analyzing Test Failures
|
|
518
|
-
# Troubleshooting workflow
|
|
519
|
-
# ============================================
|
|
520
|
-
|
|
521
|
-
# Step 1: Run full suite to identify failures
|
|
522
|
-
npm test
|
|
523
|
-
|
|
524
|
-
# Step 2: If failures, run specific file with verbose output
|
|
525
|
-
npm test -- <failing-file> --reporter=verbose
|
|
526
|
-
|
|
527
|
-
# Step 3: Use watch mode for iterative debugging
|
|
528
|
-
npm run test:watch -- <failing-file>
|
|
529
|
-
|
|
530
|
-
# Step 4: Check TypeScript compiles
|
|
531
|
-
npx tsc --noEmit
|
|
532
|
-
|
|
533
|
-
# Step 5: Examine error messages and stack traces
|
|
534
|
-
|
|
535
|
-
# KEY INSIGHTS:
|
|
536
|
-
# - Systematic approach to debugging
|
|
537
|
-
# - Isolate failures to specific files
|
|
538
|
-
# - Use verbose output for detailed error info
|
|
539
|
-
```
|
|
540
|
-
|
|
541
|
-
### Integration Points
|
|
542
|
-
|
|
543
|
-
```yaml
|
|
544
|
-
NO_CODE_CHANGES:
|
|
545
|
-
- This task executes tests only
|
|
546
|
-
- No modifications to existing code
|
|
547
|
-
- Validates S2 and S3 work correctly
|
|
548
|
-
|
|
549
|
-
DEPENDENCY_ON_S2:
|
|
550
|
-
- Requires Promise.allSettled implementation to be complete
|
|
551
|
-
- Validating that S2 changes work correctly
|
|
552
|
-
|
|
553
|
-
DEPENDENCY_ON_S3:
|
|
554
|
-
- Requires concurrent-task-failures.test.ts to exist
|
|
555
|
-
- Validating that S3 tests pass
|
|
556
|
-
```
|
|
557
|
-
|
|
558
|
-
---
|
|
559
|
-
|
|
560
|
-
## Validation Loop
|
|
561
|
-
|
|
562
|
-
### Level 1: Pre-Execution Checks
|
|
563
|
-
|
|
564
|
-
```bash
|
|
565
|
-
# Verify Node.js version (must be 18+)
|
|
566
|
-
node --version
|
|
567
|
-
# Expected output: v18.x.x or higher
|
|
568
|
-
|
|
569
|
-
# Verify npm dependencies installed
|
|
570
|
-
npm ls vitest
|
|
571
|
-
# Expected output: vitest@1.x.x installed
|
|
572
|
-
|
|
573
|
-
# Verify TypeScript compiles without errors
|
|
574
|
-
npx tsc --noEmit
|
|
575
|
-
# Expected: No output (success) or type errors (fix before running tests)
|
|
576
|
-
|
|
577
|
-
# Verify test configuration
|
|
578
|
-
cat vitest.config.ts
|
|
579
|
-
# Expected: include: ['src/__tests__/**/*.test.ts'], globals: true
|
|
580
|
-
|
|
581
|
-
# Expected: All checks pass, no blockers to test execution
|
|
582
|
-
# If errors exist, fix before proceeding to Level 2
|
|
583
|
-
```
|
|
584
|
-
|
|
585
|
-
### Level 2: Incremental Test Execution
|
|
586
|
-
|
|
587
|
-
```bash
|
|
588
|
-
# Step 1: Run new S3 tests only
|
|
589
|
-
npm test -- src/__tests__/adversarial/concurrent-task-failures.test.ts
|
|
590
|
-
|
|
591
|
-
# Expected: 9 tests pass (concurrent failure scenarios)
|
|
592
|
-
# Test names:
|
|
593
|
-
# - should complete all siblings when one child fails
|
|
594
|
-
# - should collect all errors when multiple children fail concurrently
|
|
595
|
-
# - should preserve error context for each failure
|
|
596
|
-
# - should complete successful workflows despite failures
|
|
597
|
-
# - should ensure no orphaned workflows in mixed scenario
|
|
598
|
-
# - should handle edge case of all children failing
|
|
599
|
-
# - should verify all workflows complete with no hanging promises
|
|
600
|
-
# - should emit error events for all failing workflows
|
|
601
|
-
# - should capture logs from both successful and failed workflows
|
|
602
|
-
|
|
603
|
-
# Step 2: Run unit tests
|
|
604
|
-
npm test -- src/__tests__/unit/
|
|
605
|
-
|
|
606
|
-
# Expected: All 13 unit test files pass
|
|
607
|
-
# Key files to watch:
|
|
608
|
-
# - decorators.test.ts (validates @Task decorator)
|
|
609
|
-
# - workflow.test.ts (validates workflow execution)
|
|
610
|
-
# - logger.test.ts (validates logging)
|
|
611
|
-
|
|
612
|
-
# Step 3: Run integration tests
|
|
613
|
-
npm test -- src/__tests__/integration/
|
|
614
|
-
|
|
615
|
-
# Expected: All 4 integration test files pass
|
|
616
|
-
# Key files to watch:
|
|
617
|
-
# - agent-workflow.test.ts (validates agent + workflow integration)
|
|
618
|
-
# - tree-mirroring.test.ts (validates tree operations)
|
|
619
|
-
|
|
620
|
-
# Step 4: Run adversarial tests
|
|
621
|
-
npm test -- src/__tests__/adversarial/
|
|
622
|
-
|
|
623
|
-
# Expected: All 12 adversarial test files pass
|
|
624
|
-
# Key files to watch:
|
|
625
|
-
# - concurrent-task-failures.test.ts (new S3 tests)
|
|
626
|
-
# - edge-case.test.ts (concurrent execution edge cases)
|
|
627
|
-
# - deep-hierarchy-stress.test.ts (stress testing)
|
|
628
|
-
|
|
629
|
-
# Expected: All incremental test runs pass
|
|
630
|
-
# If any step fails, debug before proceeding to next step
|
|
631
|
-
```
|
|
632
|
-
|
|
633
|
-
### Level 3: Full Test Suite Execution
|
|
634
|
-
|
|
635
|
-
```bash
|
|
636
|
-
# Run complete test suite
|
|
637
|
-
npm test
|
|
638
|
-
|
|
639
|
-
# Expected output structure:
|
|
640
|
-
# ✓ src/__tests__/unit/agent.test.ts (X tests)
|
|
641
|
-
# ✓ src/__tests__/unit/cache.test.ts (Y tests)
|
|
642
|
-
# ...
|
|
643
|
-
# ✓ src/__tests__/adversarial/concurrent-task-failures.test.ts (9 tests)
|
|
644
|
-
# ...
|
|
645
|
-
# Test Files 29 passed (29)
|
|
646
|
-
# Tests 387+ passed (387+)
|
|
647
|
-
# Duration X.XX s (typically 2-5 seconds)
|
|
648
|
-
|
|
649
|
-
# Validation checkpoints:
|
|
650
|
-
# 1. Test Files: 29 passed (no skipped, no failed)
|
|
651
|
-
# 2. Tests: 387+ passed (increased from baseline 344)
|
|
652
|
-
# 3. Duration: Reasonable time (no hanging tests)
|
|
653
|
-
# 4. concurrent-task-failures.test.ts included in output
|
|
654
|
-
# 5. Zero errors or warnings in output
|
|
655
|
-
|
|
656
|
-
# Expected: All tests pass with 100% success rate
|
|
657
|
-
# Document total test count and execution time
|
|
658
|
-
```
|
|
659
|
-
|
|
660
|
-
### Level 4: Result Analysis and Documentation
|
|
661
|
-
|
|
662
|
-
```bash
|
|
663
|
-
# Count total tests (if not shown in output)
|
|
664
|
-
npm test 2>&1 | grep -E "Tests.*passed"
|
|
665
|
-
|
|
666
|
-
# Verify concurrent-task-failures.test.ts was executed
|
|
667
|
-
npm test 2>&1 | grep concurrent-task-failures
|
|
668
|
-
|
|
669
|
-
# Check for any warnings or deprecations
|
|
670
|
-
npm test 2>&1 | grep -i warning
|
|
671
|
-
|
|
672
|
-
# Document results:
|
|
673
|
-
# - Total tests executed
|
|
674
|
-
# - Total tests passed
|
|
675
|
-
# - Execution time
|
|
676
|
-
# - Any warnings or issues
|
|
677
|
-
# - Validation of Promise.allSettled implementation
|
|
678
|
-
|
|
679
|
-
# Create results summary (example format):
|
|
680
|
-
# TEST SUITE EXECUTION SUMMARY
|
|
681
|
-
# =============================
|
|
682
|
-
# Date: 2026-01-12
|
|
683
|
-
# Command: npm test
|
|
684
|
-
#
|
|
685
|
-
# RESULTS:
|
|
686
|
-
# - Total Test Files: 29
|
|
687
|
-
# - Total Tests: 387+
|
|
688
|
-
# - Tests Passed: 387+
|
|
689
|
-
# - Tests Failed: 0
|
|
690
|
-
# - Pass Rate: 100%
|
|
691
|
-
# - Execution Time: ~2.5s
|
|
692
|
-
#
|
|
693
|
-
# VALIDATION:
|
|
694
|
-
# - Promise.allSettled implementation: VERIFIED
|
|
695
|
-
# - Concurrent failure tests: PASSING (9 tests)
|
|
696
|
-
# - No regressions detected: CONFIRMED
|
|
697
|
-
# - All existing tests passing: CONFIRMED
|
|
698
|
-
#
|
|
699
|
-
# ISSUES: None
|
|
700
|
-
|
|
701
|
-
# Expected: Clear documentation of test results
|
|
702
|
-
# Store results in work item directory or as code comment
|
|
703
|
-
```
|
|
704
|
-
|
|
705
|
-
---
|
|
706
|
-
|
|
707
|
-
## Final Validation Checklist
|
|
708
|
-
|
|
709
|
-
### Technical Validation
|
|
710
|
-
|
|
711
|
-
- [ ] Pre-flight checks pass (Node version, dependencies, TypeScript)
|
|
712
|
-
- [ ] New S3 tests pass (concurrent-task-failures.test.ts)
|
|
713
|
-
- [ ] Unit tests pass (all 13 unit test files)
|
|
714
|
-
- [ ] Integration tests pass (all 4 integration test files)
|
|
715
|
-
- [ ] Adversarial tests pass (all 12 adversarial test files)
|
|
716
|
-
- [ ] Full test suite passes (npm test)
|
|
717
|
-
- [ ] Test count verified (387+ tests, up from baseline 344)
|
|
718
|
-
- [ ] 100% pass rate maintained
|
|
719
|
-
- [ ] No TypeScript errors
|
|
720
|
-
- [ ] No warnings or deprecations
|
|
721
|
-
- [ ] Execution time reasonable (no hanging tests)
|
|
722
|
-
|
|
723
|
-
### Feature Validation
|
|
724
|
-
|
|
725
|
-
- [ ] Promise.allSettled implementation validated through test coverage
|
|
726
|
-
- [ ] Concurrent task failure scenarios tested and passing
|
|
727
|
-
- [ ] Single child failure scenario: PASSING
|
|
728
|
-
- [ ] Multiple concurrent failures scenario: PASSING
|
|
729
|
-
- [ ] Mixed success/failure scenario: PASSING
|
|
730
|
-
- [ ] All children failing scenario: PASSING
|
|
731
|
-
- [ ] No orphaned workflows verified: PASSING
|
|
732
|
-
- [ ] Event emission during failures: PASSING
|
|
733
|
-
- [ ] Log capture from all workflows: PASSING
|
|
734
|
-
|
|
735
|
-
### Regression Validation
|
|
736
|
-
|
|
737
|
-
- [ ] No existing tests broken by Promise.allSettled changes
|
|
738
|
-
- [ ] @Task decorator concurrent execution still works correctly
|
|
739
|
-
- [ ] Error handling patterns unchanged for non-concurrent tasks
|
|
740
|
-
- [ ] Event emission still works as expected
|
|
741
|
-
- [ ] Logger functionality unaffected
|
|
742
|
-
- [ ] Workflow attach/detach operations unaffected
|
|
743
|
-
- [ ] Observer pattern still functions correctly
|
|
744
|
-
|
|
745
|
-
### Documentation & Deployment
|
|
746
|
-
|
|
747
|
-
- [ ] Test execution results documented
|
|
748
|
-
- [ ] Total test count recorded
|
|
749
|
-
- [ ] Execution time recorded
|
|
750
|
-
- [ ] Any edge cases or issues documented
|
|
751
|
-
- [ ] Promise.allSettled implementation confirmed production-ready
|
|
752
|
-
|
|
753
|
-
---
|
|
754
|
-
|
|
755
|
-
## Anti-Patterns to Avoid
|
|
756
|
-
|
|
757
|
-
- **Don't skip pre-flight checks** - Verify environment before running tests
|
|
758
|
-
- **Don't ignore TypeScript errors** - Fix compilation errors before running tests
|
|
759
|
-
- **Don't run tests directly with vitest** - Always use `npm test` for consistent behavior
|
|
760
|
-
- **Don't assume tests will pass** - S2 changes could have unintended side effects
|
|
761
|
-
- **Don't skip incremental testing** - Run test categories in isolation for easier debugging
|
|
762
|
-
- **Don't ignore test output** - Review full output for warnings or issues
|
|
763
|
-
- **Don't forget to document results** - Test results should be recorded for reference
|
|
764
|
-
- **Don't proceed if tests fail** - All failures must be investigated and fixed
|
|
765
|
-
- **Don't overlook the new test file** - Verify concurrent-task-failures.test.ts is executed
|
|
766
|
-
- **Don't assume concurrent behavior is unchanged** - Promise.allSettled changes timing semantics
|
|
767
|
-
- **Don't ignore hanging tests** - Timeout errors indicate serious issues
|
|
768
|
-
- **Don't run tests in wrong directory** - Must run from project root
|
|
769
|
-
- **Don't use wrong Node version** - Tests target Node 18, older versions may fail
|
|
770
|
-
- **Don't forget watch mode for debugging** - Use `npm run test:watch` for iterative debugging
|
|
771
|
-
- **Don't miss edge cases** - All concurrent failure scenarios must be tested
|
|
772
|
-
|
|
773
|
-
---
|
|
774
|
-
|
|
775
|
-
## Success Metrics
|
|
776
|
-
|
|
777
|
-
**Confidence Score**: 10/10 for one-pass execution success
|
|
778
|
-
|
|
779
|
-
**Definition of Done**:
|
|
780
|
-
1. Pre-flight checks completed successfully
|
|
781
|
-
2. All 387+ tests pass (100% pass rate)
|
|
782
|
-
3. New concurrent-task-failures.test.ts tests passing
|
|
783
|
-
4. Zero regressions in existing functionality
|
|
784
|
-
5. Promise.allSettled implementation validated
|
|
785
|
-
6. Test execution results documented
|
|
786
|
-
7. Execution time reasonable (no performance degradation)
|
|
787
|
-
|
|
788
|
-
**Validation Criteria**:
|
|
789
|
-
- `npm test` completes with exit code 0
|
|
790
|
-
- Test output shows "Tests 387+ passed (387+)"
|
|
791
|
-
- concurrent-task-failures.test.ts shown in output
|
|
792
|
-
- No error messages or stack traces
|
|
793
|
-
- Documented results showing successful validation
|
|
794
|
-
|
|
795
|
-
**Expected Test Count**:
|
|
796
|
-
- Baseline: 344 tests (before S3)
|
|
797
|
-
- After S3: 387+ tests (includes 9 new concurrent failure tests)
|
|
798
|
-
- Validation: Test count should increase by ~9 tests
|
|
799
|
-
|
|
800
|
-
---
|
|
801
|
-
|
|
802
|
-
## Appendix: Test Execution Quick Reference
|
|
803
|
-
|
|
804
|
-
### Command Reference
|
|
805
|
-
|
|
806
|
-
```bash
|
|
807
|
-
# Full test suite
|
|
808
|
-
npm test
|
|
809
|
-
|
|
810
|
-
# Specific test categories
|
|
811
|
-
npm test -- src/__tests__/unit/
|
|
812
|
-
npm test -- src/__tests__/integration/
|
|
813
|
-
npm test -- src/__tests__/adversarial/
|
|
814
|
-
|
|
815
|
-
# Specific test file
|
|
816
|
-
npm test -- src/__tests__/adversarial/concurrent-task-failures.test.ts
|
|
817
|
-
|
|
818
|
-
# Watch mode (interactive)
|
|
819
|
-
npm run test:watch
|
|
820
|
-
|
|
821
|
-
# Verbose output
|
|
822
|
-
npm test -- --reporter=verbose
|
|
823
|
-
|
|
824
|
-
# TypeScript check
|
|
825
|
-
npx tsc --noEmit
|
|
826
|
-
|
|
827
|
-
# Environment check
|
|
828
|
-
node --version
|
|
829
|
-
npm ls vitest
|
|
830
|
-
```
|
|
831
|
-
|
|
832
|
-
### Expected Output Format
|
|
833
|
-
|
|
834
|
-
```
|
|
835
|
-
✓ src/__tests__/unit/agent.test.ts (X)
|
|
836
|
-
✓ src/__tests__/unit/cache.test.ts (X)
|
|
837
|
-
...
|
|
838
|
-
✓ src/__tests__/adversarial/concurrent-task-failures.test.ts (9)
|
|
839
|
-
...
|
|
840
|
-
Test Files 29 passed (29)
|
|
841
|
-
Tests 387 passed (387)
|
|
842
|
-
Start at 14:23:45
|
|
843
|
-
Duration 2.34s (transform 1.23s, setup 0s, collect 456ms, tests 1.11s)
|
|
844
|
-
```
|
|
845
|
-
|
|
846
|
-
### Troubleshooting Guide
|
|
847
|
-
|
|
848
|
-
| Issue | Symptom | Solution |
|
|
849
|
-
|-------|---------|----------|
|
|
850
|
-
| TypeScript errors | Tests fail to load | Run `npx tsc --noEmit` and fix type errors |
|
|
851
|
-
| Tests not found | "No test files found" | Check file location (must be in `src/__tests__/`) |
|
|
852
|
-
| Import errors | "Cannot find module" | Verify imports use `.js` extension for `.ts` files |
|
|
853
|
-
| Timeout errors | Tests hang and timeout | Check for infinite loops or hanging promises |
|
|
854
|
-
| Wrong Node version | Tests fail with syntax errors | Install Node 18+ |
|
|
855
|
-
| Dependency errors | "Cannot find package" | Run `npm install` to install dependencies |
|
|
856
|
-
|
|
857
|
-
---
|
|
858
|
-
|
|
859
|
-
**PRP Status**: ✅ Complete - Ready for Execution
|
|
860
|
-
**Next Task**: P1.M2.T2.S1 - Add errorMergeStrategy to TaskOptions interface
|