@pellux/goodvibes-sdk 0.33.30 → 0.33.31
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/browser-agent.d.ts +6 -0
- package/dist/browser-agent.d.ts.map +1 -0
- package/dist/browser-agent.js +74 -0
- package/dist/browser-knowledge.d.ts +4 -3
- package/dist/browser-knowledge.d.ts.map +1 -1
- package/dist/browser-knowledge.js +6 -3
- package/dist/contracts/artifacts/operator-contract.json +1 -1
- package/dist/platform/daemon/facade-composition.d.ts.map +1 -1
- package/dist/platform/daemon/facade-composition.js +2 -0
- package/dist/platform/daemon/facade-types.d.ts +1 -0
- package/dist/platform/daemon/facade-types.d.ts.map +1 -1
- package/dist/platform/daemon/http/router.d.ts +3 -1
- package/dist/platform/daemon/http/router.d.ts.map +1 -1
- package/dist/platform/daemon/http/router.js +35 -2
- package/dist/platform/daemon/types.d.ts +1 -0
- package/dist/platform/daemon/types.d.ts.map +1 -1
- package/dist/platform/knowledge/index.d.ts +2 -1
- package/dist/platform/knowledge/index.d.ts.map +1 -1
- package/dist/platform/knowledge/index.js +2 -1
- package/dist/platform/knowledge/map-filters.d.ts.map +1 -1
- package/dist/platform/knowledge/map-filters.js +2 -3
- package/dist/platform/knowledge/packet.d.ts +1 -1
- package/dist/platform/knowledge/packet.d.ts.map +1 -1
- package/dist/platform/knowledge/packet.js +4 -5
- package/dist/platform/knowledge/projections.d.ts.map +1 -1
- package/dist/platform/knowledge/projections.js +19 -14
- package/dist/platform/knowledge/scope-records.d.ts.map +1 -1
- package/dist/platform/knowledge/scope-records.js +150 -4
- package/dist/platform/knowledge/semantic/answer-evidence.d.ts.map +1 -1
- package/dist/platform/knowledge/semantic/answer-evidence.js +17 -2
- package/dist/platform/knowledge/semantic/answer-gaps.d.ts.map +1 -1
- package/dist/platform/knowledge/semantic/answer-gaps.js +3 -0
- package/dist/platform/knowledge/semantic/enrichment.d.ts.map +1 -1
- package/dist/platform/knowledge/semantic/enrichment.js +44 -13
- package/dist/platform/knowledge/semantic/gap-repair.js +14 -1
- package/dist/platform/knowledge/semantic/graph-index.d.ts.map +1 -1
- package/dist/platform/knowledge/semantic/graph-index.js +11 -4
- package/dist/platform/knowledge/semantic/self-improvement-gap-context.d.ts.map +1 -1
- package/dist/platform/knowledge/semantic/self-improvement-gap-context.js +10 -0
- package/dist/platform/knowledge/service.d.ts.map +1 -1
- package/dist/platform/knowledge/service.js +12 -7
- package/dist/platform/knowledge/spaces.d.ts +4 -0
- package/dist/platform/knowledge/spaces.d.ts.map +1 -1
- package/dist/platform/knowledge/spaces.js +11 -0
- package/dist/platform/knowledge/store-config.d.ts +1 -0
- package/dist/platform/knowledge/store-config.d.ts.map +1 -1
- package/dist/platform/knowledge/store-config.js +1 -0
- package/dist/platform/runtime/services.d.ts +1 -0
- package/dist/platform/runtime/services.d.ts.map +1 -1
- package/dist/platform/runtime/services.js +20 -1
- package/dist/platform/version.js +1 -1
- package/package.json +13 -9
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { generatedKnowledgeCanonicalUri, generatedKnowledgeSourceId, isGeneratedKnowledgeSource, materializeGeneratedKnowledgeProjection, } from './generated-projections.js';
|
|
2
2
|
import { isInKnowledgeSpaceScope, resolveKnowledgeSpaceScope, } from './spaces.js';
|
|
3
|
-
import { knowledgeIssueMatchesScope, knowledgeNodeMatchesScope, } from './scope-records.js';
|
|
3
|
+
import { knowledgeIssueMatchesScope, knowledgeNodeMatchesScope, knowledgeSourceMatchesScope, } from './scope-records.js';
|
|
4
4
|
import { buildBulletList, dedupe, formatDateTime, joinSections, materializedTargetReference, quote, slugify, sortByTitle, } from './projection-utils.js';
|
|
5
5
|
export class KnowledgeProjectionService {
|
|
6
6
|
store;
|
|
@@ -109,7 +109,7 @@ export class KnowledgeProjectionService {
|
|
|
109
109
|
return null;
|
|
110
110
|
if (kind === 'source') {
|
|
111
111
|
const source = this.store.getSource(id);
|
|
112
|
-
return source &&
|
|
112
|
+
return source && knowledgeSourceMatchesScope(source, scope) ? this.createSourceTarget(source) : null;
|
|
113
113
|
}
|
|
114
114
|
if (kind === 'node') {
|
|
115
115
|
const node = this.store.getNode(id);
|
|
@@ -351,7 +351,7 @@ export class KnowledgeProjectionService {
|
|
|
351
351
|
buildBulletList(entry.incoming.map((edge) => {
|
|
352
352
|
if (edge.fromKind === 'source') {
|
|
353
353
|
const linked = this.store.getSource(edge.fromId);
|
|
354
|
-
return linked &&
|
|
354
|
+
return linked && knowledgeSourceMatchesScope(linked, scope) ? `${this.linkToTarget(this.createSourceTarget(linked))} via \`${edge.relation}\`` : `source:${edge.fromId}`;
|
|
355
355
|
}
|
|
356
356
|
if (edge.fromKind === 'node') {
|
|
357
357
|
const node = this.store.getNode(edge.fromId);
|
|
@@ -407,7 +407,7 @@ export class KnowledgeProjectionService {
|
|
|
407
407
|
}
|
|
408
408
|
renderSourcePage(id, scope) {
|
|
409
409
|
const source = this.store.getSource(id);
|
|
410
|
-
if (!source || !
|
|
410
|
+
if (!source || !knowledgeSourceMatchesScope(source, scope))
|
|
411
411
|
throw new Error(`Unknown knowledge source: ${id}`);
|
|
412
412
|
const extraction = this.store.getExtractionBySourceId(id);
|
|
413
413
|
const view = this.store.getItem(id);
|
|
@@ -442,7 +442,7 @@ export class KnowledgeProjectionService {
|
|
|
442
442
|
buildBulletList(relatedNodes.filter((node) => this.nodeInScope(node, scope)).map((node) => this.linkToTarget(this.createNodeTarget(node), `${node.title} (${node.kind})`))),
|
|
443
443
|
].join('\n'), [
|
|
444
444
|
'## Related Sources',
|
|
445
|
-
buildBulletList(relatedSources.filter((entry) =>
|
|
445
|
+
buildBulletList(relatedSources.filter((entry) => knowledgeSourceMatchesScope(entry, scope)).map((entry) => this.linkToTarget(this.createSourceTarget(entry)))),
|
|
446
446
|
].join('\n'), [
|
|
447
447
|
'## Backlinks',
|
|
448
448
|
buildBulletList(incoming.map((edge) => `${edge.fromKind}:${edge.fromId} via \`${edge.relation}\``)),
|
|
@@ -483,11 +483,11 @@ export class KnowledgeProjectionService {
|
|
|
483
483
|
'## Linked Sources',
|
|
484
484
|
buildBulletList((view?.linkedSources ?? [])
|
|
485
485
|
.filter((source) => !isGeneratedKnowledgeSource(source))
|
|
486
|
-
.filter((source) =>
|
|
486
|
+
.filter((source) => knowledgeSourceMatchesScope(source, scope))
|
|
487
487
|
.map((source) => this.linkToTarget(this.createSourceTarget(source)))),
|
|
488
488
|
].join('\n'), [
|
|
489
489
|
'## Linked Nodes',
|
|
490
|
-
buildBulletList((view?.linkedNodes ?? []).filter((entry) => entry.id !== node.id &&
|
|
490
|
+
buildBulletList((view?.linkedNodes ?? []).filter((entry) => entry.id !== node.id && this.nodeInScope(entry, scope)).map((entry) => this.linkToTarget(this.createNodeTarget(entry), `${entry.title} (${entry.kind})`))),
|
|
491
491
|
].join('\n'), [
|
|
492
492
|
'## Backlinks',
|
|
493
493
|
buildBulletList(incoming
|
|
@@ -518,8 +518,8 @@ export class KnowledgeProjectionService {
|
|
|
518
518
|
const target = this.createIssueTarget(issue);
|
|
519
519
|
const linkedSource = issue.sourceId ? this.store.getSource(issue.sourceId) : null;
|
|
520
520
|
const linkedNode = issue.nodeId ? this.store.getNode(issue.nodeId) : null;
|
|
521
|
-
const source = linkedSource &&
|
|
522
|
-
const node = linkedNode &&
|
|
521
|
+
const source = linkedSource && knowledgeSourceMatchesScope(linkedSource, scope) ? linkedSource : null;
|
|
522
|
+
const node = linkedNode && this.nodeInScope(linkedNode, scope) ? linkedNode : null;
|
|
523
523
|
const content = joinSections(`# ${target.title}`, [
|
|
524
524
|
'## Metadata',
|
|
525
525
|
`- id: \`${issue.id}\``,
|
|
@@ -569,7 +569,8 @@ export class KnowledgeProjectionService {
|
|
|
569
569
|
return this.store.getSource(edge.toId);
|
|
570
570
|
return null;
|
|
571
571
|
})
|
|
572
|
-
.filter((source) => Boolean(source)
|
|
572
|
+
.filter((source) => Boolean(source))
|
|
573
|
+
.filter((source) => knowledgeSourceMatchesScope(source, scope));
|
|
573
574
|
const linkedNodes = edges
|
|
574
575
|
.map((edge) => {
|
|
575
576
|
if (edge.fromKind === 'node' && edge.fromId !== node.id)
|
|
@@ -578,7 +579,8 @@ export class KnowledgeProjectionService {
|
|
|
578
579
|
return this.store.getNode(edge.toId);
|
|
579
580
|
return null;
|
|
580
581
|
})
|
|
581
|
-
.filter((entry) => Boolean(entry)
|
|
582
|
+
.filter((entry) => Boolean(entry))
|
|
583
|
+
.filter((entry) => this.nodeInScope(entry, scope));
|
|
582
584
|
const content = joinSections(`# ${target.title}`, node.summary, [
|
|
583
585
|
'## Included Sources',
|
|
584
586
|
buildBulletList(sortByTitle(dedupe(sources, (source) => source.id)).map((source) => this.linkToTarget(this.createSourceTarget(source)))),
|
|
@@ -675,7 +677,7 @@ export class KnowledgeProjectionService {
|
|
|
675
677
|
recordReferenceInScope(kind, id, scope) {
|
|
676
678
|
if (kind === 'source') {
|
|
677
679
|
const source = this.store.getSource(id);
|
|
678
|
-
return Boolean(source &&
|
|
680
|
+
return Boolean(source && knowledgeSourceMatchesScope(source, scope));
|
|
679
681
|
}
|
|
680
682
|
if (kind === 'node') {
|
|
681
683
|
const node = this.store.getNode(id);
|
|
@@ -689,7 +691,7 @@ export class KnowledgeProjectionService {
|
|
|
689
691
|
}
|
|
690
692
|
scopedSources(scope, limit = Number.MAX_SAFE_INTEGER) {
|
|
691
693
|
return this.store.listSources(Number.MAX_SAFE_INTEGER)
|
|
692
|
-
.filter((source) =>
|
|
694
|
+
.filter((source) => knowledgeSourceMatchesScope(source, scope))
|
|
693
695
|
.slice(0, Math.max(1, limit));
|
|
694
696
|
}
|
|
695
697
|
scopedNodes(scope, limit = Number.MAX_SAFE_INTEGER) {
|
|
@@ -706,7 +708,10 @@ export class KnowledgeProjectionService {
|
|
|
706
708
|
}
|
|
707
709
|
scopedExtractions(scope, limit = Number.MAX_SAFE_INTEGER) {
|
|
708
710
|
return this.store.listExtractions(Number.MAX_SAFE_INTEGER)
|
|
709
|
-
.filter((extraction) =>
|
|
711
|
+
.filter((extraction) => {
|
|
712
|
+
const source = this.store.getSource(extraction.sourceId);
|
|
713
|
+
return source ? knowledgeSourceMatchesScope(source, scope) : isInKnowledgeSpaceScope(extraction, scope);
|
|
714
|
+
})
|
|
710
715
|
.slice(0, Math.max(1, limit));
|
|
711
716
|
}
|
|
712
717
|
nodeInScope(node, scope) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"scope-records.d.ts","sourceRoot":"","sources":["../../../src/platform/knowledge/scope-records.ts"],"names":[],"mappings":"AAAA,OAAO,EAML,KAAK,wBAAwB,EAC9B,MAAM,aAAa,CAAC;AACrB,OAAO,KAAK,EACV,mBAAmB,EACnB,oBAAoB,EACpB,mBAAmB,EACnB,qBAAqB,EACtB,MAAM,YAAY,CAAC;AAEpB,MAAM,WAAW,oBAAoB;IACnC,QAAQ,CAAC,SAAS,CAAC,EAAE,CAAC,CAAC,EAAE,EAAE,MAAM,KAAK,qBAAqB,GAAG,IAAI,GAAG,SAAS,CAAC,GAAG,SAAS,CAAC;IAC5F,QAAQ,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC,EAAE,EAAE,MAAM,KAAK,mBAAmB,GAAG,IAAI,GAAG,SAAS,CAAC,GAAG,SAAS,CAAC;IACxF,QAAQ,CAAC,OAAO,CAAC,EAAE,WAAW,CAAC,MAAM,EAAE,qBAAqB,CAAC,GAAG,SAAS,CAAC;IAC1E,QAAQ,CAAC,KAAK,CAAC,EAAE,WAAW,CAAC,MAAM,EAAE,mBAAmB,CAAC,GAAG,SAAS,CAAC;IACtE,QAAQ,CAAC,KAAK,CAAC,EAAE,SAAS,mBAAmB,EAAE,GAAG,SAAS,CAAC;CAC7D;AAED,wBAAgB,2BAA2B,CACzC,MAAM,EAAE,qBAAqB,EAC7B,KAAK,GAAE,wBAA6B,GACnC,OAAO,
|
|
1
|
+
{"version":3,"file":"scope-records.d.ts","sourceRoot":"","sources":["../../../src/platform/knowledge/scope-records.ts"],"names":[],"mappings":"AAAA,OAAO,EAML,KAAK,wBAAwB,EAC9B,MAAM,aAAa,CAAC;AACrB,OAAO,KAAK,EACV,mBAAmB,EACnB,oBAAoB,EACpB,mBAAmB,EACnB,qBAAqB,EACtB,MAAM,YAAY,CAAC;AAEpB,MAAM,WAAW,oBAAoB;IACnC,QAAQ,CAAC,SAAS,CAAC,EAAE,CAAC,CAAC,EAAE,EAAE,MAAM,KAAK,qBAAqB,GAAG,IAAI,GAAG,SAAS,CAAC,GAAG,SAAS,CAAC;IAC5F,QAAQ,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC,EAAE,EAAE,MAAM,KAAK,mBAAmB,GAAG,IAAI,GAAG,SAAS,CAAC,GAAG,SAAS,CAAC;IACxF,QAAQ,CAAC,OAAO,CAAC,EAAE,WAAW,CAAC,MAAM,EAAE,qBAAqB,CAAC,GAAG,SAAS,CAAC;IAC1E,QAAQ,CAAC,KAAK,CAAC,EAAE,WAAW,CAAC,MAAM,EAAE,mBAAmB,CAAC,GAAG,SAAS,CAAC;IACtE,QAAQ,CAAC,KAAK,CAAC,EAAE,SAAS,mBAAmB,EAAE,GAAG,SAAS,CAAC;CAC7D;AAED,wBAAgB,2BAA2B,CACzC,MAAM,EAAE,qBAAqB,EAC7B,KAAK,GAAE,wBAA6B,GACnC,OAAO,CAKT;AAED,wBAAgB,yBAAyB,CACvC,IAAI,EAAE,mBAAmB,EACzB,KAAK,GAAE,wBAA6B,EACpC,MAAM,GAAE,oBAAyB,GAChC,OAAO,CAaT;AAED,wBAAgB,0BAA0B,CACxC,KAAK,EAAE,oBAAoB,EAC3B,KAAK,GAAE,wBAA6B,EACpC,MAAM,GAAE,oBAAyB,GAChC,OAAO,CAYT"}
|
|
@@ -1,13 +1,20 @@
|
|
|
1
1
|
import { DEFAULT_KNOWLEDGE_SPACE_ID, getExplicitKnowledgeSpaceId, getKnowledgeSpaceId, isInKnowledgeSpaceScope, resolveKnowledgeSpaceScope, } from './spaces.js';
|
|
2
2
|
export function knowledgeSourceMatchesScope(source, scope = {}) {
|
|
3
|
+
const scopedSpaceId = resolveKnowledgeSpaceScope(scope);
|
|
4
|
+
if (isDefaultExtensionContaminatedSource(source))
|
|
5
|
+
return false;
|
|
6
|
+
if (scopedSpaceId === null)
|
|
7
|
+
return true;
|
|
3
8
|
return isInKnowledgeSpaceScope(source, scope);
|
|
4
9
|
}
|
|
5
10
|
export function knowledgeNodeMatchesScope(node, scope = {}, lookup = {}) {
|
|
6
11
|
const scopedSpaceId = resolveKnowledgeSpaceScope(scope);
|
|
7
|
-
if (scopedSpaceId === null)
|
|
8
|
-
return true;
|
|
9
12
|
const relatedSpaces = relatedNodeSpaceIds(node, lookup);
|
|
10
13
|
const ownSpace = getKnowledgeSpaceId(node);
|
|
14
|
+
if (isDefaultExtensionContaminatedNode(node, lookup))
|
|
15
|
+
return false;
|
|
16
|
+
if (scopedSpaceId === null)
|
|
17
|
+
return true;
|
|
11
18
|
if (scopedSpaceId === DEFAULT_KNOWLEDGE_SPACE_ID
|
|
12
19
|
&& relatedSpaces.length === 0
|
|
13
20
|
&& (isUngroundedSemanticAnswerGapNode(node) || isUngroundedCatalogDerivedNode(node)))
|
|
@@ -19,10 +26,12 @@ export function knowledgeNodeMatchesScope(node, scope = {}, lookup = {}) {
|
|
|
19
26
|
}
|
|
20
27
|
export function knowledgeIssueMatchesScope(issue, scope = {}, lookup = {}) {
|
|
21
28
|
const scopedSpaceId = resolveKnowledgeSpaceScope(scope);
|
|
22
|
-
if (scopedSpaceId === null)
|
|
23
|
-
return true;
|
|
24
29
|
const relatedSpaces = relatedIssueSpaceIds(issue, lookup);
|
|
25
30
|
const ownSpace = getKnowledgeSpaceId(issue);
|
|
31
|
+
if (isDefaultExtensionContaminatedIssue(issue, lookup))
|
|
32
|
+
return false;
|
|
33
|
+
if (scopedSpaceId === null)
|
|
34
|
+
return true;
|
|
26
35
|
if (scopedSpaceId === DEFAULT_KNOWLEDGE_SPACE_ID
|
|
27
36
|
&& (isUngroundedSemanticAnswerGapIssue(issue, lookup) || isIssueLinkedOnlyToUngroundedAnswerGap(issue, lookup)))
|
|
28
37
|
return false;
|
|
@@ -135,6 +144,117 @@ function isUngroundedSemanticAnswerGapNode(node) {
|
|
|
135
144
|
...readStringArray(node.metadata.subjectIds),
|
|
136
145
|
]).length === 0;
|
|
137
146
|
}
|
|
147
|
+
function isDefaultExtensionContaminatedSource(source) {
|
|
148
|
+
if (getKnowledgeSpaceId(source) !== DEFAULT_KNOWLEDGE_SPACE_ID)
|
|
149
|
+
return false;
|
|
150
|
+
return hasExtensionOnlyKnowledgeMarker([
|
|
151
|
+
source.id,
|
|
152
|
+
source.connectorId,
|
|
153
|
+
source.sourceType,
|
|
154
|
+
source.title,
|
|
155
|
+
source.summary,
|
|
156
|
+
source.description,
|
|
157
|
+
source.sourceUri,
|
|
158
|
+
source.canonicalUri,
|
|
159
|
+
source.url,
|
|
160
|
+
source.tags.join(' '),
|
|
161
|
+
metadataSearchText(source.metadata),
|
|
162
|
+
].join(' '));
|
|
163
|
+
}
|
|
164
|
+
function isDefaultExtensionContaminatedNode(node, lookup) {
|
|
165
|
+
if (getKnowledgeSpaceId(node) !== DEFAULT_KNOWLEDGE_SPACE_ID)
|
|
166
|
+
return false;
|
|
167
|
+
if (isDefaultAnswerGapNode(node))
|
|
168
|
+
return true;
|
|
169
|
+
if (/^ha[_:-]/i.test(node.kind))
|
|
170
|
+
return true;
|
|
171
|
+
if (nodeReferencesDefaultExtensionSource(node, lookup))
|
|
172
|
+
return true;
|
|
173
|
+
if (nodeReferencesExtensionObject(node, lookup))
|
|
174
|
+
return true;
|
|
175
|
+
return hasExtensionOnlyKnowledgeMarker([
|
|
176
|
+
node.id,
|
|
177
|
+
node.kind,
|
|
178
|
+
node.title,
|
|
179
|
+
node.summary,
|
|
180
|
+
node.aliases.join(' '),
|
|
181
|
+
metadataSearchText(node.metadata),
|
|
182
|
+
].join(' '));
|
|
183
|
+
}
|
|
184
|
+
function nodeReferencesExtensionObject(node, lookup) {
|
|
185
|
+
for (const nodeId of uniqueStrings([
|
|
186
|
+
...readStringArray(node.metadata.linkedObjectIds),
|
|
187
|
+
...readStringArray(node.metadata.subjectIds),
|
|
188
|
+
])) {
|
|
189
|
+
const linked = lookupNode(lookup, nodeId);
|
|
190
|
+
if (!linked)
|
|
191
|
+
continue;
|
|
192
|
+
if (/^ha[_:-]/i.test(linked.kind))
|
|
193
|
+
return true;
|
|
194
|
+
if (hasExtensionOnlyKnowledgeMarker(`${linked.kind} ${linked.title} ${metadataSearchText(linked.metadata)}`))
|
|
195
|
+
return true;
|
|
196
|
+
}
|
|
197
|
+
return false;
|
|
198
|
+
}
|
|
199
|
+
function isDefaultExtensionContaminatedIssue(issue, lookup) {
|
|
200
|
+
if (getKnowledgeSpaceId(issue) !== DEFAULT_KNOWLEDGE_SPACE_ID)
|
|
201
|
+
return false;
|
|
202
|
+
if (issue.code === 'knowledge.answer_gap')
|
|
203
|
+
return true;
|
|
204
|
+
if (issueReferencesDefaultExtensionSource(issue, lookup))
|
|
205
|
+
return true;
|
|
206
|
+
for (const nodeId of issueNodeIds(issue)) {
|
|
207
|
+
const node = lookupNode(lookup, nodeId);
|
|
208
|
+
if (node && isDefaultExtensionContaminatedNode(node, lookup))
|
|
209
|
+
return true;
|
|
210
|
+
}
|
|
211
|
+
return hasExtensionOnlyKnowledgeMarker([
|
|
212
|
+
issue.id,
|
|
213
|
+
issue.code,
|
|
214
|
+
issue.message,
|
|
215
|
+
issue.sourceId,
|
|
216
|
+
issue.nodeId,
|
|
217
|
+
metadataSearchText(issue.metadata),
|
|
218
|
+
].join(' '));
|
|
219
|
+
}
|
|
220
|
+
function isDefaultAnswerGapNode(node) {
|
|
221
|
+
return node.kind === 'knowledge_gap'
|
|
222
|
+
&& readString(node.metadata.semanticKind) === 'gap'
|
|
223
|
+
&& readString(node.metadata.gapKind) === 'answer'
|
|
224
|
+
&& readString(node.metadata.visibility) === 'refinement';
|
|
225
|
+
}
|
|
226
|
+
function nodeReferencesDefaultExtensionSource(node, lookup) {
|
|
227
|
+
for (const sourceId of uniqueStrings([
|
|
228
|
+
node.sourceId,
|
|
229
|
+
readString(node.metadata.sourceId),
|
|
230
|
+
...readStringArray(node.metadata.sourceIds),
|
|
231
|
+
])) {
|
|
232
|
+
const source = lookupSource(lookup, sourceId);
|
|
233
|
+
if (source && isDefaultExtensionContaminatedSource(source))
|
|
234
|
+
return true;
|
|
235
|
+
}
|
|
236
|
+
for (const edge of lookup.edges ?? []) {
|
|
237
|
+
if (!edgeTouchesRecord(edge, 'node', node.id))
|
|
238
|
+
continue;
|
|
239
|
+
const sourceId = edge.fromKind === 'source' ? edge.fromId : edge.toKind === 'source' ? edge.toId : undefined;
|
|
240
|
+
const source = lookupSource(lookup, sourceId);
|
|
241
|
+
if (source && isDefaultExtensionContaminatedSource(source))
|
|
242
|
+
return true;
|
|
243
|
+
}
|
|
244
|
+
return false;
|
|
245
|
+
}
|
|
246
|
+
function issueReferencesDefaultExtensionSource(issue, lookup) {
|
|
247
|
+
for (const sourceId of uniqueStrings([
|
|
248
|
+
issue.sourceId,
|
|
249
|
+
readString(issue.metadata.sourceId),
|
|
250
|
+
...readStringArray(issue.metadata.sourceIds),
|
|
251
|
+
])) {
|
|
252
|
+
const source = lookupSource(lookup, sourceId);
|
|
253
|
+
if (source && isDefaultExtensionContaminatedSource(source))
|
|
254
|
+
return true;
|
|
255
|
+
}
|
|
256
|
+
return false;
|
|
257
|
+
}
|
|
138
258
|
function isUngroundedSemanticAnswerGapIssue(issue, lookup) {
|
|
139
259
|
return issue.code === 'knowledge.answer_gap'
|
|
140
260
|
&& (issue.metadata.semantic === true || readString(issue.metadata.semantic) === 'true')
|
|
@@ -207,3 +327,29 @@ function uniqueStrings(values) {
|
|
|
207
327
|
function readOnlyMetadataKeys(metadata) {
|
|
208
328
|
return Object.keys(metadata).filter((key) => !['knowledgeSpaceId', 'namespace'].includes(key));
|
|
209
329
|
}
|
|
330
|
+
function metadataSearchText(metadata) {
|
|
331
|
+
return Object.entries(metadata)
|
|
332
|
+
.filter(([key]) => !['content', 'raw', 'html'].includes(key))
|
|
333
|
+
.flatMap(([, value]) => flattenMetadataText(value))
|
|
334
|
+
.join(' ');
|
|
335
|
+
}
|
|
336
|
+
function flattenMetadataText(value) {
|
|
337
|
+
if (typeof value === 'string' || typeof value === 'number' || typeof value === 'boolean')
|
|
338
|
+
return [String(value)];
|
|
339
|
+
if (Array.isArray(value))
|
|
340
|
+
return value.flatMap(flattenMetadataText);
|
|
341
|
+
if (!value || typeof value !== 'object')
|
|
342
|
+
return [];
|
|
343
|
+
return Object.values(value).flatMap(flattenMetadataText);
|
|
344
|
+
}
|
|
345
|
+
function hasExtensionOnlyKnowledgeMarker(value) {
|
|
346
|
+
const lower = value.toLowerCase();
|
|
347
|
+
return /\bhome\s*assistant\b/.test(lower)
|
|
348
|
+
|| /\bhome[-_]?assistant\b/.test(lower)
|
|
349
|
+
|| /\bhome\s*graph\b/.test(lower)
|
|
350
|
+
|| /\bhome[-_]?graph\b/.test(lower)
|
|
351
|
+
|| /\bhomegraph\b/.test(lower)
|
|
352
|
+
|| /\bgoodvibes[-_]?homeassistant\b/.test(lower)
|
|
353
|
+
|| /\bha_(?:device|entity|area|integration|device_passport|room)\b/.test(lower)
|
|
354
|
+
|| /\bhomeassistant:/.test(lower);
|
|
355
|
+
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"answer-evidence.d.ts","sourceRoot":"","sources":["../../../../src/platform/knowledge/semantic/answer-evidence.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AAClD,OAAO,KAAK,EACV,mBAAmB,EACnB,qBAAqB,EACrB,qBAAqB,EACtB,MAAM,aAAa,CAAC;
|
|
1
|
+
{"version":3,"file":"answer-evidence.d.ts","sourceRoot":"","sources":["../../../../src/platform/knowledge/semantic/answer-evidence.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AAClD,OAAO,KAAK,EACV,mBAAmB,EACnB,qBAAqB,EACrB,qBAAqB,EACtB,MAAM,aAAa,CAAC;AAWrB,OAAO,KAAK,EAAE,4BAA4B,EAAE,MAAM,kBAAkB,CAAC;AACrE,OAAO,KAAK,EAAE,4BAA4B,EAAE,MAAM,YAAY,CAAC;AAwB/D,OAAO,EAGL,KAAK,YAAY,EAClB,MAAM,oBAAoB,CAAC;AAW5B,wBAAgB,qBAAqB,CACnC,KAAK,EAAE,cAAc,EACrB,KAAK,EAAE,4BAA4B,EACnC,OAAO,EAAE,MAAM,EACf,KAAK,EAAE,MAAM,EACb,cAAc,EAAE,SAAS,4BAA4B,EAAE,GACtD,YAAY,EAAE,CAkGhB;AAED,wBAAgB,wBAAwB,CACtC,KAAK,EAAE,cAAc,EACrB,OAAO,EAAE,MAAM,EACf,KAAK,EAAE,MAAM,EACb,cAAc,EAAE,SAAS,4BAA4B,EAAE,GACtD,mBAAmB,EAAE,CASvB;AAED,wBAAgB,yBAAyB,CACvC,OAAO,EAAE,MAAM,EACf,KAAK,EAAE,MAAM,EACb,KAAK,EAAE,SAAS,mBAAmB,EAAE,EACrC,cAAc,EAAE,SAAS,4BAA4B,EAAE,GACtD,SAAS,mBAAmB,EAAE,CAKhC;AAED,wBAAgB,8BAA8B,CAC5C,OAAO,EAAE,MAAM,EACf,KAAK,EAAE,4BAA4B,EACnC,2BAA2B,EAAE,SAAS,mBAAmB,EAAE,GAC1D,OAAO,CAMT;AAED,wBAAgB,4BAA4B,CAC1C,KAAK,EAAE,cAAc,EACrB,OAAO,EAAE,MAAM,EACf,aAAa,EAAE,SAAS,qBAAqB,EAAE,EAC/C,aAAa,EAAE,SAAS,mBAAmB,EAAE,GAC5C,SAAS,qBAAqB,EAAE,CAelC;AAED,wBAAgB,6BAA6B,CAC3C,KAAK,EAAE,cAAc,EACrB,OAAO,EAAE,MAAM,EACf,KAAK,EAAE,MAAM,EACb,QAAQ,EAAE,SAAS,YAAY,EAAE,EACjC,aAAa,EAAE,SAAS,mBAAmB,EAAE,EAC7C,KAAK,EAAE,MAAM,GACZ,YAAY,EAAE,CAwChB;AAED,wBAAgB,cAAc,CAAC,IAAI,EAAE,YAAY,GAAG,qBAAqB,CASxE;AAED,wBAAgB,WAAW,CAAC,KAAK,EAAE,SAAS,mBAAmB,EAAE,GAAG,mBAAmB,EAAE,CASxF;AAED,wBAAgB,uBAAuB,CAAC,MAAM,EAAE,qBAAqB,GAAG,qBAAqB,CAM5F"}
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import { getExplicitKnowledgeSpaceId, isHomeAssistantKnowledgeSpace, normalizeKnowledgeSpaceId, } from '../spaces.js';
|
|
2
|
+
import { knowledgeNodeMatchesScope, knowledgeSourceMatchesScope, } from '../scope-records.js';
|
|
2
3
|
import { isActiveKnowledgeEdge } from '../projection-utils.js';
|
|
3
4
|
import { clampText, normalizeWhitespace, readRecord, readString, readStringArray, scoreSemanticText, sourceSemanticText, splitSentences, tokenizeSemanticQuery, uniqueStrings, } from './utils.js';
|
|
4
5
|
import { isLowValueFeatureOrSpecText, isSemanticAnswerLinkedObject, } from './fact-quality.js';
|
|
@@ -267,13 +268,27 @@ function listAnswerSources(store, spaceId) {
|
|
|
267
268
|
const sources = isBroadKnowledgeSpaceAlias(spaceId)
|
|
268
269
|
? store.listSources(Number.MAX_SAFE_INTEGER)
|
|
269
270
|
: store.listSourcesInSpace(spaceId);
|
|
270
|
-
return sources
|
|
271
|
+
return sources
|
|
272
|
+
.filter((source) => source.status !== 'stale')
|
|
273
|
+
.filter((source) => knowledgeSourceMatchesScope(source, answerEvidenceScope(spaceId)));
|
|
271
274
|
}
|
|
272
275
|
function listAnswerNodes(store, spaceId) {
|
|
273
276
|
const nodes = isBroadKnowledgeSpaceAlias(spaceId)
|
|
274
277
|
? store.listNodes(Number.MAX_SAFE_INTEGER)
|
|
275
278
|
: store.listNodesInSpace(spaceId);
|
|
276
|
-
|
|
279
|
+
const lookup = {
|
|
280
|
+
getSource: (id) => store.getSource(id),
|
|
281
|
+
getNode: (id) => store.getNode(id),
|
|
282
|
+
edges: store.listEdges(),
|
|
283
|
+
};
|
|
284
|
+
return nodes
|
|
285
|
+
.filter((node) => node.status !== 'stale')
|
|
286
|
+
.filter((node) => knowledgeNodeMatchesScope(node, answerEvidenceScope(spaceId), lookup));
|
|
287
|
+
}
|
|
288
|
+
function answerEvidenceScope(spaceId) {
|
|
289
|
+
if (isBroadKnowledgeSpaceAlias(spaceId))
|
|
290
|
+
return { includeAllSpaces: true };
|
|
291
|
+
return { knowledgeSpaceId: normalizeKnowledgeSpaceId(spaceId) };
|
|
277
292
|
}
|
|
278
293
|
function sourceIdsLinkedToNodes(store, nodeIds, spaceId) {
|
|
279
294
|
const sourceIds = new Set();
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"answer-gaps.d.ts","sourceRoot":"","sources":["../../../../src/platform/knowledge/semantic/answer-gaps.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AAClD,OAAO,KAAK,EAAE,mBAAmB,EAAE,qBAAqB,EAAE,MAAM,aAAa,CAAC;
|
|
1
|
+
{"version":3,"file":"answer-gaps.d.ts","sourceRoot":"","sources":["../../../../src/platform/knowledge/semantic/answer-gaps.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AAClD,OAAO,KAAK,EAAE,mBAAmB,EAAE,qBAAqB,EAAE,MAAM,aAAa,CAAC;AAK9E,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,YAAY,CAAC;AAgB5D,wBAAgB,uBAAuB,CACrC,OAAO,EAAE,MAAM,EACf,KAAK,EAAE,MAAM,EACb,aAAa,EAAE,SAAS,mBAAmB,EAAE,GAC5C,OAAO,CAMT;AAED,wBAAsB,gBAAgB,CACpC,KAAK,EAAE,cAAc,EACrB,OAAO,EAAE,MAAM,EACf,KAAK,EAAE,MAAM,EACb,MAAM,EAAE,MAAM,EACd,OAAO,GAAE;IACP,QAAQ,CAAC,OAAO,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IACtC,QAAQ,CAAC,OAAO,CAAC,EAAE,SAAS,qBAAqB,EAAE,GAAG,SAAS,CAAC;IAChE,QAAQ,CAAC,aAAa,CAAC,EAAE,SAAS,mBAAmB,EAAE,GAAG,SAAS,CAAC;CAChE,GACL,OAAO,CAAC,mBAAmB,CAAC,CA6E9B;AAED,wBAAsB,iBAAiB,CACrC,KAAK,EAAE,cAAc,EACrB,OAAO,EAAE,MAAM,EACf,KAAK,EAAE,MAAM,EACb,IAAI,EAAE,SAAS,yBAAyB,EAAE,EAC1C,OAAO,GAAE;IACP,QAAQ,CAAC,OAAO,CAAC,EAAE,SAAS,qBAAqB,EAAE,GAAG,SAAS,CAAC;IAChE,QAAQ,CAAC,aAAa,CAAC,EAAE,SAAS,mBAAmB,EAAE,GAAG,SAAS,CAAC;CAChE,GACL,OAAO,CAAC,SAAS,mBAAmB,EAAE,CAAC,CAUzC;AAED,wBAAgB,mBAAmB,CAAC,IAAI,EAAE,mBAAmB,GAAG,OAAO,CAKtE"}
|
|
@@ -1,9 +1,12 @@
|
|
|
1
|
+
import { DEFAULT_KNOWLEDGE_SPACE_ID, normalizeKnowledgeSpaceId, } from '../spaces.js';
|
|
1
2
|
import { normalizeWhitespace, readString, readStringArray, semanticHash, semanticMetadata, tokenizeSemanticQuery, uniqueStrings, } from './utils.js';
|
|
2
3
|
import { GENERIC_ANSWER_INTENT_TOKENS, isBroadKnowledgeSpaceAlias, } from './answer-common.js';
|
|
3
4
|
import { hasAny } from './answer-fact-selection.js';
|
|
4
5
|
export function shouldPersistNoMatchGap(spaceId, query, linkedObjects) {
|
|
5
6
|
if (linkedObjects.length > 0)
|
|
6
7
|
return true;
|
|
8
|
+
if (normalizeKnowledgeSpaceId(spaceId) === DEFAULT_KNOWLEDGE_SPACE_ID)
|
|
9
|
+
return false;
|
|
7
10
|
if (!isBroadKnowledgeSpaceAlias(spaceId))
|
|
8
11
|
return true;
|
|
9
12
|
const subjectTokens = tokenizeSemanticQuery(query).filter((token) => !GENERIC_ANSWER_INTENT_TOKENS.has(token));
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"enrichment.d.ts","sourceRoot":"","sources":["../../../../src/platform/knowledge/semantic/enrichment.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;
|
|
1
|
+
{"version":3,"file":"enrichment.d.ts","sourceRoot":"","sources":["../../../../src/platform/knowledge/semantic/enrichment.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AAGlD,OAAO,KAAK,EAGV,mBAAmB,EACnB,qBAAqB,EACtB,MAAM,aAAa,CAAC;AAErB,OAAO,KAAK,EAKV,oBAAoB,EAErB,MAAM,YAAY,CAAC;AAwBpB,MAAM,WAAW,kCAAkC;IACjD,QAAQ,CAAC,KAAK,EAAE,cAAc,CAAC;IAC/B,QAAQ,CAAC,GAAG,CAAC,EAAE,oBAAoB,GAAG,IAAI,GAAG,SAAS,CAAC;CACxD;AAED,MAAM,WAAW,4BAA4B;IAC3C,QAAQ,CAAC,KAAK,CAAC,EAAE,OAAO,GAAG,SAAS,CAAC;IACrC,QAAQ,CAAC,gBAAgB,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;CAChD;AAED,MAAM,WAAW,2BAA2B;IAC1C,QAAQ,CAAC,MAAM,EAAE,qBAAqB,CAAC;IACvC,QAAQ,CAAC,OAAO,EAAE,OAAO,CAAC;IAC1B,QAAQ,CAAC,MAAM,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IACrC,QAAQ,CAAC,SAAS,CAAC,EAAE,KAAK,GAAG,eAAe,GAAG,SAAS,CAAC;IACzD,QAAQ,CAAC,KAAK,EAAE,SAAS,mBAAmB,EAAE,CAAC;IAC/C,QAAQ,CAAC,QAAQ,EAAE,SAAS,mBAAmB,EAAE,CAAC;IAClD,QAAQ,CAAC,QAAQ,CAAC,EAAE,mBAAmB,GAAG,SAAS,CAAC;IACpD,QAAQ,CAAC,IAAI,EAAE,SAAS,mBAAmB,EAAE,CAAC;CAC/C;AAED,wBAAsB,qBAAqB,CACzC,OAAO,EAAE,kCAAkC,EAC3C,MAAM,EAAE,qBAAqB,EAC7B,OAAO,GAAE,4BAAiC,GACzC,OAAO,CAAC,2BAA2B,CAAC,CAqCtC"}
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import { getKnowledgeSpaceId } from '../spaces.js';
|
|
2
|
+
import { knowledgeSourceMatchesScope } from '../scope-records.js';
|
|
2
3
|
import { isActiveKnowledgeEdge } from '../projection-utils.js';
|
|
3
4
|
import { MAX_SEMANTIC_SOURCE_CHARS, applySourceMetadata, clampText, normalizeWhitespace, readRecord, readString, readStringArray, semanticFactId, semanticHash, semanticMetadata, semanticSlug, sourceKnowledgeSpace, sourceSemanticHash, sourceSemanticText, splitSentences, uniqueStrings, } from './utils.js';
|
|
4
5
|
import { canonicalRepairSubjectNodes } from './repair-subjects.js';
|
|
@@ -12,6 +13,12 @@ export async function enrichKnowledgeSource(context, source, options = {}) {
|
|
|
12
13
|
const existingSemantic = readRecord(source.metadata.semanticEnrichment);
|
|
13
14
|
const currentExtractor = readString(existingSemantic.extractor);
|
|
14
15
|
const shouldUpgradeDeterministic = Boolean(context.llm && existingSemantic.textHash === textHash && currentExtractor !== 'llm');
|
|
16
|
+
if (!knowledgeSourceMatchesScope(source, { includeAllSpaces: true })) {
|
|
17
|
+
await markSourceSemanticState(context.store, source, textHash, {
|
|
18
|
+
skippedReason: 'source is outside active knowledge scope',
|
|
19
|
+
});
|
|
20
|
+
return emptyResult(source, true, 'source is outside active knowledge scope');
|
|
21
|
+
}
|
|
15
22
|
if (!options.force && existingSemantic.textHash === textHash && !shouldUpgradeDeterministic) {
|
|
16
23
|
return emptyResult(source, true, 'semantic enrichment is current');
|
|
17
24
|
}
|
|
@@ -111,19 +118,21 @@ function normalizeSemanticExtraction(value) {
|
|
|
111
118
|
function deterministicSemanticExtraction(source, extraction, text) {
|
|
112
119
|
const factText = cleanDeterministicSourceText(deterministicFactSourceText(extraction) || text);
|
|
113
120
|
const sentences = splitSentences(factText);
|
|
114
|
-
const profileFacts =
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
|
|
126
|
-
|
|
121
|
+
const profileFacts = shouldDeriveDeterministicProfileFacts(source, factText)
|
|
122
|
+
? deriveRepairProfileFacts({
|
|
123
|
+
query: 'complete features specifications capabilities',
|
|
124
|
+
source,
|
|
125
|
+
text: factText,
|
|
126
|
+
}).map((fact) => ({
|
|
127
|
+
kind: fact.kind,
|
|
128
|
+
title: fact.title,
|
|
129
|
+
value: fact.value,
|
|
130
|
+
summary: fact.summary,
|
|
131
|
+
evidence: fact.evidence,
|
|
132
|
+
confidence: 72,
|
|
133
|
+
labels: fact.labels,
|
|
134
|
+
}))
|
|
135
|
+
: [];
|
|
127
136
|
const facts = [
|
|
128
137
|
...profileFacts,
|
|
129
138
|
...sentences
|
|
@@ -155,6 +164,28 @@ function deterministicSemanticExtraction(source, extraction, text) {
|
|
|
155
164
|
extractor: 'deterministic',
|
|
156
165
|
};
|
|
157
166
|
}
|
|
167
|
+
function shouldDeriveDeterministicProfileFacts(source, text) {
|
|
168
|
+
const discovery = readRecord(source.metadata.sourceDiscovery);
|
|
169
|
+
if (readStringArray(discovery.linkedObjectIds).length > 0)
|
|
170
|
+
return true;
|
|
171
|
+
if (/\bmodel:[a-z0-9][a-z0-9._-]{2,}\b/i.test(readString(discovery.trustReason) ?? ''))
|
|
172
|
+
return true;
|
|
173
|
+
const sourceIdentity = [
|
|
174
|
+
source.title,
|
|
175
|
+
source.summary,
|
|
176
|
+
source.sourceUri,
|
|
177
|
+
source.canonicalUri,
|
|
178
|
+
source.url,
|
|
179
|
+
source.tags.join(' '),
|
|
180
|
+
].filter(Boolean).join(' ');
|
|
181
|
+
const hasModelIdentity = /\b[A-Z]{2,}[-_ ]?[0-9][A-Z0-9._-]{2,}\b/.test(sourceIdentity);
|
|
182
|
+
if (!hasModelIdentity)
|
|
183
|
+
return false;
|
|
184
|
+
const sourceLooksLikeSpecProfile = /\b(specifications?|specs?|product|manual|datasheet|support|features?)\b/i.test(sourceIdentity);
|
|
185
|
+
const textLooksLikeSpecProfile = /\b(?:hdmi|hdr10|dolby vision|refresh rate|bluetooth|wi-?fi|speaker|usb|ethernet|optical|rf antenna|rs-?232|webos|airplay|homekit)\b/i.test(text)
|
|
186
|
+
&& /\b(?:\d{2,3}(?:\.0)?\s*(?:inch|inches|in\.|")|4k|uhd|3840\s*(?:x|×)\s*2160|[A-Z]{2,}[-_ ]?[0-9][A-Z0-9._-]{2,})\b/i.test(text);
|
|
187
|
+
return sourceLooksLikeSpecProfile || textLooksLikeSpecProfile;
|
|
188
|
+
}
|
|
158
189
|
function deterministicFactSourceText(extraction) {
|
|
159
190
|
const structure = readRecord(extraction?.structure);
|
|
160
191
|
const nestedStructure = readRecord(structure.structure);
|
|
@@ -484,7 +484,8 @@ function domainManufacturerHints(value) {
|
|
|
484
484
|
const hints = [];
|
|
485
485
|
for (const match of value.toLowerCase().matchAll(/\b(?:https?:\/\/)?(?:www\.|support\.|docs\.|developer\.)?([a-z0-9-]+)\.(?:com|net|org|io|dev|tv|ca|co\.uk)\b/g)) {
|
|
486
486
|
const label = match[1]?.replace(/-/g, ' ').trim();
|
|
487
|
-
|
|
487
|
+
const slug = manufacturerDomainSlug(label ?? '');
|
|
488
|
+
if (label && !isGenericManufacturerSlug(slug) && !isGenericDomainManufacturerSlug(slug))
|
|
488
489
|
hints.push(label);
|
|
489
490
|
}
|
|
490
491
|
return hints;
|
|
@@ -517,6 +518,18 @@ function isGenericManufacturerSlug(slug) {
|
|
|
517
518
|
'assistant',
|
|
518
519
|
].includes(slug);
|
|
519
520
|
}
|
|
521
|
+
function isGenericDomainManufacturerSlug(slug) {
|
|
522
|
+
return [
|
|
523
|
+
'github',
|
|
524
|
+
'gitlab',
|
|
525
|
+
'bitbucket',
|
|
526
|
+
'sourceforge',
|
|
527
|
+
'readthedocs',
|
|
528
|
+
'githubio',
|
|
529
|
+
'pages',
|
|
530
|
+
'docs',
|
|
531
|
+
].includes(slug);
|
|
532
|
+
}
|
|
520
533
|
function escapeRegExp(value) {
|
|
521
534
|
return value.replace(/[.*+?^${}()|[\]\\]/g, '\\$&');
|
|
522
535
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"graph-index.d.ts","sourceRoot":"","sources":["../../../../src/platform/knowledge/semantic/graph-index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AAClD,OAAO,KAAK,EACV,mBAAmB,EACnB,mBAAmB,EACnB,qBAAqB,EACtB,MAAM,aAAa,CAAC;
|
|
1
|
+
{"version":3,"file":"graph-index.d.ts","sourceRoot":"","sources":["../../../../src/platform/knowledge/semantic/graph-index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AAClD,OAAO,KAAK,EACV,mBAAmB,EACnB,mBAAmB,EACnB,qBAAqB,EACtB,MAAM,aAAa,CAAC;AAOrB,MAAM,WAAW,2BAA2B;IAC1C,QAAQ,CAAC,KAAK,EAAE,SAAS,mBAAmB,EAAE,CAAC;IAC/C,QAAQ,CAAC,SAAS,EAAE,WAAW,CAAC,MAAM,EAAE,mBAAmB,CAAC,CAAC;IAC7D,QAAQ,CAAC,WAAW,EAAE,WAAW,CAAC,MAAM,EAAE,qBAAqB,CAAC,CAAC;CAClE;AAED,wBAAgB,gCAAgC,CAC9C,KAAK,EAAE,cAAc,EACrB,OAAO,EAAE,MAAM,GACd,2BAA2B,CAuB7B"}
|
|
@@ -1,11 +1,18 @@
|
|
|
1
1
|
import { isActiveKnowledgeEdge } from '../projection-utils.js';
|
|
2
|
+
import { knowledgeNodeMatchesScope, knowledgeSourceMatchesScope, } from '../scope-records.js';
|
|
2
3
|
export function buildKnowledgeSemanticGraphIndex(store, spaceId) {
|
|
3
|
-
const
|
|
4
|
-
const
|
|
4
|
+
const scope = { knowledgeSpaceId: spaceId };
|
|
5
|
+
const rawSources = store.listSourcesInSpace(spaceId).filter((source) => source.status !== 'stale');
|
|
6
|
+
const sourceMap = new Map(rawSources.map((source) => [source.id, source]));
|
|
7
|
+
const rawNodes = store.listNodesInSpace(spaceId).filter((node) => node.status !== 'stale');
|
|
8
|
+
const edgeCandidates = store.listEdges().filter(isActiveKnowledgeEdge);
|
|
9
|
+
const rawNodeMap = new Map(rawNodes.map((node) => [node.id, node]));
|
|
10
|
+
const lookup = { sources: sourceMap, nodes: rawNodeMap, edges: edgeCandidates };
|
|
11
|
+
const sources = rawSources.filter((source) => knowledgeSourceMatchesScope(source, scope));
|
|
12
|
+
const nodes = rawNodes.filter((node) => knowledgeNodeMatchesScope(node, scope, lookup));
|
|
5
13
|
const nodeIds = new Set(nodes.map((node) => node.id));
|
|
6
14
|
const sourceIds = new Set(sources.map((source) => source.id));
|
|
7
|
-
const edges =
|
|
8
|
-
&& (edge.fromKind !== 'node' || nodeIds.has(edge.fromId))
|
|
15
|
+
const edges = edgeCandidates.filter((edge) => ((edge.fromKind !== 'node' || nodeIds.has(edge.fromId))
|
|
9
16
|
&& (edge.toKind !== 'node' || nodeIds.has(edge.toId))
|
|
10
17
|
&& (edge.fromKind !== 'source' || sourceIds.has(edge.fromId))
|
|
11
18
|
&& (edge.toKind !== 'source' || sourceIds.has(edge.toId))));
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"self-improvement-gap-context.d.ts","sourceRoot":"","sources":["../../../../src/platform/knowledge/semantic/self-improvement-gap-context.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,4BAA4B,EAAE,MAAM,kBAAkB,CAAC;
|
|
1
|
+
{"version":3,"file":"self-improvement-gap-context.d.ts","sourceRoot":"","sources":["../../../../src/platform/knowledge/semantic/self-improvement-gap-context.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,4BAA4B,EAAE,MAAM,kBAAkB,CAAC;AAKrE,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AAClD,OAAO,KAAK,EAEV,mBAAmB,EACnB,qBAAqB,EACtB,MAAM,aAAa,CAAC;AAgBrB,MAAM,WAAW,UAAU;IACzB,QAAQ,CAAC,GAAG,EAAE,mBAAmB,CAAC;IAClC,QAAQ,CAAC,OAAO,EAAE,SAAS,qBAAqB,EAAE,CAAC;IACnD,QAAQ,CAAC,aAAa,EAAE,SAAS,mBAAmB,EAAE,CAAC;IACvD,QAAQ,CAAC,KAAK,EAAE,SAAS,mBAAmB,EAAE,CAAC;IAC/C,QAAQ,CAAC,eAAe,EAAE,SAAS,MAAM,EAAE,CAAC;CAC7C;AAED,MAAM,WAAW,iBAAiB;IAChC,QAAQ,CAAC,MAAM,EAAE,QAAQ,GAAG,MAAM,GAAG,UAAU,CAAC;IAChD,QAAQ,CAAC,MAAM,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IACrC,QAAQ,CAAC,MAAM,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IACrC,QAAQ,CAAC,WAAW,CAAC,EAAE,OAAO,GAAG,SAAS,CAAC;CAC5C;AAED,wBAAgB,oBAAoB,CAClC,KAAK,EAAE,cAAc,EACrB,OAAO,EAAE,MAAM,EACf,cAAc,EAAE,WAAW,CAAC,MAAM,CAAC,GAAG,IAAI,EAC1C,WAAW,EAAE,WAAW,CAAC,MAAM,CAAC,GAAG,IAAI,GACtC,mBAAmB,EAAE,CAQvB;AAED,wBAAgB,eAAe,CAC7B,KAAK,EAAE,cAAc,EACrB,OAAO,EAAE,MAAM,EACf,GAAG,EAAE,mBAAmB,EACxB,cAAc,EAAE,SAAS,4BAA4B,EAAE,GACtD,UAAU,CAwCZ;AAED,wBAAgB,WAAW,CACzB,OAAO,EAAE,UAAU,EACnB,KAAK,EAAE,OAAO,EACd,cAAc,EAAE,SAAS,4BAA4B,EAAE,GACtD,iBAAiB,CAkBnB;AASD,wBAAsB,iBAAiB,CACrC,KAAK,EAAE,cAAc,EACrB,OAAO,EAAE,MAAM,EACf,GAAG,EAAE,mBAAmB,EACxB,SAAS,EAAE,SAAS,MAAM,EAAE,EAC5B,KAAK,EAAE,MAAM,EACb,cAAc,EAAE,SAAS,4BAA4B,EAAE,GACtD,OAAO,CAAC,MAAM,CAAC,CAqCjB"}
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import { DEFAULT_KNOWLEDGE_SPACE_ID, getKnowledgeSpaceId, } from '../spaces.js';
|
|
1
2
|
import { buildKnowledgeSemanticGraphIndex } from './graph-index.js';
|
|
2
3
|
import { canonicalRepairSubjectNodes, repairSubjectIds } from './repair-subjects.js';
|
|
3
4
|
import { factsForObject, factsForSource, isConcreteRepairSubject, isUsableSelfImprovementFact, linkedObjectsForSource, matchingObjectProfiles, repairTargetFactCount, sourcesForObject, uniqueById, } from './self-improvement-graph.js';
|
|
@@ -62,6 +63,9 @@ export function classifyGap(context, force, objectProfiles) {
|
|
|
62
63
|
return { action: 'skip', reason: 'Gap repair retry window has not elapsed.', status: 'retry_wait', markAttempt: true };
|
|
63
64
|
if (!force && hasRepairEdge(context) && hasRepairFactEvidence(context))
|
|
64
65
|
return { action: 'skip', reason: 'Gap already has promoted repair facts.', status: 'already_repaired' };
|
|
66
|
+
if (isDefaultUnanchoredAnswerGap(context)) {
|
|
67
|
+
return { action: 'skip', reason: 'Default answer gaps without a linked subject are not automatically web-repaired.', status: 'needs_context', markAttempt: true };
|
|
68
|
+
}
|
|
65
69
|
if (isNotApplicableGap(context, objectProfiles))
|
|
66
70
|
return { action: 'suppress', reason: 'The gap is not applicable to the linked subject.' };
|
|
67
71
|
if (!hasConcreteSubject(context, objectProfiles)) {
|
|
@@ -72,6 +76,12 @@ export function classifyGap(context, force, objectProfiles) {
|
|
|
72
76
|
}
|
|
73
77
|
return { action: 'repair' };
|
|
74
78
|
}
|
|
79
|
+
function isDefaultUnanchoredAnswerGap(context) {
|
|
80
|
+
return getKnowledgeSpaceId(context.gap) === DEFAULT_KNOWLEDGE_SPACE_ID
|
|
81
|
+
&& readString(context.gap.metadata.semanticKind) === 'gap'
|
|
82
|
+
&& readString(context.gap.metadata.gapKind) === 'answer'
|
|
83
|
+
&& context.linkedObjects.length === 0;
|
|
84
|
+
}
|
|
75
85
|
export async function linkRepairSources(store, spaceId, gap, sourceIds, query, objectProfiles) {
|
|
76
86
|
let linked = 0;
|
|
77
87
|
const linkedObjectIds = repairSubjectIdsForGap(store, spaceId, gap, objectProfiles);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"service.d.ts","sourceRoot":"","sources":["../../../src/platform/knowledge/service.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"service.d.ts","sourceRoot":"","sources":["../../../src/platform/knowledge/service.ts"],"names":[],"mappings":"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"}
|