Add E2E tests for internationalization across multiple pages

- Implemented navigation.spec.ts to test language switching and translation of navigation elements.
- Created sessions-page.spec.ts to verify translations on the sessions page, including headers, status badges, and date formatting.
- Developed settings-page.spec.ts to ensure settings page content is translated and persists across sessions.
- Added skills-page.spec.ts to validate translations for skill categories, action buttons, and empty states.
This commit is contained in:
catlog22
2026-01-30 22:54:21 +08:00
parent e78e95049b
commit 81725c94b1
150 changed files with 25341 additions and 1448 deletions

View File

@@ -0,0 +1,127 @@
{
"cliEndpoints": {
"title": "CLI Endpoints",
"description": "Manage LiteLLM endpoints, custom CLI endpoints, and CLI wrapper configurations",
"type": {
"litellm": "LiteLLM",
"custom": "Custom",
"wrapper": "Wrapper"
},
"status": {
"enabled": "Enabled",
"disabled": "Disabled"
},
"stats": {
"total": "Total Endpoints",
"enabled": "Enabled"
},
"id": "ID",
"config": "Configuration",
"filters": {
"type": "Type",
"allTypes": "All Types",
"searchPlaceholder": "Search endpoints by name or ID..."
},
"actions": {
"add": "Add Endpoint",
"edit": "Edit Endpoint",
"delete": "Delete Endpoint",
"toggle": "Toggle Endpoint"
},
"deleteConfirm": "Are you sure you want to delete the endpoint \"{id}\"?",
"emptyState": {
"title": "No CLI Endpoints Found",
"message": "Add a CLI endpoint to configure custom API endpoints and wrappers."
}
},
"cliInstallations": {
"title": "CLI Installations",
"description": "Manage CCW CLI tool installations, upgrades, and removals",
"status": {
"active": "Active",
"inactive": "Inactive",
"error": "Error"
},
"stats": {
"total": "Total Tools",
"installed": "Installed",
"available": "Available"
},
"installed": "Installed",
"lastChecked": "Last Checked",
"filters": {
"status": "Status",
"all": "All",
"installed": "Installed",
"notInstalled": "Not Installed",
"searchPlaceholder": "Search tools by name or version..."
},
"actions": {
"install": "Install",
"uninstall": "Uninstall",
"upgrade": "Upgrade"
},
"uninstallConfirm": "Are you sure you want to uninstall \"{name}\"?",
"emptyState": {
"title": "No CLI Tools Found",
"message": "No CLI tools are available for installation at this time."
}
},
"cliHooks": {
"title": "Git Hooks",
"description": "Manage Git hooks for automated workflows",
"trigger": {
"pre-commit": "Pre-commit",
"post-commit": "Post-commit",
"pre-push": "Pre-push",
"custom": "Custom"
},
"stats": {
"total": "Total Hooks",
"enabled": "Enabled"
},
"filters": {
"trigger": "Trigger",
"allTriggers": "All Triggers",
"searchPlaceholder": "Search hooks by name..."
},
"actions": {
"add": "Add Hook",
"edit": "Edit Hook",
"delete": "Delete Hook",
"toggle": "Toggle Hook"
},
"emptyState": {
"title": "No Git Hooks Found",
"message": "Add a Git hook to automate tasks during Git workflows."
}
},
"cliRules": {
"title": "Rules",
"description": "Manage code quality rules and linting configurations",
"severity": {
"error": "Error",
"warning": "Warning",
"info": "Info"
},
"stats": {
"total": "Total Rules",
"enabled": "Enabled"
},
"filters": {
"severity": "Severity",
"allSeverities": "All Severities",
"searchPlaceholder": "Search rules by name..."
},
"actions": {
"add": "Add Rule",
"edit": "Edit Rule",
"delete": "Delete Rule",
"toggle": "Toggle Rule"
},
"emptyState": {
"title": "No Rules Found",
"message": "Add a rule to enforce code quality standards."
}
}
}

View File

