@wrongstack/core 0.272.0 → 0.272.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (47) hide show
  1. package/dist/{agent-bridge-jVSZiygR.d.ts → agent-bridge-DFQYEeXf.d.ts} +1 -1
  2. package/dist/{agent-subagent-runner-DOLIwBRo.d.ts → agent-subagent-runner-BZa_IEcd.d.ts} +4 -4
  3. package/dist/{brain-CdbbJWi3.d.ts → brain-etbcbRwV.d.ts} +24 -1
  4. package/dist/{config-D2DGoGSQ.d.ts → config-rRS8yorV.d.ts} +43 -1
  5. package/dist/coordination/index.d.ts +74 -14
  6. package/dist/coordination/index.js +285 -97
  7. package/dist/coordination/index.js.map +1 -1
  8. package/dist/defaults/index.d.ts +16 -16
  9. package/dist/defaults/index.js +209 -140
  10. package/dist/defaults/index.js.map +1 -1
  11. package/dist/execution/index.d.ts +9 -9
  12. package/dist/extension/index.d.ts +4 -4
  13. package/dist/{global-mailbox-CQj_C9Dp.d.ts → global-mailbox-DJ4EoRr0.d.ts} +7 -3
  14. package/dist/{goal-preamble-ZXDjjR1y.d.ts → goal-preamble-hM8BH7TK.d.ts} +5 -5
  15. package/dist/{goal-store-CcJBd-g1.d.ts → goal-store-CWlbT0TO.d.ts} +1 -1
  16. package/dist/hq/index.d.ts +6 -4
  17. package/dist/hq/index.js +14 -6
  18. package/dist/hq/index.js.map +1 -1
  19. package/dist/{index-Qo4kTzgw.d.ts → index-DWm_PE9L.d.ts} +3 -3
  20. package/dist/{index-BL7BAx0p.d.ts → index-DqW4o62H.d.ts} +4 -4
  21. package/dist/index.d.ts +27 -27
  22. package/dist/index.js +571 -215
  23. package/dist/index.js.map +1 -1
  24. package/dist/infrastructure/index.d.ts +4 -4
  25. package/dist/kernel/index.d.ts +5 -5
  26. package/dist/kernel/index.js.map +1 -1
  27. package/dist/{mcp-servers-DS-YUXvF.d.ts → mcp-servers-BpWHTKlE.d.ts} +1 -1
  28. package/dist/models/index.d.ts +3 -3
  29. package/dist/{models-registry-DP6pGHet.d.ts → models-registry-CXQFUn5t.d.ts} +1 -1
  30. package/dist/{multi-agent-coordinator-BvbdNQ14.d.ts → multi-agent-coordinator-jyimfo7D.d.ts} +1 -1
  31. package/dist/{null-fleet-bus-BxTfXBKo.d.ts → null-fleet-bus-DOGQcvrY.d.ts} +5 -5
  32. package/dist/observability/index.d.ts +1 -1
  33. package/dist/{parallel-eternal-engine-Cf-GTegR.d.ts → parallel-eternal-engine-rItJBYp9.d.ts} +6 -6
  34. package/dist/{path-resolver-DztfnFcv.d.ts → path-resolver-DrpF5MGK.d.ts} +2 -2
  35. package/dist/{pipeline-sNIkhXeB.d.ts → pipeline-Ckkn3AOA.d.ts} +1 -1
  36. package/dist/{plan-templates-DYiKFmEb.d.ts → plan-templates-BvHw5Znw.d.ts} +24 -6
  37. package/dist/{provider-model-resolve-dYAbTs_i.d.ts → provider-model-resolve-nZqnCeaR.d.ts} +1 -1
  38. package/dist/{provider-runner-Dw8x0F7u.d.ts → provider-runner-zVOn1p67.d.ts} +1 -1
  39. package/dist/sdd/index.d.ts +5 -5
  40. package/dist/storage/index.d.ts +12 -7
  41. package/dist/storage/index.js +250 -111
  42. package/dist/storage/index.js.map +1 -1
  43. package/dist/tools/index.d.ts +1 -1
  44. package/dist/types/index.d.ts +13 -13
  45. package/dist/types/index.js.map +1 -1
  46. package/dist/utils/index.d.ts +1 -1
  47. package/package.json +1 -1
