Add complexity score to task (#528)
* feat: added complexity score handling to list tasks * feat: added handling for complexity score in find task by id * test: remove console dir * chore: add changeset * format: fixed formatting issues * ref: reorder imports * feat: updated handling for findTaskById to take complexityReport as input * test: fix findTaskById complexity report testcases * fix: added handling for complexity report path * chore: add changeset * fix: moved complexity report handling to list tasks rather than list tasks direct * fix: add complexity handling to next task in list command * fix: added handling for show cli * fix: fixed next cli command handling * fix: fixed handling for complexity report path in mcp * feat: added handling to get-task * feat: added handling for next-task in mcp * feat: add handling for report path override * chore: remove unecessary changeset * ref: remove unecessary comments * feat: update list and find next task * fix: fixed running tests * fix: fixed findTaskById * fix: fixed findTaskById and tests * fix: fixed addComplexityToTask util * fix: fixed mcp server project root input * chore: cleanup --------- Co-authored-by: Shrey Paharia <shreypaharia@gmail.com>
This commit is contained in:
@@ -10,7 +10,10 @@ import {
|
||||
withNormalizedProjectRoot
|
||||
} from './utils.js';
|
||||
import { listTasksDirect } from '../core/task-master-core.js';
|
||||
import { findTasksJsonPath } from '../core/utils/path-utils.js';
|
||||
import {
|
||||
findTasksJsonPath,
|
||||
findComplexityReportPath
|
||||
} from '../core/utils/path-utils.js';
|
||||
|
||||
/**
|
||||
* Register the getTasks tool with the MCP server
|
||||
@@ -38,6 +41,12 @@ export function registerListTasksTool(server) {
|
||||
.describe(
|
||||
'Path to the tasks file (relative to project root or absolute)'
|
||||
),
|
||||
complexityReport: z
|
||||
.string()
|
||||
.optional()
|
||||
.describe(
|
||||
'Path to the complexity report file (relative to project root or absolute)'
|
||||
),
|
||||
projectRoot: z
|
||||
.string()
|
||||
.describe('The directory of the project. Must be an absolute path.')
|
||||
@@ -60,11 +69,23 @@ export function registerListTasksTool(server) {
|
||||
);
|
||||
}
|
||||
|
||||
// Resolve the path to complexity report
|
||||
let complexityReportPath;
|
||||
try {
|
||||
complexityReportPath = findComplexityReportPath(
|
||||
args.projectRoot,
|
||||
args.complexityReport,
|
||||
log
|
||||
);
|
||||
} catch (error) {
|
||||
log.error(`Error finding complexity report: ${error.message}`);
|
||||
}
|
||||
const result = await listTasksDirect(
|
||||
{
|
||||
tasksJsonPath: tasksJsonPath,
|
||||
status: args.status,
|
||||
withSubtasks: args.withSubtasks
|
||||
withSubtasks: args.withSubtasks,
|
||||
reportPath: complexityReportPath
|
||||
},
|
||||
log
|
||||
);
|
||||
|
||||
Reference in New Issue
Block a user