@affiant/core 0.1.0-alpha.0 → 0.1.0-alpha.2

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.
@@ -0,0 +1,192 @@
1
+ /**
2
+ * Where a value's text sits in the turn a person typed, if it sits there at all
3
+ * (PV-3).
4
+ *
5
+ * PV-3 grades an inferred field `Conversation` when the value is literally present in
6
+ * the utterance. That is a property of two strings, so the implementation establishes
7
+ * it by looking, and an inference port's own `presence` claim is a hint that is
8
+ * verified the same way or not honoured at all.
9
+ *
10
+ * **The rule, stated once so a second implementation can implement the same
11
+ * sentence.** The *value text* is the text the span digest is taken over: a string is
12
+ * itself, a number is SR-1's canonical rendering of it, a boolean is `true` or
13
+ * `false`. A value a field cannot carry — `null`, an object, an array, the empty
14
+ * string, or a number the runtime parsed as infinity or NaN — is *nothing reported*:
15
+ * it has no value text, and the gate merges no such field at all. A *hit* is an
16
+ * occurrence of the value text in the utterance under the comparison below, whose
17
+ * neighbouring code points are absent or are none of a letter (`L*`), a mark (`M*`), a
18
+ * decimal digit (`Nd`) or connector punctuation (`Pc`). The first hit wins, unless the
19
+ * port supplied a span that is itself a hit — the utterance at that span says what the
20
+ * port said it says *and* its neighbours pass the same test — in which case that span
21
+ * is the hit. A whitespace-only value text never hits; an empty utterance is an
22
+ * utterance, and nothing hits in it.
23
+ *
24
+ * **The comparison folds ASCII case and nothing else.** Two code points match when
25
+ * they are equal, or when both are ASCII letters (`A`–`Z` against `a`–`z`) that differ
26
+ * only in case. Every other code point compares exactly: no culture, no normalisation,
27
+ * nothing ignorable, and no case mapping read from the runtime's Unicode data. The
28
+ * fold stops at ASCII because no runtime's own case mapping is a single function to
29
+ * state a rule in — .NET 10, Node 24 and `UnicodeData.txt` disagree over U+0131 and
30
+ * over the Greek code points with ypogegrammeni, and two runtimes ship two Unicode
31
+ * versions — so a fold read from a runtime would have the two implementations
32
+ * implement two different functions. The cost is on the record: a case variant outside
33
+ * ASCII does not hit (a port's `критический` does not find a typed `Критический`, and
34
+ * is `Inferred`), while an exact echo in any script does.
35
+ *
36
+ * Offsets and lengths are in UTF-16 code units, which is what the `utterance-span`
37
+ * binding records. A *neighbour*, though, is a whole code point: a surrogate pair is
38
+ * read as the one character it is, so a value abutting a letter outside the Basic
39
+ * Multilingual Plane is no more a hit than one abutting an ASCII letter, and no hit
40
+ * ever begins or ends inside a pair. A combining mark blocks a hit for the same reason
41
+ * as a letter — the grapheme the utterance draws there is not the word the value
42
+ * spells (`Cafe` inside a decomposed `Café`) — and `_` blocks one because it joins an
43
+ * identifier (`WZ_BRN`). The four categories are read from this runtime's own Unicode
44
+ * database, and a code point it leaves unassigned is a boundary.
45
+ *
46
+ * `Sakwala/affiant`'s `Affiant.Core.Services.UtterancePresence` is the same sentence
47
+ * in C#, and the two are held equivalent by the protocol's fixtures.
48
+ *
49
+ * @packageDocumentation
50
+ */
51
+ import { canonicalNumber } from "../model/canonical.js";
52
+ /**
53
+ * A code point that joins what stands beside it into one word: a letter (`L*`), a mark
54
+ * (`M*`), a decimal digit (`Nd`) or connector punctuation (`Pc`). PV-3's four
55
+ * categories, read the same way in both implementations.
56
+ */
57
+ const JOINS_A_TOKEN = /[\p{L}\p{M}\p{Nd}\p{Pc}]/u;
58
+ /**
59
+ * Nothing but whitespace, over the same set `char.IsWhiteSpace` reads in .NET: the
60
+ * three separator categories (`Zs`, and the line and paragraph separators U+2028 and
61
+ * U+2029) plus six control characters. Written out rather than left to `\s` so that
62
+ * the sibling implementation and this one agree on which value texts never hit.
63
+ */
64
+ const WHITESPACE_ONLY = /^[\t\n\v\f\r\u0085\u2028\u2029\p{Zs}]*$/u;
65
+ /**
66
+ * The text a value is looked for as — a string is itself, a number is SR-1's canonical
67
+ * rendering of it, a boolean is `true` or `false` — or `null` when the port reported
68
+ * **nothing** for the field.
69
+ *
70
+ * `null`, an object, an array and the empty string are not values a field can carry,
71
+ * and a number the runtime parsed as infinity or NaN has no canonical rendering (SR-1
72
+ * refuses it), so for each of them the port reported nothing: the gate merges no such
73
+ * field, mints no tag, and the field stays whatever it already was — `Empty` under
74
+ * AF-1 where nothing else set it. A whitespace-only string **is** a value: it is filed
75
+ * as the port reported it, and never hits.
76
+ */
77
+ export function utteranceTextOf(value) {
78
+ if (typeof value === "string")
79
+ return value.length === 0 ? null : value;
80
+ if (typeof value === "boolean")
81
+ return value ? "true" : "false";
82
+ if (typeof value === "number")
83
+ return Number.isFinite(value) ? canonicalNumber(value) : null;
84
+ return null;
85
+ }
86
+ /**
87
+ * `text` with every ASCII lower-case letter written as its upper-case one, and every
88
+ * other code point left exactly as it is.
89
+ *
90
+ * The fold is a function of the string alone — no runtime's case table is consulted —
91
+ * and it maps one code unit to one code unit, so an offset into the fold is an offset
92
+ * into the utterance.
93
+ */
94
+ function fold(text) {
95
+ let folded = "";
96
+ for (let index = 0; index < text.length; index += 1) {
97
+ const unit = text.charCodeAt(index);
98
+ folded +=
99
+ unit >= 0x61 /* a */ && unit <= 0x7a /* z */
100
+ ? String.fromCharCode(unit - 32)
101
+ : text.charAt(index);
102
+ }
103
+ return folded;
104
+ }
105
+ /** Whether the code point beginning at `index` joins what stands beside it. */
106
+ function joinsAt(text, index) {
107
+ const codePoint = text.codePointAt(index);
108
+ if (codePoint === undefined)
109
+ return false;
110
+ return JOINS_A_TOKEN.test(String.fromCodePoint(codePoint));
111
+ }
112
+ /**
113
+ * Whether the occurrence at `[at, end)` is a hit: it splits no surrogate pair, and a
114
+ * boundary stands on each side of it.
115
+ *
116
+ * A hit never begins or ends **inside** a pair. An occurrence whose first code unit is
117
+ * the trailing half of one, or whose last is the leading half of one, names half a
118
+ * character: the span's digest would be taken over bytes the utterance does not
119
+ * contain, which is the opposite of what PV-2 asks a binding to point at.
120
+ */
121
+ function isHit(utterance, at, end) {
122
+ return (!splitsASurrogatePair(utterance, at, end) &&
123
+ isBoundaryBefore(utterance, at) &&
124
+ (end >= utterance.length || !joinsAt(utterance, end)));
125
+ }
126
+ /** Whether `[at, end)` begins or ends part-way through a surrogate pair. */
127
+ function splitsASurrogatePair(utterance, at, end) {
128
+ return isLowSurrogatePairedBefore(utterance, at) || isLowSurrogatePairedBefore(utterance, end);
129
+ }
130
+ /** Whether the code unit at `index` is a low surrogate whose high half sits before it. */
131
+ function isLowSurrogatePairedBefore(utterance, index) {
132
+ if (index <= 0 || index >= utterance.length)
133
+ return false;
134
+ const unit = utterance.charCodeAt(index);
135
+ const before = utterance.charCodeAt(index - 1);
136
+ return unit >= 0xdc00 && unit <= 0xdfff && before >= 0xd800 && before <= 0xdbff;
137
+ }
138
+ /** Whether nothing, or a code point that does not join, sits immediately before `at`. */
139
+ function isBoundaryBefore(utterance, at) {
140
+ if (at <= 0)
141
+ return true;
142
+ // A code point, not a code unit: step back onto the high surrogate so the pair is
143
+ // read as the single character it is.
144
+ let index = at - 1;
145
+ const unit = utterance.charCodeAt(index);
146
+ if (unit >= 0xdc00 && unit <= 0xdfff && index > 0) {
147
+ const before = utterance.charCodeAt(index - 1);
148
+ if (before >= 0xd800 && before <= 0xdbff)
149
+ index -= 1;
150
+ }
151
+ return !joinsAt(utterance, index);
152
+ }
153
+ /**
154
+ * The span of `utterance` the value was read from, or `null` when the value is not
155
+ * literally present.
156
+ *
157
+ * @param utterance The current turn's user text, unmodified. Earlier turns are not
158
+ * searched: the `utterance-span` binding has no message reference, so a hit in
159
+ * an earlier turn could not be bound.
160
+ * @param valueText The value text, from {@link utteranceTextOf}.
161
+ * @param hint The span the port reported, or `null`. It is used only when it is itself
162
+ * a hit; a span that is not — its text is not the value, or it sits inside a
163
+ * longer token — is discarded, and the search then runs from the start as if
164
+ * the port had named none.
165
+ */
166
+ export function locateInUtterance(utterance, valueText, hint) {
167
+ if (WHITESPACE_ONLY.test(valueText))
168
+ return null;
169
+ const foldedUtterance = fold(utterance);
170
+ const foldedValue = fold(valueText);
171
+ if (hint !== null && Number.isInteger(hint.start) && Number.isInteger(hint.end)) {
172
+ const length = hint.end - hint.start;
173
+ if (hint.start >= 0 &&
174
+ length >= 0 &&
175
+ hint.start <= utterance.length - length &&
176
+ foldedUtterance.slice(hint.start, hint.end) === foldedValue &&
177
+ isHit(utterance, hint.start, hint.end)) {
178
+ return { offset: hint.start, length };
179
+ }
180
+ }
181
+ for (let from = 0; from <= foldedUtterance.length - foldedValue.length;) {
182
+ const at = foldedUtterance.indexOf(foldedValue, from);
183
+ if (at < 0)
184
+ return null;
185
+ if (isHit(utterance, at, at + foldedValue.length)) {
186
+ return { offset: at, length: valueText.length };
187
+ }
188
+ from = at + 1;
189
+ }
190
+ return null;
191
+ }
192
+ //# sourceMappingURL=presence.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"presence.js","sourceRoot":"","sources":["../../src/gate/presence.ts"],"names":[],"mappings":"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"}
package/dist/index.d.ts CHANGED
@@ -18,7 +18,7 @@
18
18
  * supplies (see `ports.ts`), which is what lets one gate sit in front of any model,
