ur-agent 1.78.2 → 1.78.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/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,33 @@
|
|
|
1
1
|
# Changelog
|
|
2
2
|
|
|
3
|
+
## 1.78.4
|
|
4
|
+
|
|
5
|
+
- A task may declare a dependency on a task that does not exist yet. A plan
|
|
6
|
+
written in dependency order arrives as forward references — step 2 says it is
|
|
7
|
+
blocked by step 8 while the list is still being built — and each of those was
|
|
8
|
+
refused as `task_not_found`, so most of a plan's structure was discarded at
|
|
9
|
+
the moment it was created. The read side already handled an unresolved
|
|
10
|
+
blocker; the write side now stores the edge, and creating the target adopts
|
|
11
|
+
the matching reverse edge so the pair is linked both ways. Self-dependencies,
|
|
12
|
+
cycles between existing tasks, and an edge from a task that does not exist
|
|
13
|
+
are all still refused.
|
|
14
|
+
- Ollama's wait for response headers has its own ceiling, separate from the
|
|
15
|
+
inactivity budget that governs the stream once it starts. Prefill for a large
|
|
16
|
+
prompt and a cold model load both happen before the first byte and neither is
|
|
17
|
+
idleness, so bounding them with the same figure aborted a long request before
|
|
18
|
+
the model had said anything and reported it as a timeout. An explicit
|
|
19
|
+
timeout, or `API_TIMEOUT_MS`, still wins.
|
|
20
|
+
|
|
21
|
+
## 1.78.3
|
|
22
|
+
|
|
23
|
+
- A `config set` no longer runs in a parallel batch. Writing a setting is a
|
|
24
|
+
read-modify-write against the settings file: the value is merged into what is
|
|
25
|
+
on disk and the result written back. Two writes in the same batch both read
|
|
26
|
+
the pre-write state, so the second silently discarded the first. Reads have
|
|
27
|
+
no such hazard and still batch.
|
|
28
|
+
- A notebook edit is reported to the editor like every other file change, so it
|
|
29
|
+
appears in the inline diff view. It was the one kind of edit that never did.
|
|
30
|
+
|
|
3
31
|
## 1.78.2
|
|
4
32
|
|
|
5
33
|
- `describeQuestionPayloadProblems` returns only problems again. A description
|
package/dist/cli.js
CHANGED
|
@@ -89258,6 +89258,7 @@ __export(exports_ollama, {
|
|
|
89258
89258
|
mergeToolCalls: () => mergeToolCalls,
|
|
89259
89259
|
isOllamaCloudModel: () => isOllamaCloudModel2,
|
|
89260
89260
|
getOllamaRequestTimeoutMs: () => getOllamaRequestTimeoutMs,
|
|
89261
|
+
getOllamaHeaderTimeoutMs: () => getOllamaHeaderTimeoutMs,
|
|
89261
89262
|
getEffectiveOllamaBaseUrl: () => getEffectiveOllamaBaseUrl,
|
|
89262
89263
|
createOllamaURHQClient: () => createOllamaURHQClient,
|
|
89263
89264
|
consumePendingProviderNotice: () => consumePendingProviderNotice,
|
|
@@ -89322,7 +89323,7 @@ async function createNonStreamingRequest(params, options, baseUrl = getEffective
|
|
|
89322
89323
|
return ollamaResponseToURHQMessage(json2, params, textToolFallbackAllowed);
|
|
89323
89324
|
}
|
|
89324
89325
|
async function fetchOllamaChat(params, stream4, controller, options, baseUrl = getEffectiveOllamaBaseUrl()) {
|
|
89325
|
-
const timeout =
|
|
89326
|
+
const timeout = getOllamaHeaderTimeoutMs(options, process.env, params.model);
|
|
89326
89327
|
const timeoutId = timeout > 0 ? setTimeout(() => controller.abort(), timeout) : undefined;
|
|
89327
89328
|
try {
|
|
89328
89329
|
const capabilities = await getOllamaModelCapabilities(params.model, baseUrl, controller.signal);
|
|
@@ -89399,6 +89400,15 @@ function createLinkedAbortController(options) {
|
|
|
89399
89400
|
signal.addEventListener("abort", () => controller.abort(), { once: true });
|
|
89400
89401
|
return controller;
|
|
89401
89402
|
}
|
|
89403
|
+
function getOllamaHeaderTimeoutMs(options, env4 = process.env, model) {
|
|
89404
|
+
if (options?.timeoutMs !== undefined || options?.timeout !== undefined) {
|
|
89405
|
+
return getOllamaRequestTimeoutMs(options, env4, model);
|
|
89406
|
+
}
|
|
89407
|
+
const override = parseInt(env4.API_TIMEOUT_MS || "", 10);
|
|
89408
|
+
if (override > 0)
|
|
89409
|
+
return override;
|
|
89410
|
+
return Math.max(OLLAMA_HEADER_TIMEOUT_MS, getOllamaRequestTimeoutMs(options, env4, model));
|
|
89411
|
+
}
|
|
89402
89412
|
function getOllamaRequestTimeoutMs(options, env4 = process.env, model) {
|
|
89403
89413
|
if (options?.timeoutMs !== undefined || options?.timeout !== undefined) {
|
|
89404
89414
|
return options.timeoutMs ?? options.timeout ?? DEFAULT_OLLAMA_REQUEST_TIMEOUT_MS;
|
|
@@ -90352,7 +90362,7 @@ function parseToolInput(input) {
|
|
|
90352
90362
|
}
|
|
90353
90363
|
return normalized;
|
|
90354
90364
|
}
|
|
90355
|
-
var DEFAULT_OLLAMA_REQUEST_TIMEOUT_MS = 300000, REMOTE_OLLAMA_REQUEST_TIMEOUT_MS = 120000, CLOUD_OLLAMA_REQUEST_TIMEOUT_MS = 120000, OLLAMA_GATEWAY_TIMEOUT_MESSAGE = "Ollama gateway timed out while waiting for the model to respond. Check the selected Ollama endpoint or increase API_TIMEOUT_MS if the model needs more time.", ollamaModelCapabilitiesCache, warnedToolsUnsupportedModels, TEXT_TOOL_CALL_HINT, pendingProviderNotice = null, LEVELED_THINK_MODEL_RE;
|
|
90365
|
+
var DEFAULT_OLLAMA_REQUEST_TIMEOUT_MS = 300000, OLLAMA_HEADER_TIMEOUT_MS = 900000, REMOTE_OLLAMA_REQUEST_TIMEOUT_MS = 120000, CLOUD_OLLAMA_REQUEST_TIMEOUT_MS = 120000, OLLAMA_GATEWAY_TIMEOUT_MESSAGE = "Ollama gateway timed out while waiting for the model to respond. Check the selected Ollama endpoint or increase API_TIMEOUT_MS if the model needs more time.", ollamaModelCapabilitiesCache, warnedToolsUnsupportedModels, TEXT_TOOL_CALL_HINT, pendingProviderNotice = null, LEVELED_THINK_MODEL_RE;
|
|
90356
90366
|
var init_ollama = __esm(() => {
|
|
90357
90367
|
init_urhq_sdk();
|
|
90358
90368
|
init_ollamaModels();
|
|
@@ -107580,7 +107590,7 @@ var init_auth = __esm(() => {
|
|
|
107580
107590
|
|
|
107581
107591
|
// src/utils/userAgent.ts
|
|
107582
107592
|
function getURCodeUserAgent() {
|
|
107583
|
-
return `ur/${"1.78.
|
|
107593
|
+
return `ur/${"1.78.4"}`;
|
|
107584
107594
|
}
|
|
107585
107595
|
|
|
107586
107596
|
// src/utils/workloadContext.ts
|
|
@@ -107602,7 +107612,7 @@ function getUserAgent() {
|
|
|
107602
107612
|
const clientApp = process.env.UR_AGENT_SDK_CLIENT_APP ? `, client-app/${process.env.UR_AGENT_SDK_CLIENT_APP}` : "";
|
|
107603
107613
|
const workload = getWorkload();
|
|
107604
107614
|
const workloadSuffix = workload ? `, workload/${workload}` : "";
|
|
107605
|
-
return `ur-cli/${"1.78.
|
|
107615
|
+
return `ur-cli/${"1.78.4"} (${process.env.USER_TYPE}, ${process.env.UR_CODE_ENTRYPOINT ?? "cli"}${agentSdkVersion}${clientApp}${workloadSuffix})`;
|
|
107606
107616
|
}
|
|
107607
107617
|
function getMCPUserAgent() {
|
|
107608
107618
|
const parts = [];
|
|
@@ -107616,7 +107626,7 @@ function getMCPUserAgent() {
|
|
|
107616
107626
|
parts.push(`client-app/${process.env.UR_AGENT_SDK_CLIENT_APP}`);
|
|
107617
107627
|
}
|
|
107618
107628
|
const suffix = parts.length > 0 ? ` (${parts.join(", ")})` : "";
|
|
107619
|
-
return `ur/${"1.78.
|
|
107629
|
+
return `ur/${"1.78.4"}${suffix}`;
|
|
107620
107630
|
}
|
|
107621
107631
|
function getWebFetchUserAgent() {
|
|
107622
107632
|
return `UR-User (${getURCodeUserAgent()})`;
|
|
@@ -107754,7 +107764,7 @@ var init_user = __esm(() => {
|
|
|
107754
107764
|
deviceId,
|
|
107755
107765
|
sessionId: getSessionId(),
|
|
107756
107766
|
email: getEmail(),
|
|
107757
|
-
appVersion: "1.78.
|
|
107767
|
+
appVersion: "1.78.4",
|
|
107758
107768
|
platform: getHostPlatformForAnalytics(),
|
|
107759
107769
|
organizationUuid,
|
|
107760
107770
|
accountUuid,
|
|
@@ -115641,7 +115651,7 @@ var init_metadata = __esm(() => {
|
|
|
115641
115651
|
COMPOUND_OPERATOR_REGEX = /\s*(?:&&|\|\||[;|])\s*/;
|
|
115642
115652
|
WHITESPACE_REGEX = /\s+/;
|
|
115643
115653
|
getVersionBase = memoize_default(() => {
|
|
115644
|
-
const match = "1.78.
|
|
115654
|
+
const match = "1.78.4".match(/^\d+\.\d+\.\d+(?:-[a-z]+)?/);
|
|
115645
115655
|
return match ? match[0] : undefined;
|
|
115646
115656
|
});
|
|
115647
115657
|
buildEnvContext = memoize_default(async () => {
|
|
@@ -115681,7 +115691,7 @@ var init_metadata = __esm(() => {
|
|
|
115681
115691
|
isGithubAction: isEnvTruthy(process.env.GITHUB_ACTIONS),
|
|
115682
115692
|
isURCodeAction: isEnvTruthy(process.env.UR_CODE_ACTION),
|
|
115683
115693
|
isURAiAuth: isURAISubscriber(),
|
|
115684
|
-
version: "1.78.
|
|
115694
|
+
version: "1.78.4",
|
|
115685
115695
|
versionBase: getVersionBase(),
|
|
115686
115696
|
buildTime: "",
|
|
115687
115697
|
deploymentEnvironment: env2.detectDeploymentEnvironment(),
|
|
@@ -116351,7 +116361,7 @@ function initialize1PEventLogging() {
|
|
|
116351
116361
|
const platform2 = getPlatform();
|
|
116352
116362
|
const attributes = {
|
|
116353
116363
|
[import_semantic_conventions4.ATTR_SERVICE_NAME]: "ur",
|
|
116354
|
-
[import_semantic_conventions4.ATTR_SERVICE_VERSION]: "1.78.
|
|
116364
|
+
[import_semantic_conventions4.ATTR_SERVICE_VERSION]: "1.78.4"
|
|
116355
116365
|
};
|
|
116356
116366
|
if (platform2 === "wsl") {
|
|
116357
116367
|
const wslVersion = getWslVersion();
|
|
@@ -116379,7 +116389,7 @@ function initialize1PEventLogging() {
|
|
|
116379
116389
|
})
|
|
116380
116390
|
]
|
|
116381
116391
|
});
|
|
116382
|
-
firstPartyEventLogger = firstPartyEventLoggerProvider.getLogger("com.urhq.ur.events", "1.78.
|
|
116392
|
+
firstPartyEventLogger = firstPartyEventLoggerProvider.getLogger("com.urhq.ur.events", "1.78.4");
|
|
116383
116393
|
}
|
|
116384
116394
|
async function reinitialize1PEventLoggingIfConfigChanged() {
|
|
116385
116395
|
if (!is1PEventLoggingEnabled() || !firstPartyEventLoggerProvider) {
|
|
@@ -126161,7 +126171,7 @@ function formatAgentTrendReport(report = buildAgentTrendReport()) {
|
|
|
126161
126171
|
function formatA2AAgentCard(options = {}, pretty = true) {
|
|
126162
126172
|
return JSON.stringify(buildA2AAgentCard(options), null, pretty ? 2 : 0);
|
|
126163
126173
|
}
|
|
126164
|
-
var urVersion = "1.78.
|
|
126174
|
+
var urVersion = "1.78.4", researchSnapshotDate = "2026-07-15", coverage, priorityRoadmap;
|
|
126165
126175
|
var init_trends = __esm(() => {
|
|
126166
126176
|
init_a2aCardSignature();
|
|
126167
126177
|
coverage = [
|
|
@@ -128964,7 +128974,7 @@ function getAttributionHeader(fingerprint) {
|
|
|
128964
128974
|
if (!isAttributionHeaderEnabled()) {
|
|
128965
128975
|
return "";
|
|
128966
128976
|
}
|
|
128967
|
-
const version2 = `${"1.78.
|
|
128977
|
+
const version2 = `${"1.78.4"}.${fingerprint}`;
|
|
128968
128978
|
const entrypoint = process.env.UR_CODE_ENTRYPOINT ?? "unknown";
|
|
128969
128979
|
const cch = "";
|
|
128970
128980
|
const workload = getWorkload();
|
|
@@ -156968,7 +156978,7 @@ var init_projectSafety = __esm(() => {
|
|
|
156968
156978
|
function getInstruments() {
|
|
156969
156979
|
if (instruments)
|
|
156970
156980
|
return instruments;
|
|
156971
|
-
const meter = import_api10.metrics.getMeter("ur-agent.gen_ai", "1.78.
|
|
156981
|
+
const meter = import_api10.metrics.getMeter("ur-agent.gen_ai", "1.78.4");
|
|
156972
156982
|
instruments = {
|
|
156973
156983
|
operationDuration: meter.createHistogram("gen_ai.client.operation.duration", {
|
|
156974
156984
|
description: "GenAI operation duration.",
|
|
@@ -157066,7 +157076,7 @@ function genAiAgentAttributes() {
|
|
|
157066
157076
|
"gen_ai.operation.name": GEN_AI_OPERATION_INVOKE_AGENT,
|
|
157067
157077
|
"gen_ai.provider.name": "ur",
|
|
157068
157078
|
"gen_ai.agent.name": "UR-Nexus",
|
|
157069
|
-
"gen_ai.agent.version": "1.78.
|
|
157079
|
+
"gen_ai.agent.version": "1.78.4"
|
|
157070
157080
|
};
|
|
157071
157081
|
}
|
|
157072
157082
|
function genAiWorkflowAttributes(workflowName) {
|
|
@@ -157082,7 +157092,7 @@ function genAiWorkflowAttributes(workflowName) {
|
|
|
157082
157092
|
function startGenAiWorkflowSpan(workflowName) {
|
|
157083
157093
|
const attributes = genAiWorkflowAttributes(workflowName);
|
|
157084
157094
|
const name = typeof attributes["gen_ai.workflow.name"] === "string" ? `invoke_workflow ${attributes["gen_ai.workflow.name"]}` : GEN_AI_OPERATION_INVOKE_WORKFLOW;
|
|
157085
|
-
return import_api10.trace.getTracer("ur-agent.gen_ai", "1.78.
|
|
157095
|
+
return import_api10.trace.getTracer("ur-agent.gen_ai", "1.78.4").startSpan(name, { kind: import_api10.SpanKind.INTERNAL, attributes });
|
|
157086
157096
|
}
|
|
157087
157097
|
function endGenAiWorkflowSpan(span, options2 = {}) {
|
|
157088
157098
|
try {
|
|
@@ -157120,7 +157130,7 @@ function startGenAiMemorySpan(operation, options2 = {}) {
|
|
|
157120
157130
|
if (options2.recordCount !== undefined && Number.isInteger(options2.recordCount) && options2.recordCount >= 0) {
|
|
157121
157131
|
attributes["gen_ai.memory.record.count"] = options2.recordCount;
|
|
157122
157132
|
}
|
|
157123
|
-
return import_api10.trace.getTracer("ur-agent.gen_ai", "1.78.
|
|
157133
|
+
return import_api10.trace.getTracer("ur-agent.gen_ai", "1.78.4").startSpan(operation, { kind: import_api10.SpanKind.INTERNAL, attributes });
|
|
157124
157134
|
}
|
|
157125
157135
|
function endGenAiMemorySpan(span, options2 = {}) {
|
|
157126
157136
|
try {
|
|
@@ -159143,6 +159153,7 @@ var VERIFIER_AGENT_TYPE = "verification";
|
|
|
159143
159153
|
// src/utils/tasks.ts
|
|
159144
159154
|
var exports_tasks = {};
|
|
159145
159155
|
__export(exports_tasks, {
|
|
159156
|
+
validateTaskDependencyInSnapshot: () => validateTaskDependencyInSnapshot,
|
|
159146
159157
|
validateTaskDependency: () => validateTaskDependency,
|
|
159147
159158
|
validateTaskDependencies: () => validateTaskDependencies,
|
|
159148
159159
|
updateTaskWithDependencies: () => updateTaskWithDependencies,
|
|
@@ -159476,7 +159487,11 @@ async function createTask(taskListId, taskData) {
|
|
|
159476
159487
|
throw new Error("Task ID space is exhausted");
|
|
159477
159488
|
}
|
|
159478
159489
|
const id = String(highestId + 1);
|
|
159479
|
-
const
|
|
159490
|
+
const awaiting = (await listTasks(taskListId)).filter((existing2) => existing2.blockedBy.includes(id));
|
|
159491
|
+
const blocks = [
|
|
159492
|
+
...new Set([...taskData.blocks ?? [], ...awaiting.map((t) => t.id)])
|
|
159493
|
+
];
|
|
159494
|
+
const task = { id, ...taskData, blocks };
|
|
159480
159495
|
await writeTaskSnapshotUnsafe(taskListId, task);
|
|
159481
159496
|
notifyTasksUpdated();
|
|
159482
159497
|
return id;
|
|
@@ -159724,9 +159739,12 @@ function validateTaskDependencyInSnapshot(tasks, fromTaskId, toTaskId) {
|
|
|
159724
159739
|
const byId = new Map(tasks.map((task) => [task.id, task]));
|
|
159725
159740
|
const fromTask = byId.get(fromTaskId);
|
|
159726
159741
|
const toTask = byId.get(toTaskId);
|
|
159727
|
-
if (!fromTask
|
|
159742
|
+
if (!fromTask) {
|
|
159728
159743
|
return { valid: false, reason: "task_not_found" };
|
|
159729
159744
|
}
|
|
159745
|
+
if (!toTask) {
|
|
159746
|
+
return { valid: true };
|
|
159747
|
+
}
|
|
159730
159748
|
if (fromTask.blocks.includes(toTaskId)) {
|
|
159731
159749
|
return { valid: true };
|
|
159732
159750
|
}
|
|
@@ -250768,7 +250786,7 @@ function getTelemetryAttributes() {
|
|
|
250768
250786
|
attributes["session.id"] = sessionId;
|
|
250769
250787
|
}
|
|
250770
250788
|
if (shouldIncludeAttribute("OTEL_METRICS_INCLUDE_VERSION")) {
|
|
250771
|
-
attributes["app.version"] = "1.78.
|
|
250789
|
+
attributes["app.version"] = "1.78.4";
|
|
250772
250790
|
}
|
|
250773
250791
|
const oauthAccount = getOauthAccountInfo();
|
|
250774
250792
|
if (oauthAccount) {
|
|
@@ -297275,7 +297293,7 @@ function getInstallationEnv() {
|
|
|
297275
297293
|
return;
|
|
297276
297294
|
}
|
|
297277
297295
|
function getURCodeVersion() {
|
|
297278
|
-
return "1.78.
|
|
297296
|
+
return "1.78.4";
|
|
297279
297297
|
}
|
|
297280
297298
|
async function getInstalledVSCodeExtensionVersion(command) {
|
|
297281
297299
|
const { stdout } = await execFileNoThrow(command, ["--list-extensions", "--show-versions"], {
|
|
@@ -304606,7 +304624,7 @@ async function setupSdkMcpClients(sdkMcpConfigs, sendMcpMessage) {
|
|
|
304606
304624
|
const client2 = new Client({
|
|
304607
304625
|
name: "ur",
|
|
304608
304626
|
title: "UR",
|
|
304609
|
-
version: "1.78.
|
|
304627
|
+
version: "1.78.4",
|
|
304610
304628
|
description: "UR-Nexus autonomous engineering workflow engine",
|
|
304611
304629
|
websiteUrl: PRODUCT_URL
|
|
304612
304630
|
}, {
|
|
@@ -304966,7 +304984,7 @@ var init_client5 = __esm(() => {
|
|
|
304966
304984
|
const client2 = new Client({
|
|
304967
304985
|
name: "ur",
|
|
304968
304986
|
title: "UR",
|
|
304969
|
-
version: "1.78.
|
|
304987
|
+
version: "1.78.4",
|
|
304970
304988
|
description: "UR-Nexus autonomous engineering workflow engine",
|
|
304971
304989
|
websiteUrl: PRODUCT_URL
|
|
304972
304990
|
}, {
|
|
@@ -317575,7 +317593,7 @@ async function createRuntime() {
|
|
|
317575
317593
|
bootstrapTelemetry();
|
|
317576
317594
|
const resource = defaultResource().merge(detectResources({ detectors: [envDetector] })).merge(resourceFromAttributes({
|
|
317577
317595
|
[import_semantic_conventions7.ATTR_SERVICE_NAME]: "ur-agent",
|
|
317578
|
-
[import_semantic_conventions7.ATTR_SERVICE_VERSION]: "1.78.
|
|
317596
|
+
[import_semantic_conventions7.ATTR_SERVICE_VERSION]: "1.78.4"
|
|
317579
317597
|
}));
|
|
317580
317598
|
const tracerProvider = exporters.traces.length > 0 ? new BasicTracerProvider({
|
|
317581
317599
|
resource,
|
|
@@ -317608,11 +317626,11 @@ async function createRuntime() {
|
|
|
317608
317626
|
setMeterProvider(meterProvider);
|
|
317609
317627
|
setLoggerProvider(loggerProvider);
|
|
317610
317628
|
if (meterProvider) {
|
|
317611
|
-
const meter = meterProvider.getMeter("ur-agent", "1.78.
|
|
317629
|
+
const meter = meterProvider.getMeter("ur-agent", "1.78.4");
|
|
317612
317630
|
setMeter(meter, (name, options2) => meter.createCounter(name, options2));
|
|
317613
317631
|
}
|
|
317614
317632
|
if (loggerProvider) {
|
|
317615
|
-
setEventLogger(loggerProvider.getLogger("ur-agent.events", "1.78.
|
|
317633
|
+
setEventLogger(loggerProvider.getLogger("ur-agent.events", "1.78.4"));
|
|
317616
317634
|
}
|
|
317617
317635
|
if (!cleanupRegistered2) {
|
|
317618
317636
|
cleanupRegistered2 = true;
|
|
@@ -318274,9 +318292,9 @@ async function assertMinVersion() {
|
|
|
318274
318292
|
if (false) {}
|
|
318275
318293
|
try {
|
|
318276
318294
|
const versionConfig = await getDynamicConfig_BLOCKS_ON_INIT("tengu_version_config", { minVersion: "0.0.0" });
|
|
318277
|
-
if (versionConfig.minVersion && lt("1.78.
|
|
318295
|
+
if (versionConfig.minVersion && lt("1.78.4", versionConfig.minVersion)) {
|
|
318278
318296
|
console.error(`
|
|
318279
|
-
It looks like your version of UR (${"1.78.
|
|
318297
|
+
It looks like your version of UR (${"1.78.4"}) needs an update.
|
|
318280
318298
|
A newer version (${versionConfig.minVersion} or higher) is required to continue.
|
|
318281
318299
|
|
|
318282
318300
|
To update, please run:
|
|
@@ -318492,7 +318510,7 @@ async function installGlobalPackage(specificVersion) {
|
|
|
318492
318510
|
logError2(new AutoUpdaterError("Another process is currently installing an update"));
|
|
318493
318511
|
logEvent("tengu_auto_updater_lock_contention", {
|
|
318494
318512
|
pid: process.pid,
|
|
318495
|
-
currentVersion: "1.78.
|
|
318513
|
+
currentVersion: "1.78.4"
|
|
318496
318514
|
});
|
|
318497
318515
|
return "in_progress";
|
|
318498
318516
|
}
|
|
@@ -318501,7 +318519,7 @@ async function installGlobalPackage(specificVersion) {
|
|
|
318501
318519
|
if (!env2.isRunningWithBun() && env2.isNpmFromWindowsPath()) {
|
|
318502
318520
|
logError2(new Error("Windows NPM detected in WSL environment"));
|
|
318503
318521
|
logEvent("tengu_auto_updater_windows_npm_in_wsl", {
|
|
318504
|
-
currentVersion: "1.78.
|
|
318522
|
+
currentVersion: "1.78.4"
|
|
318505
318523
|
});
|
|
318506
318524
|
console.error(`
|
|
318507
318525
|
Error: Windows NPM detected in WSL
|
|
@@ -319036,7 +319054,7 @@ function detectLinuxGlobPatternWarnings() {
|
|
|
319036
319054
|
}
|
|
319037
319055
|
async function getDoctorDiagnostic() {
|
|
319038
319056
|
const installationType = await getCurrentInstallationType();
|
|
319039
|
-
const version2 = typeof MACRO !== "undefined" ? "1.78.
|
|
319057
|
+
const version2 = typeof MACRO !== "undefined" ? "1.78.4" : "unknown";
|
|
319040
319058
|
const installationPath = await getInstallationPath();
|
|
319041
319059
|
const invokedBinary = getInvokedBinary();
|
|
319042
319060
|
const multipleInstallations = await detectMultipleInstallations();
|
|
@@ -319971,8 +319989,8 @@ async function updateLatest(channelOrVersion, forceReinstall = false) {
|
|
|
319971
319989
|
const maxVersion = await getMaxVersion();
|
|
319972
319990
|
if (maxVersion && gt(version2, maxVersion)) {
|
|
319973
319991
|
logForDebugging(`Native installer: maxVersion ${maxVersion} is set, capping update from ${version2} to ${maxVersion}`);
|
|
319974
|
-
if (gte("1.78.
|
|
319975
|
-
logForDebugging(`Native installer: current version ${"1.78.
|
|
319992
|
+
if (gte("1.78.4", maxVersion)) {
|
|
319993
|
+
logForDebugging(`Native installer: current version ${"1.78.4"} is already at or above maxVersion ${maxVersion}, skipping update`);
|
|
319976
319994
|
logEvent("tengu_native_update_skipped_max_version", {
|
|
319977
319995
|
latency_ms: Date.now() - startTime,
|
|
319978
319996
|
max_version: maxVersion,
|
|
@@ -319983,7 +320001,7 @@ async function updateLatest(channelOrVersion, forceReinstall = false) {
|
|
|
319983
320001
|
version2 = maxVersion;
|
|
319984
320002
|
}
|
|
319985
320003
|
}
|
|
319986
|
-
if (!forceReinstall && version2 === "1.78.
|
|
320004
|
+
if (!forceReinstall && version2 === "1.78.4" && await versionIsAvailable(version2) && await isPossibleURBinary(executablePath)) {
|
|
319987
320005
|
logForDebugging(`Found ${version2} at ${executablePath}, skipping install`);
|
|
319988
320006
|
logEvent("tengu_native_update_complete", {
|
|
319989
320007
|
latency_ms: Date.now() - startTime,
|
|
@@ -368553,6 +368571,7 @@ import { extname as extname13, isAbsolute as isAbsolute28, resolve as resolve37
|
|
|
368553
368571
|
var inputSchema16, outputSchema13, NotebookEditTool;
|
|
368554
368572
|
var init_NotebookEditTool = __esm(() => {
|
|
368555
368573
|
init_LSPDiagnosticRegistry();
|
|
368574
|
+
init_vscodeSdkMcp();
|
|
368556
368575
|
init_fileHistory();
|
|
368557
368576
|
init_v4();
|
|
368558
368577
|
init_Tool();
|
|
@@ -368853,6 +368872,7 @@ var init_NotebookEditTool = __esm(() => {
|
|
|
368853
368872
|
const IPYNB_INDENT = 1;
|
|
368854
368873
|
const updatedContent = jsonStringify(notebook, null, IPYNB_INDENT);
|
|
368855
368874
|
writeTextContent(fullPath, updatedContent, encoding, lineEndings);
|
|
368875
|
+
notifyVscodeFileUpdated(fullPath, content, updatedContent);
|
|
368856
368876
|
clearDeliveredDiagnosticsForFile(`file://${fullPath}`);
|
|
368857
368877
|
readFileState.set(fullPath, {
|
|
368858
368878
|
content: updatedContent,
|
|
@@ -379108,8 +379128,8 @@ var init_ConfigTool = __esm(() => {
|
|
|
379108
379128
|
return "Config";
|
|
379109
379129
|
},
|
|
379110
379130
|
shouldDefer: true,
|
|
379111
|
-
isConcurrencySafe() {
|
|
379112
|
-
return
|
|
379131
|
+
isConcurrencySafe(input) {
|
|
379132
|
+
return input.value === undefined;
|
|
379113
379133
|
},
|
|
379114
379134
|
isReadOnly(input) {
|
|
379115
379135
|
return input.value === undefined;
|
|
@@ -389702,7 +389722,7 @@ function isAnyTracingEnabled() {
|
|
|
389702
389722
|
return isTelemetryEnabled() || isEnhancedTelemetryEnabled() || isBetaTracingEnabled();
|
|
389703
389723
|
}
|
|
389704
389724
|
function getTracer() {
|
|
389705
|
-
return import_api39.trace.getTracer("ur-agent.gen_ai", "1.78.
|
|
389725
|
+
return import_api39.trace.getTracer("ur-agent.gen_ai", "1.78.4");
|
|
389706
389726
|
}
|
|
389707
389727
|
function createSpanAttributes(spanType, customAttributes = {}) {
|
|
389708
389728
|
const baseAttributes = getTelemetryAttributes();
|
|
@@ -419928,7 +419948,7 @@ function Feedback({
|
|
|
419928
419948
|
platform: env2.platform,
|
|
419929
419949
|
gitRepo: envInfo.isGit,
|
|
419930
419950
|
terminal: env2.terminal,
|
|
419931
|
-
version: "1.78.
|
|
419951
|
+
version: "1.78.4",
|
|
419932
419952
|
transcript: normalizeMessagesForAPI(messages),
|
|
419933
419953
|
errors: sanitizedErrors,
|
|
419934
419954
|
lastApiRequest: getLastAPIRequest(),
|
|
@@ -420120,7 +420140,7 @@ function Feedback({
|
|
|
420120
420140
|
", ",
|
|
420121
420141
|
env2.terminal,
|
|
420122
420142
|
", v",
|
|
420123
|
-
"1.78.
|
|
420143
|
+
"1.78.4"
|
|
420124
420144
|
]
|
|
420125
420145
|
}, undefined, true, undefined, this)
|
|
420126
420146
|
]
|
|
@@ -420226,7 +420246,7 @@ ${sanitizedDescription}
|
|
|
420226
420246
|
` + `**Environment Info**
|
|
420227
420247
|
` + `- Platform: ${env2.platform}
|
|
420228
420248
|
` + `- Terminal: ${env2.terminal}
|
|
420229
|
-
` + `- Version: ${"1.78.
|
|
420249
|
+
` + `- Version: ${"1.78.4"}
|
|
420230
420250
|
` + `- Feedback ID: ${feedbackId}
|
|
420231
420251
|
` + `
|
|
420232
420252
|
**Errors**
|
|
@@ -423336,7 +423356,7 @@ function buildPrimarySection() {
|
|
|
423336
423356
|
}, undefined, false, undefined, this);
|
|
423337
423357
|
return [{
|
|
423338
423358
|
label: "Version",
|
|
423339
|
-
value: "1.78.
|
|
423359
|
+
value: "1.78.4"
|
|
423340
423360
|
}, {
|
|
423341
423361
|
label: "Session name",
|
|
423342
423362
|
value: nameValue
|
|
@@ -426718,7 +426738,7 @@ function Config({
|
|
|
426718
426738
|
}
|
|
426719
426739
|
}, undefined, false, undefined, this)
|
|
426720
426740
|
}, undefined, false, undefined, this) : showSubmenu === "ChannelDowngrade" ? /* @__PURE__ */ jsx_dev_runtime179.jsxDEV(ChannelDowngradeDialog, {
|
|
426721
|
-
currentVersion: "1.78.
|
|
426741
|
+
currentVersion: "1.78.4",
|
|
426722
426742
|
onChoice: (choice) => {
|
|
426723
426743
|
setShowSubmenu(null);
|
|
426724
426744
|
setTabsHidden(false);
|
|
@@ -426730,7 +426750,7 @@ function Config({
|
|
|
426730
426750
|
autoUpdatesChannel: "stable"
|
|
426731
426751
|
};
|
|
426732
426752
|
if (choice === "stay") {
|
|
426733
|
-
newSettings.minimumVersion = "1.78.
|
|
426753
|
+
newSettings.minimumVersion = "1.78.4";
|
|
426734
426754
|
}
|
|
426735
426755
|
updateSettingsForSource("userSettings", newSettings);
|
|
426736
426756
|
setSettingsData((prev_27) => ({
|
|
@@ -434794,7 +434814,7 @@ function HelpV2(t0) {
|
|
|
434794
434814
|
let t6;
|
|
434795
434815
|
if ($2[31] !== tabs) {
|
|
434796
434816
|
t6 = /* @__PURE__ */ jsx_dev_runtime206.jsxDEV(Tabs, {
|
|
434797
|
-
title: `UR v${"1.78.
|
|
434817
|
+
title: `UR v${"1.78.4"}`,
|
|
434798
434818
|
color: "professionalBlue",
|
|
434799
434819
|
defaultTab: "general",
|
|
434800
434820
|
children: tabs
|
|
@@ -435727,7 +435747,7 @@ function buildToolUseContext(tools, readFileStateCache, toolPermissionContext, a
|
|
|
435727
435747
|
async function handleInitialize(options2) {
|
|
435728
435748
|
return {
|
|
435729
435749
|
name: "UR",
|
|
435730
|
-
version: "1.78.
|
|
435750
|
+
version: "1.78.4",
|
|
435731
435751
|
protocolVersion: "0.1.0",
|
|
435732
435752
|
workspaceRoot: options2.cwd,
|
|
435733
435753
|
capabilities: {
|
|
@@ -452835,7 +452855,7 @@ function getAllReleaseNotes(changelogContent = getStoredChangelogFromMemory()) {
|
|
|
452835
452855
|
return [];
|
|
452836
452856
|
}
|
|
452837
452857
|
}
|
|
452838
|
-
async function checkForReleaseNotes(lastSeenVersion, currentVersion = "1.78.
|
|
452858
|
+
async function checkForReleaseNotes(lastSeenVersion, currentVersion = "1.78.4") {
|
|
452839
452859
|
if (process.env.USER_TYPE === "ant") {
|
|
452840
452860
|
const changelog = "";
|
|
452841
452861
|
if (changelog) {
|
|
@@ -452862,7 +452882,7 @@ async function checkForReleaseNotes(lastSeenVersion, currentVersion = "1.78.2")
|
|
|
452862
452882
|
releaseNotes
|
|
452863
452883
|
};
|
|
452864
452884
|
}
|
|
452865
|
-
function checkForReleaseNotesSync(lastSeenVersion, currentVersion = "1.78.
|
|
452885
|
+
function checkForReleaseNotesSync(lastSeenVersion, currentVersion = "1.78.4") {
|
|
452866
452886
|
if (process.env.USER_TYPE === "ant") {
|
|
452867
452887
|
const changelog = "";
|
|
452868
452888
|
if (changelog) {
|
|
@@ -455728,7 +455748,7 @@ function getRecentActivitySync() {
|
|
|
455728
455748
|
return cachedActivity;
|
|
455729
455749
|
}
|
|
455730
455750
|
function getLogoDisplayData() {
|
|
455731
|
-
const version2 = process.env.DEMO_VERSION ?? "1.78.
|
|
455751
|
+
const version2 = process.env.DEMO_VERSION ?? "1.78.4";
|
|
455732
455752
|
const serverUrl = getDirectConnectServerUrl();
|
|
455733
455753
|
const displayPath = process.env.DEMO_VERSION ? "/code/ur" : getDisplayPath(getCwd());
|
|
455734
455754
|
const cwd2 = serverUrl ? `${displayPath} in ${serverUrl.replace(/^https?:\/\//, "")}` : displayPath;
|
|
@@ -456595,7 +456615,7 @@ function LogoV2() {
|
|
|
456595
456615
|
if ($2[2] === Symbol.for("react.memo_cache_sentinel")) {
|
|
456596
456616
|
t2 = () => {
|
|
456597
456617
|
const currentConfig2 = getGlobalConfig();
|
|
456598
|
-
if (currentConfig2.lastReleaseNotesSeen === "1.78.
|
|
456618
|
+
if (currentConfig2.lastReleaseNotesSeen === "1.78.4") {
|
|
456599
456619
|
return;
|
|
456600
456620
|
}
|
|
456601
456621
|
saveGlobalConfig(_temp325);
|
|
@@ -457280,12 +457300,12 @@ function LogoV2() {
|
|
|
457280
457300
|
return t41;
|
|
457281
457301
|
}
|
|
457282
457302
|
function _temp325(current) {
|
|
457283
|
-
if (current.lastReleaseNotesSeen === "1.78.
|
|
457303
|
+
if (current.lastReleaseNotesSeen === "1.78.4") {
|
|
457284
457304
|
return current;
|
|
457285
457305
|
}
|
|
457286
457306
|
return {
|
|
457287
457307
|
...current,
|
|
457288
|
-
lastReleaseNotesSeen: "1.78.
|
|
457308
|
+
lastReleaseNotesSeen: "1.78.4"
|
|
457289
457309
|
};
|
|
457290
457310
|
}
|
|
457291
457311
|
function _temp241(s_0) {
|
|
@@ -474099,7 +474119,7 @@ function compileAgenticCiWorkflow(specName = "default", options2 = {}) {
|
|
|
474099
474119
|
if (spec.name !== specName) {
|
|
474100
474120
|
throw new Error("Agentic CI workflow spec name does not match");
|
|
474101
474121
|
}
|
|
474102
|
-
const packageVersion = options2.packageVersion ?? (typeof MACRO !== "undefined" ? "1.78.
|
|
474122
|
+
const packageVersion = options2.packageVersion ?? (typeof MACRO !== "undefined" ? "1.78.4" : "1.78.4");
|
|
474103
474123
|
if (!/^\d+\.\d+\.\d+(?:-[0-9A-Za-z.-]+)?$/.test(packageVersion)) {
|
|
474104
474124
|
throw new Error("invalid ur-agent package version");
|
|
474105
474125
|
}
|
|
@@ -475092,7 +475112,7 @@ runner; \`ur trigger\` is the inbound parser that decides what to run.
|
|
|
475092
475112
|
path: ".github/workflows/ur.yml",
|
|
475093
475113
|
root: "project",
|
|
475094
475114
|
content: compileAgenticCiWorkflow("default", {
|
|
475095
|
-
packageVersion: typeof MACRO !== "undefined" ? "1.78.
|
|
475115
|
+
packageVersion: typeof MACRO !== "undefined" ? "1.78.4" : "1.78.4"
|
|
475096
475116
|
})
|
|
475097
475117
|
},
|
|
475098
475118
|
{
|
|
@@ -475155,7 +475175,7 @@ function value(tokens, flag) {
|
|
|
475155
475175
|
return index2 >= 0 ? tokens[index2 + 1] : undefined;
|
|
475156
475176
|
}
|
|
475157
475177
|
function cliVersion() {
|
|
475158
|
-
return typeof MACRO !== "undefined" ? "1.78.
|
|
475178
|
+
return typeof MACRO !== "undefined" ? "1.78.4" : "1.78.4";
|
|
475159
475179
|
}
|
|
475160
475180
|
function workflowPath(cwd2) {
|
|
475161
475181
|
return join159(cwd2, ".github", "workflows", "ur-agentic-ci.yml");
|
|
@@ -481011,7 +481031,7 @@ function createAcpStdioApp(deps) {
|
|
|
481011
481031
|
}
|
|
481012
481032
|
},
|
|
481013
481033
|
authMethods: [],
|
|
481014
|
-
agentInfo: { name: "UR-Nexus", version: "1.78.
|
|
481034
|
+
agentInfo: { name: "UR-Nexus", version: "1.78.4" }
|
|
481015
481035
|
})).onRequest("authenticate", () => ({})).onRequest("session/new", async (context6) => {
|
|
481016
481036
|
const result = runtime2.newSession(context6.params.cwd, context6.params.mcpServers, context6.params.additionalDirectories);
|
|
481017
481037
|
await runtime2.announce({
|
|
@@ -481108,7 +481128,7 @@ function createAcpStdioAgent(deps) {
|
|
|
481108
481128
|
}
|
|
481109
481129
|
},
|
|
481110
481130
|
authMethods: [],
|
|
481111
|
-
agentInfo: { name: "UR-Nexus", version: "1.78.
|
|
481131
|
+
agentInfo: { name: "UR-Nexus", version: "1.78.4" }
|
|
481112
481132
|
});
|
|
481113
481133
|
return;
|
|
481114
481134
|
case "authenticate":
|
|
@@ -690568,7 +690588,7 @@ async function captureMemoryDiagnostics(trigger2, dumpNumber = 0) {
|
|
|
690568
690588
|
smapsRollup,
|
|
690569
690589
|
platform: process.platform,
|
|
690570
690590
|
nodeVersion: process.version,
|
|
690571
|
-
ccVersion: "1.78.
|
|
690591
|
+
ccVersion: "1.78.4"
|
|
690572
690592
|
};
|
|
690573
690593
|
}
|
|
690574
690594
|
async function performHeapDump(trigger2 = "manual", dumpNumber = 0) {
|
|
@@ -691148,7 +691168,7 @@ var init_bridge_kick = __esm(() => {
|
|
|
691148
691168
|
var call154 = async () => {
|
|
691149
691169
|
return {
|
|
691150
691170
|
type: "text",
|
|
691151
|
-
value: "1.78.
|
|
691171
|
+
value: "1.78.4"
|
|
691152
691172
|
};
|
|
691153
691173
|
}, version2, version_default;
|
|
691154
691174
|
var init_version = __esm(() => {
|
|
@@ -702415,7 +702435,7 @@ function generateHtmlReport(data, insights) {
|
|
|
702415
702435
|
</html>`;
|
|
702416
702436
|
}
|
|
702417
702437
|
function buildExportData(data, insights, facets, remoteStats) {
|
|
702418
|
-
const version3 = typeof MACRO !== "undefined" ? "1.78.
|
|
702438
|
+
const version3 = typeof MACRO !== "undefined" ? "1.78.4" : "unknown";
|
|
702419
702439
|
const remote_hosts_collected = remoteStats?.hosts.filter((h2) => h2.sessionCount > 0).map((h2) => h2.name);
|
|
702420
702440
|
const facets_summary = {
|
|
702421
702441
|
total: facets.size,
|
|
@@ -706729,7 +706749,7 @@ var init_sessionStorage = __esm(() => {
|
|
|
706729
706749
|
init_settings2();
|
|
706730
706750
|
init_slowOperations();
|
|
706731
706751
|
init_uuid();
|
|
706732
|
-
VERSION7 = typeof MACRO !== "undefined" ? "1.78.
|
|
706752
|
+
VERSION7 = typeof MACRO !== "undefined" ? "1.78.4" : "unknown";
|
|
706733
706753
|
MAX_TOMBSTONE_REWRITE_BYTES = 50 * 1024 * 1024;
|
|
706734
706754
|
SKIP_FIRST_PROMPT_PATTERN = /^(?:\s*<[a-z][\w-]*[\s>]|\[Request interrupted by user[^\]]*\])/;
|
|
706735
706755
|
EPHEMERAL_PROGRESS_TYPES = new Set([
|
|
@@ -707944,7 +707964,7 @@ var init_filesystem = __esm(() => {
|
|
|
707944
707964
|
});
|
|
707945
707965
|
getBundledSkillsRoot = memoize_default(function getBundledSkillsRoot2() {
|
|
707946
707966
|
const nonce = randomBytes20(16).toString("hex");
|
|
707947
|
-
return join232(getURTempDir(), "bundled-skills", "1.78.
|
|
707967
|
+
return join232(getURTempDir(), "bundled-skills", "1.78.4", nonce);
|
|
707948
707968
|
});
|
|
707949
707969
|
getResolvedWorkingDirPaths = memoize_default(getPathsForPermissionCheck);
|
|
707950
707970
|
});
|
|
@@ -714301,7 +714321,7 @@ function computeFingerprint(messageText2, version3) {
|
|
|
714301
714321
|
}
|
|
714302
714322
|
function computeFingerprintFromMessages(messages) {
|
|
714303
714323
|
const firstMessageText = extractFirstMessageText(messages);
|
|
714304
|
-
return computeFingerprint(firstMessageText, "1.78.
|
|
714324
|
+
return computeFingerprint(firstMessageText, "1.78.4");
|
|
714305
714325
|
}
|
|
714306
714326
|
var FINGERPRINT_SALT = "59cf53e54c78";
|
|
714307
714327
|
var init_fingerprint = () => {};
|
|
@@ -716223,7 +716243,7 @@ async function sideQuery(opts) {
|
|
|
716223
716243
|
betas.push(STRUCTURED_OUTPUTS_BETA_HEADER);
|
|
716224
716244
|
}
|
|
716225
716245
|
const messageText2 = extractFirstUserMessageText(messages);
|
|
716226
|
-
const fingerprint2 = computeFingerprint(messageText2, "1.78.
|
|
716246
|
+
const fingerprint2 = computeFingerprint(messageText2, "1.78.4");
|
|
716227
716247
|
const attributionHeader = getAttributionHeader(fingerprint2);
|
|
716228
716248
|
const systemBlocks = [
|
|
716229
716249
|
attributionHeader ? { type: "text", text: attributionHeader } : null,
|
|
@@ -721060,7 +721080,7 @@ function buildSystemInitMessage(inputs) {
|
|
|
721060
721080
|
slash_commands: inputs.commands.filter((c4) => c4.userInvocable !== false).map((c4) => c4.name),
|
|
721061
721081
|
apiKeySource: getURHQApiKeyWithSource().source,
|
|
721062
721082
|
betas: getSdkBetas(),
|
|
721063
|
-
ur_version: "1.78.
|
|
721083
|
+
ur_version: "1.78.4",
|
|
721064
721084
|
output_style: outputStyle2,
|
|
721065
721085
|
agents: inputs.agents.map((agent2) => agent2.agentType),
|
|
721066
721086
|
skills: inputs.skills.filter((s) => s.userInvocable !== false).map((skill2) => skill2.name),
|
|
@@ -734932,7 +734952,7 @@ var init_useVoiceEnabled = __esm(() => {
|
|
|
734932
734952
|
function getSemverPart(version3) {
|
|
734933
734953
|
return `${import_semver13.major(version3, { loose: true })}.${import_semver13.minor(version3, { loose: true })}.${import_semver13.patch(version3, { loose: true })}`;
|
|
734934
734954
|
}
|
|
734935
|
-
function useUpdateNotification(updatedVersion, initialVersion = "1.78.
|
|
734955
|
+
function useUpdateNotification(updatedVersion, initialVersion = "1.78.4") {
|
|
734936
734956
|
const [lastNotifiedSemver, setLastNotifiedSemver] = import_react223.useState(() => getSemverPart(initialVersion));
|
|
734937
734957
|
if (!updatedVersion) {
|
|
734938
734958
|
return null;
|
|
@@ -734981,7 +735001,7 @@ function AutoUpdater({
|
|
|
734981
735001
|
return;
|
|
734982
735002
|
}
|
|
734983
735003
|
if (false) {}
|
|
734984
|
-
const currentVersion = "1.78.
|
|
735004
|
+
const currentVersion = "1.78.4";
|
|
734985
735005
|
const channel = getInitialSettings()?.autoUpdatesChannel ?? "latest";
|
|
734986
735006
|
let latestVersion = await getLatestVersion(channel);
|
|
734987
735007
|
const isDisabled = isAutoUpdaterDisabled();
|
|
@@ -735210,12 +735230,12 @@ function NativeAutoUpdater({
|
|
|
735210
735230
|
logEvent("tengu_native_auto_updater_start", {});
|
|
735211
735231
|
try {
|
|
735212
735232
|
const maxVersion = await getMaxVersion();
|
|
735213
|
-
if (maxVersion && gt("1.78.
|
|
735233
|
+
if (maxVersion && gt("1.78.4", maxVersion)) {
|
|
735214
735234
|
const msg = await getMaxVersionMessage();
|
|
735215
735235
|
setMaxVersionIssue(msg ?? "affects your version");
|
|
735216
735236
|
}
|
|
735217
735237
|
const result = await installLatest(channel);
|
|
735218
|
-
const currentVersion = "1.78.
|
|
735238
|
+
const currentVersion = "1.78.4";
|
|
735219
735239
|
const latencyMs = Date.now() - startTime;
|
|
735220
735240
|
if (result.lockFailed) {
|
|
735221
735241
|
logEvent("tengu_native_auto_updater_lock_contention", {
|
|
@@ -735352,17 +735372,17 @@ function PackageManagerAutoUpdater(t0) {
|
|
|
735352
735372
|
const maxVersion = await getMaxVersion();
|
|
735353
735373
|
if (maxVersion && latest && gt(latest, maxVersion)) {
|
|
735354
735374
|
logForDebugging(`PackageManagerAutoUpdater: maxVersion ${maxVersion} is set, capping update from ${latest} to ${maxVersion}`);
|
|
735355
|
-
if (gte("1.78.
|
|
735356
|
-
logForDebugging(`PackageManagerAutoUpdater: current version ${"1.78.
|
|
735375
|
+
if (gte("1.78.4", maxVersion)) {
|
|
735376
|
+
logForDebugging(`PackageManagerAutoUpdater: current version ${"1.78.4"} is already at or above maxVersion ${maxVersion}, skipping update`);
|
|
735357
735377
|
setUpdateAvailable(false);
|
|
735358
735378
|
return;
|
|
735359
735379
|
}
|
|
735360
735380
|
latest = maxVersion;
|
|
735361
735381
|
}
|
|
735362
|
-
const hasUpdate = latest && !gte("1.78.
|
|
735382
|
+
const hasUpdate = latest && !gte("1.78.4", latest) && !shouldSkipVersion(latest);
|
|
735363
735383
|
setUpdateAvailable(!!hasUpdate);
|
|
735364
735384
|
if (hasUpdate) {
|
|
735365
|
-
logForDebugging(`PackageManagerAutoUpdater: Update available ${"1.78.
|
|
735385
|
+
logForDebugging(`PackageManagerAutoUpdater: Update available ${"1.78.4"} -> ${latest}`);
|
|
735366
735386
|
}
|
|
735367
735387
|
};
|
|
735368
735388
|
$2[0] = t1;
|
|
@@ -735396,7 +735416,7 @@ function PackageManagerAutoUpdater(t0) {
|
|
|
735396
735416
|
wrap: "truncate",
|
|
735397
735417
|
children: [
|
|
735398
735418
|
"currentVersion: ",
|
|
735399
|
-
"1.78.
|
|
735419
|
+
"1.78.4"
|
|
735400
735420
|
]
|
|
735401
735421
|
}, undefined, true, undefined, this);
|
|
735402
735422
|
$2[3] = verbose;
|
|
@@ -746196,7 +746216,7 @@ function buildStatusLineCommandInput(permissionMode, exceeds200kTokens, settings
|
|
|
746196
746216
|
project_dir: getOriginalCwd(),
|
|
746197
746217
|
added_dirs: addedDirs
|
|
746198
746218
|
},
|
|
746199
|
-
version: "1.78.
|
|
746219
|
+
version: "1.78.4",
|
|
746200
746220
|
output_style: {
|
|
746201
746221
|
name: outputStyleName
|
|
746202
746222
|
},
|
|
@@ -746331,7 +746351,7 @@ function StatusLineInner({
|
|
|
746331
746351
|
const attention = customStatusError ?? taskAttention;
|
|
746332
746352
|
const terminalSize = React132.useContext(TerminalSizeContext);
|
|
746333
746353
|
const defaultStatusLineText = buildDefaultStatusBar({
|
|
746334
|
-
version: "1.78.
|
|
746354
|
+
version: "1.78.4",
|
|
746335
746355
|
providerLabel: providerRuntime.providerLabel,
|
|
746336
746356
|
authMode: providerRuntime.authLabel,
|
|
746337
746357
|
model: renderModelName(mainLoopModel) || providerRuntime.model || "",
|
|
@@ -758616,7 +758636,7 @@ async function submitTranscriptShare(messages, trigger2, appearanceId) {
|
|
|
758616
758636
|
} catch {}
|
|
758617
758637
|
const data = {
|
|
758618
758638
|
trigger: trigger2,
|
|
758619
|
-
version: "1.78.
|
|
758639
|
+
version: "1.78.4",
|
|
758620
758640
|
platform: process.platform,
|
|
758621
758641
|
transcript,
|
|
758622
758642
|
subagentTranscripts: Object.keys(subagentTranscripts).length > 0 ? subagentTranscripts : undefined,
|
|
@@ -770990,7 +771010,7 @@ function WelcomeV2() {
|
|
|
770990
771010
|
dimColor: true,
|
|
770991
771011
|
children: [
|
|
770992
771012
|
"v",
|
|
770993
|
-
"1.78.
|
|
771013
|
+
"1.78.4"
|
|
770994
771014
|
]
|
|
770995
771015
|
}, undefined, true, undefined, this)
|
|
770996
771016
|
]
|
|
@@ -772250,7 +772270,7 @@ function completeOnboarding() {
|
|
|
772250
772270
|
saveGlobalConfig((current) => ({
|
|
772251
772271
|
...current,
|
|
772252
772272
|
hasCompletedOnboarding: true,
|
|
772253
|
-
lastOnboardingVersion: "1.78.
|
|
772273
|
+
lastOnboardingVersion: "1.78.4"
|
|
772254
772274
|
}));
|
|
772255
772275
|
}
|
|
772256
772276
|
function showDialog(root2, renderer) {
|
|
@@ -777294,7 +777314,7 @@ function appendToLog(path24, message) {
|
|
|
777294
777314
|
cwd: getFsImplementation().cwd(),
|
|
777295
777315
|
userType: process.env.USER_TYPE,
|
|
777296
777316
|
sessionId: getSessionId(),
|
|
777297
|
-
version: "1.78.
|
|
777317
|
+
version: "1.78.4"
|
|
777298
777318
|
};
|
|
777299
777319
|
getLogWriter(path24).write(messageWithTimestamp);
|
|
777300
777320
|
}
|
|
@@ -781453,8 +781473,8 @@ async function getEnvLessBridgeConfig() {
|
|
|
781453
781473
|
}
|
|
781454
781474
|
async function checkEnvLessBridgeMinVersion() {
|
|
781455
781475
|
const cfg = await getEnvLessBridgeConfig();
|
|
781456
|
-
if (cfg.min_version && lt("1.78.
|
|
781457
|
-
return `Your version of UR (${"1.78.
|
|
781476
|
+
if (cfg.min_version && lt("1.78.4", cfg.min_version)) {
|
|
781477
|
+
return `Your version of UR (${"1.78.4"}) is too old for Remote Control.
|
|
781458
781478
|
Version ${cfg.min_version} or higher is required. Run \`ur update\` to update.`;
|
|
781459
781479
|
}
|
|
781460
781480
|
return null;
|
|
@@ -781928,7 +781948,7 @@ async function initBridgeCore(params) {
|
|
|
781928
781948
|
const rawApi = createBridgeApiClient({
|
|
781929
781949
|
baseUrl,
|
|
781930
781950
|
getAccessToken,
|
|
781931
|
-
runnerVersion: "1.78.
|
|
781951
|
+
runnerVersion: "1.78.4",
|
|
781932
781952
|
onDebug: logForDebugging,
|
|
781933
781953
|
onAuth401,
|
|
781934
781954
|
getTrustedDeviceToken
|
|
@@ -791401,7 +791421,7 @@ function getAgUiCapabilities() {
|
|
|
791401
791421
|
name: "UR-Nexus",
|
|
791402
791422
|
type: "ur-nexus",
|
|
791403
791423
|
description: "Provider-flexible, local-first autonomous engineering workflow agent.",
|
|
791404
|
-
version: "1.78.
|
|
791424
|
+
version: "1.78.4",
|
|
791405
791425
|
provider: "UR",
|
|
791406
791426
|
documentationUrl: "https://github.com/Maitham16/UR/blob/master/docs/AG_UI.md"
|
|
791407
791427
|
},
|
|
@@ -792541,7 +792561,7 @@ function createMCPServer(cwd4, debug2, verbose) {
|
|
|
792541
792561
|
};
|
|
792542
792562
|
const server2 = new Server({
|
|
792543
792563
|
name: "ur-nexus",
|
|
792544
|
-
version: "1.78.
|
|
792564
|
+
version: "1.78.4"
|
|
792545
792565
|
}, {
|
|
792546
792566
|
capabilities: {
|
|
792547
792567
|
tools: {}
|
|
@@ -793699,7 +793719,7 @@ function thrownResponse(error40) {
|
|
|
793699
793719
|
}
|
|
793700
793720
|
async function createUrMcp2026Runtime(options4) {
|
|
793701
793721
|
const server2 = createMCPServer(options4.cwd, options4.debug === true, options4.verbose === true);
|
|
793702
|
-
const client2 = new Client({ name: "ur-mcp-2026-adapter", version: "1.78.
|
|
793722
|
+
const client2 = new Client({ name: "ur-mcp-2026-adapter", version: "1.78.4" }, { capabilities: {} });
|
|
793703
793723
|
const [clientTransport, serverTransport] = createLinkedTransportPair();
|
|
793704
793724
|
try {
|
|
793705
793725
|
await server2.connect(serverTransport);
|
|
@@ -793710,7 +793730,7 @@ async function createUrMcp2026Runtime(options4) {
|
|
|
793710
793730
|
}
|
|
793711
793731
|
const runtime2 = new Mcp2026Runtime({
|
|
793712
793732
|
cwd: options4.cwd,
|
|
793713
|
-
version: "1.78.
|
|
793733
|
+
version: "1.78.4",
|
|
793714
793734
|
backend: {
|
|
793715
793735
|
listTools: async () => {
|
|
793716
793736
|
const listed = await client2.listTools();
|
|
@@ -795851,7 +795871,7 @@ async function update() {
|
|
|
795851
795871
|
logEvent("tengu_update_check", {});
|
|
795852
795872
|
const diagnostic2 = await getDoctorDiagnostic();
|
|
795853
795873
|
const result = await checkUpgradeStatus({
|
|
795854
|
-
currentVersion: "1.78.
|
|
795874
|
+
currentVersion: "1.78.4",
|
|
795855
795875
|
packageName: UR_AGENT_PACKAGE_NAME,
|
|
795856
795876
|
installationType: diagnostic2.installationType,
|
|
795857
795877
|
latestVersion: () => getLatestNpmPackageVersion(UR_AGENT_PACKAGE_NAME)
|
|
@@ -797167,7 +797187,7 @@ ${customInstructions}` : customInstructions;
|
|
|
797167
797187
|
}
|
|
797168
797188
|
}
|
|
797169
797189
|
logForDiagnosticsNoPII("info", "started", {
|
|
797170
|
-
version: "1.78.
|
|
797190
|
+
version: "1.78.4",
|
|
797171
797191
|
is_native_binary: isInBundledMode()
|
|
797172
797192
|
});
|
|
797173
797193
|
registerCleanup(async () => {
|
|
@@ -797953,7 +797973,7 @@ Usage: ur --remote "your task description"`, () => gracefulShutdown(1));
|
|
|
797953
797973
|
pendingHookMessages
|
|
797954
797974
|
}, renderAndRun);
|
|
797955
797975
|
}
|
|
797956
|
-
}).version("1.78.
|
|
797976
|
+
}).version("1.78.4 (UR-Nexus)", "-v, --version", "Output the version number");
|
|
797957
797977
|
program2.option("-w, --worktree [name]", "Create a new git worktree for this session (optionally specify a name)");
|
|
797958
797978
|
program2.option("--tmux", "Create a tmux session for the worktree (requires --worktree). Uses iTerm2 native panes when available; use --tmux=classic for traditional tmux.");
|
|
797959
797979
|
if (canUserConfigureAdvisor()) {
|
|
@@ -799005,7 +799025,7 @@ if (false) {}
|
|
|
799005
799025
|
async function main2() {
|
|
799006
799026
|
const args = process.argv.slice(2);
|
|
799007
799027
|
if (args.length === 1 && (args[0] === "--version" || args[0] === "-v" || args[0] === "-V")) {
|
|
799008
|
-
console.log(`${"1.78.
|
|
799028
|
+
console.log(`${"1.78.4"} (UR-Nexus)`);
|
|
799009
799029
|
return;
|
|
799010
799030
|
}
|
|
799011
799031
|
if (args[0] === "a2a" && args[1] === "serve" && !args.includes("--help") && !args.includes("-h")) {
|
package/docs/VALIDATION.md
CHANGED
package/documentation/index.html
CHANGED
|
@@ -45,7 +45,7 @@
|
|
|
45
45
|
<main id="content" class="content">
|
|
46
46
|
<header class="topbar">
|
|
47
47
|
<div>
|
|
48
|
-
<p class="eyebrow">Version 1.78.
|
|
48
|
+
<p class="eyebrow">Version 1.78.4</p>
|
|
49
49
|
<h1>UR-Nexus Documentation</h1>
|
|
50
50
|
<p class="lead">A practical, tutorial-style reference for installing, configuring, automating, extending, and operating UR-Nexus.</p>
|
|
51
51
|
</div>
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
"name": "ur-inline-diffs",
|
|
3
3
|
"displayName": "UR Inline Diffs",
|
|
4
4
|
"description": "Review, apply, and reject UR inline diff bundles from .ur/ide/diffs inside VS Code.",
|
|
5
|
-
"version": "1.78.
|
|
5
|
+
"version": "1.78.4",
|
|
6
6
|
"publisher": "ur-nexus",
|
|
7
7
|
"engines": {
|
|
8
8
|
"vscode": "^1.92.0"
|
package/package.json
CHANGED