byterover-cli 3.10.2 → 3.11.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (90) hide show
  1. package/README.md +4 -2
  2. package/dist/agent/core/domain/llm/registry.d.ts +12 -0
  3. package/dist/agent/core/domain/llm/registry.js +49 -0
  4. package/dist/agent/core/domain/llm/types.d.ts +6 -0
  5. package/dist/agent/core/interfaces/i-content-generator.d.ts +8 -0
  6. package/dist/agent/infra/llm/agent-llm-service.js +18 -6
  7. package/dist/agent/infra/llm/context/context-manager.d.ts +4 -1
  8. package/dist/agent/infra/llm/context/context-manager.js +5 -1
  9. package/dist/agent/infra/llm/generators/ai-sdk-content-generator.d.ts +13 -0
  10. package/dist/agent/infra/llm/generators/ai-sdk-content-generator.js +19 -6
  11. package/dist/agent/infra/llm/generators/ai-sdk-message-converter.js +16 -4
  12. package/dist/agent/infra/llm/generators/byterover-content-generator.d.ts +1 -0
  13. package/dist/agent/infra/llm/generators/byterover-content-generator.js +4 -1
  14. package/dist/agent/infra/llm/model-capabilities.d.ts +2 -1
  15. package/dist/agent/infra/llm/model-capabilities.js +6 -4
  16. package/dist/agent/infra/llm/providers/anthropic.js +2 -0
  17. package/dist/agent/infra/llm/providers/deepseek.d.ts +10 -0
  18. package/dist/agent/infra/llm/providers/deepseek.js +33 -0
  19. package/dist/agent/infra/llm/providers/glm-coding-plan.d.ts +9 -0
  20. package/dist/agent/infra/llm/providers/glm-coding-plan.js +32 -0
  21. package/dist/agent/infra/llm/providers/index.js +4 -0
  22. package/dist/agent/infra/llm/providers/openrouter.js +2 -0
  23. package/dist/oclif/commands/query.js +7 -1
  24. package/dist/oclif/lib/task-client.d.ts +9 -0
  25. package/dist/oclif/lib/task-client.js +11 -1
  26. package/dist/server/core/domain/entities/provider-registry.js +26 -0
  27. package/dist/server/infra/daemon/brv-server.js +4 -0
  28. package/dist/server/infra/http/provider-model-fetcher-registry.js +5 -0
  29. package/dist/server/infra/http/provider-model-fetchers.js +54 -27
  30. package/dist/server/infra/mcp/mcp-server.d.ts +6 -0
  31. package/dist/server/infra/mcp/mcp-server.js +15 -3
  32. package/dist/server/infra/mcp/tools/brv-curate-tool.d.ts +1 -1
  33. package/dist/server/infra/mcp/tools/brv-curate-tool.js +4 -2
  34. package/dist/server/infra/mcp/tools/brv-query-tool.d.ts +1 -1
  35. package/dist/server/infra/mcp/tools/brv-query-tool.js +3 -2
  36. package/dist/server/infra/mcp/tools/drift-footer.d.ts +8 -0
  37. package/dist/server/infra/mcp/tools/drift-footer.js +16 -0
  38. package/dist/server/infra/process/connection-coordinator.d.ts +7 -0
  39. package/dist/server/infra/process/connection-coordinator.js +5 -0
  40. package/dist/server/infra/process/query-log-handler.d.ts +6 -0
  41. package/dist/server/infra/process/query-log-handler.js +23 -0
  42. package/dist/server/infra/process/transport-handlers.d.ts +5 -0
  43. package/dist/server/infra/process/transport-handlers.js +1 -0
  44. package/dist/tui/components/header.js +7 -1
  45. package/dist/tui/components/logo.d.ts +6 -0
  46. package/dist/tui/components/logo.js +18 -5
  47. package/dist/tui/features/transport/components/transport-initializer.js +8 -2
  48. package/dist/tui/stores/transport-store.d.ts +8 -0
  49. package/dist/tui/stores/transport-store.js +2 -0
  50. package/dist/webui/assets/index--sXE__bc.css +1 -0
  51. package/dist/webui/assets/{index-thSZZahh.js → index-Bkkx961b.js} +63 -63
  52. package/dist/webui/index.html +2 -2
  53. package/dist/webui/sw.js +1 -1
  54. package/dist/webui/workbox-9c191d2f.js +1 -0
  55. package/node_modules/@campfirein/brv-transport-client/dist/core/interfaces/i-client.d.ts +14 -0
  56. package/node_modules/@campfirein/brv-transport-client/dist/core/interfaces/i-client.d.ts.map +1 -1
  57. package/node_modules/@campfirein/brv-transport-client/dist/index.d.ts +1 -0
  58. package/node_modules/@campfirein/brv-transport-client/dist/index.d.ts.map +1 -1
  59. package/node_modules/@campfirein/brv-transport-client/dist/index.js +2 -0
  60. package/node_modules/@campfirein/brv-transport-client/dist/index.js.map +1 -1
  61. package/node_modules/@campfirein/brv-transport-client/dist/infra/client-factory.d.ts.map +1 -1
  62. package/node_modules/@campfirein/brv-transport-client/dist/infra/client-factory.js +5 -0
  63. package/node_modules/@campfirein/brv-transport-client/dist/infra/client-factory.js.map +1 -1
  64. package/node_modules/@campfirein/brv-transport-client/dist/infra/daemon-discovery-sync.d.ts +9 -7
  65. package/node_modules/@campfirein/brv-transport-client/dist/infra/daemon-discovery-sync.d.ts.map +1 -1
  66. package/node_modules/@campfirein/brv-transport-client/dist/infra/daemon-discovery-sync.js +11 -9
  67. package/node_modules/@campfirein/brv-transport-client/dist/infra/daemon-discovery-sync.js.map +1 -1
  68. package/node_modules/@campfirein/brv-transport-client/dist/infra/daemon-health.d.ts +23 -6
  69. package/node_modules/@campfirein/brv-transport-client/dist/infra/daemon-health.d.ts.map +1 -1
  70. package/node_modules/@campfirein/brv-transport-client/dist/infra/daemon-health.js +11 -5
  71. package/node_modules/@campfirein/brv-transport-client/dist/infra/daemon-health.js.map +1 -1
  72. package/node_modules/@campfirein/brv-transport-client/dist/infra/daemon-spawner.js +7 -7
  73. package/node_modules/@campfirein/brv-transport-client/dist/infra/daemon-spawner.js.map +1 -1
  74. package/node_modules/@campfirein/brv-transport-client/dist/infra/schemas/schemas.d.ts +7 -0
  75. package/node_modules/@campfirein/brv-transport-client/dist/infra/schemas/schemas.d.ts.map +1 -1
  76. package/node_modules/@campfirein/brv-transport-client/dist/infra/schemas/schemas.js +5 -0
  77. package/node_modules/@campfirein/brv-transport-client/dist/infra/schemas/schemas.js.map +1 -1
  78. package/node_modules/@campfirein/brv-transport-client/dist/infra/socket-io-client.d.ts +8 -0
  79. package/node_modules/@campfirein/brv-transport-client/dist/infra/socket-io-client.d.ts.map +1 -1
  80. package/node_modules/@campfirein/brv-transport-client/dist/infra/socket-io-client.js +15 -0
  81. package/node_modules/@campfirein/brv-transport-client/dist/infra/socket-io-client.js.map +1 -1
  82. package/node_modules/@campfirein/brv-transport-client/dist/infra/version-utils.d.ts +35 -0
  83. package/node_modules/@campfirein/brv-transport-client/dist/infra/version-utils.d.ts.map +1 -0
  84. package/node_modules/@campfirein/brv-transport-client/dist/infra/version-utils.js +59 -0
  85. package/node_modules/@campfirein/brv-transport-client/dist/infra/version-utils.js.map +1 -0
  86. package/node_modules/@campfirein/brv-transport-client/package.json +1 -1
  87. package/oclif.manifest.json +206 -206
  88. package/package.json +4 -4
  89. package/dist/webui/assets/index-CvcqpMYn.css +0 -1
  90. package/dist/webui/workbox-8c29f6e4.js +0 -1
@@ -5,8 +5,8 @@
5
5
  <meta name="viewport" content="width=device-width, initial-scale=1.0" />
6
6
  <link rel="icon" type="image/svg+xml" href="/assets/logo-DJvq-PY2.svg" />
7
7
  <title>ByteRover - Local</title>
8
- <script type="module" crossorigin src="/assets/index-thSZZahh.js"></script>
9
- <link rel="stylesheet" crossorigin href="/assets/index-CvcqpMYn.css">
8
+ <script type="module" crossorigin src="/assets/index-Bkkx961b.js"></script>
9
+ <link rel="stylesheet" crossorigin href="/assets/index--sXE__bc.css">
10
10
  <link rel="manifest" href="/manifest.webmanifest"><script id="vite-plugin-pwa:register-sw" src="/registerSW.js"></script></head>
11
11
  <body>
12
12
  <div id="root"></div>