@@ -0,0 +1,43 @@
{
"title": "Commands Manager",
"description": "Manage custom slash commands for Claude Code",
"actions": {
"create": "New Command",
"edit": "Edit Command",
"delete": "Delete Command",
"refresh": "Refresh",
"expandAll": "Expand All",
"collapseAll": "Collapse All",
"copy": "Copy"
},
"source": {
"builtin": "Built-in",
"custom": "Custom"
},
"filters": {
"allCategories": "All Categories",
"allSources": "All Sources",
"category": "Category",
"source": "Source",
"searchPlaceholder": "Search commands by name, description, or alias..."
},
"card": {
"name": "Name",
"description": "Description",
"usage": "Usage",
"examples": "Examples",
"aliases": "Aliases",
"triggers": "Triggers",
"noDescription": "No description"
},
"emptyState": {
"title": "No Commands Found",
"message": "Try adjusting your search or filters."
},
"table": {
"name": "Name",
"description": "Description",
"scope": "Scope",
"status": "Status"
}
}

View File

@@ -0,0 +1,180 @@
{
"aria": {
"toggleNavigation": "Toggle navigation menu",
"refreshWorkspace": "Refresh workspace",
"switchToLightMode": "Switch to light mode",
"switchToDarkMode": "Switch to dark mode",
"userMenu": "User menu",
"actions": "Actions"
},
"actions": {
"save": "Save",
"cancel": "Cancel",
"delete": "Delete",
"edit": "Edit",
"create": "Create",
"refresh": "Refresh",
"loading": "Loading...",
"retry": "Retry",
"search": "Search...",
"searchIssues": "Search issues...",
"searchLoops": "Search loops...",
"clear": "Clear",
"close": "Close",
"copy": "Copy",
"view": "View",
"viewAll": "View All",
"update": "Update",
"add": "Add",
"new": "New",
"remove": "Remove",
"confirm": "Confirm",
"back": "Back",
"next": "Next",
"previous": "Previous",
"submit": "Submit",
"reset": "Reset",
"resetDesc": "Reset all user preferences to their default values. This cannot be undone.",
"resetConfirm": "Reset all settings to defaults?",
"resetToDefaults": "Reset to Defaults",
"enable": "Enable",
"disable": "Disable",
"expand": "Expand All",
"expandAll": "Expand All",
"collapse": "Collapse All",
"collapseAll": "Collapse All",
"filter": "Filter",
"filters": "Filters",
"clearFilters": "Clear filters",
"clearAll": "Clear all",
"select": "Select",
"selectAll": "Select All",
"deselectAll": "Deselect All"
},
"status": {
"active": "Active",
"inactive": "Inactive",
"pending": "Pending",
"inProgress": "In Progress",
"completed": "Completed",
"failed": "Failed",
"blocked": "Blocked",
"cancelled": "Cancelled",
"paused": "Paused",
"archived": "Archived",
"unknown": "Unknown",
"draft": "Draft",
"published": "Published",
"creating": "Creating...",
"deleting": "Deleting...",
"label": "Status",
"openIssues": "Open Issues"
},
"priority": {
"low": "Low",
"medium": "Medium",
"high": "High",
"critical": "Critical",
"label": "Priority"
},
"time": {
"seconds": "seconds",
"minutes": "minutes",
"hours": "hours",
"days": "days",
"weeks": "weeks",
"months": "months",
"years": "years",
"ago": "ago",
"justNow": "just now"
},
"buttons": {
"new": "New",
"create": "Create",
"edit": "Edit",
"delete": "Delete",
"save": "Save",
"cancel": "Cancel",
"confirm": "Confirm",
"retry": "Retry",
"refresh": "Refresh",
"close": "Close",
"back": "Back",
"next": "Next",
"submit": "Submit"
},
"form": {
"required": "Required",
"optional": "optional",
"placeholder": "Enter...",
"search": "Search...",
"select": "Select...",
"noResults": "No results found",
"loading": "Loading...",
"sessionId": "Session ID",
"title": "Title",
"description": "Description",
"sessionIdPlaceholder": "e.g., WFS-feature-auth",
"titlePlaceholder": "e.g., Authentication System",
"descriptionPlaceholder": "Brief description of the session"
},
"emptyState": {
"noData": "No data found",
"noResults": "No results found",
"noItems": "No items",
"createFirst": "Create your first item to get started",
"searchEmpty": "Try adjusting your search or filters",
"filterEmpty": "No items match your current filters"
},
"errors": {
"generic": "An error occurred",
"network": "Network error. Please check your connection.",
"timeout": "Request timed out. Please try again.",
"notFound": "Resource not found",
"unauthorized": "Unauthorized access",
"forbidden": "Access forbidden",
"validation": "Validation error",
"server": "Server error. Please try again later.",
"loadingFailed": "Failed to load data",
"loadFailed": "Failed to load data",
"saveFailed": "Failed to save",
"deleteFailed": "Failed to delete",
"updateFailed": "Failed to update",
"unknownError": "An unexpected error occurred"
},
"success": {
"saved": "Saved successfully",
"created": "Created successfully",
"updated": "Updated successfully",
"deleted": "Deleted successfully",
"copied": "Copied to clipboard"
},
"messages": {
"confirmDelete": "Are you sure you want to delete this item?",
"confirmArchive": "Are you sure you want to archive this item?",
"unsavedChanges": "You have unsaved changes. Are you sure you want to leave?",
"noPermission": "You don't have permission to perform this action"
},
"stats": {
"todayActivity": "Today's Activity",
"totalCommands": "Total Commands",
"totalSkills": "Total Skills",
"categories": "Categories"
},
"dialog": {
"createSession": "Create New Session",
"createSessionDesc": "Create a new workflow session to track your development tasks.",
"deleteSession": "Delete Session",
"deleteConfirm": "Are you sure you want to delete this session? This action cannot be undone."
},
"help": {
"title": "Help & Documentation",
"description": "Learn how to use CCW Dashboard and get the most out of your workflows",
"support": {
"title": "Need more help?",
"description": "Check the project documentation or reach out for support.",
"documentation": "Documentation",
"tutorials": "Tutorials"
}
}
}

