agentfootprint 9.108.0 → 9.109.1

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/CHANGELOG.md CHANGED
@@ -5,6 +5,36 @@ All notable changes to this project will be documented in this file.
5
5
  The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.1.0/),
6
6
  and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
7
7
 
8
+ ## [9.109.1] - 2026-09-17
9
+
10
+ ### Fixed — the score's word rules, after the first scored arm
11
+
12
+ - `scoreAbsence` no longer counts `declar…` as a map word: a host's own answer footer says
13
+ "declared by the tools that produced it", which counted the host's boilerplate as the model
14
+ citing the map. The map words are `ontology` and its forms and `map`/`maps`.
15
+ - A declared id or alias now also meets its plural (`vmkernel_log` meets "vmkernel logs",
16
+ `change_record` meets "change records"): a plural is a form of the declared word, not another
17
+ word. Still whole-word, still declared strings only.
18
+
19
+ ## [9.109.0] - 2026-09-17
20
+
21
+ ### Added — the score: how a "no data" answer is measured, by declared strings, with no judge
22
+
23
+ - **`scoreAbsence(spec, turn, expected)` / `summarizeAbsence(scores)`** on `agentfootprint/ontology`
24
+ (`AbsenceTurn`, `AbsenceExpectation`, `AbsenceScore`, `AbsenceSummary`). The design page's first
25
+ number for "the answer names the source" was a regex over prose; this is the rule that replaces
26
+ it. Off the record and the declaration only: did the answer name the expected gap (a term's or
27
+ source's id or declared alias, whole-word, `_` as a space), did it name a declared neighbour (a
28
+ holding source, a reading tool, a term one relation away — `undefined` when the map declares
29
+ none), the tool-call and `unsupportedValues` counts, and the map words it used on the person.
30
+ An expectation naming a gap the map does not declare is refused. `k` of `n` per check in the
31
+ summary, over the turns that had the check.
32
+ - **`OntologySource.aliases`** — a source may declare the other names people use for it
33
+ (`['Cohesity']` for `influx_cohesity`), served beside its meaning
34
+ (`<id> — <meaning> · aliases: …`) and validated like a node's: no repeats, at most 16, never
35
+ another declared id of either kind. A source without them serves the bytes it always did; the
36
+ twenty byte-identity references are untouched.
37
+
8
38
  ## [9.108.0] - 2026-09-17
9
39
 
10
40
  ### Added — the map meets the skills: which skill declares the tool that reads a term