19
19
  * any database and any approval surface.
20
20
  *
21
- * **What is here at `0.1.0-alpha.0`:** the turn context (GT-2), the port
21
+ * **What is here at `0.1.0-alpha.2`:** the turn context (GT-2), the port
22
22
  * interfaces, the error-code registry (CV-1), the telemetry-key registry (TL-1) and
23
23
  * the Affidavit model — the provenance ladder with its bindings and merge rule
24
24
  * (PV-1..PV-3, PV-5), the Affidavit and its three confidence numbers (AF-1..AF-3),
@@ -41,18 +41,21 @@
41
41
  * pointing at nothing (PV-4), and a host risk score above the policy's threshold (GT-5).
42
42
  *
43
43
  * The fixtures for both v0.1 sequences and the runner that executes them are behind
44
- * `@affiant/core/testing`, which a host can point at its own ports.
44
+ * `@affiant/core/testing`, which a host can point at its own ports — and beside them the
45
+ * parametrised store contract every `DocketStore` and `SessionStore` implementation is
46
+ * measured by, the same assertions the in-memory reference passes.
45
47
  *
46
- * **Not on npm.** The version string exists so the conformance driver can pin it.
47
- * Publishing waits on two things a public parity report naming what each
48
- * implementation does not yet pass, and a green, merge-blocking TypeScript conformance
49
- * driver and a `prepack` guard enforces the wait rather than documenting it. See the
50
- * package README.
48
+ * **On npm at `0.1.0-alpha.1`**, under the `alpha` dist-tag and with a provenance
49
+ * attestation, since 2026-09-06; `0.1.0-alpha.2` is unpublished and goes with the next
50
+ * dispatch. The version above is what a conformance driver
51
+ * pins. Publishing is a separate, deliberate step a workflow a maintainer dispatches
52
+ * by hand, which defaults to a dry run, and a `prepack` guard that refuses to pack at
53
+ * all until an override is set. See the package README.
51
54
  *
