opencode-swarm 6.50.0 → 6.51.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.
@@ -49,6 +49,14 @@ export interface SerializedAgentSession {
49
49
  coderRevisions: number;
50
50
  /** Flag set when coder revisions hit the configured ceiling (v6.33) */
51
51
  revisionLimitHit: boolean;
52
+ /** Session-scoped Full Auto flag for autonomous multi-agent oversight (Phase 2) */
53
+ fullAutoMode?: boolean;
54
+ /** Count of full-auto interactions this phase (Phase 2) */
55
+ fullAutoInteractionCount?: number;
56
+ /** Count of detected deadlocks in full-auto mode (Phase 2) */
57
+ fullAutoDeadlockCount?: number;
58
+ /** Hash of last question asked in full-auto mode (Phase 2) */
59
+ fullAutoLastQuestionHash?: string | null;
52
60
  /** Timestamp when session was rehydrated from snapshot (0 if never rehydrated) */
53
61
  sessionRehydratedAt?: number;
54
62
  }
package/dist/state.d.ts CHANGED
@@ -125,6 +125,14 @@ export interface AgentSessionState {
125
125
  modelFallbackExhausted: boolean;
126
126
  /** Session-scoped Turbo Mode flag for controlling LLM inference speed */
127
127
  turboMode: boolean;
128
+ /** Session-scoped Full Auto flag for autonomous multi-agent oversight */
129
+ fullAutoMode: boolean;
130
+ /** Count of full-auto interactions this phase (for max_interactions_per_phase limit) */
131
+ fullAutoInteractionCount: number;
132
+ /** Count of detected deadlocks (repeated identical questions) in full-auto mode */
133
+ fullAutoDeadlockCount: number;
134
+ /** Hash of last question asked (for deadlock detection via hash comparison) */
135
+ fullAutoLastQuestionHash: string | null;
128
136
  /** Sliding window of last 10 Task delegation hashes for loop detection */
129
137
  loopDetectionWindow?: Array<{
130
138
  hash: string;
@@ -203,6 +211,8 @@ export declare const swarmState: {
203
211
  agentSessions: Map<string, AgentSessionState>;
204
212
  /** In-flight rehydration promises — awaited by rehydrateState before clearing agentSessions */
205
213
  pendingRehydrations: Set<Promise<void>>;
214
+ /** Whether full-auto mode is enabled in config */
215
+ fullAutoEnabledInConfig: boolean;
206
216
  };
207
217
  /**
208
218
  * Reset all state to initial values - useful for testing
@@ -349,3 +359,10 @@ export declare function rehydrateSessionFromDisk(directory: string, session: Age
349
359
  * @returns true if the specified session has turboMode: true, or if any session has turboMode: true when no sessionID provided
350
360
  */
351
361
  export declare function hasActiveTurboMode(sessionID?: string): boolean;
362
+ /**
363
+ * Check if Full Auto Mode is enabled for a specific session or ANY session.
364
+ * @param sessionID - Optional session ID to check. If provided, checks only that session.
365
+ * If omitted, checks all sessions (backward-compatible global behavior).
366
+ * @returns true if the specified session has fullAutoMode: true (model validation is advisory-only).
367
+ */
368
+ export declare function hasActiveFullAuto(sessionID?: string): boolean;
@@ -1,4 +1,4 @@
1
- export type TelemetryEvent = 'session_started' | 'session_ended' | 'agent_activated' | 'delegation_begin' | 'delegation_end' | 'task_state_changed' | 'gate_passed' | 'gate_failed' | 'phase_changed' | 'budget_updated' | 'model_fallback' | 'hard_limit_hit' | 'revision_limit_hit' | 'loop_detected' | 'scope_violation' | 'qa_skip_violation' | 'heartbeat' | 'turbo_mode_changed';
1
+ export type TelemetryEvent = 'session_started' | 'session_ended' | 'agent_activated' | 'delegation_begin' | 'delegation_end' | 'task_state_changed' | 'gate_passed' | 'gate_failed' | 'phase_changed' | 'budget_updated' | 'model_fallback' | 'hard_limit_hit' | 'revision_limit_hit' | 'loop_detected' | 'scope_violation' | 'qa_skip_violation' | 'heartbeat' | 'turbo_mode_changed' | 'auto_oversight_escalation';
2
2
  export type TelemetryListener = (event: TelemetryEvent, data: Record<string, unknown>) => void;
3
3
  /** @internal - For testing only */
4
4
  export declare function resetTelemetryForTesting(): void;
@@ -50,4 +50,5 @@ export declare const telemetry: {
50
50
  qaSkipViolation(sessionId: string, agentName: string, skipCount: number): void;
51
51
  heartbeat(sessionId: string): void;
52
52
  turboModeChanged(sessionId: string, enabled: boolean, agentName: string): void;
53
+ autoOversightEscalation(sessionId: string, reason: string, interactionCount: number, deadlockCount: number, phase?: number): void;
53
54
  };
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "opencode-swarm",
3
- "version": "6.50.0",
3
+ "version": "6.51.0",
4
4
  "description": "Architect-centric agentic swarm plugin for OpenCode - hub-and-spoke orchestration with SME consultation, code generation, and QA review",
5
5
  "main": "dist/index.js",
6
6
  "types": "dist/index.d.ts",
@@ -1 +0,0 @@
1
- export {};