baxian 1.2.60 → 2.0.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.
- package/README.md +7 -4
- package/README.zh-CN.md +7 -4
- package/dist/agent/bootstrap-poller.d.ts +1 -1
- package/dist/agent/bootstrap-poller.d.ts.map +1 -1
- package/dist/agent/bootstrap-poller.js.map +1 -1
- package/dist/agent/bootstrap.d.ts +1 -1
- package/dist/agent/bootstrap.d.ts.map +1 -1
- package/dist/agent/bootstrap.js +6 -2
- package/dist/agent/bootstrap.js.map +1 -1
- package/dist/agent/branch.d.ts +1 -2
- package/dist/agent/branch.d.ts.map +1 -1
- package/dist/agent/branch.js +2 -2
- package/dist/agent/branch.js.map +1 -1
- package/dist/agent/dispatch-reconciler.d.ts +0 -1
- package/dist/agent/dispatch-reconciler.d.ts.map +1 -1
- package/dist/agent/dispatch-reconciler.js +11 -50
- package/dist/agent/dispatch-reconciler.js.map +1 -1
- package/dist/agent/manager.d.ts +208 -85
- package/dist/agent/manager.d.ts.map +1 -1
- package/dist/agent/manager.js +3027 -1441
- package/dist/agent/manager.js.map +1 -1
- package/dist/agent/pane-streamer.js +1 -1
- package/dist/agent/pane-streamer.js.map +1 -1
- package/dist/agent/phase-signal-watcher.d.ts +47 -2
- package/dist/agent/phase-signal-watcher.d.ts.map +1 -1
- package/dist/agent/phase-signal-watcher.js +318 -49
- package/dist/agent/phase-signal-watcher.js.map +1 -1
- package/dist/agent/phase-signal.d.ts +11 -7
- package/dist/agent/phase-signal.d.ts.map +1 -1
- package/dist/agent/phase-signal.js +67 -9
- package/dist/agent/phase-signal.js.map +1 -1
- package/dist/agent/preflight.d.ts +23 -1
- package/dist/agent/preflight.d.ts.map +1 -1
- package/dist/agent/preflight.js +223 -24
- package/dist/agent/preflight.js.map +1 -1
- package/dist/agent/prompt.d.ts +16 -0
- package/dist/agent/prompt.d.ts.map +1 -1
- package/dist/agent/prompt.js +71 -11
- package/dist/agent/prompt.js.map +1 -1
- package/dist/agent/repo-store.d.ts +6 -1
- package/dist/agent/repo-store.d.ts.map +1 -1
- package/dist/agent/repo-store.js +44 -11
- package/dist/agent/repo-store.js.map +1 -1
- package/dist/agent/review-transport.d.ts +20 -1
- package/dist/agent/review-transport.d.ts.map +1 -1
- package/dist/agent/review-transport.js +68 -20
- package/dist/agent/review-transport.js.map +1 -1
- package/dist/api/config.d.ts.map +1 -1
- package/dist/api/config.js +20 -11
- package/dist/api/config.js.map +1 -1
- package/dist/api/hosts.d.ts.map +1 -1
- package/dist/api/hosts.js +3 -2
- package/dist/api/hosts.js.map +1 -1
- package/dist/api/platform-guard.d.ts +10 -2
- package/dist/api/platform-guard.d.ts.map +1 -1
- package/dist/api/platform-guard.js +112 -10
- package/dist/api/platform-guard.js.map +1 -1
- package/dist/api/projects.d.ts.map +1 -1
- package/dist/api/projects.js +87 -11
- package/dist/api/projects.js.map +1 -1
- package/dist/api/tasks.d.ts.map +1 -1
- package/dist/api/tasks.js +22 -14
- package/dist/api/tasks.js.map +1 -1
- package/dist/app.d.ts +4 -4
- package/dist/app.d.ts.map +1 -1
- package/dist/cli.d.ts.map +1 -1
- package/dist/cli.js +7 -0
- package/dist/cli.js.map +1 -1
- package/dist/config/hot-reload.d.ts +11 -2
- package/dist/config/hot-reload.d.ts.map +1 -1
- package/dist/config/hot-reload.js +43 -8
- package/dist/config/hot-reload.js.map +1 -1
- package/dist/config/loader.js +1 -1
- package/dist/config/loader.js.map +1 -1
- package/dist/config/validator.d.ts +3 -1
- package/dist/config/validator.d.ts.map +1 -1
- package/dist/config/validator.js +57 -28
- package/dist/config/validator.js.map +1 -1
- package/dist/event/handlers.d.ts.map +1 -1
- package/dist/event/handlers.js +616 -1067
- package/dist/event/handlers.js.map +1 -1
- package/dist/event/log.d.ts.map +1 -1
- package/dist/event/log.js +17 -2
- package/dist/event/log.js.map +1 -1
- package/dist/event/server-handlers.d.ts.map +1 -1
- package/dist/event/server-handlers.js +667 -440
- package/dist/event/server-handlers.js.map +1 -1
- package/dist/index.d.ts +4 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +55 -79
- package/dist/index.js.map +1 -1
- package/dist/platform/command-renderer.d.ts +1 -0
- package/dist/platform/command-renderer.d.ts.map +1 -1
- package/dist/platform/command-renderer.js +16 -2
- package/dist/platform/command-renderer.js.map +1 -1
- package/dist/platform/comment-cursor.d.ts +9 -0
- package/dist/platform/comment-cursor.d.ts.map +1 -1
- package/dist/platform/comment-cursor.js +63 -5
- package/dist/platform/comment-cursor.js.map +1 -1
- package/dist/platform/driver-host.d.ts.map +1 -1
- package/dist/platform/driver-host.js +0 -2
- package/dist/platform/driver-host.js.map +1 -1
- package/dist/platform/driver-spec.d.ts.map +1 -1
- package/dist/platform/driver-spec.js +50 -6
- package/dist/platform/driver-spec.js.map +1 -1
- package/dist/platform/feedback.d.ts.map +1 -1
- package/dist/platform/feedback.js +0 -9
- package/dist/platform/feedback.js.map +1 -1
- package/dist/platform/git-driver.d.ts +10 -1
- package/dist/platform/git-driver.d.ts.map +1 -1
- package/dist/platform/git-driver.js +78 -5
- package/dist/platform/git-driver.js.map +1 -1
- package/dist/platform/platform-poller.d.ts +26 -5
- package/dist/platform/platform-poller.d.ts.map +1 -1
- package/dist/platform/platform-poller.js +362 -34
- package/dist/platform/platform-poller.js.map +1 -1
- package/dist/platform/plugin-registry.d.ts.map +1 -1
- package/dist/platform/plugin-registry.js +14 -2
- package/dist/platform/plugin-registry.js.map +1 -1
- package/dist/platform/plugins/github/baxian-plugin.json +1 -1
- package/dist/platform/plugins/github/driver.json +17 -3
- package/dist/platform/plugins/github/skills/baxian-cli-gh/SKILL.md +21 -11
- package/dist/platform/plugins/github/skills/baxian-cli-gh/agents/openai.yaml +2 -0
- package/dist/platform/pr-binding.d.ts.map +1 -1
- package/dist/platform/pr-binding.js +0 -2
- package/dist/platform/pr-binding.js.map +1 -1
- package/dist/{github → platform}/pr-conversation-cache.d.ts +11 -4
- package/dist/platform/pr-conversation-cache.d.ts.map +1 -0
- package/dist/platform/pr-conversation-cache.js +199 -0
- package/dist/platform/pr-conversation-cache.js.map +1 -0
- package/dist/platform/preflight-exec.d.ts +21 -0
- package/dist/platform/preflight-exec.d.ts.map +1 -0
- package/dist/platform/preflight-exec.js +62 -0
- package/dist/platform/preflight-exec.js.map +1 -0
- package/dist/platform/review-timeline.d.ts +16 -0
- package/dist/platform/review-timeline.d.ts.map +1 -0
- package/dist/platform/review-timeline.js +195 -0
- package/dist/platform/review-timeline.js.map +1 -0
- package/dist/platform/row-schema.d.ts.map +1 -1
- package/dist/platform/row-schema.js +1 -0
- package/dist/platform/row-schema.js.map +1 -1
- package/dist/platform/startup.d.ts +34 -2
- package/dist/platform/startup.d.ts.map +1 -1
- package/dist/platform/startup.js +107 -4
- package/dist/platform/startup.js.map +1 -1
- package/dist/platform/types.d.ts +4 -0
- package/dist/platform/types.d.ts.map +1 -1
- package/dist/platform/types.js +6 -4
- package/dist/platform/types.js.map +1 -1
- package/dist/platform/verdict-engine.d.ts.map +1 -1
- package/dist/platform/verdict-engine.js +0 -2
- package/dist/platform/verdict-engine.js.map +1 -1
- package/dist/shared/git-url.d.ts +1 -0
- package/dist/shared/git-url.d.ts.map +1 -1
- package/dist/shared/git-url.js +3 -0
- package/dist/shared/git-url.js.map +1 -1
- package/dist/shared/types.d.ts +90 -9
- package/dist/shared/types.d.ts.map +1 -1
- package/dist/shared/types.js.map +1 -1
- package/dist/skill/registry.d.ts +9 -2
- package/dist/skill/registry.d.ts.map +1 -1
- package/dist/skill/registry.js +88 -54
- package/dist/skill/registry.js.map +1 -1
- package/dist/skills/baxian-pr-feedback/SKILL.md +5 -11
- package/dist/skills/baxian-pr-recheck/SKILL.md +4 -43
- package/dist/skills/baxian-pr-review/SKILL.md +5 -42
- package/dist/skills/baxian-research/SKILL.md +1 -1
- package/dist/skills/baxian-server-feedback/SKILL.md +7 -5
- package/dist/skills/baxian-signals/SKILL.md +21 -8
- package/dist/skills/baxian-task-check/SKILL.md +5 -5
- package/dist/state/agent-store.d.ts.map +1 -1
- package/dist/state/agent-store.js +25 -2
- package/dist/state/agent-store.js.map +1 -1
- package/dist/state/review-store.d.ts +21 -1
- package/dist/state/review-store.d.ts.map +1 -1
- package/dist/state/review-store.js +132 -0
- package/dist/state/review-store.js.map +1 -1
- package/dist/state/task-store.d.ts +6 -0
- package/dist/state/task-store.d.ts.map +1 -1
- package/dist/state/task-store.js +262 -21
- package/dist/state/task-store.js.map +1 -1
- package/dist/terminal/attach.d.ts.map +1 -1
- package/dist/terminal/attach.js +7 -6
- package/dist/terminal/attach.js.map +1 -1
- package/dist/web/assets/{index-CwYBVTyn.css → index-BPv6vv3U.css} +1 -1
- package/dist/web/assets/index-BXfgaFNm.js +18 -0
- package/dist/web/index.html +2 -2
- package/package.json +1 -1
- package/dist/github/mapper.d.ts +0 -9
- package/dist/github/mapper.d.ts.map +0 -1
- package/dist/github/mapper.js +0 -25
- package/dist/github/mapper.js.map +0 -1
- package/dist/github/poller.d.ts +0 -73
- package/dist/github/poller.d.ts.map +0 -1
- package/dist/github/poller.js +0 -556
- package/dist/github/poller.js.map +0 -1
- package/dist/github/pr-conversation-cache.d.ts.map +0 -1
- package/dist/github/pr-conversation-cache.js +0 -105
- package/dist/github/pr-conversation-cache.js.map +0 -1
- package/dist/github/pr-conversation.d.ts +0 -7
- package/dist/github/pr-conversation.d.ts.map +0 -1
- package/dist/github/pr-conversation.js +0 -175
- package/dist/github/pr-conversation.js.map +0 -1
- package/dist/github/resolver.d.ts +0 -8
- package/dist/github/resolver.d.ts.map +0 -1
- package/dist/github/resolver.js +0 -28
- package/dist/github/resolver.js.map +0 -1
- package/dist/state/post-approve-store.d.ts +0 -23
- package/dist/state/post-approve-store.d.ts.map +0 -1
- package/dist/state/post-approve-store.js +0 -82
- package/dist/state/post-approve-store.js.map +0 -1
- package/dist/web/assets/index-DtnDvjOU.js +0 -16
package/dist/agent/manager.d.ts
CHANGED
|
@@ -1,12 +1,13 @@
|
|
|
1
|
-
import
|
|
2
|
-
import type {
|
|
1
|
+
import { type AgentGitPreflight } from './preflight.js';
|
|
2
|
+
import type { AfterDone, BaxianConfig, AgentConfig, AgentBindingFacts, HostConfig, ProjectConfig, ReviewMode, ReviewDispatchLease, ReviewPhase, ServerSignalKind, ServerSignalRecovery, ServerSignalRecoveryReason, SpecDocument, TaskPhase, TaskState, TaskStatus } from '../shared/index.js';
|
|
3
|
+
import { GitDriver } from '../platform/git-driver.js';
|
|
3
4
|
import type { PluginRegistry } from '../platform/plugin-registry.js';
|
|
4
5
|
import type { NormalizedRow } from '../platform/row-schema.js';
|
|
5
6
|
import { type PrRejection } from '../platform/pr-binding.js';
|
|
6
7
|
import { type PendingFeedbackResult } from '../platform/feedback.js';
|
|
8
|
+
import { type PlatformBindingMismatch } from '../platform/startup.js';
|
|
7
9
|
import type { AgentStore } from '../state/agent-store.js';
|
|
8
10
|
import type { TaskStore } from '../state/task-store.js';
|
|
9
|
-
import { PostApproveStore, type PostApproveCompletion } from '../state/post-approve-store.js';
|
|
10
11
|
import type { LockManager } from '../state/lock.js';
|
|
11
12
|
import type { EventBus } from '../event/bus.js';
|
|
12
13
|
import type { ErrorRecordStore } from '../state/error-record-store.js';
|
|
@@ -16,11 +17,11 @@ import { type LineageViolation } from './lineage.js';
|
|
|
16
17
|
import { type TmuxSessionRef, type PaneRef } from './tmux.js';
|
|
17
18
|
import { RepoStore, type RepoStoreCache } from './repo-store.js';
|
|
18
19
|
import type { PaneStreamerManager } from './pane-streamer-manager.js';
|
|
19
|
-
import { PhaseSignalWatcher } from './phase-signal-watcher.js';
|
|
20
|
+
import { PhaseSignalWatcher, type NeedInputCommitIntent, type NeedInputCommitResult } from './phase-signal-watcher.js';
|
|
20
21
|
import type { PhaseSignalKind } from './phase-signal.js';
|
|
21
22
|
import { ReviewTransport } from './review-transport.js';
|
|
22
|
-
import type
|
|
23
|
-
import { type PostMergeCleanupContext } from './prompt.js';
|
|
23
|
+
import { type ReviewStore } from '../state/review-store.js';
|
|
24
|
+
import { type PostMergeCleanupContext, type PlatformCliDescriptor, type ServerFeedbackCorrectionPrompt } from './prompt.js';
|
|
24
25
|
export interface EnsureSessionResult {
|
|
25
26
|
ok: true;
|
|
26
27
|
createdSession: boolean;
|
|
@@ -107,8 +108,8 @@ export interface AgentManagerDeps {
|
|
|
107
108
|
imageStagingRoot?: string;
|
|
108
109
|
repoStoreFactory?: (runner: CommandRunner, repoSlug: string, mode: AgentConfig['mode'], host: HostConfig | undefined, cache: RepoStoreCache, agentId: string, workdir?: string) => RepoStore;
|
|
109
110
|
paneStreamerManager?: PaneStreamerManager;
|
|
110
|
-
postApproveStore?: PostApproveStore;
|
|
111
111
|
pluginRegistry?: PluginRegistry;
|
|
112
|
+
platformDefaultBranchOf?: (projectId: string) => string | undefined;
|
|
112
113
|
phaseSignalWatcher?: PhaseSignalWatcher;
|
|
113
114
|
errorRecordStore?: ErrorRecordStore;
|
|
114
115
|
reviewStore?: ReviewStore;
|
|
@@ -118,15 +119,13 @@ export interface AgentManagerDeps {
|
|
|
118
119
|
greeting?: number;
|
|
119
120
|
};
|
|
120
121
|
dispatchAckTimeoutMs?: number;
|
|
122
|
+
needInputRetryIntervalMs?: number;
|
|
121
123
|
dispatchSettleTimeoutMs?: number;
|
|
122
124
|
}
|
|
123
|
-
export declare class PlatformCloseError extends Error {
|
|
124
|
-
readonly step: 'close' | 'deleteBranch';
|
|
125
|
-
constructor(step: 'close' | 'deleteBranch', cause: unknown);
|
|
126
|
-
}
|
|
127
125
|
export declare class PlatformMergeRecheckError extends Error {
|
|
126
|
+
readonly kind: 'pending-feedback' | 'provenance-invalid';
|
|
128
127
|
readonly reason: string;
|
|
129
|
-
constructor(reason: string);
|
|
128
|
+
constructor(kind: 'pending-feedback' | 'provenance-invalid', reason: string);
|
|
130
129
|
}
|
|
131
130
|
export interface TransitionResult {
|
|
132
131
|
task: TaskState;
|
|
@@ -148,6 +147,8 @@ interface SessionDispatchOpts {
|
|
|
148
147
|
total: number;
|
|
149
148
|
};
|
|
150
149
|
serverPriorFindings?: string;
|
|
150
|
+
serverFindingsDigest?: string;
|
|
151
|
+
serverFeedbackCorrection?: ServerFeedbackCorrectionPrompt;
|
|
151
152
|
serverPriorResponse?: string;
|
|
152
153
|
specDocuments?: readonly SpecDocument[];
|
|
153
154
|
armBeforeInject?: (ctx: DispatchArmContext) => Promise<boolean>;
|
|
@@ -155,6 +156,7 @@ interface SessionDispatchOpts {
|
|
|
155
156
|
interface StartSessionOpts extends SessionDispatchOpts {
|
|
156
157
|
preserveBindingOnFailure?: boolean;
|
|
157
158
|
dispatchPassToken?: string;
|
|
159
|
+
dispatchReviewLease?: Pick<ReviewDispatchLease, 'generation' | 'claimId' | 'signalToken' | 'headSha' | 'passToken' | 'failToken' | 'effectiveRound' | 'qaPhase'>;
|
|
158
160
|
dispatchPendingBudget?: {
|
|
159
161
|
since: number;
|
|
160
162
|
budgetAlerted?: boolean;
|
|
@@ -162,6 +164,7 @@ interface StartSessionOpts extends SessionDispatchOpts {
|
|
|
162
164
|
}
|
|
163
165
|
export interface ContinueSessionOpts extends SessionDispatchOpts {
|
|
164
166
|
postApproveRedispatchCount?: number;
|
|
167
|
+
postApproveEpisode?: PostApproveEpisodeKey;
|
|
165
168
|
serverAfterDone?: {
|
|
166
169
|
kind: 'branch' | 'pr';
|
|
167
170
|
branch: string;
|
|
@@ -182,6 +185,12 @@ export interface MergePrOpts {
|
|
|
182
185
|
matchHeadSha?: string;
|
|
183
186
|
humanOverride?: boolean;
|
|
184
187
|
}
|
|
188
|
+
export interface PostApproveEpisodeKey {
|
|
189
|
+
generation: string;
|
|
190
|
+
token: string;
|
|
191
|
+
headSha: string;
|
|
192
|
+
}
|
|
193
|
+
type ReviewDispatchFence = Pick<ReviewDispatchLease, 'generation' | 'signalToken' | 'headSha' | 'passToken' | 'failToken' | 'effectiveRound' | 'qaPhase'>;
|
|
185
194
|
export type CodeInterdiffResult = {
|
|
186
195
|
ok: true;
|
|
187
196
|
diff: string;
|
|
@@ -193,8 +202,12 @@ export type CodeInterdiffResult = {
|
|
|
193
202
|
reason: 'released';
|
|
194
203
|
};
|
|
195
204
|
export interface ServerReviewDriver {
|
|
196
|
-
dispatchCodeReview(task: TaskState
|
|
197
|
-
|
|
205
|
+
dispatchCodeReview(task: TaskState, opts?: {
|
|
206
|
+
bumpRound?: boolean;
|
|
207
|
+
}): Promise<boolean>;
|
|
208
|
+
dispatchSpecReview(task: TaskState, opts?: {
|
|
209
|
+
bumpRound?: boolean;
|
|
210
|
+
}): Promise<boolean>;
|
|
198
211
|
}
|
|
199
212
|
export declare function canDispatchWithBinding(binding: AgentBindingFacts | null | undefined): boolean;
|
|
200
213
|
export declare const RECOVERABLE_QA_DISPATCH_HOLD_PHASES: Set<string>;
|
|
@@ -207,6 +220,14 @@ export interface PendingDispatchRetry {
|
|
|
207
220
|
since: number;
|
|
208
221
|
budgetAlerted?: boolean;
|
|
209
222
|
}
|
|
223
|
+
export interface PostApproveCompletion {
|
|
224
|
+
token: string;
|
|
225
|
+
approvedHeadSha: string;
|
|
226
|
+
generation: string;
|
|
227
|
+
updatedAt: string;
|
|
228
|
+
redispatchCount?: number;
|
|
229
|
+
pendingRedispatch?: boolean;
|
|
230
|
+
}
|
|
210
231
|
export declare class AgentManager {
|
|
211
232
|
private config;
|
|
212
233
|
protected agentStore: AgentStore;
|
|
@@ -218,8 +239,8 @@ export declare class AgentManager {
|
|
|
218
239
|
protected repoStoreFactory?: AgentManagerDeps['repoStoreFactory'];
|
|
219
240
|
protected repoCache: RepoStoreCache;
|
|
220
241
|
protected paneStreamerManager?: PaneStreamerManager;
|
|
221
|
-
protected postApproveStore: PostApproveStore;
|
|
222
242
|
protected pluginRegistry?: PluginRegistry;
|
|
243
|
+
private platformDefaultBranchOf?;
|
|
223
244
|
private readonly platformDriverExec;
|
|
224
245
|
protected phaseSignalWatcher?: PhaseSignalWatcher;
|
|
225
246
|
protected errorRecordStore?: ErrorRecordStore;
|
|
@@ -227,9 +248,11 @@ export declare class AgentManager {
|
|
|
227
248
|
private reviewTransportInstance?;
|
|
228
249
|
private serverReviewDriver?;
|
|
229
250
|
protected dispatchAckTimeoutMs: number;
|
|
251
|
+
private readonly needInputRetryIntervalMs;
|
|
230
252
|
protected dispatchSettleTimeoutMs: number;
|
|
231
253
|
protected dispatchAckResendIntervalMs: number;
|
|
232
254
|
private taskMutationQueue;
|
|
255
|
+
private agentOperationQueues;
|
|
233
256
|
private agentIndex;
|
|
234
257
|
private platformRunner;
|
|
235
258
|
private imageStagingRoot;
|
|
@@ -242,6 +265,7 @@ export declare class AgentManager {
|
|
|
242
265
|
protected manualCompactWaitMs: number;
|
|
243
266
|
protected runtimeLivenessProbeMs: number;
|
|
244
267
|
protected cleanComposerWaitMs: number;
|
|
268
|
+
protected platformVerificationRetryDelayMs: number;
|
|
245
269
|
protected readyStableSamples: number;
|
|
246
270
|
protected readyStableSpacingMs: number;
|
|
247
271
|
private pendingDispatchRetryByTask;
|
|
@@ -255,8 +279,10 @@ export declare class AgentManager {
|
|
|
255
279
|
private divergedAgents;
|
|
256
280
|
private deletionGeneration;
|
|
257
281
|
private compactInFlight;
|
|
282
|
+
private configInterventionKeys;
|
|
258
283
|
constructor(deps: AgentManagerDeps);
|
|
259
284
|
private withTaskLock;
|
|
285
|
+
private withAgentOperationLease;
|
|
260
286
|
private resolveTaskLockToken;
|
|
261
287
|
private assertTaskLockOwner;
|
|
262
288
|
private assertTaskGeneration;
|
|
@@ -265,12 +291,22 @@ export declare class AgentManager {
|
|
|
265
291
|
effectiveReviewMode(projectId: string): ReviewMode;
|
|
266
292
|
resolveAfterDone(task: TaskState): AfterDone;
|
|
267
293
|
private coerceAfterDone;
|
|
294
|
+
commitServerAfterDone(taskId: string): Promise<AfterDone>;
|
|
268
295
|
getReviewTransport(): ReviewTransport;
|
|
269
296
|
private prepareDispatchArtifacts;
|
|
270
297
|
private bindingWorkdirCache;
|
|
271
298
|
refreshWorkdirCacheFor(agentId: string): Promise<string | undefined>;
|
|
272
299
|
private safeEmit;
|
|
273
300
|
private emitIntervention;
|
|
301
|
+
emitConfigIntervention(projectId: string, data: Record<string, unknown> & {
|
|
302
|
+
phase: string;
|
|
303
|
+
}): Promise<void>;
|
|
304
|
+
configInterventionKey(projectId: string, data: Record<string, unknown> & {
|
|
305
|
+
phase: string;
|
|
306
|
+
}): string;
|
|
307
|
+
platformBindingInterventionKey(task: TaskState, mismatch: PlatformBindingMismatch): string;
|
|
308
|
+
retainConfigInterventionKeys(keys: ReadonlySet<string>): void;
|
|
309
|
+
emitPlatformBindingIntervention(task: TaskState, mismatch: PlatformBindingMismatch): Promise<void>;
|
|
274
310
|
private recordError;
|
|
275
311
|
replaceConfig(validated: BaxianConfig): void;
|
|
276
312
|
getConfig(): BaxianConfig;
|
|
@@ -280,6 +316,14 @@ export declare class AgentManager {
|
|
|
280
316
|
tryClaimDeletion(agentIds: readonly string[]): string | null;
|
|
281
317
|
scanActiveThenClaimDeletion(targets: readonly string[]): Promise<DeletionClaimOutcome>;
|
|
282
318
|
releaseDeletionClaim(agentIds: readonly string[]): void;
|
|
319
|
+
listActiveParticipantSeats(): Promise<Array<{
|
|
320
|
+
taskId: string;
|
|
321
|
+
projectId: string;
|
|
322
|
+
participants: Array<{
|
|
323
|
+
agentId: string;
|
|
324
|
+
expectedRole?: AgentConfig['role'];
|
|
325
|
+
}>;
|
|
326
|
+
}>>;
|
|
283
327
|
bumpDeletionGeneration(agentId: string): void;
|
|
284
328
|
deletionGenerationOf(agentId: string): number;
|
|
285
329
|
private deletionGateOpen;
|
|
@@ -289,6 +333,7 @@ export declare class AgentManager {
|
|
|
289
333
|
expectedGeneration?: number;
|
|
290
334
|
}): Promise<EnsureSessionResult>;
|
|
291
335
|
private ensureSessionLocked;
|
|
336
|
+
private agentSkillScope;
|
|
292
337
|
private provisionRepoSkills;
|
|
293
338
|
private sessionLifecycleChain;
|
|
294
339
|
private adoptGeneration;
|
|
@@ -336,6 +381,8 @@ export declare class AgentManager {
|
|
|
336
381
|
clearAwaitingHuman?: boolean;
|
|
337
382
|
fromCancelCleanup?: boolean;
|
|
338
383
|
expectedTask?: Pick<TaskState, 'status' | 'phase' | 'signalToken'>;
|
|
384
|
+
expectedReviewDispatch?: Pick<ReviewDispatchLease, 'generation' | 'claimId' | 'signalToken'>;
|
|
385
|
+
expectedPostApproveEpisode?: PostApproveEpisodeKey;
|
|
339
386
|
expectedHold?: {
|
|
340
387
|
phase: string | undefined;
|
|
341
388
|
since: string | undefined;
|
|
@@ -347,10 +394,31 @@ export declare class AgentManager {
|
|
|
347
394
|
private clearBranchLocalCleaned;
|
|
348
395
|
private releaseAgentIfBound;
|
|
349
396
|
reconcileTaskBranches(): Promise<void>;
|
|
350
|
-
private
|
|
397
|
+
private readonly needInputRetry;
|
|
398
|
+
private readonly needInputRetryInFlight;
|
|
399
|
+
private readonly gitReviewQaConfigAlerted;
|
|
400
|
+
private readonly needInputWritesInFlight;
|
|
401
|
+
private needInputWriteSeq;
|
|
402
|
+
private readonly needInputArmLocks;
|
|
403
|
+
private needInputRetryTimer;
|
|
404
|
+
private needInputRetryKey;
|
|
405
|
+
private parseNeedInputRetryKey;
|
|
406
|
+
commitNeedInputWatermark(intent: NeedInputCommitIntent): Promise<NeedInputCommitResult>;
|
|
407
|
+
private writeNeedInputWatermark;
|
|
408
|
+
private enqueueNeedInputRetry;
|
|
409
|
+
private settleNeedInputRetry;
|
|
410
|
+
private clearNeedInputRetryFor;
|
|
411
|
+
private ensureNeedInputRetryTimer;
|
|
412
|
+
private needInputRetryPass;
|
|
413
|
+
private collectSameEpochNeedInput;
|
|
414
|
+
private collectPredecessorNeedInputDelta;
|
|
415
|
+
private withNeedInputArmLock;
|
|
416
|
+
private bumpNeedInputEpochForArm;
|
|
351
417
|
private startPhaseSignalWatch;
|
|
418
|
+
private confirmNeedInputAnswered;
|
|
352
419
|
notifyHumanTerminalInput(agentId: string): Promise<void>;
|
|
353
420
|
clearAwaitingHuman(agentId: string, opts?: {
|
|
421
|
+
expectedTaskId?: string;
|
|
354
422
|
expectedHold?: {
|
|
355
423
|
phase?: string;
|
|
356
424
|
since?: string;
|
|
@@ -382,7 +450,11 @@ export declare class AgentManager {
|
|
|
382
450
|
private markPaneCancelClearing;
|
|
383
451
|
private claimCancelCleanup;
|
|
384
452
|
private releaseCancelCleanup;
|
|
385
|
-
failTaskForDispatchError(taskId: string, phase: string, agentId: string, err: DispatchTerminalError
|
|
453
|
+
failTaskForDispatchError(taskId: string, phase: string, agentId: string, err: DispatchTerminalError, opts?: {
|
|
454
|
+
expectedPostApproveEpisode?: PostApproveEpisodeKey;
|
|
455
|
+
expectedReviewDispatch?: ReviewDispatchFence;
|
|
456
|
+
expectedLockToken?: string;
|
|
457
|
+
}): Promise<void>;
|
|
386
458
|
failTasksForAgent(agentId: string, reason: string, opts?: {
|
|
387
459
|
deferPartnerCleanup?: boolean;
|
|
388
460
|
}): Promise<{
|
|
@@ -398,10 +470,11 @@ export declare class AgentManager {
|
|
|
398
470
|
phase: string | undefined;
|
|
399
471
|
since: string | undefined;
|
|
400
472
|
nonce: string | undefined;
|
|
401
|
-
}): Promise<boolean>;
|
|
473
|
+
}, extraCurrent?: (fresh: TaskState) => Promise<boolean>): Promise<boolean>;
|
|
474
|
+
private runRotatedReplay;
|
|
402
475
|
redispatchTaskPromptAfterReplRestart(agentId: string, taskId: string): Promise<boolean>;
|
|
403
476
|
private replayApprovedHolderAfterReplRestart;
|
|
404
|
-
private
|
|
477
|
+
private holdIncompleteGitPostApproveEpisode;
|
|
405
478
|
prepareRemoveTargets(agentId: string): {
|
|
406
479
|
targets: string[];
|
|
407
480
|
};
|
|
@@ -415,26 +488,23 @@ export declare class AgentManager {
|
|
|
415
488
|
projectId: string;
|
|
416
489
|
}>;
|
|
417
490
|
getProjectConfig(projectId: string): ProjectConfig | undefined;
|
|
418
|
-
getProjectByRepo(repo: string): ProjectConfig | undefined;
|
|
419
|
-
getProjectByRepoIdentity(repoKey: string): ProjectConfig | undefined;
|
|
420
491
|
platformDriverFor(projectId: string): GitDriver | undefined;
|
|
421
492
|
private findAgentGroup;
|
|
422
493
|
private longestDevWorkdirInProject;
|
|
423
494
|
getTask(taskId: string): Promise<TaskState | null>;
|
|
424
495
|
getAgentState(agentId: string): Promise<AgentBindingFacts | null>;
|
|
425
496
|
getPostApproveCompletion(taskId: string): Promise<PostApproveCompletion | null>;
|
|
426
|
-
private
|
|
427
|
-
private
|
|
428
|
-
|
|
429
|
-
|
|
430
|
-
approvedHeadSha: string;
|
|
431
|
-
redispatchCount?: number;
|
|
432
|
-
pendingRedispatch?: boolean;
|
|
433
|
-
}, opts?: {
|
|
434
|
-
clearRevocation?: boolean;
|
|
497
|
+
private completionOf;
|
|
498
|
+
private postApproveEpisodeMatches;
|
|
499
|
+
armGitPostApproveEpisode(taskId: string, expected: PostApproveEpisodeKey, opts?: {
|
|
500
|
+
recovered?: boolean;
|
|
435
501
|
}): Promise<boolean>;
|
|
436
|
-
|
|
437
|
-
|
|
502
|
+
rotateGitPostApproveEpisode(taskId: string, expected: PostApproveEpisodeKey, redispatchCount: number): Promise<PostApproveEpisodeKey | null>;
|
|
503
|
+
private stripPostApproveFields;
|
|
504
|
+
private stripPostApproveEpisodeFields;
|
|
505
|
+
private stripGitStatusScopedState;
|
|
506
|
+
confirmPostApprovePromptDelivered(taskId: string, expected: string | PostApproveEpisodeKey): Promise<void>;
|
|
507
|
+
markPostApproveSignalReceived(taskId: string, expected: string | PostApproveEpisodeKey): Promise<void>;
|
|
438
508
|
clearPostApproveCompletion(taskId: string): Promise<void>;
|
|
439
509
|
updatePostApproveCompletionIfToken(taskId: string, expectedToken: string, patch: {
|
|
440
510
|
redispatchCount?: number;
|
|
@@ -444,13 +514,16 @@ export declare class AgentManager {
|
|
|
444
514
|
key: string;
|
|
445
515
|
versionTime: number;
|
|
446
516
|
};
|
|
517
|
+
expectedGeneration?: string;
|
|
518
|
+
expectedHeadSha?: string;
|
|
447
519
|
}): Promise<boolean>;
|
|
448
520
|
revokePostApproveCompletion(taskId: string, reason: 'request-changes' | 'redispatch-cap', opts?: {
|
|
449
521
|
expectedToken?: string;
|
|
450
522
|
expectedHeadSha?: string;
|
|
523
|
+
expectedGeneration?: string;
|
|
451
524
|
}): Promise<boolean>;
|
|
452
|
-
clearPostApproveCompletionIfMatches(taskId: string,
|
|
453
|
-
completeApprovedPassToMergeReady(taskId: string,
|
|
525
|
+
clearPostApproveCompletionIfMatches(taskId: string, expected: string | PostApproveEpisodeKey): Promise<boolean>;
|
|
526
|
+
completeApprovedPassToMergeReady(taskId: string, expected: string | PostApproveEpisodeKey): Promise<{
|
|
454
527
|
task: TaskState;
|
|
455
528
|
} | {
|
|
456
529
|
refused: 'stale' | 'pending';
|
|
@@ -462,6 +535,7 @@ export declare class AgentManager {
|
|
|
462
535
|
rearmPostApproveSignal(taskId: string, opts?: {
|
|
463
536
|
skipSnapshot?: boolean;
|
|
464
537
|
}): Promise<boolean>;
|
|
538
|
+
ensurePluginSkillPools(next: BaxianConfig): Promise<void>;
|
|
465
539
|
guardGitConfigCommit(current: BaxianConfig, next: BaxianConfig, scan: (manager: AgentManager, current: BaxianConfig, next: BaxianConfig) => Promise<Array<{
|
|
466
540
|
projectId: string;
|
|
467
541
|
taskIds: string[];
|
|
@@ -474,10 +548,43 @@ export declare class AgentManager {
|
|
|
474
548
|
taskIds: string[];
|
|
475
549
|
}>;
|
|
476
550
|
}>;
|
|
477
|
-
|
|
478
|
-
|
|
551
|
+
flushTaskOutboxes(): Promise<void>;
|
|
552
|
+
private gitReviewLeaseMatches;
|
|
553
|
+
private gitReviewQaConfigUsable;
|
|
554
|
+
beginGitReviewPass(taskId: string, opts: {
|
|
555
|
+
fromStatus: TaskStatus[];
|
|
556
|
+
headSha: string;
|
|
557
|
+
bumpRound: boolean;
|
|
558
|
+
qaPhase?: 'review' | 'recheck';
|
|
559
|
+
expectSignalToken?: string;
|
|
560
|
+
expectPhase?: TaskPhase;
|
|
561
|
+
allowDuringComplete?: boolean;
|
|
562
|
+
patch?: Partial<Pick<TaskState, 'prNumber' | 'prUrl' | 'latestHeadSha' | 'branch' | 'baseBranch' | 'replyActorId' | 'replyActorStatus' | 'pendingPrSignalToken'>>;
|
|
563
|
+
}): Promise<TransitionResult | null>;
|
|
564
|
+
claimGitReviewDispatch(taskId: string, expectedGeneration?: string): Promise<{
|
|
565
|
+
task: TaskState;
|
|
566
|
+
lease: ReviewDispatchLease & {
|
|
567
|
+
phase: 'claimed';
|
|
568
|
+
claimId: string;
|
|
569
|
+
claimedAt: string;
|
|
570
|
+
};
|
|
571
|
+
} | null>;
|
|
572
|
+
approveGitReviewPass(taskId: string, opts: {
|
|
573
|
+
expectedSignalToken: string;
|
|
574
|
+
headSha: string;
|
|
575
|
+
reviewRound: number;
|
|
576
|
+
prNumber?: number;
|
|
577
|
+
prUrl?: string;
|
|
578
|
+
provenance: NonNullable<TaskState['passProvenance']>;
|
|
579
|
+
}): Promise<TaskState | null>;
|
|
580
|
+
private resetGitReviewDispatchClaim;
|
|
581
|
+
private markGitReviewDispatchUncertain;
|
|
582
|
+
private confirmUncertainGitReviewDispatch;
|
|
583
|
+
private completeGitReviewDispatch;
|
|
584
|
+
private recoverPendingGitReviewDispatchHold;
|
|
585
|
+
recoverClaimedGitReviewDispatches(): Promise<void>;
|
|
479
586
|
retryPendingGitReviewDispatches(): Promise<void>;
|
|
480
|
-
|
|
587
|
+
retryGitRemoteCleanupIntents(): Promise<void>;
|
|
481
588
|
consumeGitFeedbackRevision(taskId: string, consume: {
|
|
482
589
|
key: string;
|
|
483
590
|
versionTime: number;
|
|
@@ -489,30 +596,26 @@ export declare class AgentManager {
|
|
|
489
596
|
kind: 'returned' | 'pending';
|
|
490
597
|
task: TaskState;
|
|
491
598
|
}>;
|
|
492
|
-
returnMergeReadyToApproved(taskId: string, consume: {
|
|
493
|
-
key: string;
|
|
494
|
-
versionTime: number;
|
|
495
|
-
}): Promise<TaskState | null>;
|
|
496
599
|
setupRecoveredPostApproveSignals(): Promise<void>;
|
|
497
600
|
setupRecoveredSpecSignals(): Promise<void>;
|
|
601
|
+
private recoverServerSignalRecovery;
|
|
498
602
|
private setupRecoveredWatcherForMapping;
|
|
499
|
-
prHasDevReplySince(taskId: string, sinceIso: string): Promise<boolean>;
|
|
500
|
-
private ghCreatedAt;
|
|
501
|
-
fetchPrHeadSha(taskId: string): Promise<string>;
|
|
502
603
|
verifyPaneSignalPrNumber(taskId: string, prNumber: number): Promise<{
|
|
503
604
|
headRefName: string;
|
|
504
605
|
headSha: string;
|
|
505
|
-
|
|
506
|
-
fetchPrHeadRef(prNumber: number, projectId: string): Promise<{
|
|
507
|
-
headRefName: string;
|
|
508
|
-
headSha: string;
|
|
509
|
-
body: string;
|
|
606
|
+
targetBranch: string;
|
|
510
607
|
} | undefined>;
|
|
511
608
|
platformBindingFields(projectId: string): Partial<TaskState>;
|
|
609
|
+
private platformBindingFor;
|
|
610
|
+
agentGitPreflightContext(projectId: string): AgentGitPreflight | undefined;
|
|
611
|
+
platformCliContextOf(task: TaskState): PlatformCliDescriptor | undefined;
|
|
612
|
+
ensureGitBaseSnapshot(task: TaskState, phase: string): Promise<TaskState>;
|
|
613
|
+
noteReviewConversationRevision(taskId: string): Promise<void>;
|
|
512
614
|
private assertPlatformBinding;
|
|
513
615
|
private platformTaskAndDriver;
|
|
514
616
|
listActiveGitTasks(projectId?: string): Promise<TaskState[]>;
|
|
515
617
|
platformFetchPrView(taskId: string): Promise<NormalizedRow>;
|
|
618
|
+
platformFetchPrHeadSha(taskId: string): Promise<string>;
|
|
516
619
|
platformVerifyPrBinding(taskId: string, prNumber: number, opts?: {
|
|
517
620
|
branchOverride?: string;
|
|
518
621
|
}): Promise<{
|
|
@@ -526,15 +629,19 @@ export declare class AgentManager {
|
|
|
526
629
|
prBranch?: string;
|
|
527
630
|
}>;
|
|
528
631
|
stopPhaseSignalWatcherAgent(taskId: string, agentId: string): void;
|
|
529
|
-
|
|
530
|
-
|
|
531
|
-
|
|
632
|
+
private mutateRemoteCleanup;
|
|
633
|
+
private recordRemoteCleanupFailure;
|
|
634
|
+
private markRemoteCleanupManual;
|
|
635
|
+
processGitRemoteCleanup(taskId: string, expectedGeneration?: string): Promise<void>;
|
|
532
636
|
private platformScanComments;
|
|
533
637
|
platformVerifyAcceptedPass(taskId: string): Promise<{
|
|
534
|
-
|
|
638
|
+
kind: 'valid';
|
|
535
639
|
pendingCount: number;
|
|
536
640
|
} | {
|
|
537
|
-
|
|
641
|
+
kind: 'retryable';
|
|
642
|
+
reason: string;
|
|
643
|
+
} | {
|
|
644
|
+
kind: 'provenance-invalid';
|
|
538
645
|
reason: string;
|
|
539
646
|
}>;
|
|
540
647
|
platformPendingFeedback(taskId: string): Promise<PendingFeedbackResult>;
|
|
@@ -546,17 +653,34 @@ export declare class AgentManager {
|
|
|
546
653
|
passToken: string;
|
|
547
654
|
failToken: string;
|
|
548
655
|
};
|
|
549
|
-
|
|
656
|
+
private taskBelongsToPlatformEntry;
|
|
657
|
+
listTasksForPlatformEntry(projectId: string): Promise<TaskState[]>;
|
|
550
658
|
findTaskByBranch(branch: string, projectId: string): Promise<TaskState | undefined>;
|
|
551
|
-
|
|
552
|
-
|
|
553
|
-
|
|
659
|
+
adoptServerPr(taskId: string, pr: {
|
|
660
|
+
prNumber: number;
|
|
661
|
+
prUrl?: string;
|
|
662
|
+
headSha?: string;
|
|
663
|
+
targetBranch?: string;
|
|
664
|
+
}): Promise<boolean>;
|
|
665
|
+
updateTaskIfStatus(taskId: string, expectedStatus: TaskStatus, updates: Partial<TaskState>, alsoExpect?: Partial<Pick<TaskState, 'signalToken' | 'phase' | 'reviewRound' | 'specReviewRound'>>): Promise<boolean>;
|
|
666
|
+
claimServerSignalRecovery(taskAtEntry: TaskState, agentId: string, signalKind: ServerSignalKind, input: Omit<ServerSignalRecovery, 'signalKind' | 'sourceToken' | 'createdAt'>): Promise<TaskState | null>;
|
|
667
|
+
holdConsumedServerSignal(taskAtEntry: TaskState, agentId: string, signalKind: ServerSignalKind, input: {
|
|
668
|
+
phase: 'spec' | 'code';
|
|
669
|
+
round: number;
|
|
670
|
+
reason: ServerSignalRecoveryReason;
|
|
671
|
+
failurePhase: string;
|
|
672
|
+
}): Promise<TaskState | null>;
|
|
673
|
+
setServerSignalRecoveryMode(taskId: string, successorToken: string, mode: 'correct-response' | 'hold'): Promise<TaskState | null>;
|
|
674
|
+
holdServerSignalRecovery(taskId: string, agentId: string, successorToken: string, holdPhase: string, reason: string): Promise<TaskState | null>;
|
|
675
|
+
dispatchServerFeedbackCorrection(taskId: string, findingsJson: string): Promise<boolean>;
|
|
554
676
|
updateTask(taskId: string, updates: Partial<TaskState>): Promise<void>;
|
|
555
677
|
transitionTaskStatus(taskId: string, toStatus: TaskStatus, guard: {
|
|
556
678
|
fromStatus: TaskStatus[];
|
|
557
679
|
expectSignalToken?: string;
|
|
558
|
-
|
|
559
|
-
|
|
680
|
+
expectPhase?: TaskPhase;
|
|
681
|
+
expectPostApproveEpisode?: PostApproveEpisodeKey;
|
|
682
|
+
expectReviewDispatch?: ReviewDispatchFence;
|
|
683
|
+
}, patch?: Partial<Pick<TaskState, 'reviewRound' | 'agentId' | 'prNumber' | 'prUrl' | 'qaAgentId' | 'latestHeadSha' | 'reviewHeadAnchorSha' | 'reviewDispatchedAt' | 'fixDispatchedAt' | 'specReviewRound' | 'signalToken' | 'passToken' | 'failToken' | 'reviewRoundPending' | 'reviewDispatch' | 'phase' | 'batchIndex' | 'batchTotal' | 'branch' | 'maxRoundsContinues'>>): Promise<TransitionResult | null>;
|
|
560
684
|
private createRunnerFor;
|
|
561
685
|
private createRepoStore;
|
|
562
686
|
private ensureWorkdir;
|
|
@@ -630,6 +754,8 @@ export declare class AgentManager {
|
|
|
630
754
|
allowAwaitingHuman?: boolean;
|
|
631
755
|
clearAwaitingHuman?: boolean;
|
|
632
756
|
expectedTask?: Pick<TaskState, 'status' | 'phase' | 'signalToken'>;
|
|
757
|
+
expectedReviewDispatch?: Pick<ReviewDispatchLease, 'generation' | 'claimId' | 'signalToken'>;
|
|
758
|
+
expectedPostApproveEpisode?: PostApproveEpisodeKey;
|
|
633
759
|
expectedHold?: {
|
|
634
760
|
phase: string | undefined;
|
|
635
761
|
since: string | undefined;
|
|
@@ -650,22 +776,32 @@ export declare class AgentManager {
|
|
|
650
776
|
description: string;
|
|
651
777
|
preferredAgentId: string;
|
|
652
778
|
}): Promise<void>;
|
|
779
|
+
private gitReviewClaimMatches;
|
|
780
|
+
private gitReviewDispatchMatches;
|
|
781
|
+
dispatchGitReviewLease(taskId: string, opts?: {
|
|
782
|
+
expectedGeneration?: string;
|
|
783
|
+
pendingBudget?: {
|
|
784
|
+
since: number;
|
|
785
|
+
budgetAlerted?: boolean;
|
|
786
|
+
};
|
|
787
|
+
onQaAcquired?: (lockToken: string) => void;
|
|
788
|
+
}): Promise<TaskState>;
|
|
653
789
|
dispatchReviewToQa(taskId: string, opts?: {
|
|
654
790
|
fromStatus?: TaskStatus[];
|
|
655
791
|
bumpRound?: boolean;
|
|
656
792
|
expectSignalToken?: string;
|
|
793
|
+
expectPhase?: TaskPhase;
|
|
657
794
|
qaPhase?: 'review' | 'recheck';
|
|
658
795
|
pendingBudget?: {
|
|
659
796
|
since: number;
|
|
660
797
|
budgetAlerted?: boolean;
|
|
661
798
|
};
|
|
662
|
-
expectReviewDispatchPending?: boolean;
|
|
663
799
|
onPassArmed?: (armedToken: string) => void;
|
|
800
|
+
onQaAcquired?: (lockToken: string) => void;
|
|
801
|
+
confirmUncertainNotDelivered?: boolean;
|
|
664
802
|
}): Promise<TaskState>;
|
|
665
803
|
private runManualServerReview;
|
|
666
804
|
continueDevRound(taskId: string): Promise<TaskState>;
|
|
667
|
-
private rollbackDispatchReviewPhase1;
|
|
668
|
-
private tearDownWatcherIfTaskTerminal;
|
|
669
805
|
private devInitialSignalKinds;
|
|
670
806
|
private resolveInitialDispatch;
|
|
671
807
|
private mapTaskStateToExpectedWatchers;
|
|
@@ -676,7 +812,6 @@ export declare class AgentManager {
|
|
|
676
812
|
replaceScope?: 'task' | 'agent';
|
|
677
813
|
tokenOverride?: string;
|
|
678
814
|
}): Promise<boolean>;
|
|
679
|
-
private emitManualReviewDevParkedQaFailedIntervention;
|
|
680
815
|
retryTask(taskId: string): Promise<TaskState>;
|
|
681
816
|
editTask(taskId: string, patch: {
|
|
682
817
|
title?: string;
|
|
@@ -708,29 +843,13 @@ export declare class AgentManager {
|
|
|
708
843
|
rearmGitReconciliationWatcher(taskId: string, opts?: {
|
|
709
844
|
skipSnapshot?: boolean;
|
|
710
845
|
}): Promise<void>;
|
|
711
|
-
rotateAndSetupPhaseSignal(taskId: string, agentId: string, expectedKinds: PhaseSignalKind | readonly PhaseSignalKind[]
|
|
846
|
+
rotateAndSetupPhaseSignal(taskId: string, agentId: string, expectedKinds: PhaseSignalKind | readonly PhaseSignalKind[], guard?: {
|
|
847
|
+
expectedStatus: TaskStatus;
|
|
848
|
+
expectedToken?: string;
|
|
849
|
+
}): Promise<{
|
|
712
850
|
token: string;
|
|
713
851
|
armed: boolean;
|
|
714
852
|
}>;
|
|
715
|
-
rollbackVerdictArmFailure(taskId: string, restore: {
|
|
716
|
-
status: TaskStatus;
|
|
717
|
-
signalToken?: string;
|
|
718
|
-
reviewHeadAnchorSha?: string;
|
|
719
|
-
reviewDispatchedAt?: string;
|
|
720
|
-
reviewRoundPending?: boolean;
|
|
721
|
-
passToken?: string;
|
|
722
|
-
failToken?: string;
|
|
723
|
-
restorePair?: boolean;
|
|
724
|
-
}, opts?: {
|
|
725
|
-
expect?: {
|
|
726
|
-
status: TaskStatus;
|
|
727
|
-
signalToken?: string;
|
|
728
|
-
};
|
|
729
|
-
rearmSkipSnapshot?: boolean;
|
|
730
|
-
}): Promise<boolean>;
|
|
731
|
-
rearmPhaseSignalForCurrentPass(taskId: string, opts?: {
|
|
732
|
-
skipSnapshot?: boolean;
|
|
733
|
-
}): Promise<void>;
|
|
734
853
|
parkTaskAtSpecReady(taskId: string, opts?: {
|
|
735
854
|
specReviewRound?: number;
|
|
736
855
|
}): Promise<TaskState | null>;
|
|
@@ -748,6 +867,7 @@ export declare class AgentManager {
|
|
|
748
867
|
phase: ReviewPhase;
|
|
749
868
|
recheck?: boolean;
|
|
750
869
|
continuation?: boolean;
|
|
870
|
+
bumpRound?: boolean;
|
|
751
871
|
content: string;
|
|
752
872
|
interdiff?: string;
|
|
753
873
|
diffstat?: string;
|
|
@@ -760,8 +880,11 @@ export declare class AgentManager {
|
|
|
760
880
|
priorFindingsJson?: string;
|
|
761
881
|
priorResponseJson?: string;
|
|
762
882
|
reviewHeadAnchorSha?: string;
|
|
883
|
+
callerOwnsConsumedSignalFailure?: boolean;
|
|
884
|
+
}): Promise<TaskState | null>;
|
|
885
|
+
dispatchServerFixToDev(taskId: string, _findingsJson: string, opts?: {
|
|
886
|
+
callerOwnsConsumedSignalFailure?: boolean;
|
|
763
887
|
}): Promise<TaskState | null>;
|
|
764
|
-
dispatchServerFixToDev(taskId: string, findingsJson: string): Promise<TaskState | null>;
|
|
765
888
|
private projectRepoKey;
|
|
766
889
|
computeCodeInterdiff(taskId: string, round: number): Promise<CodeInterdiffResult>;
|
|
767
890
|
findLineageViolation(taskId: string, baseSha?: string): Promise<LineageViolation | null>;
|