@sweetoburrito/backstage-plugin-ai-assistant-backend-module-ingestor-catalog 0.3.3 → 0.3.5

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.
@@ -1 +1 @@
1
- {"version":3,"file":"entity-to-embedding-doc.cjs.js","sources":["../../../../src/services/ingestor/helpers/entity-to-embedding-doc.ts"],"sourcesContent":["import { Entity } from '@backstage/catalog-model';\nimport { EmbeddingDocument } from '@sweetoburrito/backstage-plugin-ai-assistant-node';\nimport { MODULE_ID } from '../../../constants/module';\n\nexport function mapEntityToEmbeddingDoc(entity: Entity): EmbeddingDocument {\n const ns = entity.metadata.namespace || 'default';\n const id = `${entity.kind.toLowerCase()}:${ns}/${entity.metadata.name}`;\n\n // Build content string (natural language summary)\n const parts: string[] = [];\n\n // Title & description\n if (entity.metadata.title) {\n parts.push(\n `${entity.kind} \"${entity.metadata.title}\" (${entity.metadata.name})`,\n );\n } else {\n parts.push(`${entity.kind} \"${entity.metadata.name}\"`);\n }\n\n if (entity.metadata.description) {\n parts.push(`Description: ${entity.metadata.description}.`);\n }\n\n // Spec (flatten key fields if present)\n if (entity.spec) {\n for (const [key, value] of Object.entries(entity.spec)) {\n if (typeof value === 'string') {\n parts.push(`${key}: ${value}`);\n } else if (Array.isArray(value)) {\n parts.push(`${key}: ${value.join(', ')}`);\n } else if (typeof value === 'object' && value !== null) {\n for (const [k, v] of Object.entries(value)) {\n if (typeof v === 'string') {\n parts.push(`${k}: ${v}`);\n }\n }\n }\n }\n }\n\n // Relations (express in plain text)\n if (entity.relations?.length) {\n const relationText = entity.relations\n .map(r => `${r.type} → ${r.targetRef}`)\n .join('; ');\n parts.push(`Relations: ${relationText}`);\n }\n\n return {\n metadata: {\n source: MODULE_ID,\n id,\n kind: entity.kind,\n namespace: ns,\n name: entity.metadata.name,\n uid: entity.metadata.uid,\n },\n content: parts.join('\\n'),\n };\n}\n"],"names":["MODULE_ID"],"mappings":";;;;AAIO,SAAS,wBAAwB,MAAA,EAAmC;AACzE,EAAA,MAAM,EAAA,GAAK,MAAA,CAAO,QAAA,CAAS,SAAA,IAAa,SAAA;AACxC,EAAA,MAAM,EAAA,GAAK,CAAA,EAAG,MAAA,CAAO,IAAA,CAAK,WAAA,EAAa,CAAA,CAAA,EAAI,EAAE,CAAA,CAAA,EAAI,MAAA,CAAO,QAAA,CAAS,IAAI,CAAA,CAAA;AAGrE,EAAA,MAAM,QAAkB,EAAC;AAGzB,EAAA,IAAI,MAAA,CAAO,SAAS,KAAA,EAAO;AACzB,IAAA,KAAA,CAAM,IAAA;AAAA,MACJ,CAAA,EAAG,MAAA,CAAO,IAAI,CAAA,EAAA,EAAK,MAAA,CAAO,SAAS,KAAK,CAAA,GAAA,EAAM,MAAA,CAAO,QAAA,CAAS,IAAI,CAAA,CAAA;AAAA,KACpE;AAAA,EACF,CAAA,MAAO;AACL,IAAA,KAAA,CAAM,IAAA,CAAK,GAAG,MAAA,CAAO,IAAI,KAAK,MAAA,CAAO,QAAA,CAAS,IAAI,CAAA,CAAA,CAAG,CAAA;AAAA,EACvD;AAEA,EAAA,IAAI,MAAA,CAAO,SAAS,WAAA,EAAa;AAC/B,IAAA,KAAA,CAAM,IAAA,CAAK,CAAA,aAAA,EAAgB,MAAA,CAAO,QAAA,CAAS,WAAW,CAAA,CAAA,CAAG,CAAA;AAAA,EAC3D;AAGA,EAAA,IAAI,OAAO,IAAA,EAAM;AACf,IAAA,KAAA,MAAW,CAAC,KAAK,KAAK,CAAA,IAAK,OAAO,OAAA,CAAQ,MAAA,CAAO,IAAI,CAAA,EAAG;AACtD,MAAA,IAAI,OAAO,UAAU,QAAA,EAAU;AAC7B,QAAA,KAAA,CAAM,IAAA,CAAK,CAAA,EAAG,GAAG,CAAA,EAAA,EAAK,KAAK,CAAA,CAAE,CAAA;AAAA,MAC/B,CAAA,MAAA,IAAW,KAAA,CAAM,OAAA,CAAQ,KAAK,CAAA,EAAG;AAC/B,QAAA,KAAA,CAAM,IAAA,CAAK,GAAG,GAAG,CAAA,EAAA,EAAK,MAAM,IAAA,CAAK,IAAI,CAAC,CAAA,CAAE,CAAA;AAAA,MAC1C,CAAA,MAAA,IAAW,OAAO,KAAA,KAAU,QAAA,IAAY,UAAU,IAAA,EAAM;AACtD,QAAA,KAAA,MAAW,CAAC,CAAA,EAAG,CAAC,KAAK,MAAA,CAAO,OAAA,CAAQ,KAAK,CAAA,EAAG;AAC1C,UAAA,IAAI,OAAO,MAAM,QAAA,EAAU;AACzB,YAAA,KAAA,CAAM,IAAA,CAAK,CAAA,EAAG,CAAC,CAAA,EAAA,EAAK,CAAC,CAAA,CAAE,CAAA;AAAA,UACzB;AAAA,QACF;AAAA,MACF;AAAA,IACF;AAAA,EACF;AAGA,EAAA,IAAI,MAAA,CAAO,WAAW,MAAA,EAAQ;AAC5B,IAAA,MAAM,YAAA,GAAe,MAAA,CAAO,SAAA,CACzB,GAAA,CAAI,OAAK,CAAA,EAAG,CAAA,CAAE,IAAI,CAAA,QAAA,EAAM,CAAA,CAAE,SAAS,CAAA,CAAE,CAAA,CACrC,KAAK,IAAI,CAAA;AACZ,IAAA,KAAA,CAAM,IAAA,CAAK,CAAA,WAAA,EAAc,YAAY,CAAA,CAAE,CAAA;AAAA,EACzC;AAEA,EAAA,OAAO;AAAA,IACL,QAAA,EAAU;AAAA,MACR,MAAA,EAAQA,kBAAA;AAAA,MACR,EAAA;AAAA,MACA,MAAM,MAAA,CAAO,IAAA;AAAA,MACb,SAAA,EAAW,EAAA;AAAA,MACX,IAAA,EAAM,OAAO,QAAA,CAAS,IAAA;AAAA,MACtB,GAAA,EAAK,OAAO,QAAA,CAAS;AAAA,KACvB;AAAA,IACA,OAAA,EAAS,KAAA,CAAM,IAAA,CAAK,IAAI;AAAA,GAC1B;AACF;;;;"}
1
+ {"version":3,"file":"entity-to-embedding-doc.cjs.js","sources":["../../../../src/services/ingestor/helpers/entity-to-embedding-doc.ts"],"sourcesContent":["import { Entity } from '@backstage/catalog-model';\nimport { EmbeddingDocument } from '@sweetoburrito/backstage-plugin-ai-assistant-node';\nimport { MODULE_ID } from '../../../constants/module';\n\nexport function mapEntityToEmbeddingDoc(entity: Entity): EmbeddingDocument {\n const ns = entity.metadata.namespace || 'default';\n const id = `${entity.kind.toLowerCase()}:${ns}/${entity.metadata.name}`;\n\n // Build content string (natural language summary)\n const parts: string[] = [];\n\n // Title & description\n if (entity.metadata.title) {\n parts.push(\n `${entity.kind} \"${entity.metadata.title}\" (${entity.metadata.name})`,\n );\n } else {\n parts.push(`${entity.kind} \"${entity.metadata.name}\"`);\n }\n\n if (entity.metadata.description) {\n parts.push(`Description: ${entity.metadata.description}.`);\n }\n\n // Spec (flatten key fields if present)\n if (entity.spec) {\n for (const [key, value] of Object.entries(entity.spec)) {\n if (typeof value === 'string') {\n parts.push(`${key}: ${value}`);\n } else if (Array.isArray(value)) {\n parts.push(`${key}: ${value.join(', ')}`);\n } else if (typeof value === 'object' && value !== null) {\n for (const [k, v] of Object.entries(value)) {\n if (typeof v === 'string') {\n parts.push(`${k}: ${v}`);\n }\n }\n }\n }\n }\n\n // Relations (express in plain text)\n if (entity.relations?.length) {\n const relationText = entity.relations\n .map(r => `${r.type} → ${r.targetRef}`)\n .join('; ');\n parts.push(`Relations: ${relationText}`);\n }\n\n return {\n metadata: {\n source: MODULE_ID,\n id,\n kind: entity.kind,\n namespace: ns,\n name: entity.metadata.name,\n uid: entity.metadata.uid!,\n },\n content: parts.join('\\n'),\n };\n}\n"],"names":["MODULE_ID"],"mappings":";;;;AAIO,SAAS,wBAAwB,MAAA,EAAmC;AACzE,EAAA,MAAM,EAAA,GAAK,MAAA,CAAO,QAAA,CAAS,SAAA,IAAa,SAAA;AACxC,EAAA,MAAM,EAAA,GAAK,CAAA,EAAG,MAAA,CAAO,IAAA,CAAK,WAAA,EAAa,CAAA,CAAA,EAAI,EAAE,CAAA,CAAA,EAAI,MAAA,CAAO,QAAA,CAAS,IAAI,CAAA,CAAA;AAGrE,EAAA,MAAM,QAAkB,EAAC;AAGzB,EAAA,IAAI,MAAA,CAAO,SAAS,KAAA,EAAO;AACzB,IAAA,KAAA,CAAM,IAAA;AAAA,MACJ,CAAA,EAAG,MAAA,CAAO,IAAI,CAAA,EAAA,EAAK,MAAA,CAAO,SAAS,KAAK,CAAA,GAAA,EAAM,MAAA,CAAO,QAAA,CAAS,IAAI,CAAA,CAAA;AAAA,KACpE;AAAA,EACF,CAAA,MAAO;AACL,IAAA,KAAA,CAAM,IAAA,CAAK,GAAG,MAAA,CAAO,IAAI,KAAK,MAAA,CAAO,QAAA,CAAS,IAAI,CAAA,CAAA,CAAG,CAAA;AAAA,EACvD;AAEA,EAAA,IAAI,MAAA,CAAO,SAAS,WAAA,EAAa;AAC/B,IAAA,KAAA,CAAM,IAAA,CAAK,CAAA,aAAA,EAAgB,MAAA,CAAO,QAAA,CAAS,WAAW,CAAA,CAAA,CAAG,CAAA;AAAA,EAC3D;AAGA,EAAA,IAAI,OAAO,IAAA,EAAM;AACf,IAAA,KAAA,MAAW,CAAC,KAAK,KAAK,CAAA,IAAK,OAAO,OAAA,CAAQ,MAAA,CAAO,IAAI,CAAA,EAAG;AACtD,MAAA,IAAI,OAAO,UAAU,QAAA,EAAU;AAC7B,QAAA,KAAA,CAAM,IAAA,CAAK,CAAA,EAAG,GAAG,CAAA,EAAA,EAAK,KAAK,CAAA,CAAE,CAAA;AAAA,MAC/B,CAAA,MAAA,IAAW,KAAA,CAAM,OAAA,CAAQ,KAAK,CAAA,EAAG;AAC/B,QAAA,KAAA,CAAM,IAAA,CAAK,GAAG,GAAG,CAAA,EAAA,EAAK,MAAM,IAAA,CAAK,IAAI,CAAC,CAAA,CAAE,CAAA;AAAA,MAC1C,CAAA,MAAA,IAAW,OAAO,KAAA,KAAU,QAAA,IAAY,UAAU,IAAA,EAAM;AACtD,QAAA,KAAA,MAAW,CAAC,CAAA,EAAG,CAAC,KAAK,MAAA,CAAO,OAAA,CAAQ,KAAK,CAAA,EAAG;AAC1C,UAAA,IAAI,OAAO,MAAM,QAAA,EAAU;AACzB,YAAA,KAAA,CAAM,IAAA,CAAK,CAAA,EAAG,CAAC,CAAA,EAAA,EAAK,CAAC,CAAA,CAAE,CAAA;AAAA,UACzB;AAAA,QACF;AAAA,MACF;AAAA,IACF;AAAA,EACF;AAGA,EAAA,IAAI,MAAA,CAAO,WAAW,MAAA,EAAQ;AAC5B,IAAA,MAAM,YAAA,GAAe,MAAA,CAAO,SAAA,CACzB,GAAA,CAAI,OAAK,CAAA,EAAG,CAAA,CAAE,IAAI,CAAA,QAAA,EAAM,CAAA,CAAE,SAAS,CAAA,CAAE,CAAA,CACrC,KAAK,IAAI,CAAA;AACZ,IAAA,KAAA,CAAM,IAAA,CAAK,CAAA,WAAA,EAAc,YAAY,CAAA,CAAE,CAAA;AAAA,EACzC;AAEA,EAAA,OAAO;AAAA,IACL,QAAA,EAAU;AAAA,MACR,MAAA,EAAQA,kBAAA;AAAA,MACR,EAAA;AAAA,MACA,MAAM,MAAA,CAAO,IAAA;AAAA,MACb,SAAA,EAAW,EAAA;AAAA,MACX,IAAA,EAAM,OAAO,QAAA,CAAS,IAAA;AAAA,MACtB,GAAA,EAAK,OAAO,QAAA,CAAS;AAAA,KACvB;AAAA,IACA,OAAA,EAAS,KAAA,CAAM,IAAA,CAAK,IAAI;AAAA,GAC1B;AACF;;;;"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@sweetoburrito/backstage-plugin-ai-assistant-backend-module-ingestor-catalog",
3
- "version": "0.3.3",
3
+ "version": "0.3.5",
4
4
  "license": "Apache-2.0",
5
5
  "description": "The ingestor-catalog backend module for the ai-assistant plugin.",
6
6
  "main": "dist/index.cjs.js",
@@ -31,7 +31,7 @@
31
31
  "@backstage/backend-plugin-api": "backstage:^",
32
32
  "@backstage/catalog-model": "backstage:^",
33
33
  "@backstage/plugin-catalog-node": "backstage:^",
34
- "@sweetoburrito/backstage-plugin-ai-assistant-node": "^0.4.0"
34
+ "@sweetoburrito/backstage-plugin-ai-assistant-node": "^0.5.1"
35
35
  },
36
36
  "devDependencies": {
37
37
  "@backstage/backend-defaults": "backstage:^",