52
55
  * @packageDocumentation
53
56
  */
54
- /** The version of this package. Not published to npm at this version. */
55
- export declare const CORE_VERSION = "0.1.0-alpha.0";
57
+ /** The version of this package. `0.1.0-alpha.1` is the version of it that is on npm. */
58
+ export declare const CORE_VERSION = "0.1.0-alpha.2";
56
59
  /**
57
60
  * The protocol tag the wire types are pinned to, re-exported from
58
61
  * `@affiant/contract` so a host that only depends on the gate can still assert
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAoDG;AAEH,yEAAyE;AACzE,eAAO,MAAM,YAAY,kBAAkB,CAAC;AAE5C;;;;GAIG;AACH,OAAO,EAAE,gBAAgB,EAAE,MAAM,mBAAmB,CAAC;AAIrD,YAAY,EAAE,eAAe,EAAE,SAAS,EAAE,cAAc,EAAE,IAAI,EAAE,WAAW,EAAE,MAAM,cAAc,CAAC;AAIlG,OAAO,EAAE,YAAY,EAAE,WAAW,EAAE,SAAS,EAAE,cAAc,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAChG,YAAY,EAAE,mBAAmB,EAAE,MAAM,aAAa,CAAC;AAIvD,OAAO,EACL,cAAc,EACd,aAAa,EACb,cAAc,EACd,0BAA0B,GAC3B,MAAM,gBAAgB,CAAC;AACxB,YAAY,EACV,mBAAmB,EACnB,cAAc,EACd,YAAY,EACZ,iBAAiB,EACjB,aAAa,GACd,MAAM,gBAAgB,CAAC;AAOxB,OAAO,EACL,qBAAqB,EACrB,cAAc,EACd,iBAAiB,EACjB,QAAQ,EACR,WAAW,EACX,OAAO,EACP,MAAM,EACN,WAAW,EACX,cAAc,GACf,MAAM,sBAAsB,CAAC;AAC9B,YAAY,EACV,SAAS,EACT,cAAc,EACd,mBAAmB,EACnB,kBAAkB,EAClB,aAAa,EACb,iBAAiB,EACjB,aAAa,EACb,SAAS,EACT,KAAK,EACL,SAAS,GACV,MAAM,sBAAsB,CAAC;AAE9B,OAAO,EACL,YAAY,EACZ,eAAe,EACf,YAAY,EACZ,iBAAiB,GAClB,MAAM,uBAAuB,CAAC;AAC/B,YAAY,EACV,SAAS,EACT,YAAY,EACZ,iBAAiB,EACjB,WAAW,GACZ,MAAM,uBAAuB,CAAC;AAE/B,OAAO,EACL,aAAa,EACb,OAAO,EACP,eAAe,EACf,QAAQ,EACR,OAAO,EACP,YAAY,EACZ,KAAK,EACL,gBAAgB,EAChB,aAAa,EACb,YAAY,EACZ,OAAO,EACP,iBAAiB,EACjB,eAAe,EACf,SAAS,EACT,MAAM,GACP,MAAM,uBAAuB,CAAC;AAC/B,YAAY,EACV,OAAO,EACP,WAAW,EACX,sBAAsB,EACtB,cAAc,EACd,WAAW,EACX,YAAY,EACZ,eAAe,EACf,oBAAoB,EACpB,cAAc,EACd,eAAe,EACf,gBAAgB,EAChB,aAAa,EACb,QAAQ,EACR,cAAc,EACd,gBAAgB,GACjB,MAAM,uBAAuB,CAAC;AAO/B,OAAO,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AAC1C,YAAY,EACV,iBAAiB,EACjB,KAAK,EACL,gBAAgB,EAChB,WAAW,EACX,gBAAgB,EAChB,aAAa,EACb,gBAAgB,EAChB,iBAAiB,EACjB,kBAAkB,EAClB,SAAS,EACT,cAAc,EACd,UAAU,EACV,eAAe,EACf,gBAAgB,EAChB,aAAa,GACd,MAAM,YAAY,CAAC;AAIpB,OAAO,EACL,aAAa,EACb,eAAe,EACf,kBAAkB,EAClB,UAAU,EACV,QAAQ,EACR,UAAU,EACV,iBAAiB,GAClB,MAAM,mBAAmB,CAAC;AAC3B,YAAY,EACV,WAAW,EACX,gBAAgB,EAChB,QAAQ,EACR,WAAW,EACX,aAAa,EACb,cAAc,EACd,WAAW,EACX,YAAY,EACZ,gBAAgB,EAChB,OAAO,EACP,YAAY,EACZ,mBAAmB,EACnB,eAAe,GAChB,MAAM,mBAAmB,CAAC;AAE3B,OAAO,EACL,kBAAkB,EAClB,SAAS,EACT,KAAK,EACL,WAAW,EACX,cAAc,GACf,MAAM,oBAAoB,CAAC;AAC5B,YAAY,EAAE,SAAS,EAAE,MAAM,oBAAoB,CAAC;AAEpD,YAAY,EACV,WAAW,EACX,IAAI,EACJ,UAAU,EACV,YAAY,EACZ,wBAAwB,EACxB,qBAAqB,EACrB,wBAAwB,EACxB,eAAe,EACf,KAAK,EACL,YAAY,EACZ,eAAe,EACf,gBAAgB,GACjB,MAAM,mBAAmB,CAAC;AAQ3B,OAAO,EACL,2BAA2B,EAC3B,aAAa,EACb,kBAAkB,EAClB,YAAY,EACZ,iBAAiB,EACjB,aAAa,EACb,eAAe,EACf,oBAAoB,EACpB,SAAS,EACT,gBAAgB,GACjB,MAAM,sBAAsB,CAAC;AAC9B,YAAY,EAAE,cAAc,EAAE,cAAc,EAAE,mBAAmB,EAAE,MAAM,sBAAsB,CAAC;AAEhG,OAAO,EACL,WAAW,EACX,oBAAoB,EACpB,sBAAsB,EACtB,YAAY,EACZ,UAAU,GACX,MAAM,kBAAkB,CAAC;AAY1B,OAAO,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAC;AAC5C,YAAY,EAAE,IAAI,EAAE,WAAW,EAAE,aAAa,EAAE,MAAM,gBAAgB,CAAC;AASvE,OAAO,EAAE,UAAU,EAAE,MAAM,EAAE,YAAY,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AAC9E,YAAY,EACV,UAAU,EACV,QAAQ,EACR,eAAe,EACf,iBAAiB,EACjB,gBAAgB,GACjB,MAAM,kBAAkB,CAAC;AAK1B,OAAO,EAAE,oBAAoB,EAAE,gBAAgB,EAAE,oBAAoB,EAAE,MAAM,kBAAkB,CAAC;AAChG,YAAY,EACV,cAAc,EACd,eAAe,EACf,aAAa,EACb,0BAA0B,EAC1B,YAAY,EACZ,OAAO,GACR,MAAM,kBAAkB,CAAC;AAE1B,OAAO,EACL,cAAc,EACd,qBAAqB,EACrB,sBAAsB,EACtB,gBAAgB,EAChB,mBAAmB,EACnB,oBAAoB,GACrB,MAAM,oBAAoB,CAAC;AAC5B,YAAY,EACV,kBAAkB,EAClB,gBAAgB,EAChB,cAAc,EACd,iBAAiB,EACjB,oBAAoB,GACrB,MAAM,oBAAoB,CAAC;AAE5B,OAAO,EAAE,aAAa,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AAChE,YAAY,EACV,mBAAmB,EACnB,UAAU,EACV,YAAY,EACZ,gBAAgB,EAChB,aAAa,GACd,MAAM,oBAAoB,CAAC;AAE5B,OAAO,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AAC1C,YAAY,EAAE,SAAS,EAAE,eAAe,EAAE,MAAM,gBAAgB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAuDG;AAEH,wFAAwF;AACxF,eAAO,MAAM,YAAY,kBAAkB,CAAC;AAE5C;;;;GAIG;AACH,OAAO,EAAE,gBAAgB,EAAE,MAAM,mBAAmB,CAAC;AAIrD,YAAY,EAAE,eAAe,EAAE,SAAS,EAAE,cAAc,EAAE,IAAI,EAAE,WAAW,EAAE,MAAM,cAAc,CAAC;AAIlG,OAAO,EAAE,YAAY,EAAE,WAAW,EAAE,SAAS,EAAE,cAAc,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAChG,YAAY,EAAE,mBAAmB,EAAE,MAAM,aAAa,CAAC;AAIvD,OAAO,EACL,cAAc,EACd,aAAa,EACb,cAAc,EACd,0BAA0B,GAC3B,MAAM,gBAAgB,CAAC;AACxB,YAAY,EACV,mBAAmB,EACnB,cAAc,EACd,YAAY,EACZ,iBAAiB,EACjB,aAAa,GACd,MAAM,gBAAgB,CAAC;AAOxB,OAAO,EACL,qBAAqB,EACrB,cAAc,EACd,iBAAiB,EACjB,QAAQ,EACR,WAAW,EACX,OAAO,EACP,MAAM,EACN,WAAW,EACX,cAAc,GACf,MAAM,sBAAsB,CAAC;AAC9B,YAAY,EACV,SAAS,EACT,cAAc,EACd,mBAAmB,EACnB,kBAAkB,EAClB,aAAa,EACb,iBAAiB,EACjB,aAAa,EACb,SAAS,EACT,KAAK,EACL,SAAS,GACV,MAAM,sBAAsB,CAAC;AAE9B,OAAO,EACL,YAAY,EACZ,eAAe,EACf,YAAY,EACZ,iBAAiB,GAClB,MAAM,uBAAuB,CAAC;AAC/B,YAAY,EACV,SAAS,EACT,YAAY,EACZ,iBAAiB,EACjB,WAAW,GACZ,MAAM,uBAAuB,CAAC;AAE/B,OAAO,EACL,aAAa,EACb,OAAO,EACP,eAAe,EACf,QAAQ,EACR,OAAO,EACP,YAAY,EACZ,KAAK,EACL,gBAAgB,EAChB,aAAa,EACb,YAAY,EACZ,OAAO,EACP,iBAAiB,EACjB,eAAe,EACf,SAAS,EACT,MAAM,GACP,MAAM,uBAAuB,CAAC;AAC/B,YAAY,EACV,OAAO,EACP,WAAW,EACX,sBAAsB,EACtB,cAAc,EACd,WAAW,EACX,YAAY,EACZ,eAAe,EACf,oBAAoB,EACpB,cAAc,EACd,eAAe,EACf,gBAAgB,EAChB,aAAa,EACb,QAAQ,EACR,cAAc,EACd,gBAAgB,GACjB,MAAM,uBAAuB,CAAC;AAO/B,OAAO,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AAC1C,YAAY,EACV,iBAAiB,EACjB,KAAK,EACL,gBAAgB,EAChB,WAAW,EACX,gBAAgB,EAChB,aAAa,EACb,gBAAgB,EAChB,iBAAiB,EACjB,kBAAkB,EAClB,SAAS,EACT,cAAc,EACd,UAAU,EACV,eAAe,EACf,gBAAgB,EAChB,aAAa,GACd,MAAM,YAAY,CAAC;AAIpB,OAAO,EACL,aAAa,EACb,eAAe,EACf,kBAAkB,EAClB,UAAU,EACV,QAAQ,EACR,UAAU,EACV,iBAAiB,GAClB,MAAM,mBAAmB,CAAC;AAC3B,YAAY,EACV,WAAW,EACX,gBAAgB,EAChB,QAAQ,EACR,WAAW,EACX,aAAa,EACb,cAAc,EACd,WAAW,EACX,YAAY,EACZ,gBAAgB,EAChB,OAAO,EACP,YAAY,EACZ,mBAAmB,EACnB,eAAe,GAChB,MAAM,mBAAmB,CAAC;AAE3B,OAAO,EACL,kBAAkB,EAClB,SAAS,EACT,KAAK,EACL,WAAW,EACX,cAAc,GACf,MAAM,oBAAoB,CAAC;AAC5B,YAAY,EAAE,SAAS,EAAE,MAAM,oBAAoB,CAAC;AAEpD,YAAY,EACV,WAAW,EACX,IAAI,EACJ,UAAU,EACV,YAAY,EACZ,wBAAwB,EACxB,qBAAqB,EACrB,wBAAwB,EACxB,eAAe,EACf,KAAK,EACL,YAAY,EACZ,eAAe,EACf,gBAAgB,GACjB,MAAM,mBAAmB,CAAC;AAQ3B,OAAO,EACL,2BAA2B,EAC3B,aAAa,EACb,kBAAkB,EAClB,YAAY,EACZ,iBAAiB,EACjB,aAAa,EACb,eAAe,EACf,oBAAoB,EACpB,SAAS,EACT,gBAAgB,GACjB,MAAM,sBAAsB,CAAC;AAC9B,YAAY,EAAE,cAAc,EAAE,cAAc,EAAE,mBAAmB,EAAE,MAAM,sBAAsB,CAAC;AAEhG,OAAO,EACL,WAAW,EACX,oBAAoB,EACpB,sBAAsB,EACtB,YAAY,EACZ,UAAU,GACX,MAAM,kBAAkB,CAAC;AAY1B,OAAO,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAC;AAC5C,YAAY,EAAE,IAAI,EAAE,WAAW,EAAE,aAAa,EAAE,MAAM,gBAAgB,CAAC;AASvE,OAAO,EAAE,UAAU,EAAE,MAAM,EAAE,YAAY,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AAC9E,YAAY,EACV,UAAU,EACV,QAAQ,EACR,eAAe,EACf,iBAAiB,EACjB,gBAAgB,GACjB,MAAM,kBAAkB,CAAC;AAK1B,OAAO,EAAE,oBAAoB,EAAE,gBAAgB,EAAE,oBAAoB,EAAE,MAAM,kBAAkB,CAAC;AAChG,YAAY,EACV,cAAc,EACd,eAAe,EACf,aAAa,EACb,0BAA0B,EAC1B,YAAY,EACZ,OAAO,GACR,MAAM,kBAAkB,CAAC;AAE1B,OAAO,EACL,cAAc,EACd,qBAAqB,EACrB,sBAAsB,EACtB,gBAAgB,EAChB,mBAAmB,EACnB,oBAAoB,GACrB,MAAM,oBAAoB,CAAC;AAC5B,YAAY,EACV,kBAAkB,EAClB,gBAAgB,EAChB,cAAc,EACd,iBAAiB,EACjB,oBAAoB,GACrB,MAAM,oBAAoB,CAAC;AAE5B,OAAO,EAAE,aAAa,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AAChE,YAAY,EACV,mBAAmB,EACnB,UAAU,EACV,YAAY,EACZ,gBAAgB,EAChB,aAAa,GACd,MAAM,oBAAoB,CAAC;AAE5B,OAAO,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AAC1C,YAAY,EAAE,SAAS,EAAE,eAAe,EAAE,MAAM,gBAAgB,CAAC"}
package/dist/index.js CHANGED
@@ -18,7 +18,7 @@
18
18
  * supplies (see `ports.ts`), which is what lets one gate sit in front of any model,
19
19
  * any database and any approval surface.
20
20
  *
21
- * **What is here at `0.1.0-alpha.0`:** the turn context (GT-2), the port
21
+ * **What is here at `0.1.0-alpha.2`:** the turn context (GT-2), the port
22
22
  * interfaces, the error-code registry (CV-1), the telemetry-key registry (TL-1) and
23
23
  * the Affidavit model — the provenance ladder with its bindings and merge rule
24
24
  * (PV-1..PV-3, PV-5), the Affidavit and its three confidence numbers (AF-1..AF-3),
@@ -41,18 +41,21 @@
41
41
  * pointing at nothing (PV-4), and a host risk score above the policy's threshold (GT-5).
42
42
  *
43
43
  * The fixtures for both v0.1 sequences and the runner that executes them are behind
44
- * `@affiant/core/testing`, which a host can point at its own ports.
44
+ * `@affiant/core/testing`, which a host can point at its own ports — and beside them the
45
+ * parametrised store contract every `DocketStore` and `SessionStore` implementation is
46
+ * measured by, the same assertions the in-memory reference passes.
45
47
  *
46
- * **Not on npm.** The version string exists so the conformance driver can pin it.
47
- * Publishing waits on two things a public parity report naming what each
48
- * implementation does not yet pass, and a green, merge-blocking TypeScript conformance
49
- * driver and a `prepack` guard enforces the wait rather than documenting it. See the
50
- * package README.
48
+ * **On npm at `0.1.0-alpha.1`**, under the `alpha` dist-tag and with a provenance
49
+ * attestation, since 2026-09-06; `0.1.0-alpha.2` is unpublished and goes with the next
50
+ * dispatch. The version above is what a conformance driver
51
+ * pins. Publishing is a separate, deliberate step a workflow a maintainer dispatches
52
+ * by hand, which defaults to a dry run, and a `prepack` guard that refuses to pack at
53
+ * all until an override is set. See the package README.
51
54
  *
52
55
  * @packageDocumentation
53
56
  */
