baxian 2.0.3 → 2.0.4
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 +2 -2
- package/README.zh-CN.md +3 -3
- package/dist/agent/bootstrap.js +4 -4
- package/dist/agent/dispatch-reconciler.d.ts +2 -0
- package/dist/agent/dispatch-reconciler.d.ts.map +1 -1
- package/dist/agent/dispatch-reconciler.js +48 -4
- package/dist/agent/dispatch-reconciler.js.map +1 -1
- package/dist/agent/manager.d.ts +41 -4
- package/dist/agent/manager.d.ts.map +1 -1
- package/dist/agent/manager.js +707 -77
- package/dist/agent/manager.js.map +1 -1
- package/dist/agent/tmux-probe-poller.js +4 -4
- package/dist/api/agents.d.ts.map +1 -1
- package/dist/api/agents.js +2 -7
- package/dist/api/agents.js.map +1 -1
- package/dist/api/config.js +7 -7
- package/dist/api/hosts.js +6 -6
- package/dist/api/platform-guard.js +2 -2
- package/dist/api/projects.js +14 -14
- package/dist/api/projects.js.map +1 -1
- package/dist/api/tasks.d.ts.map +1 -1
- package/dist/api/tasks.js +94 -57
- package/dist/api/tasks.js.map +1 -1
- package/dist/app.d.ts +2 -0
- package/dist/app.d.ts.map +1 -1
- package/dist/app.js.map +1 -1
- package/dist/cli.js +2 -2
- package/dist/config/loader.js +5 -5
- package/dist/config/loader.js.map +1 -1
- package/dist/config/validator.js +29 -29
- package/dist/config/validator.js.map +1 -1
- package/dist/event/handlers.d.ts.map +1 -1
- package/dist/event/handlers.js +3 -0
- package/dist/event/handlers.js.map +1 -1
- package/dist/event/ws.d.ts.map +1 -1
- package/dist/event/ws.js +3 -3
- package/dist/event/ws.js.map +1 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +5 -1
- package/dist/index.js.map +1 -1
- package/dist/platform/feedback.d.ts +5 -1
- package/dist/platform/feedback.d.ts.map +1 -1
- package/dist/platform/feedback.js +7 -1
- package/dist/platform/feedback.js.map +1 -1
- package/dist/platform/platform-poller.d.ts +5 -1
- package/dist/platform/platform-poller.d.ts.map +1 -1
- package/dist/platform/platform-poller.js +8 -6
- package/dist/platform/platform-poller.js.map +1 -1
- package/dist/platform/pr-conversation-cache.d.ts +12 -7
- package/dist/platform/pr-conversation-cache.d.ts.map +1 -1
- package/dist/platform/pr-conversation-cache.js +60 -23
- package/dist/platform/pr-conversation-cache.js.map +1 -1
- package/dist/platform/review-timeline.d.ts +17 -2
- package/dist/platform/review-timeline.d.ts.map +1 -1
- package/dist/platform/review-timeline.js +93 -84
- package/dist/platform/review-timeline.js.map +1 -1
- package/dist/shared/types.d.ts +31 -1
- package/dist/shared/types.d.ts.map +1 -1
- package/dist/shared/types.js +14 -0
- package/dist/shared/types.js.map +1 -1
- package/dist/state/snapshot.d.ts +0 -1
- package/dist/state/snapshot.d.ts.map +1 -1
- package/dist/state/snapshot.js +0 -13
- package/dist/state/snapshot.js.map +1 -1
- package/dist/state/task-store.d.ts.map +1 -1
- package/dist/state/task-store.js +96 -8
- package/dist/state/task-store.js.map +1 -1
- package/dist/web/assets/index-CzVzThuT.js +15 -0
- package/dist/web/assets/{index-yqxawAPJ.css → index-Rmp4wT_5.css} +1 -1
- package/dist/web/index.html +2 -2
- package/package.json +1 -1
- package/dist/web/assets/index-CiAnjs1_.js +0 -15
package/dist/state/task-store.js
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { readFile, writeFile, readdir, unlink, rename } from 'node:fs/promises';
|
|
2
2
|
import { join } from 'node:path';
|
|
3
|
-
import { effectiveTaskReviewRound, isRecord, mapWithConcurrency, FS_READ_CONCURRENCY, TASK_PHASE_SET, } from '../shared/index.js';
|
|
3
|
+
import { effectiveTaskReviewRound, isRecord, mapWithConcurrency, FS_READ_CONCURRENCY, TASK_PHASE_SET, TASK_TERMINAL_STATUS_SET, taskMatchesAttentionGeneration, } from '../shared/index.js';
|
|
4
4
|
const SAFE_ID = /^[A-Za-z0-9_-]+$/;
|
|
5
5
|
function withTaskFileContext(file, error) {
|
|
6
6
|
if (error instanceof Error)
|
|
@@ -13,9 +13,9 @@ const TASK_FIELDS = [
|
|
|
13
13
|
'reviewDispatchedAt', 'prFeedbackReceivedAt', 'reviewConversationUpdatedAt', 'fixDispatchedAt', 'reviewRound', 'reviewRoundPending', 'specReviewRound', 'phase', 'deliveryConfirmation', 'signalToken',
|
|
14
14
|
'status', 'createdAt', 'updatedAt', 'images',
|
|
15
15
|
'maxRoundsContinues',
|
|
16
|
-
'postApproveRevoked', 'postApproveHeadSha', '
|
|
16
|
+
'postApproveRevoked', 'postApproveHeadSha', 'attention',
|
|
17
17
|
'passToken', 'failToken', 'pendingPrSignalToken', 'postApproveToken', 'postApproveGeneration', 'postApprovePhase', 'reviewDispatch', 'platformBinding', 'baseBranch', 'replyActorId', 'replyActorStatus',
|
|
18
|
-
'closedUnmergedAnchor', 'passProvenance', 'consumedFeedback', 'outbox', 'pendingRedispatch', 'redispatchCount',
|
|
18
|
+
'closedUnmergedAnchor', 'passProvenance', 'consumedFeedback', 'outbox', 'replacementTaskId', 'pendingRedispatch', 'redispatchCount',
|
|
19
19
|
];
|
|
20
20
|
const REVIEW_TOKEN_RE = /^[0-9a-f]{12}$/;
|
|
21
21
|
const TASK_STATUSES = new Set([
|
|
@@ -23,6 +23,7 @@ const TASK_STATUSES = new Set([
|
|
|
23
23
|
'merged', 'done', 'max_rounds', 'failed', 'cancelled',
|
|
24
24
|
]);
|
|
25
25
|
const HEAD_SHA_RE = /^[0-9a-f]{7,64}$/i;
|
|
26
|
+
const TASK_OPERATIONS = new Set(['advance', 'verdict', 'cancel', 'retry']);
|
|
26
27
|
const REMOTE_FAILURE_KINDS = new Set([
|
|
27
28
|
'config', 'binding', 'close', 'persist', 'delete', 'probe', 'tip-changed',
|
|
28
29
|
]);
|
|
@@ -122,9 +123,13 @@ function validateTask(raw) {
|
|
|
122
123
|
for (const field of [
|
|
123
124
|
'prUrl', 'branch', 'latestHeadSha', 'reviewHeadAnchorSha', 'reviewDispatchedAt',
|
|
124
125
|
'prFeedbackReceivedAt', 'reviewConversationUpdatedAt', 'fixDispatchedAt', 'signalToken',
|
|
125
|
-
'postApproveHeadSha',
|
|
126
|
+
'postApproveHeadSha', 'replacementTaskId',
|
|
126
127
|
])
|
|
127
128
|
optionalString(raw, field);
|
|
129
|
+
if (raw.replacementTaskId !== undefined
|
|
130
|
+
&& (!SAFE_ID.test(raw.replacementTaskId) || raw.replacementTaskId === raw.id)) {
|
|
131
|
+
throw taskSchemaError('replacementTaskId', 'a different safe task id when present');
|
|
132
|
+
}
|
|
128
133
|
if (!Number.isInteger(raw.reviewRound) || raw.reviewRound < 0) {
|
|
129
134
|
throw taskSchemaError('reviewRound', 'an integer >= 0');
|
|
130
135
|
}
|
|
@@ -146,10 +151,14 @@ function validateTask(raw) {
|
|
|
146
151
|
if (typeof raw.status !== 'string' || !TASK_STATUSES.has(raw.status)) {
|
|
147
152
|
throw taskSchemaError('status', 'a known task status');
|
|
148
153
|
}
|
|
154
|
+
if (raw.replacementTaskId !== undefined
|
|
155
|
+
&& !TASK_TERMINAL_STATUS_SET.has(raw.status)) {
|
|
156
|
+
throw taskSchemaError('replacementTaskId', 'present only on a terminal source task');
|
|
157
|
+
}
|
|
149
158
|
optionalInteger(raw, 'prNumber', 1);
|
|
150
159
|
optionalInteger(raw, 'specReviewRound', 0);
|
|
151
160
|
optionalInteger(raw, 'maxRoundsContinues', 0);
|
|
152
|
-
for (const field of ['branchCreatedByBaxian', '
|
|
161
|
+
for (const field of ['branchCreatedByBaxian', 'reviewRoundPending'])
|
|
153
162
|
optionalBoolean(raw, field);
|
|
154
163
|
if (raw.images !== undefined && (!Array.isArray(raw.images)
|
|
155
164
|
|| raw.images.some(image => typeof image !== 'string' || image.trim() === ''))) {
|
|
@@ -158,6 +167,7 @@ function validateTask(raw) {
|
|
|
158
167
|
validateCleanupPending(raw, 'branchCleanupPending');
|
|
159
168
|
validateCleanupPending(raw, 'branchCleanupSkipped');
|
|
160
169
|
validateRemoteCleanup(raw);
|
|
170
|
+
validateAttention(raw);
|
|
161
171
|
if (raw.branchLocalCleaned !== undefined) {
|
|
162
172
|
const cleaned = raw.branchLocalCleaned;
|
|
163
173
|
if (!isRecord(cleaned)
|
|
@@ -174,12 +184,60 @@ function validateTask(raw) {
|
|
|
174
184
|
throw taskSchemaError('participants', 'distinct dev and qa agent ids');
|
|
175
185
|
}
|
|
176
186
|
if ((raw.devAgentId === '') !== (raw.qaAgentId === undefined)) {
|
|
177
|
-
throw taskSchemaError('participants', 'a complete dev and qa
|
|
187
|
+
throw taskSchemaError('participants', 'a complete dev and qa Agent Team, or neither when unassigned');
|
|
178
188
|
}
|
|
179
189
|
if (raw.agentId !== '' && raw.agentId !== raw.devAgentId) {
|
|
180
190
|
throw taskSchemaError('agentId', 'the task dev agent id');
|
|
181
191
|
}
|
|
182
192
|
}
|
|
193
|
+
function validateAttention(raw) {
|
|
194
|
+
const attention = raw.attention;
|
|
195
|
+
if (attention === undefined)
|
|
196
|
+
return;
|
|
197
|
+
if (!isRecord(attention))
|
|
198
|
+
throw taskSchemaError('attention', 'an object when present');
|
|
199
|
+
for (const field of ['reason', 'runbook', 'occurredAt']) {
|
|
200
|
+
if (typeof attention[field] !== 'string' || attention[field].trim() === '') {
|
|
201
|
+
throw taskSchemaError(`attention.${field}`, 'a non-empty string');
|
|
202
|
+
}
|
|
203
|
+
}
|
|
204
|
+
if (!Number.isFinite(Date.parse(attention.occurredAt))) {
|
|
205
|
+
throw taskSchemaError('attention.occurredAt', 'an ISO timestamp');
|
|
206
|
+
}
|
|
207
|
+
if (!Array.isArray(attention.recommendedActions)
|
|
208
|
+
|| attention.recommendedActions.length === 0
|
|
209
|
+
|| new Set(attention.recommendedActions).size !== attention.recommendedActions.length
|
|
210
|
+
|| attention.recommendedActions.some(action => typeof action !== 'string' || !TASK_OPERATIONS.has(action))) {
|
|
211
|
+
throw taskSchemaError('attention.recommendedActions', 'unique task operations');
|
|
212
|
+
}
|
|
213
|
+
const generation = attention.generation;
|
|
214
|
+
if (!isRecord(generation))
|
|
215
|
+
throw taskSchemaError('attention.generation', 'an object');
|
|
216
|
+
if (typeof generation.status !== 'string' || !TASK_STATUSES.has(generation.status)) {
|
|
217
|
+
throw taskSchemaError('attention.generation.status', 'a known task status');
|
|
218
|
+
}
|
|
219
|
+
requireString(generation, 'agentId', true);
|
|
220
|
+
if (!Number.isInteger(generation.reviewRound) || generation.reviewRound < 0) {
|
|
221
|
+
throw taskSchemaError('attention.generation.reviewRound', 'an integer >= 0');
|
|
222
|
+
}
|
|
223
|
+
if (generation.phase !== undefined
|
|
224
|
+
&& (typeof generation.phase !== 'string' || !TASK_PHASE_SET.has(generation.phase))) {
|
|
225
|
+
throw taskSchemaError('attention.generation.phase', 'spec or code when present');
|
|
226
|
+
}
|
|
227
|
+
optionalString(generation, 'signalToken');
|
|
228
|
+
optionalInteger(generation, 'specReviewRound', 0);
|
|
229
|
+
if (generation.postApproveGeneration !== undefined
|
|
230
|
+
&& (typeof generation.postApproveGeneration !== 'string'
|
|
231
|
+
|| !REVIEW_TOKEN_RE.test(generation.postApproveGeneration))) {
|
|
232
|
+
throw taskSchemaError('attention.generation.postApproveGeneration', 'a 12-hex token when present');
|
|
233
|
+
}
|
|
234
|
+
optionalString(generation, 'postApproveToken');
|
|
235
|
+
if (generation.remoteCleanupGeneration !== undefined
|
|
236
|
+
&& (typeof generation.remoteCleanupGeneration !== 'string'
|
|
237
|
+
|| !REVIEW_TOKEN_RE.test(generation.remoteCleanupGeneration))) {
|
|
238
|
+
throw taskSchemaError('attention.generation.remoteCleanupGeneration', 'a 12-hex token when present');
|
|
239
|
+
}
|
|
240
|
+
}
|
|
183
241
|
function validateGitReviewFields(raw) {
|
|
184
242
|
optionalBoolean(raw, 'pendingRedispatch');
|
|
185
243
|
optionalInteger(raw, 'redispatchCount', 0);
|
|
@@ -321,6 +379,7 @@ function validateGitReviewFields(raw) {
|
|
|
321
379
|
throw taskSchemaError('outbox', 'an array of pending operation entries when present');
|
|
322
380
|
const keys = new Set();
|
|
323
381
|
let hasSpecVerdict = false;
|
|
382
|
+
let hasCodeVerdict = false;
|
|
324
383
|
for (const entry of outbox) {
|
|
325
384
|
if (!isRecord(entry) || typeof entry.key !== 'string' || entry.key.trim() === ''
|
|
326
385
|
|| keys.has(entry.key) || !isRecord(entry.data)) {
|
|
@@ -329,8 +388,32 @@ function validateGitReviewFields(raw) {
|
|
|
329
388
|
keys.add(entry.key);
|
|
330
389
|
if (entry.type === 'human.intervention')
|
|
331
390
|
continue;
|
|
391
|
+
if (entry.type === 'git.code-verdict') {
|
|
392
|
+
if (hasCodeVerdict)
|
|
393
|
+
throw taskSchemaError('outbox', 'at most one git.code-verdict entry');
|
|
394
|
+
hasCodeVerdict = true;
|
|
395
|
+
const data = entry.data;
|
|
396
|
+
const expectedToken = data.kind === 'pass' ? raw.passToken : data.kind === 'fail' ? raw.failToken : undefined;
|
|
397
|
+
if (!REVIEW_TOKEN_RE.test(entry.key)
|
|
398
|
+
|| entry.key !== data.token
|
|
399
|
+
|| !Number.isInteger(data.prNumber) || data.prNumber < 1
|
|
400
|
+
|| (data.kind !== 'pass' && data.kind !== 'fail')
|
|
401
|
+
|| typeof data.anchorSha !== 'string' || !HEAD_SHA_RE.test(data.anchorSha)
|
|
402
|
+
|| typeof data.token !== 'string' || !REVIEW_TOKEN_RE.test(data.token)
|
|
403
|
+
|| typeof data.comments !== 'string'
|
|
404
|
+
|| (data.writeAttemptedAt !== undefined
|
|
405
|
+
&& (typeof data.writeAttemptedAt !== 'string'
|
|
406
|
+
|| !Number.isFinite(Date.parse(data.writeAttemptedAt))))
|
|
407
|
+
|| raw.status !== 'review' || raw.phase === 'spec'
|
|
408
|
+
|| raw.prNumber !== data.prNumber
|
|
409
|
+
|| raw.reviewHeadAnchorSha !== data.anchorSha
|
|
410
|
+
|| expectedToken !== data.token) {
|
|
411
|
+
throw taskSchemaError('outbox', 'a valid current code-phase git verdict operation');
|
|
412
|
+
}
|
|
413
|
+
continue;
|
|
414
|
+
}
|
|
332
415
|
if (entry.type !== 'git.spec-verdict') {
|
|
333
|
-
throw taskSchemaError('outbox.type', 'human.intervention or git.
|
|
416
|
+
throw taskSchemaError('outbox.type', 'human.intervention, git.spec-verdict, or git.code-verdict');
|
|
334
417
|
}
|
|
335
418
|
if (hasSpecVerdict)
|
|
336
419
|
throw taskSchemaError('outbox', 'at most one git.spec-verdict entry');
|
|
@@ -340,7 +423,8 @@ function validateGitReviewFields(raw) {
|
|
|
340
423
|
|| !Number.isInteger(data.prNumber) || data.prNumber < 1
|
|
341
424
|
|| typeof data.comments !== 'string' || data.comments.trim() === ''
|
|
342
425
|
|| (data.writeAttemptedAt !== undefined
|
|
343
|
-
&& (typeof data.writeAttemptedAt !== 'string'
|
|
426
|
+
&& (typeof data.writeAttemptedAt !== 'string'
|
|
427
|
+
|| !Number.isFinite(Date.parse(data.writeAttemptedAt))))
|
|
344
428
|
|| raw.phase !== 'spec' || raw.prNumber !== data.prNumber
|
|
345
429
|
|| (raw.status !== 'spec-ready' && raw.status !== 'max_rounds')
|
|
346
430
|
|| !Number.isInteger(raw.specReviewRound) || raw.specReviewRound < 1) {
|
|
@@ -364,6 +448,10 @@ function sanitizeTask(state) {
|
|
|
364
448
|
}
|
|
365
449
|
}
|
|
366
450
|
validateTask(out);
|
|
451
|
+
if (out.attention
|
|
452
|
+
&& !taskMatchesAttentionGeneration(out, out.attention.generation)) {
|
|
453
|
+
delete out.attention;
|
|
454
|
+
}
|
|
367
455
|
return out;
|
|
368
456
|
}
|
|
369
457
|
export class TaskStore {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"task-store.js","sourceRoot":"","sources":["../../src/state/task-store.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"task-store.js","sourceRoot":"","sources":["../../src/state/task-store.ts"],"names":[],"mappings":"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"}
|