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
@@ -56,10 +56,14 @@ Object.defineProperty(exports, "__esModule", { value: true });
56
56
  exports.settledCalls = exports.WINDOW_ZONE_EXPECTATION = exports.WINDOW_FORM_EXPECTATION = exports.bindAnswer = exports.factExpectation = exports.checkAnswer = exports.memberValue = exports.readAskAnswer = exports.isArgumentAsk = exports.withWaiting = exports.argumentAskDeclaration = exports.judgeAskContextHook = exports.nextAskRound = exports.initialAskState = exports.planAskFields = exports.periodsShareField = exports.convertSpelling = exports.ARGUMENT_REASK_QUESTION = exports.ARGUMENT_ASK_QUESTION = exports.ARGUMENT_ASK_ID = exports.ASK_CONTEXT_CHARS = exports.MAX_ASK_FIELDS = exports.MAX_ASK_ROUNDS = exports.ASK_CONTEXT_KEY = exports.ARGUMENT_ASK_KIND = void 0;
57
57
  const inputRequest_js_1 = require("../../inputRequest.js");
58
58
  const convert_js_1 = require("../../time/convert.js");
59
+ const windows_js_1 = require("../../time/windows.js");
60
+ const rowsBuild_js_1 = require("../../time/rowsBuild.js");
61
+ const instant_js_1 = require("../../time/instant.js");
59
62
  const range_js_1 = require("../../time/range.js");
60
63
  const resolve_js_1 = require("../../time/resolve.js");
61
64
  const readingAsk_js_1 = require("../../time/readingAsk.js");
62
65
  const rows_js_1 = require("../../time/rows.js");
66
+ const zone_js_1 = require("../../time/zone.js");
63
67
  const toolShownArgs_js_1 = require("../../toolShownArgs.js");
64
68
  const toolArgsValidation_js_1 = require("../toolArgsValidation.js");
65
69
  const declare_js_1 = require("./declare.js");
@@ -89,21 +93,50 @@ exports.ARGUMENT_ASK_QUESTION = 'Before the next step can run, a few values are
89
93
  /** The question of a re-ask, after an answer that did not fit the tool's own schema. */
90
94
  exports.ARGUMENT_REASK_QUESTION = 'One answer did not fit what the tool accepts. Please answer that field again.';
91
95
  /**
92
- * The indexes of the choices EVERY member tool's declared facts allow (§ 6.3:
93
- * "some readings inside the tool's `direction` → the ones inside as choices")
94
- * — `undefined` when none is left (several tools that disagree: every choice
95
- * is offered, and the answer is judged against each tool's facts).
96
+ * Why one member tool cannot read a window the ask would put into it — the
97
+ * one owner's answer (`core/time/convert.ts` · `convertForTool`: a fact it
98
+ * breaks, `multi-day`, or `no-form-holds`) — or `undefined` when it can. A
99
+ * tool whose rules cannot be read has nothing to say here.
96
100
  */
