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
@@ -53,7 +53,7 @@
53
53
  * ```
54
54
  */
55
55
  Object.defineProperty(exports, "__esModule", { value: true });
56
- exports.tzdataVersion = exports.wallToInstant = exports.readWall = exports.isWallTime = exports.offsetAt = exports.wallAt = exports.canonicalZone = exports.isZoneName = void 0;
56
+ exports.fixedOffsetZone = exports.zoneOfPlace = exports.tzdataVersion = exports.wallToInstant = exports.readWall = exports.isWallTime = exports.offsetAt = exports.wallAt = exports.canonicalZone = exports.isZoneName = void 0;
57
57
  const instant_js_1 = require("./instant.js");
58
58
  /** `Area/Location` (one or more `/`), or the two single-word names that are not abbreviations of anything. */
59
59
  const IANA_SHAPE = /^(?:[A-Za-z][A-Za-z0-9_+-]*(?:\/[A-Za-z0-9_+-]+)+|UTC|GMT)$/;
@@ -250,4 +250,108 @@ function tzdataVersion() {
250
250
  return typeof tz === 'string' && tz.length > 0 && tz.length <= 32 ? tz : 'unknown';
251
251
  }
252
252
  exports.tzdataVersion = tzdataVersion;
253
+ // ─── Zones named in words (data from the tz database, never a word list) ─
254
+ /** The areas a place's zone is looked up under (`Etc` and the legacy `US/…` links are not places). */
255
+ const PLACE_AREAS = [
256
+ 'Africa',
257
+ 'America',
258
+ 'Antarctica',
259
+ 'Asia',
260
+ 'Atlantic',
261
+ 'Australia',
262
+ 'Europe',
263
+ 'Indian',
264
+ 'Pacific',
265
+ ];
266
+ const PLACE_KEY = /^[A-Za-z][A-Za-z'.-]*(?:_[A-Za-z][A-Za-z'.-]*){0,3}$/;
267
+ const placeMemo = new Map();
268
+ let placeIndex;
269
+ /** Last segment (lower case) → the runtime's zones that end in it, from `Intl.supportedValuesOf`. */
270
+ function placeIndexOf() {
271
+ if (placeIndex !== undefined)
272
+ return placeIndex;
273
+ const index = new Map();
274
+ const supported = Intl.supportedValuesOf;
275
+ let names = [];
276
+ try {
277
+ names = typeof supported === 'function' ? supported('timeZone') : [];
278
+ }
279
+ catch {
280
+ names = [];
281
+ }
282
+ for (const name of names) {
283
+ const area = name.slice(0, name.indexOf('/'));
284
+ if (!PLACE_AREAS.includes(area))
285
+ continue;
286
+ const last = name.slice(name.lastIndexOf('/') + 1).toLowerCase();
287
+ index.set(last, [...(index.get(last) ?? []), name]);
288
+ }
289
+ placeIndex = index;
290
+ return index;
291
+ }
292
+ /**
293
+ * The ONE zone a place name names in this runtime's tz database, or
294
+ * `undefined` when it names none or more than one. `London` → `Europe/London`,
295
+ * `New York` → `America/New_York`; `India`, `Pacific`, `Eastern` → `undefined`
296
+ * (no zone ends in them — a region is not a place). Looked up two ways, both
297
+ * the tz database's own data: the zones whose last segment is the place, and
298
+ * `Area/Place` under each geographic area (which admits a renamed city's link,
299
+ * `Kyiv`). Every hit is compared by its canonical name, so a link and its
300
+ * target are one zone. Memoised; the runtime's database does not change.
301
+ *
302
+ * @example
303
+ * ```ts
304
+ * zoneOfPlace('London'); // 'Europe/London'
305
+ * zoneOfPlace('New York'); // 'America/New_York'
306
+ * zoneOfPlace('India'); // undefined — asked, never guessed
307
+ * ```
308
+ */
309
+ function zoneOfPlace(place) {
310
+ const key = place.trim().replace(/\s+/g, '_');
311
+ if (key.length > 32 || !PLACE_KEY.test(key))
312
+ return undefined;
313
+ const memo = placeMemo.get(key.toLowerCase());
314
+ if (memo !== undefined)
315
+ return memo ?? undefined;
316
+ const found = new Set();
317
+ for (const name of placeIndexOf().get(key.toLowerCase()) ?? []) {
318
+ found.add(canonicalZone(name) ?? name);
319
+ }
320
+ for (const area of PLACE_AREAS) {
321
+ const name = canonicalZone(`${area}/${key}`);
322
+ if (name !== undefined)
323
+ found.add(name);
324
+ }
325
+ const zone = found.size === 1 ? [...found][0] : undefined;
326
+ if (placeMemo.size >= MAX_CACHED)
327
+ placeMemo.clear();
328
+ placeMemo.set(key.toLowerCase(), zone ?? null);
329
+ return zone;
330
+ }
331
+ exports.zoneOfPlace = zoneOfPlace;
332
+ /**
333
+ * The IANA zone that is a fixed offset, for a whole-hour offset the tz
334
+ * database names (`Etc/GMT+8` is −08:00 — POSIX signs, inverted), else
335
+ * `undefined`. How a window read at a literal offset, or typed with one no
336
+ * other zone shows, names its zone without claiming a place's.
337
+ *
338
+ * @example
339
+ * ```ts
340
+ * fixedOffsetZone(-480); // 'Etc/GMT+8'
341
+ * fixedOffsetZone(0); // 'UTC'
342
+ * fixedOffsetZone(330); // undefined — no Etc zone for +05:30
343
+ * ```
344
+ */
345
+ function fixedOffsetZone(minutes) {
346
+ if (minutes === 0)
347
+ return 'UTC';
348
+ if (!Number.isInteger(minutes) || minutes % 60 !== 0)
349
+ return undefined;
350
+ const hours = minutes / 60;
351
+ if (hours < -12 || hours > 14)
352
+ return undefined;
353
+ const name = `Etc/GMT${hours < 0 ? '+' : '-'}${Math.abs(hours)}`;
354
+ return isZoneName(name) ? name : undefined;
355
+ }
356
+ exports.fixedOffsetZone = fixedOffsetZone;
253
357
  //# sourceMappingURL=zone.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"zone.js","sourceRoot":"","sources":["../../../src/core/time/zone.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"zone.js","sourceRoot":"","sources":["../../../src/core/time/zone.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,73 @@
1
+ "use strict";
2
+ /**
3
+ * agentfootprint/time — the conversion the time layer itself asks, for an app
4
+ * that needs the same answer OUTSIDE a run.
5
+ *
6
+ * Under `.time()` the library writes the person's window into a tool's own
7
+ * arguments (the fill, the time ask's choices, the served line). An app that
8
+ * previews what a tool would read, or builds a call itself, asks the SAME
9
+ * question the run asks — and gets the library's answer, not a copy that
10
+ * drifts:
11
+ *
12
+ * - `convertForTool` — THE answer: can this tool read this window, and how.
13
+ * The tool's facts first (a fact it breaks → `{ refused }`), then the
14
+ * first form that holds the window exactly, then the first that holds it
15
+ * by reading MORE within the tool's `maxRange`, then `multi-day` for a
16
+ * `day`-only tool, else `no-form-holds`; a window partly older than
17
+ * `retention` converts, marked `partlyBeyondRetention`. The time ask and
18
+ * the bind ask this function (`convert.ts` · `convertForTool`).
19
+ * - the tool's own declaration, read the run's way: `sugarForms(period)` is
20
+ * the forms a `period` declares (its `forms`, else the `argument` +
21
+ * `spelling`/`accepts` sugar); `granularityMsOf(period)` is the clock's
22
+ * `granularityMs` (its `granularity`, else one minute); `widestMsOf(period)`
23
+ * is its `maxRange` in milliseconds. A tool's `period` IS its facts — pass
24
+ * it whole.
25
+ * - the parts, for a caller that needs one step alone: `convertExact`,
26
+ * `convertWidened` (asked only AFTER `convertExact` finds nothing — it does
27
+ * not look for an exact form first), `periodFactProblem`.
28
+ * - time for a PERSON, as the run writes it: `presentRange(range, { zone,
29
+ * locale? }, grain?)` — the label the time ask and the served line use (a
30
+ * half-open range with its end as said, the zone always named), so an
31
+ * app's panel shows the run's own words; and `isZoneName(value)` — the
32
+ * run's zone check (an IANA name; `PST` and a bare offset are refused,
33
+ * although `Intl` takes them), for a session zone before it is passed as
34
+ * `time.zone`.
35
+ *
36
+ * Pure functions over a clock the caller passes: no run, no record, no
37
+ * `.time()`. A door of its own because the conversions are the time layer's
38
+ * RUN-TIME half, which a plain agent never loads (`src/core/time/README.md` ·
39
+ * "What a plain agent carries"; pinned by
40
+ * `test/lib/trace-toolpack/browserGraph.test.ts`): on the main barrel they
41
+ * would put that half on every consumer's default graph. The shapes they take
42
+ * (`PeriodForm`, `PeriodFacts`, `TimeRange`, `ToolPeriod`) are on the main
43
+ * barrel.
44
+ *
45
+ * @example
46
+ * ```ts
47
+ * import { convertForTool, granularityMsOf, sugarForms } from 'agentfootprint/time';
48
+ *
49
+ * // The tool's own declaration — `defineTool({ …, period })`.
50
+ * const period = { argument: 'window', spelling: 'lookback', direction: 'past', maxRange: '24h' } as const;
51
+ * const clock = { now: '2026-10-09T15:40:00Z', zone: 'America/Los_Angeles', granularityMs: granularityMsOf(period) };
52
+ * const yesterday = { from: '2026-10-08T00:00:00-07:00', to: '2026-10-09T00:00:00-07:00' };
53
+ *
54
+ * convertForTool({ range: yesterday }, sugarForms(period), period, clock);
55
+ * // { refused: 'no-form-holds' } — reaching 8 Oct from now takes a look-back wider than 24h
56
+ * ```
57
+ */
58
+ Object.defineProperty(exports, "__esModule", { value: true });
59
+ exports.isZoneName = exports.presentRange = exports.sugarForms = exports.periodFactProblem = exports.widestMsOf = exports.granularityMsOf = exports.convertWidened = exports.convertForTool = exports.convertExact = void 0;
60
+ var convert_js_1 = require("../core/time/convert.js");
61
+ Object.defineProperty(exports, "convertExact", { enumerable: true, get: function () { return convert_js_1.convertExact; } });
62
+ Object.defineProperty(exports, "convertForTool", { enumerable: true, get: function () { return convert_js_1.convertForTool; } });
63
+ Object.defineProperty(exports, "convertWidened", { enumerable: true, get: function () { return convert_js_1.convertWidened; } });
64
+ Object.defineProperty(exports, "granularityMsOf", { enumerable: true, get: function () { return convert_js_1.granularityMsOf; } });
65
+ Object.defineProperty(exports, "widestMsOf", { enumerable: true, get: function () { return convert_js_1.widestMsOf; } });
66
+ var periodForm_js_1 = require("../core/time/periodForm.js");
67
+ Object.defineProperty(exports, "periodFactProblem", { enumerable: true, get: function () { return periodForm_js_1.periodFactProblem; } });
68
+ Object.defineProperty(exports, "sugarForms", { enumerable: true, get: function () { return periodForm_js_1.sugarForms; } });
69
+ var present_js_1 = require("../core/time/present.js");
70
+ Object.defineProperty(exports, "presentRange", { enumerable: true, get: function () { return present_js_1.presentRange; } });
71
+ var zone_js_1 = require("../core/time/zone.js");
72
+ Object.defineProperty(exports, "isZoneName", { enumerable: true, get: function () { return zone_js_1.isZoneName; } });
73
+ //# sourceMappingURL=time.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"time.js","sourceRoot":"","sources":["../../src/doors/time.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAuDG;;;AAEH,sDAWiC;AAV/B,0GAAA,YAAY,OAAA;AACZ,4GAAA,cAAc,OAAA;AACd,4GAAA,cAAc,OAAA;AACd,6GAAA,eAAe,OAAA;AACf,wGAAA,UAAU,OAAA;AAOZ,4DAMoC;AALlC,kHAAA,iBAAiB,OAAA;AACjB,2GAAA,UAAU,OAAA;AAKZ,sDAAsF;AAA7E,0GAAA,YAAY,OAAA;AACrB,gDAAiE;AAAxD,qGAAA,UAAU,OAAA"}
@@ -4286,12 +4286,14 @@ export class Agent extends RunnerBase {
4286
4286
  // The inputs layer (honesty layer 2): the same site decorates a ruled
4287
4287
  // tool's schema first — value-conditional, the same grammar.
4288
4288
  ...(inputsArmed && { inputsLayer: true }),
4289
- // …and, under `.time({ reader })` (step T6b), the ONE served time sentence on each tool
4290
- // that declares a period: the windows the reader settled this turn, in that tool's form.
4289
+ // …and, under `.time()`, the ONE served time line on each tool that declares a period: the
4290
+ // windows the reader settled this turn (`.time({ reader })`, step T6b) and the window the
4291
+ // person set in the app's time control (`time.window`), in that tool's form.
4291
4292
  ...(inputsArmed &&
4292
- this.timeOptions?.reader !== undefined && {
4293
+ this.timeOptions !== undefined && {
4293
4294
  timeWindows: {
4294
4295
  ...(this.timeOptions.zone !== undefined && { appZone: this.timeOptions.zone }),
4296
+ ...(this.timeOptions.reader !== undefined && { reader: true }),
4295
4297
  },
4296
4298
  }),
4297
4299
  // …and, under `.time()` (step T8), the turn's time limits in the same line.