feat: enhance workflow and testing infrastructure

- Introduced ExecutionMode type for project execution modes (parallel, sequential).
- Updated SetupOpts to use ExecutionMode instead of string literals.
- Enhanced workflow states to include a new "In Review" state with appropriate transitions.
- Implemented TestHarness for end-to-end testing, including command interception and workspace setup.
- Created TestProvider for in-memory issue tracking during tests.
- Refactored project registration and setup tools to utilize ExecutionMode.
- Updated various tools to ensure compatibility with new workflow and execution modes.
- Added new dependencies: cockatiel for resilience and zod for schema validation.
This commit is contained in:
Lauren ten Hoor
2026-02-16 13:27:14 +08:00
parent a359ffed34
commit 371e760d94
37 changed files with 2444 additions and 263 deletions

View File

@@ -9,6 +9,7 @@ import { createProvider } from "../providers/index.js";
import type { Project } from "../projects.js";
import {
DEFAULT_WORKFLOW,
StateType,
type WorkflowConfig,
type Role,
} from "../workflow.js";
@@ -27,7 +28,7 @@ export function getQueueLabelsWithPriority(
const labels: Array<{ label: string; priority: number; role?: Role }> = [];
for (const state of Object.values(workflow.states)) {
if (state.type === "queue") {
if (state.type === StateType.QUEUE) {
labels.push({
label: state.label,
priority: state.priority ?? 0,