54
- /** The version of this package. Not published to npm at this version. */
55
- export const CORE_VERSION = "0.1.0-alpha.0";
57
+ /** The version of this package. `0.1.0-alpha.1` is the version of it that is on npm. */
58
+ export const CORE_VERSION = "0.1.0-alpha.2";
56
59
  /**
57
60
  * The protocol tag the wire types are pinned to, re-exported from
58
61
  * `@affiant/contract` so a host that only depends on the gate can still assert
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
@@ -308,4 +308,16 @@ export declare function sha256Hex(bytes: Uint8Array): Promise<string>;
308
308
  * @throws TypeError on a value with no canonical form (see the module header).
309
309
  */
310
310
  export declare function canonicalJson(value: unknown): string;
311
+ /**
312
+ * SR-1's rendering of one number: the shortest round-trip decimal, written
313
+ * positionally, `-0` as `"0"`.
314
+ *
315
+ * Exported for PV-3's finder (`gate/presence.ts`), which looks for a number in the
316
+ * utterance as the text the canonical form would write, rather than as whatever the
317
+ * host's language prints. Not part of the package's public surface: `index.ts` does not
318
+ * re-export it.
319
+ *
320
+ * @throws RangeError when `value` has no decimal form (NaN, the infinities).
321
+ */
322
+ export declare function canonicalNumber(value: number): string;
311
323
  //# sourceMappingURL=canonical.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"canonical.d.ts","sourceRoot":"","sources":["../../src/model/canonical.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA+GG;AAEH,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AAEtD,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AAEtD,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAChD,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAC;AASnD;;;;;;;;;;;;GAYG;AACH,MAAM,WAAW,cAAc;IAC7B,kEAAkE;IAClE,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,4DAA4D;IAC5D,QAAQ,CAAC,KAAK,CAAC,EAAE,OAAO,CAAC;IACzB,wEAAwE;IACxE,QAAQ,CAAC,UAAU,CAAC,EAAE,OAAO,CAAC;CAC/B;AAED;;;;;;;GAOG;AACH,MAAM,WAAW,cAAc;IAC7B,iEAAiE;IACjE,QAAQ,CAAC,MAAM,CAAC,EAAE,SAAS,cAAc,EAAE,CAAC;IAC5C;;;;;;;;;OASG;IACH,QAAQ,CAAC,eAAe,CAAC,EAAE,MAAM,CAAC;CACnC;AAED,2FAA2F;AAC3F,MAAM,WAAW,mBAAmB;IAClC;;;;;OAKG;IACH,QAAQ,CAAC,WAAW,CAAC,EAAE,WAAW,CAAC;CACpC;AAMD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAkCG;AACH,wBAAgB,2BAA2B,CACzC,SAAS,EAAE,cAAc,EACzB,UAAU,EAAE,YAAY,EACxB,GAAG,EAAE,WAAW,GACf,cAAc,CAsEhB;AAiFD;;;;;;;;;;;GAWG;AACH,wBAAgB,YAAY,CAC1B,SAAS,EAAE,cAAc,EACzB,UAAU,CAAC,EAAE,YAAY,GAAG,IAAI,EAChC,OAAO,CAAC,EAAE,mBAAmB,GAC5B,UAAU,CAEZ;AAED;;;;;;;GAOG;AACH,wBAAgB,eAAe,CAC7B,SAAS,EAAE,cAAc,EACzB,UAAU,CAAC,EAAE,YAAY,GAAG,IAAI,EAChC,OAAO,CAAC,EAAE,mBAAmB,GAC5B,MAAM,CAER;AAED;;;;;;;;;;GAUG;AACH,wBAAsB,aAAa,CACjC,SAAS,EAAE,cAAc,EACzB,UAAU,CAAC,EAAE,YAAY,GAAG,IAAI,EAChC,OAAO,CAAC,EAAE,mBAAmB,GAC5B,OAAO,CAAC,MAAM,CAAC,CAEjB;AAMD;;;;;;;;GAQG;AACH,wBAAgB,gBAAgB,CAAC,KAAK,EAAE,WAAW,GAAG,SAAS,CAE9D;AAED;;;;;;;;;;;GAWG;AACH,wBAAgB,iBAAiB,CAAC,KAAK,EAAE,WAAW,GAAG,UAAU,CAEhE;AAED,4GAA4G;AAC5G,wBAAgB,oBAAoB,CAAC,KAAK,EAAE,WAAW,GAAG,MAAM,CAE/D;AAED,mFAAmF;AACnF,wBAAsB,kBAAkB,CAAC,KAAK,EAAE,WAAW,GAAG,OAAO,CAAC,MAAM,CAAC,CAE5E;AAED;;;;;;;;;;GAUG;AACH,wBAAsB,SAAS,CAAC,KAAK,EAAE,UAAU,GAAG,OAAO,CAAC,MAAM,CAAC,CAmBlE;AA0BD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA6BG;AACH,wBAAgB,aAAa,CAAC,KAAK,EAAE,OAAO,GAAG,MAAM,CAIpD"}
