negotium 0.17.0 → 0.18.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/dist/agent-helpers.js +4 -143
- package/dist/agent-helpers.js.map +10 -12
- package/dist/background-bash.js.map +1 -1
- package/dist/browser-runtime.js.map +1 -1
- package/dist/{chunk-61n4gy9n.js → chunk-axa09pgx.js} +1 -1
- package/dist/{chunk-93tfzcmm.js → chunk-kgwgwc3r.js} +3 -3
- package/dist/{chunk-93tfzcmm.js.map → chunk-kgwgwc3r.js.map} +2 -2
- package/dist/{chunk-7hdtbre6.js → chunk-th3a0ew7.js} +3 -10
- package/dist/{chunk-7hdtbre6.js.map → chunk-th3a0ew7.js.map} +5 -5
- package/dist/hosted-agent.js +4 -11
- package/dist/hosted-agent.js.map +6 -6
- package/dist/main.js +23 -390
- package/dist/main.js.map +17 -20
- package/dist/mcp-factories.js +6 -95
- package/dist/mcp-factories.js.map +8 -8
- package/dist/media.js.map +1 -1
- package/dist/prompts.js.map +1 -1
- package/dist/query-runtime.js.map +1 -1
- package/dist/registry.js +3 -3
- package/dist/rollout.js +2 -2
- package/dist/runtime/src/agents/archiver.ts +0 -4
- package/dist/runtime/src/agents/public-helpers.ts +0 -8
- package/dist/runtime/src/application/topic-service.ts +1 -11
- package/dist/runtime/src/index.ts +2 -6
- package/dist/runtime/src/mcp/runtime-spec.ts +0 -6
- package/dist/runtime/src/mcp/wiki-server.ts +2 -146
- package/dist/runtime/src/mcp-runtime-host.ts +0 -3
- package/dist/runtime/src/platform/mcp-config.ts +1 -10
- package/dist/runtime/src/prompts/agents/wiki-archiver.md +3 -27
- package/dist/runtime/src/storage/storage-public.ts +0 -2
- package/dist/runtime/src/topics/create.ts +6 -59
- package/dist/runtime/src/types.ts +0 -6
- package/dist/runtime/src/version.ts +1 -1
- package/dist/runtime-helpers.js.map +1 -1
- package/dist/storage.js +1 -81
- package/dist/storage.js.map +4 -5
- package/dist/types/packages/core/src/agents/public-helpers.d.ts +0 -1
- package/dist/types/packages/core/src/mcp/runtime-spec.d.ts +0 -2
- package/dist/types/packages/core/src/mcp/wiki-server.d.ts +0 -20
- package/dist/types/packages/core/src/platform/mcp-config.d.ts +0 -3
- package/dist/types/packages/core/src/storage/storage-public.d.ts +0 -2
- package/dist/types/packages/core/src/types.d.ts +0 -6
- package/dist/types/packages/core/src/version.d.ts +1 -1
- package/dist/vault.js.map +1 -1
- package/package.json +1 -1
- package/dist/runtime/src/agents/topic-defaults.ts +0 -128
- package/dist/runtime/src/storage/topic-default-assignments.ts +0 -140
- package/dist/types/packages/core/src/agents/topic-defaults.d.ts +0 -41
- package/dist/types/packages/core/src/storage/topic-default-assignments.d.ts +0 -34
- /package/dist/{chunk-61n4gy9n.js.map → chunk-axa09pgx.js.map} +0 -0
package/dist/agent-helpers.js
CHANGED
|
@@ -571,8 +571,7 @@ function hostedMcpCacheIdentity(surface, ctx) {
|
|
|
571
571
|
case "skills":
|
|
572
572
|
semanticContext = {
|
|
573
573
|
userId: ctx.userId,
|
|
574
|
-
topicId: ctx.wikiTopicId ?? ctx.topicId ?? null
|
|
575
|
-
memoryKey: ctx.wikiMemoryKey ?? null
|
|
574
|
+
topicId: ctx.wikiTopicId ?? ctx.topicId ?? null
|
|
576
575
|
};
|
|
577
576
|
break;
|
|
578
577
|
case "vault":
|
|
@@ -960,7 +959,6 @@ function buildBuiltinMcpServer(surface, ctx, stdio) {
|
|
|
960
959
|
...ctx.topicId ? { topicId: ctx.topicId } : {},
|
|
961
960
|
...ctx.queryId ? { queryId: ctx.queryId } : {},
|
|
962
961
|
...ctx.wikiTopicId ? { wikiTopicId: ctx.wikiTopicId } : {},
|
|
963
|
-
...ctx.wikiMemoryKey ? { wikiMemoryKey: ctx.wikiMemoryKey } : {},
|
|
964
962
|
...ctx.subagentParentTopicId ? { subagentParentTopicId: ctx.subagentParentTopicId } : {},
|
|
965
963
|
...ctx.threadRootId ? { threadRootId: ctx.threadRootId } : {},
|
|
966
964
|
cwd: ctx.cwd ?? (ctx.topicId ? resolveTopicWorkspaceDir(ctx.topicId) : process.cwd()),
|
|
@@ -1173,7 +1171,6 @@ function getForumMcpServers(opts) {
|
|
|
1173
1171
|
subagentParentTopicId,
|
|
1174
1172
|
queryId,
|
|
1175
1173
|
wikiTopicId,
|
|
1176
|
-
wikiMemoryKey,
|
|
1177
1174
|
agent,
|
|
1178
1175
|
cwd,
|
|
1179
1176
|
model,
|
|
@@ -1207,7 +1204,6 @@ function getForumMcpServers(opts) {
|
|
|
1207
1204
|
subagentParentTopicId,
|
|
1208
1205
|
queryId,
|
|
1209
1206
|
wikiTopicId,
|
|
1210
|
-
wikiMemoryKey,
|
|
1211
1207
|
agent,
|
|
1212
1208
|
cwd,
|
|
1213
1209
|
model,
|
|
@@ -1306,7 +1302,6 @@ function getMcpServersForQuery(opts) {
|
|
|
1306
1302
|
subagentParentTopicId: opts.subagentParentTopicId,
|
|
1307
1303
|
queryId: opts.queryId,
|
|
1308
1304
|
wikiTopicId: opts.wikiTopicId,
|
|
1309
|
-
wikiMemoryKey: opts.wikiMemoryKey,
|
|
1310
1305
|
agent: opts.agent,
|
|
1311
1306
|
cwd: opts.cwd,
|
|
1312
1307
|
model: opts.model,
|
|
@@ -1486,7 +1481,7 @@ var init_mcp_config = __esm(() => {
|
|
|
1486
1481
|
wiki: {
|
|
1487
1482
|
...commonRuntimeMcpPolicy("wiki"),
|
|
1488
1483
|
build(ctx) {
|
|
1489
|
-
const { userId, session, topicId, queryId, wikiTopicId,
|
|
1484
|
+
const { userId, session, topicId, queryId, wikiTopicId, agent, peerBridge } = ctx;
|
|
1490
1485
|
if (peerBridge) {
|
|
1491
1486
|
if (!topicId || !queryId)
|
|
1492
1487
|
return null;
|
|
@@ -1505,8 +1500,6 @@ var init_mcp_config = __esm(() => {
|
|
|
1505
1500
|
const resolvedWikiTopicId = wikiTopicId ?? topicId ?? (session !== "dm" ? session : undefined);
|
|
1506
1501
|
if (resolvedWikiTopicId)
|
|
1507
1502
|
args.push(`--topic-id=${resolvedWikiTopicId}`);
|
|
1508
|
-
if (wikiMemoryKey)
|
|
1509
|
-
args.push(`--memory-key=${wikiMemoryKey}`);
|
|
1510
1503
|
args.push("--surface=wiki");
|
|
1511
1504
|
return buildBuiltinMcpServer("wiki", { ...ctx, wikiTopicId: resolvedWikiTopicId }, () => buildStdioMcpServer(agent, WIKI_SERVER, args));
|
|
1512
1505
|
}
|
|
@@ -3183,7 +3176,7 @@ var init_codex = __esm(async () => {
|
|
|
3183
3176
|
});
|
|
3184
3177
|
|
|
3185
3178
|
// ../../packages/core/src/version.ts
|
|
3186
|
-
var NEGOTIUM_VERSION = "0.
|
|
3179
|
+
var NEGOTIUM_VERSION = "0.18.0";
|
|
3187
3180
|
|
|
3188
3181
|
// ../../packages/core/src/agents/codex-native-multi-agent.ts
|
|
3189
3182
|
import { spawn as spawn2 } from "child_process";
|
|
@@ -8896,7 +8889,6 @@ function createArchiverRuntime(host) {
|
|
|
8896
8889
|
session: `__archiver_${safeTopic}`,
|
|
8897
8890
|
sessionType: "forum",
|
|
8898
8891
|
topicId,
|
|
8899
|
-
wikiMemoryKey: topicTitle,
|
|
8900
8892
|
abortController: new AbortController,
|
|
8901
8893
|
model,
|
|
8902
8894
|
mcpEnabled: ["wiki"],
|
|
@@ -20786,139 +20778,10 @@ await __promiseAll([
|
|
|
20786
20778
|
init_task_events(),
|
|
20787
20779
|
init_topic_cleanup()
|
|
20788
20780
|
]);
|
|
20789
|
-
|
|
20790
|
-
// ../../packages/core/src/agents/topic-defaults.ts
|
|
20791
|
-
init_model_catalog();
|
|
20792
|
-
init_config();
|
|
20793
|
-
init_logger();
|
|
20794
|
-
await init_registry();
|
|
20795
|
-
|
|
20796
|
-
// ../../packages/core/src/storage/topic-default-assignments.ts
|
|
20797
|
-
init_wiki_summary_names();
|
|
20798
|
-
await __promiseAll([
|
|
20799
|
-
init_forum_db(),
|
|
20800
|
-
init_storage_host()
|
|
20801
|
-
]);
|
|
20802
|
-
registerStorageSchemaInitializer((database) => {
|
|
20803
|
-
database.exec(`
|
|
20804
|
-
CREATE TABLE IF NOT EXISTS topic_default_assignments (
|
|
20805
|
-
memory_key TEXT PRIMARY KEY,
|
|
20806
|
-
model TEXT NOT NULL,
|
|
20807
|
-
effort TEXT,
|
|
20808
|
-
reason TEXT,
|
|
20809
|
-
assign_count INTEGER NOT NULL DEFAULT 1,
|
|
20810
|
-
updated_at TEXT NOT NULL DEFAULT (datetime('now'))
|
|
20811
|
-
)
|
|
20812
|
-
`);
|
|
20813
|
-
}, 31);
|
|
20814
|
-
function normalizeMemoryKey(memoryKey) {
|
|
20815
|
-
const raw = memoryKey.trim().replace(/^topic\//, "").replace(/\.md$/i, "").trim();
|
|
20816
|
-
if (!raw)
|
|
20817
|
-
return "";
|
|
20818
|
-
return wikiSummarySlug(raw).toLowerCase();
|
|
20819
|
-
}
|
|
20820
|
-
function rowToAssignment(row) {
|
|
20821
|
-
return {
|
|
20822
|
-
memoryKey: row.memory_key,
|
|
20823
|
-
model: row.model,
|
|
20824
|
-
effort: row.effort ?? undefined,
|
|
20825
|
-
reason: row.reason ?? undefined,
|
|
20826
|
-
assignCount: row.assign_count,
|
|
20827
|
-
updatedAt: row.updated_at
|
|
20828
|
-
};
|
|
20829
|
-
}
|
|
20830
|
-
var SELECT_COLUMNS = "memory_key, model, effort, reason, assign_count, updated_at";
|
|
20831
|
-
function getTopicDefaultAssignment(memoryKey) {
|
|
20832
|
-
const key = normalizeMemoryKey(memoryKey);
|
|
20833
|
-
if (!key)
|
|
20834
|
-
return null;
|
|
20835
|
-
const row = db.query(`SELECT ${SELECT_COLUMNS} FROM topic_default_assignments WHERE memory_key = ?`).get(key);
|
|
20836
|
-
return row ? rowToAssignment(row) : null;
|
|
20837
|
-
}
|
|
20838
|
-
function upsertTopicDefaultAssignment(input) {
|
|
20839
|
-
const key = normalizeMemoryKey(input.memoryKey);
|
|
20840
|
-
const model = input.model.trim();
|
|
20841
|
-
if (!key || !model)
|
|
20842
|
-
return null;
|
|
20843
|
-
db.query(`INSERT INTO topic_default_assignments (memory_key, model, effort, reason, assign_count, updated_at)
|
|
20844
|
-
VALUES (?, ?, ?, ?, 1, ?)
|
|
20845
|
-
ON CONFLICT(memory_key) DO UPDATE SET
|
|
20846
|
-
model = excluded.model,
|
|
20847
|
-
effort = excluded.effort,
|
|
20848
|
-
reason = excluded.reason,
|
|
20849
|
-
assign_count = topic_default_assignments.assign_count + 1,
|
|
20850
|
-
updated_at = excluded.updated_at`).run(key, model, input.effort?.trim() || null, input.reason?.trim() || null, new Date().toISOString());
|
|
20851
|
-
return getTopicDefaultAssignment(key);
|
|
20852
|
-
}
|
|
20853
|
-
|
|
20854
|
-
// ../../packages/core/src/agents/topic-defaults.ts
|
|
20855
|
-
function validateAssignedDefaults(model, effort) {
|
|
20856
|
-
const candidate = canonicalModelId(model.trim());
|
|
20857
|
-
if (!candidate)
|
|
20858
|
-
return null;
|
|
20859
|
-
const agent = modelOwner(candidate);
|
|
20860
|
-
if (!agent)
|
|
20861
|
-
return null;
|
|
20862
|
-
let registry;
|
|
20863
|
-
try {
|
|
20864
|
-
registry = getRegistry(agent);
|
|
20865
|
-
} catch {
|
|
20866
|
-
return null;
|
|
20867
|
-
}
|
|
20868
|
-
if (!registry?.validateModel(candidate))
|
|
20869
|
-
return null;
|
|
20870
|
-
const requestedEffort = effort?.trim().toLowerCase();
|
|
20871
|
-
const resolvedEffort = requestedEffort && registry.validateEffort(requestedEffort) ? requestedEffort : registry.validateEffort(DEFAULT_TOPIC_EFFORT) ? DEFAULT_TOPIC_EFFORT : undefined;
|
|
20872
|
-
if (!resolvedEffort)
|
|
20873
|
-
return null;
|
|
20874
|
-
return { agent, model: candidate, effort: resolvedEffort };
|
|
20875
|
-
}
|
|
20876
|
-
function resolveAssignedTopicDefaults(memoryKey) {
|
|
20877
|
-
const key = memoryKey ? normalizeMemoryKey(memoryKey) : "";
|
|
20878
|
-
if (!key)
|
|
20879
|
-
return null;
|
|
20880
|
-
let stored;
|
|
20881
|
-
try {
|
|
20882
|
-
stored = getTopicDefaultAssignment(key);
|
|
20883
|
-
} catch (err2) {
|
|
20884
|
-
logger.warn({ err: err2, memoryKey: key }, "topic-defaults: assignment lookup failed");
|
|
20885
|
-
return null;
|
|
20886
|
-
}
|
|
20887
|
-
if (!stored)
|
|
20888
|
-
return null;
|
|
20889
|
-
const validated = validateAssignedDefaults(stored.model, stored.effort);
|
|
20890
|
-
if (!validated) {
|
|
20891
|
-
logger.info({ memoryKey: key, model: stored.model, effort: stored.effort }, "topic-defaults: stored assignment is stale - falling back to node defaults");
|
|
20892
|
-
return null;
|
|
20893
|
-
}
|
|
20894
|
-
return {
|
|
20895
|
-
memoryKey: key,
|
|
20896
|
-
...validated,
|
|
20897
|
-
...stored.reason ? { reason: stored.reason } : {}
|
|
20898
|
-
};
|
|
20899
|
-
}
|
|
20900
|
-
function assignTopicDefaults(input) {
|
|
20901
|
-
const validated = validateAssignedDefaults(input.model, input.effort);
|
|
20902
|
-
if (!validated)
|
|
20903
|
-
return null;
|
|
20904
|
-
try {
|
|
20905
|
-
const stored = upsertTopicDefaultAssignment({
|
|
20906
|
-
memoryKey: input.memoryKey,
|
|
20907
|
-
model: validated.model,
|
|
20908
|
-
effort: validated.effort,
|
|
20909
|
-
...input.reason ? { reason: input.reason } : {}
|
|
20910
|
-
});
|
|
20911
|
-
return stored ? { ...validated, assignCount: stored.assignCount } : null;
|
|
20912
|
-
} catch (err2) {
|
|
20913
|
-
logger.warn({ err: err2, memoryKey: input.memoryKey }, "topic-defaults: assignment write failed");
|
|
20914
|
-
return null;
|
|
20915
|
-
}
|
|
20916
|
-
}
|
|
20917
20781
|
export {
|
|
20918
20782
|
withTaskSnapshots,
|
|
20919
20783
|
withCodexSpawnSerial,
|
|
20920
20784
|
visualToolDefinitions,
|
|
20921
|
-
validateAssignedDefaults,
|
|
20922
20785
|
unregisterOwnedCodexPids,
|
|
20923
20786
|
summarizeToolInput,
|
|
20924
20787
|
summarizeShellCommand,
|
|
@@ -20930,7 +20793,6 @@ export {
|
|
|
20930
20793
|
showHtmlTool,
|
|
20931
20794
|
rotateTopicLogs,
|
|
20932
20795
|
resolveTaskEventScope,
|
|
20933
|
-
resolveAssignedTopicDefaults,
|
|
20934
20796
|
registerOwnedCodexPids,
|
|
20935
20797
|
purgeTopicLogs,
|
|
20936
20798
|
otiumVisualToolDefinitions,
|
|
@@ -20959,7 +20821,6 @@ export {
|
|
|
20959
20821
|
checkAgentModelAuth,
|
|
20960
20822
|
checkAgentAuth,
|
|
20961
20823
|
buildNumberedDiffSummary,
|
|
20962
|
-
assignTopicDefaults,
|
|
20963
20824
|
archiveActiveTopicForMemory,
|
|
20964
20825
|
applySelfConfigCapabilityFilter,
|
|
20965
20826
|
acquireCodexSpawnLock,
|
|
@@ -20969,4 +20830,4 @@ export {
|
|
|
20969
20830
|
DEFAULT_SELF_CONFIG_PRODUCT
|
|
20970
20831
|
};
|
|
20971
20832
|
|
|
20972
|
-
//# debugId=
|
|
20833
|
+
//# debugId=229E0F9700D2EF9E64756E2164756E21
|