@@ -1,19 +1,19 @@
1
- export { C as CompactorOptions, a as DefaultErrorHandler, b as DefaultRetryPolicy, E as EternalAutonomyEngine, c as EternalAutonomyOptions, d as EternalEngineState, H as HybridCompactor, I as IterationStage, P as ParallelEngineState, e as ParallelEternalEngine, f as ParallelEternalOptions, g as ParallelIterationStage, T as ToolExecutor } from '../parallel-eternal-engine-Cf-GTegR.js';
2
- export { A as AutoCompactionMiddleware, a as AutonomousRunner, b as AutonomousRunnerOptions, c as AutonomyPromptContributorOptions, C as CompactorStrategy, l as ContextWindowBudgetSnapshot, D as DefaultSkillLoader, d as DoneCheckResult, e as DoneConditionChecker, I as IntelligentCompactor, f as IntelligentCompactorOptions, S as SelectiveCompactor, g as SelectiveCompactorOptions, h as SkillLoaderOptions, i as StrategyCompactorOptions, j as buildGoalPreamble, k as createStrategyCompactor, m as makeAutonomyPromptContributor } from '../goal-preamble-ZXDjjR1y.js';
1
+ export { C as CompactorOptions, a as DefaultErrorHandler, b as DefaultRetryPolicy, E as EternalAutonomyEngine, c as EternalAutonomyOptions, d as EternalEngineState, H as HybridCompactor, I as IterationStage, P as ParallelEngineState, e as ParallelEternalEngine, f as ParallelEternalOptions, g as ParallelIterationStage, T as ToolExecutor } from '../parallel-eternal-engine-rItJBYp9.js';
2
+ export { A as AutoCompactionMiddleware, a as AutonomousRunner, b as AutonomousRunnerOptions, c as AutonomyPromptContributorOptions, C as CompactorStrategy, l as ContextWindowBudgetSnapshot, D as DefaultSkillLoader, d as DoneCheckResult, e as DoneConditionChecker, I as IntelligentCompactor, f as IntelligentCompactorOptions, S as SelectiveCompactor, g as SelectiveCompactorOptions, h as SkillLoaderOptions, i as StrategyCompactorOptions, j as buildGoalPreamble, k as createStrategyCompactor, m as makeAutonomyPromptContributor } from '../goal-preamble-hM8BH7TK.js';
3
3
  import { P as Provider, a as ReasoningConfig, n as Capabilities, c as Request } from '../context-Dw55zZ_Q.js';
4
- import { e as BrainDecision, h as BrainDecisionRequest, B as BrainArbiter } from '../brain-CdbbJWi3.js';
5
- import { G as ModelRuntimeConfig } from '../config-D2DGoGSQ.js';
4
+ import { e as BrainDecision, h as BrainDecisionRequest, B as BrainArbiter } from '../brain-etbcbRwV.js';
5
+ import { J as ModelRuntimeConfig } from '../config-rRS8yorV.js';
6
6
  import '../retry-policy-BV7nzeAd.js';
7
7
  import '../compactor-72ug-ZRB.js';
8
- import '../index-Qo4kTzgw.js';
8
+ import '../index-DWm_PE9L.js';
9
9
  import '../logger-B63L5bTg.js';
10
- import '../pipeline-sNIkhXeB.js';
10
+ import '../pipeline-Ckkn3AOA.js';
11
11
  import '../mailbox-types-Ct2hJq0P.js';
12
12
  import '../observability-D-HZN_mF.js';
13
13
  import '../permission-CC7XFYWG.js';
14
- import '../agent-subagent-runner-DOLIwBRo.js';
15
- import '../goal-store-CcJBd-g1.js';
16
- import '../multi-agent-coordinator-BvbdNQ14.js';
14
+ import '../agent-subagent-runner-BZa_IEcd.js';
15
+ import '../goal-store-CWlbT0TO.js';
16
+ import '../multi-agent-coordinator-jyimfo7D.js';
17
17
  import 'node:events';
18
18
  import '../skill-DGIXCtdv.js';
19
19
  import '../wstack-paths-hOpNLmvf.js';
