agentfootprint 9.131.0 → 9.133.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (180) hide show
  1. package/AGENTS.md +2 -2
  2. package/CAPABILITIES.md +3 -2
  3. package/ai-instructions/claude-code/SKILL.md +2 -2
  4. package/dist/core/Agent.js +5 -3
  5. package/dist/core/Agent.js.map +1 -1
  6. package/dist/core/agent/arguments/ask.js +249 -54
  7. package/dist/core/agent/arguments/ask.js.map +1 -1
  8. package/dist/core/agent/arguments/resolve.js +11 -1
  9. package/dist/core/agent/arguments/resolve.js.map +1 -1
  10. package/dist/core/agent/arguments/serve.js +227 -61
  11. package/dist/core/agent/arguments/serve.js.map +1 -1
  12. package/dist/core/agent/buildAgentChart.js +5 -4
  13. package/dist/core/agent/buildAgentChart.js.map +1 -1
  14. package/dist/core/agent/buildDynamicAgentChart.js +2 -1
  15. package/dist/core/agent/buildDynamicAgentChart.js.map +1 -1
  16. package/dist/core/agent/coverage/period.js +47 -2
  17. package/dist/core/agent/coverage/period.js.map +1 -1
  18. package/dist/core/agent/evidence/answerCarriers.js +91 -0
  19. package/dist/core/agent/evidence/answerCarriers.js.map +1 -0
  20. package/dist/core/agent/stages/argumentAsk.js +8 -6
  21. package/dist/core/agent/stages/argumentAsk.js.map +1 -1
  22. package/dist/core/agent/stages/route.js +7 -0
  23. package/dist/core/agent/stages/route.js.map +1 -1
  24. package/dist/core/slots/buildToolsSlot.js +4 -2
  25. package/dist/core/slots/buildToolsSlot.js.map +1 -1
  26. package/dist/core/time/bind.js +57 -51
  27. package/dist/core/time/bind.js.map +1 -1
  28. package/dist/core/time/convert.js +111 -14
  29. package/dist/core/time/convert.js.map +1 -1
  30. package/dist/core/time/forms.js +7 -5
  31. package/dist/core/time/forms.js.map +1 -1
  32. package/dist/core/time/periodForm.js +63 -9
  33. package/dist/core/time/periodForm.js.map +1 -1
  34. package/dist/core/time/range.js +22 -1
  35. package/dist/core/time/range.js.map +1 -1
  36. package/dist/core/time/reader.js +3 -2
  37. package/dist/core/time/reader.js.map +1 -1
  38. package/dist/core/time/readers/english.js +116 -38
  39. package/dist/core/time/readers/english.js.map +1 -1
  40. package/dist/core/time/readingAsk.js +20 -5
  41. package/dist/core/time/readingAsk.js.map +1 -1
  42. package/dist/core/time/resolve.js +197 -63
  43. package/dist/core/time/resolve.js.map +1 -1
  44. package/dist/core/time/resolveRecord.js +103 -6
  45. package/dist/core/time/resolveRecord.js.map +1 -1
  46. package/dist/core/time/rows.js +7 -2
  47. package/dist/core/time/rows.js.map +1 -1
  48. package/dist/core/time/rowsBuild.js +1 -1
  49. package/dist/core/time/rowsBuild.js.map +1 -1
  50. package/dist/core/time/windows.js +131 -19
  51. package/dist/core/time/windows.js.map +1 -1
  52. package/dist/core/time/zone.js +105 -1
  53. package/dist/core/time/zone.js.map +1 -1
  54. package/dist/doors/time.js +73 -0
  55. package/dist/doors/time.js.map +1 -0
  56. package/dist/esm/core/Agent.js +5 -3
  57. package/dist/esm/core/Agent.js.map +1 -1
  58. package/dist/esm/core/agent/arguments/ask.d.ts +11 -5
  59. package/dist/esm/core/agent/arguments/ask.js +251 -56
  60. package/dist/esm/core/agent/arguments/ask.js.map +1 -1
  61. package/dist/esm/core/agent/arguments/resolve.js +12 -2
  62. package/dist/esm/core/agent/arguments/resolve.js.map +1 -1
  63. package/dist/esm/core/agent/arguments/serve.d.ts +50 -21
  64. package/dist/esm/core/agent/arguments/serve.js +225 -60
  65. package/dist/esm/core/agent/arguments/serve.js.map +1 -1
  66. package/dist/esm/core/agent/buildAgentChart.d.ts +3 -1
  67. package/dist/esm/core/agent/buildAgentChart.js +5 -4
  68. package/dist/esm/core/agent/buildAgentChart.js.map +1 -1
  69. package/dist/esm/core/agent/buildDynamicAgentChart.js +2 -1
  70. package/dist/esm/core/agent/buildDynamicAgentChart.js.map +1 -1
  71. package/dist/esm/core/agent/coverage/period.d.ts +6 -1
  72. package/dist/esm/core/agent/coverage/period.js +47 -2
  73. package/dist/esm/core/agent/coverage/period.js.map +1 -1
  74. package/dist/esm/core/agent/evidence/answerCarriers.d.ts +62 -0
  75. package/dist/esm/core/agent/evidence/answerCarriers.js +87 -0
  76. package/dist/esm/core/agent/evidence/answerCarriers.js.map +1 -0
  77. package/dist/esm/core/agent/stages/argumentAsk.js +8 -6
  78. package/dist/esm/core/agent/stages/argumentAsk.js.map +1 -1
  79. package/dist/esm/core/agent/stages/route.js +7 -0
  80. package/dist/esm/core/agent/stages/route.js.map +1 -1
  81. package/dist/esm/core/slots/buildToolsSlot.d.ts +15 -11
  82. package/dist/esm/core/slots/buildToolsSlot.js +4 -2
  83. package/dist/esm/core/slots/buildToolsSlot.js.map +1 -1
  84. package/dist/esm/core/time/bind.d.ts +11 -7
  85. package/dist/esm/core/time/bind.js +55 -52
  86. package/dist/esm/core/time/bind.js.map +1 -1
  87. package/dist/esm/core/time/convert.d.ts +45 -2
  88. package/dist/esm/core/time/convert.js +108 -16
  89. package/dist/esm/core/time/convert.js.map +1 -1
  90. package/dist/esm/core/time/forms.js +8 -6
  91. package/dist/esm/core/time/forms.js.map +1 -1
  92. package/dist/esm/core/time/periodForm.d.ts +45 -6
  93. package/dist/esm/core/time/periodForm.js +59 -8
  94. package/dist/esm/core/time/periodForm.js.map +1 -1
  95. package/dist/esm/core/time/range.d.ts +18 -0
  96. package/dist/esm/core/time/range.js +20 -0
  97. package/dist/esm/core/time/range.js.map +1 -1
  98. package/dist/esm/core/time/reader.d.ts +7 -0
  99. package/dist/esm/core/time/reader.js +3 -2
  100. package/dist/esm/core/time/reader.js.map +1 -1
  101. package/dist/esm/core/time/readers/english.d.ts +16 -12
  102. package/dist/esm/core/time/readers/english.js +116 -38
  103. package/dist/esm/core/time/readers/english.js.map +1 -1
  104. package/dist/esm/core/time/readingAsk.d.ts +7 -3
  105. package/dist/esm/core/time/readingAsk.js +20 -5
  106. package/dist/esm/core/time/readingAsk.js.map +1 -1
  107. package/dist/esm/core/time/resolve.d.ts +31 -17
  108. package/dist/esm/core/time/resolve.js +197 -65
  109. package/dist/esm/core/time/resolve.js.map +1 -1
  110. package/dist/esm/core/time/resolveRecord.d.ts +90 -5
  111. package/dist/esm/core/time/resolveRecord.js +99 -5
  112. package/dist/esm/core/time/resolveRecord.js.map +1 -1
  113. package/dist/esm/core/time/rows.d.ts +9 -3
  114. package/dist/esm/core/time/rows.js +7 -2
  115. package/dist/esm/core/time/rows.js.map +1 -1
  116. package/dist/esm/core/time/rowsBuild.js +1 -1
  117. package/dist/esm/core/time/rowsBuild.js.map +1 -1
  118. package/dist/esm/core/time/windows.d.ts +95 -14
  119. package/dist/esm/core/time/windows.js +127 -18
  120. package/dist/esm/core/time/windows.js.map +1 -1
  121. package/dist/esm/core/time/zone.d.ts +32 -0
  122. package/dist/esm/core/time/zone.js +102 -0
  123. package/dist/esm/core/time/zone.js.map +1 -1
  124. package/dist/esm/doors/time.d.ts +60 -0
  125. package/dist/esm/doors/time.js +61 -0
  126. package/dist/esm/doors/time.js.map +1 -0
  127. package/dist/esm/events/payloads.d.ts +23 -0
  128. package/dist/esm/index.d.ts +2 -2
  129. package/dist/esm/index.js.map +1 -1
  130. package/dist/index.js.map +1 -1
  131. package/dist/types/core/Agent.d.ts.map +1 -1
  132. package/dist/types/core/agent/arguments/ask.d.ts +11 -5
  133. package/dist/types/core/agent/arguments/ask.d.ts.map +1 -1
  134. package/dist/types/core/agent/arguments/resolve.d.ts.map +1 -1
  135. package/dist/types/core/agent/arguments/serve.d.ts +50 -21
  136. package/dist/types/core/agent/arguments/serve.d.ts.map +1 -1
  137. package/dist/types/core/agent/buildAgentChart.d.ts +3 -1
  138. package/dist/types/core/agent/buildAgentChart.d.ts.map +1 -1
  139. package/dist/types/core/agent/buildDynamicAgentChart.d.ts.map +1 -1
  140. package/dist/types/core/agent/coverage/period.d.ts +6 -1
  141. package/dist/types/core/agent/coverage/period.d.ts.map +1 -1
  142. package/dist/types/core/agent/evidence/answerCarriers.d.ts +63 -0
  143. package/dist/types/core/agent/evidence/answerCarriers.d.ts.map +1 -0
  144. package/dist/types/core/agent/stages/argumentAsk.d.ts.map +1 -1
  145. package/dist/types/core/agent/stages/route.d.ts.map +1 -1
  146. package/dist/types/core/slots/buildToolsSlot.d.ts +15 -11
  147. package/dist/types/core/slots/buildToolsSlot.d.ts.map +1 -1
  148. package/dist/types/core/time/bind.d.ts +11 -7
  149. package/dist/types/core/time/bind.d.ts.map +1 -1
  150. package/dist/types/core/time/convert.d.ts +45 -2
  151. package/dist/types/core/time/convert.d.ts.map +1 -1
  152. package/dist/types/core/time/forms.d.ts.map +1 -1
  153. package/dist/types/core/time/periodForm.d.ts +45 -6
  154. package/dist/types/core/time/periodForm.d.ts.map +1 -1
  155. package/dist/types/core/time/range.d.ts +18 -0
  156. package/dist/types/core/time/range.d.ts.map +1 -1
  157. package/dist/types/core/time/reader.d.ts +7 -0
  158. package/dist/types/core/time/reader.d.ts.map +1 -1
  159. package/dist/types/core/time/readers/english.d.ts +16 -12
  160. package/dist/types/core/time/readers/english.d.ts.map +1 -1
  161. package/dist/types/core/time/readingAsk.d.ts +7 -3
  162. package/dist/types/core/time/readingAsk.d.ts.map +1 -1
  163. package/dist/types/core/time/resolve.d.ts +31 -17
  164. package/dist/types/core/time/resolve.d.ts.map +1 -1
  165. package/dist/types/core/time/resolveRecord.d.ts +90 -5
  166. package/dist/types/core/time/resolveRecord.d.ts.map +1 -1
  167. package/dist/types/core/time/rows.d.ts +9 -3
  168. package/dist/types/core/time/rows.d.ts.map +1 -1
  169. package/dist/types/core/time/rowsBuild.d.ts.map +1 -1
  170. package/dist/types/core/time/windows.d.ts +95 -14
  171. package/dist/types/core/time/windows.d.ts.map +1 -1
  172. package/dist/types/core/time/zone.d.ts +32 -0
  173. package/dist/types/core/time/zone.d.ts.map +1 -1
  174. package/dist/types/doors/time.d.ts +61 -0
  175. package/dist/types/doors/time.d.ts.map +1 -0
  176. package/dist/types/events/payloads.d.ts +23 -0
  177. package/dist/types/events/payloads.d.ts.map +1 -1
  178. package/dist/types/index.d.ts +2 -2
  179. package/dist/types/index.d.ts.map +1 -1
  180. package/package.json +14 -1
