mirror of
https://github.com/catlog22/Claude-Code-Workflow.git
synced 2026-03-06 16:31:12 +08:00
Refactor team collaboration skills and update documentation
- Renamed `team-lifecycle-v5` to `team-lifecycle` across various documentation files for consistency. - Updated references in code examples and usage sections to reflect the new skill name. - Added a new command file for the `monitor` functionality in the `team-iterdev` skill, detailing the coordinator's monitoring events and task management. - Introduced new components for dynamic pipeline visualization and session coordinates display in the frontend. - Implemented utility functions for pipeline stage detection and status derivation based on message history. - Enhanced the team role panel to map members to their respective pipeline roles with status indicators. - Updated Chinese documentation to reflect the changes in skill names and descriptions.
This commit is contained in:
@@ -269,6 +269,10 @@ export async function handleTeamRoutes(ctx: RouteContext): Promise<boolean> {
|
||||
updated_at: string;
|
||||
archived_at?: string;
|
||||
pipeline_mode?: string;
|
||||
pipeline_stages?: string[];
|
||||
role_state?: Record<string, Record<string, unknown>>;
|
||||
roles?: string[];
|
||||
team_name?: string;
|
||||
memberCount: number;
|
||||
members: string[];
|
||||
isLegacy: boolean;
|
||||
@@ -295,6 +299,10 @@ export async function handleTeamRoutes(ctx: RouteContext): Promise<boolean> {
|
||||
updated_at: meta.updated_at,
|
||||
archived_at: meta.archived_at,
|
||||
pipeline_mode: meta.pipeline_mode,
|
||||
pipeline_stages: meta.pipeline_stages,
|
||||
role_state: meta.role_state,
|
||||
roles: meta.roles,
|
||||
team_name: meta.team_name,
|
||||
memberCount: memberSet.size,
|
||||
members: Array.from(memberSet),
|
||||
isLegacy: false,
|
||||
@@ -325,6 +333,10 @@ export async function handleTeamRoutes(ctx: RouteContext): Promise<boolean> {
|
||||
updated_at: meta.updated_at,
|
||||
archived_at: meta.archived_at,
|
||||
pipeline_mode: meta.pipeline_mode,
|
||||
pipeline_stages: meta.pipeline_stages,
|
||||
role_state: meta.role_state,
|
||||
roles: meta.roles,
|
||||
team_name: meta.team_name,
|
||||
memberCount: memberSet.size,
|
||||
members: Array.from(memberSet),
|
||||
isLegacy: true,
|
||||
@@ -434,7 +446,7 @@ export async function handleTeamRoutes(ctx: RouteContext): Promise<boolean> {
|
||||
if (!existsSync(sessionDir)) {
|
||||
// Check if it's a legacy team with session_id in meta
|
||||
const meta = getEffectiveTeamMeta(artifactsTeamName);
|
||||
const legacySessionId = (meta as Record<string, unknown>).session_id as string | undefined;
|
||||
const legacySessionId = (meta as unknown as Record<string, unknown>).session_id as string | undefined;
|
||||
if (legacySessionId) {
|
||||
// Legacy team with session_id - redirect to session directory
|
||||
const legacySessionDir = getSessionDir(legacySessionId, root);
|
||||
|
||||
@@ -117,9 +117,35 @@ async function serveStaticFile(
|
||||
const ext = extname(filePath);
|
||||
const mimeType = MIME_TYPES[ext] || 'application/octet-stream';
|
||||
|
||||
// Determine cache strategy based on file type
|
||||
const fileName = filePath.split('/').pop() || '';
|
||||
const isIndexHtml = filePath.endsWith('index.html');
|
||||
const isAssetFile = fileName.startsWith('index-') && (ext === '.js' || ext === '.css');
|
||||
|
||||
// For index.html: use no-cache to prevent stale content issues
|
||||
if (isIndexHtml) {
|
||||
res.writeHead(200, {
|
||||
'Content-Type': mimeType,
|
||||
'Cache-Control': 'no-cache',
|
||||
});
|
||||
res.end(content);
|
||||
return true;
|
||||
}
|
||||
|
||||
// For assets (JS/CSS with hash in filenames), use long-term cache
|
||||
if (isAssetFile) {
|
||||
res.writeHead(200, {
|
||||
'Content-Type': mimeType,
|
||||
'Cache-Control': 'public, max-age=31536000, immutable',
|
||||
});
|
||||
res.end(content);
|
||||
return true;
|
||||
}
|
||||
|
||||
// For other files (fallback to index.html for SPA), use no-cache
|
||||
res.writeHead(200, {
|
||||
'Content-Type': mimeType,
|
||||
'Cache-Control': 'public, max-age=31536000',
|
||||
'Cache-Control': 'no-cache',
|
||||
});
|
||||
res.end(content);
|
||||
return true;
|
||||
|
||||
Reference in New Issue
Block a user