rrce-workflow 0.3.31 → 0.3.32
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/index.js +27 -29
- package/package.json +1 -1
package/dist/index.js
CHANGED
|
@@ -1892,7 +1892,7 @@ var init_utils2 = __esm({
|
|
|
1892
1892
|
import * as fs15 from "fs";
|
|
1893
1893
|
import * as path17 from "path";
|
|
1894
1894
|
function resolveProjectPaths(project, pathInput) {
|
|
1895
|
-
const config =
|
|
1895
|
+
const config = configService.load();
|
|
1896
1896
|
let workspaceRoot = pathInput;
|
|
1897
1897
|
let workspaceName = project;
|
|
1898
1898
|
if (!workspaceRoot && project) {
|
|
@@ -1963,7 +1963,7 @@ var init_paths2 = __esm({
|
|
|
1963
1963
|
import * as fs16 from "fs";
|
|
1964
1964
|
import * as path18 from "path";
|
|
1965
1965
|
function getExposedProjects() {
|
|
1966
|
-
const config =
|
|
1966
|
+
const config = configService.load();
|
|
1967
1967
|
const knownProjects = config.projects.filter((p) => !!p.path).map((p) => ({ name: p.name, path: p.path }));
|
|
1968
1968
|
const allProjects = projectService.scan({ knownProjects });
|
|
1969
1969
|
const activeProject = detectActiveProject(allProjects);
|
|
@@ -2010,7 +2010,7 @@ function getExposedProjects() {
|
|
|
2010
2010
|
function detectActiveProject(knownProjects) {
|
|
2011
2011
|
let scanList = knownProjects;
|
|
2012
2012
|
if (!scanList) {
|
|
2013
|
-
const config =
|
|
2013
|
+
const config = configService.load();
|
|
2014
2014
|
const knownProjectsMap = config.projects.filter((p) => !!p.path).map((p) => ({ name: p.name, path: p.path }));
|
|
2015
2015
|
const all = projectService.scan({ knownProjects: knownProjectsMap });
|
|
2016
2016
|
scanList = all.filter((project) => isProjectExposed(config, project.name, project.sourcePath || project.path));
|
|
@@ -2018,7 +2018,7 @@ function detectActiveProject(knownProjects) {
|
|
|
2018
2018
|
return findClosestProject(scanList);
|
|
2019
2019
|
}
|
|
2020
2020
|
function getProjectContext(projectName) {
|
|
2021
|
-
const config =
|
|
2021
|
+
const config = configService.load();
|
|
2022
2022
|
const projects = projectService.scan();
|
|
2023
2023
|
const project = projects.find((p) => p.name === projectName && isProjectExposed(config, p.name, p.sourcePath || p.path));
|
|
2024
2024
|
if (!project) {
|
|
@@ -2057,7 +2057,7 @@ import * as path19 from "path";
|
|
|
2057
2057
|
import * as os3 from "os";
|
|
2058
2058
|
import * as crypto from "crypto";
|
|
2059
2059
|
function getProjectTasks(projectName) {
|
|
2060
|
-
const config =
|
|
2060
|
+
const config = configService.load();
|
|
2061
2061
|
const projects = projectService.scan();
|
|
2062
2062
|
const project = projects.find((p) => p.name === projectName && isProjectExposed(config, p.name, p.sourcePath || p.path));
|
|
2063
2063
|
if (!project) {
|
|
@@ -2091,7 +2091,7 @@ function getProjectTasks(projectName) {
|
|
|
2091
2091
|
return tasks;
|
|
2092
2092
|
}
|
|
2093
2093
|
function getTask(projectName, taskSlug) {
|
|
2094
|
-
const config =
|
|
2094
|
+
const config = configService.load();
|
|
2095
2095
|
const projects = projectService.scan();
|
|
2096
2096
|
const project = projects.find((p) => p.name === projectName && isProjectExposed(config, p.name, p.sourcePath || p.path));
|
|
2097
2097
|
if (!project || !project.tasksPath) return null;
|
|
@@ -2105,7 +2105,7 @@ function getTask(projectName, taskSlug) {
|
|
|
2105
2105
|
}
|
|
2106
2106
|
}
|
|
2107
2107
|
async function createTask(projectName, taskSlug, taskData) {
|
|
2108
|
-
const config =
|
|
2108
|
+
const config = configService.load();
|
|
2109
2109
|
const projects = projectService.scan();
|
|
2110
2110
|
const project = projects.find((p) => p.name === projectName && isProjectExposed(config, p.name, p.sourcePath || p.path));
|
|
2111
2111
|
if (!project || !project.tasksPath) {
|
|
@@ -2160,7 +2160,7 @@ async function updateTask(projectName, taskSlug, taskData) {
|
|
|
2160
2160
|
workspace: meta.workspace
|
|
2161
2161
|
// Protect workspace metadata
|
|
2162
2162
|
};
|
|
2163
|
-
const config =
|
|
2163
|
+
const config = configService.load();
|
|
2164
2164
|
const projects = projectService.scan();
|
|
2165
2165
|
const project = projects.find((p) => p.name === projectName && isProjectExposed(config, p.name, p.sourcePath || p.path));
|
|
2166
2166
|
if (!project || !project.tasksPath) return null;
|
|
@@ -2169,7 +2169,7 @@ async function updateTask(projectName, taskSlug, taskData) {
|
|
|
2169
2169
|
return updatedMeta;
|
|
2170
2170
|
}
|
|
2171
2171
|
function deleteTask(projectName, taskSlug) {
|
|
2172
|
-
const config =
|
|
2172
|
+
const config = configService.load();
|
|
2173
2173
|
const projects = projectService.scan();
|
|
2174
2174
|
const project = projects.find((p) => p.name === projectName && isProjectExposed(config, p.name, p.sourcePath || p.path));
|
|
2175
2175
|
if (!project || !project.tasksPath) return false;
|
|
@@ -3356,7 +3356,7 @@ var init_search_utils = __esm({
|
|
|
3356
3356
|
import * as fs20 from "fs";
|
|
3357
3357
|
import * as path22 from "path";
|
|
3358
3358
|
async function searchCode(query, projectFilter, limit = 10, options) {
|
|
3359
|
-
const config =
|
|
3359
|
+
const config = configService.load();
|
|
3360
3360
|
const projects = getExposedProjects();
|
|
3361
3361
|
const results = [];
|
|
3362
3362
|
for (const project of projects) {
|
|
@@ -3429,7 +3429,7 @@ async function searchCode(query, projectFilter, limit = 10, options) {
|
|
|
3429
3429
|
};
|
|
3430
3430
|
}
|
|
3431
3431
|
async function searchKnowledge(query, projectFilter, options) {
|
|
3432
|
-
const config =
|
|
3432
|
+
const config = configService.load();
|
|
3433
3433
|
const projects = getExposedProjects();
|
|
3434
3434
|
const results = [];
|
|
3435
3435
|
const queryLower = query.toLowerCase();
|
|
@@ -3516,7 +3516,7 @@ async function searchKnowledge(query, projectFilter, options) {
|
|
|
3516
3516
|
};
|
|
3517
3517
|
}
|
|
3518
3518
|
async function findRelatedFiles2(filePath, projectName, options = {}) {
|
|
3519
|
-
const config =
|
|
3519
|
+
const config = configService.load();
|
|
3520
3520
|
const projects = getExposedProjects();
|
|
3521
3521
|
const project = projects.find((p) => p.name === projectName);
|
|
3522
3522
|
if (!project) {
|
|
@@ -3572,7 +3572,7 @@ async function findRelatedFiles2(filePath, projectName, options = {}) {
|
|
|
3572
3572
|
}
|
|
3573
3573
|
}
|
|
3574
3574
|
async function searchSymbols2(name, projectName, options = {}) {
|
|
3575
|
-
const config =
|
|
3575
|
+
const config = configService.load();
|
|
3576
3576
|
const projects = getExposedProjects();
|
|
3577
3577
|
const project = projects.find((p) => p.name === projectName);
|
|
3578
3578
|
if (!project) {
|
|
@@ -3650,7 +3650,7 @@ async function searchSymbols2(name, projectName, options = {}) {
|
|
|
3650
3650
|
}
|
|
3651
3651
|
}
|
|
3652
3652
|
async function getFileSummary(filePath, projectName) {
|
|
3653
|
-
const config =
|
|
3653
|
+
const config = configService.load();
|
|
3654
3654
|
const projects = getExposedProjects();
|
|
3655
3655
|
const project = projects.find((p) => p.name === projectName);
|
|
3656
3656
|
if (!project) {
|
|
@@ -3838,7 +3838,7 @@ var init_drift_service = __esm({
|
|
|
3838
3838
|
import * as fs22 from "fs";
|
|
3839
3839
|
import * as path24 from "path";
|
|
3840
3840
|
async function indexKnowledge(projectName, force = false, clean = false) {
|
|
3841
|
-
const config =
|
|
3841
|
+
const config = configService.load();
|
|
3842
3842
|
const projects = getExposedProjects();
|
|
3843
3843
|
const project = projects.find((p2) => p2.name === projectName || p2.path && p2.path === projectName);
|
|
3844
3844
|
if (!project) {
|
|
@@ -4339,7 +4339,7 @@ var init_validation = __esm({
|
|
|
4339
4339
|
import * as fs23 from "fs";
|
|
4340
4340
|
import * as path26 from "path";
|
|
4341
4341
|
function startSession(projectName, taskSlug, agent, phase) {
|
|
4342
|
-
const config =
|
|
4342
|
+
const config = configService.load();
|
|
4343
4343
|
const projects = projectService.scan();
|
|
4344
4344
|
const project = projects.find((p) => p.name === projectName && isProjectExposed(config, p.name, p.sourcePath || p.path));
|
|
4345
4345
|
if (!project || !project.tasksPath) {
|
|
@@ -4361,7 +4361,7 @@ function startSession(projectName, taskSlug, agent, phase) {
|
|
|
4361
4361
|
return { success: true, message: `Session started for ${agent} agent on task '${taskSlug}' (phase: ${phase})` };
|
|
4362
4362
|
}
|
|
4363
4363
|
function endSession(projectName, taskSlug) {
|
|
4364
|
-
const config =
|
|
4364
|
+
const config = configService.load();
|
|
4365
4365
|
const projects = projectService.scan();
|
|
4366
4366
|
const project = projects.find((p) => p.name === projectName && isProjectExposed(config, p.name, p.sourcePath || p.path));
|
|
4367
4367
|
if (!project || !project.tasksPath) {
|
|
@@ -4375,7 +4375,7 @@ function endSession(projectName, taskSlug) {
|
|
|
4375
4375
|
return { success: true, message: `Session ended for task '${taskSlug}'.` };
|
|
4376
4376
|
}
|
|
4377
4377
|
function updateAgentTodos(projectName, taskSlug, phase, agent, items) {
|
|
4378
|
-
const config =
|
|
4378
|
+
const config = configService.load();
|
|
4379
4379
|
const projects = projectService.scan();
|
|
4380
4380
|
const project = projects.find((p) => p.name === projectName && isProjectExposed(config, p.name, p.sourcePath || p.path));
|
|
4381
4381
|
if (!project || !project.tasksPath) {
|
|
@@ -4447,7 +4447,7 @@ function registerResourceHandlers(server) {
|
|
|
4447
4447
|
mimeType: "application/json"
|
|
4448
4448
|
});
|
|
4449
4449
|
for (const project of projects) {
|
|
4450
|
-
const config =
|
|
4450
|
+
const config = configService.load();
|
|
4451
4451
|
const permissions = getProjectPermissions(config, project.name, project.dataPath);
|
|
4452
4452
|
if (permissions.knowledge) {
|
|
4453
4453
|
resources.push({
|
|
@@ -5314,7 +5314,7 @@ async function cleanupSingleTask(projectName, taskSlug, projectDataPath) {
|
|
|
5314
5314
|
}
|
|
5315
5315
|
}
|
|
5316
5316
|
function getProjectDataPath(projectName) {
|
|
5317
|
-
const config =
|
|
5317
|
+
const config = configService.load();
|
|
5318
5318
|
const projects = projectService.scan();
|
|
5319
5319
|
const project = projects.find((p) => p.name === projectName && isProjectExposed(config, p.name, p.sourcePath || p.path));
|
|
5320
5320
|
if (!project || !project.dataPath) {
|
|
@@ -5562,9 +5562,8 @@ async function startMCPServer(options = {}) {
|
|
|
5562
5562
|
});
|
|
5563
5563
|
process.on("unhandledRejection", (reason) => {
|
|
5564
5564
|
logger.error("Unhandled Rejection", reason);
|
|
5565
|
-
console.error("Unhandled Rejection:", reason);
|
|
5566
5565
|
});
|
|
5567
|
-
const config =
|
|
5566
|
+
const config = configService.load();
|
|
5568
5567
|
mcpServer = new Server4(
|
|
5569
5568
|
{ name: "rrce-mcp-hub", version: "1.0.0" },
|
|
5570
5569
|
{ capabilities: { resources: {}, tools: {}, prompts: {} } }
|
|
@@ -5630,7 +5629,6 @@ var init_server = __esm({
|
|
|
5630
5629
|
"src/mcp/server.ts"() {
|
|
5631
5630
|
"use strict";
|
|
5632
5631
|
init_logger();
|
|
5633
|
-
init_config();
|
|
5634
5632
|
init_config_service();
|
|
5635
5633
|
init_resources2();
|
|
5636
5634
|
init_resources3();
|
|
@@ -5648,7 +5646,7 @@ import pc5 from "picocolors";
|
|
|
5648
5646
|
async function handleConfigure() {
|
|
5649
5647
|
const s = spinner();
|
|
5650
5648
|
s.start("Scanning for projects...");
|
|
5651
|
-
const config =
|
|
5649
|
+
const config = configService.load();
|
|
5652
5650
|
const knownPaths = config.projects.map((p) => p.path).filter((p) => !!p);
|
|
5653
5651
|
const projects = scanForProjects({ knownPaths });
|
|
5654
5652
|
logger.info("Configure: Loaded config", { projects: config.projects, defaultMode: config.defaults.includeNew });
|
|
@@ -5742,7 +5740,7 @@ locally in each project. MCP needs a central location.`,
|
|
|
5742
5740
|
if (!fs36.existsSync(resolvedPath)) {
|
|
5743
5741
|
fs36.mkdirSync(resolvedPath, { recursive: true });
|
|
5744
5742
|
}
|
|
5745
|
-
const config =
|
|
5743
|
+
const config = configService.load();
|
|
5746
5744
|
saveMCPConfig(config);
|
|
5747
5745
|
note3(
|
|
5748
5746
|
`${pc5.green("\u2713")} Global path configured: ${pc5.cyan(resolvedPath)}
|
|
@@ -7341,7 +7339,7 @@ async function handleStartServer() {
|
|
|
7341
7339
|
const { render } = await import("ink");
|
|
7342
7340
|
const { App: App2 } = await Promise.resolve().then(() => (init_App(), App_exports));
|
|
7343
7341
|
const { ConfigProvider: ConfigProvider2 } = await Promise.resolve().then(() => (init_ConfigContext(), ConfigContext_exports));
|
|
7344
|
-
const config =
|
|
7342
|
+
const config = configService.load();
|
|
7345
7343
|
const projects = scanForProjects();
|
|
7346
7344
|
const exposedProjects = projects.filter((p) => {
|
|
7347
7345
|
const cfg = config.projects.find(
|
|
@@ -8712,7 +8710,7 @@ Are you sure?`,
|
|
|
8712
8710
|
const s = spinner6();
|
|
8713
8711
|
s.start("Deleting projects...");
|
|
8714
8712
|
try {
|
|
8715
|
-
const mcpConfig =
|
|
8713
|
+
const mcpConfig = configService.load();
|
|
8716
8714
|
let configChanged = false;
|
|
8717
8715
|
for (const projectName of projectsToDelete) {
|
|
8718
8716
|
const project = globalProjects.find((p) => p.name === projectName);
|
|
@@ -8815,7 +8813,7 @@ async function runWizard() {
|
|
|
8815
8813
|
const workspaceName = getWorkspaceName(workspacePath);
|
|
8816
8814
|
const gitUser = getGitUser();
|
|
8817
8815
|
try {
|
|
8818
|
-
const mcpConfig =
|
|
8816
|
+
const mcpConfig = configService.load();
|
|
8819
8817
|
const { config: cleanConfig, removed } = cleanStaleProjects(mcpConfig);
|
|
8820
8818
|
if (removed.length > 0) {
|
|
8821
8819
|
saveMCPConfig(cleanConfig);
|
|
@@ -8845,7 +8843,7 @@ Workspace: ${pc13.bold(workspaceName)}`,
|
|
|
8845
8843
|
}
|
|
8846
8844
|
} else {
|
|
8847
8845
|
try {
|
|
8848
|
-
const mcpConfig =
|
|
8846
|
+
const mcpConfig = configService.load();
|
|
8849
8847
|
const mcpProject = mcpConfig.projects.find((p) => p.path === workspacePath);
|
|
8850
8848
|
if (mcpProject) {
|
|
8851
8849
|
isAlreadyConfigured = true;
|