1
+ {"version":3,"file":"canonical.d.ts","sourceRoot":"","sources":["../../src/model/canonical.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA+GG;AAEH,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AAEtD,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AAEtD,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAChD,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAC;AASnD;;;;;;;;;;;;GAYG;AACH,MAAM,WAAW,cAAc;IAC7B,kEAAkE;IAClE,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,4DAA4D;IAC5D,QAAQ,CAAC,KAAK,CAAC,EAAE,OAAO,CAAC;IACzB,wEAAwE;IACxE,QAAQ,CAAC,UAAU,CAAC,EAAE,OAAO,CAAC;CAC/B;AAED;;;;;;;GAOG;AACH,MAAM,WAAW,cAAc;IAC7B,iEAAiE;IACjE,QAAQ,CAAC,MAAM,CAAC,EAAE,SAAS,cAAc,EAAE,CAAC;IAC5C;;;;;;;;;OASG;IACH,QAAQ,CAAC,eAAe,CAAC,EAAE,MAAM,CAAC;CACnC;AAED,2FAA2F;AAC3F,MAAM,WAAW,mBAAmB;IAClC;;;;;OAKG;IACH,QAAQ,CAAC,WAAW,CAAC,EAAE,WAAW,CAAC;CACpC;AAMD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAkCG;AACH,wBAAgB,2BAA2B,CACzC,SAAS,EAAE,cAAc,EACzB,UAAU,EAAE,YAAY,EACxB,GAAG,EAAE,WAAW,GACf,cAAc,CAsEhB;AAiFD;;;;;;;;;;;GAWG;AACH,wBAAgB,YAAY,CAC1B,SAAS,EAAE,cAAc,EACzB,UAAU,CAAC,EAAE,YAAY,GAAG,IAAI,EAChC,OAAO,CAAC,EAAE,mBAAmB,GAC5B,UAAU,CAEZ;AAED;;;;;;;GAOG;AACH,wBAAgB,eAAe,CAC7B,SAAS,EAAE,cAAc,EACzB,UAAU,CAAC,EAAE,YAAY,GAAG,IAAI,EAChC,OAAO,CAAC,EAAE,mBAAmB,GAC5B,MAAM,CAER;AAED;;;;;;;;;;GAUG;AACH,wBAAsB,aAAa,CACjC,SAAS,EAAE,cAAc,EACzB,UAAU,CAAC,EAAE,YAAY,GAAG,IAAI,EAChC,OAAO,CAAC,EAAE,mBAAmB,GAC5B,OAAO,CAAC,MAAM,CAAC,CAEjB;AAMD;;;;;;;;GAQG;AACH,wBAAgB,gBAAgB,CAAC,KAAK,EAAE,WAAW,GAAG,SAAS,CAE9D;AAED;;;;;;;;;;;GAWG;AACH,wBAAgB,iBAAiB,CAAC,KAAK,EAAE,WAAW,GAAG,UAAU,CAEhE;AAED,4GAA4G;AAC5G,wBAAgB,oBAAoB,CAAC,KAAK,EAAE,WAAW,GAAG,MAAM,CAE/D;AAED,mFAAmF;AACnF,wBAAsB,kBAAkB,CAAC,KAAK,EAAE,WAAW,GAAG,OAAO,CAAC,MAAM,CAAC,CAE5E;AAED;;;;;;;;;;GAUG;AACH,wBAAsB,SAAS,CAAC,KAAK,EAAE,UAAU,GAAG,OAAO,CAAC,MAAM,CAAC,CAmBlE;AA0BD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA6BG;AACH,wBAAgB,aAAa,CAAC,KAAK,EAAE,OAAO,GAAG,MAAM,CAIpD;AAyID;;;;;;;;;;GAUG;AACH,wBAAgB,eAAe,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAErD"}
@@ -556,6 +556,20 @@ function assertNotFloatMoney(record, path) {
556
556
  `(${describe(amount)}). Expected ${String(MONEY_AMOUNT_PATTERN)}: no exponent, no ` +
557
557
  `thousands separators, no leading "+".`);
558
558
  }
