iranti 0.3.28 → 0.3.29

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.
@@ -51,7 +51,7 @@ const RUNTIME_AUTHORITY = (0, runtimeLifecycle_1.resolveRuntimeAuthorityFromEnv)
51
51
  const INSTANCE_DIR = RUNTIME_AUTHORITY.instanceDir;
52
52
  const INSTANCE_RUNTIME_FILE = RUNTIME_AUTHORITY.runtimeFile;
53
53
  const INSTANCE_NAME = process.env.IRANTI_INSTANCE_NAME?.trim() || (INSTANCE_DIR ? path_1.default.basename(INSTANCE_DIR) : 'adhoc');
54
- const VERSION = '0.3.28';
54
+ const VERSION = '0.3.29';
55
55
  const PORT_RAW = (process.env.IRANTI_PORT ?? '3001').trim();
56
56
  const PORT = Number.parseInt(PORT_RAW, 10);
57
57
  const runtimeMetadataHealth = (0, healthChecks_1.createHealthCheckState)({
@@ -307,6 +307,8 @@ export interface AttendResult extends ObserveResult {
307
307
  writeNudge?: WriteNudge;
308
308
  drift?: DriftSignal;
309
309
  autoCheckpointSignal?: AutoCheckpointSignal;
310
+ refinementPass?: RefinementPass;
311
+ attendantToolPlan?: AttendantToolPlan;
310
312
  }
311
313
  export interface ToolCallGuidance {
312
314
  toolName: PendingToolCallName;
@@ -337,6 +339,29 @@ export interface AutoCheckpointSignal {
337
339
  draftNextStep: string | null;
338
340
  message: string;
339
341
  }
342
+ export type RefinementPassOutcome = 'not_needed' | 'attempted_added' | 'attempted_empty' | 'declined_no_hints' | 'declined_post_response';
343
+ export interface RefinementPass {
344
+ outcome: RefinementPassOutcome;
345
+ attempted: boolean;
346
+ initialFactCount: number;
347
+ addedFactCount: number;
348
+ widenedEntityHints: string[];
349
+ fallbackTerms: string[];
350
+ reason: string;
351
+ note: string;
352
+ }
353
+ export type AttendantProposedToolName = 'search_related' | 'observe_entity' | 'query';
354
+ export interface AttendantProposedToolCall {
355
+ name: AttendantProposedToolName;
356
+ args: Record<string, string>;
357
+ reason: string;
358
+ confidence: number;
359
+ }
360
+ export interface AttendantToolPlan {
361
+ proposed: AttendantProposedToolCall[];
362
+ basis: 'brief_entities' | 'drift_tokens' | 'objective_signals' | 'empty';
363
+ note: string;
364
+ }
340
365
  export interface ToolResultExtractionOutcome {
341
366
  toolName: PendingToolCallName;
342
367
  autowriteBatchId: string;
@@ -470,6 +495,21 @@ export declare function detectAutoCheckpointTrigger(options: {
470
495
  sessionObjective?: SessionObjective | null;
471
496
  driftDrivingTokens?: readonly string[];
472
497
  }): AutoCheckpointSignal | undefined;
498
+ export declare function planRefinementPass(options: {
499
+ initialFactCount: number;
500
+ decisionNeeded: boolean;
501
+ phase?: 'pre-response' | 'mid-turn' | 'post-response';
502
+ entityHints: readonly string[];
503
+ latestMessage: string;
504
+ }): RefinementPass;
505
+ export declare function planAttendantToolCalls(options: {
506
+ phase?: 'pre-response' | 'mid-turn' | 'post-response';
507
+ entityHints: readonly string[];
508
+ initialFactCount: number;
509
+ sessionObjective?: SessionObjective | null;
510
+ drift?: DriftSignal | undefined;
511
+ briefHasEntities: boolean;
512
+ }): AttendantToolPlan;
473
513
  export declare function readPersistedSessionState(agentId: string): Promise<PersistedSessionState | null>;
474
514
  export declare function summarizeSessionState(agentId: string, checkpoint: SessionCheckpointRecord | null, persistedBriefGeneratedAt?: string, compliance?: SessionComplianceState | null): SessionSummary;
475
515
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"AttendantInstance.d.ts","sourceRoot":"","sources":["../../../src/attendant/AttendantInstance.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"AttendantInstance.d.ts","sourceRoot":"","sources":["../../../src/attendant/AttendantInstance.ts"],"names":[],"mappings":"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"}
@@ -18,6 +18,8 @@ exports.deriveSessionObjective = deriveSessionObjective;
18
18
  exports.deriveSkipVerdict = deriveSkipVerdict;
19
19
  exports.detectTaskDrift = detectTaskDrift;
20
20
  exports.detectAutoCheckpointTrigger = detectAutoCheckpointTrigger;
21
+ exports.planRefinementPass = planRefinementPass;
22
+ exports.planAttendantToolCalls = planAttendantToolCalls;
21
23
  exports.readPersistedSessionState = readPersistedSessionState;
22
24
  exports.summarizeSessionState = summarizeSessionState;
23
25
  exports.injectedFactsAreTaskRelevant = injectedFactsAreTaskRelevant;
@@ -1343,6 +1345,229 @@ function detectAutoCheckpointTrigger(options) {
1343
1345
  }
1344
1346
  return undefined;
1345
1347
  }
1348
+ // ----------------------------------------------------------------------------
1349
+ // A3: iterative exploration — bounded refinement pass planning
1350
+ // ----------------------------------------------------------------------------
1351
+ // When initial retrieval returns empty but memory was wanted, produce a
1352
+ // deterministic refinement plan: broaden entity hints (strip the key
1353
+ // segment, keeping only the entity type + id), and pick fallback search
1354
+ // terms from the latest user message (action verbs + content tokens
1355
+ // minus stopwords). The plan is bounded to one retry so latency stays
1356
+ // predictable. Pure: no instance state access, no LLM, snapshot-testable.
1357
+ // ----------------------------------------------------------------------------
1358
+ const REFINEMENT_STOPWORDS = new Set([
1359
+ 'the', 'a', 'an', 'and', 'or', 'but', 'if', 'then', 'else', 'of', 'for',
1360
+ 'to', 'in', 'on', 'at', 'by', 'with', 'from', 'as', 'is', 'are', 'was',
1361
+ 'were', 'be', 'been', 'being', 'have', 'has', 'had', 'do', 'does', 'did',
1362
+ 'will', 'would', 'should', 'could', 'may', 'might', 'must', 'can', 'this',
1363
+ 'that', 'these', 'those', 'i', 'you', 'he', 'she', 'it', 'we', 'they',
1364
+ 'me', 'him', 'her', 'us', 'them', 'my', 'your', 'his', 'its', 'our',
1365
+ 'their', 'what', 'which', 'who', 'whom', 'whose', 'when', 'where', 'why',
1366
+ 'how', 'all', 'any', 'both', 'each', 'few', 'more', 'most', 'other',
1367
+ 'some', 'such', 'no', 'not', 'only', 'own', 'same', 'so', 'than', 'too',
1368
+ 'very', 'just', 'also', 'please', 'thanks', 'thank',
1369
+ ]);
1370
+ const REFINEMENT_MAX_FALLBACK_TERMS = 6;
1371
+ const REFINEMENT_MIN_TERM_LENGTH = 3;
1372
+ function planRefinementPass(options) {
1373
+ const { initialFactCount, decisionNeeded, phase, entityHints, latestMessage } = options;
1374
+ // Gate 1: post-response never refines — it's a closeout path.
1375
+ if (phase === 'post-response') {
1376
+ return {
1377
+ outcome: 'declined_post_response',
1378
+ attempted: false,
1379
+ initialFactCount,
1380
+ addedFactCount: 0,
1381
+ widenedEntityHints: [],
1382
+ fallbackTerms: [],
1383
+ reason: 'post_response_closeout',
1384
+ note: 'Refinement is gated off on post-response attends.',
1385
+ };
1386
+ }
1387
+ // Gate 2: if memory was not needed at all, there's nothing to refine.
1388
+ // Same if the first pass returned facts — skip cheaply.
1389
+ if (!decisionNeeded || initialFactCount > 0) {
1390
+ return {
1391
+ outcome: 'not_needed',
1392
+ attempted: false,
1393
+ initialFactCount,
1394
+ addedFactCount: 0,
1395
+ widenedEntityHints: [],
1396
+ fallbackTerms: [],
1397
+ reason: initialFactCount > 0 ? 'initial_pass_returned_facts' : 'memory_not_needed',
1398
+ note: 'No refinement pass required.',
1399
+ };
1400
+ }
1401
+ // Gate 3: widen entity hints by keeping only the first two segments
1402
+ // (entityType/entityId) so downstream retrieval matches siblings of
1403
+ // the originally targeted key. A hint that already has only two
1404
+ // segments is kept as-is.
1405
+ const widened = [];
1406
+ const seenWidened = new Set();
1407
+ for (const hint of entityHints) {
1408
+ if (typeof hint !== 'string')
1409
+ continue;
1410
+ const trimmed = hint.trim();
1411
+ if (!trimmed)
1412
+ continue;
1413
+ const parts = trimmed.split('/').filter((p) => p.length > 0);
1414
+ const widenedHint = parts.length >= 2 ? `${parts[0]}/${parts[1]}` : trimmed;
1415
+ if (!seenWidened.has(widenedHint)) {
1416
+ seenWidened.add(widenedHint);
1417
+ widened.push(widenedHint);
1418
+ }
1419
+ }
1420
+ // Gate 4: extract fallback search terms from the latest message.
1421
+ // Lowercase, strip punctuation, filter stopwords and short tokens,
1422
+ // dedupe, cap.
1423
+ const fallbackTerms = [];
1424
+ const seenTerms = new Set();
1425
+ const normalized = (latestMessage || '').toLowerCase().replace(/[^a-z0-9_\-\s]/g, ' ');
1426
+ for (const token of normalized.split(/\s+/)) {
1427
+ if (!token)
1428
+ continue;
1429
+ if (token.length < REFINEMENT_MIN_TERM_LENGTH)
1430
+ continue;
1431
+ if (REFINEMENT_STOPWORDS.has(token))
1432
+ continue;
1433
+ if (seenTerms.has(token))
1434
+ continue;
1435
+ seenTerms.add(token);
1436
+ fallbackTerms.push(token);
1437
+ if (fallbackTerms.length >= REFINEMENT_MAX_FALLBACK_TERMS)
1438
+ break;
1439
+ }
1440
+ // Gate 5: if we have neither widened hints nor fallback terms, the
1441
+ // retry would be blind. Decline so the attend returns empty cleanly
1442
+ // rather than thrashing.
1443
+ if (widened.length === 0 && fallbackTerms.length === 0) {
1444
+ return {
1445
+ outcome: 'declined_no_hints',
1446
+ attempted: false,
1447
+ initialFactCount,
1448
+ addedFactCount: 0,
1449
+ widenedEntityHints: [],
1450
+ fallbackTerms: [],
1451
+ reason: 'no_widened_hints_and_no_fallback_terms',
1452
+ note: 'Initial retrieval was empty but refinement has no entities to widen and no fallback terms to search — refusing a blind retry.',
1453
+ };
1454
+ }
1455
+ return {
1456
+ outcome: 'attempted_empty', // filled to attempted_added by caller if retry returned facts
1457
+ attempted: true,
1458
+ initialFactCount,
1459
+ addedFactCount: 0,
1460
+ widenedEntityHints: widened,
1461
+ fallbackTerms,
1462
+ reason: 'initial_pass_empty_retry_planned',
1463
+ note: `Initial retrieval returned 0 facts. Retrying with ${widened.length} widened entity hint(s) and ${fallbackTerms.length} fallback term(s).`,
1464
+ };
1465
+ }
1466
+ // ----------------------------------------------------------------------------
1467
+ // A5: tool-using Attendant — planned (not executed) tool-call surface
1468
+ // ----------------------------------------------------------------------------
1469
+ // Given the brief, the latest message, the current entity hints, and the
1470
+ // initial retrieval fact count, derive a small list of follow-up tool
1471
+ // calls the host COULD run autonomously. Pure, deterministic — no LLM,
1472
+ // no execution. This is the A4 plan-proposal pattern applied to tool
1473
+ // invocations: the Attendant describes what it would do next given more
1474
+ // budget, and the host decides whether to honor the plan or not.
1475
+ //
1476
+ // Priority of proposals:
1477
+ // 1. search_related on the top detected entity when brief has entities
1478
+ // but retrieval returned nothing — walk the relatedness graph.
1479
+ // 2. observe_entity on the first entity hint when the brief is present
1480
+ // but the host supplied no hints for the latest message.
1481
+ // 3. query using the session objective's top signal when one exists.
1482
+ // ----------------------------------------------------------------------------
1483
+ const ATTENDANT_TOOL_PLAN_MAX_PROPOSALS = 3;
1484
+ function planAttendantToolCalls(options) {
1485
+ const { phase, entityHints, initialFactCount, sessionObjective, drift, briefHasEntities, } = options;
1486
+ // Gate 1: post-response is a closeout — no planned tool use.
1487
+ if (phase === 'post-response') {
1488
+ return {
1489
+ proposed: [],
1490
+ basis: 'empty',
1491
+ note: 'Attendant tool plan is gated off on post-response attends.',
1492
+ };
1493
+ }
1494
+ const proposed = [];
1495
+ let basis = 'empty';
1496
+ // Proposal 1: search_related when the host gave us a concrete entity
1497
+ // hint but the first retrieval pass came back empty. Walk the graph.
1498
+ if (entityHints.length > 0 && initialFactCount === 0) {
1499
+ proposed.push({
1500
+ name: 'search_related',
1501
+ args: { entity: entityHints[0], depth: '1' },
1502
+ reason: 'initial_retrieval_empty_walk_relatedness_graph',
1503
+ confidence: 0.75,
1504
+ });
1505
+ basis = 'brief_entities';
1506
+ }
1507
+ // Proposal 2: observe_entity on the top hint when we haven't dumped
1508
+ // its full fact set yet. Useful when the attend bounds kept facts to
1509
+ // a small maxFacts budget but the host could benefit from the full
1510
+ // entity view.
1511
+ if (entityHints.length > 0 && proposed.length < ATTENDANT_TOOL_PLAN_MAX_PROPOSALS) {
1512
+ proposed.push({
1513
+ name: 'observe_entity',
1514
+ args: { entity: entityHints[0], limit: '10' },
1515
+ reason: 'enumerate_all_known_facts_for_top_entity',
1516
+ confidence: 0.6,
1517
+ });
1518
+ if (basis === 'empty')
1519
+ basis = 'brief_entities';
1520
+ }
1521
+ // Proposal 3: query by the session objective's strongest signal token
1522
+ // when one exists — drives cross-entity recall that a pure
1523
+ // entity-hint lookup would miss.
1524
+ if (sessionObjective?.taskSignals?.length
1525
+ && proposed.length < ATTENDANT_TOOL_PLAN_MAX_PROPOSALS) {
1526
+ const topSignal = sessionObjective.taskSignals[0];
1527
+ if (typeof topSignal === 'string' && topSignal.length >= REFINEMENT_MIN_TERM_LENGTH) {
1528
+ proposed.push({
1529
+ name: 'query',
1530
+ args: { key: topSignal },
1531
+ reason: 'session_objective_top_signal_structured_query',
1532
+ confidence: 0.55,
1533
+ });
1534
+ basis = 'objective_signals';
1535
+ }
1536
+ }
1537
+ // If drift fired and we still have budget, propose a drift-driven
1538
+ // search so the host can surface facts on the NEW direction quickly.
1539
+ if (drift?.detected
1540
+ && drift.drivingTokens.length > 0
1541
+ && proposed.length < ATTENDANT_TOOL_PLAN_MAX_PROPOSALS) {
1542
+ proposed.push({
1543
+ name: 'query',
1544
+ args: { key: drift.drivingTokens[0] },
1545
+ reason: 'drift_detected_query_new_driving_topic',
1546
+ confidence: 0.65,
1547
+ });
1548
+ basis = 'drift_tokens';
1549
+ }
1550
+ if (proposed.length === 0) {
1551
+ if (!briefHasEntities && entityHints.length === 0) {
1552
+ return {
1553
+ proposed: [],
1554
+ basis: 'empty',
1555
+ note: 'No brief entities and no hints — Attendant has nothing to propose without more signal.',
1556
+ };
1557
+ }
1558
+ return {
1559
+ proposed: [],
1560
+ basis: 'empty',
1561
+ note: 'Attendant found no gap worth proposing extra tool calls for this turn.',
1562
+ };
1563
+ }
1564
+ const proposalNames = proposed.map((p) => p.name).join(', ');
1565
+ return {
1566
+ proposed,
1567
+ basis,
1568
+ note: `Attendant proposes ${proposed.length} follow-up tool call(s): ${proposalNames}. Host may execute any subset.`,
1569
+ };
1570
+ }
1346
1571
  function buildAttendBootstrapTask(latestMessage, currentContext) {
1347
1572
  const latest = normalizeMessage(latestMessage);
1348
1573
  if (latest) {
@@ -3572,6 +3797,27 @@ If no durable facts can be extracted, return an empty array: [].`,
3572
3797
  // so it's always undefined here. Field echoed for shape parity
3573
3798
  // so downstream consumers can safely destructure.
3574
3799
  autoCheckpointSignal,
3800
+ // A3: refinement pass is gated off on post-response — the
3801
+ // closeout path never runs retrieval so there is nothing to
3802
+ // refine. Field present for shape parity.
3803
+ refinementPass: {
3804
+ outcome: 'declined_post_response',
3805
+ attempted: false,
3806
+ initialFactCount: 0,
3807
+ addedFactCount: 0,
3808
+ widenedEntityHints: [],
3809
+ fallbackTerms: [],
3810
+ reason: 'post_response_closeout',
3811
+ note: 'Refinement is gated off on post-response attends.',
3812
+ },
3813
+ // A5: attendant tool plan is gated off on post-response for
3814
+ // the same reason. Surfaced as an empty plan so hosts can
3815
+ // safely destructure the field on every attend response.
3816
+ attendantToolPlan: {
3817
+ proposed: [],
3818
+ basis: 'empty',
3819
+ note: 'Attendant tool plan is gated off on post-response attends.',
3820
+ },
3575
3821
  };
3576
3822
  }
3577
3823
  let decision = await this.decideMemoryNeed({
@@ -3714,6 +3960,30 @@ If no durable facts can be extracted, return an empty array: [].`,
3714
3960
  // coincides with "no new memory needed, just keep working"
3715
3961
  // turns, which is exactly when the host needs the nudge.
3716
3962
  autoCheckpointSignal,
3963
+ // A3: memory not needed → no retrieval ran → refinement is
3964
+ // "not_needed" by definition. Field echoed for shape parity.
3965
+ refinementPass: {
3966
+ outcome: 'not_needed',
3967
+ attempted: false,
3968
+ initialFactCount: 0,
3969
+ addedFactCount: 0,
3970
+ widenedEntityHints: [],
3971
+ fallbackTerms: [],
3972
+ reason: 'memory_not_needed',
3973
+ note: 'Attend declined memory injection; no refinement pass required.',
3974
+ },
3975
+ // A5: attendant tool plan can still populate on the not-needed
3976
+ // path when entity hints exist — the host might still benefit
3977
+ // from a follow-up walk even when attend didn't inject facts.
3978
+ // Pure helper so no latency concern.
3979
+ attendantToolPlan: planAttendantToolCalls({
3980
+ phase,
3981
+ entityHints: effectiveEntityHints,
3982
+ initialFactCount: 0,
3983
+ sessionObjective: this.brief?.sessionObjective ?? null,
3984
+ drift,
3985
+ briefHasEntities: (this.brief?.watchedEntities?.length ?? 0) > 0,
3986
+ }),
3717
3987
  };
3718
3988
  }
3719
3989
  // Post-compaction recovery: re-surface facts that were recently injected (likely in context
@@ -3758,6 +4028,111 @@ If no durable facts can be extracted, return an empty array: [].`,
3758
4028
  recoveryKeys: postCompactionRecoveryKeys.length > 0 ? postCompactionRecoveryKeys : undefined,
3759
4029
  ledgerContext: input.ledgerContext,
3760
4030
  });
4031
+ // A3: iterative exploration — bounded refinement pass when initial
4032
+ // retrieval came back empty but attend decided memory was needed.
4033
+ // Widens entity hints by stripping the key segment (keeping entity
4034
+ // type + id), then runs one extra observe() call. Pure-helper plan
4035
+ // is computed first so we can record the decline reason when we
4036
+ // choose not to retry. Gated off on post-response above via the
4037
+ // post-response return. Max 1 extra retrieval call.
4038
+ let refinementPass;
4039
+ let augmentedObservedFacts = observed.facts;
4040
+ let augmentedObservedTotalFound = observed.totalFound;
4041
+ const initialObservedCount = observed.facts.length;
4042
+ if (initialObservedCount === 0) {
4043
+ const refinementPlan = planRefinementPass({
4044
+ initialFactCount: initialObservedCount,
4045
+ decisionNeeded: decision.needed,
4046
+ phase,
4047
+ entityHints: allObserveEntityHints,
4048
+ latestMessage,
4049
+ });
4050
+ refinementPass = refinementPlan;
4051
+ if (refinementPlan.attempted && refinementPlan.widenedEntityHints.length > 0) {
4052
+ // Retry uses the UNION of the original hints and widened hints.
4053
+ // This preserves any specific entity hint supplied by the host
4054
+ // (including pendingToolCall-derived entities) while adding
4055
+ // broader prefixes so the vector search can hit a wider set.
4056
+ const refinementRetryHints = Array.from(new Set([
4057
+ ...allObserveEntityHints,
4058
+ ...refinementPlan.widenedEntityHints,
4059
+ ]));
4060
+ try {
4061
+ const refined = await this.observe({
4062
+ currentContext: observationContext,
4063
+ maxFacts: effectiveMaxFacts,
4064
+ entityHints: refinementRetryHints,
4065
+ priorityKeys: expandContinuityPriorityKeys(Array.from(new Set([
4066
+ ...(mandatoryRecall.key ? [mandatoryRecall.key] : []),
4067
+ ...(this.advisoryLearningProfile?.priorityKeys ?? []),
4068
+ ...freshState.priorityKeys,
4069
+ ]))),
4070
+ skipContextFilter: forceInject,
4071
+ recoveryKeys: postCompactionRecoveryKeys.length > 0 ? postCompactionRecoveryKeys : undefined,
4072
+ ledgerContext: input.ledgerContext,
4073
+ });
4074
+ if (refined.facts.length > 0) {
4075
+ augmentedObservedFacts = refined.facts;
4076
+ augmentedObservedTotalFound = refined.totalFound;
4077
+ refinementPass = {
4078
+ ...refinementPlan,
4079
+ outcome: 'attempted_added',
4080
+ addedFactCount: refined.facts.length,
4081
+ note: `Refinement pass added ${refined.facts.length} fact(s) via widened entity hints (${refinementPlan.widenedEntityHints.join(', ')}).`,
4082
+ };
4083
+ }
4084
+ else {
4085
+ refinementPass = {
4086
+ ...refinementPlan,
4087
+ outcome: 'attempted_empty',
4088
+ addedFactCount: 0,
4089
+ note: `Refinement pass with widened entity hints (${refinementPlan.widenedEntityHints.join(', ')}) still returned 0 facts.`,
4090
+ };
4091
+ }
4092
+ }
4093
+ catch (err) {
4094
+ // Refinement must never crash the attend call. If the
4095
+ // retry observe blows up, record the decline and press on.
4096
+ refinementPass = {
4097
+ ...refinementPlan,
4098
+ outcome: 'declined_no_hints',
4099
+ attempted: false,
4100
+ addedFactCount: 0,
4101
+ reason: `refinement_retry_threw: ${err instanceof Error ? err.message : String(err)}`,
4102
+ note: 'Refinement pass aborted due to retry error; initial empty result stands.',
4103
+ };
4104
+ }
4105
+ }
4106
+ }
4107
+ else {
4108
+ refinementPass = {
4109
+ outcome: 'not_needed',
4110
+ attempted: false,
4111
+ initialFactCount: initialObservedCount,
4112
+ addedFactCount: 0,
4113
+ widenedEntityHints: [],
4114
+ fallbackTerms: [],
4115
+ reason: 'initial_pass_returned_facts',
4116
+ note: 'No refinement pass required.',
4117
+ };
4118
+ }
4119
+ // A5: tool-using Attendant (planned). Derive the proposed follow-up
4120
+ // tool calls from current brief state + retrieval outcome + drift.
4121
+ // Pure and deterministic — the Attendant does not execute them.
4122
+ const attendantToolPlan = planAttendantToolCalls({
4123
+ phase,
4124
+ entityHints: allObserveEntityHints,
4125
+ initialFactCount: augmentedObservedFacts.length,
4126
+ sessionObjective: this.brief?.sessionObjective ?? null,
4127
+ drift,
4128
+ briefHasEntities: (this.brief?.watchedEntities?.length ?? 0) > 0,
4129
+ });
4130
+ // Replace observed.facts in the downstream pipeline with the
4131
+ // augmented (possibly refined) facts. observed.totalFound is only
4132
+ // used for debug metadata, so we substitute both via local aliases
4133
+ // used directly below instead of mutating the upstream object.
4134
+ observed.facts = augmentedObservedFacts;
4135
+ observed.totalFound = augmentedObservedTotalFound;
3761
4136
  // Remap facts from personal recall fallback entities to the canonical personal entity.
3762
4137
  // E.g. if person/user is a legacy alias for user/main, surface facts as user/main/<key>.
3763
4138
  const canonicalPersonalEntity = (0, autoRemember_1.getPersonalMemoryEntity)();
@@ -3944,6 +4319,16 @@ If no durable facts can be extracted, return an empty array: [].`,
3944
4319
  // the top and threaded here so hosts see it in the same reply
3945
4320
  // as any injected facts.
3946
4321
  autoCheckpointSignal,
4322
+ // A3: refinement pass outcome — describes whether the Attendant
4323
+ // ran a bounded retrieval retry when the initial pass was empty.
4324
+ // Always populated on the main success path so hosts can log why
4325
+ // retrieval was OR was not re-tried. Pure-descriptive metadata.
4326
+ refinementPass,
4327
+ // A5: planned Attendant tool calls — a small list of follow-up
4328
+ // tool calls the Attendant would run if it had an execution
4329
+ // budget. Deterministic, not executed. Hosts can surface the
4330
+ // plan to the user or feed it to compliance scoring.
4331
+ attendantToolPlan,
3947
4332
  };
3948
4333
  if (input.suppressEvents !== true) {
3949
4334
  (0, staffEventRegistry_1.getStaffEventEmitter)().emit({