@@ -1,9 +1,9 @@
1
- export { i as AfterIterationHook, j as AfterRunHook, k as AfterToolExecutionHook, l as AgentExtension, B as BeforeIterationHook, m as BeforeRunHook, n as BeforeToolExecutionHook, E as ExtensionRegistry, O as OnErrorHook, v as ProviderRunnerFn, t as ProviderRunnerWrapper } from '../index-Qo4kTzgw.js';
1
+ export { i as AfterIterationHook, j as AfterRunHook, k as AfterToolExecutionHook, l as AgentExtension, B as BeforeIterationHook, m as BeforeRunHook, n as BeforeToolExecutionHook, E as ExtensionRegistry, O as OnErrorHook, v as ProviderRunnerFn, t as ProviderRunnerWrapper } from '../index-DWm_PE9L.js';
2
2
  import '../context-Dw55zZ_Q.js';
3
3
  import '../logger-B63L5bTg.js';
4
- import '../pipeline-sNIkhXeB.js';
4
+ import '../pipeline-Ckkn3AOA.js';
5
5
  import '../mailbox-types-Ct2hJq0P.js';
6
- import '../config-D2DGoGSQ.js';
6
+ import '../config-rRS8yorV.js';
7
7
  import '../observability-D-HZN_mF.js';
8
- import '../brain-CdbbJWi3.js';
8
+ import '../brain-etbcbRwV.js';
9
9
  import '../permission-CC7XFYWG.js';
@@ -1,4 +1,4 @@
1
- import { E as EventBus } from './brain-CdbbJWi3.js';
1
+ import { E as EventBus } from './brain-etbcbRwV.js';
2
2
  import { M as MailboxMessage, a as MailboxAgentStatus, b as Mailbox, c as MailboxSendInput, d as MailboxQuery, e as MailboxAckInput, f as MailboxAckBatchInput, A as AgentRegistrationInput, g as AgentHeartbeatInput, C as ClientRegistrationInput, h as ClientHeartbeatInput, i as ClientStatus, P as PurgeOptions, j as PurgeResult } from './mailbox-types-Ct2hJq0P.js';
3
3
 
4
4
  declare const HQ_PROTOCOL_VERSION: 1;