View File

@@ -0,0 +1,44 @@
{
"progress": {
"title": "Fix Progress"
},
"tasks": {
"title": "Fix Tasks"
},
"stats": {
"total": "Total",
"fixed": "Fixed",
"failed": "Failed",
"pending": "Pending"
},
"status": {
"fixed": "Fixed",
"failed": "Failed",
"inProgress": "In Progress",
"pending": "Pending"
},
"filter": {
"all": "All",
"pending": "Pending",
"inProgress": "In Progress",
"fixed": "Fixed",
"failed": "Failed"
},
"task": {
"untitled": "Untitled Task",
"attempts": "{count} attempts"
},
"info": {
"created": "Created",
"updated": "Updated",
"description": "Description"
},
"notFound": {
"title": "Session Not Found",
"message": "The fix session you're looking for doesn't exist or has been deleted."
},
"empty": {
"title": "No Tasks Found",
"message": "No fix tasks match the current filter."
}
}

View File

@@ -0,0 +1,29 @@
{
"title": "CLI Execution History",
"description": "View and manage your CLI execution history",
"searchPlaceholder": "Search executions...",
"filterAllTools": "All Tools",
"deleteOptions": "Delete Options",
"deleteBy": "Delete By Tool",
"deleteAllTool": "Delete All {tool}",
"deleteAll": "Delete All History",
"actions": {
"view": "View Details",
"delete": "Delete",
"copyId": "Copy ID",
"copied": "Copied!"
},
"dialog": {
"deleteTitle": "Confirm Delete",
"deleteAllTitle": "Delete All History",
"deleteMessage": "Are you sure you want to delete this execution? This action cannot be undone.",
"deleteToolMessage": "Are you sure you want to delete all {tool} executions? This action cannot be undone.",
"deleteAllMessage": "Are you sure you want to delete all execution history? This action cannot be undone."
},
"empty": {
"title": "No Executions Found",
"message": "CLI execution history will appear here when you run CLI commands.",
"filtered": "No Matching Results",
"filteredMessage": "No executions match your current filter. Try adjusting your search or filter."
}
}

View File

