chore(init): No longer ships readme with task-master init (commented out for now). No longer looking for task-master-mcp, instead checked for task-master-ai - this should prevent the init sequence from needlessly adding another mcp server with task-master-mcp to the mpc.json which a ton of people probably ran into.

This commit is contained in:
Eyal Toledano
2025-05-03 00:33:21 -04:00
parent 424aae10ed
commit 70d3f2f103
4 changed files with 28 additions and 28 deletions

View File

@@ -1,8 +1,8 @@
{ {
"models": { "models": {
"main": { "main": {
"provider": "anthropic", "provider": "google",
"modelId": "claude-3-7-sonnet-20250219", "modelId": "gemini-2.5-pro-exp-03-25",
"maxTokens": 100000, "maxTokens": 100000,
"temperature": 0.2 "temperature": 0.2
}, },

View File

@@ -180,9 +180,9 @@ function copyTemplateFile(templateName, targetPath, replacements = {}) {
// Map template names to their actual source paths // Map template names to their actual source paths
switch (templateName) { switch (templateName) {
case 'scripts_README.md': // case 'scripts_README.md':
sourcePath = path.join(__dirname, '..', 'assets', 'scripts_README.md'); // sourcePath = path.join(__dirname, '..', 'assets', 'scripts_README.md');
break; // break;
case 'dev_workflow.mdc': case 'dev_workflow.mdc':
sourcePath = path.join( sourcePath = path.join(
__dirname, __dirname,
@@ -219,8 +219,8 @@ function copyTemplateFile(templateName, targetPath, replacements = {}) {
'self_improve.mdc' 'self_improve.mdc'
); );
break; break;
case 'README-task-master.md': // case 'README-task-master.md':
sourcePath = path.join(__dirname, '..', 'README-task-master.md'); // sourcePath = path.join(__dirname, '..', 'README-task-master.md');
break; break;
case 'windsurfrules': case 'windsurfrules':
sourcePath = path.join(__dirname, '..', 'assets', '.windsurfrules'); sourcePath = path.join(__dirname, '..', 'assets', '.windsurfrules');
@@ -351,18 +351,18 @@ async function initializeProject(options = {}) {
} }
// Debug logging only if not in silent mode // Debug logging only if not in silent mode
if (!isSilentMode()) { // if (!isSilentMode()) {
console.log('===== DEBUG: INITIALIZE PROJECT OPTIONS RECEIVED ====='); // console.log('===== DEBUG: INITIALIZE PROJECT OPTIONS RECEIVED =====');
console.log('Full options object:', JSON.stringify(options)); // console.log('Full options object:', JSON.stringify(options));
console.log('options.yes:', options.yes); // console.log('options.yes:', options.yes);
console.log('=================================================='); // console.log('==================================================');
} // }
const skipPrompts = options.yes || (options.name && options.description); const skipPrompts = options.yes || (options.name && options.description);
if (!isSilentMode()) { // if (!isSilentMode()) {
console.log('Skip prompts determined:', skipPrompts); // console.log('Skip prompts determined:', skipPrompts);
} // }
if (skipPrompts) { if (skipPrompts) {
if (!isSilentMode()) { if (!isSilentMode()) {
@@ -565,12 +565,12 @@ function createProjectStructure(addAliases, dryRun) {
path.join(targetDir, 'scripts', 'example_prd.txt') path.join(targetDir, 'scripts', 'example_prd.txt')
); );
// Create main README.md // // Create main README.md
copyTemplateFile( // copyTemplateFile(
'README-task-master.md', // 'README-task-master.md',
path.join(targetDir, 'README-task-master.md'), // path.join(targetDir, 'README-task-master.md'),
replacements // replacements
); // );
// Initialize git repository if git is available // Initialize git repository if git is available
try { try {
@@ -796,14 +796,14 @@ function setupMCPConfiguration(targetDir) {
(server) => (server) =>
server.args && server.args &&
server.args.some( server.args.some(
(arg) => typeof arg === 'string' && arg.includes('task-master-mcp') (arg) => typeof arg === 'string' && arg.includes('task-master-ai')
) )
); );
if (hasMCPString) { if (hasMCPString) {
log( log(
'info', 'info',
'Found existing task-master-mcp configuration in mcp.json, leaving untouched' 'Found existing task-master-ai MCP configuration in mcp.json, leaving untouched'
); );
return; // Exit early, don't modify the existing configuration return; // Exit early, don't modify the existing configuration
} }

View File

@@ -1962,7 +1962,7 @@ Implementation notes:
- This stricter approach enforces configuration-as-code principles, ensures reproducibility, and prevents configuration drift, aligning with modern best practices for immutable infrastructure and automated configuration management[2][4]. - This stricter approach enforces configuration-as-code principles, ensures reproducibility, and prevents configuration drift, aligning with modern best practices for immutable infrastructure and automated configuration management[2][4].
</info added on 2025-04-22T02:41:51.174Z> </info added on 2025-04-22T02:41:51.174Z>
## 31. Implement Integration Tests for Unified AI Service [pending] ## 31. Implement Integration Tests for Unified AI Service [done]
### Dependencies: 61.18 ### Dependencies: 61.18
### Description: Implement integration tests for `ai-services-unified.js`. These tests should verify the correct routing to different provider modules based on configuration and ensure the unified service functions (`generateTextService`, `generateObjectService`, etc.) work correctly when called from modules like `task-manager.js`. [Updated: 5/2/2025] [Updated: 5/2/2025] [Updated: 5/2/2025] [Updated: 5/2/2025] ### Description: Implement integration tests for `ai-services-unified.js`. These tests should verify the correct routing to different provider modules based on configuration and ensure the unified service functions (`generateTextService`, `generateObjectService`, etc.) work correctly when called from modules like `task-manager.js`. [Updated: 5/2/2025] [Updated: 5/2/2025] [Updated: 5/2/2025] [Updated: 5/2/2025]
### Details: ### Details:
@@ -2586,7 +2586,7 @@ These enhancements ensure robust validation, unified service usage, and maintain
### Details: ### Details:
## 43. Remove all unnecessary console logs [pending] ## 43. Remove all unnecessary console logs [done]
### Dependencies: None ### Dependencies: None
### Description: ### Description:
### Details: ### Details:

View File

@@ -3311,7 +3311,7 @@
"id": 31, "id": 31,
"title": "Implement Integration Tests for Unified AI Service", "title": "Implement Integration Tests for Unified AI Service",
"description": "Implement integration tests for `ai-services-unified.js`. These tests should verify the correct routing to different provider modules based on configuration and ensure the unified service functions (`generateTextService`, `generateObjectService`, etc.) work correctly when called from modules like `task-manager.js`. [Updated: 5/2/2025] [Updated: 5/2/2025] [Updated: 5/2/2025] [Updated: 5/2/2025]", "description": "Implement integration tests for `ai-services-unified.js`. These tests should verify the correct routing to different provider modules based on configuration and ensure the unified service functions (`generateTextService`, `generateObjectService`, etc.) work correctly when called from modules like `task-manager.js`. [Updated: 5/2/2025] [Updated: 5/2/2025] [Updated: 5/2/2025] [Updated: 5/2/2025]",
"status": "pending", "status": "done",
"dependencies": [ "dependencies": [
"61.18" "61.18"
], ],
@@ -3426,7 +3426,7 @@
"title": "Remove all unnecessary console logs", "title": "Remove all unnecessary console logs",
"description": "", "description": "",
"details": "<info added on 2025-05-02T20:47:07.566Z>\n1. Identify all files within the project directory that contain console log statements.\n2. Use a code editor or IDE with search functionality to locate all instances of console.log().\n3. Review each console log statement to determine if it is necessary for debugging or logging purposes.\n4. For each unnecessary console log, remove the statement from the code.\n5. Ensure that the removal of console logs does not affect the functionality of the application.\n6. Test the application thoroughly to confirm that no errors are introduced by the removal of these logs.\n7. Commit the changes to the version control system with a message indicating the cleanup of console logs.\n</info added on 2025-05-02T20:47:07.566Z>\n<info added on 2025-05-02T20:47:56.080Z>\nHere are more detailed steps for removing unnecessary console logs:\n\n1. Identify all files within the project directory that contain console log statements:\n - Use grep or similar tools: `grep -r \"console.log\" --include=\"*.js\" --include=\"*.jsx\" --include=\"*.ts\" --include=\"*.tsx\" ./src`\n - Alternatively, use your IDE's project-wide search functionality with regex pattern `console\\.(log|debug|info|warn|error)`\n\n2. Categorize console logs:\n - Essential logs: Error reporting, critical application state changes\n - Debugging logs: Temporary logs used during development\n - Informational logs: Non-critical information that might be useful\n - Redundant logs: Duplicated information or trivial data\n\n3. Create a spreadsheet or document to track:\n - File path\n - Line number\n - Console log content\n - Category (essential/debugging/informational/redundant)\n - Decision (keep/remove)\n\n4. Apply these specific removal criteria:\n - Remove all logs with comments like \"TODO\", \"TEMP\", \"DEBUG\"\n - Remove logs that only show function entry/exit without meaningful data\n - Remove logs that duplicate information already available in the UI\n - Keep logs related to error handling or critical user actions\n - Consider replacing some logs with proper error handling\n\n5. For logs you decide to keep:\n - Add clear comments explaining why they're necessary\n - Consider moving them to a centralized logging service\n - Implement log levels (debug, info, warn, error) if not already present\n\n6. Use search and replace with regex to batch remove similar patterns:\n - Example: `console\\.log\\(\\s*['\"]Processing.*?['\"]\\s*\\);`\n\n7. After removal, implement these testing steps:\n - Run all unit tests\n - Check browser console for any remaining logs during manual testing\n - Verify error handling still works properly\n - Test edge cases where logs might have been masking issues\n\n8. Consider implementing a linting rule to prevent unnecessary console logs in future code:\n - Add ESLint rule \"no-console\" with appropriate exceptions\n - Configure CI/CD pipeline to fail if new console logs are added\n\n9. Document any logging standards for the team to follow going forward.\n\n10. After committing changes, monitor the application in staging environment to ensure no critical information is lost.\n</info added on 2025-05-02T20:47:56.080Z>", "details": "<info added on 2025-05-02T20:47:07.566Z>\n1. Identify all files within the project directory that contain console log statements.\n2. Use a code editor or IDE with search functionality to locate all instances of console.log().\n3. Review each console log statement to determine if it is necessary for debugging or logging purposes.\n4. For each unnecessary console log, remove the statement from the code.\n5. Ensure that the removal of console logs does not affect the functionality of the application.\n6. Test the application thoroughly to confirm that no errors are introduced by the removal of these logs.\n7. Commit the changes to the version control system with a message indicating the cleanup of console logs.\n</info added on 2025-05-02T20:47:07.566Z>\n<info added on 2025-05-02T20:47:56.080Z>\nHere are more detailed steps for removing unnecessary console logs:\n\n1. Identify all files within the project directory that contain console log statements:\n - Use grep or similar tools: `grep -r \"console.log\" --include=\"*.js\" --include=\"*.jsx\" --include=\"*.ts\" --include=\"*.tsx\" ./src`\n - Alternatively, use your IDE's project-wide search functionality with regex pattern `console\\.(log|debug|info|warn|error)`\n\n2. Categorize console logs:\n - Essential logs: Error reporting, critical application state changes\n - Debugging logs: Temporary logs used during development\n - Informational logs: Non-critical information that might be useful\n - Redundant logs: Duplicated information or trivial data\n\n3. Create a spreadsheet or document to track:\n - File path\n - Line number\n - Console log content\n - Category (essential/debugging/informational/redundant)\n - Decision (keep/remove)\n\n4. Apply these specific removal criteria:\n - Remove all logs with comments like \"TODO\", \"TEMP\", \"DEBUG\"\n - Remove logs that only show function entry/exit without meaningful data\n - Remove logs that duplicate information already available in the UI\n - Keep logs related to error handling or critical user actions\n - Consider replacing some logs with proper error handling\n\n5. For logs you decide to keep:\n - Add clear comments explaining why they're necessary\n - Consider moving them to a centralized logging service\n - Implement log levels (debug, info, warn, error) if not already present\n\n6. Use search and replace with regex to batch remove similar patterns:\n - Example: `console\\.log\\(\\s*['\"]Processing.*?['\"]\\s*\\);`\n\n7. After removal, implement these testing steps:\n - Run all unit tests\n - Check browser console for any remaining logs during manual testing\n - Verify error handling still works properly\n - Test edge cases where logs might have been masking issues\n\n8. Consider implementing a linting rule to prevent unnecessary console logs in future code:\n - Add ESLint rule \"no-console\" with appropriate exceptions\n - Configure CI/CD pipeline to fail if new console logs are added\n\n9. Document any logging standards for the team to follow going forward.\n\n10. After committing changes, monitor the application in staging environment to ensure no critical information is lost.\n</info added on 2025-05-02T20:47:56.080Z>",
"status": "pending", "status": "done",
"dependencies": [], "dependencies": [],
"parentTaskId": 61 "parentTaskId": 61
}, },