ur-agent 1.50.4 → 1.50.5

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,19 @@
1
1
  # Changelog
2
2
 
3
+ ## 1.50.5
4
+
5
+ - Added `.github/workflows/release.yml`. The repository had only a test
6
+ workflow, so tags never became production releases: 18 tags existed with no
7
+ GitHub Release and no automated publish. Pushing a `v*` tag now runs the full
8
+ gate (typecheck, lint, tests, build, `release:check`, CLI smoke test),
9
+ publishes a GitHub Release whose notes are the matching `CHANGELOG.md`
10
+ section, and pushes the verified tarball to npm.
11
+ - The tag is not trusted on its own. The run fails if it disagrees with
12
+ `package.json` or if `CHANGELOG.md` has no section for that version, and the
13
+ artifact published to npm is the same one the gate verified rather than a
14
+ fresh pack. Publishing is skipped, not failed, when the version is already on
15
+ npm or when `NPM_TOKEN` is absent.
16
+
3
17
  ## 1.50.4
4
18
 
5
19
  - Removed the `/install-github-app` command and its GitHub App setup flow,
package/dist/cli.js CHANGED
@@ -75088,7 +75088,7 @@ var init_auth = __esm(() => {
75088
75088
 
75089
75089
  // src/utils/userAgent.ts
75090
75090
  function getURCodeUserAgent() {
75091
- return `ur/${"1.50.4"}`;
75091
+ return `ur/${"1.50.5"}`;
75092
75092
  }
75093
75093
 
75094
75094
  // src/utils/workloadContext.ts
@@ -75110,7 +75110,7 @@ function getUserAgent() {
75110
75110
  const clientApp = process.env.UR_AGENT_SDK_CLIENT_APP ? `, client-app/${process.env.UR_AGENT_SDK_CLIENT_APP}` : "";
75111
75111
  const workload = getWorkload();
75112
75112
  const workloadSuffix = workload ? `, workload/${workload}` : "";
75113
- return `ur-cli/${"1.50.4"} (${process.env.USER_TYPE}, ${process.env.UR_CODE_ENTRYPOINT ?? "cli"}${agentSdkVersion}${clientApp}${workloadSuffix})`;
75113
+ return `ur-cli/${"1.50.5"} (${process.env.USER_TYPE}, ${process.env.UR_CODE_ENTRYPOINT ?? "cli"}${agentSdkVersion}${clientApp}${workloadSuffix})`;
75114
75114
  }
75115
75115
  function getMCPUserAgent() {
75116
75116
  const parts = [];
@@ -75124,7 +75124,7 @@ function getMCPUserAgent() {
75124
75124
  parts.push(`client-app/${process.env.UR_AGENT_SDK_CLIENT_APP}`);
75125
75125
  }
75126
75126
  const suffix = parts.length > 0 ? ` (${parts.join(", ")})` : "";
75127
- return `ur/${"1.50.4"}${suffix}`;
75127
+ return `ur/${"1.50.5"}${suffix}`;
75128
75128
  }
75129
75129
  function getWebFetchUserAgent() {
75130
75130
  return `UR-User (${getURCodeUserAgent()})`;
@@ -75262,7 +75262,7 @@ var init_user = __esm(() => {
75262
75262
  deviceId,
75263
75263
  sessionId: getSessionId(),
75264
75264
  email: getEmail(),
75265
- appVersion: "1.50.4",
75265
+ appVersion: "1.50.5",
75266
75266
  platform: getHostPlatformForAnalytics(),
75267
75267
  organizationUuid,
75268
75268
  accountUuid,
@@ -83462,7 +83462,7 @@ var init_metadata = __esm(() => {
83462
83462
  COMPOUND_OPERATOR_REGEX = /\s*(?:&&|\|\||[;|])\s*/;
83463
83463
  WHITESPACE_REGEX = /\s+/;
83464
83464
  getVersionBase = memoize_default(() => {
83465
- const match = "1.50.4".match(/^\d+\.\d+\.\d+(?:-[a-z]+)?/);
83465
+ const match = "1.50.5".match(/^\d+\.\d+\.\d+(?:-[a-z]+)?/);
83466
83466
  return match ? match[0] : undefined;
83467
83467
  });
83468
83468
  buildEnvContext = memoize_default(async () => {
@@ -83502,7 +83502,7 @@ var init_metadata = __esm(() => {
83502
83502
  isGithubAction: isEnvTruthy(process.env.GITHUB_ACTIONS),
83503
83503
  isURCodeAction: isEnvTruthy(process.env.UR_CODE_ACTION),
83504
83504
  isURAiAuth: isURAISubscriber(),
83505
- version: "1.50.4",
83505
+ version: "1.50.5",
83506
83506
  versionBase: getVersionBase(),
83507
83507
  buildTime: "",
83508
83508
  deploymentEnvironment: env2.detectDeploymentEnvironment(),
@@ -84172,7 +84172,7 @@ function initialize1PEventLogging() {
84172
84172
  const platform2 = getPlatform();
84173
84173
  const attributes = {
84174
84174
  [import_semantic_conventions4.ATTR_SERVICE_NAME]: "ur",
84175
- [import_semantic_conventions4.ATTR_SERVICE_VERSION]: "1.50.4"
84175
+ [import_semantic_conventions4.ATTR_SERVICE_VERSION]: "1.50.5"
84176
84176
  };
84177
84177
  if (platform2 === "wsl") {
84178
84178
  const wslVersion = getWslVersion();
@@ -84200,7 +84200,7 @@ function initialize1PEventLogging() {
84200
84200
  })
84201
84201
  ]
84202
84202
  });
84203
- firstPartyEventLogger = firstPartyEventLoggerProvider.getLogger("com.urhq.ur.events", "1.50.4");
84203
+ firstPartyEventLogger = firstPartyEventLoggerProvider.getLogger("com.urhq.ur.events", "1.50.5");
84204
84204
  }
84205
84205
  async function reinitialize1PEventLoggingIfConfigChanged() {
84206
84206
  if (!is1PEventLoggingEnabled() || !firstPartyEventLoggerProvider) {
@@ -94016,7 +94016,7 @@ function formatAgentTrendReport(report = buildAgentTrendReport()) {
94016
94016
  function formatA2AAgentCard(options = {}, pretty = true) {
94017
94017
  return JSON.stringify(buildA2AAgentCard(options), null, pretty ? 2 : 0);
94018
94018
  }
94019
- var urVersion = "1.50.4", researchSnapshotDate = "2026-07-15", coverage, priorityRoadmap;
94019
+ var urVersion = "1.50.5", researchSnapshotDate = "2026-07-15", coverage, priorityRoadmap;
94020
94020
  var init_trends = __esm(() => {
94021
94021
  init_a2aCardSignature();
94022
94022
  coverage = [
@@ -96817,7 +96817,7 @@ function getAttributionHeader(fingerprint) {
96817
96817
  if (!isAttributionHeaderEnabled()) {
96818
96818
  return "";
96819
96819
  }
96820
- const version2 = `${"1.50.4"}.${fingerprint}`;
96820
+ const version2 = `${"1.50.5"}.${fingerprint}`;
96821
96821
  const entrypoint = process.env.UR_CODE_ENTRYPOINT ?? "unknown";
96822
96822
  const cch = "";
96823
96823
  const workload = getWorkload();
@@ -154502,7 +154502,7 @@ var init_projectSafety = __esm(() => {
154502
154502
  function getInstruments() {
154503
154503
  if (instruments)
154504
154504
  return instruments;
154505
- const meter = import_api10.metrics.getMeter("ur-agent.gen_ai", "1.50.4");
154505
+ const meter = import_api10.metrics.getMeter("ur-agent.gen_ai", "1.50.5");
154506
154506
  instruments = {
154507
154507
  operationDuration: meter.createHistogram("gen_ai.client.operation.duration", {
154508
154508
  description: "GenAI operation duration.",
@@ -154600,7 +154600,7 @@ function genAiAgentAttributes() {
154600
154600
  "gen_ai.operation.name": GEN_AI_OPERATION_INVOKE_AGENT,
154601
154601
  "gen_ai.provider.name": "ur",
154602
154602
  "gen_ai.agent.name": "UR-Nexus",
154603
- "gen_ai.agent.version": "1.50.4"
154603
+ "gen_ai.agent.version": "1.50.5"
154604
154604
  };
154605
154605
  }
154606
154606
  function genAiWorkflowAttributes(workflowName) {
@@ -154616,7 +154616,7 @@ function genAiWorkflowAttributes(workflowName) {
154616
154616
  function startGenAiWorkflowSpan(workflowName) {
154617
154617
  const attributes = genAiWorkflowAttributes(workflowName);
154618
154618
  const name = typeof attributes["gen_ai.workflow.name"] === "string" ? `invoke_workflow ${attributes["gen_ai.workflow.name"]}` : GEN_AI_OPERATION_INVOKE_WORKFLOW;
154619
- return import_api10.trace.getTracer("ur-agent.gen_ai", "1.50.4").startSpan(name, { kind: import_api10.SpanKind.INTERNAL, attributes });
154619
+ return import_api10.trace.getTracer("ur-agent.gen_ai", "1.50.5").startSpan(name, { kind: import_api10.SpanKind.INTERNAL, attributes });
154620
154620
  }
154621
154621
  function endGenAiWorkflowSpan(span, options2 = {}) {
154622
154622
  try {
@@ -154654,7 +154654,7 @@ function startGenAiMemorySpan(operation, options2 = {}) {
154654
154654
  if (options2.recordCount !== undefined && Number.isInteger(options2.recordCount) && options2.recordCount >= 0) {
154655
154655
  attributes["gen_ai.memory.record.count"] = options2.recordCount;
154656
154656
  }
154657
- return import_api10.trace.getTracer("ur-agent.gen_ai", "1.50.4").startSpan(operation, { kind: import_api10.SpanKind.INTERNAL, attributes });
154657
+ return import_api10.trace.getTracer("ur-agent.gen_ai", "1.50.5").startSpan(operation, { kind: import_api10.SpanKind.INTERNAL, attributes });
154658
154658
  }
154659
154659
  function endGenAiMemorySpan(span, options2 = {}) {
154660
154660
  try {
@@ -206173,7 +206173,7 @@ function getTelemetryAttributes() {
206173
206173
  attributes["session.id"] = sessionId;
206174
206174
  }
206175
206175
  if (shouldIncludeAttribute("OTEL_METRICS_INCLUDE_VERSION")) {
206176
- attributes["app.version"] = "1.50.4";
206176
+ attributes["app.version"] = "1.50.5";
206177
206177
  }
206178
206178
  const oauthAccount = getOauthAccountInfo();
206179
206179
  if (oauthAccount) {
@@ -252424,7 +252424,7 @@ function getInstallationEnv() {
252424
252424
  return;
252425
252425
  }
252426
252426
  function getURCodeVersion() {
252427
- return "1.50.4";
252427
+ return "1.50.5";
252428
252428
  }
252429
252429
  async function getInstalledVSCodeExtensionVersion(command) {
252430
252430
  const { stdout } = await execFileNoThrow(command, ["--list-extensions", "--show-versions"], {
@@ -259755,7 +259755,7 @@ async function setupSdkMcpClients(sdkMcpConfigs, sendMcpMessage) {
259755
259755
  const client2 = new Client({
259756
259756
  name: "ur",
259757
259757
  title: "UR",
259758
- version: "1.50.4",
259758
+ version: "1.50.5",
259759
259759
  description: "UR-Nexus autonomous engineering workflow engine",
259760
259760
  websiteUrl: PRODUCT_URL
259761
259761
  }, {
@@ -260115,7 +260115,7 @@ var init_client5 = __esm(() => {
260115
260115
  const client2 = new Client({
260116
260116
  name: "ur",
260117
260117
  title: "UR",
260118
- version: "1.50.4",
260118
+ version: "1.50.5",
260119
260119
  description: "UR-Nexus autonomous engineering workflow engine",
260120
260120
  websiteUrl: PRODUCT_URL
260121
260121
  }, {
@@ -272716,7 +272716,7 @@ async function createRuntime() {
272716
272716
  bootstrapTelemetry();
272717
272717
  const resource = defaultResource().merge(detectResources({ detectors: [envDetector] })).merge(resourceFromAttributes({
272718
272718
  [import_semantic_conventions7.ATTR_SERVICE_NAME]: "ur-agent",
272719
- [import_semantic_conventions7.ATTR_SERVICE_VERSION]: "1.50.4"
272719
+ [import_semantic_conventions7.ATTR_SERVICE_VERSION]: "1.50.5"
272720
272720
  }));
272721
272721
  const tracerProvider = exporters.traces.length > 0 ? new BasicTracerProvider({
272722
272722
  resource,
@@ -272749,11 +272749,11 @@ async function createRuntime() {
272749
272749
  setMeterProvider(meterProvider);
272750
272750
  setLoggerProvider(loggerProvider);
272751
272751
  if (meterProvider) {
272752
- const meter = meterProvider.getMeter("ur-agent", "1.50.4");
272752
+ const meter = meterProvider.getMeter("ur-agent", "1.50.5");
272753
272753
  setMeter(meter, (name, options2) => meter.createCounter(name, options2));
272754
272754
  }
272755
272755
  if (loggerProvider) {
272756
- setEventLogger(loggerProvider.getLogger("ur-agent.events", "1.50.4"));
272756
+ setEventLogger(loggerProvider.getLogger("ur-agent.events", "1.50.5"));
272757
272757
  }
272758
272758
  if (!cleanupRegistered2) {
272759
272759
  cleanupRegistered2 = true;
@@ -273415,9 +273415,9 @@ async function assertMinVersion() {
273415
273415
  if (false) {}
273416
273416
  try {
273417
273417
  const versionConfig = await getDynamicConfig_BLOCKS_ON_INIT("tengu_version_config", { minVersion: "0.0.0" });
273418
- if (versionConfig.minVersion && lt("1.50.4", versionConfig.minVersion)) {
273418
+ if (versionConfig.minVersion && lt("1.50.5", versionConfig.minVersion)) {
273419
273419
  console.error(`
273420
- It looks like your version of UR (${"1.50.4"}) needs an update.
273420
+ It looks like your version of UR (${"1.50.5"}) needs an update.
273421
273421
  A newer version (${versionConfig.minVersion} or higher) is required to continue.
273422
273422
 
273423
273423
  To update, please run:
@@ -273633,7 +273633,7 @@ async function installGlobalPackage(specificVersion) {
273633
273633
  logError2(new AutoUpdaterError("Another process is currently installing an update"));
273634
273634
  logEvent("tengu_auto_updater_lock_contention", {
273635
273635
  pid: process.pid,
273636
- currentVersion: "1.50.4"
273636
+ currentVersion: "1.50.5"
273637
273637
  });
273638
273638
  return "in_progress";
273639
273639
  }
@@ -273642,7 +273642,7 @@ async function installGlobalPackage(specificVersion) {
273642
273642
  if (!env2.isRunningWithBun() && env2.isNpmFromWindowsPath()) {
273643
273643
  logError2(new Error("Windows NPM detected in WSL environment"));
273644
273644
  logEvent("tengu_auto_updater_windows_npm_in_wsl", {
273645
- currentVersion: "1.50.4"
273645
+ currentVersion: "1.50.5"
273646
273646
  });
273647
273647
  console.error(`
273648
273648
  Error: Windows NPM detected in WSL
@@ -274177,7 +274177,7 @@ function detectLinuxGlobPatternWarnings() {
274177
274177
  }
274178
274178
  async function getDoctorDiagnostic() {
274179
274179
  const installationType = await getCurrentInstallationType();
274180
- const version2 = typeof MACRO !== "undefined" ? "1.50.4" : "unknown";
274180
+ const version2 = typeof MACRO !== "undefined" ? "1.50.5" : "unknown";
274181
274181
  const installationPath = await getInstallationPath();
274182
274182
  const invokedBinary = getInvokedBinary();
274183
274183
  const multipleInstallations = await detectMultipleInstallations();
@@ -275112,8 +275112,8 @@ async function updateLatest(channelOrVersion, forceReinstall = false) {
275112
275112
  const maxVersion = await getMaxVersion();
275113
275113
  if (maxVersion && gt(version2, maxVersion)) {
275114
275114
  logForDebugging(`Native installer: maxVersion ${maxVersion} is set, capping update from ${version2} to ${maxVersion}`);
275115
- if (gte("1.50.4", maxVersion)) {
275116
- logForDebugging(`Native installer: current version ${"1.50.4"} is already at or above maxVersion ${maxVersion}, skipping update`);
275115
+ if (gte("1.50.5", maxVersion)) {
275116
+ logForDebugging(`Native installer: current version ${"1.50.5"} is already at or above maxVersion ${maxVersion}, skipping update`);
275117
275117
  logEvent("tengu_native_update_skipped_max_version", {
275118
275118
  latency_ms: Date.now() - startTime,
275119
275119
  max_version: maxVersion,
@@ -275124,7 +275124,7 @@ async function updateLatest(channelOrVersion, forceReinstall = false) {
275124
275124
  version2 = maxVersion;
275125
275125
  }
275126
275126
  }
275127
- if (!forceReinstall && version2 === "1.50.4" && await versionIsAvailable(version2) && await isPossibleURBinary(executablePath)) {
275127
+ if (!forceReinstall && version2 === "1.50.5" && await versionIsAvailable(version2) && await isPossibleURBinary(executablePath)) {
275128
275128
  logForDebugging(`Found ${version2} at ${executablePath}, skipping install`);
275129
275129
  logEvent("tengu_native_update_complete", {
275130
275130
  latency_ms: Date.now() - startTime,
@@ -344917,7 +344917,7 @@ function isAnyTracingEnabled() {
344917
344917
  return isTelemetryEnabled() || isEnhancedTelemetryEnabled() || isBetaTracingEnabled();
344918
344918
  }
344919
344919
  function getTracer() {
344920
- return import_api39.trace.getTracer("ur-agent.gen_ai", "1.50.4");
344920
+ return import_api39.trace.getTracer("ur-agent.gen_ai", "1.50.5");
344921
344921
  }
344922
344922
  function createSpanAttributes(spanType, customAttributes = {}) {
344923
344923
  const baseAttributes = getTelemetryAttributes();
@@ -374011,7 +374011,7 @@ function Feedback({
374011
374011
  platform: env2.platform,
374012
374012
  gitRepo: envInfo.isGit,
374013
374013
  terminal: env2.terminal,
374014
- version: "1.50.4",
374014
+ version: "1.50.5",
374015
374015
  transcript: normalizeMessagesForAPI(messages),
374016
374016
  errors: sanitizedErrors,
374017
374017
  lastApiRequest: getLastAPIRequest(),
@@ -374203,7 +374203,7 @@ function Feedback({
374203
374203
  ", ",
374204
374204
  env2.terminal,
374205
374205
  ", v",
374206
- "1.50.4"
374206
+ "1.50.5"
374207
374207
  ]
374208
374208
  }, undefined, true, undefined, this)
374209
374209
  ]
@@ -374309,7 +374309,7 @@ ${sanitizedDescription}
374309
374309
  ` + `**Environment Info**
374310
374310
  ` + `- Platform: ${env2.platform}
374311
374311
  ` + `- Terminal: ${env2.terminal}
374312
- ` + `- Version: ${"1.50.4"}
374312
+ ` + `- Version: ${"1.50.5"}
374313
374313
  ` + `- Feedback ID: ${feedbackId}
374314
374314
  ` + `
374315
374315
  **Errors**
@@ -377420,7 +377420,7 @@ function buildPrimarySection() {
377420
377420
  }, undefined, false, undefined, this);
377421
377421
  return [{
377422
377422
  label: "Version",
377423
- value: "1.50.4"
377423
+ value: "1.50.5"
377424
377424
  }, {
377425
377425
  label: "Session name",
377426
377426
  value: nameValue
@@ -380750,7 +380750,7 @@ function Config({
380750
380750
  }
380751
380751
  }, undefined, false, undefined, this)
380752
380752
  }, undefined, false, undefined, this) : showSubmenu === "ChannelDowngrade" ? /* @__PURE__ */ jsx_dev_runtime178.jsxDEV(ChannelDowngradeDialog, {
380753
- currentVersion: "1.50.4",
380753
+ currentVersion: "1.50.5",
380754
380754
  onChoice: (choice) => {
380755
380755
  setShowSubmenu(null);
380756
380756
  setTabsHidden(false);
@@ -380762,7 +380762,7 @@ function Config({
380762
380762
  autoUpdatesChannel: "stable"
380763
380763
  };
380764
380764
  if (choice === "stay") {
380765
- newSettings.minimumVersion = "1.50.4";
380765
+ newSettings.minimumVersion = "1.50.5";
380766
380766
  }
380767
380767
  updateSettingsForSource("userSettings", newSettings);
380768
380768
  setSettingsData((prev_27) => ({
@@ -388832,7 +388832,7 @@ function HelpV2(t0) {
388832
388832
  let t6;
388833
388833
  if ($2[31] !== tabs) {
388834
388834
  t6 = /* @__PURE__ */ jsx_dev_runtime205.jsxDEV(Tabs, {
388835
- title: `UR v${"1.50.4"}`,
388835
+ title: `UR v${"1.50.5"}`,
388836
388836
  color: "professionalBlue",
388837
388837
  defaultTab: "general",
388838
388838
  children: tabs
@@ -389749,7 +389749,7 @@ function buildToolUseContext(tools, readFileStateCache, toolPermissionContext, a
389749
389749
  async function handleInitialize(options2) {
389750
389750
  return {
389751
389751
  name: "UR",
389752
- version: "1.50.4",
389752
+ version: "1.50.5",
389753
389753
  protocolVersion: "0.1.0",
389754
389754
  workspaceRoot: options2.cwd,
389755
389755
  capabilities: {
@@ -406870,7 +406870,7 @@ function getAllReleaseNotes(changelogContent = getStoredChangelogFromMemory()) {
406870
406870
  return [];
406871
406871
  }
406872
406872
  }
406873
- async function checkForReleaseNotes(lastSeenVersion, currentVersion = "1.50.4") {
406873
+ async function checkForReleaseNotes(lastSeenVersion, currentVersion = "1.50.5") {
406874
406874
  if (process.env.USER_TYPE === "ant") {
406875
406875
  const changelog = "";
406876
406876
  if (changelog) {
@@ -406897,7 +406897,7 @@ async function checkForReleaseNotes(lastSeenVersion, currentVersion = "1.50.4")
406897
406897
  releaseNotes
406898
406898
  };
406899
406899
  }
406900
- function checkForReleaseNotesSync(lastSeenVersion, currentVersion = "1.50.4") {
406900
+ function checkForReleaseNotesSync(lastSeenVersion, currentVersion = "1.50.5") {
406901
406901
  if (process.env.USER_TYPE === "ant") {
406902
406902
  const changelog = "";
406903
406903
  if (changelog) {
@@ -409754,7 +409754,7 @@ function getRecentActivitySync() {
409754
409754
  return cachedActivity;
409755
409755
  }
409756
409756
  function getLogoDisplayData() {
409757
- const version2 = process.env.DEMO_VERSION ?? "1.50.4";
409757
+ const version2 = process.env.DEMO_VERSION ?? "1.50.5";
409758
409758
  const serverUrl = getDirectConnectServerUrl();
409759
409759
  const displayPath = process.env.DEMO_VERSION ? "/code/ur" : getDisplayPath(getCwd());
409760
409760
  const cwd2 = serverUrl ? `${displayPath} in ${serverUrl.replace(/^https?:\/\//, "")}` : displayPath;
@@ -410638,7 +410638,7 @@ function LogoV2() {
410638
410638
  if ($2[2] === Symbol.for("react.memo_cache_sentinel")) {
410639
410639
  t2 = () => {
410640
410640
  const currentConfig2 = getGlobalConfig();
410641
- if (currentConfig2.lastReleaseNotesSeen === "1.50.4") {
410641
+ if (currentConfig2.lastReleaseNotesSeen === "1.50.5") {
410642
410642
  return;
410643
410643
  }
410644
410644
  saveGlobalConfig(_temp327);
@@ -411323,12 +411323,12 @@ function LogoV2() {
411323
411323
  return t41;
411324
411324
  }
411325
411325
  function _temp327(current) {
411326
- if (current.lastReleaseNotesSeen === "1.50.4") {
411326
+ if (current.lastReleaseNotesSeen === "1.50.5") {
411327
411327
  return current;
411328
411328
  }
411329
411329
  return {
411330
411330
  ...current,
411331
- lastReleaseNotesSeen: "1.50.4"
411331
+ lastReleaseNotesSeen: "1.50.5"
411332
411332
  };
411333
411333
  }
411334
411334
  function _temp241(s_0) {
@@ -427515,7 +427515,7 @@ function compileAgenticCiWorkflow(specName = "default", options2 = {}) {
427515
427515
  if (spec.name !== specName) {
427516
427516
  throw new Error("Agentic CI workflow spec name does not match");
427517
427517
  }
427518
- const packageVersion = options2.packageVersion ?? (typeof MACRO !== "undefined" ? "1.50.4" : "1.50.4");
427518
+ const packageVersion = options2.packageVersion ?? (typeof MACRO !== "undefined" ? "1.50.5" : "1.50.5");
427519
427519
  if (!/^\d+\.\d+\.\d+(?:-[0-9A-Za-z.-]+)?$/.test(packageVersion)) {
427520
427520
  throw new Error("invalid ur-agent package version");
427521
427521
  }
@@ -428508,7 +428508,7 @@ runner; \`ur trigger\` is the inbound parser that decides what to run.
428508
428508
  path: ".github/workflows/ur.yml",
428509
428509
  root: "project",
428510
428510
  content: compileAgenticCiWorkflow("default", {
428511
- packageVersion: typeof MACRO !== "undefined" ? "1.50.4" : "1.50.4"
428511
+ packageVersion: typeof MACRO !== "undefined" ? "1.50.5" : "1.50.5"
428512
428512
  })
428513
428513
  },
428514
428514
  {
@@ -428571,7 +428571,7 @@ function value(tokens, flag) {
428571
428571
  return index2 >= 0 ? tokens[index2 + 1] : undefined;
428572
428572
  }
428573
428573
  function cliVersion() {
428574
- return typeof MACRO !== "undefined" ? "1.50.4" : "1.50.4";
428574
+ return typeof MACRO !== "undefined" ? "1.50.5" : "1.50.5";
428575
428575
  }
428576
428576
  function workflowPath(cwd2) {
428577
428577
  return join155(cwd2, ".github", "workflows", "ur-agentic-ci.yml");
@@ -434427,7 +434427,7 @@ function createAcpStdioApp(deps) {
434427
434427
  }
434428
434428
  },
434429
434429
  authMethods: [],
434430
- agentInfo: { name: "UR-Nexus", version: "1.50.4" }
434430
+ agentInfo: { name: "UR-Nexus", version: "1.50.5" }
434431
434431
  })).onRequest("authenticate", () => ({})).onRequest("session/new", async (context6) => {
434432
434432
  const result = runtime2.newSession(context6.params.cwd, context6.params.mcpServers, context6.params.additionalDirectories);
434433
434433
  await runtime2.announce({
@@ -434524,7 +434524,7 @@ function createAcpStdioAgent(deps) {
434524
434524
  }
434525
434525
  },
434526
434526
  authMethods: [],
434527
- agentInfo: { name: "UR-Nexus", version: "1.50.4" }
434527
+ agentInfo: { name: "UR-Nexus", version: "1.50.5" }
434528
434528
  });
434529
434529
  return;
434530
434530
  case "authenticate":
@@ -642003,7 +642003,7 @@ async function captureMemoryDiagnostics(trigger2, dumpNumber = 0) {
642003
642003
  smapsRollup,
642004
642004
  platform: process.platform,
642005
642005
  nodeVersion: process.version,
642006
- ccVersion: "1.50.4"
642006
+ ccVersion: "1.50.5"
642007
642007
  };
642008
642008
  }
642009
642009
  async function performHeapDump(trigger2 = "manual", dumpNumber = 0) {
@@ -642589,7 +642589,7 @@ var init_bridge_kick = __esm(() => {
642589
642589
  var call144 = async () => {
642590
642590
  return {
642591
642591
  type: "text",
642592
- value: "1.50.4"
642592
+ value: "1.50.5"
642593
642593
  };
642594
642594
  }, version2, version_default;
642595
642595
  var init_version = __esm(() => {
@@ -653707,7 +653707,7 @@ function generateHtmlReport(data, insights) {
653707
653707
  </html>`;
653708
653708
  }
653709
653709
  function buildExportData(data, insights, facets, remoteStats) {
653710
- const version3 = typeof MACRO !== "undefined" ? "1.50.4" : "unknown";
653710
+ const version3 = typeof MACRO !== "undefined" ? "1.50.5" : "unknown";
653711
653711
  const remote_hosts_collected = remoteStats?.hosts.filter((h2) => h2.sessionCount > 0).map((h2) => h2.name);
653712
653712
  const facets_summary = {
653713
653713
  total: facets.size,
@@ -658038,7 +658038,7 @@ var init_sessionStorage = __esm(() => {
658038
658038
  init_settings2();
658039
658039
  init_slowOperations();
658040
658040
  init_uuid();
658041
- VERSION7 = typeof MACRO !== "undefined" ? "1.50.4" : "unknown";
658041
+ VERSION7 = typeof MACRO !== "undefined" ? "1.50.5" : "unknown";
658042
658042
  MAX_TOMBSTONE_REWRITE_BYTES = 50 * 1024 * 1024;
658043
658043
  SKIP_FIRST_PROMPT_PATTERN = /^(?:\s*<[a-z][\w-]*[\s>]|\[Request interrupted by user[^\]]*\])/;
658044
658044
  EPHEMERAL_PROGRESS_TYPES = new Set([
@@ -659253,7 +659253,7 @@ var init_filesystem = __esm(() => {
659253
659253
  });
659254
659254
  getBundledSkillsRoot = memoize_default(function getBundledSkillsRoot2() {
659255
659255
  const nonce = randomBytes19(16).toString("hex");
659256
- return join224(getURTempDir(), "bundled-skills", "1.50.4", nonce);
659256
+ return join224(getURTempDir(), "bundled-skills", "1.50.5", nonce);
659257
659257
  });
659258
659258
  getResolvedWorkingDirPaths = memoize_default(getPathsForPermissionCheck);
659259
659259
  });
@@ -665548,7 +665548,7 @@ function computeFingerprint(messageText2, version3) {
665548
665548
  }
665549
665549
  function computeFingerprintFromMessages(messages) {
665550
665550
  const firstMessageText = extractFirstMessageText(messages);
665551
- return computeFingerprint(firstMessageText, "1.50.4");
665551
+ return computeFingerprint(firstMessageText, "1.50.5");
665552
665552
  }
665553
665553
  var FINGERPRINT_SALT = "59cf53e54c78";
665554
665554
  var init_fingerprint = () => {};
@@ -667444,7 +667444,7 @@ async function sideQuery(opts) {
667444
667444
  betas.push(STRUCTURED_OUTPUTS_BETA_HEADER);
667445
667445
  }
667446
667446
  const messageText2 = extractFirstUserMessageText(messages);
667447
- const fingerprint2 = computeFingerprint(messageText2, "1.50.4");
667447
+ const fingerprint2 = computeFingerprint(messageText2, "1.50.5");
667448
667448
  const attributionHeader = getAttributionHeader(fingerprint2);
667449
667449
  const systemBlocks = [
667450
667450
  attributionHeader ? { type: "text", text: attributionHeader } : null,
@@ -672215,7 +672215,7 @@ function buildSystemInitMessage(inputs) {
672215
672215
  slash_commands: inputs.commands.filter((c4) => c4.userInvocable !== false).map((c4) => c4.name),
672216
672216
  apiKeySource: getURHQApiKeyWithSource().source,
672217
672217
  betas: getSdkBetas(),
672218
- ur_version: "1.50.4",
672218
+ ur_version: "1.50.5",
672219
672219
  output_style: outputStyle2,
672220
672220
  agents: inputs.agents.map((agent2) => agent2.agentType),
672221
672221
  skills: inputs.skills.filter((s) => s.userInvocable !== false).map((skill2) => skill2.name),
@@ -686075,7 +686075,7 @@ var init_useVoiceEnabled = __esm(() => {
686075
686075
  function getSemverPart(version3) {
686076
686076
  return `${import_semver13.major(version3, { loose: true })}.${import_semver13.minor(version3, { loose: true })}.${import_semver13.patch(version3, { loose: true })}`;
686077
686077
  }
686078
- function useUpdateNotification(updatedVersion, initialVersion = "1.50.4") {
686078
+ function useUpdateNotification(updatedVersion, initialVersion = "1.50.5") {
686079
686079
  const [lastNotifiedSemver, setLastNotifiedSemver] = import_react222.useState(() => getSemverPart(initialVersion));
686080
686080
  if (!updatedVersion) {
686081
686081
  return null;
@@ -686124,7 +686124,7 @@ function AutoUpdater({
686124
686124
  return;
686125
686125
  }
686126
686126
  if (false) {}
686127
- const currentVersion = "1.50.4";
686127
+ const currentVersion = "1.50.5";
686128
686128
  const channel = getInitialSettings()?.autoUpdatesChannel ?? "latest";
686129
686129
  let latestVersion = await getLatestVersion(channel);
686130
686130
  const isDisabled = isAutoUpdaterDisabled();
@@ -686353,12 +686353,12 @@ function NativeAutoUpdater({
686353
686353
  logEvent("tengu_native_auto_updater_start", {});
686354
686354
  try {
686355
686355
  const maxVersion = await getMaxVersion();
686356
- if (maxVersion && gt("1.50.4", maxVersion)) {
686356
+ if (maxVersion && gt("1.50.5", maxVersion)) {
686357
686357
  const msg = await getMaxVersionMessage();
686358
686358
  setMaxVersionIssue(msg ?? "affects your version");
686359
686359
  }
686360
686360
  const result = await installLatest(channel);
686361
- const currentVersion = "1.50.4";
686361
+ const currentVersion = "1.50.5";
686362
686362
  const latencyMs = Date.now() - startTime;
686363
686363
  if (result.lockFailed) {
686364
686364
  logEvent("tengu_native_auto_updater_lock_contention", {
@@ -686495,17 +686495,17 @@ function PackageManagerAutoUpdater(t0) {
686495
686495
  const maxVersion = await getMaxVersion();
686496
686496
  if (maxVersion && latest && gt(latest, maxVersion)) {
686497
686497
  logForDebugging(`PackageManagerAutoUpdater: maxVersion ${maxVersion} is set, capping update from ${latest} to ${maxVersion}`);
686498
- if (gte("1.50.4", maxVersion)) {
686499
- logForDebugging(`PackageManagerAutoUpdater: current version ${"1.50.4"} is already at or above maxVersion ${maxVersion}, skipping update`);
686498
+ if (gte("1.50.5", maxVersion)) {
686499
+ logForDebugging(`PackageManagerAutoUpdater: current version ${"1.50.5"} is already at or above maxVersion ${maxVersion}, skipping update`);
686500
686500
  setUpdateAvailable(false);
686501
686501
  return;
686502
686502
  }
686503
686503
  latest = maxVersion;
686504
686504
  }
686505
- const hasUpdate = latest && !gte("1.50.4", latest) && !shouldSkipVersion(latest);
686505
+ const hasUpdate = latest && !gte("1.50.5", latest) && !shouldSkipVersion(latest);
686506
686506
  setUpdateAvailable(!!hasUpdate);
686507
686507
  if (hasUpdate) {
686508
- logForDebugging(`PackageManagerAutoUpdater: Update available ${"1.50.4"} -> ${latest}`);
686508
+ logForDebugging(`PackageManagerAutoUpdater: Update available ${"1.50.5"} -> ${latest}`);
686509
686509
  }
686510
686510
  };
686511
686511
  $2[0] = t1;
@@ -686539,7 +686539,7 @@ function PackageManagerAutoUpdater(t0) {
686539
686539
  wrap: "truncate",
686540
686540
  children: [
686541
686541
  "currentVersion: ",
686542
- "1.50.4"
686542
+ "1.50.5"
686543
686543
  ]
686544
686544
  }, undefined, true, undefined, this);
686545
686545
  $2[3] = verbose;
@@ -697236,7 +697236,7 @@ function buildStatusLineCommandInput(permissionMode, exceeds200kTokens, settings
697236
697236
  project_dir: getOriginalCwd(),
697237
697237
  added_dirs: addedDirs
697238
697238
  },
697239
- version: "1.50.4",
697239
+ version: "1.50.5",
697240
697240
  output_style: {
697241
697241
  name: outputStyleName
697242
697242
  },
@@ -697319,7 +697319,7 @@ function StatusLineInner({
697319
697319
  const taskValues = Object.values(tasks2);
697320
697320
  const taskRunningCount = taskValues.filter((task2) => task2.status === "running" || task2.status === "pending").length;
697321
697321
  const defaultStatusLineText = buildDefaultStatusBar({
697322
- version: "1.50.4",
697322
+ version: "1.50.5",
697323
697323
  providerLabel: providerRuntime.providerLabel,
697324
697324
  authMode: providerRuntime.authLabel,
697325
697325
  model: providerRuntime.model ?? renderModelName(mainLoopModel),
@@ -709462,7 +709462,7 @@ async function submitTranscriptShare(messages, trigger2, appearanceId) {
709462
709462
  } catch {}
709463
709463
  const data = {
709464
709464
  trigger: trigger2,
709465
- version: "1.50.4",
709465
+ version: "1.50.5",
709466
709466
  platform: process.platform,
709467
709467
  transcript,
709468
709468
  subagentTranscripts: Object.keys(subagentTranscripts).length > 0 ? subagentTranscripts : undefined,
@@ -721742,7 +721742,7 @@ function WelcomeV2() {
721742
721742
  dimColor: true,
721743
721743
  children: [
721744
721744
  "v",
721745
- "1.50.4"
721745
+ "1.50.5"
721746
721746
  ]
721747
721747
  }, undefined, true, undefined, this)
721748
721748
  ]
@@ -723002,7 +723002,7 @@ function completeOnboarding() {
723002
723002
  saveGlobalConfig((current) => ({
723003
723003
  ...current,
723004
723004
  hasCompletedOnboarding: true,
723005
- lastOnboardingVersion: "1.50.4"
723005
+ lastOnboardingVersion: "1.50.5"
723006
723006
  }));
723007
723007
  }
723008
723008
  function showDialog(root2, renderer) {
@@ -728046,7 +728046,7 @@ function appendToLog(path24, message) {
728046
728046
  cwd: getFsImplementation().cwd(),
728047
728047
  userType: process.env.USER_TYPE,
728048
728048
  sessionId: getSessionId(),
728049
- version: "1.50.4"
728049
+ version: "1.50.5"
728050
728050
  };
728051
728051
  getLogWriter(path24).write(messageWithTimestamp);
728052
728052
  }
@@ -732205,8 +732205,8 @@ async function getEnvLessBridgeConfig() {
732205
732205
  }
732206
732206
  async function checkEnvLessBridgeMinVersion() {
732207
732207
  const cfg = await getEnvLessBridgeConfig();
732208
- if (cfg.min_version && lt("1.50.4", cfg.min_version)) {
732209
- return `Your version of UR (${"1.50.4"}) is too old for Remote Control.
732208
+ if (cfg.min_version && lt("1.50.5", cfg.min_version)) {
732209
+ return `Your version of UR (${"1.50.5"}) is too old for Remote Control.
732210
732210
  Version ${cfg.min_version} or higher is required. Run \`ur update\` to update.`;
732211
732211
  }
732212
732212
  return null;
@@ -732680,7 +732680,7 @@ async function initBridgeCore(params) {
732680
732680
  const rawApi = createBridgeApiClient({
732681
732681
  baseUrl,
732682
732682
  getAccessToken,
732683
- runnerVersion: "1.50.4",
732683
+ runnerVersion: "1.50.5",
732684
732684
  onDebug: logForDebugging,
732685
732685
  onAuth401,
732686
732686
  getTrustedDeviceToken
@@ -742149,7 +742149,7 @@ function getAgUiCapabilities() {
742149
742149
  name: "UR-Nexus",
742150
742150
  type: "ur-nexus",
742151
742151
  description: "Provider-flexible, local-first autonomous engineering workflow agent.",
742152
- version: "1.50.4",
742152
+ version: "1.50.5",
742153
742153
  provider: "UR",
742154
742154
  documentationUrl: "https://github.com/Maitham16/UR/blob/master/docs/AG_UI.md"
742155
742155
  },
@@ -743289,7 +743289,7 @@ function createMCPServer(cwd4, debug2, verbose) {
743289
743289
  };
743290
743290
  const server2 = new Server({
743291
743291
  name: "ur-nexus",
743292
- version: "1.50.4"
743292
+ version: "1.50.5"
743293
743293
  }, {
743294
743294
  capabilities: {
743295
743295
  tools: {}
@@ -744447,7 +744447,7 @@ function thrownResponse(error40) {
744447
744447
  }
744448
744448
  async function createUrMcp2026Runtime(options4) {
744449
744449
  const server2 = createMCPServer(options4.cwd, options4.debug === true, options4.verbose === true);
744450
- const client2 = new Client({ name: "ur-mcp-2026-adapter", version: "1.50.4" }, { capabilities: {} });
744450
+ const client2 = new Client({ name: "ur-mcp-2026-adapter", version: "1.50.5" }, { capabilities: {} });
744451
744451
  const [clientTransport, serverTransport] = createLinkedTransportPair();
744452
744452
  try {
744453
744453
  await server2.connect(serverTransport);
@@ -744458,7 +744458,7 @@ async function createUrMcp2026Runtime(options4) {
744458
744458
  }
744459
744459
  const runtime2 = new Mcp2026Runtime({
744460
744460
  cwd: options4.cwd,
744461
- version: "1.50.4",
744461
+ version: "1.50.5",
744462
744462
  backend: {
744463
744463
  listTools: async () => {
744464
744464
  const listed = await client2.listTools();
@@ -746591,7 +746591,7 @@ async function update() {
746591
746591
  logEvent("tengu_update_check", {});
746592
746592
  const diagnostic2 = await getDoctorDiagnostic();
746593
746593
  const result = await checkUpgradeStatus({
746594
- currentVersion: "1.50.4",
746594
+ currentVersion: "1.50.5",
746595
746595
  packageName: UR_AGENT_PACKAGE_NAME,
746596
746596
  installationType: diagnostic2.installationType,
746597
746597
  latestVersion: () => getLatestNpmPackageVersion(UR_AGENT_PACKAGE_NAME)
@@ -747907,7 +747907,7 @@ ${customInstructions}` : customInstructions;
747907
747907
  }
747908
747908
  }
747909
747909
  logForDiagnosticsNoPII("info", "started", {
747910
- version: "1.50.4",
747910
+ version: "1.50.5",
747911
747911
  is_native_binary: isInBundledMode()
747912
747912
  });
747913
747913
  registerCleanup(async () => {
@@ -748693,7 +748693,7 @@ Usage: ur --remote "your task description"`, () => gracefulShutdown(1));
748693
748693
  pendingHookMessages
748694
748694
  }, renderAndRun);
748695
748695
  }
748696
- }).version("1.50.4 (UR-Nexus)", "-v, --version", "Output the version number");
748696
+ }).version("1.50.5 (UR-Nexus)", "-v, --version", "Output the version number");
748697
748697
  program2.option("-w, --worktree [name]", "Create a new git worktree for this session (optionally specify a name)");
748698
748698
  program2.option("--tmux", "Create a tmux session for the worktree (requires --worktree). Uses iTerm2 native panes when available; use --tmux=classic for traditional tmux.");
748699
748699
  if (canUserConfigureAdvisor()) {
@@ -749709,7 +749709,7 @@ if (false) {}
749709
749709
  async function main2() {
749710
749710
  const args = process.argv.slice(2);
749711
749711
  if (args.length === 1 && (args[0] === "--version" || args[0] === "-v" || args[0] === "-V")) {
749712
- console.log(`${"1.50.4"} (UR-Nexus)`);
749712
+ console.log(`${"1.50.5"} (UR-Nexus)`);
749713
749713
  return;
749714
749714
  }
749715
749715
  if (args[0] === "a2a" && args[1] === "serve" && !args.includes("--help") && !args.includes("-h")) {
@@ -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.50.4</p>
48
+ <p class="eyebrow">Version 1.50.5</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>
@@ -7,7 +7,7 @@ plugins {
7
7
  }
8
8
 
9
9
  group = "dev.urnexus"
10
- version = "1.50.4"
10
+ version = "1.50.5"
11
11
 
12
12
  repositories {
13
13
  mavenCentral()
@@ -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.50.4",
5
+ "version": "1.50.5",
6
6
  "publisher": "ur-nexus",
7
7
  "engines": {
8
8
  "vscode": "^1.92.0"
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "ur-agent",
3
- "version": "1.50.4",
3
+ "version": "1.50.5",
4
4
  "description": "UR-Nexus — autonomous engineering workflow engine (plan, execute, test, verify, document, benchmark, reproduce)",
5
5
  "type": "module",
6
6
  "packageManager": "bun@1.3.14",