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.
Files changed (2) hide show
  1. package/index.js +22 -1
  2. 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 = ["sfn-iam-api", "sfn-events-api", "sfn-tenants-api", "sfn-policy-api", "sfn-gateway-api", "sfn-web-ui"];
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));
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "secufusion-mcp",
3
- "version": "1.0.22",
3
+ "version": "1.0.23",
4
4
  "type": "module",
5
5
  "description": "SecuFusion MCP server - developer workflow tooling with guardrails",
6
6
  "main": "index.js",