ur-agent 1.78.0 → 1.78.2
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,35 @@
|
|
|
1
1
|
# Changelog
|
|
2
2
|
|
|
3
|
+
## 1.78.2
|
|
4
|
+
|
|
5
|
+
- `describeQuestionPayloadProblems` returns only problems again. A description
|
|
6
|
+
of the payload's shape had been appended to that list, which changed its
|
|
7
|
+
length and broke callers that count entries. The shape is now returned by a
|
|
8
|
+
separate `describeQuestionPayloadShape`, and the tool error message joins the
|
|
9
|
+
two, so the diagnosis is unchanged while the list stays a list of problems.
|
|
10
|
+
- The effective-context-window arithmetic is exposed as a pure function,
|
|
11
|
+
`computeEffectiveContextWindowSize`, so the reserve cap can be checked
|
|
12
|
+
without a provider or settings in scope.
|
|
13
|
+
|
|
14
|
+
## 1.78.1
|
|
15
|
+
|
|
16
|
+
- Editing a file through Bash or NotebookEdit now clears that file's delivered
|
|
17
|
+
LSP diagnostics, so errors introduced by the edit reach the model. Diagnostics
|
|
18
|
+
are deduplicated across turns: one identical to a diagnostic already
|
|
19
|
+
delivered for the file is suppressed. Edit and Write cleared the delivered
|
|
20
|
+
set after writing; a `sed` edit through Bash and a notebook cell edit change
|
|
21
|
+
the file the same way but did not, so a problem reintroduced by either was
|
|
22
|
+
silently withheld.
|
|
23
|
+
|
|
24
|
+
## 1.78.0
|
|
25
|
+
|
|
26
|
+
- The summary reserve is capped as a share of the context window, not just at a
|
|
27
|
+
flat 20,000 tokens. A model with a small window was left with a negative
|
|
28
|
+
effective window — every token count above it, so autocompact fired on every
|
|
29
|
+
turn and never settled. A small window now keeps at least four fifths of
|
|
30
|
+
itself for the conversation, and the effective size can no longer reach zero
|
|
31
|
+
for any reported value. Large windows still reserve the flat amount.
|
|
32
|
+
|
|
3
33
|
## 1.77.9
|
|
4
34
|
|
|
5
35
|
- Leaked deliberation is collapsed out of the visible transcript. Models
|
package/dist/cli.js
CHANGED
|
@@ -87529,7 +87529,6 @@ function describeQuestionPayloadProblems(value) {
|
|
|
87529
87529
|
if (!Array.isArray(questions) || questions.length === 0) {
|
|
87530
87530
|
return ["`questions` must be a non-empty array."];
|
|
87531
87531
|
}
|
|
87532
|
-
const shapes = questions.slice(0, 3).map((question, index2) => isRecord2(question) ? `questions[${index2}] has keys: ${Object.keys(question).join(", ") || "(none)"}` : `questions[${index2}] is ${Array.isArray(question) ? "an array" : typeof question}`).join("; ");
|
|
87533
87532
|
questions.forEach((question, index2) => {
|
|
87534
87533
|
const where = `questions[${index2}]`;
|
|
87535
87534
|
if (!isRecord2(question)) {
|
|
@@ -87551,11 +87550,19 @@ function describeQuestionPayloadProblems(value) {
|
|
|
87551
87550
|
problems.push(`${where}.options must contain at least 2 distinct labels; this question is open-ended and should be asked in plain text instead.`);
|
|
87552
87551
|
}
|
|
87553
87552
|
});
|
|
87554
|
-
if (problems.length > 0 && shapes) {
|
|
87555
|
-
problems.push(`Received ${shapes}.`);
|
|
87556
|
-
}
|
|
87557
87553
|
return problems;
|
|
87558
87554
|
}
|
|
87555
|
+
function describeQuestionPayloadShape(value) {
|
|
87556
|
+
if (!isRecord2(value)) {
|
|
87557
|
+
return `Received ${Array.isArray(value) ? "an array" : typeof value}.`;
|
|
87558
|
+
}
|
|
87559
|
+
const questions = value.questions;
|
|
87560
|
+
if (!Array.isArray(questions)) {
|
|
87561
|
+
return `Received an object with keys: ${Object.keys(value).join(", ") || "(none)"}.`;
|
|
87562
|
+
}
|
|
87563
|
+
const shapes = questions.slice(0, 3).map((question, index2) => isRecord2(question) ? `questions[${index2}] has keys: ${Object.keys(question).join(", ") || "(none)"}` : `questions[${index2}] is ${Array.isArray(question) ? "an array" : typeof question}`).join("; ");
|
|
87564
|
+
return shapes ? `Received ${shapes}.` : "";
|
|
87565
|
+
}
|
|
87559
87566
|
|
|
87560
87567
|
// src/tools/AskUserQuestionTool/AskUserQuestionTool.tsx
|
|
87561
87568
|
function objectValue(value) {
|
|
@@ -107573,7 +107580,7 @@ var init_auth = __esm(() => {
|
|
|
107573
107580
|
|
|
107574
107581
|
// src/utils/userAgent.ts
|
|
107575
107582
|
function getURCodeUserAgent() {
|
|
107576
|
-
return `ur/${"1.
|
|
107583
|
+
return `ur/${"1.78.2"}`;
|
|
107577
107584
|
}
|
|
107578
107585
|
|
|
107579
107586
|
// src/utils/workloadContext.ts
|
|
@@ -107595,7 +107602,7 @@ function getUserAgent() {
|
|
|
107595
107602
|
const clientApp = process.env.UR_AGENT_SDK_CLIENT_APP ? `, client-app/${process.env.UR_AGENT_SDK_CLIENT_APP}` : "";
|
|
107596
107603
|
const workload = getWorkload();
|
|
107597
107604
|
const workloadSuffix = workload ? `, workload/${workload}` : "";
|
|
107598
|
-
return `ur-cli/${"1.
|
|
107605
|
+
return `ur-cli/${"1.78.2"} (${process.env.USER_TYPE}, ${process.env.UR_CODE_ENTRYPOINT ?? "cli"}${agentSdkVersion}${clientApp}${workloadSuffix})`;
|
|
107599
107606
|
}
|
|
107600
107607
|
function getMCPUserAgent() {
|
|
107601
107608
|
const parts = [];
|
|
@@ -107609,7 +107616,7 @@ function getMCPUserAgent() {
|
|
|
107609
107616
|
parts.push(`client-app/${process.env.UR_AGENT_SDK_CLIENT_APP}`);
|
|
107610
107617
|
}
|
|
107611
107618
|
const suffix = parts.length > 0 ? ` (${parts.join(", ")})` : "";
|
|
107612
|
-
return `ur/${"1.
|
|
107619
|
+
return `ur/${"1.78.2"}${suffix}`;
|
|
107613
107620
|
}
|
|
107614
107621
|
function getWebFetchUserAgent() {
|
|
107615
107622
|
return `UR-User (${getURCodeUserAgent()})`;
|
|
@@ -107747,7 +107754,7 @@ var init_user = __esm(() => {
|
|
|
107747
107754
|
deviceId,
|
|
107748
107755
|
sessionId: getSessionId(),
|
|
107749
107756
|
email: getEmail(),
|
|
107750
|
-
appVersion: "1.
|
|
107757
|
+
appVersion: "1.78.2",
|
|
107751
107758
|
platform: getHostPlatformForAnalytics(),
|
|
107752
107759
|
organizationUuid,
|
|
107753
107760
|
accountUuid,
|
|
@@ -115634,7 +115641,7 @@ var init_metadata = __esm(() => {
|
|
|
115634
115641
|
COMPOUND_OPERATOR_REGEX = /\s*(?:&&|\|\||[;|])\s*/;
|
|
115635
115642
|
WHITESPACE_REGEX = /\s+/;
|
|
115636
115643
|
getVersionBase = memoize_default(() => {
|
|
115637
|
-
const match = "1.
|
|
115644
|
+
const match = "1.78.2".match(/^\d+\.\d+\.\d+(?:-[a-z]+)?/);
|
|
115638
115645
|
return match ? match[0] : undefined;
|
|
115639
115646
|
});
|
|
115640
115647
|
buildEnvContext = memoize_default(async () => {
|
|
@@ -115674,7 +115681,7 @@ var init_metadata = __esm(() => {
|
|
|
115674
115681
|
isGithubAction: isEnvTruthy(process.env.GITHUB_ACTIONS),
|
|
115675
115682
|
isURCodeAction: isEnvTruthy(process.env.UR_CODE_ACTION),
|
|
115676
115683
|
isURAiAuth: isURAISubscriber(),
|
|
115677
|
-
version: "1.
|
|
115684
|
+
version: "1.78.2",
|
|
115678
115685
|
versionBase: getVersionBase(),
|
|
115679
115686
|
buildTime: "",
|
|
115680
115687
|
deploymentEnvironment: env2.detectDeploymentEnvironment(),
|
|
@@ -116344,7 +116351,7 @@ function initialize1PEventLogging() {
|
|
|
116344
116351
|
const platform2 = getPlatform();
|
|
116345
116352
|
const attributes = {
|
|
116346
116353
|
[import_semantic_conventions4.ATTR_SERVICE_NAME]: "ur",
|
|
116347
|
-
[import_semantic_conventions4.ATTR_SERVICE_VERSION]: "1.
|
|
116354
|
+
[import_semantic_conventions4.ATTR_SERVICE_VERSION]: "1.78.2"
|
|
116348
116355
|
};
|
|
116349
116356
|
if (platform2 === "wsl") {
|
|
116350
116357
|
const wslVersion = getWslVersion();
|
|
@@ -116372,7 +116379,7 @@ function initialize1PEventLogging() {
|
|
|
116372
116379
|
})
|
|
116373
116380
|
]
|
|
116374
116381
|
});
|
|
116375
|
-
firstPartyEventLogger = firstPartyEventLoggerProvider.getLogger("com.urhq.ur.events", "1.
|
|
116382
|
+
firstPartyEventLogger = firstPartyEventLoggerProvider.getLogger("com.urhq.ur.events", "1.78.2");
|
|
116376
116383
|
}
|
|
116377
116384
|
async function reinitialize1PEventLoggingIfConfigChanged() {
|
|
116378
116385
|
if (!is1PEventLoggingEnabled() || !firstPartyEventLoggerProvider) {
|
|
@@ -126154,7 +126161,7 @@ function formatAgentTrendReport(report = buildAgentTrendReport()) {
|
|
|
126154
126161
|
function formatA2AAgentCard(options = {}, pretty = true) {
|
|
126155
126162
|
return JSON.stringify(buildA2AAgentCard(options), null, pretty ? 2 : 0);
|
|
126156
126163
|
}
|
|
126157
|
-
var urVersion = "1.
|
|
126164
|
+
var urVersion = "1.78.2", researchSnapshotDate = "2026-07-15", coverage, priorityRoadmap;
|
|
126158
126165
|
var init_trends = __esm(() => {
|
|
126159
126166
|
init_a2aCardSignature();
|
|
126160
126167
|
coverage = [
|
|
@@ -128957,7 +128964,7 @@ function getAttributionHeader(fingerprint) {
|
|
|
128957
128964
|
if (!isAttributionHeaderEnabled()) {
|
|
128958
128965
|
return "";
|
|
128959
128966
|
}
|
|
128960
|
-
const version2 = `${"1.
|
|
128967
|
+
const version2 = `${"1.78.2"}.${fingerprint}`;
|
|
128961
128968
|
const entrypoint = process.env.UR_CODE_ENTRYPOINT ?? "unknown";
|
|
128962
128969
|
const cch = "";
|
|
128963
128970
|
const workload = getWorkload();
|
|
@@ -156961,7 +156968,7 @@ var init_projectSafety = __esm(() => {
|
|
|
156961
156968
|
function getInstruments() {
|
|
156962
156969
|
if (instruments)
|
|
156963
156970
|
return instruments;
|
|
156964
|
-
const meter = import_api10.metrics.getMeter("ur-agent.gen_ai", "1.
|
|
156971
|
+
const meter = import_api10.metrics.getMeter("ur-agent.gen_ai", "1.78.2");
|
|
156965
156972
|
instruments = {
|
|
156966
156973
|
operationDuration: meter.createHistogram("gen_ai.client.operation.duration", {
|
|
156967
156974
|
description: "GenAI operation duration.",
|
|
@@ -157059,7 +157066,7 @@ function genAiAgentAttributes() {
|
|
|
157059
157066
|
"gen_ai.operation.name": GEN_AI_OPERATION_INVOKE_AGENT,
|
|
157060
157067
|
"gen_ai.provider.name": "ur",
|
|
157061
157068
|
"gen_ai.agent.name": "UR-Nexus",
|
|
157062
|
-
"gen_ai.agent.version": "1.
|
|
157069
|
+
"gen_ai.agent.version": "1.78.2"
|
|
157063
157070
|
};
|
|
157064
157071
|
}
|
|
157065
157072
|
function genAiWorkflowAttributes(workflowName) {
|
|
@@ -157075,7 +157082,7 @@ function genAiWorkflowAttributes(workflowName) {
|
|
|
157075
157082
|
function startGenAiWorkflowSpan(workflowName) {
|
|
157076
157083
|
const attributes = genAiWorkflowAttributes(workflowName);
|
|
157077
157084
|
const name = typeof attributes["gen_ai.workflow.name"] === "string" ? `invoke_workflow ${attributes["gen_ai.workflow.name"]}` : GEN_AI_OPERATION_INVOKE_WORKFLOW;
|
|
157078
|
-
return import_api10.trace.getTracer("ur-agent.gen_ai", "1.
|
|
157085
|
+
return import_api10.trace.getTracer("ur-agent.gen_ai", "1.78.2").startSpan(name, { kind: import_api10.SpanKind.INTERNAL, attributes });
|
|
157079
157086
|
}
|
|
157080
157087
|
function endGenAiWorkflowSpan(span, options2 = {}) {
|
|
157081
157088
|
try {
|
|
@@ -157113,7 +157120,7 @@ function startGenAiMemorySpan(operation, options2 = {}) {
|
|
|
157113
157120
|
if (options2.recordCount !== undefined && Number.isInteger(options2.recordCount) && options2.recordCount >= 0) {
|
|
157114
157121
|
attributes["gen_ai.memory.record.count"] = options2.recordCount;
|
|
157115
157122
|
}
|
|
157116
|
-
return import_api10.trace.getTracer("ur-agent.gen_ai", "1.
|
|
157123
|
+
return import_api10.trace.getTracer("ur-agent.gen_ai", "1.78.2").startSpan(operation, { kind: import_api10.SpanKind.INTERNAL, attributes });
|
|
157117
157124
|
}
|
|
157118
157125
|
function endGenAiMemorySpan(span, options2 = {}) {
|
|
157119
157126
|
try {
|
|
@@ -250761,7 +250768,7 @@ function getTelemetryAttributes() {
|
|
|
250761
250768
|
attributes["session.id"] = sessionId;
|
|
250762
250769
|
}
|
|
250763
250770
|
if (shouldIncludeAttribute("OTEL_METRICS_INCLUDE_VERSION")) {
|
|
250764
|
-
attributes["app.version"] = "1.
|
|
250771
|
+
attributes["app.version"] = "1.78.2";
|
|
250765
250772
|
}
|
|
250766
250773
|
const oauthAccount = getOauthAccountInfo();
|
|
250767
250774
|
if (oauthAccount) {
|
|
@@ -297268,7 +297275,7 @@ function getInstallationEnv() {
|
|
|
297268
297275
|
return;
|
|
297269
297276
|
}
|
|
297270
297277
|
function getURCodeVersion() {
|
|
297271
|
-
return "1.
|
|
297278
|
+
return "1.78.2";
|
|
297272
297279
|
}
|
|
297273
297280
|
async function getInstalledVSCodeExtensionVersion(command) {
|
|
297274
297281
|
const { stdout } = await execFileNoThrow(command, ["--list-extensions", "--show-versions"], {
|
|
@@ -304599,7 +304606,7 @@ async function setupSdkMcpClients(sdkMcpConfigs, sendMcpMessage) {
|
|
|
304599
304606
|
const client2 = new Client({
|
|
304600
304607
|
name: "ur",
|
|
304601
304608
|
title: "UR",
|
|
304602
|
-
version: "1.
|
|
304609
|
+
version: "1.78.2",
|
|
304603
304610
|
description: "UR-Nexus autonomous engineering workflow engine",
|
|
304604
304611
|
websiteUrl: PRODUCT_URL
|
|
304605
304612
|
}, {
|
|
@@ -304959,7 +304966,7 @@ var init_client5 = __esm(() => {
|
|
|
304959
304966
|
const client2 = new Client({
|
|
304960
304967
|
name: "ur",
|
|
304961
304968
|
title: "UR",
|
|
304962
|
-
version: "1.
|
|
304969
|
+
version: "1.78.2",
|
|
304963
304970
|
description: "UR-Nexus autonomous engineering workflow engine",
|
|
304964
304971
|
websiteUrl: PRODUCT_URL
|
|
304965
304972
|
}, {
|
|
@@ -317568,7 +317575,7 @@ async function createRuntime() {
|
|
|
317568
317575
|
bootstrapTelemetry();
|
|
317569
317576
|
const resource = defaultResource().merge(detectResources({ detectors: [envDetector] })).merge(resourceFromAttributes({
|
|
317570
317577
|
[import_semantic_conventions7.ATTR_SERVICE_NAME]: "ur-agent",
|
|
317571
|
-
[import_semantic_conventions7.ATTR_SERVICE_VERSION]: "1.
|
|
317578
|
+
[import_semantic_conventions7.ATTR_SERVICE_VERSION]: "1.78.2"
|
|
317572
317579
|
}));
|
|
317573
317580
|
const tracerProvider = exporters.traces.length > 0 ? new BasicTracerProvider({
|
|
317574
317581
|
resource,
|
|
@@ -317601,11 +317608,11 @@ async function createRuntime() {
|
|
|
317601
317608
|
setMeterProvider(meterProvider);
|
|
317602
317609
|
setLoggerProvider(loggerProvider);
|
|
317603
317610
|
if (meterProvider) {
|
|
317604
|
-
const meter = meterProvider.getMeter("ur-agent", "1.
|
|
317611
|
+
const meter = meterProvider.getMeter("ur-agent", "1.78.2");
|
|
317605
317612
|
setMeter(meter, (name, options2) => meter.createCounter(name, options2));
|
|
317606
317613
|
}
|
|
317607
317614
|
if (loggerProvider) {
|
|
317608
|
-
setEventLogger(loggerProvider.getLogger("ur-agent.events", "1.
|
|
317615
|
+
setEventLogger(loggerProvider.getLogger("ur-agent.events", "1.78.2"));
|
|
317609
317616
|
}
|
|
317610
317617
|
if (!cleanupRegistered2) {
|
|
317611
317618
|
cleanupRegistered2 = true;
|
|
@@ -318267,9 +318274,9 @@ async function assertMinVersion() {
|
|
|
318267
318274
|
if (false) {}
|
|
318268
318275
|
try {
|
|
318269
318276
|
const versionConfig = await getDynamicConfig_BLOCKS_ON_INIT("tengu_version_config", { minVersion: "0.0.0" });
|
|
318270
|
-
if (versionConfig.minVersion && lt("1.
|
|
318277
|
+
if (versionConfig.minVersion && lt("1.78.2", versionConfig.minVersion)) {
|
|
318271
318278
|
console.error(`
|
|
318272
|
-
It looks like your version of UR (${"1.
|
|
318279
|
+
It looks like your version of UR (${"1.78.2"}) needs an update.
|
|
318273
318280
|
A newer version (${versionConfig.minVersion} or higher) is required to continue.
|
|
318274
318281
|
|
|
318275
318282
|
To update, please run:
|
|
@@ -318485,7 +318492,7 @@ async function installGlobalPackage(specificVersion) {
|
|
|
318485
318492
|
logError2(new AutoUpdaterError("Another process is currently installing an update"));
|
|
318486
318493
|
logEvent("tengu_auto_updater_lock_contention", {
|
|
318487
318494
|
pid: process.pid,
|
|
318488
|
-
currentVersion: "1.
|
|
318495
|
+
currentVersion: "1.78.2"
|
|
318489
318496
|
});
|
|
318490
318497
|
return "in_progress";
|
|
318491
318498
|
}
|
|
@@ -318494,7 +318501,7 @@ async function installGlobalPackage(specificVersion) {
|
|
|
318494
318501
|
if (!env2.isRunningWithBun() && env2.isNpmFromWindowsPath()) {
|
|
318495
318502
|
logError2(new Error("Windows NPM detected in WSL environment"));
|
|
318496
318503
|
logEvent("tengu_auto_updater_windows_npm_in_wsl", {
|
|
318497
|
-
currentVersion: "1.
|
|
318504
|
+
currentVersion: "1.78.2"
|
|
318498
318505
|
});
|
|
318499
318506
|
console.error(`
|
|
318500
318507
|
Error: Windows NPM detected in WSL
|
|
@@ -319029,7 +319036,7 @@ function detectLinuxGlobPatternWarnings() {
|
|
|
319029
319036
|
}
|
|
319030
319037
|
async function getDoctorDiagnostic() {
|
|
319031
319038
|
const installationType = await getCurrentInstallationType();
|
|
319032
|
-
const version2 = typeof MACRO !== "undefined" ? "1.
|
|
319039
|
+
const version2 = typeof MACRO !== "undefined" ? "1.78.2" : "unknown";
|
|
319033
319040
|
const installationPath = await getInstallationPath();
|
|
319034
319041
|
const invokedBinary = getInvokedBinary();
|
|
319035
319042
|
const multipleInstallations = await detectMultipleInstallations();
|
|
@@ -319964,8 +319971,8 @@ async function updateLatest(channelOrVersion, forceReinstall = false) {
|
|
|
319964
319971
|
const maxVersion = await getMaxVersion();
|
|
319965
319972
|
if (maxVersion && gt(version2, maxVersion)) {
|
|
319966
319973
|
logForDebugging(`Native installer: maxVersion ${maxVersion} is set, capping update from ${version2} to ${maxVersion}`);
|
|
319967
|
-
if (gte("1.
|
|
319968
|
-
logForDebugging(`Native installer: current version ${"1.
|
|
319974
|
+
if (gte("1.78.2", maxVersion)) {
|
|
319975
|
+
logForDebugging(`Native installer: current version ${"1.78.2"} is already at or above maxVersion ${maxVersion}, skipping update`);
|
|
319969
319976
|
logEvent("tengu_native_update_skipped_max_version", {
|
|
319970
319977
|
latency_ms: Date.now() - startTime,
|
|
319971
319978
|
max_version: maxVersion,
|
|
@@ -319976,7 +319983,7 @@ async function updateLatest(channelOrVersion, forceReinstall = false) {
|
|
|
319976
319983
|
version2 = maxVersion;
|
|
319977
319984
|
}
|
|
319978
319985
|
}
|
|
319979
|
-
if (!forceReinstall && version2 === "1.
|
|
319986
|
+
if (!forceReinstall && version2 === "1.78.2" && await versionIsAvailable(version2) && await isPossibleURBinary(executablePath)) {
|
|
319980
319987
|
logForDebugging(`Found ${version2} at ${executablePath}, skipping install`);
|
|
319981
319988
|
logEvent("tengu_native_update_complete", {
|
|
319982
319989
|
latency_ms: Date.now() - startTime,
|
|
@@ -368545,6 +368552,7 @@ var init_UI12 = __esm(() => {
|
|
|
368545
368552
|
import { extname as extname13, isAbsolute as isAbsolute28, resolve as resolve37 } from "path";
|
|
368546
368553
|
var inputSchema16, outputSchema13, NotebookEditTool;
|
|
368547
368554
|
var init_NotebookEditTool = __esm(() => {
|
|
368555
|
+
init_LSPDiagnosticRegistry();
|
|
368548
368556
|
init_fileHistory();
|
|
368549
368557
|
init_v4();
|
|
368550
368558
|
init_Tool();
|
|
@@ -368845,6 +368853,7 @@ var init_NotebookEditTool = __esm(() => {
|
|
|
368845
368853
|
const IPYNB_INDENT = 1;
|
|
368846
368854
|
const updatedContent = jsonStringify(notebook, null, IPYNB_INDENT);
|
|
368847
368855
|
writeTextContent(fullPath, updatedContent, encoding, lineEndings);
|
|
368856
|
+
clearDeliveredDiagnosticsForFile(`file://${fullPath}`);
|
|
368848
368857
|
readFileState.set(fullPath, {
|
|
368849
368858
|
content: updatedContent,
|
|
368850
368859
|
timestamp: getFileModificationTime(fullPath),
|
|
@@ -387111,6 +387120,7 @@ Exit code 1`,
|
|
|
387111
387120
|
const endings = detectLineEndings(absoluteFilePath);
|
|
387112
387121
|
writeTextContent(absoluteFilePath, newContent, encoding, endings);
|
|
387113
387122
|
notifyVscodeFileUpdated(absoluteFilePath, originalContent, newContent);
|
|
387123
|
+
clearDeliveredDiagnosticsForFile(`file://${absoluteFilePath}`);
|
|
387114
387124
|
toolUseContext.readFileState.set(absoluteFilePath, {
|
|
387115
387125
|
content: newContent,
|
|
387116
387126
|
timestamp: getFileModificationTime(absoluteFilePath),
|
|
@@ -387388,6 +387398,7 @@ var init_BashTool = __esm(() => {
|
|
|
387388
387398
|
init_readOnlyValidation();
|
|
387389
387399
|
init_sedEditParser();
|
|
387390
387400
|
init_shouldUseSandbox();
|
|
387401
|
+
init_LSPDiagnosticRegistry();
|
|
387391
387402
|
init_UI6();
|
|
387392
387403
|
init_utils9();
|
|
387393
387404
|
jsx_dev_runtime154 = __toESM(require_jsx_dev_runtime(), 1);
|
|
@@ -389691,7 +389702,7 @@ function isAnyTracingEnabled() {
|
|
|
389691
389702
|
return isTelemetryEnabled() || isEnhancedTelemetryEnabled() || isBetaTracingEnabled();
|
|
389692
389703
|
}
|
|
389693
389704
|
function getTracer() {
|
|
389694
|
-
return import_api39.trace.getTracer("ur-agent.gen_ai", "1.
|
|
389705
|
+
return import_api39.trace.getTracer("ur-agent.gen_ai", "1.78.2");
|
|
389695
389706
|
}
|
|
389696
389707
|
function createSpanAttributes(spanType, customAttributes = {}) {
|
|
389697
389708
|
const baseAttributes = getTelemetryAttributes();
|
|
@@ -391848,8 +391859,9 @@ async function checkPermissionsAndCallTool(tool, toolUseID, input, toolUseContex
|
|
|
391848
391859
|
}
|
|
391849
391860
|
if (!parsedInput.success) {
|
|
391850
391861
|
recordCallFailure(callSig);
|
|
391851
|
-
const
|
|
391852
|
-
|
|
391862
|
+
const normalizedQuestionInput = tool.name === ASK_USER_QUESTION_TOOL_NAME ? normalizeAskUserQuestionInput(input) : undefined;
|
|
391863
|
+
const questionProblems = normalizedQuestionInput === undefined ? [] : describeQuestionPayloadProblems(normalizedQuestionInput);
|
|
391864
|
+
let errorContent = questionProblems.length > 0 ? `${tool.name} input cannot be rendered: ${questionProblems.join(" ")} ${describeQuestionPayloadShape(normalizedQuestionInput)}`.trim() : formatZodValidationError(tool.name, parsedInput.error);
|
|
391853
391865
|
const schemaHint = buildSchemaNotSentHint(tool, toolUseContext.messages, toolUseContext.options.tools);
|
|
391854
391866
|
if (schemaHint) {
|
|
391855
391867
|
logEvent("tengu_deferred_tool_schema_not_sent", {
|
|
@@ -398198,6 +398210,10 @@ var init_sessionMemoryCompact = __esm(() => {
|
|
|
398198
398210
|
});
|
|
398199
398211
|
|
|
398200
398212
|
// src/services/compact/autoCompact.ts
|
|
398213
|
+
function computeEffectiveContextWindowSize(contextWindow, maxOutputTokens) {
|
|
398214
|
+
const reservedTokensForSummary = Math.min(maxOutputTokens, MAX_OUTPUT_TOKENS_FOR_SUMMARY, Math.floor(contextWindow * MAX_SUMMARY_RESERVE_SHARE));
|
|
398215
|
+
return Math.max(contextWindow - reservedTokensForSummary, 1);
|
|
398216
|
+
}
|
|
398201
398217
|
function getEffectiveContextWindowSize(model) {
|
|
398202
398218
|
let contextWindow = getContextWindowForModel(model, getSdkBetas());
|
|
398203
398219
|
const autoCompactWindow = process.env.UR_CODE_AUTO_COMPACT_WINDOW;
|
|
@@ -398207,8 +398223,7 @@ function getEffectiveContextWindowSize(model) {
|
|
|
398207
398223
|
contextWindow = Math.min(contextWindow, parsed);
|
|
398208
398224
|
}
|
|
398209
398225
|
}
|
|
398210
|
-
|
|
398211
|
-
return Math.max(contextWindow - reservedTokensForSummary, 1);
|
|
398226
|
+
return computeEffectiveContextWindowSize(contextWindow, getMaxOutputTokensForModel(model));
|
|
398212
398227
|
}
|
|
398213
398228
|
function getAutoCompactThreshold(model) {
|
|
398214
398229
|
const effectiveContextWindow = getEffectiveContextWindowSize(model);
|
|
@@ -419913,7 +419928,7 @@ function Feedback({
|
|
|
419913
419928
|
platform: env2.platform,
|
|
419914
419929
|
gitRepo: envInfo.isGit,
|
|
419915
419930
|
terminal: env2.terminal,
|
|
419916
|
-
version: "1.
|
|
419931
|
+
version: "1.78.2",
|
|
419917
419932
|
transcript: normalizeMessagesForAPI(messages),
|
|
419918
419933
|
errors: sanitizedErrors,
|
|
419919
419934
|
lastApiRequest: getLastAPIRequest(),
|
|
@@ -420105,7 +420120,7 @@ function Feedback({
|
|
|
420105
420120
|
", ",
|
|
420106
420121
|
env2.terminal,
|
|
420107
420122
|
", v",
|
|
420108
|
-
"1.
|
|
420123
|
+
"1.78.2"
|
|
420109
420124
|
]
|
|
420110
420125
|
}, undefined, true, undefined, this)
|
|
420111
420126
|
]
|
|
@@ -420211,7 +420226,7 @@ ${sanitizedDescription}
|
|
|
420211
420226
|
` + `**Environment Info**
|
|
420212
420227
|
` + `- Platform: ${env2.platform}
|
|
420213
420228
|
` + `- Terminal: ${env2.terminal}
|
|
420214
|
-
` + `- Version: ${"1.
|
|
420229
|
+
` + `- Version: ${"1.78.2"}
|
|
420215
420230
|
` + `- Feedback ID: ${feedbackId}
|
|
420216
420231
|
` + `
|
|
420217
420232
|
**Errors**
|
|
@@ -423321,7 +423336,7 @@ function buildPrimarySection() {
|
|
|
423321
423336
|
}, undefined, false, undefined, this);
|
|
423322
423337
|
return [{
|
|
423323
423338
|
label: "Version",
|
|
423324
|
-
value: "1.
|
|
423339
|
+
value: "1.78.2"
|
|
423325
423340
|
}, {
|
|
423326
423341
|
label: "Session name",
|
|
423327
423342
|
value: nameValue
|
|
@@ -426703,7 +426718,7 @@ function Config({
|
|
|
426703
426718
|
}
|
|
426704
426719
|
}, undefined, false, undefined, this)
|
|
426705
426720
|
}, undefined, false, undefined, this) : showSubmenu === "ChannelDowngrade" ? /* @__PURE__ */ jsx_dev_runtime179.jsxDEV(ChannelDowngradeDialog, {
|
|
426706
|
-
currentVersion: "1.
|
|
426721
|
+
currentVersion: "1.78.2",
|
|
426707
426722
|
onChoice: (choice) => {
|
|
426708
426723
|
setShowSubmenu(null);
|
|
426709
426724
|
setTabsHidden(false);
|
|
@@ -426715,7 +426730,7 @@ function Config({
|
|
|
426715
426730
|
autoUpdatesChannel: "stable"
|
|
426716
426731
|
};
|
|
426717
426732
|
if (choice === "stay") {
|
|
426718
|
-
newSettings.minimumVersion = "1.
|
|
426733
|
+
newSettings.minimumVersion = "1.78.2";
|
|
426719
426734
|
}
|
|
426720
426735
|
updateSettingsForSource("userSettings", newSettings);
|
|
426721
426736
|
setSettingsData((prev_27) => ({
|
|
@@ -434779,7 +434794,7 @@ function HelpV2(t0) {
|
|
|
434779
434794
|
let t6;
|
|
434780
434795
|
if ($2[31] !== tabs) {
|
|
434781
434796
|
t6 = /* @__PURE__ */ jsx_dev_runtime206.jsxDEV(Tabs, {
|
|
434782
|
-
title: `UR v${"1.
|
|
434797
|
+
title: `UR v${"1.78.2"}`,
|
|
434783
434798
|
color: "professionalBlue",
|
|
434784
434799
|
defaultTab: "general",
|
|
434785
434800
|
children: tabs
|
|
@@ -435712,7 +435727,7 @@ function buildToolUseContext(tools, readFileStateCache, toolPermissionContext, a
|
|
|
435712
435727
|
async function handleInitialize(options2) {
|
|
435713
435728
|
return {
|
|
435714
435729
|
name: "UR",
|
|
435715
|
-
version: "1.
|
|
435730
|
+
version: "1.78.2",
|
|
435716
435731
|
protocolVersion: "0.1.0",
|
|
435717
435732
|
workspaceRoot: options2.cwd,
|
|
435718
435733
|
capabilities: {
|
|
@@ -452820,7 +452835,7 @@ function getAllReleaseNotes(changelogContent = getStoredChangelogFromMemory()) {
|
|
|
452820
452835
|
return [];
|
|
452821
452836
|
}
|
|
452822
452837
|
}
|
|
452823
|
-
async function checkForReleaseNotes(lastSeenVersion, currentVersion = "1.
|
|
452838
|
+
async function checkForReleaseNotes(lastSeenVersion, currentVersion = "1.78.2") {
|
|
452824
452839
|
if (process.env.USER_TYPE === "ant") {
|
|
452825
452840
|
const changelog = "";
|
|
452826
452841
|
if (changelog) {
|
|
@@ -452847,7 +452862,7 @@ async function checkForReleaseNotes(lastSeenVersion, currentVersion = "1.77.9")
|
|
|
452847
452862
|
releaseNotes
|
|
452848
452863
|
};
|
|
452849
452864
|
}
|
|
452850
|
-
function checkForReleaseNotesSync(lastSeenVersion, currentVersion = "1.
|
|
452865
|
+
function checkForReleaseNotesSync(lastSeenVersion, currentVersion = "1.78.2") {
|
|
452851
452866
|
if (process.env.USER_TYPE === "ant") {
|
|
452852
452867
|
const changelog = "";
|
|
452853
452868
|
if (changelog) {
|
|
@@ -455713,7 +455728,7 @@ function getRecentActivitySync() {
|
|
|
455713
455728
|
return cachedActivity;
|
|
455714
455729
|
}
|
|
455715
455730
|
function getLogoDisplayData() {
|
|
455716
|
-
const version2 = process.env.DEMO_VERSION ?? "1.
|
|
455731
|
+
const version2 = process.env.DEMO_VERSION ?? "1.78.2";
|
|
455717
455732
|
const serverUrl = getDirectConnectServerUrl();
|
|
455718
455733
|
const displayPath = process.env.DEMO_VERSION ? "/code/ur" : getDisplayPath(getCwd());
|
|
455719
455734
|
const cwd2 = serverUrl ? `${displayPath} in ${serverUrl.replace(/^https?:\/\//, "")}` : displayPath;
|
|
@@ -456580,7 +456595,7 @@ function LogoV2() {
|
|
|
456580
456595
|
if ($2[2] === Symbol.for("react.memo_cache_sentinel")) {
|
|
456581
456596
|
t2 = () => {
|
|
456582
456597
|
const currentConfig2 = getGlobalConfig();
|
|
456583
|
-
if (currentConfig2.lastReleaseNotesSeen === "1.
|
|
456598
|
+
if (currentConfig2.lastReleaseNotesSeen === "1.78.2") {
|
|
456584
456599
|
return;
|
|
456585
456600
|
}
|
|
456586
456601
|
saveGlobalConfig(_temp325);
|
|
@@ -457265,12 +457280,12 @@ function LogoV2() {
|
|
|
457265
457280
|
return t41;
|
|
457266
457281
|
}
|
|
457267
457282
|
function _temp325(current) {
|
|
457268
|
-
if (current.lastReleaseNotesSeen === "1.
|
|
457283
|
+
if (current.lastReleaseNotesSeen === "1.78.2") {
|
|
457269
457284
|
return current;
|
|
457270
457285
|
}
|
|
457271
457286
|
return {
|
|
457272
457287
|
...current,
|
|
457273
|
-
lastReleaseNotesSeen: "1.
|
|
457288
|
+
lastReleaseNotesSeen: "1.78.2"
|
|
457274
457289
|
};
|
|
457275
457290
|
}
|
|
457276
457291
|
function _temp241(s_0) {
|
|
@@ -474084,7 +474099,7 @@ function compileAgenticCiWorkflow(specName = "default", options2 = {}) {
|
|
|
474084
474099
|
if (spec.name !== specName) {
|
|
474085
474100
|
throw new Error("Agentic CI workflow spec name does not match");
|
|
474086
474101
|
}
|
|
474087
|
-
const packageVersion = options2.packageVersion ?? (typeof MACRO !== "undefined" ? "1.
|
|
474102
|
+
const packageVersion = options2.packageVersion ?? (typeof MACRO !== "undefined" ? "1.78.2" : "1.78.2");
|
|
474088
474103
|
if (!/^\d+\.\d+\.\d+(?:-[0-9A-Za-z.-]+)?$/.test(packageVersion)) {
|
|
474089
474104
|
throw new Error("invalid ur-agent package version");
|
|
474090
474105
|
}
|
|
@@ -475077,7 +475092,7 @@ runner; \`ur trigger\` is the inbound parser that decides what to run.
|
|
|
475077
475092
|
path: ".github/workflows/ur.yml",
|
|
475078
475093
|
root: "project",
|
|
475079
475094
|
content: compileAgenticCiWorkflow("default", {
|
|
475080
|
-
packageVersion: typeof MACRO !== "undefined" ? "1.
|
|
475095
|
+
packageVersion: typeof MACRO !== "undefined" ? "1.78.2" : "1.78.2"
|
|
475081
475096
|
})
|
|
475082
475097
|
},
|
|
475083
475098
|
{
|
|
@@ -475140,7 +475155,7 @@ function value(tokens, flag) {
|
|
|
475140
475155
|
return index2 >= 0 ? tokens[index2 + 1] : undefined;
|
|
475141
475156
|
}
|
|
475142
475157
|
function cliVersion() {
|
|
475143
|
-
return typeof MACRO !== "undefined" ? "1.
|
|
475158
|
+
return typeof MACRO !== "undefined" ? "1.78.2" : "1.78.2";
|
|
475144
475159
|
}
|
|
475145
475160
|
function workflowPath(cwd2) {
|
|
475146
475161
|
return join159(cwd2, ".github", "workflows", "ur-agentic-ci.yml");
|
|
@@ -480996,7 +481011,7 @@ function createAcpStdioApp(deps) {
|
|
|
480996
481011
|
}
|
|
480997
481012
|
},
|
|
480998
481013
|
authMethods: [],
|
|
480999
|
-
agentInfo: { name: "UR-Nexus", version: "1.
|
|
481014
|
+
agentInfo: { name: "UR-Nexus", version: "1.78.2" }
|
|
481000
481015
|
})).onRequest("authenticate", () => ({})).onRequest("session/new", async (context6) => {
|
|
481001
481016
|
const result = runtime2.newSession(context6.params.cwd, context6.params.mcpServers, context6.params.additionalDirectories);
|
|
481002
481017
|
await runtime2.announce({
|
|
@@ -481093,7 +481108,7 @@ function createAcpStdioAgent(deps) {
|
|
|
481093
481108
|
}
|
|
481094
481109
|
},
|
|
481095
481110
|
authMethods: [],
|
|
481096
|
-
agentInfo: { name: "UR-Nexus", version: "1.
|
|
481111
|
+
agentInfo: { name: "UR-Nexus", version: "1.78.2" }
|
|
481097
481112
|
});
|
|
481098
481113
|
return;
|
|
481099
481114
|
case "authenticate":
|
|
@@ -690553,7 +690568,7 @@ async function captureMemoryDiagnostics(trigger2, dumpNumber = 0) {
|
|
|
690553
690568
|
smapsRollup,
|
|
690554
690569
|
platform: process.platform,
|
|
690555
690570
|
nodeVersion: process.version,
|
|
690556
|
-
ccVersion: "1.
|
|
690571
|
+
ccVersion: "1.78.2"
|
|
690557
690572
|
};
|
|
690558
690573
|
}
|
|
690559
690574
|
async function performHeapDump(trigger2 = "manual", dumpNumber = 0) {
|
|
@@ -691133,7 +691148,7 @@ var init_bridge_kick = __esm(() => {
|
|
|
691133
691148
|
var call154 = async () => {
|
|
691134
691149
|
return {
|
|
691135
691150
|
type: "text",
|
|
691136
|
-
value: "1.
|
|
691151
|
+
value: "1.78.2"
|
|
691137
691152
|
};
|
|
691138
691153
|
}, version2, version_default;
|
|
691139
691154
|
var init_version = __esm(() => {
|
|
@@ -702400,7 +702415,7 @@ function generateHtmlReport(data, insights) {
|
|
|
702400
702415
|
</html>`;
|
|
702401
702416
|
}
|
|
702402
702417
|
function buildExportData(data, insights, facets, remoteStats) {
|
|
702403
|
-
const version3 = typeof MACRO !== "undefined" ? "1.
|
|
702418
|
+
const version3 = typeof MACRO !== "undefined" ? "1.78.2" : "unknown";
|
|
702404
702419
|
const remote_hosts_collected = remoteStats?.hosts.filter((h2) => h2.sessionCount > 0).map((h2) => h2.name);
|
|
702405
702420
|
const facets_summary = {
|
|
702406
702421
|
total: facets.size,
|
|
@@ -706714,7 +706729,7 @@ var init_sessionStorage = __esm(() => {
|
|
|
706714
706729
|
init_settings2();
|
|
706715
706730
|
init_slowOperations();
|
|
706716
706731
|
init_uuid();
|
|
706717
|
-
VERSION7 = typeof MACRO !== "undefined" ? "1.
|
|
706732
|
+
VERSION7 = typeof MACRO !== "undefined" ? "1.78.2" : "unknown";
|
|
706718
706733
|
MAX_TOMBSTONE_REWRITE_BYTES = 50 * 1024 * 1024;
|
|
706719
706734
|
SKIP_FIRST_PROMPT_PATTERN = /^(?:\s*<[a-z][\w-]*[\s>]|\[Request interrupted by user[^\]]*\])/;
|
|
706720
706735
|
EPHEMERAL_PROGRESS_TYPES = new Set([
|
|
@@ -707929,7 +707944,7 @@ var init_filesystem = __esm(() => {
|
|
|
707929
707944
|
});
|
|
707930
707945
|
getBundledSkillsRoot = memoize_default(function getBundledSkillsRoot2() {
|
|
707931
707946
|
const nonce = randomBytes20(16).toString("hex");
|
|
707932
|
-
return join232(getURTempDir(), "bundled-skills", "1.
|
|
707947
|
+
return join232(getURTempDir(), "bundled-skills", "1.78.2", nonce);
|
|
707933
707948
|
});
|
|
707934
707949
|
getResolvedWorkingDirPaths = memoize_default(getPathsForPermissionCheck);
|
|
707935
707950
|
});
|
|
@@ -714286,7 +714301,7 @@ function computeFingerprint(messageText2, version3) {
|
|
|
714286
714301
|
}
|
|
714287
714302
|
function computeFingerprintFromMessages(messages) {
|
|
714288
714303
|
const firstMessageText = extractFirstMessageText(messages);
|
|
714289
|
-
return computeFingerprint(firstMessageText, "1.
|
|
714304
|
+
return computeFingerprint(firstMessageText, "1.78.2");
|
|
714290
714305
|
}
|
|
714291
714306
|
var FINGERPRINT_SALT = "59cf53e54c78";
|
|
714292
714307
|
var init_fingerprint = () => {};
|
|
@@ -716208,7 +716223,7 @@ async function sideQuery(opts) {
|
|
|
716208
716223
|
betas.push(STRUCTURED_OUTPUTS_BETA_HEADER);
|
|
716209
716224
|
}
|
|
716210
716225
|
const messageText2 = extractFirstUserMessageText(messages);
|
|
716211
|
-
const fingerprint2 = computeFingerprint(messageText2, "1.
|
|
716226
|
+
const fingerprint2 = computeFingerprint(messageText2, "1.78.2");
|
|
716212
716227
|
const attributionHeader = getAttributionHeader(fingerprint2);
|
|
716213
716228
|
const systemBlocks = [
|
|
716214
716229
|
attributionHeader ? { type: "text", text: attributionHeader } : null,
|
|
@@ -721045,7 +721060,7 @@ function buildSystemInitMessage(inputs) {
|
|
|
721045
721060
|
slash_commands: inputs.commands.filter((c4) => c4.userInvocable !== false).map((c4) => c4.name),
|
|
721046
721061
|
apiKeySource: getURHQApiKeyWithSource().source,
|
|
721047
721062
|
betas: getSdkBetas(),
|
|
721048
|
-
ur_version: "1.
|
|
721063
|
+
ur_version: "1.78.2",
|
|
721049
721064
|
output_style: outputStyle2,
|
|
721050
721065
|
agents: inputs.agents.map((agent2) => agent2.agentType),
|
|
721051
721066
|
skills: inputs.skills.filter((s) => s.userInvocable !== false).map((skill2) => skill2.name),
|
|
@@ -734917,7 +734932,7 @@ var init_useVoiceEnabled = __esm(() => {
|
|
|
734917
734932
|
function getSemverPart(version3) {
|
|
734918
734933
|
return `${import_semver13.major(version3, { loose: true })}.${import_semver13.minor(version3, { loose: true })}.${import_semver13.patch(version3, { loose: true })}`;
|
|
734919
734934
|
}
|
|
734920
|
-
function useUpdateNotification(updatedVersion, initialVersion = "1.
|
|
734935
|
+
function useUpdateNotification(updatedVersion, initialVersion = "1.78.2") {
|
|
734921
734936
|
const [lastNotifiedSemver, setLastNotifiedSemver] = import_react223.useState(() => getSemverPart(initialVersion));
|
|
734922
734937
|
if (!updatedVersion) {
|
|
734923
734938
|
return null;
|
|
@@ -734966,7 +734981,7 @@ function AutoUpdater({
|
|
|
734966
734981
|
return;
|
|
734967
734982
|
}
|
|
734968
734983
|
if (false) {}
|
|
734969
|
-
const currentVersion = "1.
|
|
734984
|
+
const currentVersion = "1.78.2";
|
|
734970
734985
|
const channel = getInitialSettings()?.autoUpdatesChannel ?? "latest";
|
|
734971
734986
|
let latestVersion = await getLatestVersion(channel);
|
|
734972
734987
|
const isDisabled = isAutoUpdaterDisabled();
|
|
@@ -735195,12 +735210,12 @@ function NativeAutoUpdater({
|
|
|
735195
735210
|
logEvent("tengu_native_auto_updater_start", {});
|
|
735196
735211
|
try {
|
|
735197
735212
|
const maxVersion = await getMaxVersion();
|
|
735198
|
-
if (maxVersion && gt("1.
|
|
735213
|
+
if (maxVersion && gt("1.78.2", maxVersion)) {
|
|
735199
735214
|
const msg = await getMaxVersionMessage();
|
|
735200
735215
|
setMaxVersionIssue(msg ?? "affects your version");
|
|
735201
735216
|
}
|
|
735202
735217
|
const result = await installLatest(channel);
|
|
735203
|
-
const currentVersion = "1.
|
|
735218
|
+
const currentVersion = "1.78.2";
|
|
735204
735219
|
const latencyMs = Date.now() - startTime;
|
|
735205
735220
|
if (result.lockFailed) {
|
|
735206
735221
|
logEvent("tengu_native_auto_updater_lock_contention", {
|
|
@@ -735337,17 +735352,17 @@ function PackageManagerAutoUpdater(t0) {
|
|
|
735337
735352
|
const maxVersion = await getMaxVersion();
|
|
735338
735353
|
if (maxVersion && latest && gt(latest, maxVersion)) {
|
|
735339
735354
|
logForDebugging(`PackageManagerAutoUpdater: maxVersion ${maxVersion} is set, capping update from ${latest} to ${maxVersion}`);
|
|
735340
|
-
if (gte("1.
|
|
735341
|
-
logForDebugging(`PackageManagerAutoUpdater: current version ${"1.
|
|
735355
|
+
if (gte("1.78.2", maxVersion)) {
|
|
735356
|
+
logForDebugging(`PackageManagerAutoUpdater: current version ${"1.78.2"} is already at or above maxVersion ${maxVersion}, skipping update`);
|
|
735342
735357
|
setUpdateAvailable(false);
|
|
735343
735358
|
return;
|
|
735344
735359
|
}
|
|
735345
735360
|
latest = maxVersion;
|
|
735346
735361
|
}
|
|
735347
|
-
const hasUpdate = latest && !gte("1.
|
|
735362
|
+
const hasUpdate = latest && !gte("1.78.2", latest) && !shouldSkipVersion(latest);
|
|
735348
735363
|
setUpdateAvailable(!!hasUpdate);
|
|
735349
735364
|
if (hasUpdate) {
|
|
735350
|
-
logForDebugging(`PackageManagerAutoUpdater: Update available ${"1.
|
|
735365
|
+
logForDebugging(`PackageManagerAutoUpdater: Update available ${"1.78.2"} -> ${latest}`);
|
|
735351
735366
|
}
|
|
735352
735367
|
};
|
|
735353
735368
|
$2[0] = t1;
|
|
@@ -735381,7 +735396,7 @@ function PackageManagerAutoUpdater(t0) {
|
|
|
735381
735396
|
wrap: "truncate",
|
|
735382
735397
|
children: [
|
|
735383
735398
|
"currentVersion: ",
|
|
735384
|
-
"1.
|
|
735399
|
+
"1.78.2"
|
|
735385
735400
|
]
|
|
735386
735401
|
}, undefined, true, undefined, this);
|
|
735387
735402
|
$2[3] = verbose;
|
|
@@ -746181,7 +746196,7 @@ function buildStatusLineCommandInput(permissionMode, exceeds200kTokens, settings
|
|
|
746181
746196
|
project_dir: getOriginalCwd(),
|
|
746182
746197
|
added_dirs: addedDirs
|
|
746183
746198
|
},
|
|
746184
|
-
version: "1.
|
|
746199
|
+
version: "1.78.2",
|
|
746185
746200
|
output_style: {
|
|
746186
746201
|
name: outputStyleName
|
|
746187
746202
|
},
|
|
@@ -746316,7 +746331,7 @@ function StatusLineInner({
|
|
|
746316
746331
|
const attention = customStatusError ?? taskAttention;
|
|
746317
746332
|
const terminalSize = React132.useContext(TerminalSizeContext);
|
|
746318
746333
|
const defaultStatusLineText = buildDefaultStatusBar({
|
|
746319
|
-
version: "1.
|
|
746334
|
+
version: "1.78.2",
|
|
746320
746335
|
providerLabel: providerRuntime.providerLabel,
|
|
746321
746336
|
authMode: providerRuntime.authLabel,
|
|
746322
746337
|
model: renderModelName(mainLoopModel) || providerRuntime.model || "",
|
|
@@ -758601,7 +758616,7 @@ async function submitTranscriptShare(messages, trigger2, appearanceId) {
|
|
|
758601
758616
|
} catch {}
|
|
758602
758617
|
const data = {
|
|
758603
758618
|
trigger: trigger2,
|
|
758604
|
-
version: "1.
|
|
758619
|
+
version: "1.78.2",
|
|
758605
758620
|
platform: process.platform,
|
|
758606
758621
|
transcript,
|
|
758607
758622
|
subagentTranscripts: Object.keys(subagentTranscripts).length > 0 ? subagentTranscripts : undefined,
|
|
@@ -770975,7 +770990,7 @@ function WelcomeV2() {
|
|
|
770975
770990
|
dimColor: true,
|
|
770976
770991
|
children: [
|
|
770977
770992
|
"v",
|
|
770978
|
-
"1.
|
|
770993
|
+
"1.78.2"
|
|
770979
770994
|
]
|
|
770980
770995
|
}, undefined, true, undefined, this)
|
|
770981
770996
|
]
|
|
@@ -772235,7 +772250,7 @@ function completeOnboarding() {
|
|
|
772235
772250
|
saveGlobalConfig((current) => ({
|
|
772236
772251
|
...current,
|
|
772237
772252
|
hasCompletedOnboarding: true,
|
|
772238
|
-
lastOnboardingVersion: "1.
|
|
772253
|
+
lastOnboardingVersion: "1.78.2"
|
|
772239
772254
|
}));
|
|
772240
772255
|
}
|
|
772241
772256
|
function showDialog(root2, renderer) {
|
|
@@ -777279,7 +777294,7 @@ function appendToLog(path24, message) {
|
|
|
777279
777294
|
cwd: getFsImplementation().cwd(),
|
|
777280
777295
|
userType: process.env.USER_TYPE,
|
|
777281
777296
|
sessionId: getSessionId(),
|
|
777282
|
-
version: "1.
|
|
777297
|
+
version: "1.78.2"
|
|
777283
777298
|
};
|
|
777284
777299
|
getLogWriter(path24).write(messageWithTimestamp);
|
|
777285
777300
|
}
|
|
@@ -781438,8 +781453,8 @@ async function getEnvLessBridgeConfig() {
|
|
|
781438
781453
|
}
|
|
781439
781454
|
async function checkEnvLessBridgeMinVersion() {
|
|
781440
781455
|
const cfg = await getEnvLessBridgeConfig();
|
|
781441
|
-
if (cfg.min_version && lt("1.
|
|
781442
|
-
return `Your version of UR (${"1.
|
|
781456
|
+
if (cfg.min_version && lt("1.78.2", cfg.min_version)) {
|
|
781457
|
+
return `Your version of UR (${"1.78.2"}) is too old for Remote Control.
|
|
781443
781458
|
Version ${cfg.min_version} or higher is required. Run \`ur update\` to update.`;
|
|
781444
781459
|
}
|
|
781445
781460
|
return null;
|
|
@@ -781913,7 +781928,7 @@ async function initBridgeCore(params) {
|
|
|
781913
781928
|
const rawApi = createBridgeApiClient({
|
|
781914
781929
|
baseUrl,
|
|
781915
781930
|
getAccessToken,
|
|
781916
|
-
runnerVersion: "1.
|
|
781931
|
+
runnerVersion: "1.78.2",
|
|
781917
781932
|
onDebug: logForDebugging,
|
|
781918
781933
|
onAuth401,
|
|
781919
781934
|
getTrustedDeviceToken
|
|
@@ -791386,7 +791401,7 @@ function getAgUiCapabilities() {
|
|
|
791386
791401
|
name: "UR-Nexus",
|
|
791387
791402
|
type: "ur-nexus",
|
|
791388
791403
|
description: "Provider-flexible, local-first autonomous engineering workflow agent.",
|
|
791389
|
-
version: "1.
|
|
791404
|
+
version: "1.78.2",
|
|
791390
791405
|
provider: "UR",
|
|
791391
791406
|
documentationUrl: "https://github.com/Maitham16/UR/blob/master/docs/AG_UI.md"
|
|
791392
791407
|
},
|
|
@@ -792526,7 +792541,7 @@ function createMCPServer(cwd4, debug2, verbose) {
|
|
|
792526
792541
|
};
|
|
792527
792542
|
const server2 = new Server({
|
|
792528
792543
|
name: "ur-nexus",
|
|
792529
|
-
version: "1.
|
|
792544
|
+
version: "1.78.2"
|
|
792530
792545
|
}, {
|
|
792531
792546
|
capabilities: {
|
|
792532
792547
|
tools: {}
|
|
@@ -793684,7 +793699,7 @@ function thrownResponse(error40) {
|
|
|
793684
793699
|
}
|
|
793685
793700
|
async function createUrMcp2026Runtime(options4) {
|
|
793686
793701
|
const server2 = createMCPServer(options4.cwd, options4.debug === true, options4.verbose === true);
|
|
793687
|
-
const client2 = new Client({ name: "ur-mcp-2026-adapter", version: "1.
|
|
793702
|
+
const client2 = new Client({ name: "ur-mcp-2026-adapter", version: "1.78.2" }, { capabilities: {} });
|
|
793688
793703
|
const [clientTransport, serverTransport] = createLinkedTransportPair();
|
|
793689
793704
|
try {
|
|
793690
793705
|
await server2.connect(serverTransport);
|
|
@@ -793695,7 +793710,7 @@ async function createUrMcp2026Runtime(options4) {
|
|
|
793695
793710
|
}
|
|
793696
793711
|
const runtime2 = new Mcp2026Runtime({
|
|
793697
793712
|
cwd: options4.cwd,
|
|
793698
|
-
version: "1.
|
|
793713
|
+
version: "1.78.2",
|
|
793699
793714
|
backend: {
|
|
793700
793715
|
listTools: async () => {
|
|
793701
793716
|
const listed = await client2.listTools();
|
|
@@ -795836,7 +795851,7 @@ async function update() {
|
|
|
795836
795851
|
logEvent("tengu_update_check", {});
|
|
795837
795852
|
const diagnostic2 = await getDoctorDiagnostic();
|
|
795838
795853
|
const result = await checkUpgradeStatus({
|
|
795839
|
-
currentVersion: "1.
|
|
795854
|
+
currentVersion: "1.78.2",
|
|
795840
795855
|
packageName: UR_AGENT_PACKAGE_NAME,
|
|
795841
795856
|
installationType: diagnostic2.installationType,
|
|
795842
795857
|
latestVersion: () => getLatestNpmPackageVersion(UR_AGENT_PACKAGE_NAME)
|
|
@@ -797152,7 +797167,7 @@ ${customInstructions}` : customInstructions;
|
|
|
797152
797167
|
}
|
|
797153
797168
|
}
|
|
797154
797169
|
logForDiagnosticsNoPII("info", "started", {
|
|
797155
|
-
version: "1.
|
|
797170
|
+
version: "1.78.2",
|
|
797156
797171
|
is_native_binary: isInBundledMode()
|
|
797157
797172
|
});
|
|
797158
797173
|
registerCleanup(async () => {
|
|
@@ -797938,7 +797953,7 @@ Usage: ur --remote "your task description"`, () => gracefulShutdown(1));
|
|
|
797938
797953
|
pendingHookMessages
|
|
797939
797954
|
}, renderAndRun);
|
|
797940
797955
|
}
|
|
797941
|
-
}).version("1.
|
|
797956
|
+
}).version("1.78.2 (UR-Nexus)", "-v, --version", "Output the version number");
|
|
797942
797957
|
program2.option("-w, --worktree [name]", "Create a new git worktree for this session (optionally specify a name)");
|
|
797943
797958
|
program2.option("--tmux", "Create a tmux session for the worktree (requires --worktree). Uses iTerm2 native panes when available; use --tmux=classic for traditional tmux.");
|
|
797944
797959
|
if (canUserConfigureAdvisor()) {
|
|
@@ -798990,7 +799005,7 @@ if (false) {}
|
|
|
798990
799005
|
async function main2() {
|
|
798991
799006
|
const args = process.argv.slice(2);
|
|
798992
799007
|
if (args.length === 1 && (args[0] === "--version" || args[0] === "-v" || args[0] === "-V")) {
|
|
798993
|
-
console.log(`${"1.
|
|
799008
|
+
console.log(`${"1.78.2"} (UR-Nexus)`);
|
|
798994
799009
|
return;
|
|
798995
799010
|
}
|
|
798996
799011
|
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.2</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.2",
|
|
6
6
|
"publisher": "ur-nexus",
|
|
7
7
|
"engines": {
|
|
8
8
|
"vscode": "^1.92.0"
|
package/package.json
CHANGED