97
- function allowedChoices(choices, members, toolOf, now) {
98
- const factsOf = [...new Set(members.map((m) => m.toolName))].map((name) => {
99
- const rules = (0, declare_js_1.rulesOf)(toolOf(name));
100
- return rules === undefined || (0, declare_js_1.isRefused)(rules) ? {} : (0, declare_js_1.periodFactsOf)(rules.period);
101
+ function unreadableBy(toolName, range, zone, toolOf, time) {
102
+ const rules = (0, declare_js_1.rulesOf)(toolOf(toolName));
103
+ if (rules === undefined || (0, declare_js_1.isRefused)(rules))
104
+ return undefined;
105
+ const facts = (0, declare_js_1.periodFactsOf)(rules.period);
106
+ const at = zone ?? time.zone;
107
+ if (at === undefined) {
108
+ // No form chosen yet: the tool's facts, `maxRange` the widest any form reads (`toolFacts`).
109
+ const judged = (0, convert_js_1.toolFacts)((0, declare_js_1.periodFormsOf)(rules.period), facts);
110
+ const problem = (0, convert_js_1.periodFactProblem)(range, judged, time.now);
111
+ return problem === undefined ? undefined : { refused: problem, facts: judged };
112
+ }
113
+ const read = (0, convert_js_1.convertForTool)({ range }, (0, declare_js_1.periodFormsOf)(rules.period), facts, {
114
+ now: time.now,
115
+ zone: at,
116
+ ...(time.appZone !== undefined && { appZone: time.appZone }),
117
+ granularityMs: (0, convert_js_1.granularityMsOf)(facts),
101
118
  });
119
+ return 'refused' in read
120
+ ? { refused: read.refused, facts: (0, convert_js_1.toolFacts)((0, declare_js_1.periodFormsOf)(rules.period), facts) }
121
+ : undefined;
122
+ }
123
+ /**
124
+ * The indexes of the choices EVERY member tool can read (§ 6.3: "some
125
+ * readings inside the tool's `direction` → the ones inside as choices" — and,
126
+ * by the same law, a reading no form of the tool can hold is not offered) —
127
+ * `undefined` when none is left (several tools that disagree: every choice
128
+ * is offered, and the answer is judged against each tool).
129
+ */
130
+ function allowedChoices(choices, zones, members, toolOf, time) {
131
+ const names = [...new Set(members.map((m) => m.toolName))];
102
132
  const kept = choices.flatMap((value, i) => {
103
133
  const range = (0, range_js_1.parseRange)(value);
104
134
  if (range === undefined)
105
135
  return [];
106
- return factsOf.every((facts) => (0, convert_js_1.periodFactProblem)(range, facts, now) === undefined) ? [i] : [];
136
+ const zone = zones?.[i];
137
+ return names.every((name) => unreadableBy(name, range, zone, toolOf, time) === undefined)
138
+ ? [i]
139
+ : [];
107
140
  });
108
141
  return kept.length > 0 ? kept : undefined;
109
142
  }
@@ -269,7 +302,7 @@ function planAskFields(asks, calls, toolOf, windowPlan) {
269
302
  const window = windowFieldOf(windowPlan, windowMembers);
270
303
  const kept = window.choices === undefined
271
304
  ? undefined
272
- : allowedChoices(window.choices, window.members, toolOf, windowPlan.now);
305
+ : allowedChoices(window.choices, windowPlan.zones, window.members, toolOf, windowPlan);
273
306
  return [narrowed(window, kept), ...fields];
274
307
  }
275
308
  exports.planAskFields = planAskFields;
@@ -542,23 +575,118 @@ function factBroken(toolOf, member, value, time) {
542
575
  const rules = (0, declare_js_1.rulesOf)(toolOf(member.toolName));
543
576
  if (rules === undefined || (0, declare_js_1.isRefused)(rules))
544
577
  return undefined;
545
- const facts = (0, declare_js_1.periodFactsOf)(rules.period);
546
- if (facts.direction === undefined &&
547
- facts.retention === undefined &&
548
- facts.maxRange === undefined) {
578
+ const declared = (0, declare_js_1.periodFactsOf)(rules.period);
579
+ const forms = (0, declare_js_1.periodFormsOf)(rules.period);
580
+ if (!declaresFacts(declared, forms))
549
581
  return undefined;
550
- }
551
- for (const form of (0, declare_js_1.periodFormsOf)(rules.period)) {
582
+ for (const form of forms) {
552
583
  if (form.kind === 'bounds' || form.kind === 'object' || form.argument !== member.argument)
553
584
  continue;
554
585
  const range = (0, convert_js_1.readBack)({ [member.argument]: value }, form, time);
555
586
  if (range === undefined)
556
587
  continue;
588
+ // Read back through THIS form, so held to this form's own `maxRange` (`formFacts`).
589
+ const facts = (0, convert_js_1.formFacts)(form, declared);
557
590
  const problem = (0, convert_js_1.periodFactProblem)(range, facts, time.now);
558
591
  return problem === undefined ? undefined : { problem, facts };
559
592
  }
560
593
  return undefined;
561
594
  }
595
+ /** Whether a tool declares any fact a range can break — a period fact, or a form's own `maxRange`. */
596
+ function declaresFacts(facts, forms) {
597
+ return (facts.direction !== undefined ||
598
+ facts.retention !== undefined ||
599
+ facts.maxRange !== undefined ||
600
+ forms.some((f) => f.maxRange !== undefined));
601
+ }
602
+ /**
603
+ * The period fields whose answers break a tool's fact only TOGETHER — one
604
+ * bound of two (`start_time`, `end_time`) is no window, so {@link checkAnswer}
605
+ * cannot judge it alone (`factBroken` reads single-argument forms only). Per
606
+ * call, the answers this pass carries and the ones an earlier round bound are
607
+ * written over the call's own arguments; every `bounds` / `object` form whose
608
+ * arguments are then all present is read back (`convert.ts` · `readBack`) and
609
+ * judged against `direction`, `retention` and `maxRange` at the turn's clock
610
+ * (`periodFactProblem`). A pair that breaks one sends each of its fields
611
+ * asked in this pass back to be asked again, naming the fact; a pair whose
612
+ * bounds are all present yet name no window (the end given before the start)
613
+ * goes back the same way, naming the window form — the same
614
+ * bounded re-ask a single argument gets, so a future start and end the
615
+ * person gave never reach a tool whose source holds only the past, with or
616
+ * without the reader.
617
+ */
618
+ function pairsBroken(state, values, byId, toolOf, time) {
619
+ const broken = new Map();
620
+ const waiting = state.waiting;
621
+ if (time === undefined || waiting === undefined)
622
+ return broken;
623
+ const now = new Map(waiting.fieldIndexes.map((index, k) => [index, values[`f${k + 1}`]]));
624
+ // Per call: its tool, and each period argument's answer with the field it came from.
625
+ const perCall = new Map();
626
+ state.fields.forEach((field, index) => {
627
+ if (field.window !== undefined)
628
+ return;
629
+ const answer = now.has(index) ? now.get(index) : state.progress[index]?.answer;
630
+ if (answer === undefined)
631
+ return;
632
+ for (const member of field.members) {
633
+ if (member.period !== true)
634
+ continue;
635
+ const value = memberValue(field, member, answer);
636
+ if (value === undefined)
637
+ continue;
638
+ for (const id of member.toolCallIds) {
639
+ const entry = perCall.get(id) ?? { toolName: member.toolName, answers: new Map() };
640
+ entry.answers.set(member.argument, { value, field: index });
641
+ perCall.set(id, entry);
642
+ }
643
+ }
644
+ });
645
+ for (const [id, { toolName, answers }] of perCall) {
646
+ const call = byId.get(id);
647
+ const rules = (0, declare_js_1.rulesOf)(toolOf(toolName));
648
+ if (call === undefined || rules === undefined || (0, declare_js_1.isRefused)(rules))
649
+ continue;
650
+ const declared = (0, declare_js_1.periodFactsOf)(rules.period);
651
+ if (!declaresFacts(declared, (0, declare_js_1.periodFormsOf)(rules.period)))
652
+ continue;
653
+ const args = { ...call.args };
654
+ for (const [argument, { value }] of answers)
655
+ args[argument] = value;
656
+ for (const form of (0, declare_js_1.periodFormsOf)(rules.period)) {
657
+ if (form.kind !== 'bounds' && form.kind !== 'object')
658
+ continue;
659
+ // A zone argument the rule assumes is not in the call yet; `readBack` answers without one.
660
+ const names = (0, convert_js_1.formArguments)(form).map((a) => a.argument);
661
+ const bounds = (0, convert_js_1.formArguments)(form).filter((a) => a.role !== 'zone');
662
+ const asked = names.filter((a) => answers.has(a));
663
+ if (asked.length === 0 || bounds.some((a) => args[a.argument] === undefined))
664
+ continue;
665
+ const range = (0, convert_js_1.readBack)(args, form, time);
666
+ // Every bound is present: no range means the pair names no window (a start not before its
667
+ // end, a misspelled bound) — never "no problem", or it reaches the tool unjudged. Only a
668
+ // zone still to come leaves the pair for the zone's own ask.
669
+ const facts = (0, convert_js_1.formFacts)(form, declared);
670
+ const expectation = range !== undefined
671
+ ? pairExpectation((0, convert_js_1.periodFactProblem)(range, facts, time.now), facts)
672
+ : (0, convert_js_1.readBackLacksZone)(args, form, time)
673
+ ? undefined
674
+ : exports.WINDOW_FORM_EXPECTATION;
675
+ if (expectation === undefined)
676
+ continue;
677
+ for (const a of asked) {
678
+ const field = answers.get(a).field;
679
+ if (now.has(field) && !broken.has(field))
680
+ broken.set(field, expectation);
681
+ }
682
+ }
683
+ }
684
+ return broken;
685
+ }
686
+ /** A pair's fact problem in the refusal's words — `undefined` when the pair breaks none. */
687
+ function pairExpectation(problem, facts) {
688
+ return problem === undefined ? undefined : factExpectation(problem, facts);
689
+ }
562
690
  // LENS · tool-result · persistent-history (through `serve.ts` · `unansweredRefusal`)
563
691
  // reads: the tool's declared fact the person's answers kept breaking, and its declared value
564
692
  // law: names the rule, never the answer; a fact about the source, in the present tense of the source.
@@ -595,6 +723,7 @@ function bindAnswer(state, values, calls, toolOf, stamp, time) {
595
723
  const byId = new Map(calls.map((c) => [c.id, c]));
596
724
  const progress = [...state.progress];
597
725
  const rows = [];
726
+ const pairs = pairsBroken(state, values, byId, toolOf, time);
598
727
  const fields = [...state.fields];
599
728
  waiting.fieldIndexes.forEach((index, k) => {
600
729
  const field = state.fields[index];
@@ -612,6 +741,12 @@ function bindAnswer(state, values, calls, toolOf, stamp, time) {
612
741
  rows.push(...windowAnsweredRows(field, bound.fills, byId, toolOf, stamp));
613
742
  // The person's window for the mention — the only door a window of words becomes theirs.
614
743
  rows.push((0, rows_js_1.timeAnswerRow)({ mention: field.window.mention, ...bound.answered }, stamp));
744
+ // Each filled call's window, as it will run: the person's answer, exactly or WIDER (the
745
+ // covering look-back's `sent` and `extra`) — the call's latest `call-window` row, so the
746
+ // clock at dispatch, `ctx.time` and the result checks read the window the call carries.
747
+ for (const [toolCallId, { toolName, decision }] of Object.entries(bound.filled)) {
748
+ rows.push((0, rowsBuild_js_1.callWindowRow)({ toolCallId, toolName }, decision, stamp));
749
+ }
615
750
  return;
616
751
  }
617
752
  if ('outside' in bound) {
@@ -626,7 +761,10 @@ function bindAnswer(state, values, calls, toolOf, stamp, time) {
626
761
  rows.push(...memberCalls(field).map((who) => (0, rows_js_2.askedRowOf)(who, stamp, 'invalid-answer')));
627
762
  return;
628
763
  }
629
- const check = answer === undefined ? { fits: false } : checkAnswer(field, answer, toolOf, time);
764
+ const alone = answer === undefined ? { fits: false } : checkAnswer(field, answer, toolOf, time);
765
+ // An answer that fits alone can still break a fact with the other bound of its window.
766
+ const pair = pairs.get(index);
767
+ const check = alone.fits && pair !== undefined ? { fits: false, expected: pair } : alone;
630
768
  if (answer !== undefined && check.fits) {
631
769
  progress[index] = { rounds: was.rounds, answer };
632
770
  rows.push(...answeredRows(field, answer, byId, toolOf, stamp));
@@ -672,7 +810,7 @@ function bindWindowAnswer(field, answer, byId, toolOf, time) {
672
810
  }
673
811
  const row = reading.row;
674
812
  // The re-read stays a PROPOSAL: the zone was the person's, the window is still words.
675
- const resolution = (0, resolve_js_1.resolveMention)((0, resolve_js_1.withZoneAnswered)(row.parses ?? [], answer), { now: time.now, zone: time.zone }, row.reader, true);
813
+ const resolution = (0, resolve_js_1.resolveMention)((0, resolve_js_1.withZoneAnswered)(row.parses ?? [], answer, reading.policy), { now: time.now, zone: time.zone }, row.reader, true, reading.policy);
676
814
  const choice = (0, resolve_js_1.chooseReading)(resolution, reading.policy, row.reader.kind, undefined, true);
677
815
  if (choice.by === 'open') {
678
816
  const ask = (0, readingAsk_js_1.timeAskOf)({ ...row, candidates: resolution.candidates, choice }, reading.messages);
@@ -692,10 +830,10 @@ function bindWindowAnswer(field, answer, byId, toolOf, time) {
692
830
  },
693
831
  };
694
832
  const choices = (ask.field.enum ?? []);
695
- const kept = allowedChoices(choices, field.members, toolOf, time.now);
833
+ const kept = allowedChoices(choices, zones, field.members, toolOf, time);
696
834
  if (kept === undefined && field.members.length > 0) {
697
- // Every reading breaks a member tool's facts: nothing is asked (§ 6.3) — the reason.
698
- const outside = factOutside(choices, field.members, toolOf, time.now);
835
+ // A member tool can read no reading: nothing is asked (§ 6.3) — the reason.
836
+ const outside = readingsOutside(choices, zones, field.members, toolOf, time);
699
837
  if (outside !== undefined)
700
838
  return { outside };
701
839
  }
@@ -707,57 +845,109 @@ function bindWindowAnswer(field, answer, byId, toolOf, time) {
707
845
  if (range === undefined)
708
846
  return { expected: exports.WINDOW_FORM_EXPECTATION };
709
847
  const at = field.choices?.indexOf(answer) ?? -1;
710
- const zone = (at >= 0 ? window.zones?.[at] : undefined) ?? time.zone;
848
+ const zone = at >= 0 ? window.zones?.[at] ?? time.zone : editedZone(range, window.zones, time.zone);
711
849
  if (zone === undefined)
712
850
  return { expected: exports.WINDOW_FORM_EXPECTATION };
713
851
  const bound = windowFills(field, range, zone, byId, toolOf, time);
714
852
  if (!('fills' in bound))
715
853
  return bound;
716
- return { fills: bound.fills, answered: { range, zone, how: at >= 0 ? 'confirmed' : 'edited' } };
854
+ return {
855
+ fills: bound.fills,
856
+ filled: bound.filled,
857
+ answered: { range, zone, how: at >= 0 ? 'confirmed' : 'edited' },
858
+ };
859
+ }
860
+ /**
861
+ * The zone a window the person TYPED is recorded in: the first of the
862
+ * offered readings' zones — then the app's — whose offsets at both ends are
863
+ * the ones typed; else the fixed-offset zone the typed offsets spell
864
+ * (`Etc/GMT-1` for `+01:00`, `zone.ts` · `fixedOffsetZone`); else the app's.
865
+ * A London day typed with `+01:00` under an app in Los Angeles is recorded
866
+ * in Europe/London (the zone the mention named), never in the app's zone.
867
+ */
868
+ function editedZone(range, offered, appZone) {
869
+ const from = (0, instant_js_1.instantOf)(range.from, 'lenient');
870
+ const to = (0, instant_js_1.instantOf)(range.to, 'lenient');
871
+ if (from === undefined || to === undefined)
872
+ return appZone;
873
+ const shows = (zone) => (0, zone_js_1.offsetAt)(zone, from.ms) === from.offsetMinutes && (0, zone_js_1.offsetAt)(zone, to.ms) === to.offsetMinutes;
874
+ const zones = [...(offered ?? []), ...(appZone !== undefined ? [appZone] : [])];
875
+ const match = zones.find(shows);
876
+ if (match !== undefined)
877
+ return match;
878
+ const fixed = from.offsetMinutes === to.offsetMinutes ? (0, zone_js_1.fixedOffsetZone)(from.offsetMinutes) : undefined;
879
+ return fixed ?? appZone;
717
880
  }
718
- /** What the first reading breaks, when EVERY reading breaks one member tool's facts — the refusal's words. */
719
- function factOutside(choices, members, toolOf, now) {
881
+ /** Why the first reading cannot be read, when ONE member tool can read no reading at all — the refusal's words. */
882
+ function readingsOutside(choices, zones, members, toolOf, time) {
720
883
  for (const name of new Set(members.map((m) => m.toolName))) {
721
- const rules = (0, declare_js_1.rulesOf)(toolOf(name));
722
- if (rules === undefined || (0, declare_js_1.isRefused)(rules))
723
- continue;
724
- const facts = (0, declare_js_1.periodFactsOf)(rules.period);
725
- const problems = choices.map((value) => {
884
+ const reasons = choices.map((value, i) => {
726
885
  const range = (0, range_js_1.parseRange)(value);
727
- return range === undefined ? undefined : (0, convert_js_1.periodFactProblem)(range, facts, now);
886
+ return range === undefined ? undefined : unreadableBy(name, range, zones[i], toolOf, time);
728
887
  });
729
- const first = problems[0];
730
- if (first !== undefined && problems.every((p) => p !== undefined)) {
731
- return factExpectation(first, facts);
888
+ const first = reasons[0];
889
+ if (first !== undefined && reasons.every((r) => r !== undefined)) {
890
+ return refusalExpectation(first.refused, first.facts);
732
891
  }
733
892
  }
734
893
  return undefined;
735
894
  }
736
- /** The window written into every member call's forms, after each tool's facts — or what it failed. */
895
+ /** What an answer must be, in the refusal's words, when a tool cannot read it: its fact, else a form that holds it. */
896
+ function refusalExpectation(refused, facts) {
897
+ return refused === 'time-future' ||
898
+ refused === 'time-past' ||
899
+ refused === 'beyond-retention' ||
900
+ refused === 'over-max-range'
901
+ ? factExpectation(refused, facts)
902
+ : exports.WINDOW_FORM_EXPECTATION;
903
+ }
904
+ /**
905
+ * The window written into every member call's forms — the one owner's answer
906
+ * per tool (`core/time/convert.ts` · `convertForTool`: exactly, else wider,
907
+ * after the tool's facts) — or what it failed. Each fill also carries the
908
+ * decision its `call-window` row records (`filled`, the person's ANSWERED
909
+ * window, with the wider read's `sent` and `extra`).
910
+ */
737
911
  function windowFills(field, range, zone, byId, toolOf, time) {
738
912
  const fills = {};
913
+ const filled = {};
914
+ // The offered look-back, picked as offered, stays a look-back from now — the same window the
915
+ // served line and a later call's fill convert (`windows.ts` · `windowToConvert`), so the value
916
+ // this call is handed and the value the model is told are one spelling.
917
+ const lookback = (0, windows_js_1.offeredLookback)(time.reading?.row, range);
918
+ const answered = {
919
+ source: 'answered',
920
+ mention: field.window.mention,
921
+ range,
922
+ ...(lookback !== undefined && { lookback }),
923
+ zone,
924
+ };
739
925
  for (const member of field.members) {
740
926
  const rules = (0, declare_js_1.rulesOf)(toolOf(member.toolName));
741
927
  if (rules === undefined || (0, declare_js_1.isRefused)(rules))
742
928
  return { expected: exports.WINDOW_FORM_EXPECTATION };
743
929
  const forms = (0, declare_js_1.periodFormsOf)(rules.period);
744
930
  const facts = (0, declare_js_1.periodFactsOf)(rules.period);
745
- const problem = (0, convert_js_1.periodFactProblem)(range, facts, time.now);
746
- if (problem !== undefined)
747
- return { expected: factExpectation(problem, facts) };
931
+ const read = (0, convert_js_1.convertForTool)((0, windows_js_1.windowToConvert)(answered), forms, facts, {
932
+ now: time.now,
933
+ zone,
934
+ ...(time.appZone !== undefined && { appZone: time.appZone }),
935
+ granularityMs: (0, convert_js_1.granularityMsOf)(facts),
936
+ });
937
+ // Refused before any form was chosen: the reason names the TOOL's facts (`toolFacts` — the
938
+ // widest any form reads), as every other door that judges a window before a form does.
939
+ if ('refused' in read) {
940
+ return { expected: refusalExpectation(read.refused, (0, convert_js_1.toolFacts)(forms, facts)) };
941
+ }
942
+ const conversion = read.conversion;
943
+ const wider = 'sent' in conversion
944
+ ? facts.filtersToAsked === true
945
+ ? 'tool-trims'
946
+ : 'reads-more'
947
+ : undefined;
748
948
  for (const id of member.toolCallIds) {
749
949
  if (fills[id] !== undefined || !byId.has(id))
750
950
  continue;
751
- const ctx = {
752
- now: time.now,
753
- zone,
754
- ...(time.appZone !== undefined && { appZone: time.appZone }),
755
- granularityMs: (0, convert_js_1.granularityMsOf)(facts),
756
- };
757
- const exact = (0, convert_js_1.convertExact)({ range }, forms, ctx);
758
- const conversion = exact ?? (0, convert_js_1.convertWidened)({ range }, forms, ctx, (0, convert_js_1.widestMsOf)(facts));
759
- if (conversion === undefined)
760
- return { expected: exports.WINDOW_FORM_EXPECTATION };
761
951
  for (const [argument, value] of Object.entries(conversion.values)) {
762
952
  if (typeof value === 'object')
763
953
  continue;
@@ -767,15 +957,20 @@ function windowFills(field, range, zone, byId, toolOf, time) {
767
957
  return { expected: expected ?? exports.WINDOW_FORM_EXPECTATION };
768
958
  }
769
959
  }
770
- fills[id] = {
771
- values: conversion.values,
772
- ...(exact === undefined && {
773
- wider: facts.filtersToAsked === true ? 'tool-trims' : 'reads-more',
774
- }),
960
+ fills[id] = { values: conversion.values, ...(wider !== undefined && { wider }) };
961
+ filled[id] = {
962
+ toolName: member.toolName,
963
+ decision: {
964
+ how: 'filled',
965
+ window: answered,
966
+ conversion,
967
+ ...(wider === 'tool-trims' && { trimmedByTool: true }),
968
+ ...(read.partlyBeyondRetention === true && { partlyBeyondRetention: true }),
969
+ },
775
970
  };
776
971
  }
777
972
  }
778
- return { fills };
973
+ return { fills, filled };
779
974
  }
780
975
  /** The `answered` rows of a bound window: one per (call, argument) the window filled, in the tool's own view. */
781
976
  function windowAnsweredRows(field, fills, byId, toolOf, stamp) {
@@ -1 +1 @@
1
- {"version":3,"file":"ask.js","sourceRoot":"","sources":["../../../../src/core/agent/arguments/ask.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ask.js","sourceRoot":"","sources":["../../../../src/core/agent/arguments/ask.ts"],"names":[],"mappings":"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"}
@@ -327,6 +327,16 @@ function checkUnderWindow(check, decision) {
327
327
  // that differs both run as sent; neither is raised to the person's words.
328
328
  return { check, runs: decision?.how === 'model-chosen' || decision?.how === 'bound' };
329
329
  }
330
+ /**
331
+ * The facts a refusal's reason names: the sent form's own (its `maxRange` in place) when the
332
+ * refused window was sent in one form, else the tool's (`maxRange` the widest any form reads).
333
+ */
334
+ function refusalFactsOf(period, form) {
335
+ const facts = (0, declare_js_1.periodFactsOf)(period);
336
+ const forms = (0, declare_js_1.periodFormsOf)(period);
337
+ const sentIn = form === undefined ? undefined : forms[form];
338
+ return sentIn !== undefined ? (0, convert_js_1.formFacts)(sentIn, facts) : (0, convert_js_1.toolFacts)(forms, facts);
339
+ }
330
340
  /**
331
341
  * Where each ruled value of each planned call came from, by the table above.
332
342
  * Unarmed (no `sources`), a present value either IS the declared default (an
@@ -642,7 +652,7 @@ function resolutionsOf(plan, checked, toolOf, iteration, kept, sources, decision
642
652
  resolutions.push({
643
653
  toolCallId: planned.toolCallId,
644
654
  iteration,
645
- refused: (0, serve_js_1.timeRefusal)(planned.toolName, decision.refused, (0, declare_js_1.periodFactsOf)(readableRules(toolOf, planned.toolName)?.period), decision.argument),
655
+ refused: (0, serve_js_1.timeRefusal)(planned.toolName, decision.refused, refusalFactsOf(readableRules(toolOf, planned.toolName)?.period, decision.form), decision.argument),
646
656
  });
647
657
  continue;
648
658
  }