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:
@@ -18,6 +18,18 @@ export type RoleOverride = {
|
||||
completionResults?: string[];
|
||||
};
|
||||
|
||||
/**
|
||||
* Configurable timeout values (in milliseconds).
|
||||
* All fields optional — defaults applied at resolution time.
|
||||
*/
|
||||
export type TimeoutConfig = {
|
||||
gitPullMs?: number;
|
||||
gatewayMs?: number;
|
||||
sessionPatchMs?: number;
|
||||
dispatchMs?: number;
|
||||
staleWorkerHours?: number;
|
||||
};
|
||||
|
||||
/**
|
||||
* The full workflow.yaml shape.
|
||||
* All fields optional — missing fields inherit from the layer below.
|
||||
@@ -25,6 +37,18 @@ export type RoleOverride = {
|
||||
export type DevClawConfig = {
|
||||
roles?: Record<string, RoleOverride | false>;
|
||||
workflow?: Partial<WorkflowConfig>;
|
||||
timeouts?: TimeoutConfig;
|
||||
};
|
||||
|
||||
/**
|
||||
* Fully resolved timeout config — all fields present with defaults.
|
||||
*/
|
||||
export type ResolvedTimeouts = {
|
||||
gitPullMs: number;
|
||||
gatewayMs: number;
|
||||
sessionPatchMs: number;
|
||||
dispatchMs: number;
|
||||
staleWorkerHours: number;
|
||||
};
|
||||
|
||||
/**
|
||||
@@ -34,6 +58,7 @@ export type DevClawConfig = {
|
||||
export type ResolvedConfig = {
|
||||
roles: Record<string, ResolvedRoleConfig>;
|
||||
workflow: WorkflowConfig;
|
||||
timeouts: ResolvedTimeouts;
|
||||
};
|
||||
|
||||
/**
|
||||
|
||||
Reference in New Issue
Block a user