559
+ /**
560
+ * SR-1's rendering of one number: the shortest round-trip decimal, written
561
+ * positionally, `-0` as `"0"`.
562
+ *
563
+ * Exported for PV-3's finder (`gate/presence.ts`), which looks for a number in the
564
+ * utterance as the text the canonical form would write, rather than as whatever the
565
+ * host's language prints. Not part of the package's public surface: `index.ts` does not
566
+ * re-export it.
567
+ *
568
+ * @throws RangeError when `value` has no decimal form (NaN, the infinities).
569
+ */
570
+ export function canonicalNumber(value) {
571
+ return writeNumber(value, "");
572
+ }
559
573
  /**
560
574
  * The shortest round-trip decimal for `value`, written positionally.
561
575
  *
@@ -1 +1 @@
1
- {"version":3,"file":"canonical.js","sourceRoot":"","sources":["../../src/model/canonical.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"canonical.js","sourceRoot":"","sources":["../../src/model/canonical.ts"],"names":[],"mappings":"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"}
package/dist/ports.d.ts CHANGED
@@ -105,7 +105,15 @@ export interface UtteranceSpan {
105
105
  }
106
106
  /** One field an inference port filled in. */
107
107
  export interface StructuredField {
108
- /** The extracted value. Any JSON value, including `null`. */
108
+ /**
109
+ * The extracted value.
110
+ *
111
+ * `null`, an object, an array, the empty string and a number the runtime parsed as
112
+ * infinity or NaN are **nothing reported** for the field (PV-3): none of them is a
113
+ * value a field can carry, so the gate merges no such field and mints no tag, and
114
+ * the field stays whatever it already was — `Empty` under AF-1 where nothing else
115
+ * set it. A whitespace-only string is a value and is filed as reported.
116
+ */
109
117
  readonly value: JsonValue;
110
118
  /**
111
119
  * How confident the port is, `0.0` to `1.0`. The pipeline clamps whatever
@@ -113,17 +121,28 @@ export interface StructuredField {
113
121
  */
114
122
  readonly confidence: number;
115
123
  /**
116
- * Whether the value is literally present in the utterance (`"literal"`, tagged
117
- * `Conversation`) or was reasoned to (`"inferred"`, tagged `Inferred`). The
118
- * distinction is provenance, not confidence: a reviewer reads them differently.
124
+ * The port's **report** on whether the value was literally in the utterance, or
125
+ * absent when it does not report one. Never the grade.
126
+ *
127
+ * PV-3 has the gate establish presence from the turn itself, so this is a hint it
128
+ * verifies the same way: a `"literal"` the utterance does not confirm is tagged
129
+ * `Inferred`, and a value the port called `"inferred"` — or said nothing about — is
130
+ * tagged `Conversation` when it is there to read. A model's claim about its own
131
+ * literalness is itself an inference; the text is not.
119
132
  */
120
- readonly presence: "literal" | "inferred";
133
+ readonly presence?: "literal" | "inferred";
121
134
  /**
122
- * Where in the utterance the value was found, when the port can say. `null` when
123
- * it cannot the pipeline then records the tag without an `utterance-span`
124
- * binding rather than inventing offsets.
135
+ * Where in the utterance the port says the value was found, when it can say.
136
+ * Absent or `null` when it cannot.
137
+ *
138
+ * Also a hint (PV-3): the span is used only when it is itself a hit — the utterance
139
+ * at that span is the value text under the gate's own comparison, the span's
140
+ * neighbours leave it a whole token, and it splits no surrogate pair — and is
141
+ * otherwise discarded, the gate then looking for the value itself rather than
142
+ * trusting offsets it cannot confirm. `start` and `end` are integer-valued, so a
143
+ * fractional coordinate discards the hint.
125
144
  */
126
- readonly utteranceSpan: UtteranceSpan | null;
145
+ readonly utteranceSpan?: UtteranceSpan | null;
127
146
  }
128
147
  /** What one inference call returns: the fields it could fill, keyed by name. */
129
148
  export interface StructuredResult {
@@ -1 +1 @@
1
- {"version":3,"file":"ports.d.ts","sourceRoot":"","sources":["../src/ports.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ports.d.ts","sourceRoot":"","sources":["../src/ports.ts"],"names":[],"mappings":"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"}
package/dist/ports.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"ports.js","sourceRoot":"","sources":["../src/ports.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;GAoBG;AAgNH;;;;;;GAMG;AACH,MAAM,CAAC,MAAM,YAAY,GAAU;IACjC,GAAG;QACD,OAAO,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC;IAClC,CAAC;CACF,CAAC"}
1
+ {"version":3,"file":"ports.js","sourceRoot":"","sources":["../src/ports.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;GAoBG;AAmOH;;;;;;GAMG;AACH,MAAM,CAAC,MAAM,YAAY,GAAU;IACjC,GAAG;QACD,OAAO,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC;IAClC,CAAC;CACF,CAAC"}