@@ -0,0 +1,37 @@
{
"title": "Home",
"description": "Dashboard overview and statistics",
"stats": {
"activeSessions": "Active Sessions",
"totalTasks": "Total Tasks",
"completedTasks": "Completed",
"pendingTasks": "Pending",
"runningLoops": "Running Loops",
"openIssues": "Open Issues"
},
"sections": {
"statistics": "Statistics",
"recentSessions": "Recent Sessions",
"activeLoops": "Active Loops",
"openIssues": "Open Issues",
"quickActions": "Quick Actions"
},
"emptyState": {
"noSessions": {
"title": "No Sessions Found",
"message": "No workflow sessions match your current filter."
},
"noLoops": {
"title": "No Active Loops",
"message": "Start a new development loop to begin monitoring progress."
},
"noIssues": {
"title": "No Open Issues",
"message": "Create an issue to track bugs or feature requests."
}
},
"errors": {
"loadFailed": "Failed to load dashboard data",
"retry": "Retry"
}
}

View File

@@ -0,0 +1,64 @@
/**
* English translations
* Consolidated exports for all English translation files
*/
import common from './common.json';
import navigation from './navigation.json';
import sessions from './sessions.json';
import issues from './issues.json';
import home from './home.json';
import orchestrator from './orchestrator.json';
import loops from './loops.json';
import commands from './commands.json';
import memory from './memory.json';
import settings from './settings.json';
import fixSession from './fix-session.json';
import history from './history.json';
import liteTasks from './lite-tasks.json';
import projectOverview from './project-overview.json';
import reviewSession from './review-session.json';
import sessionDetail from './session-detail.json';
/**
* Flattens nested JSON object to dot-separated keys
* e.g., { actions: { save: 'Save' } } => { 'actions.save': 'Save' }
*/
function flattenMessages(obj: Record<string, unknown>, prefix = ''): Record<string, string> {
const result: Record<string, string> = {};
for (const key in obj) {
const fullKey = prefix ? `${prefix}.${key}` : key;
const value = obj[key];
if (typeof value === 'object' && value !== null && !Array.isArray(value)) {
Object.assign(result, flattenMessages(value as Record<string, unknown>, fullKey));
} else if (typeof value === 'string') {
result[fullKey] = value;
}
}
return result;
}
/**
* Consolidated and flattened English messages
*/
export default {
...flattenMessages(common),
...flattenMessages(navigation),
...flattenMessages(sessions),
...flattenMessages(issues),
...flattenMessages(home),
...flattenMessages(orchestrator),
...flattenMessages(loops),
...flattenMessages(commands),
...flattenMessages(memory),
...flattenMessages(settings),
...flattenMessages(fixSession),
...flattenMessages(history),
...flattenMessages(liteTasks),
...flattenMessages(projectOverview),
...flattenMessages(reviewSession),
...flattenMessages(sessionDetail),
} as Record<string, string>;

View File

@@ -0,0 +1,64 @@
{
"title": "Issues",
"description": "Track and manage issues",
"status": {
"open": "Open",
"inProgress": "In Progress",
"resolved": "Resolved",
"closed": "Closed",
"completed": "Completed"
},
"priority": {
"low": "Low",
"medium": "Medium",
"high": "High",
"critical": "Critical"
},
"actions": {
"create": "New Issue",
"edit": "Edit",
"delete": "Delete",
"viewDetails": "View Details",
"changeStatus": "Change Status",
"changePriority": "Change Priority",
"startProgress": "Start Progress",
"markResolved": "Mark Resolved",
"github": "Pull from GitHub"
},
"filters": {
"all": "All",
"open": "Open",
"inProgress": "In Progress",
"resolved": "Resolved",
"closed": "Closed",
"byPriority": "By Priority"
},
"emptyState": {
"title": "No Issues Found",
"message": "No issues match your current filter.",
"createFirst": "Create your first issue to get started"
},
"createDialog": {
"title": "Create New Issue",
"labels": {
"title": "Title",
"context": "Context",
"priority": "Priority"
},
"placeholders": {
"title": "Enter issue title...",
"context": "Describe the issue context..."
},
"buttons": {
"create": "Create",
"cancel": "Cancel",
"creating": "Creating..."
}
},
"card": {
"id": "ID",
"createdAt": "Created",
"updatedAt": "Updated",
"solutions": "{count, plural, one {solution} other {solutions}}"
}
}

View File