@@ -151,6 +151,8 @@ type HqSessionAgentLiveStatus = 'idle' | 'running' | 'streaming' | 'waiting_user
151
151
  interface HqSessionAgentSummary {
152
152
  id: string;
153
153
  name: string;
154
+ /** UTC ISO timestamp when this agent/run started, when known. */
155
+ startedAt?: string;
154
156
  status: HqSessionAgentLiveStatus;
155
157
  currentTool?: string;
156
158
  iterations: number;
@@ -650,6 +652,7 @@ declare class HqPublisher {
650
652
  * @module GlobalMailbox
651
653
  */
652
654
 
655
+ type HqPublisherRef = HqPublisher | (() => HqPublisher | undefined);
653
656
  /**
654
657
  * Derive the project-level mailbox directory path.
655
658
  *
@@ -711,10 +714,11 @@ declare class GlobalMailbox implements Mailbox {
711
714
  /**
712
715
  * @param projectDir — `~/.wrongstack/projects/<slug>/`
713
716
  * @param events — optional EventBus for real-time TUI/WebUI notifications
714
- * @param hqPublisher — optional HQ publisher for cross-project telemetry
717
+ * @param hqPublisher — optional HQ publisher, or getter, for cross-project telemetry
715
718
  */
716
- constructor(projectDir: string, events?: EventBus, hqPublisher?: HqPublisher);
719
+ constructor(projectDir: string, events?: EventBus, hqPublisher?: HqPublisherRef);
717
720
  private get hqMailboxId();
721
+ private get hqPublisher();
718
722
  private publishHqMailboxEvent;
719
723
  private publishHqMailboxSnapshot;
720
724
  send(input: MailboxSendInput): Promise<MailboxMessage>;
@@ -3,12 +3,12 @@ import { W as WstackPaths } from './wstack-paths-hOpNLmvf.js';
3
3
  import { P as Provider, C as Context } from './context-Dw55zZ_Q.js';
4
4
  import { C as Compactor, a as CompactReport } from './compactor-72ug-ZRB.js';
5
5
  import { M as MessageSelector } from './selector-C4ORTOid.js';
6
- import { E as EventBus } from './brain-CdbbJWi3.js';
7
- import { M as MiddlewareHandler } from './pipeline-sNIkhXeB.js';
6
+ import { E as EventBus } from './brain-etbcbRwV.js';
7
+ import { M as MiddlewareHandler } from './pipeline-Ckkn3AOA.js';
8
8
  import { S as SessionEventBridge } from './session-event-bridge-CeNpUL9w.js';
9
- import { C as ContextWindowAggressiveOn, h as ContextWindowPolicy } from './config-D2DGoGSQ.js';
10
- import { g as Agent, D as DoneCondition } from './agent-subagent-runner-DOLIwBRo.js';
11
- import { R as RunResult, S as SystemPromptContributor } from './index-Qo4kTzgw.js';
9
+ import { C as ContextWindowAggressiveOn, h as ContextWindowPolicy } from './config-rRS8yorV.js';
10
+ import { g as Agent, D as DoneCondition } from './agent-subagent-runner-BZa_IEcd.js';
11
+ import { R as RunResult, S as SystemPromptContributor } from './index-DWm_PE9L.js';
12
12
 
13
13
  interface SkillLoaderOptions {
14
14
  paths: WstackPaths;
@@ -1,4 +1,4 @@
1
- import { E as EventBus } from './brain-CdbbJWi3.js';
1
+ import { E as EventBus } from './brain-etbcbRwV.js';
2
2
 
3
3
  /**
4
4
  * Long-running autonomous mission. A goal survives across sessions and
@@ -1,7 +1,7 @@
1
- import { Z as HqRedactionPolicy, r as HqEventEnvelope, U as HqPublisher, n as HqClientIdentity, aa as HqSocketFactory, G as GlobalMailbox, ah as HqTranscriptEntry } from '../global-mailbox-CQj_C9Dp.js';
2
- export { D as DEFAULT_HQ_REDACTION_POLICY, H as HQ_PROTOCOL_VERSION, a as HqAgentMessagePayload, b as HqAgentStatusPayload, c as HqAlertMessage, d as HqBrowserEventMessage, e as HqBrowserMessage, f as HqBrowserSnapshotMessage, g as HqClientCapability, h as HqClientCommandAckMessage, i as HqClientCommandPollMessage, j as HqClientEventMessage, k as HqClientHeartbeatPayload, l as HqClientHelloMessage, m as HqClientHelloPayload, o as HqClientKind, p as HqClientMessage, q as HqClientRecord, s as HqEventPayloadResult, t as HqEventType, u as HqFleetEventPayload, v as HqFleetSnapshotPayload, w as HqFleetSummary, x as HqGitSnapshotPayload, y as HqMachineRecord, z as HqMailboxAgentStatus, A as HqMailboxAgentSummary, B as HqMailboxEventAction, C as HqMailboxEventPayload, E as HqMailboxMappingOptions, F as HqMailboxMessageSummary, I as HqMailboxMessageType, J as HqMailboxPriority, K as HqMailboxSnapshotOptions, L as HqMailboxSnapshotPayload, M as HqMailboxSummary, N as HqParseResult, O as HqPathPolicy, P as HqProjectIdentity, Q as HqProjectRecord, R as HqProjectStatus, S as HqProtocolVersion, T as HqPublishEventOptions, V as HqPublisherCommandHandler, W as HqPublisherCommandResult, X as HqPublisherOptions, Y as HqQueuedCommand, _ as HqServerCommandBatchMessage, $ as HqServerMessage, a0 as HqSessionAgentLiveStatus, a1 as HqSessionAgentSummary, a2 as HqSessionEndedPayload, a3 as HqSessionLiveStatus, a4 as HqSessionSnapshotPayload, a5 as HqSessionStartedPayload, a6 as HqSessionStatus, a7 as HqSessionStatusPayload, a8 as HqSessionSummary, a9 as HqSnapshot, ab as HqSocketLike, ac as HqSubagentSummary, ad as HqToolArgsPolicy, ae as HqToolCompletedPayload, af as HqToolStartedPayload, ag as HqTranscriptAppendPayload, ai as HqTranscriptRole, aj as HqUsagePayload, ak as HqWelcomePayload, al as HqWorklistCounts, am as HqWorklistSnapshotPayload, an as HqWorkspaceKind, ao as createHqEventEnvelope, ap as createMailboxEventPayload, aq as createMailboxSnapshotPayload, ar as createMailboxSnapshotPayloadFromMailbox, as as mapMailboxAgentToHqSummary, at as mapMailboxMessageToHqSummary, au as parseHqEventPayload, av as parseHqFrame } from '../global-mailbox-CQj_C9Dp.js';
3
- import { E as EventBus } from '../brain-CdbbJWi3.js';
4
- import { x as HqClientConfig } from '../config-D2DGoGSQ.js';
1
+ import { Z as HqRedactionPolicy, r as HqEventEnvelope, U as HqPublisher, n as HqClientIdentity, aa as HqSocketFactory, G as GlobalMailbox, ah as HqTranscriptEntry } from '../global-mailbox-DJ4EoRr0.js';
2
+ export { D as DEFAULT_HQ_REDACTION_POLICY, H as HQ_PROTOCOL_VERSION, a as HqAgentMessagePayload, b as HqAgentStatusPayload, c as HqAlertMessage, d as HqBrowserEventMessage, e as HqBrowserMessage, f as HqBrowserSnapshotMessage, g as HqClientCapability, h as HqClientCommandAckMessage, i as HqClientCommandPollMessage, j as HqClientEventMessage, k as HqClientHeartbeatPayload, l as HqClientHelloMessage, m as HqClientHelloPayload, o as HqClientKind, p as HqClientMessage, q as HqClientRecord, s as HqEventPayloadResult, t as HqEventType, u as HqFleetEventPayload, v as HqFleetSnapshotPayload, w as HqFleetSummary, x as HqGitSnapshotPayload, y as HqMachineRecord, z as HqMailboxAgentStatus, A as HqMailboxAgentSummary, B as HqMailboxEventAction, C as HqMailboxEventPayload, E as HqMailboxMappingOptions, F as HqMailboxMessageSummary, I as HqMailboxMessageType, J as HqMailboxPriority, K as HqMailboxSnapshotOptions, L as HqMailboxSnapshotPayload, M as HqMailboxSummary, N as HqParseResult, O as HqPathPolicy, P as HqProjectIdentity, Q as HqProjectRecord, R as HqProjectStatus, S as HqProtocolVersion, T as HqPublishEventOptions, V as HqPublisherCommandHandler, W as HqPublisherCommandResult, X as HqPublisherOptions, Y as HqQueuedCommand, _ as HqServerCommandBatchMessage, $ as HqServerMessage, a0 as HqSessionAgentLiveStatus, a1 as HqSessionAgentSummary, a2 as HqSessionEndedPayload, a3 as HqSessionLiveStatus, a4 as HqSessionSnapshotPayload, a5 as HqSessionStartedPayload, a6 as HqSessionStatus, a7 as HqSessionStatusPayload, a8 as HqSessionSummary, a9 as HqSnapshot, ab as HqSocketLike, ac as HqSubagentSummary, ad as HqToolArgsPolicy, ae as HqToolCompletedPayload, af as HqToolStartedPayload, ag as HqTranscriptAppendPayload, ai as HqTranscriptRole, aj as HqUsagePayload, ak as HqWelcomePayload, al as HqWorklistCounts, am as HqWorklistSnapshotPayload, an as HqWorkspaceKind, ao as createHqEventEnvelope, ap as createMailboxEventPayload, aq as createMailboxSnapshotPayload, ar as createMailboxSnapshotPayloadFromMailbox, as as mapMailboxAgentToHqSummary, at as mapMailboxMessageToHqSummary, au as parseHqEventPayload, av as parseHqFrame } from '../global-mailbox-DJ4EoRr0.js';
3
+ import { E as EventBus, T as TrackedAgentSnapshot } from '../brain-etbcbRwV.js';
4
+ import { y as HqClientConfig } from '../config-rRS8yorV.js';
5
5
  import '../mailbox-types-Ct2hJq0P.js';
6
6
  import '../context-Dw55zZ_Q.js';
7
7
 
@@ -238,6 +238,8 @@ interface SessionTelemetryBridgeOptions {
238
238
  projectName?: string | undefined;
239
239
  /** Override the global root used to resolve the session JSONL path. */
240
240
  globalRoot?: string | undefined;
241
+ /** Last-known agents to publish immediately before the next bus update. */
242
+ initialAgents?: readonly TrackedAgentSnapshot[] | undefined;
241
243
  gitBranch?: string | undefined;
242
244
  startedAt?: string | undefined;
243
245
  /** Snapshot republish interval (also refreshes lastActivity). Default 2500ms. */
package/dist/hq/index.js CHANGED
@@ -1235,7 +1235,7 @@ var GlobalMailbox = class {
1235
1235
  /**
1236
1236
  * @param projectDir — `~/.wrongstack/projects/<slug>/`
1237
1237
  * @param events — optional EventBus for real-time TUI/WebUI notifications
1238
- * @param hqPublisher — optional HQ publisher for cross-project telemetry
1238
+ * @param hqPublisher — optional HQ publisher, or getter, for cross-project telemetry
1239
1239
  */
1240
1240
  constructor(projectDir, events, hqPublisher) {
1241
1241
  this.messagePath = path2.join(projectDir, MAILBOX_FILE);
@@ -1247,15 +1247,19 @@ var GlobalMailbox = class {
1247
1247
  get hqMailboxId() {
1248
1248
  return `${path2.basename(path2.dirname(this.messagePath))}:mailbox`;
1249
1249
  }
1250
+ get hqPublisher() {
1251
+ return typeof this._hqPublisher === "function" ? this._hqPublisher() : this._hqPublisher;
1252
+ }
1250
1253
  publishHqMailboxEvent(input) {
1251
1254
  try {
1252
- this._hqPublisher?.publishMailboxEvent(input);
1255
+ this.hqPublisher?.publishMailboxEvent(input);
1253
1256
  } catch {
1254
1257
  }
1255
1258
  }
1256
1259
  publishHqMailboxSnapshot() {
1257
- if (this._hqPublisher === void 0) return;
1258
- void this._hqPublisher.publishMailboxSnapshot(this, { mailboxId: this.hqMailboxId }).catch(() => {
1260
+ const publisher = this.hqPublisher;
1261
+ if (publisher === void 0) return;
1262
+ void publisher.publishMailboxSnapshot(this, { mailboxId: this.hqMailboxId }).catch(() => {
1259
1263
  });
1260
1264
  }
1261
1265
  // ── Messages ────────────────────────────────────────────────────────────
@@ -2327,6 +2331,7 @@ function toAgentSummary(a) {
2327
2331
  iterations: a.iterations,
2328
2332
  toolCalls: a.toolCalls,
2329
2333
  lastActivityAt: a.lastActivityAt,
2334
+ ...a.startedAt !== void 0 ? { startedAt: a.startedAt } : {},
2330
2335
  ...a.currentTool !== void 0 ? { currentTool: a.currentTool } : {},
2331
2336
  ...a.costUsd !== void 0 ? { costUsd: a.costUsd } : {},
2332
2337
  ...a.tokensIn !== void 0 ? { tokensIn: a.tokensIn } : {},
@@ -2352,8 +2357,11 @@ function startSessionTelemetryBridge(opts) {
2352
2357
  ...opts.globalRoot !== void 0 ? { globalRoot: opts.globalRoot } : {}
2353
2358
  });
2354
2359
  const sessionFile = path2.join(wpaths.projectSessions, `${opts.sessionId}.jsonl`);
2355
- let agents = [];
2356
- let lastActivityAt = startedAt;
2360
+ let agents = (opts.initialAgents ?? []).map(toAgentSummary);
2361
+ let lastActivityAt = agents.reduce(
2362
+ (latest, agent) => agent.lastActivityAt > latest ? agent.lastActivityAt : latest,
2363
+ startedAt
2364
+ );
2357
2365
  let lastSnapshotHash = "";
2358
2366
  let disposed = false;
2359
2367
  function buildSnapshot() {