shieldcortex 2.19.1 → 2.20.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 (147) hide show
  1. package/README.md +14 -10
  2. package/dashboard/.next/standalone/dashboard/.next/BUILD_ID +1 -1
  3. package/dashboard/.next/standalone/dashboard/.next/build-manifest.json +2 -2
  4. package/dashboard/.next/standalone/dashboard/.next/prerender-manifest.json +3 -3
  5. package/dashboard/.next/standalone/dashboard/.next/server/app/_global-error.html +2 -2
  6. package/dashboard/.next/standalone/dashboard/.next/server/app/_global-error.rsc +1 -1
  7. package/dashboard/.next/standalone/dashboard/.next/server/app/_global-error.segments/__PAGE__.segment.rsc +1 -1
  8. package/dashboard/.next/standalone/dashboard/.next/server/app/_global-error.segments/_full.segment.rsc +1 -1
  9. package/dashboard/.next/standalone/dashboard/.next/server/app/_global-error.segments/_head.segment.rsc +1 -1
  10. package/dashboard/.next/standalone/dashboard/.next/server/app/_global-error.segments/_index.segment.rsc +1 -1
  11. package/dashboard/.next/standalone/dashboard/.next/server/app/_global-error.segments/_tree.segment.rsc +1 -1
  12. package/dashboard/.next/standalone/dashboard/.next/server/app/_not-found/page_client-reference-manifest.js +1 -1
  13. package/dashboard/.next/standalone/dashboard/.next/server/app/_not-found.html +1 -1
  14. package/dashboard/.next/standalone/dashboard/.next/server/app/_not-found.rsc +2 -2
  15. package/dashboard/.next/standalone/dashboard/.next/server/app/_not-found.segments/_full.segment.rsc +2 -2
  16. package/dashboard/.next/standalone/dashboard/.next/server/app/_not-found.segments/_head.segment.rsc +1 -1
  17. package/dashboard/.next/standalone/dashboard/.next/server/app/_not-found.segments/_index.segment.rsc +2 -2
  18. package/dashboard/.next/standalone/dashboard/.next/server/app/_not-found.segments/_not-found/__PAGE__.segment.rsc +1 -1
  19. package/dashboard/.next/standalone/dashboard/.next/server/app/_not-found.segments/_not-found.segment.rsc +1 -1
  20. package/dashboard/.next/standalone/dashboard/.next/server/app/_not-found.segments/_tree.segment.rsc +2 -2
  21. package/dashboard/.next/standalone/dashboard/.next/server/app/index.html +1 -1
  22. package/dashboard/.next/standalone/dashboard/.next/server/app/index.rsc +3 -3
  23. package/dashboard/.next/standalone/dashboard/.next/server/app/index.segments/__PAGE__.segment.rsc +2 -2
  24. package/dashboard/.next/standalone/dashboard/.next/server/app/index.segments/_full.segment.rsc +3 -3
  25. package/dashboard/.next/standalone/dashboard/.next/server/app/index.segments/_head.segment.rsc +1 -1
  26. package/dashboard/.next/standalone/dashboard/.next/server/app/index.segments/_index.segment.rsc +2 -2
  27. package/dashboard/.next/standalone/dashboard/.next/server/app/index.segments/_tree.segment.rsc +2 -2
  28. package/dashboard/.next/standalone/dashboard/.next/server/app/page/react-loadable-manifest.json +3 -3
  29. package/dashboard/.next/standalone/dashboard/.next/server/app/page_client-reference-manifest.js +1 -1
  30. package/dashboard/.next/standalone/dashboard/.next/server/chunks/ssr/dashboard_25b1b286._.js +1 -1
  31. package/dashboard/.next/standalone/dashboard/.next/server/pages/404.html +1 -1
  32. package/dashboard/.next/standalone/dashboard/.next/server/pages/500.html +2 -2
  33. package/dashboard/.next/standalone/dashboard/.next/server/server-reference-manifest.js +1 -1
  34. package/dashboard/.next/standalone/dashboard/.next/server/server-reference-manifest.json +1 -1
  35. package/dashboard/.next/standalone/dashboard/.next/static/chunks/26118d592a545e00.js +3 -0
  36. package/dashboard/.next/standalone/dashboard/.next/static/chunks/6a6ccfb7834de00a.js +9 -0
  37. package/dashboard/.next/standalone/dashboard/.next/static/chunks/6b11a7d29e9abffd.js +1 -0
  38. package/dashboard/.next/standalone/dashboard/.next/static/chunks/ab13d81ce0e121f2.css +3 -0
  39. package/dashboard/.next/standalone/dashboard/.next/static/chunks/cf05262adfab5818.js +1 -0
  40. package/dist/api/control.d.ts +28 -11
  41. package/dist/api/control.d.ts.map +1 -1
  42. package/dist/api/control.js +120 -19
  43. package/dist/api/control.js.map +1 -1
  44. package/dist/api/events.d.ts +12 -1
  45. package/dist/api/events.d.ts.map +1 -1
  46. package/dist/api/events.js +9 -0
  47. package/dist/api/events.js.map +1 -1
  48. package/dist/api/visualization-server.d.ts.map +1 -1
  49. package/dist/api/visualization-server.js +306 -39
  50. package/dist/api/visualization-server.js.map +1 -1
  51. package/dist/cli/doctor.d.ts +6 -0
  52. package/dist/cli/doctor.d.ts.map +1 -0
  53. package/dist/cli/doctor.js +469 -0
  54. package/dist/cli/doctor.js.map +1 -0
  55. package/dist/cloud/quarantine-sync.d.ts +3 -0
  56. package/dist/cloud/quarantine-sync.d.ts.map +1 -1
  57. package/dist/cloud/quarantine-sync.js +7 -0
  58. package/dist/cloud/quarantine-sync.js.map +1 -1
  59. package/dist/cloud/sync.d.ts +11 -0
  60. package/dist/cloud/sync.d.ts.map +1 -1
  61. package/dist/cloud/sync.js +37 -0
  62. package/dist/cloud/sync.js.map +1 -1
  63. package/dist/database/init.d.ts +8 -0
  64. package/dist/database/init.d.ts.map +1 -1
  65. package/dist/database/init.js +208 -4
  66. package/dist/database/init.js.map +1 -1
  67. package/dist/defence/index.d.ts +2 -0
  68. package/dist/defence/index.d.ts.map +1 -1
  69. package/dist/defence/index.js +2 -0
  70. package/dist/defence/index.js.map +1 -1
  71. package/dist/defence/input-sanitisation/index.d.ts +28 -0
  72. package/dist/defence/input-sanitisation/index.d.ts.map +1 -0
  73. package/dist/defence/input-sanitisation/index.js +71 -0
  74. package/dist/defence/input-sanitisation/index.js.map +1 -0
  75. package/dist/defence/iron-dome/config.js +5 -5
  76. package/dist/defence/iron-dome/config.js.map +1 -1
  77. package/dist/defence/iron-dome/index.d.ts +6 -0
  78. package/dist/defence/iron-dome/index.d.ts.map +1 -1
  79. package/dist/defence/iron-dome/index.js +19 -0
  80. package/dist/defence/iron-dome/index.js.map +1 -1
  81. package/dist/defence/pipeline.d.ts.map +1 -1
  82. package/dist/defence/pipeline.js +21 -11
  83. package/dist/defence/pipeline.js.map +1 -1
  84. package/dist/events/webhooks.d.ts +21 -0
  85. package/dist/events/webhooks.d.ts.map +1 -0
  86. package/dist/events/webhooks.js +61 -0
  87. package/dist/events/webhooks.js.map +1 -0
  88. package/dist/graph/backfill.d.ts +6 -2
  89. package/dist/graph/backfill.d.ts.map +1 -1
  90. package/dist/graph/backfill.js +32 -4
  91. package/dist/graph/backfill.js.map +1 -1
  92. package/dist/graph/extract.d.ts.map +1 -1
  93. package/dist/graph/extract.js +105 -37
  94. package/dist/graph/extract.js.map +1 -1
  95. package/dist/index.d.ts.map +1 -1
  96. package/dist/index.js +67 -5
  97. package/dist/index.js.map +1 -1
  98. package/dist/lib.d.ts +2 -0
  99. package/dist/lib.d.ts.map +1 -1
  100. package/dist/lib.js +2 -0
  101. package/dist/lib.js.map +1 -1
  102. package/dist/memory/consolidate.d.ts +23 -0
  103. package/dist/memory/consolidate.d.ts.map +1 -1
  104. package/dist/memory/consolidate.js +239 -2
  105. package/dist/memory/consolidate.js.map +1 -1
  106. package/dist/memory/decay.d.ts.map +1 -1
  107. package/dist/memory/decay.js +9 -0
  108. package/dist/memory/decay.js.map +1 -1
  109. package/dist/memory/embedding-cache.d.ts +21 -0
  110. package/dist/memory/embedding-cache.d.ts.map +1 -0
  111. package/dist/memory/embedding-cache.js +92 -0
  112. package/dist/memory/embedding-cache.js.map +1 -0
  113. package/dist/memory/embedding.d.ts +37 -0
  114. package/dist/memory/embedding.d.ts.map +1 -0
  115. package/dist/memory/embedding.js +86 -0
  116. package/dist/memory/embedding.js.map +1 -0
  117. package/dist/memory/expiry.d.ts +26 -0
  118. package/dist/memory/expiry.d.ts.map +1 -0
  119. package/dist/memory/expiry.js +109 -0
  120. package/dist/memory/expiry.js.map +1 -0
  121. package/dist/memory/store.d.ts +14 -0
  122. package/dist/memory/store.d.ts.map +1 -1
  123. package/dist/memory/store.js +82 -0
  124. package/dist/memory/store.js.map +1 -1
  125. package/dist/memory/types.d.ts +1 -0
  126. package/dist/memory/types.d.ts.map +1 -1
  127. package/dist/memory/types.js.map +1 -1
  128. package/dist/server.d.ts.map +1 -1
  129. package/dist/server.js +193 -45
  130. package/dist/server.js.map +1 -1
  131. package/dist/tools/context.d.ts +4 -4
  132. package/dist/tools/forget.d.ts +4 -4
  133. package/dist/tools/recall.d.ts +9 -9
  134. package/dist/tools/recall.d.ts.map +1 -1
  135. package/dist/tools/recall.js +25 -1
  136. package/dist/tools/recall.js.map +1 -1
  137. package/dist/tools/remember.d.ts +6 -6
  138. package/hooks/openclaw/cortex-memory/handler.ts +8 -18
  139. package/package.json +1 -1
  140. package/dashboard/.next/standalone/dashboard/.next/static/chunks/1a71c9a52f0c9b16.css +0 -3
  141. package/dashboard/.next/standalone/dashboard/.next/static/chunks/6bf7d89d34068ecb.js +0 -9
  142. package/dashboard/.next/standalone/dashboard/.next/static/chunks/a3989d0e6629bcf8.js +0 -3
  143. package/dashboard/.next/standalone/dashboard/.next/static/chunks/d0dcb5e0e04ae015.js +0 -1
  144. package/dashboard/.next/standalone/dashboard/.next/static/chunks/fc2dbf641aad1448.js +0 -1
  145. /package/dashboard/.next/standalone/dashboard/.next/static/{vxPliVFK4FIBIPl1JPL0U → aFo1BShJENvQZgqpWRJaw}/_buildManifest.js +0 -0
  146. /package/dashboard/.next/standalone/dashboard/.next/static/{vxPliVFK4FIBIPl1JPL0U → aFo1BShJENvQZgqpWRJaw}/_clientMiddlewareManifest.json +0 -0
  147. /package/dashboard/.next/standalone/dashboard/.next/static/{vxPliVFK4FIBIPl1JPL0U → aFo1BShJENvQZgqpWRJaw}/_ssgManifest.js +0 -0