package/dist/webui/sw.js CHANGED
@@ -1 +1 @@
1
- if(!self.define){let e,s={};const i=(i,n)=>(i=new URL(i+".js",n).href,s[i]||new Promise(s=>{if("document"in self){const e=document.createElement("script");e.src=i,e.onload=s,document.head.appendChild(e)}else e=i,importScripts(i),s()}).then(()=>{let e=s[i];if(!e)throw new Error(`Module ${i} didn’t register its module`);return e}));self.define=(n,r)=>{const o=e||("document"in self?document.currentScript.src:"")||location.href;if(s[o])return;let l={};const t=e=>i(e,o),u={module:{uri:o},exports:l,require:t};s[o]=Promise.all(n.map(e=>u[e]||t(e))).then(e=>(r(...e),l))}}define(["./workbox-8c29f6e4"],function(e){"use strict";self.skipWaiting(),e.clientsClaim(),e.precacheAndRoute([{url:"registerSW.js",revision:"1872c500de691dce40960bb85481de07"},{url:"index.html",revision:"fd52efd95e39aa48c4d7f3f41db57aec"},{url:"assets/qoder-connector-D9_pSbd_.svg",revision:null},{url:"assets/not-found-N0eqX-Lm.svg",revision:null},{url:"assets/minimax-provider-BqW25BvT.svg",revision:null},{url:"assets/logo-byterover-DB7H7faH.svg",revision:null},{url:"assets/logo-DJvq-PY2.svg",revision:null},{url:"assets/index-thSZZahh.js",revision:null},{url:"assets/index-CvcqpMYn.css",revision:null},{url:"assets/deepinfra-provider-C9hH_wkN.svg",revision:null},{url:"manifest.webmanifest",revision:"206756fc9381c93a69046bce7b028d21"}],{}),e.cleanupOutdatedCaches(),e.registerRoute(new e.NavigationRoute(e.createHandlerBoundToURL("/index.html")))});
1
+ if(!self.define){let e,s={};const i=(i,r)=>(i=new URL(i+".js",r).href,s[i]||new Promise(s=>{if("document"in self){const e=document.createElement("script");e.src=i,e.onload=s,document.head.appendChild(e)}else e=i,importScripts(i),s()}).then(()=>{let e=s[i];if(!e)throw new Error(`Module ${i} didn’t register its module`);return e}));self.define=(r,n)=>{const o=e||("document"in self?document.currentScript.src:"")||location.href;if(s[o])return;let l={};const t=e=>i(e,o),u={module:{uri:o},exports:l,require:t};s[o]=Promise.all(r.map(e=>u[e]||t(e))).then(e=>(n(...e),l))}}define(["./workbox-9c191d2f"],function(e){"use strict";self.skipWaiting(),e.clientsClaim(),e.precacheAndRoute([{url:"registerSW.js",revision:"1872c500de691dce40960bb85481de07"},{url:"index.html",revision:"f2089baafc0663f035e1da2b6dbb803b"},{url:"assets/qoder-connector-D9_pSbd_.svg",revision:null},{url:"assets/not-found-N0eqX-Lm.svg",revision:null},{url:"assets/minimax-provider-BqW25BvT.svg",revision:null},{url:"assets/logo-byterover-DB7H7faH.svg",revision:null},{url:"assets/logo-DJvq-PY2.svg",revision:null},{url:"assets/index-Bkkx961b.js",revision:null},{url:"assets/index--sXE__bc.css",revision:null},{url:"assets/deepinfra-provider-C9hH_wkN.svg",revision:null},{url:"manifest.webmanifest",revision:"206756fc9381c93a69046bce7b028d21"}],{}),e.cleanupOutdatedCaches(),e.registerRoute(new e.NavigationRoute(e.createHandlerBoundToURL("/index.html")))});
@@ -0,0 +1 @@
1
+ define(["exports"],function(t){"use strict";try{self["workbox:core:7.4.0"]&&_()}catch(t){}const e=(t,...e)=>{let s=t;return e.length>0&&(s+=` :: ${JSON.stringify(e)}`),s};class s extends Error{constructor(t,s){super(e(t,s)),this.name=t,this.details=s}}try{self["workbox:routing:7.4.0"]&&_()}catch(t){}const n=t=>t&&"object"==typeof t?t:{handle:t};class i{constructor(t,e,s="GET"){this.handler=n(e),this.match=t,this.method=s}setCatchHandler(t){this.catchHandler=n(t)}}class r extends i{constructor(t,e,s){super(({url:e})=>{const s=t.exec(e.href);if(s&&(e.origin===location.origin||0===s.index))return s.slice(1)},e,s)}}class o{constructor(){this.t=new Map,this.i=new Map}get routes(){return this.t}addFetchListener(){self.addEventListener("fetch",t=>{const{request:e}=t,s=this.handleRequest({request:e,event:t});s&&t.respondWith(s)})}addCacheListener(){self.addEventListener("message",t=>{if(t.data&&"CACHE_URLS"===t.data.type){const{payload:e}=t.data,s=Promise.all(e.urlsToCache.map(e=>{"string"==typeof e&&(e=[e]);const s=new Request(...e);return this.handleRequest({request:s,event:t})}));t.waitUntil(s),t.ports&&t.ports[0]&&s.then(()=>t.ports[0].postMessage(!0))}})}handleRequest({request:t,event:e}){const s=new URL(t.url,location.href);if(!s.protocol.startsWith("http"))return;const n=s.origin===location.origin,{params:i,route:r}=this.findMatchingRoute({event:e,request:t,sameOrigin:n,url:s});let o=r&&r.handler;const c=t.method;if(!o&&this.i.has(c)&&(o=this.i.get(c)),!o)return;let a;try{a=o.handle({url:s,request:t,event:e,params:i})}catch(t){a=Promise.reject(t)}const h=r&&r.catchHandler;return a instanceof Promise&&(this.o||h)&&(a=a.catch(async n=>{if(h)try{return await h.handle({url:s,request:t,event:e,params:i})}catch(t){t instanceof Error&&(n=t)}if(this.o)return this.o.handle({url:s,request:t,event:e});throw n})),a}findMatchingRoute({url:t,sameOrigin:e,request:s,event:n}){const i=this.t.get(s.method)||[];for(const r of i){let i;const o=r.match({url:t,sameOrigin:e,request:s,event:n});if(o)return i=o,(Array.isArray(i)&&0===i.length||o.constructor===Object&&0===Object.keys(o).length||"boolean"==typeof o)&&(i=void 0),{route:r,params:i}}return{}}setDefaultHandler(t,e="GET"){this.i.set(e,n(t))}setCatchHandler(t){this.o=n(t)}registerRoute(t){this.t.has(t.method)||this.t.set(t.method,[]),this.t.get(t.method).push(t)}unregisterRoute(t){if(!this.t.has(t.method))throw new s("unregister-route-but-not-found-with-method",{method:t.method});const e=this.t.get(t.method).indexOf(t);if(!(e>-1))throw new s("unregister-route-route-not-registered");this.t.get(t.method).splice(e,1)}}let c;const a=()=>(c||(c=new o,c.addFetchListener(),c.addCacheListener()),c);function h(t,e,n){let o;if("string"==typeof t){const s=new URL(t,location.href);o=new i(({url:t})=>t.href===s.href,e,n)}else if(t instanceof RegExp)o=new r(t,e,n);else if("function"==typeof t)o=new i(t,e,n);else{if(!(t instanceof i))throw new s("unsupported-route-type",{moduleName:"workbox-routing",funcName:"registerRoute",paramName:"capture"});o=t}return a().registerRoute(o),o}const u={googleAnalytics:"googleAnalytics",precache:"precache-v2",prefix:"workbox",runtime:"runtime",suffix:"undefined"!=typeof registration?registration.scope:""},l=t=>[u.prefix,t,u.suffix].filter(t=>t&&t.length>0).join("-"),f=t=>t||l(u.precache),w=t=>t||l(u.runtime);function d(t,e){const s=e();return t.waitUntil(s),s}try{self["workbox:precaching:7.4.0"]&&_()}catch(t){}function p(t){if(!t)throw new s("add-to-cache-list-unexpected-type",{entry:t});if("string"==typeof t){const e=new URL(t,location.href);return{cacheKey:e.href,url:e.href}}const{revision:e,url:n}=t;if(!n)throw new s("add-to-cache-list-unexpected-type",{entry:t});if(!e){const t=new URL(n,location.href);return{cacheKey:t.href,url:t.href}}const i=new URL(n,location.href),r=new URL(n,location.href);return i.searchParams.set("__WB_REVISION__",e),{cacheKey:i.href,url:r.href}}class y{constructor(){this.updatedURLs=[],this.notUpdatedURLs=[],this.handlerWillStart=async({request:t,state:e})=>{e&&(e.originalRequest=t)},this.cachedResponseWillBeUsed=async({event:t,state:e,cachedResponse:s})=>{if("install"===t.type&&e&&e.originalRequest&&e.originalRequest instanceof Request){const t=e.originalRequest.url;s?this.notUpdatedURLs.push(t):this.updatedURLs.push(t)}return s}}}class g{constructor({precacheController:t}){this.cacheKeyWillBeUsed=async({request:t,params:e})=>{const s=(null==e?void 0:e.cacheKey)||this.h.getCacheKeyForURL(t.url);return s?new Request(s,{headers:t.headers}):t},this.h=t}}let R;async function m(t,e){let n=null;if(t.url){n=new URL(t.url).origin}if(n!==self.location.origin)throw new s("cross-origin-copy-response",{origin:n});const i=t.clone(),r={headers:new Headers(i.headers),status:i.status,statusText:i.statusText},o=function(){if(void 0===R){const t=new Response("");if("body"in t)try{new Response(t.body),R=!0}catch(t){R=!1}R=!1}return R}()?i.body:await i.blob();return new Response(o,r)}function v(t,e){const s=new URL(t);for(const t of e)s.searchParams.delete(t);return s.href}class q{constructor(){this.promise=new Promise((t,e)=>{this.resolve=t,this.reject=e})}}const U=new Set;try{self["workbox:strategies:7.4.0"]&&_()}catch(t){}function L(t){return"string"==typeof t?new Request(t):t}class b{constructor(t,e){this.u={},Object.assign(this,e),this.event=e.event,this.l=t,this.p=new q,this.R=[],this.m=[...t.plugins],this.v=new Map;for(const t of this.m)this.v.set(t,{});this.event.waitUntil(this.p.promise)}async fetch(t){const{event:e}=this;let n=L(t);if("navigate"===n.mode&&e instanceof FetchEvent&&e.preloadResponse){const t=await e.preloadResponse;if(t)return t}const i=this.hasCallback("fetchDidFail")?n.clone():null;try{for(const t of this.iterateCallbacks("requestWillFetch"))n=await t({request:n.clone(),event:e})}catch(t){if(t instanceof Error)throw new s("plugin-error-request-will-fetch",{thrownErrorMessage:t.message})}const r=n.clone();try{let t;t=await fetch(n,"navigate"===n.mode?void 0:this.l.fetchOptions);for(const s of this.iterateCallbacks("fetchDidSucceed"))t=await s({event:e,request:r,response:t});return t}catch(t){throw i&&await this.runCallbacks("fetchDidFail",{error:t,event:e,originalRequest:i.clone(),request:r.clone()}),t}}async fetchAndCachePut(t){const e=await this.fetch(t),s=e.clone();return this.waitUntil(this.cachePut(t,s)),e}async cacheMatch(t){const e=L(t);let s;const{cacheName:n,matchOptions:i}=this.l,r=await this.getCacheKey(e,"read"),o=Object.assign(Object.assign({},i),{cacheName:n});s=await caches.match(r,o);for(const t of this.iterateCallbacks("cachedResponseWillBeUsed"))s=await t({cacheName:n,matchOptions:i,cachedResponse:s,request:r,event:this.event})||void 0;return s}async cachePut(t,e){const n=L(t);var i;await(i=0,new Promise(t=>setTimeout(t,i)));const r=await this.getCacheKey(n,"write");if(!e)throw new s("cache-put-with-no-response",{url:(o=r.url,new URL(String(o),location.href).href.replace(new RegExp(`^${location.origin}`),""))});var o;const c=await this.q(e);if(!c)return!1;const{cacheName:a,matchOptions:h}=this.l,u=await self.caches.open(a),l=this.hasCallback("cacheDidUpdate"),f=l?await async function(t,e,s,n){const i=v(e.url,s);if(e.url===i)return t.match(e,n);const r=Object.assign(Object.assign({},n),{ignoreSearch:!0}),o=await t.keys(e,r);for(const e of o)if(i===v(e.url,s))return t.match(e,n)}(u,r.clone(),["__WB_REVISION__"],h):null;try{await u.put(r,l?c.clone():c)}catch(t){if(t instanceof Error)throw"QuotaExceededError"===t.name&&await async function(){for(const t of U)await t()}(),t}for(const t of this.iterateCallbacks("cacheDidUpdate"))await t({cacheName:a,oldResponse:f,newResponse:c.clone(),request:r,event:this.event});return!0}async getCacheKey(t,e){const s=`${t.url} | ${e}`;if(!this.u[s]){let n=t;for(const t of this.iterateCallbacks("cacheKeyWillBeUsed"))n=L(await t({mode:e,request:n,event:this.event,params:this.params}));this.u[s]=n}return this.u[s]}hasCallback(t){for(const e of this.l.plugins)if(t in e)return!0;return!1}async runCallbacks(t,e){for(const s of this.iterateCallbacks(t))await s(e)}*iterateCallbacks(t){for(const e of this.l.plugins)if("function"==typeof e[t]){const s=this.v.get(e),n=n=>{const i=Object.assign(Object.assign({},n),{state:s});return e[t](i)};yield n}}waitUntil(t){return this.R.push(t),t}async doneWaiting(){for(;this.R.length;){const t=this.R.splice(0),e=(await Promise.allSettled(t)).find(t=>"rejected"===t.status);if(e)throw e.reason}}destroy(){this.p.resolve(null)}async q(t){let e=t,s=!1;for(const t of this.iterateCallbacks("cacheWillUpdate"))if(e=await t({request:this.request,response:e,event:this.event})||void 0,s=!0,!e)break;return s||e&&200!==e.status&&(e=void 0),e}}class C{constructor(t={}){this.cacheName=w(t.cacheName),this.plugins=t.plugins||[],this.fetchOptions=t.fetchOptions,this.matchOptions=t.matchOptions}handle(t){const[e]=this.handleAll(t);return e}handleAll(t){t instanceof FetchEvent&&(t={event:t,request:t.request});const e=t.event,s="string"==typeof t.request?new Request(t.request):t.request,n="params"in t?t.params:void 0,i=new b(this,{event:e,request:s,params:n}),r=this.U(i,s,e);return[r,this.L(r,i,s,e)]}async U(t,e,n){let i;await t.runCallbacks("handlerWillStart",{event:n,request:e});try{if(i=await this._(e,t),!i||"error"===i.type)throw new s("no-response",{url:e.url})}catch(s){if(s instanceof Error)for(const r of t.iterateCallbacks("handlerDidError"))if(i=await r({error:s,event:n,request:e}),i)break;if(!i)throw s}for(const s of t.iterateCallbacks("handlerWillRespond"))i=await s({event:n,request:e,response:i});return i}async L(t,e,s,n){let i,r;try{i=await t}catch(r){}try{await e.runCallbacks("handlerDidRespond",{event:n,request:s,response:i}),await e.doneWaiting()}catch(t){t instanceof Error&&(r=t)}if(await e.runCallbacks("handlerDidComplete",{event:n,request:s,response:i,error:r}),e.destroy(),r)throw r}}class E extends C{constructor(t={}){t.cacheName=f(t.cacheName),super(t),this.C=!1!==t.fallbackToNetwork,this.plugins.push(E.copyRedirectedCacheableResponsesPlugin)}async _(t,e){const s=await e.cacheMatch(t);return s||(e.event&&"install"===e.event.type?await this.O(t,e):await this.N(t,e))}async N(t,e){let n;const i=e.params||{};if(!this.C)throw new s("missing-precache-entry",{cacheName:this.cacheName,url:t.url});{const s=i.integrity,r=t.integrity,o=!r||r===s;n=await e.fetch(new Request(t,{integrity:"no-cors"!==t.mode?r||s:void 0})),s&&o&&"no-cors"!==t.mode&&(this.P(),await e.cachePut(t,n.clone()))}return n}async O(t,e){this.P();const n=await e.fetch(t);if(!await e.cachePut(t,n.clone()))throw new s("bad-precaching-response",{url:t.url,status:n.status});return n}P(){let t=null,e=0;for(const[s,n]of this.plugins.entries())n!==E.copyRedirectedCacheableResponsesPlugin&&(n===E.defaultPrecacheCacheabilityPlugin&&(t=s),n.cacheWillUpdate&&e++);0===e?this.plugins.push(E.defaultPrecacheCacheabilityPlugin):e>1&&null!==t&&this.plugins.splice(t,1)}}E.defaultPrecacheCacheabilityPlugin={cacheWillUpdate:async({response:t})=>!t||t.status>=400?null:t},E.copyRedirectedCacheableResponsesPlugin={cacheWillUpdate:async({response:t})=>t.redirected?await m(t):t};class O{constructor({cacheName:t,plugins:e=[],fallbackToNetwork:s=!0}={}){this.j=new Map,this.k=new Map,this.K=new Map,this.l=new E({cacheName:f(t),plugins:[...e,new g({precacheController:this})],fallbackToNetwork:s}),this.install=this.install.bind(this),this.activate=this.activate.bind(this)}get strategy(){return this.l}precache(t){this.addToCacheList(t),this.T||(self.addEventListener("install",this.install),self.addEventListener("activate",this.activate),this.T=!0)}addToCacheList(t){const e=[];for(const n of t){"string"==typeof n?e.push(n):n&&void 0===n.revision&&e.push(n.url);const{cacheKey:t,url:i}=p(n),r="string"!=typeof n&&n.revision?"reload":"default";if(this.j.has(i)&&this.j.get(i)!==t)throw new s("add-to-cache-list-conflicting-entries",{firstEntry:this.j.get(i),secondEntry:t});if("string"!=typeof n&&n.integrity){if(this.K.has(t)&&this.K.get(t)!==n.integrity)throw new s("add-to-cache-list-conflicting-integrities",{url:i});this.K.set(t,n.integrity)}if(this.j.set(i,t),this.k.set(i,r),e.length>0){const t=`Workbox is precaching URLs without revision info: ${e.join(", ")}\nThis is generally NOT safe. Learn more at https://bit.ly/wb-precache`;console.warn(t)}}}install(t){return d(t,async()=>{const e=new y;this.strategy.plugins.push(e);for(const[e,s]of this.j){const n=this.K.get(s),i=this.k.get(e),r=new Request(e,{integrity:n,cache:i,credentials:"same-origin"});await Promise.all(this.strategy.handleAll({params:{cacheKey:s},request:r,event:t}))}const{updatedURLs:s,notUpdatedURLs:n}=e;return{updatedURLs:s,notUpdatedURLs:n}})}activate(t){return d(t,async()=>{const t=await self.caches.open(this.strategy.cacheName),e=await t.keys(),s=new Set(this.j.values()),n=[];for(const i of e)s.has(i.url)||(await t.delete(i),n.push(i.url));return{deletedURLs:n}})}getURLsToCacheKeys(){return this.j}getCachedURLs(){return[...this.j.keys()]}getCacheKeyForURL(t){const e=new URL(t,location.href);return this.j.get(e.href)}getIntegrityForCacheKey(t){return this.K.get(t)}async matchPrecache(t){const e=t instanceof Request?t.url:t,s=this.getCacheKeyForURL(e);if(s){return(await self.caches.open(this.strategy.cacheName)).match(s)}}createHandlerBoundToURL(t){const e=this.getCacheKeyForURL(t);if(!e)throw new s("non-precached-url",{url:t});return s=>(s.request=new Request(t),s.params=Object.assign({cacheKey:e},s.params),this.strategy.handle(s))}}let x;const N=()=>(x||(x=new O),x);class P extends i{constructor(t,e){super(({request:s})=>{const n=t.getURLsToCacheKeys();for(const i of function*(t,{ignoreURLParametersMatching:e=[/^utm_/,/^fbclid$/],directoryIndex:s="index.html",cleanURLs:n=!0,urlManipulation:i}={}){const r=new URL(t,location.href);r.hash="",yield r.href;const o=function(t,e=[]){for(const s of[...t.searchParams.keys()])e.some(t=>t.test(s))&&t.searchParams.delete(s);return t}(r,e);if(yield o.href,s&&o.pathname.endsWith("/")){const t=new URL(o.href);t.pathname+=s,yield t.href}if(n){const t=new URL(o.href);t.pathname+=".html",yield t.href}if(i){const t=i({url:r});for(const e of t)yield e.href}}(s.url,e)){const e=n.get(i);if(e){return{cacheKey:e,integrity:t.getIntegrityForCacheKey(e)}}}},t.strategy)}}t.NavigationRoute=class extends i{constructor(t,{allowlist:e=[/./],denylist:s=[]}={}){super(t=>this.W(t),t),this.M=e,this.S=s}W({url:t,request:e}){if(e&&"navigate"!==e.mode)return!1;const s=t.pathname+t.search;for(const t of this.S)if(t.test(s))return!1;return!!this.M.some(t=>t.test(s))}},t.cleanupOutdatedCaches=function(){self.addEventListener("activate",t=>{const e=f();t.waitUntil((async(t,e="-precache-")=>{const s=(await self.caches.keys()).filter(s=>s.includes(e)&&s.includes(self.registration.scope)&&s!==t);return await Promise.all(s.map(t=>self.caches.delete(t))),s})(e).then(t=>{}))})},t.clientsClaim=function(){self.addEventListener("activate",()=>self.clients.claim())},t.createHandlerBoundToURL=function(t){return N().createHandlerBoundToURL(t)},t.precacheAndRoute=function(t,e){!function(t){N().precache(t)}(t),function(t){const e=N();h(new P(e,t))}(e)},t.registerRoute=h});
@@ -45,6 +45,20 @@ export interface ITransportClient {
45
45
  * @returns Client ID or undefined if not connected
46
46
  */
47
47
  getClientId(): string | undefined;
48
+ /**
49
+ * Returns the daemon version reported in the most recent `client:register`
50
+ * ack. Refreshed on every reconnect, so consumers (e.g. drift indicators
51
+ * in the TUI header or MCP tool footers) always reflect the running daemon.
52
+ *
53
+ * @returns Daemon version, or undefined if no ack has been received or the
54
+ * daemon is older than the version-aware build.
55
+ *
56
+ * @remarks Optional on the interface so older external implementations
57
+ * (custom transports, test doubles) keep compiling. The shipped
58
+ * `TransportClient` implements it; consumers should use `?.()` to tolerate
59
+ * missing implementations.
60
+ */
61
+ getDaemonVersion?(): string | undefined;
48
62
  /**
49
63
  * Returns the current connection state.
50
64
  */
@@ -1 +1 @@
1
- {"version":3,"file":"i-client.d.ts","sourceRoot":"","sources":["../../../src/core/interfaces/i-client.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAC,eAAe,EAAE,sBAAsB,EAAC,MAAM,yBAAyB,CAAA;AACpF,OAAO,KAAK,EAAC,YAAY,EAAC,MAAM,yBAAyB,CAAA;AAGzD,YAAY,EAAC,eAAe,EAAE,sBAAsB,EAAC,MAAM,yBAAyB,CAAA;AACpF,YAAY,EAAC,YAAY,EAAC,MAAM,yBAAyB,CAAA;AAEzD;;GAEG;AACH,MAAM,MAAM,cAAc,GAAG;IAC3B;;;OAGG;IACH,QAAQ,CAAC,OAAO,CAAC,EAAE,MAAM,CAAA;CAC1B,CAAA;AAED;;;;;;;;;;;;;;;GAeG;AACH,MAAM,WAAW,gBAAgB;IAC/B;;;;OAIG;IACH,OAAO,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAA;IAEnC;;;OAGG;IACH,UAAU,IAAI,OAAO,CAAC,IAAI,CAAC,CAAA;IAE3B;;;OAGG;IACH,WAAW,IAAI,MAAM,GAAG,SAAS,CAAA;IAEjC;;OAEG;IACH,QAAQ,IAAI,eAAe,CAAA;IAE3B;;;;;OAKG;IACH,WAAW,CAAC,SAAS,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,CAAA;IAEjD;;;;;;OAMG;IACH,QAAQ,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAA;IAErC;;;;;;;;;;;;OAYG;IACH,SAAS,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAA;IAEtC;;;;;;;;;;;;;OAaG;IACH,EAAE,CAAC,CAAC,GAAG,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,YAAY,CAAC,CAAC,CAAC,GAAG,MAAM,IAAI,CAAA;IAEpE;;;;;;;;;;;;;;OAcG;IACH,IAAI,CAAC,CAAC,GAAG,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,YAAY,CAAC,CAAC,CAAC,GAAG,IAAI,CAAA;IAEhE;;;;;;;;OAQG;IACH,aAAa,CAAC,OAAO,EAAE,sBAAsB,GAAG,MAAM,IAAI,CAAA;IAE1D;;;;;;;;;;;;;;;;;;;;;OAqBG;IAEH,OAAO,CAAC,KAAK,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,OAAO,GAAG,IAAI,CAAA;IAE5C,OAAO,CAAC,CAAC,GAAG,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,OAAO,EAAE,GAAG,EAAE,CAAC,QAAQ,EAAE,CAAC,KAAK,IAAI,GAAG,IAAI,CAAA;IAEpF;;;;;;;;;;;;;;;;;;;;;OAqBG;IACH,cAAc,CAAC,SAAS,GAAG,OAAO,EAAE,QAAQ,GAAG,OAAO,EACpD,KAAK,EAAE,MAAM,EACb,IAAI,CAAC,EAAE,QAAQ,EACf,OAAO,CAAC,EAAE,cAAc,GACvB,OAAO,CAAC,SAAS,CAAC,CAAA;CACtB"}
1
+ {"version":3,"file":"i-client.d.ts","sourceRoot":"","sources":["../../../src/core/interfaces/i-client.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAC,eAAe,EAAE,sBAAsB,EAAC,MAAM,yBAAyB,CAAA;AACpF,OAAO,KAAK,EAAC,YAAY,EAAC,MAAM,yBAAyB,CAAA;AAGzD,YAAY,EAAC,eAAe,EAAE,sBAAsB,EAAC,MAAM,yBAAyB,CAAA;AACpF,YAAY,EAAC,YAAY,EAAC,MAAM,yBAAyB,CAAA;AAEzD;;GAEG;AACH,MAAM,MAAM,cAAc,GAAG;IAC3B;;;OAGG;IACH,QAAQ,CAAC,OAAO,CAAC,EAAE,MAAM,CAAA;CAC1B,CAAA;AAED;;;;;;;;;;;;;;;GAeG;AACH,MAAM,WAAW,gBAAgB;IAC/B;;;;OAIG;IACH,OAAO,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAA;IAEnC;;;OAGG;IACH,UAAU,IAAI,OAAO,CAAC,IAAI,CAAC,CAAA;IAE3B;;;OAGG;IACH,WAAW,IAAI,MAAM,GAAG,SAAS,CAAA;IAEjC;;;;;;;;;;;;OAYG;IACH,gBAAgB,CAAC,IAAI,MAAM,GAAG,SAAS,CAAA;IAEvC;;OAEG;IACH,QAAQ,IAAI,eAAe,CAAA;IAE3B;;;;;OAKG;IACH,WAAW,CAAC,SAAS,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,CAAA;IAEjD;;;;;;OAMG;IACH,QAAQ,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAA;IAErC;;;;;;;;;;;;OAYG;IACH,SAAS,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAA;IAEtC;;;;;;;;;;;;;OAaG;IACH,EAAE,CAAC,CAAC,GAAG,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,YAAY,CAAC,CAAC,CAAC,GAAG,MAAM,IAAI,CAAA;IAEpE;;;;;;;;;;;;;;OAcG;IACH,IAAI,CAAC,CAAC,GAAG,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,YAAY,CAAC,CAAC,CAAC,GAAG,IAAI,CAAA;IAEhE;;;;;;;;OAQG;IACH,aAAa,CAAC,OAAO,EAAE,sBAAsB,GAAG,MAAM,IAAI,CAAA;IAE1D;;;;;;;;;;;;;;;;;;;;;OAqBG;IAEH,OAAO,CAAC,KAAK,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,OAAO,GAAG,IAAI,CAAA;IAE5C,OAAO,CAAC,CAAC,GAAG,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,OAAO,EAAE,GAAG,EAAE,CAAC,QAAQ,EAAE,CAAC,KAAK,IAAI,GAAG,IAAI,CAAA;IAEpF;;;;;;;;;;;;;;;;;;;;;OAqBG;IACH,cAAc,CAAC,SAAS,GAAG,OAAO,EAAE,QAAQ,GAAG,OAAO,EACpD,KAAK,EAAE,MAAM,EACb,IAAI,CAAC,EAAE,QAAQ,EACf,OAAO,CAAC,EAAE,cAAc,GACvB,OAAO,CAAC,SAAS,CAAC,CAAA;CACtB"}
@@ -56,6 +56,7 @@ export { createDaemonReconnector, type DaemonReconnectorDeps, type DaemonReconne
56
56
  export { ensureDaemonRunning, type EnsureDaemonResult } from './infra/daemon-spawner.js';
57
57
  export { discoverDaemon, type DaemonStatus } from './infra/daemon-discovery-sync.js';
58
58
  export { checkDaemonHealth, type DaemonHealthResult } from './infra/daemon-health.js';
59
+ export { compareSemver, versionsAreEquivalent } from './infra/version-utils.js';
59
60
  export { GlobalInstanceManager } from './infra/global-instance-manager.js';
60
61
  export { isHeartbeatStale } from './infra/heartbeat-utils.js';
61
62
  export { resolveServerPath } from './infra/resolve-server-path.js';
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
@@ -59,6 +59,8 @@ export { ensureDaemonRunning } from './infra/daemon-spawner.js';
59
59
  export { discoverDaemon } from './infra/daemon-discovery-sync.js';
60
60
  // Daemon lifecycle - Health check
61
61
  export { checkDaemonHealth } from './infra/daemon-health.js';
62
+ // Version comparison (used by drift indicators across consumers)
63
+ export { compareSemver, versionsAreEquivalent } from './infra/version-utils.js';
62
64
  // Daemon lifecycle - Infrastructure
63
65
  export { GlobalInstanceManager } from './infra/global-instance-manager.js';
64
66
  export { isHeartbeatStale } from './infra/heartbeat-utils.js';
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"client-factory.d.ts","sourceRoot":"","sources":["../../src/infra/client-factory.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAC,YAAY,EAAC,MAAM,0CAA0C,CAAA;AAG1E,OAAO,KAAK,EAAC,cAAc,EAAE,gBAAgB,EAAC,MAAM,wCAAwC,CAAA;AAC5F,OAAO,KAAK,EACV,cAAc,EACd,mBAAmB,EACnB,4BAA4B,EAC7B,MAAM,+CAA+C,CAAA;AACtD,OAAO,KAAK,EAAkB,kBAAkB,EAAC,MAAM,4CAA4C,CAAA;AAqBnG,YAAY,EAAC,gBAAgB,EAAC,MAAM,wCAAwC,CAAA;AAE5E;;GAEG;AACH,MAAM,MAAM,mBAAmB,GAAG;IAChC,6CAA6C;IAC7C,QAAQ,CAAC,QAAQ,EAAE,YAAY,CAAA;IAC/B,uGAAuG;IACvG,QAAQ,CAAC,WAAW,CAAC,EAAE,MAAM,CAAA;IAC7B,kCAAkC;IAClC,QAAQ,CAAC,OAAO,EAAE,IAAI,CAAA;CACvB,CAAA;AAED;;GAEG;AACH,MAAM,MAAM,sBAAsB,GAAG;IACnC,uCAAuC;IACvC,QAAQ,CAAC,MAAM,EAAE,kBAAkB,GAAG,gBAAgB,GAAG,aAAa,CAAA;IACtE,4BAA4B;IAC5B,QAAQ,CAAC,OAAO,EAAE,KAAK,CAAA;CACxB,CAAA;AAED;;GAEG;AACH,MAAM,MAAM,YAAY,GAAG,sBAAsB,GAAG,mBAAmB,CAAA;AAGvE,YAAY,EAAC,4BAA4B,EAAC,MAAM,+CAA+C,CAAA;AAsC/F;;;;;;;;;;;;;;;;;;;;;;GAsBG;AACH,qBAAa,sBAAuB,YAAW,cAAc;;gBAS/C,MAAM,CAAC,EAAE,4BAA4B;IAajD;;;;;;;;;;;;OAYG;IACU,OAAO,CAClB,OAAO,GAAE,MAAsB,EAC/B,OAAO,CAAC,EAAE,mBAAmB,EAC7B,iBAAiB,CAAC,EAAE,MAAM,OAAO,CAAC,MAAM,GAAG,SAAS,CAAC,GACpD,OAAO,CAAC,gBAAgB,CAAC;IA6C5B;;;OAGG;YACW,gBAAgB;IAyC9B;;;;;OAKG;YACW,UAAU;IA4BxB;;OAEG;YACW,cAAc;IAQ5B;;OAEG;IACH,OAAO,CAAC,cAAc;IAUtB;;OAEG;IACH,OAAO,CAAC,mBAAmB;IAK3B;;OAEG;IACH,OAAO,CAAC,KAAK;IAIb;;;;;;;OAOG;YACW,mBAAmB;IA8CjC;;OAEG;IACH,OAAO,CAAC,GAAG;CAGZ;AAMD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA+BG;AACH,wBAAsB,kBAAkB,CAAC,OAAO,CAAC,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,cAAc,GAAG,OAAO,CAAC,gBAAgB,CAAC,CAmB9G;AAED;;;;;;;;;;;;;;;;;GAiBG;AACH,wBAAsB,iBAAiB,CACrC,OAAO,GAAE,MAAsB,EAC/B,SAAS,CAAC,EAAE,kBAAkB,GAC7B,OAAO,CAAC,YAAY,CAAC,CAIvB"}
1
+ {"version":3,"file":"client-factory.d.ts","sourceRoot":"","sources":["../../src/infra/client-factory.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAC,YAAY,EAAC,MAAM,0CAA0C,CAAA;AAG1E,OAAO,KAAK,EAAC,cAAc,EAAE,gBAAgB,EAAC,MAAM,wCAAwC,CAAA;AAC5F,OAAO,KAAK,EACV,cAAc,EACd,mBAAmB,EACnB,4BAA4B,EAC7B,MAAM,+CAA+C,CAAA;AACtD,OAAO,KAAK,EAAkB,kBAAkB,EAAC,MAAM,4CAA4C,CAAA;AAqBnG,YAAY,EAAC,gBAAgB,EAAC,MAAM,wCAAwC,CAAA;AAE5E;;GAEG;AACH,MAAM,MAAM,mBAAmB,GAAG;IAChC,6CAA6C;IAC7C,QAAQ,CAAC,QAAQ,EAAE,YAAY,CAAA;IAC/B,uGAAuG;IACvG,QAAQ,CAAC,WAAW,CAAC,EAAE,MAAM,CAAA;IAC7B,kCAAkC;IAClC,QAAQ,CAAC,OAAO,EAAE,IAAI,CAAA;CACvB,CAAA;AAED;;GAEG;AACH,MAAM,MAAM,sBAAsB,GAAG;IACnC,uCAAuC;IACvC,QAAQ,CAAC,MAAM,EAAE,kBAAkB,GAAG,gBAAgB,GAAG,aAAa,CAAA;IACtE,4BAA4B;IAC5B,QAAQ,CAAC,OAAO,EAAE,KAAK,CAAA;CACxB,CAAA;AAED;;GAEG;AACH,MAAM,MAAM,YAAY,GAAG,sBAAsB,GAAG,mBAAmB,CAAA;AAGvE,YAAY,EAAC,4BAA4B,EAAC,MAAM,+CAA+C,CAAA;AAsC/F;;;;;;;;;;;;;;;;;;;;;;GAsBG;AACH,qBAAa,sBAAuB,YAAW,cAAc;;gBAS/C,MAAM,CAAC,EAAE,4BAA4B;IAajD;;;;;;;;;;;;OAYG;IACU,OAAO,CAClB,OAAO,GAAE,MAAsB,EAC/B,OAAO,CAAC,EAAE,mBAAmB,EAC7B,iBAAiB,CAAC,EAAE,MAAM,OAAO,CAAC,MAAM,GAAG,SAAS,CAAC,GACpD,OAAO,CAAC,gBAAgB,CAAC;IA6C5B;;;OAGG;YACW,gBAAgB;IAyC9B;;;;;OAKG;YACW,UAAU;IA4BxB;;OAEG;YACW,cAAc;IAQ5B;;OAEG;IACH,OAAO,CAAC,cAAc;IAUtB;;OAEG;IACH,OAAO,CAAC,mBAAmB;IAK3B;;OAEG;IACH,OAAO,CAAC,KAAK;IAIb;;;;;;;OAOG;YACW,mBAAmB;IAoDjC;;OAEG;IACH,OAAO,CAAC,GAAG;CAGZ;AAMD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA+BG;AACH,wBAAsB,kBAAkB,CAAC,OAAO,CAAC,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,cAAc,GAAG,OAAO,CAAC,gBAAgB,CAAC,CAmB9G;AAED;;;;;;;;;;;;;;;;;GAiBG;AACH,wBAAsB,iBAAiB,CACrC,OAAO,GAAE,MAAsB,EAC/B,SAAS,CAAC,EAAE,kBAAkB,GAC7B,OAAO,CAAC,YAAY,CAAC,CAIvB"}
@@ -261,6 +261,11 @@ export class TransportClientFactory {
261
261
  this.log(`Registration failed: ${validated.data.error ?? 'Unknown error'}`);
262
262
  return 'failed';
263
263
  }
264
+ // Capture daemon version from ack so consumers (TUI header, MCP tool
265
+ // footer) can render drift state without an extra round-trip. Absent
266
+ // when the daemon hasn't been updated yet — `setDaemonVersion(undefined)`
267
+ // is the safe default.
268
+ client.setDaemonVersion(validated.data.daemonVersion);
264
269
  this.log('Registration successful');
265
270
  return 'success';
266
271
  }
@@ -1 +1 @@
1
- {"version":3,"file":"client-factory.js","sourceRoot":"","sources":["../../src/infra/client-factory.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"client-factory.js","sourceRoot":"","sources":["../../src/infra/client-factory.ts"],"names":[],"mappings":"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"}
@@ -1,9 +1,9 @@
1
1
  import type { IGlobalInstanceManager } from '../core/interfaces/i-instance-manager.js';
2
2
  export type DaemonStatus = {
3
- actualVersion?: string;
4
- expectedVersion: string;
3
+ clientVersion: string;
4
+ daemonVersion: string;
5
5
  pid: number;
6
- reason: 'version_mismatch';
6
+ reason: 'daemon_outdated';
7
7
  running: false;
8
8
  } | {
9
9
  pid: number;
@@ -24,18 +24,20 @@ export type DaemonStatus = {
24
24
  * 1. daemon.json exists at <global-data-dir>/ and is valid
25
25
  * 2. PID is alive
26
26
  * 3. Heartbeat is fresh (<15s)
27
- * 4. Version matches expectedVersion (if provided)
27
+ * 4. Daemon version is at least as new as the calling client's (if provided).
28
+ * Asymmetric: only a strictly-newer client triggers `daemon_outdated`.
28
29
  *
29
30
  * @param options - Discovery options.
30
31
  * @param options.dataDir - Custom data directory (defaults to global).
31
- * @param options.expectedVersion - If provided, daemon version must match.
32
- * A mismatch returns `{running: false, reason: 'version_mismatch', pid}`.
32
+ * @param options.clientVersion - The calling client's own version. If provided,
33
+ * the daemon must be at least this version. If the daemon is older returns
34
+ * `{running: false, reason: 'daemon_outdated', pid}`.
33
35
  * @param options.instanceManager - Injectable for testing and caller reuse.
34
36
  * Defaults to a new GlobalInstanceManager if not provided.
35
37
  */
36
38
  export declare function discoverDaemon(options?: {
39
+ clientVersion?: string;
37
40
  dataDir?: string;
38
- expectedVersion?: string;
39
41
  instanceManager?: IGlobalInstanceManager;
40
42
  }): DaemonStatus;
41
43
  //# sourceMappingURL=daemon-discovery-sync.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"daemon-discovery-sync.d.ts","sourceRoot":"","sources":["../../src/infra/daemon-discovery-sync.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAC,sBAAsB,EAAC,MAAM,0CAA0C,CAAA;AAOpF,MAAM,MAAM,YAAY,GACpB;IAAC,aAAa,CAAC,EAAE,MAAM,CAAC;IAAC,eAAe,EAAE,MAAM,CAAC;IAAC,GAAG,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,kBAAkB,CAAC;IAAC,OAAO,EAAE,KAAK,CAAA;CAAC,GAC1G;IAAC,GAAG,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,IAAI,CAAA;CAAC,GAC1C;IAAC,GAAG,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,iBAAiB,GAAG,UAAU,CAAC;IAAC,OAAO,EAAE,KAAK,CAAA;CAAC,GACrE;IAAC,MAAM,EAAE,aAAa,CAAC;IAAC,OAAO,EAAE,KAAK,CAAA;CAAC,CAAA;AAE3C;;;;;;;;;;;;;;;GAeG;AACH,wBAAgB,cAAc,CAAC,OAAO,CAAC,EAAE;IACvC,OAAO,CAAC,EAAE,MAAM,CAAA;IAChB,eAAe,CAAC,EAAE,MAAM,CAAA;IACxB,eAAe,CAAC,EAAE,sBAAsB,CAAA;CACzC,GAAG,YAAY,CA+Bf"}
1
+ {"version":3,"file":"daemon-discovery-sync.d.ts","sourceRoot":"","sources":["../../src/infra/daemon-discovery-sync.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAC,sBAAsB,EAAC,MAAM,0CAA0C,CAAA;AAOpF,MAAM,MAAM,YAAY,GACpB;IAAC,aAAa,EAAE,MAAM,CAAC;IAAC,aAAa,EAAE,MAAM,CAAC;IAAC,GAAG,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,iBAAiB,CAAC;IAAC,OAAO,EAAE,KAAK,CAAA;CAAC,GACtG;IAAC,GAAG,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,IAAI,CAAA;CAAC,GAC1C;IAAC,GAAG,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,iBAAiB,GAAG,UAAU,CAAC;IAAC,OAAO,EAAE,KAAK,CAAA;CAAC,GACrE;IAAC,MAAM,EAAE,aAAa,CAAC;IAAC,OAAO,EAAE,KAAK,CAAA;CAAC,CAAA;AAE3C;;;;;;;;;;;;;;;;;GAiBG;AACH,wBAAgB,cAAc,CAAC,OAAO,CAAC,EAAE;IACvC,aAAa,CAAC,EAAE,MAAM,CAAA;IACtB,OAAO,CAAC,EAAE,MAAM,CAAA;IAChB,eAAe,CAAC,EAAE,sBAAsB,CAAA;CACzC,GAAG,YAAY,CA+Bf"}
@@ -10,12 +10,14 @@ import { GlobalInstanceManager } from './global-instance-manager.js';
10
10
  * 1. daemon.json exists at <global-data-dir>/ and is valid
11
11
  * 2. PID is alive
12
12
  * 3. Heartbeat is fresh (<15s)
13
- * 4. Version matches expectedVersion (if provided)
13
+ * 4. Daemon version is at least as new as the calling client's (if provided).
14
+ * Asymmetric: only a strictly-newer client triggers `daemon_outdated`.
14
15
  *
15
16
  * @param options - Discovery options.
16
17
  * @param options.dataDir - Custom data directory (defaults to global).
17
- * @param options.expectedVersion - If provided, daemon version must match.
18
- * A mismatch returns `{running: false, reason: 'version_mismatch', pid}`.
18
+ * @param options.clientVersion - The calling client's own version. If provided,
19
+ * the daemon must be at least this version. If the daemon is older returns
20
+ * `{running: false, reason: 'daemon_outdated', pid}`.
19
21
  * @param options.instanceManager - Injectable for testing and caller reuse.
20
22
  * Defaults to a new GlobalInstanceManager if not provided.
21
23
  */
@@ -28,16 +30,16 @@ export function discoverDaemon(options) {
28
30
  }
29
31
  const heartbeatPath = join(dataDir, HEARTBEAT_FILE);
30
32
  const health = checkDaemonHealth(instance.pid, heartbeatPath, {
31
- actualVersion: instance.version,
32
- expectedVersion: options?.expectedVersion,
33
+ clientVersion: options?.clientVersion,
34
+ daemonVersion: instance.version,
33
35
  });
34
36
  if (!health.healthy) {
35
- if (health.reason === 'version_mismatch') {
37
+ if (health.reason === 'daemon_outdated') {
36
38
  return {
37
- actualVersion: health.actualVersion,
38
- expectedVersion: health.expectedVersion,
39
+ clientVersion: health.clientVersion,
40
+ daemonVersion: health.daemonVersion,
39
41
  pid: instance.pid,
40
- reason: 'version_mismatch',
42
+ reason: 'daemon_outdated',
41
43
  running: false,
42
44
  };
43
45
  }
@@ -1 +1 @@
1
- {"version":3,"file":"daemon-discovery-sync.js","sourceRoot":"","sources":["../../src/infra/daemon-discovery-sync.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,IAAI,EAAC,MAAM,WAAW,CAAA;AAI9B,OAAO,EAAC,cAAc,EAAC,MAAM,iBAAiB,CAAA;AAC9C,OAAO,EAAC,iBAAiB,EAAC,MAAM,oBAAoB,CAAA;AACpD,OAAO,EAAC,gBAAgB,EAAC,MAAM,uBAAuB,CAAA;AACtD,OAAO,EAAC,qBAAqB,EAAC,MAAM,8BAA8B,CAAA;AAQlE;;;;;;;;;;;;;;;GAeG;AACH,MAAM,UAAU,cAAc,CAAC,OAI9B;IACC,MAAM,OAAO,GAAG,OAAO,EAAE,OAAO,IAAI,gBAAgB,EAAE,CAAA;IAEtD,MAAM,eAAe,GAAG,OAAO,EAAE,eAAe,IAAI,IAAI,qBAAqB,CAAC,EAAC,OAAO,EAAC,CAAC,CAAA;IACxF,MAAM,QAAQ,GAAG,eAAe,CAAC,IAAI,EAAE,CAAA;IAEvC,IAAI,CAAC,QAAQ,EAAE,CAAC;QACd,OAAO,EAAC,MAAM,EAAE,aAAa,EAAE,OAAO,EAAE,KAAK,EAAC,CAAA;IAChD,CAAC;IAED,MAAM,aAAa,GAAG,IAAI,CAAC,OAAO,EAAE,cAAc,CAAC,CAAA;IACnD,MAAM,MAAM,GAAG,iBAAiB,CAAC,QAAQ,CAAC,GAAG,EAAE,aAAa,EAAE;QAC5D,aAAa,EAAE,QAAQ,CAAC,OAAO;QAC/B,eAAe,EAAE,OAAO,EAAE,eAAe;KAC1C,CAAC,CAAA;IAEF,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC;QACpB,IAAI,MAAM,CAAC,MAAM,KAAK,kBAAkB,EAAE,CAAC;YACzC,OAAO;gBACL,aAAa,EAAE,MAAM,CAAC,aAAa;gBACnC,eAAe,EAAE,MAAM,CAAC,eAAe;gBACvC,GAAG,EAAE,QAAQ,CAAC,GAAG;gBACjB,MAAM,EAAE,kBAAkB;gBAC1B,OAAO,EAAE,KAAK;aACf,CAAA;QACH,CAAC;QAED,OAAO,EAAC,GAAG,EAAE,QAAQ,CAAC,GAAG,EAAE,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,EAAE,KAAK,EAAC,CAAA;IACnE,CAAC;IAED,OAAO,EAAC,GAAG,EAAE,QAAQ,CAAC,GAAG,EAAE,IAAI,EAAE,QAAQ,CAAC,IAAI,EAAE,OAAO,EAAE,IAAI,EAAC,CAAA;AAChE,CAAC"}
1
+ {"version":3,"file":"daemon-discovery-sync.js","sourceRoot":"","sources":["../../src/infra/daemon-discovery-sync.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,IAAI,EAAC,MAAM,WAAW,CAAA;AAI9B,OAAO,EAAC,cAAc,EAAC,MAAM,iBAAiB,CAAA;AAC9C,OAAO,EAAC,iBAAiB,EAAC,MAAM,oBAAoB,CAAA;AACpD,OAAO,EAAC,gBAAgB,EAAC,MAAM,uBAAuB,CAAA;AACtD,OAAO,EAAC,qBAAqB,EAAC,MAAM,8BAA8B,CAAA;AAQlE;;;;;;;;;;;;;;;;;GAiBG;AACH,MAAM,UAAU,cAAc,CAAC,OAI9B;IACC,MAAM,OAAO,GAAG,OAAO,EAAE,OAAO,IAAI,gBAAgB,EAAE,CAAA;IAEtD,MAAM,eAAe,GAAG,OAAO,EAAE,eAAe,IAAI,IAAI,qBAAqB,CAAC,EAAC,OAAO,EAAC,CAAC,CAAA;IACxF,MAAM,QAAQ,GAAG,eAAe,CAAC,IAAI,EAAE,CAAA;IAEvC,IAAI,CAAC,QAAQ,EAAE,CAAC;QACd,OAAO,EAAC,MAAM,EAAE,aAAa,EAAE,OAAO,EAAE,KAAK,EAAC,CAAA;IAChD,CAAC;IAED,MAAM,aAAa,GAAG,IAAI,CAAC,OAAO,EAAE,cAAc,CAAC,CAAA;IACnD,MAAM,MAAM,GAAG,iBAAiB,CAAC,QAAQ,CAAC,GAAG,EAAE,aAAa,EAAE;QAC5D,aAAa,EAAE,OAAO,EAAE,aAAa;QACrC,aAAa,EAAE,QAAQ,CAAC,OAAO;KAChC,CAAC,CAAA;IAEF,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC;QACpB,IAAI,MAAM,CAAC,MAAM,KAAK,iBAAiB,EAAE,CAAC;YACxC,OAAO;gBACL,aAAa,EAAE,MAAM,CAAC,aAAa;gBACnC,aAAa,EAAE,MAAM,CAAC,aAAa;gBACnC,GAAG,EAAE,QAAQ,CAAC,GAAG;gBACjB,MAAM,EAAE,iBAAiB;gBACzB,OAAO,EAAE,KAAK;aACf,CAAA;QACH,CAAC;QAED,OAAO,EAAC,GAAG,EAAE,QAAQ,CAAC,GAAG,EAAE,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,EAAE,KAAK,EAAC,CAAA;IACnE,CAAC;IAED,OAAO,EAAC,GAAG,EAAE,QAAQ,CAAC,GAAG,EAAE,IAAI,EAAE,QAAQ,CAAC,IAAI,EAAE,OAAO,EAAE,IAAI,EAAC,CAAA;AAChE,CAAC"}
@@ -1,5 +1,10 @@
1
1
  /**
2
2
  * Result of a daemon health check.
3
+ *
4
+ * `daemon_outdated` only fires when the *client* is strictly newer than the
5
+ * running daemon (asymmetric). Older clients connecting to a newer daemon
6
+ * are treated as healthy — this is what prevents the SIGTERM ping-pong loop
7
+ * that two peer clients at different versions used to trigger.
3
8
  */
4
9
  export type DaemonHealthResult = {
5
10
  healthy: false;
@@ -8,10 +13,19 @@ export type DaemonHealthResult = {
8
13
  healthy: false;
9
14
  reason: 'pid_dead';
10
15
  } | {
11
- actualVersion?: string;
12
- expectedVersion: string;
16
+ /**
17
+ * Version reported by the running daemon (read from daemon.json).
18
+ *
19
+ * Required, not optional: the producer guards on
20
+ * `options.daemonVersion &&` before returning this branch (see
21
+ * `checkDaemonHealth` below), so consumers can rely on a non-empty
22
+ * string here without a presence check.
23
+ */
24
+ daemonVersion: string;
25
+ /** Version of the client that called the health check. */
26
+ clientVersion: string;
13
27
  healthy: false;
14
- reason: 'version_mismatch';
28
+ reason: 'daemon_outdated';
15
29
  } | {
16
30
  healthy: true;
17
31
  };
@@ -24,14 +38,17 @@ export type DaemonHealthResult = {
24
38
  * Health checks (in order):
25
39
  * 1. PID is alive (process.kill(pid, 0))
26
40
  * 2. Heartbeat is fresh (< threshold)
27
- * 3. Version matches expected (if provided)
41
+ * 3. Daemon version is at least as new as expected (if both provided).
42
+ * Asymmetric: only `client > daemon` returns `daemon_outdated`. The
43
+ * older-client direction returns healthy so it can connect to a newer
44
+ * daemon spawned by a peer, instead of SIGTERMing it back into a loop.
28
45
  *
29
46
  * @param pid - Daemon process ID to check
30
47
  * @param heartbeatPath - Path to heartbeat file
31
48
  * @param options - Optional version check parameters
32
49
  */
33
50
  export declare function checkDaemonHealth(pid: number, heartbeatPath: string, options?: {
34
- actualVersion?: string;
35
- expectedVersion?: string;
51
+ clientVersion?: string;
52
+ daemonVersion?: string;
36
53
  }): DaemonHealthResult;
37
54
  //# sourceMappingURL=daemon-health.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"daemon-health.d.ts","sourceRoot":"","sources":["../../src/infra/daemon-health.ts"],"names":[],"mappings":"AAGA;;GAEG;AACH,MAAM,MAAM,kBAAkB,GAC1B;IAAC,OAAO,EAAE,KAAK,CAAC;IAAC,MAAM,EAAE,iBAAiB,CAAA;CAAC,GAC3C;IAAC,OAAO,EAAE,KAAK,CAAC;IAAC,MAAM,EAAE,UAAU,CAAA;CAAC,GACpC;IACE,aAAa,CAAC,EAAE,MAAM,CAAA;IACtB,eAAe,EAAE,MAAM,CAAA;IACvB,OAAO,EAAE,KAAK,CAAA;IACd,MAAM,EAAE,kBAAkB,CAAA;CAC3B,GACD;IAAC,OAAO,EAAE,IAAI,CAAA;CAAC,CAAA;AAEnB;;;;;;;;;;;;;;GAcG;AACH,wBAAgB,iBAAiB,CAC/B,GAAG,EAAE,MAAM,EACX,aAAa,EAAE,MAAM,EACrB,OAAO,CAAC,EAAE;IAAC,aAAa,CAAC,EAAE,MAAM,CAAC;IAAC,eAAe,CAAC,EAAE,MAAM,CAAA;CAAC,GAC3D,kBAAkB,CAmBpB"}
1
+ {"version":3,"file":"daemon-health.d.ts","sourceRoot":"","sources":["../../src/infra/daemon-health.ts"],"names":[],"mappings":"AAIA;;;;;;;GAOG;AACH,MAAM,MAAM,kBAAkB,GAC1B;IAAC,OAAO,EAAE,KAAK,CAAC;IAAC,MAAM,EAAE,iBAAiB,CAAA;CAAC,GAC3C;IAAC,OAAO,EAAE,KAAK,CAAC;IAAC,MAAM,EAAE,UAAU,CAAA;CAAC,GACpC;IACE;;;;;;;OAOG;IACH,aAAa,EAAE,MAAM,CAAA;IACrB,0DAA0D;IAC1D,aAAa,EAAE,MAAM,CAAA;IACrB,OAAO,EAAE,KAAK,CAAA;IACd,MAAM,EAAE,iBAAiB,CAAA;CAC1B,GACD;IAAC,OAAO,EAAE,IAAI,CAAA;CAAC,CAAA;AAEnB;;;;;;;;;;;;;;;;;GAiBG;AACH,wBAAgB,iBAAiB,CAC/B,GAAG,EAAE,MAAM,EACX,aAAa,EAAE,MAAM,EACrB,OAAO,CAAC,EAAE;IAAC,aAAa,CAAC,EAAE,MAAM,CAAC;IAAC,aAAa,CAAC,EAAE,MAAM,CAAA;CAAC,GACzD,kBAAkB,CAuBpB"}
@@ -1,5 +1,6 @@
1
1
  import { isHeartbeatStale } from './heartbeat-utils.js';
2
2
  import { isProcessAlive } from './process-utils.js';
3
+ import { compareSemver } from './version-utils.js';
3
4
  /**
4
5
  * Checks daemon health (synchronous).
5
6
  *
@@ -9,7 +10,10 @@ import { isProcessAlive } from './process-utils.js';
9
10
  * Health checks (in order):
10
11
  * 1. PID is alive (process.kill(pid, 0))
11
12
  * 2. Heartbeat is fresh (< threshold)
12
- * 3. Version matches expected (if provided)
13
+ * 3. Daemon version is at least as new as expected (if both provided).
14
+ * Asymmetric: only `client > daemon` returns `daemon_outdated`. The
15
+ * older-client direction returns healthy so it can connect to a newer
16
+ * daemon spawned by a peer, instead of SIGTERMing it back into a loop.
13
17
  *
14
18
  * @param pid - Daemon process ID to check
15
19
  * @param heartbeatPath - Path to heartbeat file
@@ -22,12 +26,14 @@ export function checkDaemonHealth(pid, heartbeatPath, options) {
22
26
  if (isHeartbeatStale(heartbeatPath)) {
23
27
  return { healthy: false, reason: 'heartbeat_stale' };
24
28
  }
25
- if (options?.expectedVersion && options.actualVersion !== options.expectedVersion) {
29
+ if (options?.clientVersion &&
30
+ options.daemonVersion &&
31
+ compareSemver(options.clientVersion, options.daemonVersion) > 0) {
26
32
  return {
27
- actualVersion: options.actualVersion,
28
- expectedVersion: options.expectedVersion,
33
+ clientVersion: options.clientVersion,
34
+ daemonVersion: options.daemonVersion,
29
35
  healthy: false,
30
- reason: 'version_mismatch',
36
+ reason: 'daemon_outdated',
31
37
  };
32
38
  }
33
39
  return { healthy: true };
@@ -1 +1 @@
1
- {"version":3,"file":"daemon-health.js","sourceRoot":"","sources":["../../src/infra/daemon-health.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,gBAAgB,EAAC,MAAM,sBAAsB,CAAA;AACrD,OAAO,EAAC,cAAc,EAAC,MAAM,oBAAoB,CAAA;AAgBjD;;;;;;;;;;;;;;GAcG;AACH,MAAM,UAAU,iBAAiB,CAC/B,GAAW,EACX,aAAqB,EACrB,OAA4D;IAE5D,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,EAAE,CAAC;QACzB,OAAO,EAAC,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,UAAU,EAAC,CAAA;IAC7C,CAAC;IAED,IAAI,gBAAgB,CAAC,aAAa,CAAC,EAAE,CAAC;QACpC,OAAO,EAAC,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,iBAAiB,EAAC,CAAA;IACpD,CAAC;IAED,IAAI,OAAO,EAAE,eAAe,IAAI,OAAO,CAAC,aAAa,KAAK,OAAO,CAAC,eAAe,EAAE,CAAC;QAClF,OAAO;YACL,aAAa,EAAE,OAAO,CAAC,aAAa;YACpC,eAAe,EAAE,OAAO,CAAC,eAAe;YACxC,OAAO,EAAE,KAAK;YACd,MAAM,EAAE,kBAAkB;SAC3B,CAAA;IACH,CAAC;IAED,OAAO,EAAC,OAAO,EAAE,IAAI,EAAC,CAAA;AACxB,CAAC"}
1
+ {"version":3,"file":"daemon-health.js","sourceRoot":"","sources":["../../src/infra/daemon-health.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,gBAAgB,EAAC,MAAM,sBAAsB,CAAA;AACrD,OAAO,EAAC,cAAc,EAAC,MAAM,oBAAoB,CAAA;AACjD,OAAO,EAAC,aAAa,EAAC,MAAM,oBAAoB,CAAA;AA8BhD;;;;;;;;;;;;;;;;;GAiBG;AACH,MAAM,UAAU,iBAAiB,CAC/B,GAAW,EACX,aAAqB,EACrB,OAA0D;IAE1D,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,EAAE,CAAC;QACzB,OAAO,EAAC,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,UAAU,EAAC,CAAA;IAC7C,CAAC;IAED,IAAI,gBAAgB,CAAC,aAAa,CAAC,EAAE,CAAC;QACpC,OAAO,EAAC,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,iBAAiB,EAAC,CAAA;IACpD,CAAC;IAED,IACE,OAAO,EAAE,aAAa;QACtB,OAAO,CAAC,aAAa;QACrB,aAAa,CAAC,OAAO,CAAC,aAAa,EAAE,OAAO,CAAC,aAAa,CAAC,GAAG,CAAC,EAC/D,CAAC;QACD,OAAO;YACL,aAAa,EAAE,OAAO,CAAC,aAAa;YACpC,aAAa,EAAE,OAAO,CAAC,aAAa;YACpC,OAAO,EAAE,KAAK;YACd,MAAM,EAAE,iBAAiB;SAC1B,CAAA;IACH,CAAC;IAED,OAAO,EAAC,OAAO,EAAE,IAAI,EAAC,CAAA;AACxB,CAAC"}
@@ -29,7 +29,7 @@ export async function ensureDaemonRunning(options) {
29
29
  const version = options?.version;
30
30
  const instanceManager = new GlobalInstanceManager({ dataDir });
31
31
  // 1. Fast path: daemon already running and healthy — no lock needed
32
- const status = discoverDaemon({ dataDir, expectedVersion: version, instanceManager });
32
+ const status = discoverDaemon({ clientVersion: version, dataDir, instanceManager });
33
33
  if (status.running) {
34
34
  return { info: { pid: status.pid, port: status.port }, started: false, success: true };
35
35
  }
@@ -48,14 +48,14 @@ export async function ensureDaemonRunning(options) {
48
48
  }
49
49
  try {
50
50
  // 4. Re-check after lock (race window between step 1 and lock acquisition)
51
- const recheck = discoverDaemon({ dataDir, expectedVersion: version, instanceManager });
51
+ const recheck = discoverDaemon({ clientVersion: version, dataDir, instanceManager });
52
52
  if (recheck.running) {
53
53
  return { info: { pid: recheck.pid, port: recheck.port }, started: false, success: true };
54
54
  }
55
55
  // 5. Handle unhealthy daemon: gracefully stop when PID is alive but daemon
56
- // is not healthy (version mismatch or stale heartbeat). Safe — we hold the lock.
56
+ // is not healthy (daemon outdated or stale heartbeat). Safe — we hold the lock.
57
57
  // Stop budget is capped separately so it doesn't starve the poll phase.
58
- if (recheck.reason === 'version_mismatch' || recheck.reason === 'heartbeat_stale') {
58
+ if (recheck.reason === 'daemon_outdated' || recheck.reason === 'heartbeat_stale') {
59
59
  const stopDeadline = Math.min(Date.now() + DAEMON_STOP_BUDGET_MS, overallDeadline);
60
60
  await gracefullyStopDaemon(recheck.pid, stopDeadline, pollIntervalMs);
61
61
  }
@@ -93,9 +93,9 @@ function spawnDaemonProcess(serverPath) {
93
93
  }
94
94
  return { getSpawnError: () => spawnError };
95
95
  }
96
- async function pollForDaemon(dataDir, deadline, instanceManager, expectedVersion, pollIntervalMs = DAEMON_READY_POLL_INTERVAL_MS) {
96
+ async function pollForDaemon(dataDir, deadline, instanceManager, clientVersion, pollIntervalMs = DAEMON_READY_POLL_INTERVAL_MS) {
97
97
  while (Date.now() < deadline) {
98
- const status = discoverDaemon({ dataDir, expectedVersion, instanceManager });
98
+ const status = discoverDaemon({ clientVersion, dataDir, instanceManager });
99
99
  if (status.running) {
100
100
  return { pid: status.pid, port: status.port };
101
101
  }
@@ -109,7 +109,7 @@ async function pollForDaemon(dataDir, deadline, instanceManager, expectedVersion
109
109
  * Falls back to SIGKILL if the process doesn't die within the timeout
110
110
  * to prevent leaving orphaned daemon processes.
111
111
  *
112
- * Used when an unhealthy daemon (version mismatch or stale heartbeat)
112
+ * Used when an unhealthy daemon (daemon outdated or stale heartbeat)
113
113
  * needs to be stopped before spawning a replacement.
114
114
  */
115
115
  async function gracefullyStopDaemon(pid, deadline, pollIntervalMs = DAEMON_STOP_POLL_INTERVAL_MS) {
@@ -1 +1 @@
1
- {"version":3,"file":"daemon-spawner.js","sourceRoot":"","sources":["../../src/infra/daemon-spawner.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"daemon-spawner.js","sourceRoot":"","sources":["../../src/infra/daemon-spawner.ts"],"names":[],"mappings":"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"}
@@ -1001,15 +1001,22 @@ export declare const ClientRegisterRequestSchema: z.ZodObject<{
1001
1001
  }>;
1002
1002
  /**
1003
1003
  * client:register response
1004
+ *
1005
+ * `daemonVersion` is optional so a client running with a newer schema can
1006
+ * still parse acks from a daemon that hasn't been updated yet (it simply
1007
+ * arrives as `undefined`). This unblocks rolling upgrades.
1004
1008
  */
1005
1009
  export declare const ClientRegisterResponseSchema: z.ZodObject<{
1006
1010
  success: z.ZodBoolean;
1007
1011
  error: z.ZodOptional<z.ZodString>;
1012
+ daemonVersion: z.ZodOptional<z.ZodString>;
1008
1013
  }, "strip", z.ZodTypeAny, {
1009
1014
  success: boolean;
1010
1015
  error?: string | undefined;
1016
+ daemonVersion?: string | undefined;
1011
1017
  }, {
1012
1018
  success: boolean;
1013
1019
  error?: string | undefined;
1020
+ daemonVersion?: string | undefined;
1014
1021
  }>;
1015
1022
  //# sourceMappingURL=schemas.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"schemas.d.ts","sourceRoot":"","sources":["../../../src/infra/schemas/schemas.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"schemas.d.ts","sourceRoot":"","sources":["../../../src/infra/schemas/schemas.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;GAkBG;AACH,OAAO,EAAC,CAAC,EAAC,MAAM,KAAK,CAAA;AASrB;;GAEG;AACH,eAAO,MAAM,gBAAgB;;;;;;;;;;;;EAI3B,CAAA;AAEF;;GAEG;AACH,eAAO,MAAM,cAAc,+CAA6C,CAAA;AAExE;;GAEG;AACH,eAAO,MAAM,iBAAiB,8EAA4E,CAAA;AAE1G;;GAEG;AACH,eAAO,MAAM,eAAe,kCAAgC,CAAA;AAE5D;;GAEG;AACH,eAAO,MAAM,cAAc,gCAA8B,CAAA;AAEzD;;GAEG;AACH,eAAO,MAAM,gBAAgB,iEAA+D,CAAA;AAE5F;;GAEG;AACH,eAAO,MAAM,mBAAmB,2QAc9B,CAAA;AAEF;;GAEG;AACH,eAAO,MAAM,4BAA4B,uFAOvC,CAAA;AAMF;;GAEG;AACH,eAAO,MAAM,cAAc;;;;;;;;;;;;EAIzB,CAAA;AAEF;;GAEG;AACH,eAAO,MAAM,mBAAmB;;;;;;;;;;;;;;;EAK9B,CAAA;AAEF;;;;;;;;;;GAUG;AACH,eAAO,MAAM,oBAAoB;;;;;;;;;;;;;;;EAK/B,CAAA;AAMF;;GAEG;AACH,eAAO,MAAM,uBAAuB;IAClC,oDAAoD;;IAEpD,kCAAkC;;IAElC,0BAA0B;;IAE1B,qDAAqD;;IAErD,qDAAqD;;;;;;;;;;;;;;EAErD,CAAA;AAEF;;GAEG;AACH,eAAO,MAAM,aAAa;IACxB,oEAAoE;;;;;;;;;EAGpE,CAAA;AAEF;;GAEG;AACH,eAAO,MAAM,iBAAiB;;;;;;;;;;;;;;;;;;EAM5B,CAAA;AAEF;;GAEG;AACH,eAAO,MAAM,iBAAiB;;;;;;;;;;;;;;;;;;;;;EAO5B,CAAA;AAEF;;GAEG;AACH,eAAO,MAAM,iBAAiB;;;;;;;;;;;;;;;;;;EAM5B,CAAA;AAEF;;GAEG;AACH,eAAO,MAAM,mBAAmB;;;;;;;;;EAG9B,CAAA;AAEF;;GAEG;AACH,eAAO,MAAM,eAAe;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAG1B,CAAA;AAEF;;GAEG;AACH,eAAO,MAAM,uBAAuB;;;;;;EAElC,CAAA;AAEF;;GAEG;AACH,eAAO,MAAM,wBAAwB;;;;;;;;;EAGnC,CAAA;AAEF;;GAEG;AACH,eAAO,MAAM,mBAAmB;;;;;;EAE9B,CAAA;AAMF;;GAEG;AACH,eAAO,MAAM,iBAAiB;;;;;;;;;EAG5B,CAAA;AAEF;;GAEG;AACH,eAAO,MAAM,cAAc;;;;;;;;;;;;;;;;;;EAMzB,CAAA;AAEF;;GAEG;AACH,eAAO,MAAM,iBAAiB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAS5B,CAAA;AAEF;;GAEG;AACH,eAAO,MAAM,iBAAiB;;;;;;;;;;;;;;;;;;EAM5B,CAAA;AAEF;;GAEG;AACH,eAAO,MAAM,mBAAmB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAU9B,CAAA;AAEF;;GAEG;AACH,eAAO,MAAM,cAAc;;;;;;;;;;;;;;;EAKzB,CAAA;AAEF;;GAEG;AACH,eAAO,MAAM,yBAAyB;;;;;;;;;;;;EAIpC,CAAA;AAEF;;GAEG;AACH,eAAO,MAAM,gBAAgB;;;;;;;;;;;;;;;;;;EAM3B,CAAA;AAEF;;GAEG;AACH,eAAO,MAAM,wBAAwB;;;;;;;;;;;;;;;;;;EAMnC,CAAA;AAEF;;GAEG;AACH,eAAO,MAAM,gBAAgB;;;;;;;;;;;;;;;EAK3B,CAAA;AAEF;;GAEG;AACH,eAAO,MAAM,oBAAoB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAI/B,CAAA;AAMF;;GAEG;AACH,eAAO,MAAM,4BAA4B;;;;;;;;;;;;;;;EAKvC,CAAA;AAEF;;GAEG;AACH,eAAO,MAAM,+BAA+B;;;;;;;;;;;;;;;;;;;;;;;;EAQ1C,CAAA;AAEF;;GAEG;AACH,eAAO,MAAM,6BAA6B;;;;;;EAExC,CAAA;AAEF;;GAEG;AACH,eAAO,MAAM,wBAAwB;;;;;;;;;;;;;;;EAKnC,CAAA;AAEF;;GAEG;AACH,eAAO,MAAM,sBAAsB;;;;;;EAEjC,CAAA;AAEF;;GAEG;AACH,eAAO,MAAM,eAAe;;;;;;;;;;;;;;;;;;EAM1B,CAAA;AAEF;;GAEG;AACH,eAAO,MAAM,cAAc;;;;;;;;;;;;;;;EAKzB,CAAA;AAMF;;GAEG;AACH,eAAO,MAAM,iBAAiB;;;;;;;;;;;;;;;EAK5B,CAAA;AAEF;;GAEG;AACH,eAAO,MAAM,kBAAkB;;;;;;;;;;;;EAI7B,CAAA;AAEF;;GAEG;AACH,eAAO,MAAM,wBAAwB,gDAAe,CAAA;AAEpD;;GAEG;AACH,eAAO,MAAM,yBAAyB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAGpC,CAAA;AAEF;;GAEG;AACH,eAAO,MAAM,wBAAwB,gDAAe,CAAA;AAEpD;;GAEG;AACH,eAAO,MAAM,yBAAyB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAEpC,CAAA;AAEF;;GAEG;AACH,eAAO,MAAM,0BAA0B;;;;;;EAErC,CAAA;AAEF;;GAEG;AACH,eAAO,MAAM,2BAA2B;;;;;;EAEtC,CAAA;AAEF;;GAEG;AACH,eAAO,MAAM,0BAA0B;;;;;;EAErC,CAAA;AAEF;;GAEG;AACH,eAAO,MAAM,2BAA2B;;;;;;EAEtC,CAAA;AAEF;;GAEG;AACH,eAAO,MAAM,8BAA8B;;;;;;EAEzC,CAAA;AAMF;;GAEG;AACH,eAAO,MAAM,yBAAyB;;;;;;EAEpC,CAAA;AAEF;;GAEG;AACH,eAAO,MAAM,0BAA0B;;;;;;;;;EAGrC,CAAA;AAEF;;GAEG;AACH,eAAO,MAAM,4BAA4B;;;;;;EAEvC,CAAA;AAEF;;GAEG;AACH,eAAO,MAAM,6BAA6B;;;;;;;;;;;;EAIxC,CAAA;AAEF;;GAEG;AACH,eAAO,MAAM,iBAAiB;;;;;;;;;;;;;;;;;;;;;EAO5B,CAAA;AAMF;;;GAGG;AACH,eAAO,MAAM,gBAAgB,wDAAuB,CAAA;AAEpD;;GAEG;AACH,eAAO,MAAM,2BAA2B;;;;;;;;;EAGtC,CAAA;AAEF;;;;;;GAMG;AACH,eAAO,MAAM,4BAA4B;;;;;;;;;;;;EAIvC,CAAA"}
@@ -511,9 +511,14 @@ export const ClientRegisterRequestSchema = z.object({
511
511
  });
512
512
  /**
513
513
  * client:register response
514
+ *
515
+ * `daemonVersion` is optional so a client running with a newer schema can
516
+ * still parse acks from a daemon that hasn't been updated yet (it simply
517
+ * arrives as `undefined`). This unblocks rolling upgrades.
514
518
  */
515
519
  export const ClientRegisterResponseSchema = z.object({
516
520
  success: z.boolean(),
517
521
  error: z.string().optional(),
522
+ daemonVersion: z.string().optional(),
518
523
  });
519
524
  //# sourceMappingURL=schemas.js.map