@hasna/todos 0.11.84 → 0.11.85
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/cli/cloud-router.d.ts +73 -0
- package/dist/cli/cloud-router.d.ts.map +1 -1
- package/dist/cli/commands/agent-commands.d.ts.map +1 -1
- package/dist/cli/commands/mcp-hooks-commands.d.ts.map +1 -1
- package/dist/cli/commands/plan-template-commands.d.ts.map +1 -1
- package/dist/cli/commands/task-commands.d.ts.map +1 -1
- package/dist/cli/index.js +529 -105
- package/dist/index.js +88 -7
- package/dist/mcp/index.js +227 -1
- package/dist/mcp/tools/agents.d.ts.map +1 -1
- package/dist/release-provenance.json +3 -3
- package/dist/server/index.js +236 -10
- package/dist/server/v1.d.ts.map +1 -1
- package/dist/storage/interfaces.d.ts +67 -0
- package/dist/storage/interfaces.d.ts.map +1 -1
- package/dist/storage/postgres-adapter.d.ts.map +1 -1
- package/dist/storage.js +82 -1
- package/package.json +1 -1
package/dist/server/index.js
CHANGED
|
@@ -957,6 +957,16 @@ function createPostgresTodosStorageAdapter(options) {
|
|
|
957
957
|
add: (input, context) => addVerification(input, store, context),
|
|
958
958
|
list: (taskId) => listVerifications(taskId, store)
|
|
959
959
|
},
|
|
960
|
+
commits: {
|
|
961
|
+
add: (input, context) => addCommit(input, store, context),
|
|
962
|
+
list: (taskId) => listCommits(taskId, store),
|
|
963
|
+
find: (sha) => findCommit(sha, store)
|
|
964
|
+
},
|
|
965
|
+
gitRefs: {
|
|
966
|
+
add: (input, context) => addGitRef(input, store, context),
|
|
967
|
+
list: (taskId) => listGitRefs(taskId, store),
|
|
968
|
+
find: (ref) => findGitRefs(ref, store)
|
|
969
|
+
},
|
|
960
970
|
projects: {
|
|
961
971
|
create: (input, context) => createProject(input, store, context),
|
|
962
972
|
get: (id) => store.get("projects", id),
|
|
@@ -977,7 +987,9 @@ function createPostgresTodosStorageAdapter(options) {
|
|
|
977
987
|
get: (id) => store.get("agents", id),
|
|
978
988
|
getByName: async (name) => (await store.list("agents")).find((agent) => agent.name === name) ?? null,
|
|
979
989
|
list: async (options2) => (await store.list("agents")).filter((agent) => options2?.include_archived || agent.status !== "archived").sort((a, b) => a.name.localeCompare(b.name)),
|
|
980
|
-
update: (id, input) => updateAgent(id, input, store)
|
|
990
|
+
update: (id, input) => updateAgent(id, input, store),
|
|
991
|
+
heartbeat: (idOrName, context) => heartbeatAgent(idOrName, store, context),
|
|
992
|
+
release: (idOrName, sessionId, context) => releaseAgent(idOrName, sessionId, store, context)
|
|
981
993
|
},
|
|
982
994
|
taskLists: {
|
|
983
995
|
create: (input, context) => createTaskList(input, store, context),
|
|
@@ -1507,6 +1519,53 @@ async function addVerification(input, store, context) {
|
|
|
1507
1519
|
async function listVerifications(taskId, store) {
|
|
1508
1520
|
return (await store.list("verifications")).filter((verification) => verification.task_id === taskId).sort((a, b) => b.run_at.localeCompare(a.run_at));
|
|
1509
1521
|
}
|
|
1522
|
+
async function addCommit(input, store, context) {
|
|
1523
|
+
if (!await store.get("tasks", input.task_id))
|
|
1524
|
+
throw new Error(`Task not found: ${input.task_id}`);
|
|
1525
|
+
const timestamp = new Date().toISOString();
|
|
1526
|
+
const commit = {
|
|
1527
|
+
id: randomUUID(),
|
|
1528
|
+
task_id: input.task_id,
|
|
1529
|
+
sha: input.sha,
|
|
1530
|
+
message: input.message ?? null,
|
|
1531
|
+
author: input.author ?? null,
|
|
1532
|
+
files_changed: input.files_changed ?? null,
|
|
1533
|
+
created_at: timestamp
|
|
1534
|
+
};
|
|
1535
|
+
await store.upsert("commits", { ...commit, updated_at: timestamp }, context);
|
|
1536
|
+
return commit;
|
|
1537
|
+
}
|
|
1538
|
+
async function listCommits(taskId, store) {
|
|
1539
|
+
return (await store.list("commits")).filter((commit) => commit.task_id === taskId).sort((a, b) => b.created_at.localeCompare(a.created_at));
|
|
1540
|
+
}
|
|
1541
|
+
async function findCommit(sha, store) {
|
|
1542
|
+
const matches = (await store.list("commits")).filter((commit) => commit.sha === sha || commit.sha.startsWith(sha) || sha.startsWith(commit.sha)).sort((a, b) => b.created_at.localeCompare(a.created_at));
|
|
1543
|
+
return matches[0] ?? null;
|
|
1544
|
+
}
|
|
1545
|
+
async function addGitRef(input, store, context) {
|
|
1546
|
+
if (!await store.get("tasks", input.task_id))
|
|
1547
|
+
throw new Error(`Task not found: ${input.task_id}`);
|
|
1548
|
+
const timestamp = new Date().toISOString();
|
|
1549
|
+
const gitRef = {
|
|
1550
|
+
id: randomUUID(),
|
|
1551
|
+
task_id: input.task_id,
|
|
1552
|
+
ref_type: input.ref_type,
|
|
1553
|
+
name: input.name,
|
|
1554
|
+
url: input.url ?? null,
|
|
1555
|
+
provider: input.provider ?? null,
|
|
1556
|
+
metadata: input.metadata ?? {},
|
|
1557
|
+
created_at: timestamp,
|
|
1558
|
+
updated_at: timestamp
|
|
1559
|
+
};
|
|
1560
|
+
await store.upsert("refs", gitRef, context);
|
|
1561
|
+
return gitRef;
|
|
1562
|
+
}
|
|
1563
|
+
async function listGitRefs(taskId, store) {
|
|
1564
|
+
return (await store.list("refs")).filter((ref) => ref.task_id === taskId).sort((a, b) => b.created_at.localeCompare(a.created_at));
|
|
1565
|
+
}
|
|
1566
|
+
async function findGitRefs(ref, store) {
|
|
1567
|
+
return (await store.list("refs")).filter((r) => r.name === ref).sort((a, b) => b.created_at.localeCompare(a.created_at));
|
|
1568
|
+
}
|
|
1510
1569
|
function toFilterArray(value) {
|
|
1511
1570
|
return Array.isArray(value) ? value : [value];
|
|
1512
1571
|
}
|
|
@@ -1653,6 +1712,28 @@ async function updateAgent(id, input, store) {
|
|
|
1653
1712
|
last_seen_at: new Date().toISOString()
|
|
1654
1713
|
});
|
|
1655
1714
|
}
|
|
1715
|
+
async function resolveAgent(idOrName, store) {
|
|
1716
|
+
const byId = await store.get("agents", idOrName);
|
|
1717
|
+
if (byId)
|
|
1718
|
+
return byId;
|
|
1719
|
+
return (await store.list("agents")).find((agent) => agent.name === idOrName) ?? null;
|
|
1720
|
+
}
|
|
1721
|
+
async function heartbeatAgent(idOrName, store, context) {
|
|
1722
|
+
const agent = await resolveAgent(idOrName, store);
|
|
1723
|
+
if (!agent)
|
|
1724
|
+
return null;
|
|
1725
|
+
return store.upsert("agents", { ...agent, last_seen_at: new Date().toISOString() }, context);
|
|
1726
|
+
}
|
|
1727
|
+
async function releaseAgent(idOrName, sessionId, store, context) {
|
|
1728
|
+
const agent = await resolveAgent(idOrName, store);
|
|
1729
|
+
if (!agent)
|
|
1730
|
+
return null;
|
|
1731
|
+
if (sessionId && agent.session_id && agent.session_id !== sessionId) {
|
|
1732
|
+
return { agent, released: false };
|
|
1733
|
+
}
|
|
1734
|
+
const updated = await store.upsert("agents", { ...agent, session_id: null, last_seen_at: new Date().toISOString() }, context);
|
|
1735
|
+
return { agent: updated, released: true };
|
|
1736
|
+
}
|
|
1656
1737
|
async function createTaskList(input, store, context) {
|
|
1657
1738
|
const timestamp = new Date().toISOString();
|
|
1658
1739
|
return store.upsert("task_lists", {
|
|
@@ -12842,7 +12923,7 @@ __export(exports_agents, {
|
|
|
12842
12923
|
updateAgent: () => updateAgent2,
|
|
12843
12924
|
unarchiveAgent: () => unarchiveAgent,
|
|
12844
12925
|
suggestAgentNames: () => suggestAgentNames,
|
|
12845
|
-
releaseAgent: () =>
|
|
12926
|
+
releaseAgent: () => releaseAgent2,
|
|
12846
12927
|
registerAgent: () => registerAgent2,
|
|
12847
12928
|
normalizeGeneratedAgentNames: () => normalizeGeneratedAgentNames,
|
|
12848
12929
|
matchCapabilities: () => matchCapabilities,
|
|
@@ -12986,7 +13067,7 @@ function buildConflictError(existing, lastSeenMs, pool, d) {
|
|
|
12986
13067
|
message: `Agent "${existing.name}" is already active (last seen ${minutesAgo}m ago, session ${existing.session_id ? "\u2026" + existing.session_id.slice(-4) : "none"}, dir: ${existing.working_dir ?? "unknown"}). Pass force: true to take over, or choose a different name.${suggestions.length > 0 ? ` Available: ${suggestions.slice(0, 3).join(", ")}` : ""}`
|
|
12987
13068
|
};
|
|
12988
13069
|
}
|
|
12989
|
-
function
|
|
13070
|
+
function releaseAgent2(id, session_id, db) {
|
|
12990
13071
|
const d = db || getDatabase();
|
|
12991
13072
|
const agent = getAgent(id, d);
|
|
12992
13073
|
if (!agent)
|
|
@@ -15836,6 +15917,70 @@ async function handleV1Request(req, url) {
|
|
|
15836
15917
|
}
|
|
15837
15918
|
return error(405, `method ${method} not allowed on /v1/tasks/:id/verifications`);
|
|
15838
15919
|
}
|
|
15920
|
+
if (action === "commits") {
|
|
15921
|
+
if (!store.commits)
|
|
15922
|
+
return error(501, "commit links are not supported by this storage backend");
|
|
15923
|
+
if (method === "GET") {
|
|
15924
|
+
if (!await store.tasks.get(id))
|
|
15925
|
+
return error(404, "task not found");
|
|
15926
|
+
const commits = await store.commits.list(id);
|
|
15927
|
+
return json2({ commits, count: commits.length });
|
|
15928
|
+
}
|
|
15929
|
+
if (method === "POST") {
|
|
15930
|
+
const body2 = await readJson(req) ?? {};
|
|
15931
|
+
if (typeof body2.sha !== "string" || !body2.sha.trim())
|
|
15932
|
+
return error(400, "sha is required");
|
|
15933
|
+
try {
|
|
15934
|
+
const commit = await store.commits.add({
|
|
15935
|
+
task_id: id,
|
|
15936
|
+
sha: body2.sha,
|
|
15937
|
+
message: body2.message,
|
|
15938
|
+
author: body2.author,
|
|
15939
|
+
files_changed: Array.isArray(body2.files_changed) ? body2.files_changed : undefined
|
|
15940
|
+
}, contextFromPrincipal(principal));
|
|
15941
|
+
return json2({ commit }, 201);
|
|
15942
|
+
} catch (e) {
|
|
15943
|
+
const msg = e.message || "";
|
|
15944
|
+
if (msg.includes("not found"))
|
|
15945
|
+
return error(404, msg);
|
|
15946
|
+
throw e;
|
|
15947
|
+
}
|
|
15948
|
+
}
|
|
15949
|
+
return error(405, `method ${method} not allowed on /v1/tasks/:id/commits`);
|
|
15950
|
+
}
|
|
15951
|
+
if (action === "refs") {
|
|
15952
|
+
if (!store.gitRefs)
|
|
15953
|
+
return error(501, "git ref links are not supported by this storage backend");
|
|
15954
|
+
if (method === "GET") {
|
|
15955
|
+
if (!await store.tasks.get(id))
|
|
15956
|
+
return error(404, "task not found");
|
|
15957
|
+
const refs = await store.gitRefs.list(id);
|
|
15958
|
+
return json2({ refs, count: refs.length });
|
|
15959
|
+
}
|
|
15960
|
+
if (method === "POST") {
|
|
15961
|
+
const body2 = await readJson(req) ?? {};
|
|
15962
|
+
const refType = body2.ref_type === "pull_request" || body2.ref_type === "branch" ? body2.ref_type : "branch";
|
|
15963
|
+
if (typeof body2.name !== "string" || !body2.name.trim())
|
|
15964
|
+
return error(400, "name is required");
|
|
15965
|
+
try {
|
|
15966
|
+
const ref = await store.gitRefs.add({
|
|
15967
|
+
task_id: id,
|
|
15968
|
+
ref_type: refType,
|
|
15969
|
+
name: body2.name,
|
|
15970
|
+
url: body2.url,
|
|
15971
|
+
provider: body2.provider,
|
|
15972
|
+
metadata: body2.metadata
|
|
15973
|
+
}, contextFromPrincipal(principal));
|
|
15974
|
+
return json2({ ref }, 201);
|
|
15975
|
+
} catch (e) {
|
|
15976
|
+
const msg = e.message || "";
|
|
15977
|
+
if (msg.includes("not found"))
|
|
15978
|
+
return error(404, msg);
|
|
15979
|
+
throw e;
|
|
15980
|
+
}
|
|
15981
|
+
}
|
|
15982
|
+
return error(405, `method ${method} not allowed on /v1/tasks/:id/refs`);
|
|
15983
|
+
}
|
|
15839
15984
|
const body = await readJson(req) ?? {};
|
|
15840
15985
|
const agentId = body.agent_id || principal.agent || "todos-serve";
|
|
15841
15986
|
if (action === "start" && method === "POST") {
|
|
@@ -15948,6 +16093,30 @@ async function handleV1Request(req, url) {
|
|
|
15948
16093
|
}
|
|
15949
16094
|
return json2({ agent: result }, 201);
|
|
15950
16095
|
}
|
|
16096
|
+
if (id && action === "heartbeat") {
|
|
16097
|
+
if (method !== "POST")
|
|
16098
|
+
return error(405, `method ${method} not allowed on /v1/agents/:id/heartbeat`);
|
|
16099
|
+
if (typeof store.agents.heartbeat !== "function") {
|
|
16100
|
+
return error(501, "agent heartbeat is not supported by this storage backend");
|
|
16101
|
+
}
|
|
16102
|
+
const agent = await store.agents.heartbeat(id, contextFromPrincipal(principal));
|
|
16103
|
+
return agent ? json2({ agent }) : error(404, "agent not found");
|
|
16104
|
+
}
|
|
16105
|
+
if (id && action === "release") {
|
|
16106
|
+
if (method !== "POST")
|
|
16107
|
+
return error(405, `method ${method} not allowed on /v1/agents/:id/release`);
|
|
16108
|
+
if (typeof store.agents.release !== "function") {
|
|
16109
|
+
return error(501, "agent release is not supported by this storage backend");
|
|
16110
|
+
}
|
|
16111
|
+
const body = await readJson(req) ?? {};
|
|
16112
|
+
const result = await store.agents.release(id, body.session_id, contextFromPrincipal(principal));
|
|
16113
|
+
if (!result)
|
|
16114
|
+
return error(404, "agent not found");
|
|
16115
|
+
if (!result.released) {
|
|
16116
|
+
return error(409, "release denied: session_id does not match agent's current session", { released: false });
|
|
16117
|
+
}
|
|
16118
|
+
return json2({ agent: result.agent, released: true });
|
|
16119
|
+
}
|
|
15951
16120
|
if (id && method === "GET") {
|
|
15952
16121
|
const agent = await store.agents.get(id);
|
|
15953
16122
|
return agent ? json2({ agent }) : error(404, "agent not found");
|
|
@@ -15977,6 +16146,22 @@ async function handleV1Request(req, url) {
|
|
|
15977
16146
|
const dependencies = await store.dependencies.listAll();
|
|
15978
16147
|
return json2({ dependencies, count: dependencies.length });
|
|
15979
16148
|
}
|
|
16149
|
+
if (resource === "commits" && id) {
|
|
16150
|
+
if (method !== "GET")
|
|
16151
|
+
return error(405, `method ${method} not allowed on /v1/commits/:sha`);
|
|
16152
|
+
if (!store.commits)
|
|
16153
|
+
return error(501, "commit links are not supported by this storage backend");
|
|
16154
|
+
const commit = await store.commits.find(id);
|
|
16155
|
+
return json2({ commit: commit ?? null });
|
|
16156
|
+
}
|
|
16157
|
+
if (resource === "refs" && id) {
|
|
16158
|
+
if (method !== "GET")
|
|
16159
|
+
return error(405, `method ${method} not allowed on /v1/refs/:ref`);
|
|
16160
|
+
if (!store.gitRefs)
|
|
16161
|
+
return error(501, "git ref links are not supported by this storage backend");
|
|
16162
|
+
const refs = await store.gitRefs.find(id);
|
|
16163
|
+
return json2({ refs, count: refs.length });
|
|
16164
|
+
}
|
|
15980
16165
|
if (resource === "next" && !id) {
|
|
15981
16166
|
if (method !== "GET")
|
|
15982
16167
|
return error(405, `method ${method} not allowed on /v1/next`);
|
|
@@ -43842,6 +44027,18 @@ async function cloudRegisterAgent(client, input) {
|
|
|
43842
44027
|
}
|
|
43843
44028
|
return raw;
|
|
43844
44029
|
}
|
|
44030
|
+
async function cloudHeartbeatAgent(client, idOrName) {
|
|
44031
|
+
const raw = await client.transport.post(`/agents/${encodeURIComponent(idOrName)}/heartbeat`, {});
|
|
44032
|
+
if (raw && typeof raw === "object" && "agent" in raw) {
|
|
44033
|
+
return raw.agent;
|
|
44034
|
+
}
|
|
44035
|
+
return raw ?? null;
|
|
44036
|
+
}
|
|
44037
|
+
async function cloudReleaseAgent(client, idOrName, sessionId) {
|
|
44038
|
+
const raw = await client.transport.post(`/agents/${encodeURIComponent(idOrName)}/release`, sessionId ? { session_id: sessionId } : {});
|
|
44039
|
+
const env = raw ?? {};
|
|
44040
|
+
return { agent: env.agent ?? null, released: env.released !== false };
|
|
44041
|
+
}
|
|
43845
44042
|
var _cache;
|
|
43846
44043
|
var init_cloud_router = __esm(() => {
|
|
43847
44044
|
init_storage();
|
|
@@ -45065,7 +45262,7 @@ function resolveRun(parsed, db) {
|
|
|
45065
45262
|
}
|
|
45066
45263
|
return resolution;
|
|
45067
45264
|
}
|
|
45068
|
-
function
|
|
45265
|
+
function resolveAgent2(parsed, db) {
|
|
45069
45266
|
const resolution = blankResolution(parsed);
|
|
45070
45267
|
const id = resolvePartialId(db, "agents", parsed.target);
|
|
45071
45268
|
const agent = id ? getAgent(id, db) : getAgentByName(parsed.target, db);
|
|
@@ -45102,7 +45299,7 @@ function resolveTask(parsed, db) {
|
|
|
45102
45299
|
function resolveUnknown(parsed, workspace, db, maxSymbolMatches) {
|
|
45103
45300
|
const attempts = [
|
|
45104
45301
|
() => resolveTask({ ...parsed, kind: "task" }, db),
|
|
45105
|
-
() =>
|
|
45302
|
+
() => resolveAgent2({ ...parsed, kind: "agent" }, db),
|
|
45106
45303
|
() => resolvePlan({ ...parsed, kind: "plan" }, db),
|
|
45107
45304
|
() => resolveSymbol({ ...parsed, kind: "symbol" }, workspace, maxSymbolMatches)
|
|
45108
45305
|
];
|
|
@@ -45137,7 +45334,7 @@ function resolveMentions(input, db) {
|
|
|
45137
45334
|
case "run":
|
|
45138
45335
|
return resolveRun(parsed, d);
|
|
45139
45336
|
case "agent":
|
|
45140
|
-
return
|
|
45337
|
+
return resolveAgent2(parsed, d);
|
|
45141
45338
|
case "task":
|
|
45142
45339
|
return resolveTask(parsed, d);
|
|
45143
45340
|
default:
|
|
@@ -79839,7 +80036,7 @@ function resolveProjectId(value, db) {
|
|
|
79839
80036
|
return null;
|
|
79840
80037
|
return resolvePartialId(db, "projects", value) || value;
|
|
79841
80038
|
}
|
|
79842
|
-
function
|
|
80039
|
+
function resolveAgent3(agentId, db) {
|
|
79843
80040
|
return db.query("SELECT id, name FROM agents WHERE id = ? OR LOWER(name) = LOWER(?)").get(agentId, agentId);
|
|
79844
80041
|
}
|
|
79845
80042
|
function agentTaskWhere(agent, options, db) {
|
|
@@ -79883,7 +80080,7 @@ function scoreHandoffs(created, withTaskRefs, withBlockers) {
|
|
|
79883
80080
|
}
|
|
79884
80081
|
function getAgentReliabilityScorecard(agentId, options = {}, db) {
|
|
79885
80082
|
const d = db || getDatabase();
|
|
79886
|
-
const agent =
|
|
80083
|
+
const agent = resolveAgent3(agentId, d);
|
|
79887
80084
|
if (!agent)
|
|
79888
80085
|
return null;
|
|
79889
80086
|
const generatedAt = now();
|
|
@@ -80052,7 +80249,7 @@ function getAgentReliabilityScorecard(agentId, options = {}, db) {
|
|
|
80052
80249
|
}
|
|
80053
80250
|
function listAgentReliabilityScorecards(options = {}, db) {
|
|
80054
80251
|
const d = db || getDatabase();
|
|
80055
|
-
const agents = options.agent_id ?
|
|
80252
|
+
const agents = options.agent_id ? resolveAgent3(options.agent_id, d) ? [resolveAgent3(options.agent_id, d)] : [] : d.query("SELECT id, name FROM agents ORDER BY name").all();
|
|
80056
80253
|
const limit = Number.isFinite(options.limit) && options.limit > 0 ? Math.min(Math.floor(options.limit), 500) : 50;
|
|
80057
80254
|
return agents.map((agent) => getAgentReliabilityScorecard(agent.id, options, d)).filter((scorecard) => Boolean(scorecard)).filter((scorecard) => {
|
|
80058
80255
|
const signals = scorecard.signals;
|
|
@@ -88820,6 +89017,19 @@ ID: ${updated.id}${taskNote}`
|
|
|
88820
89017
|
agent_id: exports_external.string().describe("Your agent ID or name.")
|
|
88821
89018
|
}, async ({ agent_id }) => {
|
|
88822
89019
|
try {
|
|
89020
|
+
const cloud = getTodosCloudClient();
|
|
89021
|
+
if (cloud) {
|
|
89022
|
+
const a = await cloudHeartbeatAgent(cloud, agent_id);
|
|
89023
|
+
if (!a) {
|
|
89024
|
+
return { content: [{ type: "text", text: `Agent not found: ${agent_id}` }], isError: true };
|
|
89025
|
+
}
|
|
89026
|
+
return {
|
|
89027
|
+
content: [{
|
|
89028
|
+
type: "text",
|
|
89029
|
+
text: `Heartbeat: ${a.name} (${a.id}) \u2014 last_seen_at updated to ${a.last_seen_at}`
|
|
89030
|
+
}]
|
|
89031
|
+
};
|
|
89032
|
+
}
|
|
88823
89033
|
const agent = getAgent(agent_id) || getAgentByName(agent_id);
|
|
88824
89034
|
if (!agent) {
|
|
88825
89035
|
return { content: [{ type: "text", text: `Agent not found: ${agent_id}` }], isError: true };
|
|
@@ -88842,11 +89052,27 @@ ID: ${updated.id}${taskNote}`
|
|
|
88842
89052
|
session_id: exports_external.string().optional().describe("Your session ID \u2014 if provided, release only succeeds if it matches (prevents other sessions from releasing your agent).")
|
|
88843
89053
|
}, async ({ agent_id, session_id }) => {
|
|
88844
89054
|
try {
|
|
89055
|
+
const cloud = getTodosCloudClient();
|
|
89056
|
+
if (cloud) {
|
|
89057
|
+
const result = await cloudReleaseAgent(cloud, agent_id, session_id);
|
|
89058
|
+
if (!result.agent) {
|
|
89059
|
+
return { content: [{ type: "text", text: `Agent not found: ${agent_id}` }], isError: true };
|
|
89060
|
+
}
|
|
89061
|
+
if (!result.released) {
|
|
89062
|
+
return { content: [{ type: "text", text: `Release denied: session_id does not match agent's current session.` }], isError: true };
|
|
89063
|
+
}
|
|
89064
|
+
return {
|
|
89065
|
+
content: [{
|
|
89066
|
+
type: "text",
|
|
89067
|
+
text: `Agent released: ${result.agent.name} (${result.agent.id}) \u2014 session cleared, name is now available.`
|
|
89068
|
+
}]
|
|
89069
|
+
};
|
|
89070
|
+
}
|
|
88845
89071
|
const agent = getAgent(agent_id) || getAgentByName(agent_id);
|
|
88846
89072
|
if (!agent) {
|
|
88847
89073
|
return { content: [{ type: "text", text: `Agent not found: ${agent_id}` }], isError: true };
|
|
88848
89074
|
}
|
|
88849
|
-
const released =
|
|
89075
|
+
const released = releaseAgent2(agent.id, session_id);
|
|
88850
89076
|
if (!released) {
|
|
88851
89077
|
return { content: [{ type: "text", text: `Release denied: session_id does not match agent's current session.` }], isError: true };
|
|
88852
89078
|
}
|
package/dist/server/v1.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"v1.d.ts","sourceRoot":"","sources":["../../src/server/v1.ts"],"names":[],"mappings":"AAUA,OAAO,KAAK,EAAuB,oBAAoB,EAAE,MAAM,0BAA0B,CAAC;AA4B1F;;;;;;;;GAQG;AACH,wBAAgB,uBAAuB,CAAC,GAAG,EAAE,OAAO,GAAG,oBAAoB,CAgB1E;AAED,gFAAgF;AAChF,wBAAgB,oBAAoB,CAAC,CAAC,EAAE,oBAAoB,GAAG,MAAM,CAYpE;AAED;;;GAGG;AACH,wBAAsB,eAAe,CAAC,GAAG,EAAE,OAAO,EAAE,GAAG,EAAE,GAAG,GAAG,OAAO,CAAC,QAAQ,GAAG,IAAI,CAAC,
|
|
1
|
+
{"version":3,"file":"v1.d.ts","sourceRoot":"","sources":["../../src/server/v1.ts"],"names":[],"mappings":"AAUA,OAAO,KAAK,EAAuB,oBAAoB,EAAE,MAAM,0BAA0B,CAAC;AA4B1F;;;;;;;;GAQG;AACH,wBAAgB,uBAAuB,CAAC,GAAG,EAAE,OAAO,GAAG,oBAAoB,CAgB1E;AAED,gFAAgF;AAChF,wBAAgB,oBAAoB,CAAC,CAAC,EAAE,oBAAoB,GAAG,MAAM,CAYpE;AAED;;;GAGG;AACH,wBAAsB,eAAe,CAAC,GAAG,EAAE,OAAO,EAAE,GAAG,EAAE,GAAG,GAAG,OAAO,CAAC,QAAQ,GAAG,IAAI,CAAC,CAqiBtF"}
|
|
@@ -35,8 +35,57 @@ export interface TodosStorageAdapter {
|
|
|
35
35
|
readonly dependencies?: TodosDependencyStore;
|
|
36
36
|
/** Task verification records (optional; present on the Postgres adapter). */
|
|
37
37
|
readonly verifications?: TodosVerificationStore;
|
|
38
|
+
/** Git commit links (optional; present on the Postgres adapter). */
|
|
39
|
+
readonly commits?: TodosCommitStore;
|
|
40
|
+
/** Git branch/PR ref links (optional; present on the Postgres adapter). */
|
|
41
|
+
readonly gitRefs?: TodosGitRefStore;
|
|
38
42
|
transaction?<T>(fn: (adapter: TodosStorageAdapter) => MaybePromise<T>, context?: TodosStorageContext): MaybePromise<T>;
|
|
39
43
|
}
|
|
44
|
+
export interface TodosTaskCommitRecord {
|
|
45
|
+
id: string;
|
|
46
|
+
task_id: string;
|
|
47
|
+
sha: string;
|
|
48
|
+
message: string | null;
|
|
49
|
+
author: string | null;
|
|
50
|
+
files_changed: string[] | null;
|
|
51
|
+
created_at: string;
|
|
52
|
+
}
|
|
53
|
+
export interface CreateTodosCommitInput {
|
|
54
|
+
task_id: string;
|
|
55
|
+
sha: string;
|
|
56
|
+
message?: string | null;
|
|
57
|
+
author?: string | null;
|
|
58
|
+
files_changed?: string[] | null;
|
|
59
|
+
}
|
|
60
|
+
export interface TodosCommitStore {
|
|
61
|
+
add(input: CreateTodosCommitInput, context?: TodosStorageContext): MaybePromise<TodosTaskCommitRecord>;
|
|
62
|
+
list(taskId: string, context?: TodosStorageContext): MaybePromise<TodosTaskCommitRecord[]>;
|
|
63
|
+
find(sha: string, context?: TodosStorageContext): MaybePromise<TodosTaskCommitRecord | null>;
|
|
64
|
+
}
|
|
65
|
+
export interface TodosTaskGitRefRecord {
|
|
66
|
+
id: string;
|
|
67
|
+
task_id: string;
|
|
68
|
+
ref_type: "branch" | "pull_request";
|
|
69
|
+
name: string;
|
|
70
|
+
url: string | null;
|
|
71
|
+
provider: string | null;
|
|
72
|
+
metadata: Record<string, unknown>;
|
|
73
|
+
created_at: string;
|
|
74
|
+
updated_at: string;
|
|
75
|
+
}
|
|
76
|
+
export interface CreateTodosGitRefInput {
|
|
77
|
+
task_id: string;
|
|
78
|
+
ref_type: "branch" | "pull_request";
|
|
79
|
+
name: string;
|
|
80
|
+
url?: string | null;
|
|
81
|
+
provider?: string | null;
|
|
82
|
+
metadata?: Record<string, unknown>;
|
|
83
|
+
}
|
|
84
|
+
export interface TodosGitRefStore {
|
|
85
|
+
add(input: CreateTodosGitRefInput, context?: TodosStorageContext): MaybePromise<TodosTaskGitRefRecord>;
|
|
86
|
+
list(taskId: string, context?: TodosStorageContext): MaybePromise<TodosTaskGitRefRecord[]>;
|
|
87
|
+
find(ref: string, context?: TodosStorageContext): MaybePromise<TodosTaskGitRefRecord[]>;
|
|
88
|
+
}
|
|
40
89
|
export interface TodosLockResult {
|
|
41
90
|
success: boolean;
|
|
42
91
|
locked_by?: string;
|
|
@@ -116,6 +165,10 @@ export interface TodosPlanStore {
|
|
|
116
165
|
update(id: string, input: UpdatePlanInput, context?: TodosStorageContext): MaybePromise<Plan>;
|
|
117
166
|
delete(id: string, context?: TodosStorageContext): MaybePromise<boolean>;
|
|
118
167
|
}
|
|
168
|
+
export interface TodosAgentReleaseResult {
|
|
169
|
+
agent: Agent;
|
|
170
|
+
released: boolean;
|
|
171
|
+
}
|
|
119
172
|
export interface TodosAgentStore {
|
|
120
173
|
register(input: RegisterAgentInput, context?: TodosStorageContext): MaybePromise<Agent | {
|
|
121
174
|
conflict: true;
|
|
@@ -127,6 +180,20 @@ export interface TodosAgentStore {
|
|
|
127
180
|
include_archived?: boolean;
|
|
128
181
|
}, context?: TodosStorageContext): MaybePromise<Agent[]>;
|
|
129
182
|
update(id: string, input: TodosAgentUpdateInput, context?: TodosStorageContext): MaybePromise<Agent | null>;
|
|
183
|
+
/**
|
|
184
|
+
* Refresh an agent's `last_seen_at` (heartbeat), resolving by id OR name.
|
|
185
|
+
* Optional — present on the Postgres (self_hosted) adapter so a flipped machine
|
|
186
|
+
* heartbeats the SHARED cloud roster instead of its local sqlite island (the
|
|
187
|
+
* previous CLI/MCP path 404'd cloud-only agents with "Agent not found").
|
|
188
|
+
*/
|
|
189
|
+
heartbeat?(idOrName: string, context?: TodosStorageContext): MaybePromise<Agent | null>;
|
|
190
|
+
/**
|
|
191
|
+
* Release/logout an agent — clears its session binding so the name is available.
|
|
192
|
+
* Resolves by id OR name. When `sessionId` is provided the release only succeeds
|
|
193
|
+
* if it matches the agent's current session (returns `{ released: false }` on a
|
|
194
|
+
* mismatch). Optional — present on the Postgres (self_hosted) adapter.
|
|
195
|
+
*/
|
|
196
|
+
release?(idOrName: string, sessionId?: string, context?: TodosStorageContext): MaybePromise<TodosAgentReleaseResult | null>;
|
|
130
197
|
}
|
|
131
198
|
export interface TodosAgentUpdateInput {
|
|
132
199
|
name?: string;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"interfaces.d.ts","sourceRoot":"","sources":["../../src/storage/interfaces.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"interfaces.d.ts","sourceRoot":"","sources":["../../src/storage/interfaces.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"postgres-adapter.d.ts","sourceRoot":"","sources":["../../src/storage/postgres-adapter.ts"],"names":[],"mappings":"AAwBA,OAAO,KAAK,
|
|
1
|
+
{"version":3,"file":"postgres-adapter.d.ts","sourceRoot":"","sources":["../../src/storage/postgres-adapter.ts"],"names":[],"mappings":"AAwBA,OAAO,KAAK,EAWV,mBAAmB,EAYpB,MAAM,iBAAiB,CAAC;AACzB,OAAO,EAIL,KAAK,wBAAwB,EAE9B,MAAM,oBAAoB,CAAC;AAI5B,MAAM,WAAW,wCAAwC;IACvD,MAAM,EAAE,wBAAwB,CAAC;IACjC,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,eAAe,CAAC,EAAE,MAAM,CAAC;CAC1B;AAuBD,wBAAgB,iCAAiC,CAC/C,OAAO,EAAE,wCAAwC,GAChD,mBAAmB,CAwHrB"}
|
package/dist/storage.js
CHANGED
|
@@ -11921,6 +11921,16 @@ function createPostgresTodosStorageAdapter(options) {
|
|
|
11921
11921
|
add: (input, context) => addVerification(input, store, context),
|
|
11922
11922
|
list: (taskId) => listVerifications(taskId, store)
|
|
11923
11923
|
},
|
|
11924
|
+
commits: {
|
|
11925
|
+
add: (input, context) => addCommit(input, store, context),
|
|
11926
|
+
list: (taskId) => listCommits(taskId, store),
|
|
11927
|
+
find: (sha) => findCommit(sha, store)
|
|
11928
|
+
},
|
|
11929
|
+
gitRefs: {
|
|
11930
|
+
add: (input, context) => addGitRef(input, store, context),
|
|
11931
|
+
list: (taskId) => listGitRefs(taskId, store),
|
|
11932
|
+
find: (ref) => findGitRefs(ref, store)
|
|
11933
|
+
},
|
|
11924
11934
|
projects: {
|
|
11925
11935
|
create: (input, context) => createProject2(input, store, context),
|
|
11926
11936
|
get: (id) => store.get("projects", id),
|
|
@@ -11941,7 +11951,9 @@ function createPostgresTodosStorageAdapter(options) {
|
|
|
11941
11951
|
get: (id) => store.get("agents", id),
|
|
11942
11952
|
getByName: async (name) => (await store.list("agents")).find((agent) => agent.name === name) ?? null,
|
|
11943
11953
|
list: async (options2) => (await store.list("agents")).filter((agent) => options2?.include_archived || agent.status !== "archived").sort((a, b) => a.name.localeCompare(b.name)),
|
|
11944
|
-
update: (id, input) => updateAgent2(id, input, store)
|
|
11954
|
+
update: (id, input) => updateAgent2(id, input, store),
|
|
11955
|
+
heartbeat: (idOrName, context) => heartbeatAgent(idOrName, store, context),
|
|
11956
|
+
release: (idOrName, sessionId, context) => releaseAgent2(idOrName, sessionId, store, context)
|
|
11945
11957
|
},
|
|
11946
11958
|
taskLists: {
|
|
11947
11959
|
create: (input, context) => createTaskList2(input, store, context),
|
|
@@ -12472,6 +12484,53 @@ async function addVerification(input, store, context) {
|
|
|
12472
12484
|
async function listVerifications(taskId, store) {
|
|
12473
12485
|
return (await store.list("verifications")).filter((verification) => verification.task_id === taskId).sort((a, b) => b.run_at.localeCompare(a.run_at));
|
|
12474
12486
|
}
|
|
12487
|
+
async function addCommit(input, store, context) {
|
|
12488
|
+
if (!await store.get("tasks", input.task_id))
|
|
12489
|
+
throw new Error(`Task not found: ${input.task_id}`);
|
|
12490
|
+
const timestamp = new Date().toISOString();
|
|
12491
|
+
const commit = {
|
|
12492
|
+
id: randomUUID3(),
|
|
12493
|
+
task_id: input.task_id,
|
|
12494
|
+
sha: input.sha,
|
|
12495
|
+
message: input.message ?? null,
|
|
12496
|
+
author: input.author ?? null,
|
|
12497
|
+
files_changed: input.files_changed ?? null,
|
|
12498
|
+
created_at: timestamp
|
|
12499
|
+
};
|
|
12500
|
+
await store.upsert("commits", { ...commit, updated_at: timestamp }, context);
|
|
12501
|
+
return commit;
|
|
12502
|
+
}
|
|
12503
|
+
async function listCommits(taskId, store) {
|
|
12504
|
+
return (await store.list("commits")).filter((commit) => commit.task_id === taskId).sort((a, b) => b.created_at.localeCompare(a.created_at));
|
|
12505
|
+
}
|
|
12506
|
+
async function findCommit(sha, store) {
|
|
12507
|
+
const matches = (await store.list("commits")).filter((commit) => commit.sha === sha || commit.sha.startsWith(sha) || sha.startsWith(commit.sha)).sort((a, b) => b.created_at.localeCompare(a.created_at));
|
|
12508
|
+
return matches[0] ?? null;
|
|
12509
|
+
}
|
|
12510
|
+
async function addGitRef(input, store, context) {
|
|
12511
|
+
if (!await store.get("tasks", input.task_id))
|
|
12512
|
+
throw new Error(`Task not found: ${input.task_id}`);
|
|
12513
|
+
const timestamp = new Date().toISOString();
|
|
12514
|
+
const gitRef = {
|
|
12515
|
+
id: randomUUID3(),
|
|
12516
|
+
task_id: input.task_id,
|
|
12517
|
+
ref_type: input.ref_type,
|
|
12518
|
+
name: input.name,
|
|
12519
|
+
url: input.url ?? null,
|
|
12520
|
+
provider: input.provider ?? null,
|
|
12521
|
+
metadata: input.metadata ?? {},
|
|
12522
|
+
created_at: timestamp,
|
|
12523
|
+
updated_at: timestamp
|
|
12524
|
+
};
|
|
12525
|
+
await store.upsert("refs", gitRef, context);
|
|
12526
|
+
return gitRef;
|
|
12527
|
+
}
|
|
12528
|
+
async function listGitRefs(taskId, store) {
|
|
12529
|
+
return (await store.list("refs")).filter((ref) => ref.task_id === taskId).sort((a, b) => b.created_at.localeCompare(a.created_at));
|
|
12530
|
+
}
|
|
12531
|
+
async function findGitRefs(ref, store) {
|
|
12532
|
+
return (await store.list("refs")).filter((r) => r.name === ref).sort((a, b) => b.created_at.localeCompare(a.created_at));
|
|
12533
|
+
}
|
|
12475
12534
|
var TASK_ORDER_BY = "ORDER BY CASE payload->>'priority' WHEN 'critical' THEN 0 WHEN 'high' THEN 1 WHEN 'medium' THEN 2 WHEN 'low' THEN 3 ELSE 4 END ASC, payload->>'created_at' ASC, payload->>'id' ASC";
|
|
12476
12535
|
function toFilterArray(value) {
|
|
12477
12536
|
return Array.isArray(value) ? value : [value];
|
|
@@ -12619,6 +12678,28 @@ async function updateAgent2(id, input, store) {
|
|
|
12619
12678
|
last_seen_at: new Date().toISOString()
|
|
12620
12679
|
});
|
|
12621
12680
|
}
|
|
12681
|
+
async function resolveAgent(idOrName, store) {
|
|
12682
|
+
const byId = await store.get("agents", idOrName);
|
|
12683
|
+
if (byId)
|
|
12684
|
+
return byId;
|
|
12685
|
+
return (await store.list("agents")).find((agent) => agent.name === idOrName) ?? null;
|
|
12686
|
+
}
|
|
12687
|
+
async function heartbeatAgent(idOrName, store, context) {
|
|
12688
|
+
const agent = await resolveAgent(idOrName, store);
|
|
12689
|
+
if (!agent)
|
|
12690
|
+
return null;
|
|
12691
|
+
return store.upsert("agents", { ...agent, last_seen_at: new Date().toISOString() }, context);
|
|
12692
|
+
}
|
|
12693
|
+
async function releaseAgent2(idOrName, sessionId, store, context) {
|
|
12694
|
+
const agent = await resolveAgent(idOrName, store);
|
|
12695
|
+
if (!agent)
|
|
12696
|
+
return null;
|
|
12697
|
+
if (sessionId && agent.session_id && agent.session_id !== sessionId) {
|
|
12698
|
+
return { agent, released: false };
|
|
12699
|
+
}
|
|
12700
|
+
const updated = await store.upsert("agents", { ...agent, session_id: null, last_seen_at: new Date().toISOString() }, context);
|
|
12701
|
+
return { agent: updated, released: true };
|
|
12702
|
+
}
|
|
12622
12703
|
async function createTaskList2(input, store, context) {
|
|
12623
12704
|
const timestamp = new Date().toISOString();
|
|
12624
12705
|
return store.upsert("task_lists", {
|