@@ -0,0 +1,26 @@
{
"title": "Lite Tasks",
"subtitle": "{count} session(s)",
"type": {
"plan": "Lite Plan",
"fix": "Lite Fix",
"multiCli": "Multi-CLI"
},
"rounds": "rounds",
"empty": {
"title": "No {type} sessions",
"message": "Create a new session to get started."
},
"flowchart": "Flowchart",
"implementationFlow": "Implementation Flow",
"focusPaths": "Focus Paths",
"acceptanceCriteria": "Acceptance Criteria",
"emptyDetail": {
"title": "No tasks in this session",
"message": "This session does not contain any tasks yet."
},
"notFound": {
"title": "Lite Task Not Found",
"message": "The requested lite task session could not be found."
}
}

View File

@@ -0,0 +1,68 @@
{
"title": "Loop Monitor",
"description": "Monitor and control running development loops",
"status": {
"created": "Pending",
"running": "Running",
"paused": "Paused",
"completed": "Completed",
"failed": "Failed"
},
"actions": {
"create": "New Loop",
"pause": "Pause",
"resume": "Resume",
"stop": "Stop",
"restart": "Restart",
"viewDetails": "View Details"
},
"emptyState": {
"title": "No Active Loops",
"message": "Start a new development loop to begin monitoring progress.",
"createFirst": "Start New Loop"
},
"card": {
"step": "Step",
"of": "of",
"progress": "Progress",
"prompt": "Prompt",
"tool": "Tool",
"iteration": "Iteration",
"error": "Error"
},
"createDialog": {
"title": "Start New Loop",
"labels": {
"prompt": "Prompt",
"tool": "CLI Tool (optional)"
},
"placeholders": {
"prompt": "Enter your development loop prompt...",
"tool": "e.g., gemini, qwen, codex"
},
"buttons": {
"create": "Start",
"cancel": "Cancel"
}
},
"monitor": {
"title": "Loop Monitor",
"loops": "Loops",
"tasks": "Tasks",
"iterations": "Iterations",
"timeline": "Timeline"
},
"taskStatus": {
"pending": "Pending",
"inProgress": "In Progress",
"blocked": "Blocked",
"done": "Done"
},
"columns": {
"pending": "Pending",
"running": "Running",
"paused": "Paused",
"completed": "Completed",
"failed": "Failed"
}
}

View File

@@ -0,0 +1,37 @@
{
"title": "MCP Servers",
"description": "Manage Model Context Protocol (MCP) servers for cross-CLI integration",
"scope": {
"global": "Global",
"project": "Project"
},
"status": {
"enabled": "Enabled",
"disabled": "Disabled"
},
"stats": {
"total": "Total Servers",
"enabled": "Enabled",
"global": "Global",
"project": "Project"
},
"command": "Command",
"args": "Arguments",
"env": "Environment Variables",
"filters": {
"all": "All",
"searchPlaceholder": "Search servers by name or command..."
},
"actions": {
"add": "Add Server",
"edit": "Edit Server",
"delete": "Delete Server",
"toggle": "Toggle Server",
"expand": "View Details"
},
"deleteConfirm": "Are you sure you want to delete the MCP server \"{name}\"?",
"emptyState": {
"title": "No MCP Servers Found",
"message": "Add an MCP server to enable cross-CLI integration with tools like Claude, Codex, and Qwen."
}
}

View File

@@ -0,0 +1,65 @@
{
"title": "Memory",
"description": "Manage core memory, context, and knowledge base",
"actions": {
"add": "Add Memory",
"edit": "Edit",
"delete": "Delete",
"copy": "Copy",
"refresh": "Refresh",
"expand": "Expand",
"collapse": "Collapse"
},
"stats": {
"totalSize": "Total Size",
"count": "Count",
"claudeMdCount": "CLAUDE.md Files",
"totalEntries": "Total Entries"
},
"filters": {
"search": "Search memories...",
"tags": "Tags",
"clear": "Clear",
"all": "All"
},
"card": {
"id": "ID",
"content": "Content",
"summary": "Summary",
"tags": "Tags",
"createdAt": "Created",
"updatedAt": "Updated",
"size": "Size",
"favorite": "Favorite",
"archived": "Archived"
},
"emptyState": {
"title": "No Memories Stored",
"message": "Add context and knowledge to help Claude understand your project better.",
"createFirst": "Add First Memory"
},
"createDialog": {
"title": "Add Memory",
"editTitle": "Edit Memory",
"labels": {
"content": "Content",
"tags": "Tags"
},
"placeholders": {
"content": "Enter memory content...",
"tags": "e.g., project, config, api"
},
"buttons": {
"create": "Add Memory",
"update": "Update Memory",
"cancel": "Cancel",
"creating": "Creating...",
"updating": "Updating..."
}
},
"types": {
"coreMemory": "Core Memory",
"workflow": "Workflow",
"cliHistory": "CLI History"
}
}