@@ -17,6 +17,8 @@
17
17
  * @example
18
18
  * ```ts
19
19
  * readPolicy({ dateOrder: 'DMY' }); // { dateOrder: 'DMY', year: 'ask' }
20
+ * readPolicy({ abbreviations: { PST: { zone: 'America/Los_Angeles', offset: '-08:00' } } });
21
+ * // { dateOrder: 'ask', year: 'ask', abbreviations: { PST: { zone: 'America/Los_Angeles', offset: '-08:00' } } }
20
22
  * candidateIsWellFormed({ kind: 'range', range: { from: 'x', to: 'y' } }); // false
21
23
  * ```
22
24
  */
@@ -39,7 +41,12 @@ export type TimeWindow = {
39
41
  };
40
42
  /** A library-written note on how a window was read. */
41
43
  export type TimeNote =
42
- /** The range runs to the end of its last said grain ("to 8:40" → `08:41`). */
44
+ /**
45
+ * The window's END was widened to the end of its last said grain: "to 8:40"
46
+ * → `08:41`, a day → the next midnight, a lone "9 AM" → `[09:00, 10:00)`.
47
+ * Never on a range end said as an o'clock hour ("8 AM to 9 AM" ends AT
48
+ * `09:00`, § 3.3). Ask {@link widenedGrain}, never `grain` alone.
49
+ */
43
50
  {
44
51
  readonly kind: 'end-of-grain';
45
52
  }
