baxian 1.2.20 → 1.2.22
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/dist/agent/manager.d.ts +5 -0
- package/dist/agent/manager.d.ts.map +1 -1
- package/dist/agent/manager.js +274 -29
- package/dist/agent/manager.js.map +1 -1
- package/dist/agent/phase-signal-watcher.d.ts +6 -0
- package/dist/agent/phase-signal-watcher.d.ts.map +1 -1
- package/dist/agent/phase-signal-watcher.js +62 -0
- package/dist/agent/phase-signal-watcher.js.map +1 -1
- package/dist/agent/phase-signal.d.ts +4 -1
- package/dist/agent/phase-signal.d.ts.map +1 -1
- package/dist/agent/phase-signal.js +2 -1
- package/dist/agent/phase-signal.js.map +1 -1
- package/dist/agent/prompt.d.ts +2 -1
- package/dist/agent/prompt.d.ts.map +1 -1
- package/dist/agent/prompt.js +152 -278
- package/dist/agent/prompt.js.map +1 -1
- package/dist/api/projects.js +8 -1
- package/dist/api/projects.js.map +1 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +2 -1
- package/dist/index.js.map +1 -1
- package/dist/shared/constants.js +5 -5
- package/dist/shared/constants.js.map +1 -1
- package/dist/skill/registry.d.ts +2 -0
- package/dist/skill/registry.d.ts.map +1 -1
- package/dist/skill/registry.js +16 -0
- package/dist/skill/registry.js.map +1 -1
- package/dist/skills/baxian-greeting/SKILL.md +15 -0
- package/dist/skills/baxian-greeting/agents/openai.yaml +2 -0
- package/dist/skills/baxian-pr-feedback/SKILL.md +20 -3
- package/dist/skills/baxian-pr-recheck/SKILL.md +11 -11
- package/dist/skills/baxian-pr-review/SKILL.md +11 -11
- package/dist/skills/baxian-server-feedback/SKILL.md +38 -0
- package/dist/skills/baxian-server-feedback/agents/openai.yaml +2 -0
- package/dist/skills/baxian-server-review/SKILL.md +55 -0
- package/dist/skills/baxian-server-review/agents/openai.yaml +2 -0
- package/dist/skills/baxian-signals/SKILL.md +11 -5
- package/dist/skills/baxian-task-check/SKILL.md +35 -20
- package/package.json +1 -1
package/dist/agent/manager.d.ts
CHANGED
|
@@ -80,6 +80,7 @@ export interface AgentManagerDeps {
|
|
|
80
80
|
bootstrapTimeoutsMs?: {
|
|
81
81
|
trustDialog?: number;
|
|
82
82
|
waitReplReady?: number;
|
|
83
|
+
greeting?: number;
|
|
83
84
|
};
|
|
84
85
|
dispatchAckTimeoutMs?: number;
|
|
85
86
|
dispatchSettleTimeoutMs?: number;
|
|
@@ -137,6 +138,7 @@ export declare class AgentManager {
|
|
|
137
138
|
private platformRunner;
|
|
138
139
|
private imageStagingRoot;
|
|
139
140
|
private bootstrapTimeoutsMs;
|
|
141
|
+
protected greetingMaxAttempts: number;
|
|
140
142
|
private runtimeMenuWatchers;
|
|
141
143
|
protected runtimeMenuPollIntervalMs: number;
|
|
142
144
|
protected compactIdleWaitMs: number;
|
|
@@ -186,6 +188,9 @@ export declare class AgentManager {
|
|
|
186
188
|
private buildFreshSession;
|
|
187
189
|
private buildFreshSessionLocked;
|
|
188
190
|
startBootstrapAsync(agentId: string, creationToken: string): Promise<void>;
|
|
191
|
+
private runGreetingHandshake;
|
|
192
|
+
private markGreetingFailed;
|
|
193
|
+
regreetHeldAgent(agentId: string): Promise<boolean>;
|
|
189
194
|
private markDialogPending;
|
|
190
195
|
private markBootstrapFailed;
|
|
191
196
|
handleDialogPendingFromRuntime(agentId: string, err: unknown, opts?: {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"manager.d.ts","sourceRoot":"","sources":["../../src/agent/manager.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"manager.d.ts","sourceRoot":"","sources":["../../src/agent/manager.ts"],"names":[],"mappings":"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"}
|
package/dist/agent/manager.js
CHANGED
|
@@ -13,7 +13,7 @@ import { WorktreeManager } from './worktree.js';
|
|
|
13
13
|
import { RepoStore, createRepoStoreCache } from './repo-store.js';
|
|
14
14
|
import { PhaseSignalWatcher } from './phase-signal-watcher.js';
|
|
15
15
|
import { ReviewTransport } from './review-transport.js';
|
|
16
|
-
import { buildPromptInline, buildPostMergeCleanupPrompt, PromptSizeError, RequiredSkillsMissingError, MAX_PROMPT_BYTES_ROUTE_LIMIT, } from './prompt.js';
|
|
16
|
+
import { buildPromptInline, buildGreetingPrompt, buildPostMergeCleanupPrompt, PromptSizeError, RequiredSkillsMissingError, MAX_PROMPT_BYTES_ROUTE_LIMIT, } from './prompt.js';
|
|
17
17
|
import { ApiError } from '../errors.js';
|
|
18
18
|
import { prepareConfig } from '../config/loader.js';
|
|
19
19
|
export class EnsureSessionError extends Error {
|
|
@@ -123,10 +123,16 @@ function cancelPhaseDowngrades(prev, next) {
|
|
|
123
123
|
// A prompt line still holding the typed `/clear` (e.g. `❯ /clear`, `› /clear`) = the Enter was swallowed,
|
|
124
124
|
// so /clear was never submitted. After a real submission /clear wipes the screen and the composer is empty.
|
|
125
125
|
const CLEAR_PENDING_IN_COMPOSER_RE = /(?:^|\n)[ \t]*[❯>›→][ \t]*\/clear\b/;
|
|
126
|
+
// A greeting capability failure is NOT cleared by a plain Resume or by recover()'s auto-release:
|
|
127
|
+
// the agent must re-prove it can signal (restart/retry re-runs the handshake). Auto-releasing it
|
|
128
|
+
// would slip an unverified agent back to dispatchable, defeating the whole bootstrap gate.
|
|
129
|
+
const REGREET_REQUIRED_HOLD_PHASES = new Set(['greeting_failed']);
|
|
126
130
|
// Resume / recover 共用:决定 Held agent 的 binding 是否随状态恢复一起清掉。
|
|
127
131
|
export function shouldReleaseHeldBinding(state, boundTask) {
|
|
128
132
|
if (state.awaitingPhase != null && UNCLEARED_PANE_PHASES.has(state.awaitingPhase))
|
|
129
133
|
return false;
|
|
134
|
+
if (state.awaitingPhase != null && REGREET_REQUIRED_HOLD_PHASES.has(state.awaitingPhase))
|
|
135
|
+
return false;
|
|
130
136
|
const taskIsTerminal = !!boundTask && TERMINAL_STATUSES.includes(boundTask.status);
|
|
131
137
|
const turnCompleted = state.awaitingPhase != null && TURN_COMPLETED_AWAITING_PHASES.has(state.awaitingPhase);
|
|
132
138
|
return !boundTask || taskIsTerminal || turnCompleted;
|
|
@@ -167,6 +173,9 @@ export class AgentManager {
|
|
|
167
173
|
platformRunner;
|
|
168
174
|
imageStagingRoot;
|
|
169
175
|
bootstrapTimeoutsMs;
|
|
176
|
+
// Bootstrap greeting handshake: total attempts before holding the agent, to absorb a
|
|
177
|
+
// single transient slow/garbled reply without failing a genuinely capable agent.
|
|
178
|
+
greetingMaxAttempts = 2;
|
|
170
179
|
runtimeMenuWatchers = new Map();
|
|
171
180
|
runtimeMenuPollIntervalMs = 10_000;
|
|
172
181
|
compactIdleWaitMs = 5 * 60_000;
|
|
@@ -228,6 +237,7 @@ export class AgentManager {
|
|
|
228
237
|
this.bootstrapTimeoutsMs = {
|
|
229
238
|
trustDialog: deps.bootstrapTimeoutsMs?.trustDialog ?? 10_000,
|
|
230
239
|
waitReplReady: deps.bootstrapTimeoutsMs?.waitReplReady ?? 30_000,
|
|
240
|
+
greeting: deps.bootstrapTimeoutsMs?.greeting ?? 120_000,
|
|
231
241
|
};
|
|
232
242
|
}
|
|
233
243
|
withTaskLock(fn) {
|
|
@@ -583,6 +593,22 @@ export class AgentManager {
|
|
|
583
593
|
};
|
|
584
594
|
try {
|
|
585
595
|
const result = await this.ensureSession(agentId, 'create');
|
|
596
|
+
// Capability gate: hold the agent until it proves (via the baxian-signals skill)
|
|
597
|
+
// that it can load skills and echo a valid greeting signal back through its pane.
|
|
598
|
+
// A non-greeting agent that reached 'ok' would silently hang on its first real signal.
|
|
599
|
+
if (!(await this.runGreetingHandshake(agentId, cfgAtStart, result.paneId))) {
|
|
600
|
+
// A newer create may have rotated creationToken during the (slow) greeting wait.
|
|
601
|
+
// Mirror the success token-mismatch path: kill the orphan session we created so the
|
|
602
|
+
// next generation's `create` doesn't trip on a pre-existing tmux session.
|
|
603
|
+
const current = await this.agentStore.get(agentId);
|
|
604
|
+
if (current && current.creationToken !== creationToken) {
|
|
605
|
+
console.warn(`[bootstrap] ${agentId} creationToken changed during greeting — killing orphan session`);
|
|
606
|
+
await tryKillOrphanSession('greeting-failure token mismatch');
|
|
607
|
+
return;
|
|
608
|
+
}
|
|
609
|
+
await this.markGreetingFailed(agentId, creationToken);
|
|
610
|
+
return;
|
|
611
|
+
}
|
|
586
612
|
let resolvedExisting = null;
|
|
587
613
|
const now = new Date().toISOString();
|
|
588
614
|
await this.agentStore.update(agentId, (existing) => {
|
|
@@ -635,10 +661,144 @@ export class AgentManager {
|
|
|
635
661
|
await this.markBootstrapFailed(agentId, creationToken, message);
|
|
636
662
|
}
|
|
637
663
|
}
|
|
664
|
+
// Bootstrap capability handshake: inject the greeting prompt and wait for the agent to
|
|
665
|
+
// echo [bx:greeting:<token>] per the baxian-signals skill. Returns true on a verified
|
|
666
|
+
// echo, false on timeout / lost session across all attempts. No task binding exists yet,
|
|
667
|
+
// so this drives the low-level inject + the pane-scoped awaitOnce directly.
|
|
668
|
+
async runGreetingHandshake(agentId, agent, paneId) {
|
|
669
|
+
const watcher = this.phaseSignalWatcher;
|
|
670
|
+
if (!watcher)
|
|
671
|
+
return true; // no watcher wired (minimal harness) — nothing to gate on
|
|
672
|
+
const tmux = new TmuxManager(this.createRunnerFor(agent));
|
|
673
|
+
for (let attempt = 1; attempt <= this.greetingMaxAttempts; attempt++) {
|
|
674
|
+
const token = createSignalToken();
|
|
675
|
+
try {
|
|
676
|
+
// Inject FIRST, then arm the wait: if the paste fails the agent never sees the
|
|
677
|
+
// prompt and cannot echo, so skip the (default 120s) wait entirely and retry.
|
|
678
|
+
await this.injectAndAwaitAckSteps(tmux, paneId, buildGreetingPrompt(token, agent.runtime), agentId, agent.runtime);
|
|
679
|
+
}
|
|
680
|
+
catch (err) {
|
|
681
|
+
console.warn(`[bootstrap] greeting inject failed for ${agentId} (attempt ${attempt}):`, err);
|
|
682
|
+
// ack_unknown = injectAndAwaitAckSteps could NOT confirm the composer was cleared, so the
|
|
683
|
+
// next paste would land on a live/unconfirmed input stream. Hold rather than concatenate.
|
|
684
|
+
// A raw (non-ack_unknown) throw means the composer was already C-c'd → safe to retry.
|
|
685
|
+
if (err instanceof DispatchTerminalError && err.reason === 'ack_unknown')
|
|
686
|
+
break;
|
|
687
|
+
continue;
|
|
688
|
+
}
|
|
689
|
+
const outcome = await watcher.awaitOnce({
|
|
690
|
+
agentId,
|
|
691
|
+
kind: 'greeting',
|
|
692
|
+
token,
|
|
693
|
+
timeoutMs: this.bootstrapTimeoutsMs.greeting,
|
|
694
|
+
});
|
|
695
|
+
if (outcome === 'matched')
|
|
696
|
+
return true;
|
|
697
|
+
console.warn(`[bootstrap] greeting attempt ${attempt}/${this.greetingMaxAttempts} for ${agentId}: ${outcome}`);
|
|
698
|
+
// 'no-agent' = config removed, unrecoverable. 'timeout'/'session-gone' (incl. a transient
|
|
699
|
+
// subscribe fault disguised as session-gone) keep the remaining retries — a one-off pane
|
|
700
|
+
// jitter must not fail a genuinely capable agent.
|
|
701
|
+
if (outcome === 'no-agent')
|
|
702
|
+
break;
|
|
703
|
+
// An ack-timeout paste returns acked:false and leaves the unsubmitted greeting prompt in the
|
|
704
|
+
// composer; the next injectPrompt would concatenate onto it. Clear it before retrying — if the
|
|
705
|
+
// composer can't be confirmed clean, hold rather than paste onto a dirty/unsafe one.
|
|
706
|
+
if (attempt < this.greetingMaxAttempts && !(await this.clearComposerForReuse(tmux, paneId, agentId))) {
|
|
707
|
+
break;
|
|
708
|
+
}
|
|
709
|
+
}
|
|
710
|
+
return false;
|
|
711
|
+
}
|
|
712
|
+
// Greeting failed: hold the agent for a human (awaiting_human → not dispatchable) with a
|
|
713
|
+
// reason that names the capability gap. Clearing creationToken drops the "starting" pill;
|
|
714
|
+
// the operator fixes the runtime and restarts (re-greets) or Resumes to override.
|
|
715
|
+
async markGreetingFailed(agentId, creationToken) {
|
|
716
|
+
const existing = await this.agentStore.get(agentId);
|
|
717
|
+
if (!existing)
|
|
718
|
+
return;
|
|
719
|
+
if (creationToken !== undefined && existing.creationToken !== creationToken)
|
|
720
|
+
return;
|
|
721
|
+
const now = new Date().toISOString();
|
|
722
|
+
const reason = 'Greeting capability check failed: the agent did not echo a valid [bx:greeting] signal ' +
|
|
723
|
+
'per the baxian-signals skill within the timeout. Its runtime/model may not meet baxian ' +
|
|
724
|
+
'requirements (skill loading or pane signalling). Fix the runtime, then restart-repl or ' +
|
|
725
|
+
'retry the agent to re-run the check (Resume will not clear it — capability must be re-proven).';
|
|
726
|
+
let wrote = false;
|
|
727
|
+
await this.agentStore.update(agentId, (fresh) => {
|
|
728
|
+
if (!fresh)
|
|
729
|
+
return AGENT_STORE_NOOP;
|
|
730
|
+
if (creationToken !== undefined && fresh.creationToken !== creationToken)
|
|
731
|
+
return AGENT_STORE_NOOP;
|
|
732
|
+
wrote = true;
|
|
733
|
+
return {
|
|
734
|
+
...fresh,
|
|
735
|
+
creationToken: undefined,
|
|
736
|
+
status: 'awaiting_human',
|
|
737
|
+
awaitingPhase: 'greeting_failed',
|
|
738
|
+
awaitingReason: reason,
|
|
739
|
+
awaitingSince: now,
|
|
740
|
+
updatedAt: now,
|
|
741
|
+
};
|
|
742
|
+
});
|
|
743
|
+
if (!wrote)
|
|
744
|
+
return;
|
|
745
|
+
await this.safeEmit({
|
|
746
|
+
id: '',
|
|
747
|
+
type: 'human.intervention',
|
|
748
|
+
timestamp: now,
|
|
749
|
+
projectId: existing.projectId,
|
|
750
|
+
agentId,
|
|
751
|
+
data: { phase: 'greeting_failed', reason },
|
|
752
|
+
});
|
|
753
|
+
}
|
|
754
|
+
// Operator restart-repl/retry recovery for a greeting_failed agent: re-run the handshake on
|
|
755
|
+
// the freshly-restarted REPL. Only a passing greeting clears the hold; a failure re-holds it.
|
|
756
|
+
// Returns true when it took ownership of a greeting_failed agent (caller skips its normal clear).
|
|
757
|
+
async regreetHeldAgent(agentId) {
|
|
758
|
+
const agent = this.getAgentConfig(agentId);
|
|
759
|
+
if (!agent)
|
|
760
|
+
return false;
|
|
761
|
+
const state = await this.agentStore.get(agentId);
|
|
762
|
+
if (state?.awaitingPhase !== 'greeting_failed')
|
|
763
|
+
return false;
|
|
764
|
+
// Identity of THIS hold: a greeting_failed binding carries no creationToken, so a DELETE+recreate
|
|
765
|
+
// during the (slow, up to 2× timeout) handshake is detected via awaitingSince — a stale regreet
|
|
766
|
+
// must never write onto the recreated generation.
|
|
767
|
+
const guardSince = state.awaitingSince;
|
|
768
|
+
let paneId = state.paneId;
|
|
769
|
+
if (!paneId) {
|
|
770
|
+
try {
|
|
771
|
+
paneId = await new TmuxManager(this.createRunnerFor(agent)).getSinglePaneId(agentId);
|
|
772
|
+
}
|
|
773
|
+
catch (err) {
|
|
774
|
+
console.warn(`[regreet] cannot resolve pane for ${agentId}:`, err);
|
|
775
|
+
return true; // leave it held; operator can restart/retry again
|
|
776
|
+
}
|
|
777
|
+
}
|
|
778
|
+
if (!(await this.runGreetingHandshake(agentId, agent, paneId))) {
|
|
779
|
+
// Failed → leave the existing hold untouched. Do NOT re-write it: an unguarded write could land
|
|
780
|
+
// on a DELETE+recreated generation that reused this id. Operator can restart/retry again.
|
|
781
|
+
return true;
|
|
782
|
+
}
|
|
783
|
+
// Passed → clear the hold, but only if this exact greeting_failed generation is still present.
|
|
784
|
+
await this.agentStore.update(agentId, (fresh) => {
|
|
785
|
+
if (!fresh || fresh.awaitingPhase !== 'greeting_failed' || fresh.awaitingSince !== guardSince) {
|
|
786
|
+
return AGENT_STORE_NOOP;
|
|
787
|
+
}
|
|
788
|
+
const { status: _s, awaitingPhase: _ap, awaitingReason: _ar, awaitingSince: _as, ...ready } = fresh;
|
|
789
|
+
return { ...ready, updatedAt: new Date().toISOString() };
|
|
790
|
+
});
|
|
791
|
+
return true;
|
|
792
|
+
}
|
|
638
793
|
async markDialogPending(agentId, creationToken, opts = {}) {
|
|
639
794
|
const existing = await this.agentStore.get(agentId);
|
|
640
795
|
if (!existing)
|
|
641
796
|
return;
|
|
797
|
+
// A greeting capability failure must not be downgraded into a dialog-resolvable hold: doing so
|
|
798
|
+
// would let Resume release a never-re-greeted agent. Keep the greeting_failed hold; restart/retry
|
|
799
|
+
// re-runs the handshake.
|
|
800
|
+
if (existing.awaitingPhase != null && REGREET_REQUIRED_HOLD_PHASES.has(existing.awaitingPhase))
|
|
801
|
+
return;
|
|
642
802
|
// runtime path snapshot 全空时直接拒绝——既无 paneId 也无 taskId 作 generation 证据,
|
|
643
803
|
// 旧 callback 通过 guard 污染同样 idle 的新 agent 的风险无法排除。
|
|
644
804
|
if (opts.runtimePath && opts.expectedPaneId === undefined && opts.expectedTaskId === undefined) {
|
|
@@ -676,6 +836,8 @@ export class AgentManager {
|
|
|
676
836
|
await this.agentStore.update(agentId, (fresh) => {
|
|
677
837
|
if (!fresh)
|
|
678
838
|
return AGENT_STORE_NOOP;
|
|
839
|
+
if (fresh.awaitingPhase != null && REGREET_REQUIRED_HOLD_PHASES.has(fresh.awaitingPhase))
|
|
840
|
+
return AGENT_STORE_NOOP;
|
|
679
841
|
if (opts.runtimePath) {
|
|
680
842
|
if (fresh.creationToken !== undefined)
|
|
681
843
|
return AGENT_STORE_NOOP;
|
|
@@ -891,26 +1053,15 @@ export class AgentManager {
|
|
|
891
1053
|
return;
|
|
892
1054
|
if (generationMismatch(state))
|
|
893
1055
|
return;
|
|
894
|
-
|
|
895
|
-
|
|
896
|
-
|
|
897
|
-
|
|
898
|
-
|
|
899
|
-
|
|
900
|
-
|
|
901
|
-
|
|
902
|
-
|
|
903
|
-
return AGENT_STORE_NOOP;
|
|
904
|
-
return {
|
|
905
|
-
...s,
|
|
906
|
-
paneId: discoveredPaneId,
|
|
907
|
-
updatedAt: new Date().toISOString(),
|
|
908
|
-
};
|
|
909
|
-
});
|
|
910
|
-
}
|
|
911
|
-
catch {
|
|
912
|
-
continue;
|
|
913
|
-
}
|
|
1056
|
+
// The session's live pane is authoritative — never the stored snapshot. A runtime relaunch
|
|
1057
|
+
// (skills-stale rebuild, crash / Ctrl-C recovery) gives the session a fresh pane id; trusting
|
|
1058
|
+
// a stale state.paneId would poll a dead pane forever and the Held would never clear.
|
|
1059
|
+
let paneId;
|
|
1060
|
+
try {
|
|
1061
|
+
paneId = await tmux.getSinglePaneId(agentId);
|
|
1062
|
+
}
|
|
1063
|
+
catch {
|
|
1064
|
+
continue;
|
|
914
1065
|
}
|
|
915
1066
|
try {
|
|
916
1067
|
await tmux.waitReplReady(paneId, runtime, {
|
|
@@ -935,16 +1086,30 @@ export class AgentManager {
|
|
|
935
1086
|
// 推 failed)+ lock 在;ready 后切到 'agent_dialog_resolved_runtime' phase,让 resumeAgent 放行
|
|
936
1087
|
// 让 operator 显式确认。仍保留 awaiting_human + lock 防止"dialog ready 自动派下一 task 撞 pane"。
|
|
937
1088
|
const isBootstrapPath = creationToken !== undefined;
|
|
1089
|
+
// A create bootstrap that was blocked on a startup dialog still owes the greeting gate:
|
|
1090
|
+
// now that the dialog is dismissed and the REPL is ready, run it before clearing to 'ok',
|
|
1091
|
+
// else a dialog-resolved agent would reach the dispatch pool without proving capability.
|
|
1092
|
+
if (isBootstrapPath && !(await this.runGreetingHandshake(agentId, cfg, paneId))) {
|
|
1093
|
+
await this.markGreetingFailed(agentId, creationToken);
|
|
1094
|
+
return;
|
|
1095
|
+
}
|
|
938
1096
|
await this.agentStore.update(agentId, (fresh) => {
|
|
939
1097
|
if (!fresh)
|
|
940
1098
|
return AGENT_STORE_NOOP;
|
|
941
1099
|
if (generationMismatch(fresh))
|
|
942
1100
|
return AGENT_STORE_NOOP;
|
|
1101
|
+
// A greeting capability hold must not be downgraded to a dialog-resolvable phase here (the
|
|
1102
|
+
// runtime branch would otherwise rewrite it to agent_dialog_resolved_runtime, which Resume
|
|
1103
|
+
// then releases un-regreeted). Preserve it; restart/retry's regreet is its recovery path.
|
|
1104
|
+
if (fresh.awaitingPhase != null && REGREET_REQUIRED_HOLD_PHASES.has(fresh.awaitingPhase)) {
|
|
1105
|
+
return AGENT_STORE_NOOP;
|
|
1106
|
+
}
|
|
943
1107
|
projectIdForEmit = fresh.projectId;
|
|
944
1108
|
wrote = true;
|
|
945
1109
|
if (isBootstrapPath) {
|
|
946
1110
|
return {
|
|
947
1111
|
...fresh,
|
|
1112
|
+
paneId,
|
|
948
1113
|
creationToken: undefined,
|
|
949
1114
|
status: 'ok',
|
|
950
1115
|
awaitingPhase: undefined,
|
|
@@ -955,6 +1120,7 @@ export class AgentManager {
|
|
|
955
1120
|
}
|
|
956
1121
|
return {
|
|
957
1122
|
...fresh,
|
|
1123
|
+
paneId,
|
|
958
1124
|
awaitingPhase: 'agent_dialog_resolved_runtime',
|
|
959
1125
|
awaitingReason: 'Runtime dialog resolved; agent REPL ready. Click Resume to release the binding and let baxian pick the next task.',
|
|
960
1126
|
updatedAt: now,
|
|
@@ -1518,6 +1684,14 @@ export class AgentManager {
|
|
|
1518
1684
|
console.warn(`[AgentManager] resumeAgent: agent ${agentId} ${state.awaitingPhase} — pane holds un-cleared context; refusing Resume. DELETE the agent to discard it.`);
|
|
1519
1685
|
return { resumed: false, releasedBinding: false };
|
|
1520
1686
|
}
|
|
1687
|
+
// A greeting capability failure must be RE-PROVEN, not Resumed away: the default path below
|
|
1688
|
+
// flips status→'ok' regardless of shouldReleaseHeldBinding, which would put an unverified
|
|
1689
|
+
// agent back in the dispatch pool. The recovery path is restart-repl / retry (re-greets).
|
|
1690
|
+
if (state.awaitingPhase != null && REGREET_REQUIRED_HOLD_PHASES.has(state.awaitingPhase)) {
|
|
1691
|
+
console.warn(`[AgentManager] resumeAgent: agent ${agentId} ${state.awaitingPhase} — capability must be re-proven; ` +
|
|
1692
|
+
`refusing Resume. Use restart-repl / retry to re-run the greeting check.`);
|
|
1693
|
+
return { resumed: false, releasedBinding: false };
|
|
1694
|
+
}
|
|
1521
1695
|
const now = new Date().toISOString();
|
|
1522
1696
|
const shouldReleaseBinding = shouldReleaseHeldBinding(state, boundTask);
|
|
1523
1697
|
const cfg = this.getAgentConfig(agentId);
|
|
@@ -1944,15 +2118,51 @@ export class AgentManager {
|
|
|
1944
2118
|
else if (!SHELL.test(cmd)) {
|
|
1945
2119
|
throw new Error(`restart-repl precondition failed: unexpected pane state "${cmd}"`);
|
|
1946
2120
|
}
|
|
2121
|
+
// Re-materialize skills BEFORE the relaunch so the fresh REPL scans the current tree. restart-repl
|
|
2122
|
+
// is the operator's recovery for a greeting_failed agent whose on-disk skill tree was stale/missing,
|
|
2123
|
+
// and unlike retry it does not go through ensureSession's provisionRepoSkills. Best-effort: a
|
|
2124
|
+
// provisioning blip must not block the REPL restart (a still-broken tree surfaces on the next regreet).
|
|
2125
|
+
const project = this.getProjectConfig(cfg.projectId);
|
|
2126
|
+
let workdir;
|
|
2127
|
+
let provisioned = false;
|
|
2128
|
+
if (project) {
|
|
2129
|
+
try {
|
|
2130
|
+
workdir = (await this.ensureWorkdir(cfg, project, runner)).workdir;
|
|
2131
|
+
await this.provisionRepoSkills(runner, cfg, workdir);
|
|
2132
|
+
provisioned = true;
|
|
2133
|
+
}
|
|
2134
|
+
catch (err) {
|
|
2135
|
+
console.warn(`[restart-repl] skill re-provision failed for ${agentId} (continuing):`, err);
|
|
2136
|
+
}
|
|
2137
|
+
}
|
|
1947
2138
|
const runtime = agentRuntimeKindFor(cfg);
|
|
1948
|
-
|
|
1949
|
-
|
|
1950
|
-
|
|
1951
|
-
|
|
1952
|
-
|
|
1953
|
-
|
|
1954
|
-
|
|
1955
|
-
|
|
2139
|
+
const relaunch = async () => {
|
|
2140
|
+
await tmux.sendKeysToPane(paneId, `${buildLaunchCommand(cfg)}\n`);
|
|
2141
|
+
await tmux.handleTrustDialog(paneId, runtime, {
|
|
2142
|
+
timeoutMs: this.bootstrapTimeoutsMs.trustDialog,
|
|
2143
|
+
});
|
|
2144
|
+
await tmux.waitReplReady(paneId, runtime, {
|
|
2145
|
+
timeoutMs: this.bootstrapTimeoutsMs.waitReplReady,
|
|
2146
|
+
scrollback: 0,
|
|
2147
|
+
});
|
|
2148
|
+
// Only re-tag when the tree was actually re-provisioned. Tagging after a FAILED provision
|
|
2149
|
+
// would stamp the current version onto a REPL that scanned the stale/missing tree, so the
|
|
2150
|
+
// next ensureSession reads it as fresh and reuses it instead of self-healing (rebuild). A
|
|
2151
|
+
// successful provision DOES need the tag, else ensureSession needlessly kills this REPL and
|
|
2152
|
+
// drops the agent onto a different, ungreeted one.
|
|
2153
|
+
if (provisioned) {
|
|
2154
|
+
await this.tagSessionSkillsVersion(tmux, agentId);
|
|
2155
|
+
}
|
|
2156
|
+
};
|
|
2157
|
+
// Hold the per-skills-dir lock ACROSS the relaunch (like buildFreshSessionLocked) so a concurrent
|
|
2158
|
+
// same-dir agent's provisioning — which transiently removes helper files (agents/openai.yaml) —
|
|
2159
|
+
// can't make this fresh REPL scan an incomplete skill tree.
|
|
2160
|
+
if (workdir !== undefined) {
|
|
2161
|
+
await this.runUnderSkillDirLock(this.skillDirLockKey(cfg, workdir), relaunch);
|
|
2162
|
+
}
|
|
2163
|
+
else {
|
|
2164
|
+
await relaunch();
|
|
2165
|
+
}
|
|
1956
2166
|
await this.agentStore.update(agentId, (state) => {
|
|
1957
2167
|
if (!state)
|
|
1958
2168
|
return AGENT_STORE_NOOP;
|
|
@@ -2084,6 +2294,10 @@ export class AgentManager {
|
|
|
2084
2294
|
agent: cfg,
|
|
2085
2295
|
worktreePath: worktreePathBound,
|
|
2086
2296
|
skillRegistry: this.skillRegistry,
|
|
2297
|
+
// A representative token so the preview exercises the SAME required-skill set (baxian-signals)
|
|
2298
|
+
// and worst-case byte size the real signal-emitting dispatch will build — else a missing
|
|
2299
|
+
// baxian-signals only surfaces async after the task is already created (201).
|
|
2300
|
+
signalToken: 'preview-signal-token',
|
|
2087
2301
|
});
|
|
2088
2302
|
return Buffer.byteLength(fullPrompt, 'utf8');
|
|
2089
2303
|
}
|
|
@@ -3787,6 +4001,31 @@ export class AgentManager {
|
|
|
3787
4001
|
// dialog-pending catch below, so a mid-bootstrap task blocked on a startup dialog isn't held forever.)
|
|
3788
4002
|
if (await this.rollbackUndeliveredBootstrap(state, agentConfig))
|
|
3789
4003
|
continue;
|
|
4004
|
+
// An incomplete create bootstrap (creationToken still set, no task) crashed before it
|
|
4005
|
+
// proved signal capability. Re-run the greeting gate — but in the BACKGROUND: recover() is
|
|
4006
|
+
// awaited before the server serves, and a synchronous handshake would block startup up to
|
|
4007
|
+
// 2×greeting-timeout per such agent (serially). creationToken stays set meanwhile, so
|
|
4008
|
+
// canDispatchWithBinding keeps the agent out of the pool until the handshake resolves.
|
|
4009
|
+
if (state.creationToken && !state.taskId) {
|
|
4010
|
+
const ct = state.creationToken;
|
|
4011
|
+
const pane = result.paneId;
|
|
4012
|
+
const cfg = agentConfig;
|
|
4013
|
+
const agentId = state.id;
|
|
4014
|
+
void (async () => {
|
|
4015
|
+
if (await this.runGreetingHandshake(agentId, cfg, pane)) {
|
|
4016
|
+
await this.agentStore.update(agentId, (latest) => {
|
|
4017
|
+
if (!latest || latest.creationToken !== ct)
|
|
4018
|
+
return AGENT_STORE_NOOP;
|
|
4019
|
+
const { creationToken: _ct, status: _s, awaitingPhase: _ap, awaitingReason: _ar, awaitingSince: _as, ...ready } = latest;
|
|
4020
|
+
return { ...ready, paneId: pane, updatedAt: new Date().toISOString() };
|
|
4021
|
+
});
|
|
4022
|
+
}
|
|
4023
|
+
else {
|
|
4024
|
+
await this.markGreetingFailed(agentId, ct);
|
|
4025
|
+
}
|
|
4026
|
+
})().catch((err) => console.warn(`[recover] background re-greet for ${agentId} crashed:`, err));
|
|
4027
|
+
continue;
|
|
4028
|
+
}
|
|
3790
4029
|
// recover 成功 = server 重启前 dialog_pending 的 agent 现在 REPL ready。
|
|
3791
4030
|
// 处理 Held:与 resumeAgent 共用 shouldReleaseHeldBinding 规则(task terminal/无 task /
|
|
3792
4031
|
// turn-completed phase → 同步清 binding;task active 且 phase 不在 completed 集合 → 保留 binding)。
|
|
@@ -3975,6 +4214,12 @@ export class AgentManager {
|
|
|
3975
4214
|
return AGENT_STORE_NOOP;
|
|
3976
4215
|
if (existing.creationToken)
|
|
3977
4216
|
return AGENT_STORE_NOOP;
|
|
4217
|
+
// A greeting capability hold must survive a transient/real tmux disappearance — wiping it
|
|
4218
|
+
// (it carries a paneId on the dialog path) would slip an unverified agent back into the
|
|
4219
|
+
// dispatch pool. Operator restart/retry re-greets; recover/Resume already preserve it.
|
|
4220
|
+
if (existing.awaitingPhase != null && REGREET_REQUIRED_HOLD_PHASES.has(existing.awaitingPhase)) {
|
|
4221
|
+
return AGENT_STORE_NOOP;
|
|
4222
|
+
}
|
|
3978
4223
|
timestamp = new Date().toISOString();
|
|
3979
4224
|
projectId = existing.projectId;
|
|
3980
4225
|
hadBinding = !!existing.taskId;
|