@mindexec/cli 0.2.301 → 0.2.302

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/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@mindexec/cli",
3
- "version": "0.2.301",
3
+ "version": "0.2.302",
4
4
  "description": "MindExec local runtime and bridge CLI",
5
5
  "main": "server.js",
6
6
  "type": "module",
@@ -5,7 +5,7 @@
5
5
  const DEBUG = false;
6
6
  const FPS_DEBUG = false;
7
7
  const FRAME_PERF_DEBUG = false;
8
- const MINDMAP_CORE_BUILD_ID = '20260621-css-image-single-surface-v760';
8
+ const MINDMAP_CORE_BUILD_ID = '20260621-render-stability-v763';
9
9
  const CanvasPhase = Object.freeze({
10
10
  Booting: 'booting',
11
11
  BoardFileLoading: 'board-file-loading',
@@ -973,6 +973,7 @@
973
973
  tintVideoLayoutInNear: false,
974
974
  disableNearVideoGlow: false
975
975
  });
976
+ const FRAME_PERF_PROBE_KEEP_ALIVE_ENABLED = false;
976
977
  const NODE_FRAME_DEBUG_LAYER_ID = 'mind-map-node-frame-debug-layer';
977
978
  const NODE_FRAME_DEBUG_MAX_ENTRIES = 28;