@@ -38,6 +38,7 @@ export declare const ONTOLOGY_LIMITS: Readonly<{
38
38
  readonly nodes: 256;
39
39
  readonly sources: 64;
40
40
  readonly edges: 512;
41
+ /** Aliases on one node — and, since 9.109.0, on one source. */
41
42
  readonly aliasesPerNode: 16;
42
43
  readonly sourcesPerNode: 8;
43
44
  readonly viaPerSource: 16;
@@ -39,6 +39,7 @@ export const ONTOLOGY_LIMITS = Object.freeze({
39
39
  nodes: 256,
40
40
  sources: 64,
41
41
  edges: 512,
42
+ /** Aliases on one node — and, since 9.109.0, on one source. */
42
43
  aliasesPerNode: 16,
43
44
  sourcesPerNode: 8,
44
45
  viaPerSource: 16,
@@ -46,7 +47,7 @@ export const ONTOLOGY_LIMITS = Object.freeze({
46
47
  /** Identifier-safe: a letter, then letters, digits, `_`, `.` or `-`. */
47
48
  const ID_RE = /^[A-Za-z][A-Za-z0-9_.-]*$/;
48
49
  /** The keys each shape accepts — anything else is refused by name, not stripped. */
49
- const ALLOWED_SOURCE_KEYS = ['meaning', 'coverage', 'configured'];
50
+ const ALLOWED_SOURCE_KEYS = ['meaning', 'coverage', 'configured', 'aliases'];
50
51
  const ALLOWED_NODE_SOURCE_KEYS = ['source', 'via', 'coverage'];
51
52
  const ALLOWED_NODE_KEYS = ['meaning', 'unit', 'aliases', 'sources'];
52
53
  const ALLOWED_EDGE_KEYS = ['from', 'to', 'relation', 'meaning'];
@@ -106,10 +107,14 @@ function checkSource(id, value) {
106
107
  if (configured !== undefined && typeof configured !== 'boolean') {
107
108
  refuse(`sources['${id}'].configured must be a boolean when given.`);
108
109
  }
110
+ const aliases = value.aliases === undefined
111
+ ? undefined
112
+ : checkNames(value.aliases, `sources['${id}'].aliases`, ONTOLOGY_LIMITS.aliasesPerNode);
109
113
  return Object.freeze({
110
114
  meaning,
111
115
  ...(coverage !== undefined && { coverage }),
112
116
  ...(configured !== undefined && { configured }),
117
+ ...(aliases !== undefined && { aliases }),
113
118
  });
114
119
  }
115
120
  function checkNodeSource(nodeId, index, value, sourceIds) {
@@ -219,6 +224,15 @@ export function defineOntology(spec) {
219
224
  }
220
225
  }
221
226
  }
227
+ // A source's alias (9.109.0) must not be another declared id of either
228
+ // kind: an answer naming it would then name two things.
229
+ for (const [sourceId, source] of Object.entries(sources)) {
230
+ for (const alias of source.aliases ?? []) {
231
+ if (alias !== sourceId && (sourceIds.has(alias) || nodeIds.has(alias))) {
232
+ refuse(`source '${sourceId}' alias '${alias}' collides with a declared id '${alias}'.`);
233
+ }
234
+ }
235
+ }
222
236
  if (spec.edges !== undefined && !Array.isArray(spec.edges)) {
223
237
  refuse('edges must be an array when given.');
224
238
  }
@@ -1 +1 @@
1
- {"version":3,"file":"define.js","sourceRoot":"","sources":["../../../src/ontology/define.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"define.js","sourceRoot":"","sources":["../../../src/ontology/define.ts"],"names":[],"mappings":"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"}
@@ -11,4 +11,5 @@
11
11
  export { defineOntology, ontologyHash, ONTOLOGY_LIMITS } from './define.js';
12
12
  export { ONTOLOGY_INSTRUCTION, ONTOLOGY_INSTRUCTION_ID } from './instruction.js';
13
13
  export { ontologyPiece, ONTOLOGY_PIECE_LIMITS, type OntologyPiece } from './serve.js';
14
+ export { scoreAbsence, summarizeAbsence, type AbsenceExpectation, type AbsenceScore, type AbsenceSummary, type AbsenceTurn, } from './score.js';
14
15
  export type { Ontology, OntologyAsk, OntologyEdge, OntologyJoin, OntologyNode, OntologyNodeSource, OntologyRecord, OntologySource, OntologySpec, } from './types.js';
@@ -11,4 +11,5 @@
11
11
  export { defineOntology, ontologyHash, ONTOLOGY_LIMITS } from './define.js';
12
12
  export { ONTOLOGY_INSTRUCTION, ONTOLOGY_INSTRUCTION_ID } from './instruction.js';
13
13
  export { ontologyPiece, ONTOLOGY_PIECE_LIMITS } from './serve.js';
14
+ export { scoreAbsence, summarizeAbsence, } from './score.js';
14
15
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/ontology/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAEH,OAAO,EAAE,cAAc,EAAE,YAAY,EAAE,eAAe,EAAE,MAAM,aAAa,CAAC;AAC5E,OAAO,EAAE,oBAAoB,EAAE,uBAAuB,EAAE,MAAM,kBAAkB,CAAC;AACjF,OAAO,EAAE,aAAa,EAAE,qBAAqB,EAAsB,MAAM,YAAY,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/ontology/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAEH,OAAO,EAAE,cAAc,EAAE,YAAY,EAAE,eAAe,EAAE,MAAM,aAAa,CAAC;AAC5E,OAAO,EAAE,oBAAoB,EAAE,uBAAuB,EAAE,MAAM,kBAAkB,CAAC;AACjF,OAAO,EAAE,aAAa,EAAE,qBAAqB,EAAsB,MAAM,YAAY,CAAC;AACtF,OAAO,EACL,YAAY,EACZ,gBAAgB,GAKjB,MAAM,YAAY,CAAC"}
@@ -0,0 +1,113 @@
1
+ /**
2
+ * ontology/score — did an answer name the declared gap, and where the need
3
+ * would be met? Scored off the record, by declared strings, with no judge.
4
+ *
5
+ * Pattern: pure functions over the served spec and one turn's own facts
6
+ * (the answer text, the tool names called, the library's own
7
+ * unsupported-values verdict). No model, no clock, no I/O.
8
+ * Role: Lens, for a BENCH. It is the measuring stick the design page
9
+ * promised (docs/design/2026-09-ontology.md § Measured): the first
10
+ * number for "the answer names the source" was a regex over prose;
11
+ * this is the rule that replaces it, so every wording change is
12
+ * measured the same way. Exported on the `agentfootprint/ontology`
13
+ * door because the map's consumer runs the bench on ITS host with
14
+ * ITS questions, and the rules must be the library's, not re-derived
15
+ * there.
16
+ * Emits: N/A.
17
+ *
18
+ * THE LAW OF THE SCORE
19
+ * A check matches DECLARED STRINGS ONLY — a term's or a source's id and
20
+ * aliases, a tool's name — whole-word, case-insensitive, an `_` in an
21
+ * id standing for a space or a hyphen, a plural `s` allowed. Nothing fuzzier. So an answer that
22
+ * says "UCS Manager" when the source's id is `influx_ucs` and no alias says
23
+ * "UCS Manager" scores NO, and that is the point: the declaration must
24
+ * carry the words people use, because those are the words the model
25
+ * reads too. The scorer never decides an answer is good; it counts what
26
+ * the answer names.
27
+ *
28
+ * THE EXPECTATION IS THE BENCH AUTHOR'S, DECLARED BEFORE THE RUN
29
+ * `expected.gap` names the term or source the question turns on — the
30
+ * `_findings.expect` precedent: declared before the call, judged after. A
31
+ * gap that names nothing the spec declares is refused, naming it: a bench
32
+ * whose oracle lies must fail loudly, as a map naming an unregistered tool
33
+ * does at build.
34
+ */
35
+ import type { OntologySpec } from './types.js';
36
+ /** What a bench question declares about itself, before the run. */
37
+ export interface AbsenceExpectation {
38
+ /**
39
+ * The declared gap the answer should name: a term id or a source id of
40
+ * the served map. Absent when the question expects DATA, not a gap — then
41
+ * only the counts are read and the two naming checks are `undefined`.
42
+ */
43
+ readonly gap?: string;
44
+ }
45
+ /** One turn's own facts, read off the record by the caller. */
46
+ export interface AbsenceTurn {
47
+ /** The final answer, as returned. */
48
+ readonly answer: string;
49
+ /** The tool names the model called this turn, in order. */
50
+ readonly toolCalls: readonly string[];
51
+ /**
52
+ * The library's own verdict on values the answer stated that no tool
53
+ * result carried (`AgentState.unsupportedValues.values.length`), when the
54
+ * evidence gate was armed and the record carries it. Absent otherwise.
55
+ */
56
+ readonly unsupportedValues?: number;
57
+ }
58
+ /** The score of one turn — every field a count, a yes/no, or the strings that matched. */
59
+ export interface AbsenceScore {
60
+ /** The expected gap, as declared. */
61
+ readonly gap: string | undefined;
62
+ /** What the spec says the gap is. `'none'` when no gap was expected. */
63
+ readonly gapKind: 'term' | 'source' | 'none';
64
+ /** The answer contains the gap's id or one of its declared aliases. `undefined` when no gap was expected. */
65
+ readonly namedGap: boolean | undefined;
66
+ /**
67
+ * The answer contains a declared neighbour of the gap — a source that holds
68
+ * the term, a tool that reads it, a term one relation away; for a source,
69
+ * a term it holds or a tool that reads through it. `undefined` when no gap
70
+ * was expected or the spec declares no neighbour for it.
71
+ */
72
+ readonly namedWhere: boolean | undefined;
73
+ /** The neighbours the answer named, by declared id — the evidence for `namedWhere`. */
74
+ readonly where: readonly string[];
75
+ /** The neighbours the spec declares for the gap — what `namedWhere` was checked against. */
76
+ readonly neighbours: readonly string[];
77
+ /** Tool calls this turn. */
78
+ readonly toolCalls: number;
79
+ /** The library's unsupported-values count, as handed in; `undefined` when the record carried none. */
80
+ readonly unsupportedValues: number | undefined;
81
+ /**
82
+ * The words of the map the answer used on the person — `ontology` and its
83
+ * forms, `map` and `maps`: the header's own vocabulary the ask says to keep
84
+ * from the person. A wording metric, reported as the words found.
85
+ */
86
+ readonly mapWords: readonly string[];
87
+ }
88
+ /** The tally over many turns — `k` of `n` per check, counts summed. */
89
+ export interface AbsenceSummary {
90
+ readonly turns: number;
91
+ readonly namedGap: {
92
+ readonly k: number;
93
+ readonly n: number;
94
+ };
95
+ readonly namedWhere: {
96
+ readonly k: number;
97
+ readonly n: number;
98
+ };
99
+ readonly citedMap: {
100
+ readonly k: number;
101
+ readonly n: number;
102
+ };
103
+ readonly toolCalls: number;
104
+ /** Summed over the turns whose record carried a verdict; `undefined` when none did. */
105
+ readonly unsupportedValues: number | undefined;
106
+ }
107
+ /**
108
+ * Score one turn against the served map and the bench's expectation.
109
+ * Throws when `expected.gap` names nothing the spec declares.
110
+ */
111
+ export declare function scoreAbsence(spec: OntologySpec, turn: AbsenceTurn, expected?: AbsenceExpectation): AbsenceScore;
112
+ /** The tally: `k` of `n` per yes/no check over the turns that had one; counts summed. */
113
+ export declare function summarizeAbsence(scores: readonly AbsenceScore[]): AbsenceSummary;
@@ -0,0 +1,186 @@
1
+ /**
2
+ * ontology/score — did an answer name the declared gap, and where the need
3
+ * would be met? Scored off the record, by declared strings, with no judge.
4
+ *
5
+ * Pattern: pure functions over the served spec and one turn's own facts
6
+ * (the answer text, the tool names called, the library's own
7
+ * unsupported-values verdict). No model, no clock, no I/O.
8
+ * Role: Lens, for a BENCH. It is the measuring stick the design page
9
+ * promised (docs/design/2026-09-ontology.md § Measured): the first
10
+ * number for "the answer names the source" was a regex over prose;
11
+ * this is the rule that replaces it, so every wording change is
12
+ * measured the same way. Exported on the `agentfootprint/ontology`
13
+ * door because the map's consumer runs the bench on ITS host with
14
+ * ITS questions, and the rules must be the library's, not re-derived
15
+ * there.
16
+ * Emits: N/A.
17
+ *
18
+ * THE LAW OF THE SCORE
19
+ * A check matches DECLARED STRINGS ONLY — a term's or a source's id and
20
+ * aliases, a tool's name — whole-word, case-insensitive, an `_` in an
21
+ * id standing for a space or a hyphen, a plural `s` allowed. Nothing fuzzier. So an answer that
22
+ * says "UCS Manager" when the source's id is `influx_ucs` and no alias says
23
+ * "UCS Manager" scores NO, and that is the point: the declaration must
24
+ * carry the words people use, because those are the words the model
25
+ * reads too. The scorer never decides an answer is good; it counts what
26
+ * the answer names.
27
+ *
28
+ * THE EXPECTATION IS THE BENCH AUTHOR'S, DECLARED BEFORE THE RUN
29
+ * `expected.gap` names the term or source the question turns on — the
30
+ * `_findings.expect` precedent: declared before the call, judged after. A
31
+ * gap that names nothing the spec declares is refused, naming it: a bench
32
+ * whose oracle lies must fail loudly, as a map naming an unregistered tool
33
+ * does at build.
34
+ */
35
+ /**
36
+ * The header's own words, and the ask's: what the piece calls itself and
37
+ * what the person should not hear. `ontology` and its forms; `map` exact
38
+ * (with its plural) — `mapping` as a verb is a judgment this list does not
39
+ * make. NOT `declar…` (9.109.1): a host's own answer footer says "declared
40
+ * by the tools that produced it", so that stem counted the host's boilerplate
41
+ * as the model citing the map — a false positive the first scored arm showed.
42
+ */
43
+ const MAP_WORDS = [/\bontolog\w*/gi, /\bmaps?\b/gi];
44
+ /**
45
+ * Score one turn against the served map and the bench's expectation.
46
+ * Throws when `expected.gap` names nothing the spec declares.
47
+ */
48
+ export function scoreAbsence(spec, turn, expected = {}) {
49
+ const counts = {
50
+ toolCalls: turn.toolCalls.length,
51
+ unsupportedValues: turn.unsupportedValues,
52
+ mapWords: wordsOf(turn.answer),
53
+ };
54
+ if (expected.gap === undefined) {
55
+ return {
56
+ gap: undefined,
57
+ gapKind: 'none',
58
+ namedGap: undefined,
59
+ namedWhere: undefined,
60
+ where: [],
61
+ neighbours: [],
62
+ ...counts,
63
+ };
64
+ }
65
+ const gap = expected.gap;
66
+ const kind = kindOf(spec, gap);
67
+ if (kind === undefined) {
68
+ throw new Error(`scoreAbsence: expected gap '${gap}' is neither a term nor a source of ontology ` +
69
+ `'${spec.id}' — the expectation must name what the map declares.`);
70
+ }
71
+ const names = namesOf(spec, gap);
72
+ const neighbours = neighboursOf(spec, gap, kind);
73
+ const where = neighbours.filter((id) => mentions(turn.answer, namesOf(spec, id)));
74
+ return {
75
+ gap,
76
+ gapKind: kind,
77
+ namedGap: mentions(turn.answer, names),
78
+ namedWhere: neighbours.length === 0 ? undefined : where.length > 0,
79
+ where,
80
+ neighbours,
81
+ ...counts,
82
+ };
83
+ }
84
+ /** The tally: `k` of `n` per yes/no check over the turns that had one; counts summed. */
85
+ export function summarizeAbsence(scores) {
86
+ const tally = (pick) => {
87
+ const asked = scores.filter((s) => pick(s) !== undefined);
88
+ return { k: asked.filter((s) => pick(s) === true).length, n: asked.length };
89
+ };
90
+ const withVerdict = scores.filter((s) => s.unsupportedValues !== undefined);
91
+ return {
92
+ turns: scores.length,
93
+ namedGap: tally((s) => s.namedGap),
94
+ namedWhere: tally((s) => s.namedWhere),
95
+ citedMap: tally((s) => s.mapWords.length > 0),
96
+ toolCalls: scores.reduce((n, s) => n + s.toolCalls, 0),
97
+ unsupportedValues: withVerdict.length === 0
98
+ ? undefined
99
+ : withVerdict.reduce((n, s) => n + (s.unsupportedValues ?? 0), 0),
100
+ };
101
+ }
102
+ // ─── The declared neighbourhood ────────────────────────────────────────
103
+ function kindOf(spec, id) {
104
+ if (Object.prototype.hasOwnProperty.call(spec.nodes, id))
105
+ return 'term';
106
+ if (Object.prototype.hasOwnProperty.call(spec.sources, id))
107
+ return 'source';
108
+ return undefined;
109
+ }
110
+ /**
111
+ * Every declared id one step from the gap, in declaration order, no repeats:
112
+ * for a term — the sources holding it, the tools reading it, the terms at
113
+ * either end of a relation with it; for a source — the terms it holds and
114
+ * the tools reading through it. Tools are ids here too: a tool name is a
115
+ * declared string the answer can quote.
116
+ */
117
+ function neighboursOf(spec, gap, kind) {
118
+ const out = [];
119
+ const add = (id) => {
120
+ if (id !== gap && !out.includes(id))
121
+ out.push(id);
122
+ };
123
+ if (kind === 'term') {
124
+ for (const held of spec.nodes[gap]?.sources ?? []) {
125
+ add(held.source);
126
+ for (const tool of held.via ?? [])
127
+ add(tool);
128
+ }
129
+ for (const edge of spec.edges ?? []) {
130
+ if (edge.from === gap)
131
+ add(edge.to);
132
+ if (edge.to === gap)
133
+ add(edge.from);
134
+ }
135
+ }
136
+ else {
137
+ for (const [id, node] of Object.entries(spec.nodes)) {
138
+ for (const held of node.sources ?? []) {
139
+ if (held.source !== gap)
140
+ continue;
141
+ add(id);
142
+ for (const tool of held.via ?? [])
143
+ add(tool);
144
+ }
145
+ }
146
+ }
147
+ return out;
148
+ }
149
+ /** The strings that name one declared id: a term's or a source's id and aliases; a tool's bare name. */
150
+ function namesOf(spec, id) {
151
+ const has = (o) => Object.prototype.hasOwnProperty.call(o, id);
152
+ const declared = has(spec.nodes)
153
+ ? spec.nodes[id]
154
+ : has(spec.sources)
155
+ ? spec.sources[id]
156
+ : undefined;
157
+ return declared === undefined ? [id] : [id, ...(declared.aliases ?? [])];
158
+ }
159
+ // ─── Matching — declared strings, whole word, nothing fuzzier ─────────
160
+ function mentions(answer, names) {
161
+ return names.some((name) => patternOf(name).test(answer));
162
+ }
163
+ /**
164
+ * One declared string as a whole-word, case-insensitive pattern; an `_` in
165
+ * the id stands for a space, a hyphen or itself, so `vmkernel_log` meets
166
+ * "vmkernel log" and `esxi_host` meets "ESXi host"; a trailing `s` is
167
+ * allowed (9.109.1), so "vmkernel logs" and "change records" meet their
168
+ * ids — a plural is a form of the declared word, not another word.
169
+ * Everything else is escaped: a declared string is matched as itself.
170
+ */
171
+ function patternOf(name) {
172
+ const escaped = name.replace(/[.*+?^${}()|[\]\\]/g, '\\$&').replace(/_/g, '[ _-]');
173
+ return new RegExp(`(?<![\\w])${escaped}s?(?![\\w])`, 'i');
174
+ }
175
+ function wordsOf(answer) {
176
+ const found = [];
177
+ for (const re of MAP_WORDS) {
178
+ for (const m of answer.matchAll(re)) {
179
+ const word = m[0].toLowerCase();
180
+ if (!found.includes(word))
181
+ found.push(word);
182
+ }
183
+ }
184
+ return found;
185
+ }
186
+ //# sourceMappingURL=score.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"score.js","sourceRoot":"","sources":["../../../src/ontology/score.ts"],"names":[],"mappings":"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"}
@@ -98,9 +98,12 @@ function nodeLine(id, node) {
98
98
  ? ''
99
99
  : ` · aliases: ${node.aliases.join(', ')}`));
100
100
  }
101
- /** `<id> — <meaning>[ · coverage: <coverage>][ · configured: yes|no]` — absent `configured` says nothing. */
101
+ /** `<id> — <meaning>[ · aliases: a, b][ · coverage: <coverage>][ · configured: yes|no]` — absent `configured` says nothing. */
102
102
  function sourceLine(id, source) {
103
103
  return fold(`${id} — ${source.meaning}` +
104
+ (source.aliases === undefined || source.aliases.length === 0
105
+ ? ''
106
+ : ` · aliases: ${source.aliases.join(', ')}`) +
104
107
  (source.coverage === undefined ? '' : ` · coverage: ${source.coverage}`) +
105
108
  (source.configured === undefined ? '' : ` · configured: ${source.configured ? 'yes' : 'no'}`));
106
109
  }
@@ -1 +1 @@
1
- {"version":3,"file":"serve.js","sourceRoot":"","sources":["../../../src/ontology/serve.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"serve.js","sourceRoot":"","sources":["../../../src/ontology/serve.ts"],"names":[],"mappings":"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"}
@@ -36,11 +36,13 @@ export interface OntologyNode {
36
36
  readonly aliases?: readonly string[];
37
37
  readonly sources?: readonly OntologyNodeSource[];
38
38
  }
39
- /** A place data is held: its meaning, the author's coverage sentence, and whether it is configured — ABSENT means unknown, never assumed. */
39
+ /** A place data is held: its meaning, the author's coverage sentence, whether it is configured — ABSENT means unknown, never assumed — and (9.109.0) the other names people use for it. */
40
40
  export interface OntologySource {
41
41
  readonly meaning: string;
42
42
  readonly coverage?: string;
43
43
  readonly configured?: boolean;
44
+ /** Other names for the source (`'Cohesity'` for `influx_cohesity`): served beside its meaning, and what a bench's scorer matches an answer against — the declaration must carry the words people use. */
45
+ readonly aliases?: readonly string[];
44
46
  }
45
47
  /** How two nodes RELATE, in the author's own word (`'backed-by'`, `'logs-into'`, …). */
46
48
  export interface OntologyEdge {
@@ -42,6 +42,7 @@ exports.ONTOLOGY_LIMITS = Object.freeze({
42
42
  nodes: 256,
43
43
  sources: 64,
44
44
  edges: 512,
45
+ /** Aliases on one node — and, since 9.109.0, on one source. */
45
46
  aliasesPerNode: 16,
46
47
  sourcesPerNode: 8,
47
48
  viaPerSource: 16,
@@ -49,7 +50,7 @@ exports.ONTOLOGY_LIMITS = Object.freeze({
49
50
  /** Identifier-safe: a letter, then letters, digits, `_`, `.` or `-`. */
50
51
  const ID_RE = /^[A-Za-z][A-Za-z0-9_.-]*$/;
51
52
  /** The keys each shape accepts — anything else is refused by name, not stripped. */
52
- const ALLOWED_SOURCE_KEYS = ['meaning', 'coverage', 'configured'];
53
+ const ALLOWED_SOURCE_KEYS = ['meaning', 'coverage', 'configured', 'aliases'];
53
54
  const ALLOWED_NODE_SOURCE_KEYS = ['source', 'via', 'coverage'];
54
55
  const ALLOWED_NODE_KEYS = ['meaning', 'unit', 'aliases', 'sources'];
55
56
  const ALLOWED_EDGE_KEYS = ['from', 'to', 'relation', 'meaning'];
@@ -109,10 +110,14 @@ function checkSource(id, value) {
109
110
  if (configured !== undefined && typeof configured !== 'boolean') {
110
111
  refuse(`sources['${id}'].configured must be a boolean when given.`);
111
112
  }
113
+ const aliases = value.aliases === undefined
114
+ ? undefined
115
+ : checkNames(value.aliases, `sources['${id}'].aliases`, exports.ONTOLOGY_LIMITS.aliasesPerNode);
112
116
  return Object.freeze({
113
117
  meaning,
114
118
  ...(coverage !== undefined && { coverage }),
115
119
  ...(configured !== undefined && { configured }),
120
+ ...(aliases !== undefined && { aliases }),
116
121
  });
117
122
  }
118
123
  function checkNodeSource(nodeId, index, value, sourceIds) {
@@ -222,6 +227,15 @@ function defineOntology(spec) {
222
227
  }
223
228
  }
224
229
  }
230
+ // A source's alias (9.109.0) must not be another declared id of either
231
+ // kind: an answer naming it would then name two things.
232
+ for (const [sourceId, source] of Object.entries(sources)) {
233
+ for (const alias of source.aliases ?? []) {
234
+ if (alias !== sourceId && (sourceIds.has(alias) || nodeIds.has(alias))) {
235
+ refuse(`source '${sourceId}' alias '${alias}' collides with a declared id '${alias}'.`);
236
+ }
237
+ }
238
+ }
225
239
  if (spec.edges !== undefined && !Array.isArray(spec.edges)) {
226
240
  refuse('edges must be an array when given.');
227
241
  }
@@ -1 +1 @@
1
- {"version":3,"file":"define.js","sourceRoot":"","sources":["../../src/ontology/define.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"define.js","sourceRoot":"","sources":["../../src/ontology/define.ts"],"names":[],"mappings":"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"}
@@ -10,7 +10,7 @@
10
10
  * what the model is served, called by the wire and by the rebuild.
11
11
  */
12
12
  Object.defineProperty(exports, "__esModule", { value: true });
13
- exports.ONTOLOGY_PIECE_LIMITS = exports.ontologyPiece = exports.ONTOLOGY_INSTRUCTION_ID = exports.ONTOLOGY_INSTRUCTION = exports.ONTOLOGY_LIMITS = exports.ontologyHash = exports.defineOntology = void 0;
13
+ exports.summarizeAbsence = exports.scoreAbsence = exports.ONTOLOGY_PIECE_LIMITS = exports.ontologyPiece = exports.ONTOLOGY_INSTRUCTION_ID = exports.ONTOLOGY_INSTRUCTION = exports.ONTOLOGY_LIMITS = exports.ontologyHash = exports.defineOntology = void 0;
14
14
  var define_js_1 = require("./define.js");
15
15
  Object.defineProperty(exports, "defineOntology", { enumerable: true, get: function () { return define_js_1.defineOntology; } });
16
16
  Object.defineProperty(exports, "ontologyHash", { enumerable: true, get: function () { return define_js_1.ontologyHash; } });
@@ -21,4 +21,7 @@ Object.defineProperty(exports, "ONTOLOGY_INSTRUCTION_ID", { enumerable: true, ge
21
21
  var serve_js_1 = require("./serve.js");
22
22
  Object.defineProperty(exports, "ontologyPiece", { enumerable: true, get: function () { return serve_js_1.ontologyPiece; } });
23
23
  Object.defineProperty(exports, "ONTOLOGY_PIECE_LIMITS", { enumerable: true, get: function () { return serve_js_1.ONTOLOGY_PIECE_LIMITS; } });
24
+ var score_js_1 = require("./score.js");
25
+ Object.defineProperty(exports, "scoreAbsence", { enumerable: true, get: function () { return score_js_1.scoreAbsence; } });
26
+ Object.defineProperty(exports, "summarizeAbsence", { enumerable: true, get: function () { return score_js_1.summarizeAbsence; } });
24
27
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/ontology/index.ts"],"names":[],"mappings":";AAAA;;;;;;;;;GASG;;;AAEH,yCAA4E;AAAnE,2GAAA,cAAc,OAAA;AAAE,yGAAA,YAAY,OAAA;AAAE,4GAAA,eAAe,OAAA;AACtD,mDAAiF;AAAxE,sHAAA,oBAAoB,OAAA;AAAE,yHAAA,uBAAuB,OAAA;AACtD,uCAAsF;AAA7E,yGAAA,aAAa,OAAA;AAAE,iHAAA,qBAAqB,OAAA"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/ontology/index.ts"],"names":[],"mappings":";AAAA;;;;;;;;;GASG;;;AAEH,yCAA4E;AAAnE,2GAAA,cAAc,OAAA;AAAE,yGAAA,YAAY,OAAA;AAAE,4GAAA,eAAe,OAAA;AACtD,mDAAiF;AAAxE,sHAAA,oBAAoB,OAAA;AAAE,yHAAA,uBAAuB,OAAA;AACtD,uCAAsF;AAA7E,yGAAA,aAAa,OAAA;AAAE,iHAAA,qBAAqB,OAAA;AAC7C,uCAOoB;AANlB,wGAAA,YAAY,OAAA;AACZ,4GAAA,gBAAgB,OAAA"}
@@ -0,0 +1,191 @@
1
+ "use strict";
2
+ /**
3
+ * ontology/score — did an answer name the declared gap, and where the need
4
+ * would be met? Scored off the record, by declared strings, with no judge.
5
+ *
6
+ * Pattern: pure functions over the served spec and one turn's own facts
7
+ * (the answer text, the tool names called, the library's own
8
+ * unsupported-values verdict). No model, no clock, no I/O.
9
+ * Role: Lens, for a BENCH. It is the measuring stick the design page
10
+ * promised (docs/design/2026-09-ontology.md § Measured): the first
11
+ * number for "the answer names the source" was a regex over prose;
12
+ * this is the rule that replaces it, so every wording change is
13
+ * measured the same way. Exported on the `agentfootprint/ontology`
14
+ * door because the map's consumer runs the bench on ITS host with
15
+ * ITS questions, and the rules must be the library's, not re-derived
16
+ * there.
17
+ * Emits: N/A.
18
+ *
19
+ * THE LAW OF THE SCORE
20
+ * A check matches DECLARED STRINGS ONLY — a term's or a source's id and
21
+ * aliases, a tool's name — whole-word, case-insensitive, an `_` in an
22
+ * id standing for a space or a hyphen, a plural `s` allowed. Nothing fuzzier. So an answer that
23
+ * says "UCS Manager" when the source's id is `influx_ucs` and no alias says
24
+ * "UCS Manager" scores NO, and that is the point: the declaration must
25
+ * carry the words people use, because those are the words the model
26
+ * reads too. The scorer never decides an answer is good; it counts what
27
+ * the answer names.
28
+ *
29
+ * THE EXPECTATION IS THE BENCH AUTHOR'S, DECLARED BEFORE THE RUN
30
+ * `expected.gap` names the term or source the question turns on — the
31
+ * `_findings.expect` precedent: declared before the call, judged after. A
32
+ * gap that names nothing the spec declares is refused, naming it: a bench
33
+ * whose oracle lies must fail loudly, as a map naming an unregistered tool
34
+ * does at build.
35
+ */
36
+ Object.defineProperty(exports, "__esModule", { value: true });
37
+ exports.summarizeAbsence = exports.scoreAbsence = void 0;
38
+ /**
39
+ * The header's own words, and the ask's: what the piece calls itself and
40
+ * what the person should not hear. `ontology` and its forms; `map` exact
41
+ * (with its plural) — `mapping` as a verb is a judgment this list does not
42
+ * make. NOT `declar…` (9.109.1): a host's own answer footer says "declared
43
+ * by the tools that produced it", so that stem counted the host's boilerplate
44
+ * as the model citing the map — a false positive the first scored arm showed.
45
+ */
46
+ const MAP_WORDS = [/\bontolog\w*/gi, /\bmaps?\b/gi];
47
+ /**
48
+ * Score one turn against the served map and the bench's expectation.
49
+ * Throws when `expected.gap` names nothing the spec declares.
50
+ */
51
+ function scoreAbsence(spec, turn, expected = {}) {
52
+ const counts = {
53
+ toolCalls: turn.toolCalls.length,
54
+ unsupportedValues: turn.unsupportedValues,
55
+ mapWords: wordsOf(turn.answer),
56
+ };
57
+ if (expected.gap === undefined) {
58
+ return {
59
+ gap: undefined,
60
+ gapKind: 'none',
61
+ namedGap: undefined,
62
+ namedWhere: undefined,
63
+ where: [],
64
+ neighbours: [],
65
+ ...counts,
66
+ };
67
+ }
68
+ const gap = expected.gap;
69
+ const kind = kindOf(spec, gap);
70
+ if (kind === undefined) {
71
+ throw new Error(`scoreAbsence: expected gap '${gap}' is neither a term nor a source of ontology ` +
72
+ `'${spec.id}' — the expectation must name what the map declares.`);
73
+ }
74
+ const names = namesOf(spec, gap);
75
+ const neighbours = neighboursOf(spec, gap, kind);
76
+ const where = neighbours.filter((id) => mentions(turn.answer, namesOf(spec, id)));
77
+ return {
78
+ gap,
79
+ gapKind: kind,
80
+ namedGap: mentions(turn.answer, names),
81
+ namedWhere: neighbours.length === 0 ? undefined : where.length > 0,
82
+ where,
83
+ neighbours,
84
+ ...counts,
85
+ };
86
+ }
87
+ exports.scoreAbsence = scoreAbsence;
88
+ /** The tally: `k` of `n` per yes/no check over the turns that had one; counts summed. */
89
+ function summarizeAbsence(scores) {
90
+ const tally = (pick) => {
91
+ const asked = scores.filter((s) => pick(s) !== undefined);
92
+ return { k: asked.filter((s) => pick(s) === true).length, n: asked.length };
93
+ };
94
+ const withVerdict = scores.filter((s) => s.unsupportedValues !== undefined);
95
+ return {
96
+ turns: scores.length,
97
+ namedGap: tally((s) => s.namedGap),
98
+ namedWhere: tally((s) => s.namedWhere),
99
+ citedMap: tally((s) => s.mapWords.length > 0),
100
+ toolCalls: scores.reduce((n, s) => n + s.toolCalls, 0),
101
+ unsupportedValues: withVerdict.length === 0
102
+ ? undefined
103
+ : withVerdict.reduce((n, s) => n + (s.unsupportedValues ?? 0), 0),
104
+ };
105
+ }
106
+ exports.summarizeAbsence = summarizeAbsence;
107
+ // ─── The declared neighbourhood ────────────────────────────────────────
108
+ function kindOf(spec, id) {
109
+ if (Object.prototype.hasOwnProperty.call(spec.nodes, id))
110
+ return 'term';
111
+ if (Object.prototype.hasOwnProperty.call(spec.sources, id))
112
+ return 'source';
113
+ return undefined;
114
+ }
115
+ /**
116
+ * Every declared id one step from the gap, in declaration order, no repeats:
117
+ * for a term — the sources holding it, the tools reading it, the terms at
118
+ * either end of a relation with it; for a source — the terms it holds and
119
+ * the tools reading through it. Tools are ids here too: a tool name is a
120
+ * declared string the answer can quote.
121
+ */
122
+ function neighboursOf(spec, gap, kind) {
123
+ const out = [];
124
+ const add = (id) => {
125
+ if (id !== gap && !out.includes(id))
126
+ out.push(id);
127
+ };
128
+ if (kind === 'term') {
129
+ for (const held of spec.nodes[gap]?.sources ?? []) {
130
+ add(held.source);
131
+ for (const tool of held.via ?? [])
132
+ add(tool);
133
+ }
134
+ for (const edge of spec.edges ?? []) {
135
+ if (edge.from === gap)
136
+ add(edge.to);
137
+ if (edge.to === gap)
138
+ add(edge.from);
139
+ }
140
+ }
141
+ else {
142
+ for (const [id, node] of Object.entries(spec.nodes)) {
143
+ for (const held of node.sources ?? []) {
144
+ if (held.source !== gap)
145
+ continue;
146
+ add(id);
147
+ for (const tool of held.via ?? [])
148
+ add(tool);
149
+ }
150
+ }
151
+ }
152
+ return out;
153
+ }
154
+ /** The strings that name one declared id: a term's or a source's id and aliases; a tool's bare name. */
155
+ function namesOf(spec, id) {
156
+ const has = (o) => Object.prototype.hasOwnProperty.call(o, id);
157
+ const declared = has(spec.nodes)
158
+ ? spec.nodes[id]
159
+ : has(spec.sources)
160
+ ? spec.sources[id]
161
+ : undefined;
162
+ return declared === undefined ? [id] : [id, ...(declared.aliases ?? [])];
163
+ }
164
+ // ─── Matching — declared strings, whole word, nothing fuzzier ─────────
165
+ function mentions(answer, names) {
166
+ return names.some((name) => patternOf(name).test(answer));
167
+ }
168
+ /**
169
+ * One declared string as a whole-word, case-insensitive pattern; an `_` in
170
+ * the id stands for a space, a hyphen or itself, so `vmkernel_log` meets
171
+ * "vmkernel log" and `esxi_host` meets "ESXi host"; a trailing `s` is
172
+ * allowed (9.109.1), so "vmkernel logs" and "change records" meet their
173
+ * ids — a plural is a form of the declared word, not another word.
174
+ * Everything else is escaped: a declared string is matched as itself.
175
+ */
176
+ function patternOf(name) {
177
+ const escaped = name.replace(/[.*+?^${}()|[\]\\]/g, '\\$&').replace(/_/g, '[ _-]');
178
+ return new RegExp(`(?<![\\w])${escaped}s?(?![\\w])`, 'i');
179
+ }
180
+ function wordsOf(answer) {
181
+ const found = [];
182
+ for (const re of MAP_WORDS) {
183
+ for (const m of answer.matchAll(re)) {
184
+ const word = m[0].toLowerCase();
185
+ if (!found.includes(word))
186
+ found.push(word);
187
+ }
188
+ }
189
+ return found;
190
+ }
191
+ //# sourceMappingURL=score.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"score.js","sourceRoot":"","sources":["../../src/ontology/score.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAiCG;;;AAsEH;;;;;;;GAOG;AACH,MAAM,SAAS,GAAsB,CAAC,gBAAgB,EAAE,aAAa,CAAC,CAAC;AAEvE;;;GAGG;AACH,SAAgB,YAAY,CAC1B,IAAkB,EAClB,IAAiB,EACjB,WAA+B,EAAE;IAEjC,MAAM,MAAM,GAAG;QACb,SAAS,EAAE,IAAI,CAAC,SAAS,CAAC,MAAM;QAChC,iBAAiB,EAAE,IAAI,CAAC,iBAAiB;QACzC,QAAQ,EAAE,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC;KAC/B,CAAC;IACF,IAAI,QAAQ,CAAC,GAAG,KAAK,SAAS,EAAE,CAAC;QAC/B,OAAO;YACL,GAAG,EAAE,SAAS;YACd,OAAO,EAAE,MAAM;YACf,QAAQ,EAAE,SAAS;YACnB,UAAU,EAAE,SAAS;YACrB,KAAK,EAAE,EAAE;YACT,UAAU,EAAE,EAAE;YACd,GAAG,MAAM;SACV,CAAC;IACJ,CAAC;IACD,MAAM,GAAG,GAAG,QAAQ,CAAC,GAAG,CAAC;IACzB,MAAM,IAAI,GAAG,MAAM,CAAC,IAAI,EAAE,GAAG,CAAC,CAAC;IAC/B,IAAI,IAAI,KAAK,SAAS,EAAE,CAAC;QACvB,MAAM,IAAI,KAAK,CACb,+BAA+B,GAAG,+CAA+C;YAC/E,IAAI,IAAI,CAAC,EAAE,sDAAsD,CACpE,CAAC;IACJ,CAAC;IACD,MAAM,KAAK,GAAG,OAAO,CAAC,IAAI,EAAE,GAAG,CAAC,CAAC;IACjC,MAAM,UAAU,GAAG,YAAY,CAAC,IAAI,EAAE,GAAG,EAAE,IAAI,CAAC,CAAC;IACjD,MAAM,KAAK,GAAG,UAAU,CAAC,MAAM,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,QAAQ,CAAC,IAAI,CAAC,MAAM,EAAE,OAAO,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC;IAClF,OAAO;QACL,GAAG;QACH,OAAO,EAAE,IAAI;QACb,QAAQ,EAAE,QAAQ,CAAC,IAAI,CAAC,MAAM,EAAE,KAAK,CAAC;QACtC,UAAU,EAAE,UAAU,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC;QAClE,KAAK;QACL,UAAU;QACV,GAAG,MAAM;KACV,CAAC;AACJ,CAAC;AAzCD,oCAyCC;AAED,yFAAyF;AACzF,SAAgB,gBAAgB,CAAC,MAA+B;IAC9D,MAAM,KAAK,GAAG,CAAC,IAA8C,EAAE,EAAE;QAC/D,MAAM,KAAK,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,SAAS,CAAC,CAAC;QAC1D,OAAO,EAAE,CAAC,EAAE,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,IAAI,CAAC,CAAC,MAAM,EAAE,CAAC,EAAE,KAAK,CAAC,MAAM,EAAE,CAAC;IAC9E,CAAC,CAAC;IACF,MAAM,WAAW,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,iBAAiB,KAAK,SAAS,CAAC,CAAC;IAC5E,OAAO;QACL,KAAK,EAAE,MAAM,CAAC,MAAM;QACpB,QAAQ,EAAE,KAAK,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC;QAClC,UAAU,EAAE,KAAK,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,UAAU,CAAC;QACtC,QAAQ,EAAE,KAAK,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC,CAAC;QAC7C,SAAS,EAAE,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,SAAS,EAAE,CAAC,CAAC;QACtD,iBAAiB,EACf,WAAW,CAAC,MAAM,KAAK,CAAC;YACtB,CAAC,CAAC,SAAS;YACX,CAAC,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,iBAAiB,IAAI,CAAC,CAAC,EAAE,CAAC,CAAC;KACtE,CAAC;AACJ,CAAC;AAjBD,4CAiBC;AAED,0EAA0E;AAE1E,SAAS,MAAM,CAAC,IAAkB,EAAE,EAAU;IAC5C,IAAI,MAAM,CAAC,SAAS,CAAC,cAAc,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,EAAE,EAAE,CAAC;QAAE,OAAO,MAAM,CAAC;IACxE,IAAI,MAAM,CAAC,SAAS,CAAC,cAAc,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,EAAE,CAAC;QAAE,OAAO,QAAQ,CAAC;IAC5E,OAAO,SAAS,CAAC;AACnB,CAAC;AAED;;;;;;GAMG;AACH,SAAS,YAAY,CAAC,IAAkB,EAAE,GAAW,EAAE,IAAuB;IAC5E,MAAM,GAAG,GAAa,EAAE,CAAC;IACzB,MAAM,GAAG,GAAG,CAAC,EAAU,EAAE,EAAE;QACzB,IAAI,EAAE,KAAK,GAAG,IAAI,CAAC,GAAG,CAAC,QAAQ,CAAC,EAAE,CAAC;YAAE,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IACpD,CAAC,CAAC;IACF,IAAI,IAAI,KAAK,MAAM,EAAE,CAAC;QACpB,KAAK,MAAM,IAAI,IAAI,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,EAAE,OAAO,IAAI,EAAE,EAAE,CAAC;YAClD,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;YACjB,KAAK,MAAM,IAAI,IAAI,IAAI,CAAC,GAAG,IAAI,EAAE;gBAAE,GAAG,CAAC,IAAI,CAAC,CAAC;QAC/C,CAAC;QACD,KAAK,MAAM,IAAI,IAAI,IAAI,CAAC,KAAK,IAAI,EAAE,EAAE,CAAC;YACpC,IAAI,IAAI,CAAC,IAAI,KAAK,GAAG;gBAAE,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;YACpC,IAAI,IAAI,CAAC,EAAE,KAAK,GAAG;gBAAE,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACtC,CAAC;IACH,CAAC;SAAM,CAAC;QACN,KAAK,MAAM,CAAC,EAAE,EAAE,IAAI,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC;YACpD,KAAK,MAAM,IAAI,IAAI,IAAI,CAAC,OAAO,IAAI,EAAE,EAAE,CAAC;gBACtC,IAAI,IAAI,CAAC,MAAM,KAAK,GAAG;oBAAE,SAAS;gBAClC,GAAG,CAAC,EAAE,CAAC,CAAC;gBACR,KAAK,MAAM,IAAI,IAAI,IAAI,CAAC,GAAG,IAAI,EAAE;oBAAE,GAAG,CAAC,IAAI,CAAC,CAAC;YAC/C,CAAC;QACH,CAAC;IACH,CAAC;IACD,OAAO,GAAG,CAAC;AACb,CAAC;AAED,wGAAwG;AACxG,SAAS,OAAO,CAAC,IAAkB,EAAE,EAAU;IAC7C,MAAM,GAAG,GAAG,CAAC,CAAS,EAAE,EAAE,CAAC,MAAM,CAAC,SAAS,CAAC,cAAc,CAAC,IAAI,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;IACvE,MAAM,QAAQ,GAAG,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC;QAC9B,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC;QAChB,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,OAAO,CAAC;YACnB,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC;YAClB,CAAC,CAAC,SAAS,CAAC;IACd,OAAO,QAAQ,KAAK,SAAS,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,EAAE,GAAG,CAAC,QAAQ,CAAC,OAAO,IAAI,EAAE,CAAC,CAAC,CAAC;AAC3E,CAAC;AAED,yEAAyE;AAEzE,SAAS,QAAQ,CAAC,MAAc,EAAE,KAAwB;IACxD,OAAO,KAAK,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC;AAC5D,CAAC;AAED;;;;;;;GAOG;AACH,SAAS,SAAS,CAAC,IAAY;IAC7B,MAAM,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC,qBAAqB,EAAE,MAAM,CAAC,CAAC,OAAO,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;IACnF,OAAO,IAAI,MAAM,CAAC,aAAa,OAAO,aAAa,EAAE,GAAG,CAAC,CAAC;AAC5D,CAAC;AAED,SAAS,OAAO,CAAC,MAAc;IAC7B,MAAM,KAAK,GAAa,EAAE,CAAC;IAC3B,KAAK,MAAM,EAAE,IAAI,SAAS,EAAE,CAAC;QAC3B,KAAK,MAAM,CAAC,IAAI,MAAM,CAAC,QAAQ,CAAC,EAAE,CAAC,EAAE,CAAC;YACpC,MAAM,IAAI,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE,CAAC;YAChC,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,IAAI,CAAC;gBAAE,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAC9C,CAAC;IACH,CAAC;IACD,OAAO,KAAK,CAAC;AACf,CAAC"}
@@ -102,9 +102,12 @@ function nodeLine(id, node) {
102
102
  ? ''
103
103
  : ` · aliases: ${node.aliases.join(', ')}`));
104
104
  }
105
- /** `<id> — <meaning>[ · coverage: <coverage>][ · configured: yes|no]` — absent `configured` says nothing. */
105
+ /** `<id> — <meaning>[ · aliases: a, b][ · coverage: <coverage>][ · configured: yes|no]` — absent `configured` says nothing. */
106
106
  function sourceLine(id, source) {
107
107
  return fold(`${id} — ${source.meaning}` +
108
+ (source.aliases === undefined || source.aliases.length === 0
109
+ ? ''
110
+ : ` · aliases: ${source.aliases.join(', ')}`) +
108
111
  (source.coverage === undefined ? '' : ` · coverage: ${source.coverage}`) +
109
112
  (source.configured === undefined ? '' : ` · configured: ${source.configured ? 'yes' : 'no'}`));
110
113
  }
@@ -1 +1 @@
1
- {"version":3,"file":"serve.js","sourceRoot":"","sources":["../../src/ontology/serve.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"serve.js","sourceRoot":"","sources":["../../src/ontology/serve.ts"],"names":[],"mappings":"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"}
@@ -38,6 +38,7 @@ export declare const ONTOLOGY_LIMITS: Readonly<{
38
38
  readonly nodes: 256;
39
39
  readonly sources: 64;
40
40
  readonly edges: 512;
41
+ /** Aliases on one node — and, since 9.109.0, on one source. */
41
42
  readonly aliasesPerNode: 16;
42
43
  readonly sourcesPerNode: 8;
43
44
  readonly viaPerSource: 16;
@@ -1 +1 @@
1
- {"version":3,"file":"define.d.ts","sourceRoot":"","sources":["../../../src/ontology/define.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA6BG;AAIH,OAAO,KAAK,EACV,QAAQ,EAKR,YAAY,EACb,MAAM,YAAY,CAAC;AAEpB,yFAAyF;AACzF,eAAO,MAAM,eAAe;IAC1B,qDAAqD;;IAErD,uFAAuF;;;;;;;;EAQ9E,CAAC;AA8JZ;;;;GAIG;AACH,wBAAgB,cAAc,CAAC,IAAI,EAAE,YAAY,GAAG,QAAQ,CA6D3D;AAED;;;;;;;;GAQG;AACH,wBAAgB,YAAY,CAAC,QAAQ,EAAE,YAAY,GAAG,MAAM,CAY3D"}
1
+ {"version":3,"file":"define.d.ts","sourceRoot":"","sources":["../../../src/ontology/define.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA6BG;AAIH,OAAO,KAAK,EACV,QAAQ,EAKR,YAAY,EACb,MAAM,YAAY,CAAC;AAEpB,yFAAyF;AACzF,eAAO,MAAM,eAAe;IAC1B,qDAAqD;;IAErD,uFAAuF;;;;;IAKvF,+DAA+D;;;;EAItD,CAAC;AAmKZ;;;;GAIG;AACH,wBAAgB,cAAc,CAAC,IAAI,EAAE,YAAY,GAAG,QAAQ,CAsE3D;AAED;;;;;;;;GAQG;AACH,wBAAgB,YAAY,CAAC,QAAQ,EAAE,YAAY,GAAG,MAAM,CAY3D"}
@@ -11,5 +11,6 @@
11
11
  export { defineOntology, ontologyHash, ONTOLOGY_LIMITS } from './define.js';
12
12
  export { ONTOLOGY_INSTRUCTION, ONTOLOGY_INSTRUCTION_ID } from './instruction.js';
13
13
  export { ontologyPiece, ONTOLOGY_PIECE_LIMITS, type OntologyPiece } from './serve.js';
14
+ export { scoreAbsence, summarizeAbsence, type AbsenceExpectation, type AbsenceScore, type AbsenceSummary, type AbsenceTurn, } from './score.js';
14
15
  export type { Ontology, OntologyAsk, OntologyEdge, OntologyJoin, OntologyNode, OntologyNodeSource, OntologyRecord, OntologySource, OntologySpec, } from './types.js';
15
16
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/ontology/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAEH,OAAO,EAAE,cAAc,EAAE,YAAY,EAAE,eAAe,EAAE,MAAM,aAAa,CAAC;AAC5E,OAAO,EAAE,oBAAoB,EAAE,uBAAuB,EAAE,MAAM,kBAAkB,CAAC;AACjF,OAAO,EAAE,aAAa,EAAE,qBAAqB,EAAE,KAAK,aAAa,EAAE,MAAM,YAAY,CAAC;AACtF,YAAY,EACV,QAAQ,EACR,WAAW,EACX,YAAY,EACZ,YAAY,EACZ,YAAY,EACZ,kBAAkB,EAClB,cAAc,EACd,cAAc,EACd,YAAY,GACb,MAAM,YAAY,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/ontology/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAEH,OAAO,EAAE,cAAc,EAAE,YAAY,EAAE,eAAe,EAAE,MAAM,aAAa,CAAC;AAC5E,OAAO,EAAE,oBAAoB,EAAE,uBAAuB,EAAE,MAAM,kBAAkB,CAAC;AACjF,OAAO,EAAE,aAAa,EAAE,qBAAqB,EAAE,KAAK,aAAa,EAAE,MAAM,YAAY,CAAC;AACtF,OAAO,EACL,YAAY,EACZ,gBAAgB,EAChB,KAAK,kBAAkB,EACvB,KAAK,YAAY,EACjB,KAAK,cAAc,EACnB,KAAK,WAAW,GACjB,MAAM,YAAY,CAAC;AACpB,YAAY,EACV,QAAQ,EACR,WAAW,EACX,YAAY,EACZ,YAAY,EACZ,YAAY,EACZ,kBAAkB,EAClB,cAAc,EACd,cAAc,EACd,YAAY,GACb,MAAM,YAAY,CAAC"}
@@ -0,0 +1,114 @@
1
+ /**
2
+ * ontology/score — did an answer name the declared gap, and where the need
3
+ * would be met? Scored off the record, by declared strings, with no judge.
4
+ *
5
+ * Pattern: pure functions over the served spec and one turn's own facts
6
+ * (the answer text, the tool names called, the library's own
7
+ * unsupported-values verdict). No model, no clock, no I/O.
8
+ * Role: Lens, for a BENCH. It is the measuring stick the design page
9
+ * promised (docs/design/2026-09-ontology.md § Measured): the first
10
+ * number for "the answer names the source" was a regex over prose;
11
+ * this is the rule that replaces it, so every wording change is
12
+ * measured the same way. Exported on the `agentfootprint/ontology`
13
+ * door because the map's consumer runs the bench on ITS host with
14
+ * ITS questions, and the rules must be the library's, not re-derived
15
+ * there.
16
+ * Emits: N/A.
17
+ *
18
+ * THE LAW OF THE SCORE
19
+ * A check matches DECLARED STRINGS ONLY — a term's or a source's id and
20
+ * aliases, a tool's name — whole-word, case-insensitive, an `_` in an
21
+ * id standing for a space or a hyphen, a plural `s` allowed. Nothing fuzzier. So an answer that
22
+ * says "UCS Manager" when the source's id is `influx_ucs` and no alias says
23
+ * "UCS Manager" scores NO, and that is the point: the declaration must
24
+ * carry the words people use, because those are the words the model
25
+ * reads too. The scorer never decides an answer is good; it counts what
26
+ * the answer names.
27
+ *
28
+ * THE EXPECTATION IS THE BENCH AUTHOR'S, DECLARED BEFORE THE RUN
29
+ * `expected.gap` names the term or source the question turns on — the
30
+ * `_findings.expect` precedent: declared before the call, judged after. A
31
+ * gap that names nothing the spec declares is refused, naming it: a bench
32
+ * whose oracle lies must fail loudly, as a map naming an unregistered tool
33
+ * does at build.
34
+ */
35
+ import type { OntologySpec } from './types.js';
36
+ /** What a bench question declares about itself, before the run. */
37
+ export interface AbsenceExpectation {
38
+ /**
39
+ * The declared gap the answer should name: a term id or a source id of
40
+ * the served map. Absent when the question expects DATA, not a gap — then
41
+ * only the counts are read and the two naming checks are `undefined`.
42
+ */
43
+ readonly gap?: string;
44
+ }
45
+ /** One turn's own facts, read off the record by the caller. */
46
+ export interface AbsenceTurn {
47
+ /** The final answer, as returned. */
48
+ readonly answer: string;
49
+ /** The tool names the model called this turn, in order. */
50
+ readonly toolCalls: readonly string[];
51
+ /**
52
+ * The library's own verdict on values the answer stated that no tool
53
+ * result carried (`AgentState.unsupportedValues.values.length`), when the
54
+ * evidence gate was armed and the record carries it. Absent otherwise.
55
+ */
56
+ readonly unsupportedValues?: number;
57
+ }
58
+ /** The score of one turn — every field a count, a yes/no, or the strings that matched. */
59
+ export interface AbsenceScore {
60
+ /** The expected gap, as declared. */
61
+ readonly gap: string | undefined;
62
+ /** What the spec says the gap is. `'none'` when no gap was expected. */
63
+ readonly gapKind: 'term' | 'source' | 'none';
64
+ /** The answer contains the gap's id or one of its declared aliases. `undefined` when no gap was expected. */
65
+ readonly namedGap: boolean | undefined;
66
+ /**
67
+ * The answer contains a declared neighbour of the gap — a source that holds
68
+ * the term, a tool that reads it, a term one relation away; for a source,
69
+ * a term it holds or a tool that reads through it. `undefined` when no gap
70
+ * was expected or the spec declares no neighbour for it.
71
+ */
72
+ readonly namedWhere: boolean | undefined;
73
+ /** The neighbours the answer named, by declared id — the evidence for `namedWhere`. */
74
+ readonly where: readonly string[];
75
+ /** The neighbours the spec declares for the gap — what `namedWhere` was checked against. */
76
+ readonly neighbours: readonly string[];
77
+ /** Tool calls this turn. */
78
+ readonly toolCalls: number;
79
+ /** The library's unsupported-values count, as handed in; `undefined` when the record carried none. */
80
+ readonly unsupportedValues: number | undefined;
81
+ /**
82
+ * The words of the map the answer used on the person — `ontology` and its
83
+ * forms, `map` and `maps`: the header's own vocabulary the ask says to keep
84
+ * from the person. A wording metric, reported as the words found.
85
+ */
86
+ readonly mapWords: readonly string[];
87
+ }
88
+ /** The tally over many turns — `k` of `n` per check, counts summed. */
89
+ export interface AbsenceSummary {
90
+ readonly turns: number;
91
+ readonly namedGap: {
92
+ readonly k: number;
93
+ readonly n: number;
94
+ };
95
+ readonly namedWhere: {
96
+ readonly k: number;
97
+ readonly n: number;
98
+ };
99
+ readonly citedMap: {
100
+ readonly k: number;
101
+ readonly n: number;
102
+ };
103
+ readonly toolCalls: number;
104
+ /** Summed over the turns whose record carried a verdict; `undefined` when none did. */
105
+ readonly unsupportedValues: number | undefined;
106
+ }
107
+ /**
108
+ * Score one turn against the served map and the bench's expectation.
109
+ * Throws when `expected.gap` names nothing the spec declares.
110
+ */
111
+ export declare function scoreAbsence(spec: OntologySpec, turn: AbsenceTurn, expected?: AbsenceExpectation): AbsenceScore;
112
+ /** The tally: `k` of `n` per yes/no check over the turns that had one; counts summed. */
113
+ export declare function summarizeAbsence(scores: readonly AbsenceScore[]): AbsenceSummary;
114
+ //# sourceMappingURL=score.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"score.d.ts","sourceRoot":"","sources":["../../../src/ontology/score.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAiCG;AAEH,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AAE/C,mEAAmE;AACnE,MAAM,WAAW,kBAAkB;IACjC;;;;OAIG;IACH,QAAQ,CAAC,GAAG,CAAC,EAAE,MAAM,CAAC;CACvB;AAED,+DAA+D;AAC/D,MAAM,WAAW,WAAW;IAC1B,qCAAqC;IACrC,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,2DAA2D;IAC3D,QAAQ,CAAC,SAAS,EAAE,SAAS,MAAM,EAAE,CAAC;IACtC;;;;OAIG;IACH,QAAQ,CAAC,iBAAiB,CAAC,EAAE,MAAM,CAAC;CACrC;AAED,0FAA0F;AAC1F,MAAM,WAAW,YAAY;IAC3B,qCAAqC;IACrC,QAAQ,CAAC,GAAG,EAAE,MAAM,GAAG,SAAS,CAAC;IACjC,wEAAwE;IACxE,QAAQ,CAAC,OAAO,EAAE,MAAM,GAAG,QAAQ,GAAG,MAAM,CAAC;IAC7C,6GAA6G;IAC7G,QAAQ,CAAC,QAAQ,EAAE,OAAO,GAAG,SAAS,CAAC;IACvC;;;;;OAKG;IACH,QAAQ,CAAC,UAAU,EAAE,OAAO,GAAG,SAAS,CAAC;IACzC,uFAAuF;IACvF,QAAQ,CAAC,KAAK,EAAE,SAAS,MAAM,EAAE,CAAC;IAClC,4FAA4F;IAC5F,QAAQ,CAAC,UAAU,EAAE,SAAS,MAAM,EAAE,CAAC;IACvC,4BAA4B;IAC5B,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;IAC3B,sGAAsG;IACtG,QAAQ,CAAC,iBAAiB,EAAE,MAAM,GAAG,SAAS,CAAC;IAC/C;;;;OAIG;IACH,QAAQ,CAAC,QAAQ,EAAE,SAAS,MAAM,EAAE,CAAC;CACtC;AAED,uEAAuE;AACvE,MAAM,WAAW,cAAc;IAC7B,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,QAAQ,EAAE;QAAE,QAAQ,CAAC,CAAC,EAAE,MAAM,CAAC;QAAC,QAAQ,CAAC,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC;IAC9D,QAAQ,CAAC,UAAU,EAAE;QAAE,QAAQ,CAAC,CAAC,EAAE,MAAM,CAAC;QAAC,QAAQ,CAAC,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC;IAChE,QAAQ,CAAC,QAAQ,EAAE;QAAE,QAAQ,CAAC,CAAC,EAAE,MAAM,CAAC;QAAC,QAAQ,CAAC,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC;IAC9D,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;IAC3B,uFAAuF;IACvF,QAAQ,CAAC,iBAAiB,EAAE,MAAM,GAAG,SAAS,CAAC;CAChD;AAYD;;;GAGG;AACH,wBAAgB,YAAY,CAC1B,IAAI,EAAE,YAAY,EAClB,IAAI,EAAE,WAAW,EACjB,QAAQ,GAAE,kBAAuB,GAChC,YAAY,CAqCd;AAED,yFAAyF;AACzF,wBAAgB,gBAAgB,CAAC,MAAM,EAAE,SAAS,YAAY,EAAE,GAAG,cAAc,CAiBhF"}
@@ -36,11 +36,13 @@ export interface OntologyNode {
36
36
  readonly aliases?: readonly string[];
37
37
  readonly sources?: readonly OntologyNodeSource[];
38
38
  }
39
- /** A place data is held: its meaning, the author's coverage sentence, and whether it is configured — ABSENT means unknown, never assumed. */
39
+ /** A place data is held: its meaning, the author's coverage sentence, whether it is configured — ABSENT means unknown, never assumed — and (9.109.0) the other names people use for it. */
40
40
  export interface OntologySource {
41
41
  readonly meaning: string;
42
42
  readonly coverage?: string;
43
43
  readonly configured?: boolean;
44
+ /** Other names for the source (`'Cohesity'` for `influx_cohesity`): served beside its meaning, and what a bench's scorer matches an answer against — the declaration must carry the words people use. */
45
+ readonly aliases?: readonly string[];
44
46
  }
45
47
  /** How two nodes RELATE, in the author's own word (`'backed-by'`, `'logs-into'`, …). */
46
48
  export interface OntologyEdge {
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/ontology/types.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;GAiBG;AAEH;;;;GAIG;AACH,MAAM,WAAW,kBAAkB;IACjC,uCAAuC;IACvC,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,kHAAkH;IAClH,QAAQ,CAAC,GAAG,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;IACjC,yGAAyG;IACzG,QAAQ,CAAC,QAAQ,CAAC,EAAE,MAAM,CAAC;CAC5B;AAED,6HAA6H;AAC7H,MAAM,WAAW,YAAY;IAC3B,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,IAAI,CAAC,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,OAAO,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;IACrC,QAAQ,CAAC,OAAO,CAAC,EAAE,SAAS,kBAAkB,EAAE,CAAC;CAClD;AAED,6IAA6I;AAC7I,MAAM,WAAW,cAAc;IAC7B,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAC3B,QAAQ,CAAC,UAAU,CAAC,EAAE,OAAO,CAAC;CAC/B;AAED,wFAAwF;AACxF,MAAM,WAAW,YAAY;IAC3B,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAC;IACpB,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAC1B,QAAQ,CAAC,OAAO,CAAC,EAAE,MAAM,CAAC;CAC3B;AAED,gFAAgF;AAChF,MAAM,WAAW,YAAY;IAC3B,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAC;IACpB,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,KAAK,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,YAAY,CAAC,CAAC,CAAC;IACvD,QAAQ,CAAC,OAAO,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,cAAc,CAAC,CAAC,CAAC;IAC3D,QAAQ,CAAC,KAAK,CAAC,EAAE,SAAS,YAAY,EAAE,CAAC;CAC1C;AAED;;;;;GAKG;AACH,MAAM,WAAW,QAAS,SAAQ,YAAY;IAC5C,QAAQ,CAAC,KAAK,EAAE,SAAS,YAAY,EAAE,CAAC;IACxC,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;CACvB;AAED;;;;;GAKG;AACH;;;;;;;;;;GAUG;AACH,MAAM,MAAM,WAAW,GAAG,MAAM,GAAG,aAAa,CAAC;AAEjD,MAAM,WAAW,cAAc;IAC7B,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAC;IACpB,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,IAAI,EAAE,YAAY,GAAG;QAAE,QAAQ,CAAC,KAAK,EAAE,SAAS,YAAY,EAAE,CAAA;KAAE,CAAC;IAC1E;;;;;;;;;;OAUG;IACH,QAAQ,CAAC,KAAK,CAAC,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,SAAS,MAAM,EAAE,CAAC,CAAC,CAAC;CAC9D;AAED;;;;;GAKG;AACH,MAAM,WAAW,YAAY;IAC3B,QAAQ,CAAC,KAAK,CAAC,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,SAAS,MAAM,EAAE,CAAC,CAAC,CAAC;IAC7D,QAAQ,CAAC,cAAc,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;CAC7C"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/ontology/types.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;GAiBG;AAEH;;;;GAIG;AACH,MAAM,WAAW,kBAAkB;IACjC,uCAAuC;IACvC,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,kHAAkH;IAClH,QAAQ,CAAC,GAAG,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;IACjC,yGAAyG;IACzG,QAAQ,CAAC,QAAQ,CAAC,EAAE,MAAM,CAAC;CAC5B;AAED,6HAA6H;AAC7H,MAAM,WAAW,YAAY;IAC3B,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,IAAI,CAAC,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,OAAO,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;IACrC,QAAQ,CAAC,OAAO,CAAC,EAAE,SAAS,kBAAkB,EAAE,CAAC;CAClD;AAED,2LAA2L;AAC3L,MAAM,WAAW,cAAc;IAC7B,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAC3B,QAAQ,CAAC,UAAU,CAAC,EAAE,OAAO,CAAC;IAC9B,yMAAyM;IACzM,QAAQ,CAAC,OAAO,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;CACtC;AAED,wFAAwF;AACxF,MAAM,WAAW,YAAY;IAC3B,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAC;IACpB,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAC1B,QAAQ,CAAC,OAAO,CAAC,EAAE,MAAM,CAAC;CAC3B;AAED,gFAAgF;AAChF,MAAM,WAAW,YAAY;IAC3B,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAC;IACpB,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,KAAK,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,YAAY,CAAC,CAAC,CAAC;IACvD,QAAQ,CAAC,OAAO,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,cAAc,CAAC,CAAC,CAAC;IAC3D,QAAQ,CAAC,KAAK,CAAC,EAAE,SAAS,YAAY,EAAE,CAAC;CAC1C;AAED;;;;;GAKG;AACH,MAAM,WAAW,QAAS,SAAQ,YAAY;IAC5C,QAAQ,CAAC,KAAK,EAAE,SAAS,YAAY,EAAE,CAAC;IACxC,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;CACvB;AAED;;;;;GAKG;AACH;;;;;;;;;;GAUG;AACH,MAAM,MAAM,WAAW,GAAG,MAAM,GAAG,aAAa,CAAC;AAEjD,MAAM,WAAW,cAAc;IAC7B,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAC;IACpB,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,IAAI,EAAE,YAAY,GAAG;QAAE,QAAQ,CAAC,KAAK,EAAE,SAAS,YAAY,EAAE,CAAA;KAAE,CAAC;IAC1E;;;;;;;;;;OAUG;IACH,QAAQ,CAAC,KAAK,CAAC,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,SAAS,MAAM,EAAE,CAAC,CAAC,CAAC;CAC9D;AAED;;;;;GAKG;AACH,MAAM,WAAW,YAAY;IAC3B,QAAQ,CAAC,KAAK,CAAC,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,SAAS,MAAM,EAAE,CAAC,CAAC,CAAC;IAC7D,QAAQ,CAAC,cAAc,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;CAC7C"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "agentfootprint",
3
- "version": "9.108.0",
3
+ "version": "9.109.1",
4
4
  "description": "The explainable agent framework — backtrack a wrong answer to the exact context that caused it (evidence, not guesses). Built on footprintjs.",
5
5
  "license": "MIT",
6
6
  "type": "commonjs",