View File

@@ -0,0 +1,38 @@
{
"main": {
"home": "Home",
"sessions": "Sessions",
"liteTasks": "Lite Tasks",
"project": "Project",
"history": "History",
"orchestrator": "Orchestrator",
"loops": "Loop Monitor",
"issues": "Issues",
"skills": "Skills",
"commands": "Commands",
"memory": "Memory",
"settings": "Settings",
"mcp": "MCP Servers",
"endpoints": "CLI Endpoints",
"installations": "Installations",
"help": "Help"
},
"sidebar": {
"collapse": "Collapse",
"expand": "Expand sidebar",
"collapseAria": "Collapse sidebar"
},
"header": {
"brand": "Claude Code Workflow",
"brandShort": "CCW",
"noProject": "No project selected",
"settings": "Settings",
"logout": "Logout"
},
"breadcrumbs": {
"home": "Home",
"sessions": "Sessions",
"detail": "Details",
"settings": "Settings"
}
}

View File

@@ -0,0 +1,63 @@
{
"title": "Orchestrator",
"description": "Manage and execute workflow flows",
"flow": {
"title": "Flow",
"flows": "Flows",
"create": "New Flow",
"edit": "Edit Flow",
"delete": "Delete Flow",
"duplicate": "Duplicate Flow",
"export": "Export Flow",
"import": "Import Flow"
},
"execution": {
"title": "Execution",
"status": "Status",
"start": "Start",
"pause": "Pause",
"resume": "Resume",
"stop": "Stop",
"restart": "Restart",
"viewLogs": "View Logs"
},
"status": {
"pending": "Pending",
"running": "Running",
"paused": "Paused",
"completed": "Completed",
"failed": "Failed"
},
"node": {
"title": "Node",
"nodes": "Nodes",
"add": "Add Node",
"edit": "Edit Node",
"delete": "Delete Node",
"status": "Node Status",
"result": "Result"
},
"actions": {
"execute": "Execute",
"validate": "Validate",
"save": "Save",
"cancel": "Cancel"
},
"emptyState": {
"noFlows": {
"title": "No Flows Found",
"message": "Create your first workflow flow to get started."
},
"noExecution": {
"title": "No Execution History",
"message": "Execute a flow to see the execution history."
}
},
"monitor": {
"title": "Execution Monitor",
"logs": "Logs",
"timeline": "Timeline",
"variables": "Variables",
"realtime": "Real-time Updates"
}
}

View File

@@ -0,0 +1,52 @@
{
"noDescription": "No description available",
"header": {
"initialized": "Initialized"
},
"techStack": {
"title": "Technology Stack",
"languages": "Languages",
"frameworks": "Frameworks",
"buildTools": "Build Tools",
"testFrameworks": "Test Frameworks",
"primary": "Primary",
"noLanguages": "No languages detected",
"noFrameworks": "No frameworks detected"
},
"architecture": {
"title": "Architecture",
"style": "Style",
"layers": "Layers",
"patterns": "Patterns"
},
"components": {
"title": "Key Components",
"importance": {
"high": "High",
"medium": "Medium",
"low": "Low"
}
},
"devIndex": {
"title": "Development History",
"categories": "Categories",
"timeline": "Timeline"
},
"guidelines": {
"title": "Project Guidelines",
"conventions": "Conventions",
"constraints": "Constraints",
"qualityRules": "Quality Rules",
"learnings": "Session Learnings",
"scope": "Scope"
},
"stats": {
"title": "Statistics",
"totalFeatures": "Total Features",
"lastUpdated": "Last Updated"
},
"empty": {
"title": "No Project Overview",
"message": "Run /workflow:init to initialize project analysis"
}
}

View File

