secufusion-mcp 1.0.22 → 1.0.23
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/index.js +22 -1
- package/package.json +1 -1
package/index.js
CHANGED
|
@@ -1262,7 +1262,18 @@ server.tool("classify_task", "MANDATORY FIRST STEP for every task without except
|
|
|
1262
1262
|
// CHECK 1: Title accuracy
|
|
1263
1263
|
const verbs = ["delete", "create", "fetch", "update", "add", "remove", "fix", "implement"];
|
|
1264
1264
|
const nouns = ["tenant", "admin", "device", "policy", "gateway", "notification", "audit", "role", "permission", "user", "group", "mapping", "api", "endpoint", "dashboard", "db", "database"];
|
|
1265
|
-
const services = [
|
|
1265
|
+
const services = [];
|
|
1266
|
+
if (spec) {
|
|
1267
|
+
if (spec.microservices)
|
|
1268
|
+
Object.keys(spec.microservices).forEach(k => services.push(k.toLowerCase()));
|
|
1269
|
+
if (spec.frontend && spec.frontend.repo)
|
|
1270
|
+
services.push(spec.frontend.repo.toLowerCase());
|
|
1271
|
+
if (spec.chrome_extension && spec.chrome_extension.repo)
|
|
1272
|
+
services.push(spec.chrome_extension.repo.toLowerCase());
|
|
1273
|
+
}
|
|
1274
|
+
if (services.length === 0) {
|
|
1275
|
+
services.push("sfn-iam-api", "sfn-events-api", "sfn-tenants-api", "sfn-policy-api", "sfn-gateway-api", "sfn-web-ui");
|
|
1276
|
+
}
|
|
1266
1277
|
const foundConcepts = [];
|
|
1267
1278
|
[...verbs, ...nouns, ...services].forEach(word => {
|
|
1268
1279
|
if (descLower.includes(word))
|
|
@@ -1427,6 +1438,16 @@ server.tool("classify_task", "MANDATORY FIRST STEP for every task without except
|
|
|
1427
1438
|
"column", "table", "migration", "flyway", "entity", "@entity",
|
|
1428
1439
|
"schema", "alter", "add column", "drop column", "rename column",
|
|
1429
1440
|
];
|
|
1441
|
+
if (spec && spec.microservices) {
|
|
1442
|
+
Object.values(spec.microservices).forEach(svc => {
|
|
1443
|
+
if (Array.isArray(svc.owns_tables)) {
|
|
1444
|
+
svc.owns_tables.forEach(t => DB_CHANGE_SIGNALS.push(t.toLowerCase()));
|
|
1445
|
+
}
|
|
1446
|
+
if (Array.isArray(svc.kafka_consumes)) {
|
|
1447
|
+
svc.kafka_consumes.forEach(topic => KAFKA_CHANGE_SIGNALS.push(topic.toLowerCase()));
|
|
1448
|
+
}
|
|
1449
|
+
});
|
|
1450
|
+
}
|
|
1430
1451
|
const endpointRisk = ENDPOINT_CHANGE_SIGNALS.some(s => corpus.includes(s));
|
|
1431
1452
|
const kafkaRisk = KAFKA_CHANGE_SIGNALS.some(s => corpus.includes(s));
|
|
1432
1453
|
const dbRisk = DB_CHANGE_SIGNALS.some(s => corpus.includes(s));
|