@@ -64,6 +71,19 @@ export type TimeNote =
64
71
  | {
65
72
  readonly kind: 'century-implied';
66
73
  readonly century: number;
74
+ }
75
+ /**
76
+ * The person named the zone in words that are no zone name (`London time`,
77
+ * `PST`): `token` as written, and how the library read it — the one IANA
78
+ * zone the place names (`place`), the app's abbreviation map's zone
79
+ * (`abbreviation`), or the fixed offset the abbreviation spells
80
+ * (`abbreviation-literal`). A proposal like every reading: the person
81
+ * confirms the zone with the window.
82
+ */
83
+ | {
84
+ readonly kind: 'zone-read';
85
+ readonly token: string;
86
+ readonly as: 'place' | 'abbreviation' | 'abbreviation-literal';
67
87
  };
68
88
  /** Which reading of the PARTS produced a candidate, so a policy — or an ask — can choose among them. */
69
89
  export interface ReadingTags {
@@ -73,6 +93,8 @@ export interface ReadingTags {
73
93
  /** The same, for the `to` end of a range. */
74
94
  readonly endMeridiem?: 'am' | 'pm';
75
95
  readonly year?: 'said' | 'current' | 'previous';
96
+ /** An abbreviation in the app's map: read as its zone (`zone`) or as its literal offset (`literal`). */
97
+ readonly abbreviation?: 'zone' | 'literal';
76
98
  }
77
99
  /** A window read from words, resolved against the clock (§ 3.2). */
78
100
  export interface ResolvedWindow {
@@ -100,12 +122,32 @@ export interface TimeCandidate extends ResolvedWindow {
100
122
  /** Which of the mention's parses it came from. */
101
123
  readonly parse: number;
102
124
  }
103
- /** The v1 policy (§ 11): the two switches with two careful answers. */
125
+ /**
126
+ * One zone abbreviation the app's people write, as data (§ 11): the zone it
127
+ * stands for, and the fixed offset it literally spells. `PST` in October is
128
+ * both `America/Los_Angeles` (−07:00, what a person on the US west coast
129
+ * usually means) and −08:00 (what the letters say) — so a mismatch offers
130
+ * BOTH readings, never corrects one into the other.
131
+ */
132
+ export interface ZoneAbbreviation {
133
+ readonly zone: ZoneName;
134
+ /** `±HH:MM` (or `±HH`, `±HHMM`). */
135
+ readonly offset: string;
136
+ }
137
+ /** The v1 policy (§ 11): the switches with careful answers. */
104
138
  export interface TimePolicy {
105
139
  /** `'ask'`: a numeric date's readings become choices. Or the one order this app's people write. */
106
140
  readonly dateOrder: 'ask' | 'MDY' | 'DMY' | 'YMD';
107
141
  /** `'ask'`: a date said without a year is asked. `'current'`: the clock's year, recorded as assumed. */
108
142
  readonly year: 'ask' | 'current';
143
+ /**
144
+ * Absent (the default): no abbreviation maps to a zone — `PST` is ASKED as
145
+ * a zone. Present: the abbreviations this app's people write, each read as
146
+ * its zone AND as its literal offset when the two disagree at the instant
147
+ * (both offered in the one confirmation, noted `zone-read`). An
148
+ * abbreviation missing from the map is still asked. No map ships.
149
+ */
150
+ readonly abbreviations?: Readonly<Record<string, ZoneAbbreviation>>;
109
151
  }
110
152
  /** No silent MDY, no guessed year. */
111
153
  export declare const DEFAULT_TIME_POLICY: TimePolicy;
@@ -122,8 +164,8 @@ export interface MentionResolution {
122
164
  /** Parts v1 does not resolve, named. */
123
165
  readonly unsupported: readonly string[];
124
166
  }
125
- /** A question only the person can settle. */
126
- export type OpenQuestion = 'date-order' | 'year' | 'meridiem' | 'dst' | 'zone' | 'parse' | 'confirm';
167
+ /** A question only the person can settle. `abbreviation`: the app's map's zone, or the letters' offset. */
168
+ export type OpenQuestion = 'date-order' | 'year' | 'meridiem' | 'dst' | 'zone' | 'abbreviation' | 'parse' | 'confirm';
127
169
  /** How a mention's reading settled — recorded on its `time-reading` row. */
128
170
  export type ReadingChoice =
129
171
  /** Every candidate left names the same window. */
@@ -147,11 +189,54 @@ export type ReadingChoice =
147
189
  readonly by: 'none';
148
190
  readonly why: 'unreadable' | 'unsupported' | 'no-candidate' | 'excluded-by-policy';
149
191
  };
192
+ /**
193
+ * A numeric offset as written (`-07`, `-0700`, `-07:00`) → minutes east of
194
+ * UTC and its `±HH:MM` spelling, or `undefined`. The one reader of an offset
195
+ * token: `resolve.ts` · `zoneReadsOf` (a said offset) and {@link readPolicy} (an
196
+ * abbreviation's literal offset) both ask it.
197
+ */
198
+ export declare function offsetOfToken(token: string): {
199
+ readonly minutes: number;
200
+ readonly spelled: string;
201
+ } | undefined;
150
202
  /**
151
203
  * The app's `policy`, read with the v1 defaults filled in — or a problem in
152
- * words (an unknown key, a value outside its switch).
204
+ * words (an unknown key, a value outside its switch). `abbreviations` is kept
205
+ * only when given, so a policy without it reads byte-identical to v1's.
153
206
  */
154
207
  export declare function readPolicy(value: unknown): TimePolicy | string;
208
+ /**
209
+ * The grain a candidate's END was widened to, or `undefined` when its `to`
210
+ * is exact — the one answer to "was the end widened?" (§ 3.3). A label
211
+ * renders the end as said only then (`readingAsk.ts` · `timeAskOf`), and
212
+ * the said end is `to − 1 grain` only then (`forms.ts` · `saidEndMs`).
213
+ * `grain` alone is not the answer: "8 AM to 9 AM" is grain `hour` and ends
214
+ * AT `09:00`; a look-back is grain `hour` and ends at the clock's now.
215
+ *
216
+ * @example
217
+ * ```ts
218
+ * widenedGrain({ grain: 'minute', notes: [{ kind: 'end-of-grain' }] }); // 'minute' — [08:00, 08:41)
219
+ * widenedGrain({ grain: 'hour', notes: [] }); // undefined — [08:00, 09:00)
220
+ * ```
221
+ */
222
+ export declare function widenedGrain(candidate: Pick<TimeCandidate, 'notes' | 'grain'>): Grain | undefined;
223
+ /**
224
+ * The grain a candidate's LABEL shows its end at (`readingAsk.ts` ·
225
+ * `timeAskOf`), or `undefined` to show the range as it is. A widened end is
226
+ * shown as said ({@link widenedGrain}). A look-back is the other kept-inside
227
+ * end: `[now − L, now + 1 ms)` holds the clock's now, so its label ends AT now,
228
+ * at the grain the person counted in — "last 40 minutes" is `8:00 – 8:40 AM`,
229
+ * never `8:40:00.001`. Only the label asks this: a look-back's end was not
230
+ * widened to a grain, so the said end (`forms.ts` · `saidEndMs`) keeps asking
231
+ * {@link widenedGrain}.
232
+ *
233
+ * @example
234
+ * ```ts
235
+ * shownGrain({ window: { kind: 'lookback', duration: '40m' }, grain: 'minute', notes: [] }); // 'minute'
236
+ * shownGrain({ window: { kind: 'range', range }, grain: 'hour', notes: [] }); // undefined — "8 AM to 9 AM"
237
+ * ```
238
+ */
239
+ export declare function shownGrain(candidate: Pick<TimeCandidate, 'notes' | 'grain' | 'window'>): Grain | undefined;
155
240
  /** The parts a candidate can name, in the order a record lists them. */
156
241
  export declare const PART_ORDER: readonly TimePart[];
157
242
  /** Whether `value` is a candidate this module would have written. */
@@ -17,6 +17,8 @@
17
17
  * @example
18
18
  * ```ts
19
19
  * readPolicy({ dateOrder: 'DMY' }); // { dateOrder: 'DMY', year: 'ask' }
20
+ * readPolicy({ abbreviations: { PST: { zone: 'America/Los_Angeles', offset: '-08:00' } } });
21
+ * // { dateOrder: 'ask', year: 'ask', abbreviations: { PST: { zone: 'America/Los_Angeles', offset: '-08:00' } } }
20
22
  * candidateIsWellFormed({ kind: 'range', range: { from: 'x', to: 'y' } }); // false
21
23
  * ```
22
24
  */
@@ -25,22 +27,71 @@ import { isZoneName } from './zone.js';
25
27
  /** No silent MDY, no guessed year. */
26
28
  export const DEFAULT_TIME_POLICY = Object.freeze({ dateOrder: 'ask', year: 'ask' });
27
29
  // ─── The policy ──────────────────────────────────────────────────────────
30
+ const isRecord = (value) => value !== null && typeof value === 'object' && !Array.isArray(value);
28
31
  const DATE_ORDERS = ['ask', 'MDY', 'DMY', 'YMD'];
29
32
  const YEAR_RULES = ['ask', 'current'];
33
+ const POLICY_KEYS = ['dateOrder', 'year', 'abbreviations'];
34
+ /** `±HH`, `±HHMM`, `±HH:MM` — a colon only between hours and minutes, never trailing. */
35
+ const OFFSET_TOKEN = /^([+-])(\d{2})(?::?(\d{2}))?$/;
36
+ /**
37
+ * A numeric offset as written (`-07`, `-0700`, `-07:00`) → minutes east of
38
+ * UTC and its `±HH:MM` spelling, or `undefined`. The one reader of an offset
39
+ * token: `resolve.ts` · `zoneReadsOf` (a said offset) and {@link readPolicy} (an
40
+ * abbreviation's literal offset) both ask it.
41
+ */
42
+ export function offsetOfToken(token) {
43
+ const m = OFFSET_TOKEN.exec(token);
44
+ if (m === null)
45
+ return undefined;
46
+ const hours = Number(m[2]);
47
+ const minutes = m[3] === undefined ? 0 : Number(m[3]);
48
+ if (hours > 23 || minutes > 59)
49
+ return undefined;
50
+ const total = (m[1] === '-' ? -1 : 1) * (hours * 60 + minutes);
51
+ return { minutes: total === 0 ? 0 : total, spelled: `${m[1]}${m[2]}:${m[3] ?? '00'}` };
52
+ }
53
+ /** An abbreviation key: letters only, as the person writes it (`PST`, `CEST`). */
54
+ const ABBREVIATION_KEY = /^[A-Za-z]{2,8}$/;
55
+ const MAX_ABBREVIATIONS = 256;
56
+ function readAbbreviations(value) {
57
+ const shape = "policy.abbreviations must map letters to { zone, offset } — { PST: { zone: 'America/Los_Angeles', offset: '-08:00' } }";
58
+ if (value === null || typeof value !== 'object' || Array.isArray(value))
59
+ return shape;
60
+ const entries = Object.entries(value);
61
+ if (entries.length === 0 || entries.length > MAX_ABBREVIATIONS)
62
+ return shape;
63
+ const out = {};
64
+ for (const [key, entry] of entries) {
65
+ if (!ABBREVIATION_KEY.test(key) || !isRecord(entry))
66
+ return shape;
67
+ if (Object.keys(entry).some((k) => k !== 'zone' && k !== 'offset'))
68
+ return shape;
69
+ if (!isZoneName(entry.zone)) {
70
+ return `policy.abbreviations.${key}.zone must be an IANA zone name such as 'America/Los_Angeles'`;
71
+ }
72
+ const offset = typeof entry.offset === 'string' ? offsetOfToken(entry.offset) : undefined;
73
+ if (offset === undefined) {
74
+ return `policy.abbreviations.${key}.offset must be a numeric offset such as '-08:00'`;
75
+ }
76
+ out[key] = Object.freeze({ zone: entry.zone, offset: offset.spelled });
77
+ }
78
+ return Object.freeze(out);
79
+ }
30
80
  /**
31
81
  * The app's `policy`, read with the v1 defaults filled in — or a problem in
32
- * words (an unknown key, a value outside its switch).
82
+ * words (an unknown key, a value outside its switch). `abbreviations` is kept
83
+ * only when given, so a policy without it reads byte-identical to v1's.
33
84
  */
34
85
  export function readPolicy(value) {
35
86
  if (value === undefined)
36
87
  return DEFAULT_TIME_POLICY;
37
88
  if (value === null || typeof value !== 'object' || Array.isArray(value)) {
38
- return 'policy must be an object — { dateOrder?, year? }';
89
+ return 'policy must be an object — { dateOrder?, year?, abbreviations? }';
39
90
  }
40
91
  const p = value;
41
- const extra = Object.keys(p).filter((k) => k !== 'dateOrder' && k !== 'year');
92
+ const extra = Object.keys(p).filter((k) => !POLICY_KEYS.includes(k));
42
93
  if (extra.length > 0) {
43
- return `policy takes { dateOrder?, year? } — unknown key ${extra
94
+ return `policy takes { dateOrder?, year?, abbreviations? } — unknown key ${extra
44
95
  .map((k) => `'${k}'`)
45
96
  .join(', ')}`;
46
97
  }
@@ -50,11 +101,51 @@ export function readPolicy(value) {
50
101
  if (p.year !== undefined && !YEAR_RULES.includes(p.year)) {
51
102
  return "policy.year must be 'ask' or 'current'";
52
103
  }
104
+ const abbreviations = p.abbreviations === undefined ? undefined : readAbbreviations(p.abbreviations);
105
+ if (typeof abbreviations === 'string')
106
+ return abbreviations;
53
107
  return Object.freeze({
54
108
  dateOrder: p.dateOrder ?? 'ask',
55
109
  year: p.year ?? 'ask',
110
+ ...(abbreviations !== undefined && { abbreviations }),
56
111
  });
57
112
  }
113
+ /**
114
+ * The grain a candidate's END was widened to, or `undefined` when its `to`
115
+ * is exact — the one answer to "was the end widened?" (§ 3.3). A label
116
+ * renders the end as said only then (`readingAsk.ts` · `timeAskOf`), and
117
+ * the said end is `to − 1 grain` only then (`forms.ts` · `saidEndMs`).
118
+ * `grain` alone is not the answer: "8 AM to 9 AM" is grain `hour` and ends
119
+ * AT `09:00`; a look-back is grain `hour` and ends at the clock's now.
120
+ *
121
+ * @example
122
+ * ```ts
123
+ * widenedGrain({ grain: 'minute', notes: [{ kind: 'end-of-grain' }] }); // 'minute' — [08:00, 08:41)
124
+ * widenedGrain({ grain: 'hour', notes: [] }); // undefined — [08:00, 09:00)
125
+ * ```
126
+ */
127
+ export function widenedGrain(candidate) {
128
+ return candidate.notes.some((n) => n.kind === 'end-of-grain') ? candidate.grain : undefined;
129
+ }
130
+ /**
131
+ * The grain a candidate's LABEL shows its end at (`readingAsk.ts` ·
132
+ * `timeAskOf`), or `undefined` to show the range as it is. A widened end is
133
+ * shown as said ({@link widenedGrain}). A look-back is the other kept-inside
134
+ * end: `[now − L, now + 1 ms)` holds the clock's now, so its label ends AT now,
135
+ * at the grain the person counted in — "last 40 minutes" is `8:00 – 8:40 AM`,
136
+ * never `8:40:00.001`. Only the label asks this: a look-back's end was not
137
+ * widened to a grain, so the said end (`forms.ts` · `saidEndMs`) keeps asking
138
+ * {@link widenedGrain}.
139
+ *
140
+ * @example
141
+ * ```ts
142
+ * shownGrain({ window: { kind: 'lookback', duration: '40m' }, grain: 'minute', notes: [] }); // 'minute'
143
+ * shownGrain({ window: { kind: 'range', range }, grain: 'hour', notes: [] }); // undefined — "8 AM to 9 AM"
144
+ * ```
145
+ */
146
+ export function shownGrain(candidate) {
147
+ return candidate.window.kind === 'lookback' ? candidate.grain : widenedGrain(candidate);
148
+ }
58
149
  // ─── The record's checks ─────────────────────────────────────────────────
59
150
  /** The parts a candidate can name, in the order a record lists them. */
60
151
  export const PART_ORDER = [
@@ -76,10 +167,10 @@ const OPEN = [
76
167
  'meridiem',
77
168
  'dst',
78
169
  'zone',
170
+ 'abbreviation',
79
171
  'parse',
80
172
  'confirm',
81
173
  ];
82
- const isRecord = (value) => value !== null && typeof value === 'object' && !Array.isArray(value);
83
174
  const isIndex = (value, below) => typeof value === 'number' && Number.isInteger(value) && value >= 0 && value < below;
84
175
  const isPartList = (value) => Array.isArray(value) && value.every((p) => PART_ORDER.includes(p));
85
176
  function isNote(value) {
@@ -96,6 +187,9 @@ function isNote(value) {
96
187
  return typeof value.offset === 'string';
97
188
  case 'century-implied':
98
189
  return typeof value.century === 'number';
190
+ case 'zone-read':
191
+ return (typeof value.token === 'string' &&
192
+ (value.as === 'place' || value.as === 'abbreviation' || value.as === 'abbreviation-literal'));
99
193
  default:
100
194
  return false;
101
195
  }
@@ -1 +1 @@
1
- {"version":3,"file":"resolveRecord.js","sourceRoot":"","sources":["../../../../src/core/time/resolveRecord.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"resolveRecord.js","sourceRoot":"","sources":["../../../../src/core/time/resolveRecord.ts"],"names":[],"mappings":"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"}
@@ -161,7 +161,7 @@ export interface PersonWindow extends TimeRange {
161
161
  }
162
162
  /**
163
163
  * Which window one call to a tool that declares period forms carries (time
164
- * design § 7.3) — one row per such call, filed by the inputs layer beside the
164
+ * design § 7.3) — one row per such call (two when the time ask filled it, below), filed by the inputs layer beside the
165
165
  * call's `argument` rows, before the call dispatches.
166
166
  *
167
167
  * | `how` | Means |
@@ -171,8 +171,8 @@ export interface PersonWindow extends TimeRange {
171
171
  * | `model-chosen` | the sent window (`asked`) differs from the person's (`person`, when one window is theirs): it ran as sent (the v1 law) |
172
172
  * | `model` | the sent window, and no window of the person's this turn |
173
173
  * | `unread` | a period argument was sent and no form reads the call back as a range |
174
- * | `not-filled` | the period was left out and nothing was filled (`why`) — the tool's own rule applied |
175
- * | `refused` | refused before dispatch (`refused`: a fact the window breaks, `multi-day`, `dst-gap` with its `argument`) — the call did not run |
174
+ * | `not-filled` | the period was left out and nothing was filled (`why`) — the tool's own rule applied (`no-exact-form` is no longer filed: a window no form holds is refused, `no-form-holds`; the word is kept so an older record reads) |
175
+ * | `refused` | refused before dispatch (`refused`: a fact the window breaks, `multi-day`, `no-form-holds`, `dst-gap` with its `argument`; no range at all when an open reading was refused in every reading) — the call did not run |
176
176
  *
177
177
  * `asked` is the half-open range the call asks for: the person's on a fill,
178
178
  * the sent value read back otherwise — what `ctx.time.asked` hands the tool.
@@ -181,6 +181,12 @@ export interface PersonWindow extends TimeRange {
181
181
  * not asked — `period-differs-from-asked`) or `trimmedByTool` (the tool
182
182
  * declares `filtersToAsked`). `partlyBeyondRetention` marks a window that
183
183
  * starts before the source's oldest data and ends after it: it dispatched.
184
+ *
185
+ * A call the time ask filled (the person confirmed or gave the window when
186
+ * asked what their words meant) has TWO rows: `not-filled` / `open-reading`
187
+ * before the ask, then `filled` with `person.source: 'answered'` when the
188
+ * answer is bound (`arguments/ask.ts` · `bindAnswer`). The LATEST row of a
189
+ * call is the window it runs with (`callWindowOfCall`).
184
190
  */
185
191
  export interface CallWindowRow {
186
192
  readonly kind: 'call-window';
@@ -303,10 +303,15 @@ function isCallWindowRow(row) {
303
303
  (row.form === undefined || formOk) &&
304
304
  (row.asked === undefined || askedOk) &&
305
305
  (row.person === undefined || isPersonWindow(row.person)) &&
306
- // A skipped wall time names its argument and has no range; every other refusal has a range.
306
+ // A skipped wall time names its argument and has no range. Every other refusal has a
307
+ // range — except an OPEN reading the tool can read in no reading (`bind.ts` ·
308
+ // `openReadingWindow`): no window was chosen, so it carries none, and no form or person.
307
309
  (row.refused === 'dst-gap'
308
310
  ? typeof row.argument === 'string' && formOk && row.asked === undefined
309
- : row.argument === undefined && askedOk));
311
+ : row.argument === undefined &&
312
+ (row.asked === undefined
313
+ ? row.form === undefined && row.person === undefined
314
+ : askedOk)));
310
315
  default:
311
316
  return only('why') && WHYS.includes(row.why);
312
317
  }
@@ -1 +1 @@
1
- {"version":3,"file":"rows.js","sourceRoot":"","sources":["../../../../src/core/time/rows.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"rows.js","sourceRoot":"","sources":["../../../../src/core/time/rows.ts"],"names":[],"mappings":"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"}
@@ -99,7 +99,7 @@ export function timeReadingRows(input) {
99
99
  return mentions.map((m, mention) => {
100
100
  if ('refused' in m)
101
101
  return { ...base, mention, refused: m.refused };
102
- const resolution = resolveMention(m.parses, clock, { id: reader.id, kind: reader.kind }, true);
102
+ const resolution = resolveMention(m.parses, clock, { id: reader.id, kind: reader.kind }, true, policy);
103
103
  return {
104
104
  ...base,
105
105
  mention,
@@ -1 +1 @@
1
- {"version":3,"file":"rowsBuild.js","sourceRoot":"","sources":["../../../../src/core/time/rowsBuild.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"rowsBuild.js","sourceRoot":"","sources":["../../../../src/core/time/rowsBuild.ts"],"names":[],"mappings":"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"}