@@ -0,0 +1,41 @@
{
"title": "Review Session",
"type": "Review",
"severity": {
"critical": "Critical",
"high": "High",
"medium": "Medium",
"low": "Low"
},
"stats": {
"total": "Total Findings",
"dimensions": "Dimensions"
},
"search": {
"placeholder": "Search findings..."
},
"sort": {
"severity": "By Severity",
"dimension": "By Dimension",
"file": "By File"
},
"selection": {
"count": "{count} selected",
"selectAll": "Select All",
"clearAll": "Clear All",
"clear": "Clear"
},
"export": "Export Fix JSON",
"codeContext": "Code Context",
"rootCause": "Root Cause",
"impact": "Impact",
"recommendations": "Recommendations",
"empty": {
"title": "No findings found",
"message": "Try adjusting your filters or search query."
},
"notFound": {
"title": "Review Session Not Found",
"message": "The requested review session could not be found."
}
}

View File

@@ -0,0 +1,54 @@
{
"notFound": {
"title": "Session Not Found",
"message": "The session you're looking for doesn't exist or has been deleted."
},
"tabs": {
"tasks": "Tasks",
"context": "Context",
"summary": "Summary"
},
"tasks": {
"completed": "completed",
"inProgress": "in progress",
"pending": "pending",
"blocked": "blocked",
"status": {
"pending": "Pending",
"inProgress": "In Progress",
"completed": "Completed",
"blocked": "Blocked",
"skipped": "Skipped"
},
"untitled": "Untitled Task",
"empty": {
"title": "No Tasks Found",
"message": "This session has no tasks yet."
}
},
"context": {
"requirements": "Requirements",
"focusPaths": "Focus Paths",
"artifacts": "Artifacts",
"sharedContext": "Shared Context",
"techStack": "Tech Stack",
"conventions": "Conventions",
"empty": {
"title": "No Context Available",
"message": "This session has no context information."
}
},
"summary": {
"title": "Session Summary",
"empty": {
"title": "No Summary Available",
"message": "This session has no summary yet."
}
},
"info": {
"created": "Created",
"updated": "Updated",
"tasks": "Tasks",
"description": "Description"
}
}

View File

@@ -0,0 +1,48 @@
{
"title": "Sessions",
"description": "Manage your workflow sessions and track progress",
"status": {
"planning": "Planning",
"inProgress": "In Progress",
"completed": "Completed",
"archived": "Archived",
"paused": "Paused"
},
"actions": {
"viewDetails": "View Details",
"archive": "Archive",
"delete": "Delete",
"restore": "Restore",
"pause": "Pause",
"resume": "Resume"
},
"filters": {
"all": "All",
"active": "Active",
"planning": "Planning",
"completed": "Completed",
"archived": "Archived",
"paused": "Paused"
},
"searchPlaceholder": "Search sessions...",
"emptyState": {
"title": "No Sessions Found",
"message": "No workflow sessions match your current filter.",
"createFirst": "Create your first session to get started"
},
"card": {
"tasks": "tasks",
"findings": "findings",
"dimensions": "dimensions",
"progress": "Progress",
"createdAt": "Created",
"updatedAt": "Updated"
},
"detail": {
"overview": "Overview",
"tasks": "Tasks",
"summary": "Summary",
"metadata": "Metadata",
"timeline": "Timeline"
}
}

View File

@@ -0,0 +1,42 @@
{
"title": "Skills",
"description": "Manage and configure skills",
"source": {
"builtin": "Built-in",
"custom": "Custom",
"community": "Community"
},
"actions": {
"viewDetails": "View Details",
"configure": "Configure",
"enable": "Enable",
"disable": "Disable",
"toggle": "Toggle",
"install": "Install Skill"
},
"state": {
"enabled": "Enabled",
"disabled": "Disabled",
"on": "On",
"off": "Off"
},
"card": {
"triggers": "Triggers",
"category": "Category",
"author": "Author",
"version": "Version"
},
"filters": {
"all": "All",
"enabled": "Enabled",
"disabled": "Disabled"
},
"view": {
"grid": "Grid View",
"compact": "Compact View"
},
"emptyState": {
"title": "No Skills Found",
"message": "No skills match your current filter."
}
}