@vibedeckx/linux-x64 0.2.5 → 0.2.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.
- package/dist/bin.js +55 -7
- package/package.json +1 -1
package/dist/bin.js
CHANGED
|
@@ -224161,6 +224161,20 @@ var AgentSessionManager = class {
|
|
|
224161
224161
|
this.titleResolved.add(sessionId);
|
|
224162
224162
|
return true;
|
|
224163
224163
|
}
|
|
224164
|
+
/**
|
|
224165
|
+
* Write a caller-determined final title and claim the one-shot slot so the
|
|
224166
|
+
* AI title generator never fires for this session — same pattern as the
|
|
224167
|
+
* Branch path's "Branch - <source title>". The slot is claimed before the
|
|
224168
|
+
* DB write: even if the write fails, a degraded placeholder title beats an
|
|
224169
|
+
* AI title racing in over the caller's intent.
|
|
224170
|
+
*/
|
|
224171
|
+
async setFinalSessionTitle(sessionId, title) {
|
|
224172
|
+
this.markTitleResolved(sessionId);
|
|
224173
|
+
await this.storage.agentSessions.updateTitle(sessionId, title);
|
|
224174
|
+
this.broadcastRaw(sessionId, { titleUpdated: { title } });
|
|
224175
|
+
const session = this.sessions.get(sessionId);
|
|
224176
|
+
if (session) this.emitSessionTitle(session.projectId, session.branch, sessionId, title);
|
|
224177
|
+
}
|
|
224164
224178
|
isProcessAlive(session) {
|
|
224165
224179
|
return !!session.process && session.process.exitCode === null && !session.dormant;
|
|
224166
224180
|
}
|
|
@@ -228832,11 +228846,16 @@ var WorkflowEngine = class {
|
|
|
228832
228846
|
opts.project.path,
|
|
228833
228847
|
false,
|
|
228834
228848
|
"plan",
|
|
228835
|
-
"claude-code",
|
|
228849
|
+
opts.reviewerAgentType ?? "claude-code",
|
|
228836
228850
|
true
|
|
228837
228851
|
);
|
|
228852
|
+
const taskContext = extractTaskContextBefore(entries, turnEndIndex);
|
|
228853
|
+
await this.agentOps.setFinalSessionTitle(
|
|
228854
|
+
reviewerId,
|
|
228855
|
+
`Review - ${sourceSession?.title || (taskContext ? snippetTitle(taskContext) : null) || "Conversation"}`
|
|
228856
|
+
).catch((err) => console.warn(`[WorkflowEngine] failed to set reviewer title for ${reviewerId}:`, err));
|
|
228838
228857
|
const prompt = buildReviewerPrompt({
|
|
228839
|
-
taskContext
|
|
228858
|
+
taskContext,
|
|
228840
228859
|
reviewFocus: opts.reviewFocus ?? null,
|
|
228841
228860
|
target
|
|
228842
228861
|
});
|
|
@@ -235890,6 +235909,11 @@ var command_routes_default = (0, import_fastify_plugin18.default)(routes17, { na
|
|
|
235890
235909
|
|
|
235891
235910
|
// src/routes/workflow-run-routes.ts
|
|
235892
235911
|
var import_fastify_plugin19 = __toESM(require_plugin2(), 1);
|
|
235912
|
+
var REVIEWER_AGENT_TYPES = /* @__PURE__ */ new Set(["claude-code", "codex"]);
|
|
235913
|
+
function parseReviewerAgentType(raw) {
|
|
235914
|
+
if (raw === void 0) return void 0;
|
|
235915
|
+
return typeof raw === "string" && REVIEWER_AGENT_TYPES.has(raw) ? raw : null;
|
|
235916
|
+
}
|
|
235893
235917
|
function errStatus(err) {
|
|
235894
235918
|
if (!(err instanceof WorkflowError)) return null;
|
|
235895
235919
|
switch (err.code) {
|
|
@@ -235934,6 +235958,8 @@ async function routes18(fastify2) {
|
|
|
235934
235958
|
if (userId === null) return;
|
|
235935
235959
|
const { projectId, branch, sourceSessionId, reviewFocus, sourceTurnEndIndex } = req.body ?? {};
|
|
235936
235960
|
if (!projectId || !sourceSessionId) return reply.code(400).send({ error: "projectId and sourceSessionId are required" });
|
|
235961
|
+
const reviewerAgentType = parseReviewerAgentType(req.body?.reviewerAgentType);
|
|
235962
|
+
if (reviewerAgentType === null) return reply.code(400).send({ error: "reviewerAgentType must be one of: claude-code, codex" });
|
|
235937
235963
|
if (sourceSessionId.startsWith("remote-")) {
|
|
235938
235964
|
const remoteInfo = fastify2.remoteSessionMap.get(sourceSessionId);
|
|
235939
235965
|
if (!remoteInfo) return reply.code(404).send({ error: "Session not found" });
|
|
@@ -235944,7 +235970,8 @@ async function routes18(fastify2) {
|
|
|
235944
235970
|
const result = await proxyAuto(remoteInfo, "POST", "/api/path/workflow-runs", {
|
|
235945
235971
|
sourceSessionId: remoteInfo.remoteSessionId,
|
|
235946
235972
|
reviewFocus,
|
|
235947
|
-
sourceTurnEndIndex
|
|
235973
|
+
sourceTurnEndIndex,
|
|
235974
|
+
reviewerAgentType
|
|
235948
235975
|
});
|
|
235949
235976
|
if (!result.ok) return sendProxyFailure(reply, result);
|
|
235950
235977
|
const bareRun = result.data.run;
|
|
@@ -235957,13 +235984,14 @@ async function routes18(fastify2) {
|
|
|
235957
235984
|
projectId
|
|
235958
235985
|
});
|
|
235959
235986
|
if (bareRun.reviewer_session_id && localRun.reviewer_session_id) {
|
|
235960
|
-
|
|
235987
|
+
const reviewerInfo = {
|
|
235961
235988
|
remoteServerId: remoteInfo.remoteServerId,
|
|
235962
235989
|
remoteUrl: remoteInfo.remoteUrl,
|
|
235963
235990
|
remoteApiKey: remoteInfo.remoteApiKey,
|
|
235964
235991
|
remoteSessionId: bareRun.reviewer_session_id,
|
|
235965
235992
|
branch: bareRun.branch
|
|
235966
|
-
}
|
|
235993
|
+
};
|
|
235994
|
+
fastify2.remoteSessionMap.set(localRun.reviewer_session_id, reviewerInfo);
|
|
235967
235995
|
await fastify2.storage.remoteSessionMappings.upsert(
|
|
235968
235996
|
localRun.reviewer_session_id,
|
|
235969
235997
|
projectId,
|
|
@@ -235978,6 +236006,22 @@ async function routes18(fastify2) {
|
|
|
235978
236006
|
eventBus: fastify2.eventBus,
|
|
235979
236007
|
agentSessionManager: fastify2.agentSessionManager
|
|
235980
236008
|
});
|
|
236009
|
+
fastify2.eventBus.emit({
|
|
236010
|
+
type: "session:process",
|
|
236011
|
+
projectId,
|
|
236012
|
+
branch: bareRun.branch,
|
|
236013
|
+
sessionId: localRun.reviewer_session_id,
|
|
236014
|
+
alive: true
|
|
236015
|
+
});
|
|
236016
|
+
fastify2.eventBus.emit({
|
|
236017
|
+
type: "session:status",
|
|
236018
|
+
projectId,
|
|
236019
|
+
branch: bareRun.branch,
|
|
236020
|
+
sessionId: localRun.reviewer_session_id,
|
|
236021
|
+
status: "running"
|
|
236022
|
+
});
|
|
236023
|
+
fastify2.agentSessionManager.markTitleResolved(localRun.reviewer_session_id);
|
|
236024
|
+
await fastify2.storage.remoteSessionMappings.markTitleResolved(localRun.reviewer_session_id);
|
|
235981
236025
|
}
|
|
235982
236026
|
fastify2.eventBus.emit({ type: "workflow:run-updated", projectId, branch: bareRun.branch, run: localRun });
|
|
235983
236027
|
return reply.code(201).send({ run: localRun });
|
|
@@ -235999,7 +236043,8 @@ async function routes18(fastify2) {
|
|
|
235999
236043
|
branch: runBranch,
|
|
236000
236044
|
sourceSessionId,
|
|
236001
236045
|
reviewFocus,
|
|
236002
|
-
sourceTurnEndIndex
|
|
236046
|
+
sourceTurnEndIndex,
|
|
236047
|
+
reviewerAgentType
|
|
236003
236048
|
});
|
|
236004
236049
|
return reply.code(201).send({ run: run2 });
|
|
236005
236050
|
} catch (err) {
|
|
@@ -236128,6 +236173,8 @@ async function routes18(fastify2) {
|
|
|
236128
236173
|
if (userId === null) return;
|
|
236129
236174
|
const { sourceSessionId, reviewFocus, sourceTurnEndIndex } = req.body ?? {};
|
|
236130
236175
|
if (!sourceSessionId) return reply.code(400).send({ error: "sourceSessionId is required" });
|
|
236176
|
+
const reviewerAgentType = parseReviewerAgentType(req.body?.reviewerAgentType);
|
|
236177
|
+
if (reviewerAgentType === null) return reply.code(400).send({ error: "reviewerAgentType must be one of: claude-code, codex" });
|
|
236131
236178
|
const sourceSession = await fastify2.storage.agentSessions.getById(sourceSessionId);
|
|
236132
236179
|
if (!sourceSession) return reply.code(404).send({ error: "Session not found" });
|
|
236133
236180
|
const project = await fastify2.storage.projects.getById(sourceSession.project_id);
|
|
@@ -236139,7 +236186,8 @@ async function routes18(fastify2) {
|
|
|
236139
236186
|
branch: sourceSession.branch || null,
|
|
236140
236187
|
sourceSessionId,
|
|
236141
236188
|
reviewFocus,
|
|
236142
|
-
sourceTurnEndIndex
|
|
236189
|
+
sourceTurnEndIndex,
|
|
236190
|
+
reviewerAgentType
|
|
236143
236191
|
});
|
|
236144
236192
|
return reply.code(201).send({ run: run2 });
|
|
236145
236193
|
} catch (err) {
|