@@ -1,3 +0,0 @@
1
- (globalThis.TURBOPACK||(globalThis.TURBOPACK=[])).push(["object"==typeof document?document.currentScript:void 0,96243,e=>{"use strict";var t=e.i(27493),i=e.i(4),a=e.i(74133),l=e.i(97358);let r=(0,a.default)(()=>e.A(23531),{loadableGenerated:{modules:[23272]},ssr:!1});function n({memories:e,links:a,selectedMemory:n,onSelectMemory:s}){let c=(0,i.useRef)(null),o=(0,i.useRef)(null),[d,h]=(0,i.useState)({width:800,height:600});(0,i.useEffect)(()=>{let e=c.current;if(!e)return;let t=()=>{h({width:e.clientWidth,height:e.clientHeight})};t();let i=new ResizeObserver(t);return i.observe(e),()=>i.disconnect()},[]);let u=(0,i.useMemo)(()=>{let t=new Set(e.map(e=>e.id));return{nodes:e.map(e=>({id:e.id,name:e.title,category:e.category,type:e.type,salience:e.salience,decayedScore:e.decayedScore??e.salience,val:10*e.salience})),links:a.filter(e=>t.has(e.source_id)&&t.has(e.target_id)).map(e=>({source:e.source_id,target:e.target_id,strength:e.strength,relationship:e.relationship}))}},[e,a]),g=(0,i.useCallback)((e,t,i)=>{let a=e.x,r=e.y;if(null==a||null==r)return;let s=Math.max(3,8*e.salience),c=(0,l.getCategoryColor)(e.category),o=Math.max(.2,e.decayedScore),d=n?.id===e.id;if(t.beginPath(),t.arc(a,r,s,0,2*Math.PI),t.fillStyle=c+Math.round(255*o).toString(16).padStart(2,"0"),t.fill(),t.lineWidth=d?2:1,t.strokeStyle=d?"#ffffff":c,"short_term"===e.type?t.setLineDash([3,3]):"episodic"===e.type?t.setLineDash([1,2]):t.setLineDash([]),t.stroke(),t.setLineDash([]),i>3){let l=e.name.length>40?e.name.slice(0,40)+"…":e.name,n=Math.max(10,12/i);t.font=`${n}px Sans-Serif`,t.textAlign="center",t.textBaseline="top";let c=t.measureText(l).width,o=r+s+3;t.fillStyle="rgba(2, 6, 23, 0.85)",t.beginPath(),t.roundRect(a-c/2-2,o-2,c+4,n+4,3),t.fill(),t.fillStyle="#e2e8f0",t.fillText(l,a,o)}},[n]),f=(0,i.useCallback)((e,t)=>{let i=e.source,a=e.target;i?.x&&a?.x&&(t.beginPath(),t.moveTo(i.x,i.y),t.lineTo(a.x,a.y),t.strokeStyle="#334155",t.lineWidth=3*e.strength,t.stroke())},[]),y=(0,i.useRef)(1),m=(0,i.useCallback)(({k:e})=>{let t=o.current;if(!t||.2>Math.abs(e-y.current))return;y.current=e;let i=t.d3Force("charge");i&&(e>3?i.strength(-50*e):i.strength(-30),t.d3ReheatSimulation())},[]),b=(0,i.useCallback)(t=>{s(e.find(e=>e.id===t.id)??null)},[e,s]),p=(0,i.useCallback)(e=>`${e.name}
2
- Category: ${e.category}
3
- Salience: ${e.salience.toFixed(2)}`,[]);return(0,t.jsx)("div",{ref:c,style:{width:"100%",height:"100%"},children:d.width>0&&(0,t.jsx)(r,{ref:o,graphData:u,width:d.width,height:d.height,backgroundColor:"rgba(0,0,0,0)",nodeCanvasObject:g,nodeLabel:p,onNodeClick:b,onZoom:m,linkCanvasObject:f,linkDirectionalParticles:2,linkDirectionalParticleWidth:2,linkDirectionalParticleSpeed:.005,linkDirectionalParticleColor:()=>"#22d3ee",d3AlphaDecay:.02,d3VelocityDecay:.3,warmupTicks:100,cooldownTicks:200})})}e.s(["default",()=>n])},11570,e=>{e.n(e.i(96243))},23531,e=>{e.v(t=>Promise.all(["static/chunks/364656baa57adaa7.js"].map(t=>e.l(t))).then(()=>t(23272)))}]);
@@ -1 +0,0 @@
1
- (globalThis.TURBOPACK||(globalThis.TURBOPACK=[])).push(["object"==typeof document?document.currentScript:void 0,88069,45688,71921,88969,94156,e=>{"use strict";let t;var r=e.i(22534),s=e.i(11919),i=e.i(79736),n=e.i(96099),a=e.i(70207),o=e.i(32446),u=e.i(60904),c=e.i(62422),l=class extends a.Subscribable{constructor(e,t){super(),this.options=t,this.#e=e,this.#t=null,this.#r=(0,o.pendingThenable)(),this.bindMethods(),this.setOptions(t)}#e;#s=void 0;#i=void 0;#n=void 0;#a;#o;#r;#t;#u;#c;#l;#h;#d;#y;#f=new Set;bindMethods(){this.refetch=this.refetch.bind(this)}onSubscribe(){1===this.listeners.size&&(this.#s.addObserver(this),h(this.#s,this.options)?this.#p():this.updateResult(),this.#m())}onUnsubscribe(){this.hasListeners()||this.destroy()}shouldFetchOnReconnect(){return d(this.#s,this.options,this.options.refetchOnReconnect)}shouldFetchOnWindowFocus(){return d(this.#s,this.options,this.options.refetchOnWindowFocus)}destroy(){this.listeners=new Set,this.#v(),this.#b(),this.#s.removeObserver(this)}setOptions(e){let t=this.options,r=this.#s;if(this.options=this.#e.defaultQueryOptions(e),void 0!==this.options.enabled&&"boolean"!=typeof this.options.enabled&&"function"!=typeof this.options.enabled&&"boolean"!=typeof(0,u.resolveEnabled)(this.options.enabled,this.#s))throw Error("Expected enabled to be a boolean or a callback that returns a boolean");this.#S(),this.#s.setOptions(this.options),t._defaulted&&!(0,u.shallowEqualObjects)(this.options,t)&&this.#e.getQueryCache().notify({type:"observerOptionsUpdated",query:this.#s,observer:this});let s=this.hasListeners();s&&y(this.#s,r,this.options,t)&&this.#p(),this.updateResult(),s&&(this.#s!==r||(0,u.resolveEnabled)(this.options.enabled,this.#s)!==(0,u.resolveEnabled)(t.enabled,this.#s)||(0,u.resolveStaleTime)(this.options.staleTime,this.#s)!==(0,u.resolveStaleTime)(t.staleTime,this.#s))&&this.#R();let i=this.#g();s&&(this.#s!==r||(0,u.resolveEnabled)(this.options.enabled,this.#s)!==(0,u.resolveEnabled)(t.enabled,this.#s)||i!==this.#y)&&this.#w(i)}getOptimisticResult(e){var t,r;let s=this.#e.getQueryCache().build(this.#e,e),i=this.createResult(s,e);return t=this,r=i,(0,u.shallowEqualObjects)(t.getCurrentResult(),r)||(this.#n=i,this.#o=this.options,this.#a=this.#s.state),i}getCurrentResult(){return this.#n}trackResult(e,t){return new Proxy(e,{get:(e,r)=>(this.trackProp(r),t?.(r),"promise"===r&&(this.trackProp("data"),this.options.experimental_prefetchInRender||"pending"!==this.#r.status||this.#r.reject(Error("experimental_prefetchInRender feature flag is not enabled"))),Reflect.get(e,r))})}trackProp(e){this.#f.add(e)}getCurrentQuery(){return this.#s}refetch({...e}={}){return this.fetch({...e})}fetchOptimistic(e){let t=this.#e.defaultQueryOptions(e),r=this.#e.getQueryCache().build(this.#e,t);return r.fetch().then(()=>this.createResult(r,t))}fetch(e){return this.#p({...e,cancelRefetch:e.cancelRefetch??!0}).then(()=>(this.updateResult(),this.#n))}#p(e){this.#S();let t=this.#s.fetch(this.options,e);return e?.throwOnError||(t=t.catch(u.noop)),t}#R(){this.#v();let e=(0,u.resolveStaleTime)(this.options.staleTime,this.#s);if(u.isServer||this.#n.isStale||!(0,u.isValidTimeout)(e))return;let t=(0,u.timeUntilStale)(this.#n.dataUpdatedAt,e);this.#h=c.timeoutManager.setTimeout(()=>{this.#n.isStale||this.updateResult()},t+1)}#g(){return("function"==typeof this.options.refetchInterval?this.options.refetchInterval(this.#s):this.options.refetchInterval)??!1}#w(e){this.#b(),this.#y=e,!u.isServer&&!1!==(0,u.resolveEnabled)(this.options.enabled,this.#s)&&(0,u.isValidTimeout)(this.#y)&&0!==this.#y&&(this.#d=c.timeoutManager.setInterval(()=>{(this.options.refetchIntervalInBackground||s.focusManager.isFocused())&&this.#p()},this.#y))}#m(){this.#R(),this.#w(this.#g())}#v(){this.#h&&(c.timeoutManager.clearTimeout(this.#h),this.#h=void 0)}#b(){this.#d&&(c.timeoutManager.clearInterval(this.#d),this.#d=void 0)}createResult(e,t){let r,s=this.#s,i=this.options,a=this.#n,c=this.#a,l=this.#o,d=e!==s?e.state:this.#i,{state:p}=e,m={...p},v=!1;if(t._optimisticResults){let r=this.hasListeners(),a=!r&&h(e,t),o=r&&y(e,s,t,i);(a||o)&&(m={...m,...(0,n.fetchState)(p.data,e.options)}),"isRestoring"===t._optimisticResults&&(m.fetchStatus="idle")}let{error:b,errorUpdatedAt:S,status:R}=m;r=m.data;let g=!1;if(void 0!==t.placeholderData&&void 0===r&&"pending"===R){let e;a?.isPlaceholderData&&t.placeholderData===l?.placeholderData?(e=a.data,g=!0):e="function"==typeof t.placeholderData?t.placeholderData(this.#l?.state.data,this.#l):t.placeholderData,void 0!==e&&(R="success",r=(0,u.replaceData)(a?.data,e,t),v=!0)}if(t.select&&void 0!==r&&!g)if(a&&r===c?.data&&t.select===this.#u)r=this.#c;else try{this.#u=t.select,r=t.select(r),r=(0,u.replaceData)(a?.data,r,t),this.#c=r,this.#t=null}catch(e){this.#t=e}this.#t&&(b=this.#t,r=this.#c,S=Date.now(),R="error");let w="fetching"===m.fetchStatus,Q="pending"===R,E="error"===R,F=Q&&w,T=void 0!==r,q={status:R,fetchStatus:m.fetchStatus,isPending:Q,isSuccess:"success"===R,isError:E,isInitialLoading:F,isLoading:F,data:r,dataUpdatedAt:m.dataUpdatedAt,error:b,errorUpdatedAt:S,failureCount:m.fetchFailureCount,failureReason:m.fetchFailureReason,errorUpdateCount:m.errorUpdateCount,isFetched:m.dataUpdateCount>0||m.errorUpdateCount>0,isFetchedAfterMount:m.dataUpdateCount>d.dataUpdateCount||m.errorUpdateCount>d.errorUpdateCount,isFetching:w,isRefetching:w&&!Q,isLoadingError:E&&!T,isPaused:"paused"===m.fetchStatus,isPlaceholderData:v,isRefetchError:E&&T,isStale:f(e,t),refetch:this.refetch,promise:this.#r,isEnabled:!1!==(0,u.resolveEnabled)(t.enabled,e)};if(this.options.experimental_prefetchInRender){let t=void 0!==q.data,r="error"===q.status&&!t,i=e=>{r?e.reject(q.error):t&&e.resolve(q.data)},n=()=>{i(this.#r=q.promise=(0,o.pendingThenable)())},a=this.#r;switch(a.status){case"pending":e.queryHash===s.queryHash&&i(a);break;case"fulfilled":(r||q.data!==a.value)&&n();break;case"rejected":r&&q.error===a.reason||n()}}return q}updateResult(){let e=this.#n,t=this.createResult(this.#s,this.options);if(this.#a=this.#s.state,this.#o=this.options,void 0!==this.#a.data&&(this.#l=this.#s),(0,u.shallowEqualObjects)(t,e))return;this.#n=t;let r=()=>{if(!e)return!0;let{notifyOnChangeProps:t}=this.options,r="function"==typeof t?t():t;if("all"===r||!r&&!this.#f.size)return!0;let s=new Set(r??this.#f);return this.options.throwOnError&&s.add("error"),Object.keys(this.#n).some(t=>this.#n[t]!==e[t]&&s.has(t))};this.#Q({listeners:r()})}#S(){let e=this.#e.getQueryCache().build(this.#e,this.options);if(e===this.#s)return;let t=this.#s;this.#s=e,this.#i=e.state,this.hasListeners()&&(t?.removeObserver(this),e.addObserver(this))}onQueryUpdate(){this.updateResult(),this.hasListeners()&&this.#m()}#Q(e){i.notifyManager.batch(()=>{e.listeners&&this.listeners.forEach(e=>{e(this.#n)}),this.#e.getQueryCache().notify({query:this.#s,type:"observerResultsUpdated"})})}};function h(e,t){return!1!==(0,u.resolveEnabled)(t.enabled,e)&&void 0===e.state.data&&("error"!==e.state.status||!1!==t.retryOnMount)||void 0!==e.state.data&&d(e,t,t.refetchOnMount)}function d(e,t,r){if(!1!==(0,u.resolveEnabled)(t.enabled,e)&&"static"!==(0,u.resolveStaleTime)(t.staleTime,e)){let s="function"==typeof r?r(e):r;return"always"===s||!1!==s&&f(e,t)}return!1}function y(e,t,r,s){return(e!==t||!1===(0,u.resolveEnabled)(s.enabled,e))&&(!r.suspense||"error"!==e.state.status)&&f(e,r)}function f(e,t){return!1!==(0,u.resolveEnabled)(t.enabled,e)&&e.isStaleByTime((0,u.resolveStaleTime)(t.staleTime,e))}var p=e.i(4),m=e.i(1235);e.i(27493);var v=p.createContext((t=!1,{clearReset:()=>{t=!1},reset:()=>{t=!0},isReset:()=>t})),b=p.createContext(!1);b.Provider;var S=(e,t,r)=>t.fetchOptimistic(e).catch(()=>{r.clearReset()});function R(e,t){return function(e,t,r){let s,n=p.useContext(b),a=p.useContext(v),o=(0,m.useQueryClient)(r),c=o.defaultQueryOptions(e);o.getDefaultOptions().queries?._experimental_beforeQuery?.(c);let l=o.getQueryCache().get(c.queryHash);if(c._optimisticResults=n?"isRestoring":"optimistic",c.suspense){let e=e=>"static"===e?e:Math.max(e??1e3,1e3),t=c.staleTime;c.staleTime="function"==typeof t?(...r)=>e(t(...r)):e(t),"number"==typeof c.gcTime&&(c.gcTime=Math.max(c.gcTime,1e3))}s=l?.state.error&&"function"==typeof c.throwOnError?(0,u.shouldThrowError)(c.throwOnError,[l.state.error,l]):c.throwOnError,(c.suspense||c.experimental_prefetchInRender||s)&&!a.isReset()&&(c.retryOnMount=!1),p.useEffect(()=>{a.clearReset()},[a]);let h=!o.getQueryCache().get(c.queryHash),[d]=p.useState(()=>new t(o,c)),y=d.getOptimisticResult(c),f=!n&&!1!==e.subscribed;if(p.useSyncExternalStore(p.useCallback(e=>{let t=f?d.subscribe(i.notifyManager.batchCalls(e)):u.noop;return d.updateResult(),t},[d,f]),()=>d.getCurrentResult(),()=>d.getCurrentResult()),p.useEffect(()=>{d.setOptions(c)},[c,d]),c?.suspense&&y.isPending)throw S(c,d,a);if((({result:e,errorResetBoundary:t,throwOnError:r,query:s,suspense:i})=>e.isError&&!t.isReset()&&!e.isFetching&&s&&(i&&void 0===e.data||(0,u.shouldThrowError)(r,[e.error,s])))({result:y,errorResetBoundary:a,throwOnError:c.throwOnError,query:l,suspense:c.suspense}))throw y.error;if(o.getDefaultOptions().queries?._experimental_afterQuery?.(c,y),c.experimental_prefetchInRender&&!u.isServer&&y.isLoading&&y.isFetching&&!n){let e=h?S(c,d,a):l?.promise;e?.catch(u.noop).finally(()=>{d.updateResult()})}return c.notifyOnChangeProps?y:d.trackResult(y)}(e,l,t)}e.s(["useQuery",()=>R],45688);var g=e.i(21230),w=a,Q=class extends w.Subscribable{#e;#n=void 0;#E;#F;constructor(e,t){super(),this.#e=e,this.setOptions(t),this.bindMethods(),this.#T()}bindMethods(){this.mutate=this.mutate.bind(this),this.reset=this.reset.bind(this)}setOptions(e){let t=this.options;this.options=this.#e.defaultMutationOptions(e),(0,u.shallowEqualObjects)(this.options,t)||this.#e.getMutationCache().notify({type:"observerOptionsUpdated",mutation:this.#E,observer:this}),t?.mutationKey&&this.options.mutationKey&&(0,u.hashKey)(t.mutationKey)!==(0,u.hashKey)(this.options.mutationKey)?this.reset():this.#E?.state.status==="pending"&&this.#E.setOptions(this.options)}onUnsubscribe(){this.hasListeners()||this.#E?.removeObserver(this)}onMutationUpdate(e){this.#T(),this.#Q(e)}getCurrentResult(){return this.#n}reset(){this.#E?.removeObserver(this),this.#E=void 0,this.#T(),this.#Q()}mutate(e,t){return this.#F=t,this.#E?.removeObserver(this),this.#E=this.#e.getMutationCache().build(this.#e,this.options),this.#E.addObserver(this),this.#E.execute(e)}#T(){let e=this.#E?.state??(0,g.getDefaultState)();this.#n={...e,isPending:"pending"===e.status,isSuccess:"success"===e.status,isError:"error"===e.status,isIdle:"idle"===e.status,mutate:this.mutate,reset:this.reset}}#Q(e){i.notifyManager.batch(()=>{if(this.#F&&this.hasListeners()){let t=this.#n.variables,r=this.#n.context,s={client:this.#e,meta:this.options.meta,mutationKey:this.options.mutationKey};if(e?.type==="success"){try{this.#F.onSuccess?.(e.data,t,r,s)}catch(e){Promise.reject(e)}try{this.#F.onSettled?.(e.data,null,t,r,s)}catch(e){Promise.reject(e)}}else if(e?.type==="error"){try{this.#F.onError?.(e.error,t,r,s)}catch(e){Promise.reject(e)}try{this.#F.onSettled?.(void 0,e.error,t,r,s)}catch(e){Promise.reject(e)}}}this.listeners.forEach(e=>{e(this.#n)})})}};function E(e,t){let r=(0,m.useQueryClient)(t),[s]=p.useState(()=>new Q(r,e));p.useEffect(()=>{s.setOptions(e)},[s,e]);let n=p.useSyncExternalStore(p.useCallback(e=>s.subscribe(i.notifyManager.batchCalls(e)),[s]),()=>s.getCurrentResult(),()=>s.getCurrentResult()),a=p.useCallback((e,t)=>{s.mutate(e,t).catch(u.noop)},[s]);if(n.error&&(0,u.shouldThrowError)(s.options.throwOnError,[n.error]))throw n.error;return{...n,mutate:a,mutateAsync:n.mutate}}e.s(["useMutation",()=>E],71921);let F=r.default.env.NEXT_PUBLIC_API_URL||"http://localhost:3001",T=null,q=null;async function k(){if(T)return T;if(q)return q;q=(async()=>{let e=await fetch(`${F}/api/auth/session-token`);if(!e.ok)throw Error((await e.json().catch(()=>({}))).error||"Failed to fetch session token");let{token:t}=await e.json();return T=t,t})();try{return await q}finally{q=null}}async function O(e,t){let r=await k(),s=new Headers(t?.headers);return s.set("Authorization",`Bearer ${r}`),fetch(e,{...t,headers:s})}class C extends Error{feature;requiredTier;constructor(e,t){super(`Feature locked: ${e}`),this.name="FeatureLockedError",this.feature=e,this.requiredTier=t}}async function M(e,t){let r=await O(e,t);if(403===r.status){let e=await r.json().catch(()=>({}));if("FEATURE_GATED"===e.code)throw new C(e.feature,e.requiredTier)}return r}e.s(["FeatureLockedError",()=>C,"authFetch",()=>O,"gatedFetch",()=>M,"getApiToken",()=>k],88969);let j=r.default.env.NEXT_PUBLIC_WS_URL||"ws://localhost:3001/ws/events";function I(e={}){let{enabled:t=!0,onMessage:r}=e,s=(0,m.useQueryClient)(),i=(0,p.useRef)(null),n=(0,p.useRef)(null),a=(0,p.useRef)(0),o=(0,p.useRef)(1e3),u=(0,p.useRef)(()=>{}),[c,l]=(0,p.useState)(!1),[h,d]=(0,p.useState)(null),y=(0,p.useRef)(r);(0,p.useEffect)(()=>{y.current=r},[r]);let f=(0,p.useCallback)(async()=>{if(t&&i.current?.readyState!==WebSocket.OPEN){n.current&&(clearTimeout(n.current),n.current=null);try{let e=await k(),r=`${j}?token=${encodeURIComponent(e)}`,c=new WebSocket(r);i.current=c,c.onopen=()=>{l(!0),a.current=0,o.current=1e3,console.log("[WebSocket] Connected to memory server")},c.onmessage=e=>{try{let t=JSON.parse(e.data);switch(d({type:t.type,data:t.data,timestamp:t.timestamp||new Date().toISOString()}),y.current?.(t),t.type){case"initial_state":case"consolidation_complete":case"predictive_consolidation":s.invalidateQueries({queryKey:["memories"]}),s.invalidateQueries({queryKey:["stats"]}),s.invalidateQueries({queryKey:["links"]});break;case"memory_created":case"memory_updated":case"memory_deleted":s.invalidateQueries({queryKey:["memories"]}),s.invalidateQueries({queryKey:["stats"]});break;case"decay_tick":case"worker_light_tick":case"worker_medium_tick":break;case"link_discovered":s.invalidateQueries({queryKey:["links"]});break;case"defence_event":s.invalidateQueries({queryKey:["agents"]}),s.invalidateQueries({queryKey:["agent-timeline"]}),s.invalidateQueries({queryKey:["audit-logs"]}),s.invalidateQueries({queryKey:["audit-stats"]});break;case"update_started":case"update_complete":case"update_failed":"update_complete"===t.type&&(s.invalidateQueries({queryKey:["version"]}),s.invalidateQueries({queryKey:["version-check"]}));break;case"server_restarting":console.log("[WebSocket] Server restarting, will reconnect shortly...")}}catch(e){console.error("[WebSocket] Failed to parse message:",e)}},c.onerror=()=>{console.warn("[WebSocket] Connection failed - is the API server running?")},c.onclose=()=>{if(l(!1),console.log("[WebSocket] Disconnected"),t&&a.current<10){let e=o.current;a.current++,o.current=Math.min(2*o.current,3e4),console.log(`[WebSocket] Reconnecting in ${e}ms (attempt ${a.current}/10)...`),n.current=setTimeout(()=>{u.current()},e)}else a.current>=10&&console.error("[WebSocket] Max reconnection attempts reached. Use reconnect() to try again.")}}catch(e){console.error("[WebSocket] Failed to connect:",e)}}},[t,s]);return(0,p.useEffect)(()=>{u.current=f}),(0,p.useEffect)(()=>(t&&f(),()=>{n.current&&clearTimeout(n.current),i.current&&(i.current.close(),i.current=null)}),[t,f]),{isConnected:c,lastEvent:h,reconnect:(0,p.useCallback)(()=>{a.current=0,o.current=1e3,f()},[f])}}e.s(["useMemoryWebSocket",()=>I],94156);let P=r.default.env.NEXT_PUBLIC_API_URL||"http://localhost:3001";async function K(e){let t=new URLSearchParams;e?.project&&t.set("project",e.project),e?.type&&t.set("type",e.type),e?.category&&t.set("category",e.category),e?.limit&&t.set("limit",e.limit.toString()),e?.offset&&t.set("offset",e.offset.toString()),e?.mode&&t.set("mode",e.mode),e?.query&&t.set("query",e.query);let r=await O(`${P}/api/memories?${t}`);if(!r.ok)throw Error("Failed to fetch memories");return r.json()}async function $(e){let t=e?`?project=${e}`:"",r=await O(`${P}/api/stats${t}`);if(!r.ok)throw Error("Failed to fetch stats");return r.json()}async function _(e){let t=e?`?project=${e}`:"",r=await O(`${P}/api/links${t}`);if(!r.ok)throw Error("Failed to fetch links");return r.json()}async function x(){let e=await O(`${P}/api/projects`);if(!e.ok)throw Error("Failed to fetch projects");return e.json()}async function U(e){let t=await O(`${P}/api/memories/${e}/access`,{method:"POST"});if(!t.ok)throw Error("Failed to access memory");return t.json()}async function D(){let e=await O(`${P}/api/consolidate`,{method:"POST"});if(!e.ok)throw Error("Failed to consolidate");return e.json()}function L(e){return R({queryKey:["stats",e],queryFn:()=>$(e),refetchInterval:3e4})}function A(e){return R({queryKey:["links",e],queryFn:()=>_(e),refetchInterval:6e4})}function W(){return R({queryKey:["projects"],queryFn:x,refetchInterval:6e4})}function z(e){let t,r=I();return{...{...t=R({queryKey:["memories",e],queryFn:()=>K(e),refetchInterval:3e4}),data:t.data?.memories,pagination:t.data?.pagination},isConnected:r.isConnected,lastEvent:r.lastEvent}}function B(){let e=(0,m.useQueryClient)();return E({mutationFn:U,onSuccess:()=>{e.invalidateQueries({queryKey:["memories"]}),e.invalidateQueries({queryKey:["stats"]})}})}function N(){let e=(0,m.useQueryClient)();return E({mutationFn:D,onSuccess:()=>{e.invalidateQueries({queryKey:["memories"]}),e.invalidateQueries({queryKey:["stats"]})}})}async function H(){let e=await O(`${P}/api/control/status`);if(!e.ok)throw Error("Failed to fetch control status");return e.json()}async function J(){let e=await O(`${P}/api/control/pause`,{method:"POST"});if(!e.ok)throw Error("Failed to pause");return e.json()}async function V(){let e=await O(`${P}/api/control/resume`,{method:"POST"});if(!e.ok)throw Error("Failed to resume");return e.json()}function X(){return R({queryKey:["control-status"],queryFn:H,refetchInterval:1e4})}function G(){let e=(0,m.useQueryClient)();return E({mutationFn:J,onSuccess:()=>{e.invalidateQueries({queryKey:["control-status"]})}})}function Y(){let e=(0,m.useQueryClient)();return E({mutationFn:V,onSuccess:()=>{e.invalidateQueries({queryKey:["control-status"]})}})}async function Z(){let e=await O(`${P}/api/version`);if(!e.ok)throw Error("Failed to fetch version");return e.json()}function ee(){return R({queryKey:["version"],queryFn:Z,refetchInterval:6e4,staleTime:3e4})}async function et(e){let t=e?`?project=${e}`:"",r=await O(`${P}/api/contradictions${t}`);if(!r.ok)throw Error("Failed to fetch contradictions");return r.json()}function er(e){return R({queryKey:["contradictions",e],queryFn:()=>et(e),staleTime:3e5})}async function es(e){let t=await O(`${P}/api/memories/${e}/boost`,{method:"POST"});if(!t.ok)throw Error("Failed to boost memory");return t.json()}async function ei(e){let t=await O(`${P}/api/memories/${e}/demote`,{method:"POST"});if(!t.ok)throw Error("Failed to demote memory");return t.json()}async function en(e){let t=await O(`${P}/api/memories/${e}/promote`,{method:"POST"});if(!t.ok)throw Error("Failed to promote memory");return t.json()}async function ea(e,t){let r=await O(`${P}/api/memories/${e}`,{method:"PATCH",headers:{"Content-Type":"application/json"},body:JSON.stringify(t)});if(!r.ok)throw Error("Failed to edit memory");return r.json()}async function eo(e){let t=await O(`${P}/api/memories/${e}`,{method:"DELETE"});if(!t.ok)throw Error("Failed to delete memory");return t.json()}async function eu(e,t){let r=await O(`${P}/api/memories/${e}/quarantine`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({reason:t})});if(!r.ok)throw Error("Failed to quarantine memory");return r.json()}async function ec(){let e=await O(`${P}/api/worker/status`);if(!e.ok)throw Error("Failed to fetch worker status");return e.json()}function el(){let e=(0,m.useQueryClient)();return E({mutationFn:es,onSuccess:()=>{e.invalidateQueries({queryKey:["memories"]}),e.invalidateQueries({queryKey:["stats"]})}})}function eh(){let e=(0,m.useQueryClient)();return E({mutationFn:ei,onSuccess:()=>{e.invalidateQueries({queryKey:["memories"]}),e.invalidateQueries({queryKey:["stats"]})}})}function ed(){let e=(0,m.useQueryClient)();return E({mutationFn:en,onSuccess:()=>{e.invalidateQueries({queryKey:["memories"]}),e.invalidateQueries({queryKey:["stats"]})}})}function ey(){let e=(0,m.useQueryClient)();return E({mutationFn:({id:e,updates:t})=>ea(e,t),onSuccess:()=>{e.invalidateQueries({queryKey:["memories"]}),e.invalidateQueries({queryKey:["stats"]})}})}function ef(){let e=(0,m.useQueryClient)();return E({mutationFn:eo,onSuccess:()=>{e.invalidateQueries({queryKey:["memories"]}),e.invalidateQueries({queryKey:["stats"]}),e.invalidateQueries({queryKey:["links"]})}})}function ep(){let e=(0,m.useQueryClient)();return E({mutationFn:({id:e,reason:t})=>eu(e,t),onSuccess:()=>{e.invalidateQueries({queryKey:["memories"]}),e.invalidateQueries({queryKey:["stats"]})}})}function em(){return R({queryKey:["worker-status"],queryFn:ec,refetchInterval:15e3})}e.s(["useAccessMemory",()=>B,"useBoostMemory",()=>el,"useConsolidate",()=>N,"useContradictions",()=>er,"useControlStatus",()=>X,"useDeleteMemory",()=>ef,"useDemoteMemory",()=>eh,"useEditMemory",()=>ey,"useMemoriesWithRealtime",()=>z,"useMemoryLinks",()=>A,"usePauseMemory",()=>G,"useProjects",()=>W,"usePromoteMemory",()=>ed,"useQuarantineMemory",()=>ep,"useResumeMemory",()=>Y,"useStats",()=>L,"useVersion",()=>ee,"useWorkerStatus",()=>em],88069)},42098,92618,e=>{"use strict";let t;var r=e.i(4);let s=e=>{let t,r=new Set,s=(e,s)=>{let i="function"==typeof e?e(t):e;if(!Object.is(i,t)){let e=t;t=(null!=s?s:"object"!=typeof i||null===i)?i:Object.assign({},t,i),r.forEach(r=>r(t,e))}},i=()=>t,n={setState:s,getState:i,getInitialState:()=>a,subscribe:e=>(r.add(e),()=>r.delete(e))},a=t=e(s,i,n);return n},i=e=>e?s(e):s;e.s(["createStore",()=>i],92618);let n=e=>{let t=i(e),s=e=>(function(e,t=e=>e){let s=r.default.useSyncExternalStore(e.subscribe,r.default.useCallback(()=>t(e.getState()),[e,t]),r.default.useCallback(()=>t(e.getInitialState()),[e,t]));return r.default.useDebugValue(s),s})(t,e);return Object.assign(s,t),s},a=(t=e=>({selectedMemory:null,setSelectedMemory:t=>e({selectedMemory:t}),selectedAuditEntry:null,setSelectedAuditEntry:t=>e({selectedAuditEntry:t}),viewMode:"shield",setViewMode:t=>e({viewMode:t}),typeFilter:null,categoryFilter:null,projectFilter:null,setTypeFilter:t=>e({typeFilter:t}),setCategoryFilter:t=>e({categoryFilter:t}),setProjectFilter:t=>e({projectFilter:t}),recentEvents:[],addEvent:t=>e(e=>({recentEvents:[t,...e.recentEvents].slice(0,50)})),clearEvents:()=>e({recentEvents:[]}),cameraPosition:[0,0,12],setCameraPosition:t=>e({cameraPosition:t}),showLeftSidebar:!0,showRightSidebar:!0,toggleLeftSidebar:()=>e(e=>({showLeftSidebar:!e.showLeftSidebar})),toggleRightSidebar:()=>e(e=>({showRightSidebar:!e.showRightSidebar})),searchQuery:"",setSearchQuery:t=>e({searchQuery:t})}))?n(t):n;e.s(["useDashboardStore",0,a],42098)},33368,e=>{"use strict";let t={architecture:{basePosition:{x:0,y:1.2,z:2.2},spread:1},pattern:{basePosition:{x:0,y:.3,z:-2.2},spread:.9},preference:{basePosition:{x:1.6,y:-.3,z:0},spread:.7},error:{basePosition:{x:-1.6,y:-.3,z:.3},spread:.8},context:{basePosition:{x:0,y:1.8,z:0},spread:1.2},learning:{basePosition:{x:0,y:-.3,z:0},spread:.8},todo:{basePosition:{x:.6,y:.8,z:1.8},spread:.7},note:{basePosition:{x:1.8,y:0,z:-.3},spread:1},relationship:{basePosition:{x:-1.8,y:.3,z:-.3},spread:.9},custom:{basePosition:{x:0,y:0,z:0},spread:1.5}},r={short_term:.6,episodic:0,long_term:-.4};function s(e){let t=43758.5453*Math.sin(12.9898*e);return t-Math.floor(t)}function i(e){let i=t[e.category]||t.custom,n=r[e.type]||0,a=s(e.id),o=s(e.id+1e3),u=s(e.id+2e3),c=i.spread,l=a*Math.PI*2,h=(o-.5)*Math.PI,d=u*c*.7+.3*c,y=d*Math.cos(h)*Math.cos(l),f=d*Math.sin(h)*.6,p=d*Math.cos(h)*Math.sin(l),m=i.basePosition.x+y,v=i.basePosition.y+f,b=i.basePosition.z+p+n,S=.4*e.salience,R=Math.sqrt(m*m+v*v+b*b);if(R>.1){let e=(R+S)/R;m*=e,v*=e,b*=e}let g=Math.sqrt((m/3.2)**2+(v/2.5)**2+(b/3.5)**2);if(g>.95){let e=.95/g;m*=e,v*=e,b*=e}return{x:m,y:v,z:b}}function n(e){if(!e.lastAccessed)return 1;let t=Date.now(),r=new Date(e.lastAccessed).getTime();return Math.pow({short_term:.995,long_term:.9995,episodic:.998}[e.type]||.995,(t-r)/36e5)}e.s(["calculateDecayFactor",()=>n,"calculateMemoryPosition",()=>i])},87353,e=>{"use strict";var t=e.i(22534),r=e.i(45688),s=e.i(71921),i=e.i(1235),n=e.i(88969);let a=t.default.env.NEXT_PUBLIC_API_URL||"http://localhost:3001";async function o(e){let t=new URLSearchParams;e?.startTime&&t.set("startTime",e.startTime),e?.endTime&&t.set("endTime",e.endTime),e?.source&&t.set("source",e.source),e?.firewallResult&&t.set("firewallResult",e.firewallResult),e?.project&&t.set("project",e.project),e?.limit&&t.set("limit",e.limit.toString());let r=await (0,n.authFetch)(`${a}/api/v1/audit?${t}`);if(!r.ok)throw Error("Failed to fetch audit logs");return r.json()}async function u(e,t){let r=new URLSearchParams({timeRange:e});t&&r.set("project",t);let s=await (0,n.authFetch)(`${a}/api/v1/audit/stats?${r}`);if(!s.ok)throw Error("Failed to fetch audit stats");return s.json()}async function c(e="pending",t=50,r){let s=new URLSearchParams({status:e,limit:t.toString()});r&&s.set("project",r);let i=await (0,n.authFetch)(`${a}/api/v1/quarantine?${s}`);if(!i.ok)throw Error("Failed to fetch quarantine");return i.json()}async function l(e){let t=await (0,n.authFetch)(`${a}/api/v1/quarantine/${e}/approve`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({reviewedBy:"dashboard"})});if(!t.ok)throw Error("Failed to approve");return t.json()}async function h(e,t){let r=await (0,n.authFetch)(`${a}/api/v1/quarantine/${e}/reject`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({reviewedBy:"dashboard",notes:t})});if(!r.ok)throw Error("Failed to reject");return r.json()}function d(e){return(0,r.useQuery)({queryKey:["audit-logs",e],queryFn:()=>o(e),refetchInterval:3e4,retry:2})}function y(e="24h",t){return(0,r.useQuery)({queryKey:["audit-stats",e,t],queryFn:()=>u(e,t),refetchInterval:3e4,retry:2})}function f(e="pending",t=50,s){return(0,r.useQuery)({queryKey:["quarantine",e,t,s],queryFn:()=>c(e,t,s),refetchInterval:3e4,retry:2})}function p(){let e=(0,i.useQueryClient)();return(0,s.useMutation)({mutationFn:l,onSuccess:()=>{e.invalidateQueries({queryKey:["quarantine"]}),e.invalidateQueries({queryKey:["audit-stats"]})}})}function m(){let e=(0,i.useQueryClient)();return(0,s.useMutation)({mutationFn:({id:e,notes:t})=>h(e,t),onSuccess:()=>{e.invalidateQueries({queryKey:["quarantine"]}),e.invalidateQueries({queryKey:["audit-stats"]})}})}function v(){return(0,r.useQuery)({queryKey:["defence-config"],queryFn:()=>(0,n.authFetch)(`${a}/api/defence/config`).then(e=>e.json())})}function b(){let e=(0,i.useQueryClient)();return(0,s.useMutation)({mutationFn:e=>(0,n.authFetch)(`${a}/api/defence/config`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({mode:e})}).then(e=>e.json()),onSuccess:()=>{e.invalidateQueries({queryKey:["defence-config"]})}})}e.s(["useApproveQuarantine",()=>p,"useAuditLogs",()=>d,"useAuditStats",()=>y,"useDefenceConfig",()=>v,"useQuarantine",()=>f,"useRejectQuarantine",()=>m,"useSetDefenceMode",()=>b])}]);
@@ -1 +0,0 @@
1
- (globalThis.TURBOPACK||(globalThis.TURBOPACK=[])).push(["object"==typeof document?document.currentScript:void 0,97358,e=>{"use strict";let t={architecture:"#FFD700",pattern:"#FFB347",preference:"#FFA500",error:"#FF6B6B",context:"#FFC080",learning:"#FFE4B5",todo:"#FF8C00",note:"#FFCC66",relationship:"#00D4FF",custom:"#FFB347"},r={short_term:"#FFD700",episodic:"#FFB347",long_term:"#FF8C00"};function n(e){return t[e]||t.custom}function o(e){return r[e]||r.short_term}e.s(["CATEGORY_COLORS",0,{architecture:"#3B82F6",pattern:"#8B5CF6",preference:"#EC4899",error:"#EF4444",context:"#10B981",learning:"#F59E0B",todo:"#F97316",note:"#6B7280",relationship:"#06B6D4",custom:"#A855F7"},"getCategoryColor",()=>n,"getTypeColor",()=>o])},25903,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0}),Object.defineProperty(r,"BailoutToCSR",{enumerable:!0,get:function(){return o}});let n=e.r(40909);function o({reason:e,children:t}){if("u"<typeof window)throw Object.defineProperty(new n.BailoutToCSRError(e),"__NEXT_ERROR_CODE",{value:"E394",enumerable:!1,configurable:!0});return t}},27601,(e,t,r)=>{"use strict";function n(e){return e.split("/").map(e=>encodeURIComponent(e)).join("/")}Object.defineProperty(r,"__esModule",{value:!0}),Object.defineProperty(r,"encodeURIPath",{enumerable:!0,get:function(){return n}})},54220,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0}),Object.defineProperty(r,"PreloadChunks",{enumerable:!0,get:function(){return a}});let n=e.r(27493),o=e.r(9854),l=e.r(13595),u=e.r(27601),i=e.r(54218);function a({moduleIds:e}){if("u">typeof window)return null;let t=l.workAsyncStorage.getStore();if(void 0===t)return null;let r=[];if(t.reactLoadableManifest&&e){let n=t.reactLoadableManifest;for(let t of e){if(!n[t])continue;let e=n[t].files;r.push(...e)}}if(0===r.length)return null;let a=(0,i.getDeploymentIdQueryOrEmptyString)();return(0,n.jsx)(n.Fragment,{children:r.map(e=>{let r=`${t.assetPrefix}/_next/${(0,u.encodeURIPath)(e)}${a}`;return e.endsWith(".css")?(0,n.jsx)("link",{precedence:"dynamic",href:r,rel:"stylesheet",as:"style",nonce:t.nonce},e):((0,o.preload)(r,{as:"script",fetchPriority:"low",nonce:t.nonce}),null)})})}},73735,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0}),Object.defineProperty(r,"default",{enumerable:!0,get:function(){return s}});let n=e.r(27493),o=e.r(4),l=e.r(25903),u=e.r(54220);function i(e){return{default:e&&"default"in e?e.default:e}}let a={loader:()=>Promise.resolve(i(()=>null)),loading:null,ssr:!0},s=function(e){let t={...a,...e},r=(0,o.lazy)(()=>t.loader().then(i)),s=t.loading;function c(e){let i=s?(0,n.jsx)(s,{isLoading:!0,pastDelay:!0,error:null}):null,a=!t.ssr||!!t.loading,c=a?o.Suspense:o.Fragment,d=t.ssr?(0,n.jsxs)(n.Fragment,{children:["u"<typeof window?(0,n.jsx)(u.PreloadChunks,{moduleIds:t.modules}):null,(0,n.jsx)(r,{...e})]}):(0,n.jsx)(l.BailoutToCSR,{reason:"next/dynamic",children:(0,n.jsx)(r,{...e})});return(0,n.jsx)(c,{...a?{fallback:i}:{},children:d})}return c.displayName="LoadableComponent",c}},74133,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0}),Object.defineProperty(r,"default",{enumerable:!0,get:function(){return o}});let n=e.r(77637)._(e.r(73735));function o(e,t){let r={};"function"==typeof e&&(r.loader=e);let o={...r,...t};return(0,n.default)({...o,modules:o.loadableGenerated?.modules})}("function"==typeof r.default||"object"==typeof r.default&&null!==r.default)&&void 0===r.default.__esModule&&(Object.defineProperty(r.default,"__esModule",{value:!0}),Object.assign(r.default,r),t.exports=r.default)},1369,e=>{e.v(t=>Promise.all(["static/chunks/a3989d0e6629bcf8.js"].map(t=>e.l(t))).then(()=>t(11570)))},62838,e=>{e.v(t=>Promise.all(["static/chunks/acf32ffeb20e4854.js"].map(t=>e.l(t))).then(()=>t(41740)))}]);