@pimzino/claude-code-spec-workflow
Version:
Automated workflows for Claude Code. Includes spec-driven development (Requirements → Design → Tasks → Implementation) with intelligent task execution, optional steering documents and streamlined bug fix workflow (Report → Analyze → Fix → Verify). We have
98 lines • 3.02 kB
JavaScript
;
/**
* Shared type definitions for the dashboard frontend and backend
* This file provides common interfaces and types that can be used
* across the entire dashboard application to ensure type safety.
*/
Object.defineProperty(exports, "__esModule", { value: true });
exports.BUG_STATUS_PRIORITY = exports.STATUS_PRIORITY = exports.DEFAULT_DASHBOARD_OPTIONS = void 0;
exports.isWebSocketMessage = isWebSocketMessage;
exports.isInitialDataMessage = isInitialDataMessage;
exports.isUpdateDataMessage = isUpdateDataMessage;
exports.isBugUpdateMessage = isBugUpdateMessage;
exports.isSteeringUpdateMessage = isSteeringUpdateMessage;
exports.isErrorDataMessage = isErrorDataMessage;
exports.isTunnelStartedMessage = isTunnelStartedMessage;
exports.isTunnelStoppedMessage = isTunnelStoppedMessage;
exports.isTunnelMetricsMessage = isTunnelMetricsMessage;
exports.isTunnelVisitorMessage = isTunnelVisitorMessage;
exports.isProjectUpdateMessage = isProjectUpdateMessage;
exports.isActiveSessionsUpdateMessage = isActiveSessionsUpdateMessage;
exports.isGitUpdateMessage = isGitUpdateMessage;
exports.isNewProjectMessage = isNewProjectMessage;
exports.isRemoveProjectMessage = isRemoveProjectMessage;
/**
* Type guards for runtime type checking
*/
function isWebSocketMessage(obj) {
return typeof obj === 'object' && obj !== null && 'type' in obj && 'data' in obj;
}
function isInitialDataMessage(msg) {
return msg.type === 'initial';
}
function isUpdateDataMessage(msg) {
return msg.type === 'update';
}
function isBugUpdateMessage(msg) {
return msg.type === 'bug-update';
}
function isSteeringUpdateMessage(msg) {
return msg.type === 'steering-update';
}
function isErrorDataMessage(msg) {
return msg.type === 'error';
}
function isTunnelStartedMessage(msg) {
return msg.type === 'tunnel:started';
}
function isTunnelStoppedMessage(msg) {
return msg.type === 'tunnel:stopped';
}
function isTunnelMetricsMessage(msg) {
return msg.type === 'tunnel:metrics:updated';
}
function isTunnelVisitorMessage(msg) {
return msg.type === 'tunnel:visitor:new';
}
function isProjectUpdateMessage(msg) {
return msg.type === 'project-update';
}
function isActiveSessionsUpdateMessage(msg) {
return msg.type === 'active-sessions-update';
}
function isGitUpdateMessage(msg) {
return msg.type === 'git-update';
}
function isNewProjectMessage(msg) {
return msg.type === 'new-project';
}
function isRemoveProjectMessage(msg) {
return msg.type === 'remove-project';
}
/**
* Constants for common values
*/
exports.DEFAULT_DASHBOARD_OPTIONS = {
port: 3000,
open: true,
watch: true,
tunnel: false,
tunnelOptions: {}
};
exports.STATUS_PRIORITY = {
'in-progress': 1,
'tasks': 2,
'design': 3,
'requirements': 4,
'not-started': 5,
'completed': 6
};
exports.BUG_STATUS_PRIORITY = {
'reported': 1,
'analyzing': 2,
'fixing': 3,
'fixed': 4,
'verifying': 5,
'resolved': 6
};
//# sourceMappingURL=dashboard.types.js.map