@qilin-agent/experimental-agent-team 3.1.5 → 3.1.6

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.
@@ -300,22 +300,18 @@ let TeamService = (() => {
300
300
  tryMembership(agent) {
301
301
  return this.roster.tryMembership(agent);
302
302
  }
303
- /** Queue one contained recovery pass after publication has unwound. */
303
+ /** Queue one contained provisioning reconciliation after publication has unwound. */
304
304
  scheduleRecovery(agent) {
305
305
  queueMicrotask(() => {
306
306
  if (this.lifecycle.disposed)
307
307
  return;
308
- void this.recoverFor(agent).catch((error) => {
308
+ void this.roster.recoverFor(agent, this.lifecycle.signal).catch((error) => {
309
309
  if (this.lifecycle.disposed)
310
310
  return;
311
311
  this.ctx.logger.warn(`Agent Teams recovery for "${agent.id}" failed: ${errorMessage(error)}`);
312
312
  });
313
313
  });
314
314
  }
315
- /** Reconcile roster provisioning when one Team member Session starts. */
316
- async recoverFor(agent) {
317
- await this.roster.recoverFor(agent, this.lifecycle.signal);
318
- }
319
315
  /** Stop Team-owned live branches and release every waiter before service disposal completes. */
320
316
  async disposeRuntime() {
321
317
  this.lifecycle.close();
@@ -3,7 +3,7 @@ import type { Agent } from '@qilin-agent/agent';
3
3
  import type { Context } from '@qilin-agent/kylin';
4
4
  import type { SessionEventMap, SessionId } from '@qilin-agent/session';
5
5
  import type { TeamState } from './projection.ts';
6
- type MutableTeamEventType = 'team/member' | 'team/task' | 'team/message/queued' | 'team/message/delivered';
6
+ type MutableTeamEventType = 'team/member' | 'team/task';
7
7
  /** Owns per-Lead transaction order and committed Team event publication. */
8
8
  export declare class TeamJournal {
9
9
  private readonly ctx;
@@ -1,4 +1,4 @@
1
- /** Durable Session-message acceptance checks shared by provisioning and mailbox recovery. */
1
+ /** Durable Session-message acceptance checks for teammate provisioning. */
2
2
  import type { UserMessage } from '@qilin-agent/llm';
3
3
  import type { SessionEvent } from '@qilin-agent/session';
4
4
  /**
@@ -1,4 +1,4 @@
1
- /** Durable Session-message acceptance checks shared by provisioning and mailbox recovery. */
1
+ /** Durable Session-message acceptance checks for teammate provisioning. */
2
2
  /** Fold the durable inbox suffix into the messages still awaiting a claim. */
3
3
  function pendingInboxMessages(events) {
4
4
  const inbox = { 'next-turn': [], 'next-step': [] };
@@ -101,7 +101,7 @@ declare module '@qilin-agent/session-projection/types' {
101
101
  agentTeam: TeamProjection;
102
102
  }
103
103
  }
104
- /** One peer message retained until its target Session records it. */
104
+ /** One peer message recorded by the historical Team mailbox. */
105
105
  export interface TeamMessageSnapshot {
106
106
  readonly id: TeamMessageId;
107
107
  readonly senderId: SessionId;
@@ -109,7 +109,7 @@ export interface TeamMessageSnapshot {
109
109
  readonly targetId: SessionId;
110
110
  readonly content: ContentBlock[];
111
111
  }
112
- /** Source retained by the target Session for durable mailbox de-duplication. */
112
+ /** Source carried by a target Session for one Team peer message, new or historical. */
113
113
  export interface TeamMessageSource {
114
114
  readonly kind: 'team-message';
115
115
  readonly teamId: TeamId;
@@ -130,7 +130,7 @@ export interface Config {
130
130
  readonly maxTasks?: number;
131
131
  /** Maximum UTF-8 bytes in one complete sender-framed delivery. */
132
132
  readonly maxMessageBytes?: number;
133
- /** Maximum milliseconds allowed for Team-owned runtime disposal. */
133
+ /** Maximum milliseconds for shared operation settlement and for each Team child drain. */
134
134
  readonly disposalTimeoutMs?: number;
135
135
  }
136
136
  /** Input for creating one durable teammate. */
@@ -146,13 +146,13 @@ export interface SpawnTeammateRequest {
146
146
  export interface SpawnTeammateResult {
147
147
  readonly member: TeamMemberView;
148
148
  }
149
- /** Input for one durable peer message. */
149
+ /** Input for one direct peer-message attempt. */
150
150
  export interface SendTeamMessageRequest {
151
151
  readonly target: string;
152
152
  readonly content: ContentBlock[];
153
153
  readonly signal: AbortSignal;
154
154
  }
155
- /** Result after a peer message enters the target inbox. */
155
+ /** Target inbox acceptance under ordinary Agent persistence; no Team retry or deduplication. */
156
156
  export interface SendTeamMessageResult {
157
157
  readonly messageId: TeamMessageId;
158
158
  }
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@qilin-agent/experimental-agent-team",
3
- "description": "Implicit-root Agent Teams roster, durable peer mailbox, and shared task DAG",
4
- "version": "3.1.5",
3
+ "description": "Implicit-root Agent Teams roster, direct peer messaging, and shared task DAG",
4
+ "version": "3.1.6",
5
5
  "publishConfig": {
6
6
  "access": "public"
7
7
  },
@@ -54,33 +54,33 @@
54
54
  "license": "MIT",
55
55
  "dependencies": {
56
56
  "zod": "^4.4.3",
57
- "@qilin-agent/brand": "3.1.5",
58
- "@qilin-agent/schemastery": "~3.18.3"
57
+ "@qilin-agent/brand": "3.1.6",
58
+ "@qilin-agent/schemastery": "~3.18.5"
59
59
  },
60
60
  "peerDependencies": {
61
- "@qilin-agent/agent": "3.1.5",
62
- "@qilin-agent/kylin": "~4.0.3",
63
- "@qilin-agent/session": "3.1.5",
64
- "@qilin-agent/llm": "3.1.5",
65
- "@qilin-agent/subagent": "3.1.5",
66
- "@qilin-agent/typert-protocol": "3.1.5",
67
- "@qilin-agent/session-projection": "3.1.5",
68
- "@qilin-agent/session-persistence": "3.1.5"
61
+ "@qilin-agent/kylin": "~4.0.5",
62
+ "@qilin-agent/llm": "3.1.6",
63
+ "@qilin-agent/session-persistence": "3.1.6",
64
+ "@qilin-agent/session-projection": "3.1.6",
65
+ "@qilin-agent/session": "3.1.6",
66
+ "@qilin-agent/subagent": "3.1.6",
67
+ "@qilin-agent/typert-protocol": "3.1.6",
68
+ "@qilin-agent/agent": "3.1.6"
69
69
  },
70
70
  "devDependencies": {
71
- "@qilin-agent/kylin": "~4.0.3",
72
- "@qilin-agent/agent": "3.1.5",
73
- "@qilin-agent/agent-loop": "3.1.5",
74
- "@qilin-agent/agent-loop-testkit": "3.1.5",
75
- "@qilin-agent/session-persistence": "3.1.5",
76
- "@qilin-agent/session-persistence-jsonl": "3.1.5",
77
- "@qilin-agent/session-projection": "3.1.5",
78
- "@qilin-agent/llm": "3.1.5",
79
- "@qilin-agent/session-query": "3.1.5",
80
- "@qilin-agent/subagent": "3.1.5",
81
- "@qilin-agent/session": "3.1.5",
82
- "@qilin-agent/subagent-spawn-in-process": "3.1.5",
83
- "@qilin-agent/subagent-fork-in-process": "3.1.5",
84
- "@qilin-agent/typert-protocol": "3.1.5"
71
+ "@qilin-agent/agent": "3.1.6",
72
+ "@qilin-agent/agent-loop-testkit": "3.1.6",
73
+ "@qilin-agent/kylin": "~4.0.5",
74
+ "@qilin-agent/agent-loop": "3.1.6",
75
+ "@qilin-agent/session": "3.1.6",
76
+ "@qilin-agent/llm": "3.1.6",
77
+ "@qilin-agent/session-persistence": "3.1.6",
78
+ "@qilin-agent/session-persistence-jsonl": "3.1.6",
79
+ "@qilin-agent/session-query": "3.1.6",
80
+ "@qilin-agent/session-projection": "3.1.6",
81
+ "@qilin-agent/subagent": "3.1.6",
82
+ "@qilin-agent/subagent-spawn-in-process": "3.1.6",
83
+ "@qilin-agent/typert-protocol": "3.1.6",
84
+ "@qilin-agent/subagent-fork-in-process": "3.1.6"
85
85
  }
86
86
  }