978
979
  const NODE_FRAME_DEBUG_COLORS = Object.freeze({
@@ -2452,6 +2453,7 @@
2452
2453
  animationLoopDelayMs: Number(moduleInstance._lastAnimationLoopDelayMs || 0),
2453
2454
  animationFrameScheduled: !!moduleInstance.animationFrameId,
2454
2455
  animationIdleTimerScheduled: !!moduleInstance._animationIdleTimerId,
2456
+ animationIdleBlockers: moduleInstance._lastAnimationIdleBlockers || [],
2455
2457
  residentDirtyState,
2456
2458
  residentLastSkipReason: String(moduleInstance.lodRenderer?._lastResidentSkipReason || ''),
2457
2459
  residentLodWakeScheduled: !!moduleInstance.lodRenderer?._residentLodWakeTimer,
@@ -9014,12 +9016,14 @@ ${summaryLines.map(line => `<div>${escapeNodeFrameDebugHtml(line)}</div>`).join(
9014
9016
  renderDebugFlags
9015
9017
  }) === true;
9016
9018
  let themeAnimatedThisFrame = false;
9017
- if (allowContinuousThemeAnimationThisFrame === true &&
9019
+ const canRunThemeAnimationFrame =
9020
+ allowContinuousThemeAnimationThisFrame === true &&
9018
9021
  shouldDeferFullResWebglForNormalCss3dMotion !== true &&
9019
9022
  (isThemeAnimationEnabled || shouldForceGpuParticleAnimation) &&
9020
9023
  isLocalSnapGridOnlyTheme(this) !== true &&
9021
9024
  this.currentThemeObject &&
9022
- typeof this.currentThemeObject.animate === 'function') {
9025
+ typeof this.currentThemeObject.animate === 'function';
9026
+ if (canRunThemeAnimationFrame) {
9023
9027
  const forceThemeCameraUpdate =
9024
9028
  hasNonCameraNavigationForcedUpdate === true ||
9025
9029
  zoomEndedThisFrame === true ||
@@ -9054,6 +9058,10 @@ ${summaryLines.map(line => `<div>${escapeNodeFrameDebugHtml(line)}</div>`).join(
9054
9058
  }
9055
9059
  this._forceThemeAnimationFrame = false;
9056
9060
  }
9061
+ } else if (this._forceThemeAnimationFrame === true &&
9062
+ isBoardLoading !== true &&
9063
+ isInteractiveFrame !== true) {
9064
+ this._forceThemeAnimationFrame = false;
9057
9065
  }
9058
9066
 
9059
9067
  // 7. Render
@@ -9416,8 +9424,10 @@ ${summaryLines.map(line => `<div>${escapeNodeFrameDebugHtml(line)}</div>`).join(
9416
9424
  window.MindMapMultiSelect.hide();
9417
9425
  }
9418
9426
  _profileSection('multiSelect');
9419
- if (renderDebugFlags.enableNodeFrameDebug === true || this._nodeFrameDebugLayer) {
9427
+ if (renderDebugFlags.enableNodeFrameDebug === true) {
9420
9428
  updateNodeFrameDebugLayer(this);
9429
+ } else if (this._nodeFrameDebugLayer) {
9430
+ destroyNodeFrameDebugLayer(this);
9421
9431
  }
9422
9432
  _profileSection('nodeFrameDebug');
9423
9433
 
@@ -9577,8 +9587,33 @@ ${summaryLines.map(line => `<div>${escapeNodeFrameDebugHtml(line)}</div>`).join(
9577
9587
  shouldRefreshPassiveDomTextOverlay === true ||
9578
9588
  shouldFinalizePassiveOverlayLayout === true ||
9579
9589
  shouldAttemptPassiveOverlayCameraFastPath === true;
9590
+ const animationIdleBlockers = {
9591
+ framePerfProbeKeepAlive: shouldCaptureFramePerf === true && FRAME_PERF_PROBE_KEEP_ALIVE_ENABLED === true,
9592
+ boardLoading: isBoardLoading === true,
9593
+ interactiveFrame: isInteractiveFrame === true,
9594
+ update: shouldUpdate === true,
9595
+ themeAnimated: themeAnimatedThisFrame === true,
9596
+ webglFrame: shouldRenderWebglFrame === true,
9597
+ css3dFrame: shouldRenderCss3dFrame === true,
9598
+ textOverlaySync: shouldSyncTextOverlays === true,
9599
+ forceUpdate: Number(this._forceUpdateFrames || 0) > 0,
9600
+ forceThemeAnimation: this._forceThemeAnimationFrame === true,
9601
+ fullResVisibilityReconcile: this._fullResVisibilityReconcilePending === true,
9602
+ pendingNearCssWarmup: hasPendingNearCssWarmup === true,
9603
+ residentDirtyRequiresUpdate: residentDirtyRequiresUpdate === true,
9604
+ residentBandChanging: residentBandChanging === true,
9605
+ overlayV2Dirty: hasOverlayV2DirtyState === true,
9606
+ overlayDirty: this._overlayDirty === true,
9607
+ passiveOverlayRefreshDeferred: this._deferPassiveOverlayRefresh === true,
9608
+ passiveDomTextOverlayRefresh: shouldRefreshPassiveDomTextOverlay === true,
9609
+ passiveOverlayFinalize: shouldFinalizePassiveOverlayLayout === true,
9610
+ passiveOverlayCameraFastPath: shouldAttemptPassiveOverlayCameraFastPath === true
9611
+ };
9612
+ this._lastAnimationIdleBlockers = Object.entries(animationIdleBlockers)
9613
+ .filter(([, value]) => value === true)
9614
+ .map(([key]) => key);
9580
9615
  const shouldParkIdleAnimationLoop =
9581
- shouldCaptureFramePerf !== true &&
9616
+ (shouldCaptureFramePerf !== true || FRAME_PERF_PROBE_KEEP_ALIVE_ENABLED !== true) &&
9582
9617
  isBoardLoading !== true &&
9583
9618
  isInteractiveFrame !== true &&
9584
9619
  shouldUpdate !== true &&
@@ -9596,7 +9631,7 @@ ${summaryLines.map(line => `<div>${escapeNodeFrameDebugHtml(line)}</div>`).join(
9596
9631
  }
9597
9632
  const shouldContinueLowFpsIdleCadence =
9598
9633
  shouldUseAnimationLowFpsFrame === true &&
9599
- shouldCaptureFramePerf !== true &&
9634
+ (shouldCaptureFramePerf !== true || FRAME_PERF_PROBE_KEEP_ALIVE_ENABLED !== true) &&
9600
9635
  isInteractiveFrame !== true &&
9601
9636
  shouldUpdate !== true &&
9602
9637
  hasPendingAnimationWakeWork !== true;
@@ -51,7 +51,7 @@
51
51
  // ▲▲▲ [Usage] ▲▲▲
52
52
 
53
53
  // Procedural line rendering settings
54
- const LOD_RENDERER_BUILD_ID = '20260621-css-image-single-surface-v760';
54
+ const LOD_RENDERER_BUILD_ID = '20260621-render-stability-v763';
55
55
  const DirtyKind = Object.freeze({
56
56
  ResidentFullRebuild: 'resident-full-rebuild',
57
57
  ResidentPatch: 'resident-patch',
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "mainAssemblyName": "MindExecution.Web",
3
3
  "resources": {
4
- "hash": "sha256-OtTww/K4VhDTgTS4mHneBJqBjhiKpOOo+MCUeq0ZDvI=",
4
+ "hash": "sha256-YgJcRsTo1IPvOdBuYHz3Mkio500xFMYOisAGvpYEHik=",
5
5
  "fingerprinting": {
6
6
  "Google.Protobuf.9h59ukbel7.dll": "Google.Protobuf.dll",
7
7
  "Markdig.d1j7v41cl1.dll": "Markdig.dll",
@@ -132,7 +132,7 @@
132
132
  "MindExecution.Plugins.PlanMaster.krn3jgvjpa.dll": "MindExecution.Plugins.PlanMaster.dll",
133
133
  "MindExecution.Plugins.YouTube.5m53srfud6.dll": "MindExecution.Plugins.YouTube.dll",
134
134
  "MindExecution.Shared.rv3rw2h14g.dll": "MindExecution.Shared.dll",
135
- "MindExecution.Web.vb3eqoz4v9.dll": "MindExecution.Web.dll",
135
+ "MindExecution.Web.82k6ktlkfg.dll": "MindExecution.Web.dll",
136
136
  "dotnet.js": "dotnet.js",
137
137
  "dotnet.native.qc8g39g30v.js": "dotnet.native.js",
138
138
  "dotnet.native.boem75ye5i.wasm": "dotnet.native.wasm",
@@ -284,7 +284,7 @@
284
284
  "MindExecution.Plugins.Concept.l9z9tx9svt.dll": "sha256-N/QoILmTilvX5Zo4SCy7ENTCqMzSC6RIEQlEwtxkGPo=",
285
285
  "MindExecution.Plugins.PlanMaster.krn3jgvjpa.dll": "sha256-8IFpm/2fpsWD3syyl58LTSWSGC8PfcrsLdmmSKR1Sq0=",
286
286
  "MindExecution.Shared.rv3rw2h14g.dll": "sha256-ZwT/+Wjs0ZoDe3XZwwDlkPwo7xexhoK1RcyI2rEiywY=",
287
- "MindExecution.Web.vb3eqoz4v9.dll": "sha256-W/K+qUiAlmIiww6SxYbWiLUOla0pMGqpAfr7q+dmBgs="
287
+ "MindExecution.Web.82k6ktlkfg.dll": "sha256-ECPSyJrziGEVhCw8ZUXkRsfTDjWCk676m5yz99b13N4="
288
288
  },
289
289
  "lazyAssembly": {
290
290
  "MindExecution.Plugins.Admin.uuf238xa0h.dll": "sha256-OrCIUack8nSWBBiZK65DlJ3YGM677RAA8cX/oJjhm5c=",
@@ -7,8 +7,8 @@
7
7
  <title>MindExec | Business Execution OS for solo builders</title>
8
8
  <meta name="description" content="MindExec is an AI business execution OS for solo builders who want to turn notes, research, assets, and repeatable execution Skills into revenue-producing work." />
9
9
  <base href="/" />
10
- <link rel="stylesheet" href="_content/MindExecution.Shared/css/app.css?v=20260621-css-image-single-surface-v760" />
11
- <link rel="stylesheet" href="_content/MindExecution.Shared/css/mind-map-overrides.css?v=20260621-css-image-single-surface-v760" />
10
+ <link rel="stylesheet" href="_content/MindExecution.Shared/css/app.css?v=20260621-render-stability-v763" />
11
+ <link rel="stylesheet" href="_content/MindExecution.Shared/css/mind-map-overrides.css?v=20260621-render-stability-v763" />
12
12
  <!-- ?占썩뼹??Font Awesome (local) ?占썩뼹??-->
13
13
  <link rel="stylesheet" href="_content/MindExecution.Shared/lib/font-awesome/css/all.min.css" />
14
14
  <!-- ?占썩뼯??-->
@@ -579,7 +579,7 @@
579
579
  }
580
580
 
581
581
  const base = '_content/MindExecution.Shared/js/';
582
- const scriptVersion = '20260621-css-image-single-surface-v760';
582
+ const scriptVersion = '20260621-render-stability-v763';
583
583
  const scriptUrl = (script) => `${base}${script}?v=${scriptVersion}`;
584
584
  console.log(`[Script Loader] Shared JS version: ${scriptVersion}`);
585
585
  const criticalScripts = [
@@ -1,5 +1,5 @@
1
1
  self.assetsManifest = {
2
- "version": "A7baj8vz",
2
+ "version": "s6vAMMod",
3
3
  "assets": [
4
4
  {
5
5
  "hash": "sha256-+CSYMcqLNTsq3VnH11jgYyOCCdxvHzL74CBmo4sCmMU=",
@@ -78,7 +78,7 @@
78
78
  "url": "_content/MindExecution.Shared/js/marked.min.js"
79
79
  },
80
80
  {
81
- "hash": "sha256-b2u6cSJGIXDsWA8V4jbeQJGX+azC197EMCEBJzyJwN0=",
81
+ "hash": "sha256-MmV3LFXO7RU4wz52DZSBkgbMKUyqyGwR/c1J9zzdLgY=",
82
82
  "url": "_content/MindExecution.Shared/js/mind-map-core.js"
83
83
  },
84
84
  {
@@ -114,7 +114,7 @@
114
114
  "url": "_content/MindExecution.Shared/js/mind-map-lod-plan-worker.js"
115
115
  },
116
116
  {
117
- "hash": "sha256-4Eptn15wU04ThuQtEErazlaA5Izn+rdSf7VgdQsmBYA=",
117
+ "hash": "sha256-/0kJmm1KxHIb6qGeLON8gCM3BkPWF1xOXObszL76GCo=",
118
118
  "url": "_content/MindExecution.Shared/js/mind-map-lod-renderer.js"
119
119
  },
120
120
  {
@@ -446,8 +446,8 @@
446
446
  "url": "_framework/MindExecution.Shared.rv3rw2h14g.dll"
447
447
  },
448
448
  {
449
- "hash": "sha256-W/K+qUiAlmIiww6SxYbWiLUOla0pMGqpAfr7q+dmBgs=",
450
- "url": "_framework/MindExecution.Web.vb3eqoz4v9.dll"
449
+ "hash": "sha256-ECPSyJrziGEVhCw8ZUXkRsfTDjWCk676m5yz99b13N4=",
450
+ "url": "_framework/MindExecution.Web.82k6ktlkfg.dll"
451
451
  },
452
452
  {
453
453
  "hash": "sha256-IsZJ91/OW+fHzNqIgEc7Y072ns8z9dGritiSyvR9Wgc=",
@@ -770,7 +770,7 @@
770
770
  "url": "_framework/Websocket.Client.vapounvmnl.dll"
771
771
  },
772
772
  {
773
- "hash": "sha256-O8em1XbCRLjEd/hcubu7Ryw+oGv+jYqaVmK41A5y5zM=",
773
+ "hash": "sha256-/y7nWgvIiQwrfUfw4xVQPgcy9m78NRMdMq8TbflUDDI=",
774
774
  "url": "_framework/blazor.boot.json"
775
775
  },
776
776
  {
@@ -834,7 +834,7 @@
834
834
  "url": "image-manifest.json"
835
835
  },
836
836
  {
837
- "hash": "sha256-Mx0LK7PCZgmIE/7IpOtqDjQWG6xfhcEJirhlGrrkwsQ=",
837
+ "hash": "sha256-mu0eIN8/qCTH6MtYeCSdmg14fMn6qGbY5pWQIxx+9BY=",
838
838
  "url": "index.html"
839
839
  },
840
840
  {
@@ -1,4 +1,4 @@
1
- /* Manifest version: A7baj8vz */
1
+ /* Manifest version: s6vAMMod */
2
2
  // Hosted deployments should prefer the network over stale offline caches.
3
3
  // This service worker immediately clears old Blazor offline caches and unregisters itself.
4
4