shieldcortex 4.27.2 → 4.27.3

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 (237) hide show
  1. package/dashboard/.next/standalone/dashboard/.next/BUILD_ID +1 -1
  2. package/dashboard/.next/standalone/dashboard/.next/build-manifest.json +2 -2
  3. package/dashboard/.next/standalone/dashboard/.next/server/app/_global-error.html +2 -2
  4. package/dashboard/.next/standalone/dashboard/.next/server/app/_global-error.rsc +1 -1
  5. package/dashboard/.next/standalone/dashboard/.next/server/app/_global-error.segments/__PAGE__.segment.rsc +1 -1
  6. package/dashboard/.next/standalone/dashboard/.next/server/app/_global-error.segments/_full.segment.rsc +1 -1
  7. package/dashboard/.next/standalone/dashboard/.next/server/app/_global-error.segments/_head.segment.rsc +1 -1
  8. package/dashboard/.next/standalone/dashboard/.next/server/app/_global-error.segments/_index.segment.rsc +1 -1
  9. package/dashboard/.next/standalone/dashboard/.next/server/app/_global-error.segments/_tree.segment.rsc +1 -1
  10. package/dashboard/.next/standalone/dashboard/.next/server/app/_not-found.html +2 -2
  11. package/dashboard/.next/standalone/dashboard/.next/server/app/_not-found.rsc +1 -1
  12. package/dashboard/.next/standalone/dashboard/.next/server/app/_not-found.segments/_full.segment.rsc +1 -1
  13. package/dashboard/.next/standalone/dashboard/.next/server/app/_not-found.segments/_head.segment.rsc +1 -1
  14. package/dashboard/.next/standalone/dashboard/.next/server/app/_not-found.segments/_index.segment.rsc +1 -1
  15. package/dashboard/.next/standalone/dashboard/.next/server/app/_not-found.segments/_not-found/__PAGE__.segment.rsc +1 -1
  16. package/dashboard/.next/standalone/dashboard/.next/server/app/_not-found.segments/_not-found.segment.rsc +1 -1
  17. package/dashboard/.next/standalone/dashboard/.next/server/app/_not-found.segments/_tree.segment.rsc +1 -1
  18. package/dashboard/.next/standalone/dashboard/.next/server/app/admin.html +1 -1
  19. package/dashboard/.next/standalone/dashboard/.next/server/app/admin.rsc +1 -1
  20. package/dashboard/.next/standalone/dashboard/.next/server/app/admin.segments/!KGRhc2hib2FyZCk/admin/__PAGE__.segment.rsc +1 -1
  21. package/dashboard/.next/standalone/dashboard/.next/server/app/admin.segments/!KGRhc2hib2FyZCk/admin.segment.rsc +1 -1
  22. package/dashboard/.next/standalone/dashboard/.next/server/app/admin.segments/!KGRhc2hib2FyZCk.segment.rsc +1 -1
  23. package/dashboard/.next/standalone/dashboard/.next/server/app/admin.segments/_full.segment.rsc +1 -1
  24. package/dashboard/.next/standalone/dashboard/.next/server/app/admin.segments/_head.segment.rsc +1 -1
  25. package/dashboard/.next/standalone/dashboard/.next/server/app/admin.segments/_index.segment.rsc +1 -1
  26. package/dashboard/.next/standalone/dashboard/.next/server/app/admin.segments/_tree.segment.rsc +1 -1
  27. package/dashboard/.next/standalone/dashboard/.next/server/app/cloud.html +1 -1
  28. package/dashboard/.next/standalone/dashboard/.next/server/app/cloud.rsc +1 -1
  29. package/dashboard/.next/standalone/dashboard/.next/server/app/cloud.segments/!KGRhc2hib2FyZCk/cloud/__PAGE__.segment.rsc +1 -1
  30. package/dashboard/.next/standalone/dashboard/.next/server/app/cloud.segments/!KGRhc2hib2FyZCk/cloud.segment.rsc +1 -1
  31. package/dashboard/.next/standalone/dashboard/.next/server/app/cloud.segments/!KGRhc2hib2FyZCk.segment.rsc +1 -1
  32. package/dashboard/.next/standalone/dashboard/.next/server/app/cloud.segments/_full.segment.rsc +1 -1
  33. package/dashboard/.next/standalone/dashboard/.next/server/app/cloud.segments/_head.segment.rsc +1 -1
  34. package/dashboard/.next/standalone/dashboard/.next/server/app/cloud.segments/_index.segment.rsc +1 -1
  35. package/dashboard/.next/standalone/dashboard/.next/server/app/cloud.segments/_tree.segment.rsc +1 -1
  36. package/dashboard/.next/standalone/dashboard/.next/server/app/index.html +1 -1
  37. package/dashboard/.next/standalone/dashboard/.next/server/app/index.rsc +1 -1
  38. package/dashboard/.next/standalone/dashboard/.next/server/app/index.segments/__PAGE__.segment.rsc +1 -1
  39. package/dashboard/.next/standalone/dashboard/.next/server/app/index.segments/_full.segment.rsc +1 -1
  40. package/dashboard/.next/standalone/dashboard/.next/server/app/index.segments/_head.segment.rsc +1 -1
  41. package/dashboard/.next/standalone/dashboard/.next/server/app/index.segments/_index.segment.rsc +1 -1
  42. package/dashboard/.next/standalone/dashboard/.next/server/app/index.segments/_tree.segment.rsc +1 -1
  43. package/dashboard/.next/standalone/dashboard/.next/server/app/memory/capture.html +1 -1
  44. package/dashboard/.next/standalone/dashboard/.next/server/app/memory/capture.rsc +1 -1
  45. package/dashboard/.next/standalone/dashboard/.next/server/app/memory/capture.segments/!KGRhc2hib2FyZCk/memory/capture/__PAGE__.segment.rsc +1 -1
  46. package/dashboard/.next/standalone/dashboard/.next/server/app/memory/capture.segments/!KGRhc2hib2FyZCk/memory/capture.segment.rsc +1 -1
  47. package/dashboard/.next/standalone/dashboard/.next/server/app/memory/capture.segments/!KGRhc2hib2FyZCk/memory.segment.rsc +1 -1
  48. package/dashboard/.next/standalone/dashboard/.next/server/app/memory/capture.segments/!KGRhc2hib2FyZCk.segment.rsc +1 -1
  49. package/dashboard/.next/standalone/dashboard/.next/server/app/memory/capture.segments/_full.segment.rsc +1 -1
  50. package/dashboard/.next/standalone/dashboard/.next/server/app/memory/capture.segments/_head.segment.rsc +1 -1
  51. package/dashboard/.next/standalone/dashboard/.next/server/app/memory/capture.segments/_index.segment.rsc +1 -1
  52. package/dashboard/.next/standalone/dashboard/.next/server/app/memory/capture.segments/_tree.segment.rsc +1 -1
  53. package/dashboard/.next/standalone/dashboard/.next/server/app/memory/graph.html +1 -1
  54. package/dashboard/.next/standalone/dashboard/.next/server/app/memory/graph.rsc +1 -1
  55. package/dashboard/.next/standalone/dashboard/.next/server/app/memory/graph.segments/!KGRhc2hib2FyZCk/memory/graph/__PAGE__.segment.rsc +1 -1
  56. package/dashboard/.next/standalone/dashboard/.next/server/app/memory/graph.segments/!KGRhc2hib2FyZCk/memory/graph.segment.rsc +1 -1
  57. package/dashboard/.next/standalone/dashboard/.next/server/app/memory/graph.segments/!KGRhc2hib2FyZCk/memory.segment.rsc +1 -1
  58. package/dashboard/.next/standalone/dashboard/.next/server/app/memory/graph.segments/!KGRhc2hib2FyZCk.segment.rsc +1 -1
  59. package/dashboard/.next/standalone/dashboard/.next/server/app/memory/graph.segments/_full.segment.rsc +1 -1
  60. package/dashboard/.next/standalone/dashboard/.next/server/app/memory/graph.segments/_head.segment.rsc +1 -1
  61. package/dashboard/.next/standalone/dashboard/.next/server/app/memory/graph.segments/_index.segment.rsc +1 -1
  62. package/dashboard/.next/standalone/dashboard/.next/server/app/memory/graph.segments/_tree.segment.rsc +1 -1
  63. package/dashboard/.next/standalone/dashboard/.next/server/app/memory/recall.html +1 -1
  64. package/dashboard/.next/standalone/dashboard/.next/server/app/memory/recall.rsc +1 -1
  65. package/dashboard/.next/standalone/dashboard/.next/server/app/memory/recall.segments/!KGRhc2hib2FyZCk/memory/recall/__PAGE__.segment.rsc +1 -1
  66. package/dashboard/.next/standalone/dashboard/.next/server/app/memory/recall.segments/!KGRhc2hib2FyZCk/memory/recall.segment.rsc +1 -1
  67. package/dashboard/.next/standalone/dashboard/.next/server/app/memory/recall.segments/!KGRhc2hib2FyZCk/memory.segment.rsc +1 -1
  68. package/dashboard/.next/standalone/dashboard/.next/server/app/memory/recall.segments/!KGRhc2hib2FyZCk.segment.rsc +1 -1
  69. package/dashboard/.next/standalone/dashboard/.next/server/app/memory/recall.segments/_full.segment.rsc +1 -1
  70. package/dashboard/.next/standalone/dashboard/.next/server/app/memory/recall.segments/_head.segment.rsc +1 -1
  71. package/dashboard/.next/standalone/dashboard/.next/server/app/memory/recall.segments/_index.segment.rsc +1 -1
  72. package/dashboard/.next/standalone/dashboard/.next/server/app/memory/recall.segments/_tree.segment.rsc +1 -1
  73. package/dashboard/.next/standalone/dashboard/.next/server/app/memory/replay.html +2 -2
  74. package/dashboard/.next/standalone/dashboard/.next/server/app/memory/replay.rsc +1 -1
  75. package/dashboard/.next/standalone/dashboard/.next/server/app/memory/replay.segments/!KGRhc2hib2FyZCk/memory/replay/__PAGE__.segment.rsc +1 -1
  76. package/dashboard/.next/standalone/dashboard/.next/server/app/memory/replay.segments/!KGRhc2hib2FyZCk/memory/replay.segment.rsc +1 -1
  77. package/dashboard/.next/standalone/dashboard/.next/server/app/memory/replay.segments/!KGRhc2hib2FyZCk/memory.segment.rsc +1 -1
  78. package/dashboard/.next/standalone/dashboard/.next/server/app/memory/replay.segments/!KGRhc2hib2FyZCk.segment.rsc +1 -1
  79. package/dashboard/.next/standalone/dashboard/.next/server/app/memory/replay.segments/_full.segment.rsc +1 -1
  80. package/dashboard/.next/standalone/dashboard/.next/server/app/memory/replay.segments/_head.segment.rsc +1 -1
  81. package/dashboard/.next/standalone/dashboard/.next/server/app/memory/replay.segments/_index.segment.rsc +1 -1
  82. package/dashboard/.next/standalone/dashboard/.next/server/app/memory/replay.segments/_tree.segment.rsc +1 -1
  83. package/dashboard/.next/standalone/dashboard/.next/server/app/memory/review.html +1 -1
  84. package/dashboard/.next/standalone/dashboard/.next/server/app/memory/review.rsc +1 -1
  85. package/dashboard/.next/standalone/dashboard/.next/server/app/memory/review.segments/!KGRhc2hib2FyZCk/memory/review/__PAGE__.segment.rsc +1 -1
  86. package/dashboard/.next/standalone/dashboard/.next/server/app/memory/review.segments/!KGRhc2hib2FyZCk/memory/review.segment.rsc +1 -1
  87. package/dashboard/.next/standalone/dashboard/.next/server/app/memory/review.segments/!KGRhc2hib2FyZCk/memory.segment.rsc +1 -1
  88. package/dashboard/.next/standalone/dashboard/.next/server/app/memory/review.segments/!KGRhc2hib2FyZCk.segment.rsc +1 -1
  89. package/dashboard/.next/standalone/dashboard/.next/server/app/memory/review.segments/_full.segment.rsc +1 -1
  90. package/dashboard/.next/standalone/dashboard/.next/server/app/memory/review.segments/_head.segment.rsc +1 -1
  91. package/dashboard/.next/standalone/dashboard/.next/server/app/memory/review.segments/_index.segment.rsc +1 -1
  92. package/dashboard/.next/standalone/dashboard/.next/server/app/memory/review.segments/_tree.segment.rsc +1 -1
  93. package/dashboard/.next/standalone/dashboard/.next/server/app/memory/timeline.html +1 -1
  94. package/dashboard/.next/standalone/dashboard/.next/server/app/memory/timeline.rsc +1 -1
  95. package/dashboard/.next/standalone/dashboard/.next/server/app/memory/timeline.segments/!KGRhc2hib2FyZCk/memory/timeline/__PAGE__.segment.rsc +1 -1
  96. package/dashboard/.next/standalone/dashboard/.next/server/app/memory/timeline.segments/!KGRhc2hib2FyZCk/memory/timeline.segment.rsc +1 -1
  97. package/dashboard/.next/standalone/dashboard/.next/server/app/memory/timeline.segments/!KGRhc2hib2FyZCk/memory.segment.rsc +1 -1
  98. package/dashboard/.next/standalone/dashboard/.next/server/app/memory/timeline.segments/!KGRhc2hib2FyZCk.segment.rsc +1 -1
  99. package/dashboard/.next/standalone/dashboard/.next/server/app/memory/timeline.segments/_full.segment.rsc +1 -1
  100. package/dashboard/.next/standalone/dashboard/.next/server/app/memory/timeline.segments/_head.segment.rsc +1 -1
  101. package/dashboard/.next/standalone/dashboard/.next/server/app/memory/timeline.segments/_index.segment.rsc +1 -1
  102. package/dashboard/.next/standalone/dashboard/.next/server/app/memory/timeline.segments/_tree.segment.rsc +1 -1
  103. package/dashboard/.next/standalone/dashboard/.next/server/app/memory.html +2 -2
  104. package/dashboard/.next/standalone/dashboard/.next/server/app/memory.rsc +1 -1
  105. package/dashboard/.next/standalone/dashboard/.next/server/app/memory.segments/!KGRhc2hib2FyZCk/memory/__PAGE__.segment.rsc +1 -1
  106. package/dashboard/.next/standalone/dashboard/.next/server/app/memory.segments/!KGRhc2hib2FyZCk/memory.segment.rsc +1 -1
  107. package/dashboard/.next/standalone/dashboard/.next/server/app/memory.segments/!KGRhc2hib2FyZCk.segment.rsc +1 -1
  108. package/dashboard/.next/standalone/dashboard/.next/server/app/memory.segments/_full.segment.rsc +1 -1
  109. package/dashboard/.next/standalone/dashboard/.next/server/app/memory.segments/_head.segment.rsc +1 -1
  110. package/dashboard/.next/standalone/dashboard/.next/server/app/memory.segments/_index.segment.rsc +1 -1
  111. package/dashboard/.next/standalone/dashboard/.next/server/app/memory.segments/_tree.segment.rsc +1 -1
  112. package/dashboard/.next/standalone/dashboard/.next/server/app/overview.html +2 -2
  113. package/dashboard/.next/standalone/dashboard/.next/server/app/overview.rsc +1 -1
  114. package/dashboard/.next/standalone/dashboard/.next/server/app/overview.segments/!KGRhc2hib2FyZCk/overview/__PAGE__.segment.rsc +1 -1
  115. package/dashboard/.next/standalone/dashboard/.next/server/app/overview.segments/!KGRhc2hib2FyZCk/overview.segment.rsc +1 -1
  116. package/dashboard/.next/standalone/dashboard/.next/server/app/overview.segments/!KGRhc2hib2FyZCk.segment.rsc +1 -1
  117. package/dashboard/.next/standalone/dashboard/.next/server/app/overview.segments/_full.segment.rsc +1 -1
  118. package/dashboard/.next/standalone/dashboard/.next/server/app/overview.segments/_head.segment.rsc +1 -1
  119. package/dashboard/.next/standalone/dashboard/.next/server/app/overview.segments/_index.segment.rsc +1 -1
  120. package/dashboard/.next/standalone/dashboard/.next/server/app/overview.segments/_tree.segment.rsc +1 -1
  121. package/dashboard/.next/standalone/dashboard/.next/server/app/protection/audit.html +1 -1
  122. package/dashboard/.next/standalone/dashboard/.next/server/app/protection/audit.rsc +1 -1
  123. package/dashboard/.next/standalone/dashboard/.next/server/app/protection/audit.segments/!KGRhc2hib2FyZCk/protection/audit/__PAGE__.segment.rsc +1 -1
  124. package/dashboard/.next/standalone/dashboard/.next/server/app/protection/audit.segments/!KGRhc2hib2FyZCk/protection/audit.segment.rsc +1 -1
  125. package/dashboard/.next/standalone/dashboard/.next/server/app/protection/audit.segments/!KGRhc2hib2FyZCk/protection.segment.rsc +1 -1
  126. package/dashboard/.next/standalone/dashboard/.next/server/app/protection/audit.segments/!KGRhc2hib2FyZCk.segment.rsc +1 -1
  127. package/dashboard/.next/standalone/dashboard/.next/server/app/protection/audit.segments/_full.segment.rsc +1 -1
  128. package/dashboard/.next/standalone/dashboard/.next/server/app/protection/audit.segments/_head.segment.rsc +1 -1
  129. package/dashboard/.next/standalone/dashboard/.next/server/app/protection/audit.segments/_index.segment.rsc +1 -1
  130. package/dashboard/.next/standalone/dashboard/.next/server/app/protection/audit.segments/_tree.segment.rsc +1 -1
  131. package/dashboard/.next/standalone/dashboard/.next/server/app/protection/intercepts.html +1 -1
  132. package/dashboard/.next/standalone/dashboard/.next/server/app/protection/intercepts.rsc +1 -1
  133. package/dashboard/.next/standalone/dashboard/.next/server/app/protection/intercepts.segments/!KGRhc2hib2FyZCk/protection/intercepts/__PAGE__.segment.rsc +1 -1
  134. package/dashboard/.next/standalone/dashboard/.next/server/app/protection/intercepts.segments/!KGRhc2hib2FyZCk/protection/intercepts.segment.rsc +1 -1
  135. package/dashboard/.next/standalone/dashboard/.next/server/app/protection/intercepts.segments/!KGRhc2hib2FyZCk/protection.segment.rsc +1 -1
  136. package/dashboard/.next/standalone/dashboard/.next/server/app/protection/intercepts.segments/!KGRhc2hib2FyZCk.segment.rsc +1 -1
  137. package/dashboard/.next/standalone/dashboard/.next/server/app/protection/intercepts.segments/_full.segment.rsc +1 -1
  138. package/dashboard/.next/standalone/dashboard/.next/server/app/protection/intercepts.segments/_head.segment.rsc +1 -1
  139. package/dashboard/.next/standalone/dashboard/.next/server/app/protection/intercepts.segments/_index.segment.rsc +1 -1
  140. package/dashboard/.next/standalone/dashboard/.next/server/app/protection/intercepts.segments/_tree.segment.rsc +1 -1
  141. package/dashboard/.next/standalone/dashboard/.next/server/app/protection/iron-dome.html +1 -1
  142. package/dashboard/.next/standalone/dashboard/.next/server/app/protection/iron-dome.rsc +1 -1
  143. package/dashboard/.next/standalone/dashboard/.next/server/app/protection/iron-dome.segments/!KGRhc2hib2FyZCk/protection/iron-dome/__PAGE__.segment.rsc +1 -1
  144. package/dashboard/.next/standalone/dashboard/.next/server/app/protection/iron-dome.segments/!KGRhc2hib2FyZCk/protection/iron-dome.segment.rsc +1 -1
  145. package/dashboard/.next/standalone/dashboard/.next/server/app/protection/iron-dome.segments/!KGRhc2hib2FyZCk/protection.segment.rsc +1 -1
  146. package/dashboard/.next/standalone/dashboard/.next/server/app/protection/iron-dome.segments/!KGRhc2hib2FyZCk.segment.rsc +1 -1
  147. package/dashboard/.next/standalone/dashboard/.next/server/app/protection/iron-dome.segments/_full.segment.rsc +1 -1
  148. package/dashboard/.next/standalone/dashboard/.next/server/app/protection/iron-dome.segments/_head.segment.rsc +1 -1
  149. package/dashboard/.next/standalone/dashboard/.next/server/app/protection/iron-dome.segments/_index.segment.rsc +1 -1
  150. package/dashboard/.next/standalone/dashboard/.next/server/app/protection/iron-dome.segments/_tree.segment.rsc +1 -1
  151. package/dashboard/.next/standalone/dashboard/.next/server/app/protection/policies.html +1 -1
  152. package/dashboard/.next/standalone/dashboard/.next/server/app/protection/policies.rsc +1 -1
  153. package/dashboard/.next/standalone/dashboard/.next/server/app/protection/policies.segments/!KGRhc2hib2FyZCk/protection/policies/__PAGE__.segment.rsc +1 -1
  154. package/dashboard/.next/standalone/dashboard/.next/server/app/protection/policies.segments/!KGRhc2hib2FyZCk/protection/policies.segment.rsc +1 -1
  155. package/dashboard/.next/standalone/dashboard/.next/server/app/protection/policies.segments/!KGRhc2hib2FyZCk/protection.segment.rsc +1 -1
  156. package/dashboard/.next/standalone/dashboard/.next/server/app/protection/policies.segments/!KGRhc2hib2FyZCk.segment.rsc +1 -1
  157. package/dashboard/.next/standalone/dashboard/.next/server/app/protection/policies.segments/_full.segment.rsc +1 -1
  158. package/dashboard/.next/standalone/dashboard/.next/server/app/protection/policies.segments/_head.segment.rsc +1 -1
  159. package/dashboard/.next/standalone/dashboard/.next/server/app/protection/policies.segments/_index.segment.rsc +1 -1
  160. package/dashboard/.next/standalone/dashboard/.next/server/app/protection/policies.segments/_tree.segment.rsc +1 -1
  161. package/dashboard/.next/standalone/dashboard/.next/server/app/protection/quarantine.html +1 -1
  162. package/dashboard/.next/standalone/dashboard/.next/server/app/protection/quarantine.rsc +1 -1
  163. package/dashboard/.next/standalone/dashboard/.next/server/app/protection/quarantine.segments/!KGRhc2hib2FyZCk/protection/quarantine/__PAGE__.segment.rsc +1 -1
  164. package/dashboard/.next/standalone/dashboard/.next/server/app/protection/quarantine.segments/!KGRhc2hib2FyZCk/protection/quarantine.segment.rsc +1 -1
  165. package/dashboard/.next/standalone/dashboard/.next/server/app/protection/quarantine.segments/!KGRhc2hib2FyZCk/protection.segment.rsc +1 -1
  166. package/dashboard/.next/standalone/dashboard/.next/server/app/protection/quarantine.segments/!KGRhc2hib2FyZCk.segment.rsc +1 -1
  167. package/dashboard/.next/standalone/dashboard/.next/server/app/protection/quarantine.segments/_full.segment.rsc +1 -1
  168. package/dashboard/.next/standalone/dashboard/.next/server/app/protection/quarantine.segments/_head.segment.rsc +1 -1
  169. package/dashboard/.next/standalone/dashboard/.next/server/app/protection/quarantine.segments/_index.segment.rsc +1 -1
  170. package/dashboard/.next/standalone/dashboard/.next/server/app/protection/quarantine.segments/_tree.segment.rsc +1 -1
  171. package/dashboard/.next/standalone/dashboard/.next/server/app/protection.html +2 -2
  172. package/dashboard/.next/standalone/dashboard/.next/server/app/protection.rsc +1 -1
  173. package/dashboard/.next/standalone/dashboard/.next/server/app/protection.segments/!KGRhc2hib2FyZCk/protection/__PAGE__.segment.rsc +1 -1
  174. package/dashboard/.next/standalone/dashboard/.next/server/app/protection.segments/!KGRhc2hib2FyZCk/protection.segment.rsc +1 -1
  175. package/dashboard/.next/standalone/dashboard/.next/server/app/protection.segments/!KGRhc2hib2FyZCk.segment.rsc +1 -1
  176. package/dashboard/.next/standalone/dashboard/.next/server/app/protection.segments/_full.segment.rsc +1 -1
  177. package/dashboard/.next/standalone/dashboard/.next/server/app/protection.segments/_head.segment.rsc +1 -1
  178. package/dashboard/.next/standalone/dashboard/.next/server/app/protection.segments/_index.segment.rsc +1 -1
  179. package/dashboard/.next/standalone/dashboard/.next/server/app/protection.segments/_tree.segment.rsc +1 -1
  180. package/dashboard/.next/standalone/dashboard/.next/server/app/settings.html +2 -2
  181. package/dashboard/.next/standalone/dashboard/.next/server/app/settings.rsc +1 -1
  182. package/dashboard/.next/standalone/dashboard/.next/server/app/settings.segments/!KGRhc2hib2FyZCk/settings/__PAGE__.segment.rsc +1 -1
  183. package/dashboard/.next/standalone/dashboard/.next/server/app/settings.segments/!KGRhc2hib2FyZCk/settings.segment.rsc +1 -1
  184. package/dashboard/.next/standalone/dashboard/.next/server/app/settings.segments/!KGRhc2hib2FyZCk.segment.rsc +1 -1
  185. package/dashboard/.next/standalone/dashboard/.next/server/app/settings.segments/_full.segment.rsc +1 -1
  186. package/dashboard/.next/standalone/dashboard/.next/server/app/settings.segments/_head.segment.rsc +1 -1
  187. package/dashboard/.next/standalone/dashboard/.next/server/app/settings.segments/_index.segment.rsc +1 -1
  188. package/dashboard/.next/standalone/dashboard/.next/server/app/settings.segments/_tree.segment.rsc +1 -1
  189. package/dashboard/.next/standalone/dashboard/.next/server/app/supply-chain/xray.html +1 -1
  190. package/dashboard/.next/standalone/dashboard/.next/server/app/supply-chain/xray.rsc +1 -1
  191. package/dashboard/.next/standalone/dashboard/.next/server/app/supply-chain/xray.segments/!KGRhc2hib2FyZCk/supply-chain/xray/__PAGE__.segment.rsc +1 -1
  192. package/dashboard/.next/standalone/dashboard/.next/server/app/supply-chain/xray.segments/!KGRhc2hib2FyZCk/supply-chain/xray.segment.rsc +1 -1
  193. package/dashboard/.next/standalone/dashboard/.next/server/app/supply-chain/xray.segments/!KGRhc2hib2FyZCk/supply-chain.segment.rsc +1 -1
  194. package/dashboard/.next/standalone/dashboard/.next/server/app/supply-chain/xray.segments/!KGRhc2hib2FyZCk.segment.rsc +1 -1
  195. package/dashboard/.next/standalone/dashboard/.next/server/app/supply-chain/xray.segments/_full.segment.rsc +1 -1
  196. package/dashboard/.next/standalone/dashboard/.next/server/app/supply-chain/xray.segments/_head.segment.rsc +1 -1
  197. package/dashboard/.next/standalone/dashboard/.next/server/app/supply-chain/xray.segments/_index.segment.rsc +1 -1
  198. package/dashboard/.next/standalone/dashboard/.next/server/app/supply-chain/xray.segments/_tree.segment.rsc +1 -1
  199. package/dashboard/.next/standalone/dashboard/.next/server/app/supply-chain.html +1 -1
  200. package/dashboard/.next/standalone/dashboard/.next/server/app/supply-chain.rsc +1 -1
  201. package/dashboard/.next/standalone/dashboard/.next/server/app/supply-chain.segments/!KGRhc2hib2FyZCk/supply-chain/__PAGE__.segment.rsc +1 -1
  202. package/dashboard/.next/standalone/dashboard/.next/server/app/supply-chain.segments/!KGRhc2hib2FyZCk/supply-chain.segment.rsc +1 -1
  203. package/dashboard/.next/standalone/dashboard/.next/server/app/supply-chain.segments/!KGRhc2hib2FyZCk.segment.rsc +1 -1
  204. package/dashboard/.next/standalone/dashboard/.next/server/app/supply-chain.segments/_full.segment.rsc +1 -1
  205. package/dashboard/.next/standalone/dashboard/.next/server/app/supply-chain.segments/_head.segment.rsc +1 -1
  206. package/dashboard/.next/standalone/dashboard/.next/server/app/supply-chain.segments/_index.segment.rsc +1 -1
  207. package/dashboard/.next/standalone/dashboard/.next/server/app/supply-chain.segments/_tree.segment.rsc +1 -1
  208. package/dashboard/.next/standalone/dashboard/.next/server/app/xray.html +2 -2
  209. package/dashboard/.next/standalone/dashboard/.next/server/app/xray.rsc +1 -1
  210. package/dashboard/.next/standalone/dashboard/.next/server/app/xray.segments/!KGRhc2hib2FyZCk/xray/__PAGE__.segment.rsc +1 -1
  211. package/dashboard/.next/standalone/dashboard/.next/server/app/xray.segments/!KGRhc2hib2FyZCk/xray.segment.rsc +1 -1
  212. package/dashboard/.next/standalone/dashboard/.next/server/app/xray.segments/!KGRhc2hib2FyZCk.segment.rsc +1 -1
  213. package/dashboard/.next/standalone/dashboard/.next/server/app/xray.segments/_full.segment.rsc +1 -1
  214. package/dashboard/.next/standalone/dashboard/.next/server/app/xray.segments/_head.segment.rsc +1 -1
  215. package/dashboard/.next/standalone/dashboard/.next/server/app/xray.segments/_index.segment.rsc +1 -1
  216. package/dashboard/.next/standalone/dashboard/.next/server/app/xray.segments/_tree.segment.rsc +1 -1
  217. package/dashboard/.next/standalone/dashboard/.next/server/pages/404.html +2 -2
  218. package/dashboard/.next/standalone/dashboard/.next/server/pages/500.html +2 -2
  219. package/dist/api/sql-classifier.d.ts +32 -0
  220. package/dist/api/sql-classifier.js +277 -0
  221. package/dist/api/visualization-server.js +25 -19
  222. package/dist/cloud/cli.js +20 -1
  223. package/dist/cloud/config.js +21 -1
  224. package/dist/cloud/memory-sync.d.ts +5 -0
  225. package/dist/cloud/memory-sync.js +5 -1
  226. package/dist/cloud/verify.js +2 -1
  227. package/dist/defence/trust/env-detector.d.ts +31 -0
  228. package/dist/defence/trust/env-detector.js +50 -0
  229. package/dist/defence/trust/index.d.ts +4 -1
  230. package/dist/defence/trust/index.js +2 -1
  231. package/dist/defence/trust/resolve-tool-source.d.ts +27 -0
  232. package/dist/defence/trust/resolve-tool-source.js +80 -0
  233. package/dist/server.js +22 -32
  234. package/package.json +3 -2
  235. /package/dashboard/.next/standalone/dashboard/.next/static/{x2AmqK_Ci5s40_dIsKhc_ → ObhI00_RVqLccblwYt339}/_buildManifest.js +0 -0
  236. /package/dashboard/.next/standalone/dashboard/.next/static/{x2AmqK_Ci5s40_dIsKhc_ → ObhI00_RVqLccblwYt339}/_clientMiddlewareManifest.json +0 -0
  237. /package/dashboard/.next/standalone/dashboard/.next/static/{x2AmqK_Ci5s40_dIsKhc_ → ObhI00_RVqLccblwYt339}/_ssgManifest.js +0 -0
@@ -41,3 +41,34 @@ export declare function resolveSource(declaredSource?: DefenceSource, strictMode
41
41
  inferred: boolean;
42
42
  detection?: EnvDetectionResult;
43
43
  };
44
+ export interface CeilingClampResult {
45
+ /** The effective source after clamping (declared if safe, env-inferred otherwise). */
46
+ source: DefenceSource;
47
+ /** True when the declared source claimed higher trust than the runtime environment justifies. */
48
+ clamped: boolean;
49
+ /** Trust score of the declared source (only meaningful when a declared source was passed). */
50
+ declaredScore: number | null;
51
+ /** Trust score the runtime environment actually permits. */
52
+ ceilingScore: number;
53
+ /** The environment-inferred source used as the trust ceiling. */
54
+ ceiling: DefenceSource;
55
+ /** Detection metadata for the environment inference. */
56
+ detection: EnvDetectionResult;
57
+ }
58
+ /**
59
+ * Clamp a caller-declared source against the environment-inferred trust ceiling.
60
+ *
61
+ * MCP callers are arbitrary processes — a prompt-injected agent could claim
62
+ * `{type:'user', identifier:'direct'}` to get trust=1.0 and bypass quarantine.
63
+ * To prevent that, we compute the highest trust the actual runtime allows
64
+ * (from env vars like CLAUDE_CODE_ENTRYPOINT) and refuse any declared source
65
+ * that would score higher.
66
+ *
67
+ * Semantics:
68
+ * - If no declared source: return env-inferred (no clamping).
69
+ * - If declaredScore <= ceilingScore: trust the declared source (allows
70
+ * legitimate downgrades, e.g. an agent labelling input as `email`).
71
+ * - If declaredScore > ceilingScore: drop the declared source and use the
72
+ * env-inferred one, with `clamped: true` so the caller can audit it.
73
+ */
74
+ export declare function clampSourceToCeiling(declaredSource: DefenceSource | undefined): CeilingClampResult;
@@ -8,6 +8,7 @@
8
8
  * This addresses Phase 1 limitation: "security is opt-in" — with env detection,
9
9
  * Claude Code agents get correct trust automatically with zero configuration.
10
10
  */
11
+ import { scoreSource } from './source-scorer.js';
11
12
  /**
12
13
  * Infer caller source from process environment variables.
13
14
  *
@@ -114,3 +115,52 @@ export function resolveSource(declaredSource, strictMode = false) {
114
115
  detection,
115
116
  };
116
117
  }
118
+ /**
119
+ * Clamp a caller-declared source against the environment-inferred trust ceiling.
120
+ *
121
+ * MCP callers are arbitrary processes — a prompt-injected agent could claim
122
+ * `{type:'user', identifier:'direct'}` to get trust=1.0 and bypass quarantine.
123
+ * To prevent that, we compute the highest trust the actual runtime allows
124
+ * (from env vars like CLAUDE_CODE_ENTRYPOINT) and refuse any declared source
125
+ * that would score higher.
126
+ *
127
+ * Semantics:
128
+ * - If no declared source: return env-inferred (no clamping).
129
+ * - If declaredScore <= ceilingScore: trust the declared source (allows
130
+ * legitimate downgrades, e.g. an agent labelling input as `email`).
131
+ * - If declaredScore > ceilingScore: drop the declared source and use the
132
+ * env-inferred one, with `clamped: true` so the caller can audit it.
133
+ */
134
+ export function clampSourceToCeiling(declaredSource) {
135
+ const detection = inferSourceFromEnvironment();
136
+ const ceilingScore = scoreSource(detection.source).score;
137
+ if (!declaredSource) {
138
+ return {
139
+ source: detection.source,
140
+ clamped: false,
141
+ declaredScore: null,
142
+ ceilingScore,
143
+ ceiling: detection.source,
144
+ detection,
145
+ };
146
+ }
147
+ const declaredScore = scoreSource(declaredSource).score;
148
+ if (declaredScore > ceilingScore) {
149
+ return {
150
+ source: detection.source,
151
+ clamped: true,
152
+ declaredScore,
153
+ ceilingScore,
154
+ ceiling: detection.source,
155
+ detection,
156
+ };
157
+ }
158
+ return {
159
+ source: declaredSource,
160
+ clamped: false,
161
+ declaredScore,
162
+ ceilingScore,
163
+ ceiling: detection.source,
164
+ detection,
165
+ };
166
+ }
@@ -2,7 +2,10 @@ export { scoreSource } from './source-scorer.js';
2
2
  export { filterByTrust } from './recall-filter.js';
3
3
  export { scoreAgent, getAgentDepth, buildAgentHierarchy } from './agent-scorer.js';
4
4
  export { checkAccess } from './access-control.js';
5
- export { inferSourceFromEnvironment, resolveSource } from './env-detector.js';
5
+ export { inferSourceFromEnvironment, resolveSource, clampSourceToCeiling } from './env-detector.js';
6
+ export type { CeilingClampResult } from './env-detector.js';
7
+ export { resolveToolSource } from './resolve-tool-source.js';
8
+ export type { ResolveToolSourceOptions } from './resolve-tool-source.js';
6
9
  export type { AccessPolicy, AccessCheckMemory } from './access-control.js';
7
10
  export type { AgentTrustConfig } from './agent-scorer.js';
8
11
  export type { EnvDetectionResult } from './env-detector.js';
@@ -2,4 +2,5 @@ export { scoreSource } from './source-scorer.js';
2
2
  export { filterByTrust } from './recall-filter.js';
3
3
  export { scoreAgent, getAgentDepth, buildAgentHierarchy } from './agent-scorer.js';
4
4
  export { checkAccess } from './access-control.js';
5
- export { inferSourceFromEnvironment, resolveSource } from './env-detector.js';
5
+ export { inferSourceFromEnvironment, resolveSource, clampSourceToCeiling } from './env-detector.js';
6
+ export { resolveToolSource } from './resolve-tool-source.js';
@@ -0,0 +1,27 @@
1
+ /**
2
+ * Resolve and harden the source of an MCP tool call.
3
+ *
4
+ * MCP callers can self-declare any source they like. This module:
5
+ * 1. Always computes the environment-inferred trust ceiling first.
6
+ * 2. Clamps any over-claimed declared source down to that ceiling.
7
+ * 3. Writes a `SOURCE_ELEVATION_BLOCKED` row to defence_audit when a clamp
8
+ * happens, so operators can spot prompt-injection trying to escalate
9
+ * its own trust.
10
+ * 4. Writes a `SOURCE_MISSING` row when no source was declared, preserving
11
+ * the existing visibility into unconfigured callers.
12
+ */
13
+ import type { DefenceSource } from '../types.js';
14
+ export interface ResolveToolSourceOptions {
15
+ /** Tool name (e.g. 'remember', 'recall') — recorded in the audit reason. */
16
+ toolName: string;
17
+ /** Active project scope, recorded on the audit row. */
18
+ project: string | null;
19
+ }
20
+ /**
21
+ * Resolve the effective source for an MCP tool call.
22
+ *
23
+ * Returns the source the rest of the pipeline should use. When a caller
24
+ * over-claims trust the declared source is dropped, an audit row is written,
25
+ * and the env-inferred source is returned instead.
26
+ */
27
+ export declare function resolveToolSource(declaredSource: DefenceSource | undefined, options: ResolveToolSourceOptions): DefenceSource;
@@ -0,0 +1,80 @@
1
+ /**
2
+ * Resolve and harden the source of an MCP tool call.
3
+ *
4
+ * MCP callers can self-declare any source they like. This module:
5
+ * 1. Always computes the environment-inferred trust ceiling first.
6
+ * 2. Clamps any over-claimed declared source down to that ceiling.
7
+ * 3. Writes a `SOURCE_ELEVATION_BLOCKED` row to defence_audit when a clamp
8
+ * happens, so operators can spot prompt-injection trying to escalate
9
+ * its own trust.
10
+ * 4. Writes a `SOURCE_MISSING` row when no source was declared, preserving
11
+ * the existing visibility into unconfigured callers.
12
+ */
13
+ import { clampSourceToCeiling } from './env-detector.js';
14
+ import { logAudit } from '../audit/logger.js';
15
+ /**
16
+ * Resolve the effective source for an MCP tool call.
17
+ *
18
+ * Returns the source the rest of the pipeline should use. When a caller
19
+ * over-claims trust the declared source is dropped, an audit row is written,
20
+ * and the env-inferred source is returned instead.
21
+ */
22
+ export function resolveToolSource(declaredSource, options) {
23
+ const clampResult = clampSourceToCeiling(declaredSource);
24
+ const { source, clamped, declaredScore, ceilingScore, detection } = clampResult;
25
+ if (clamped && declaredSource) {
26
+ try {
27
+ logAudit({
28
+ memory_id: null,
29
+ project: options.project,
30
+ timestamp: new Date().toISOString(),
31
+ source_type: source.type,
32
+ source_identifier: source.identifier,
33
+ trust_score: ceilingScore,
34
+ sensitivity_level: 'PUBLIC',
35
+ firewall_result: 'BLOCK',
36
+ anomaly_score: 0,
37
+ threat_indicators: JSON.stringify(['privilege_escalation']),
38
+ blocked_patterns: '[]',
39
+ reason: `SOURCE_ELEVATION_BLOCKED: tool=${options.toolName}, ` +
40
+ `declared=${declaredSource.type}:${declaredSource.identifier} (score=${declaredScore}), ` +
41
+ `clamped=${source.type}:${source.identifier} (score=${ceilingScore}) ` +
42
+ `via ${detection.method} (confidence: ${detection.confidence})`,
43
+ fragmentation_score: null,
44
+ pipeline_duration_ms: null,
45
+ });
46
+ }
47
+ catch {
48
+ // Audit logging must never break tool execution.
49
+ }
50
+ return source;
51
+ }
52
+ // No declared source — inferred from environment. Preserve the existing
53
+ // SOURCE_MISSING visibility so operators see unconfigured callers.
54
+ if (!declaredSource) {
55
+ try {
56
+ logAudit({
57
+ memory_id: null,
58
+ project: options.project,
59
+ timestamp: new Date().toISOString(),
60
+ source_type: source.type,
61
+ source_identifier: source.identifier,
62
+ trust_score: 0,
63
+ sensitivity_level: 'PUBLIC',
64
+ firewall_result: 'ALLOW',
65
+ anomaly_score: 0,
66
+ threat_indicators: '[]',
67
+ blocked_patterns: '[]',
68
+ reason: `SOURCE_MISSING: tool=${options.toolName}, ` +
69
+ `inferred=${source.type}:${source.identifier} ` +
70
+ `via ${detection.method} (confidence: ${detection.confidence})`,
71
+ fragmentation_score: null,
72
+ pipeline_duration_ms: null,
73
+ });
74
+ }
75
+ catch {
76
+ // Audit logging must never break tool execution.
77
+ }
78
+ }
79
+ return source;
80
+ }
package/dist/server.js CHANGED
@@ -22,16 +22,22 @@ import { handleGraphQuery, handleGraphEntities, handleGraphExplain } from './too
22
22
  import { checkDatabaseSize } from './database/init.js';
23
23
  import { queryAuditLogs, getAuditStats, getLifetimeStats } from './defence/audit/index.js';
24
24
  import { scanExistingMemories } from './defence/scanner/index.js';
25
- import { resolveSource } from './defence/trust/env-detector.js';
26
- import { logAudit } from './defence/audit/logger.js';
25
+ import { resolveToolSource as resolveToolSourceImpl } from './defence/trust/resolve-tool-source.js';
27
26
  import { scanToolResponse, shouldScanToolResponse } from './defence/tool-response-scanner.js';
28
27
  import { getToolResponseScanConfig } from './cloud/config.js';
29
28
  import { isKillSwitchActive, getKillSwitchMeta, assertOperationAllowed, activateKillSwitch, deactivateKillSwitch, KillSwitchError, } from './api/control.js';
30
- // Shared source schema for access control on MCP tools
29
+ // Shared source schema for access control on MCP tools.
30
+ // NOTE: 'user' is intentionally NOT accepted from MCP callers. MCP tools are
31
+ // always invoked by an agent, hook, CLI or API — never by a literal human
32
+ // typing — so accepting type:'user' would let a prompt-injected agent
33
+ // self-attest as the human operator and earn trust=1.0, bypassing the
34
+ // quarantine band and RESTRICTED read gating. The 'user' type still exists
35
+ // internally for things like dashboard-originated writes, but it must never
36
+ // be honoured when it arrives over the MCP transport.
31
37
  const sourceParam = z.object({
32
- type: z.enum(['user', 'cli', 'hook', 'email', 'web', 'agent', 'file', 'api', 'tool_response']),
38
+ type: z.enum(['cli', 'hook', 'email', 'web', 'agent', 'file', 'api', 'tool_response']),
33
39
  identifier: z.string(),
34
- }).optional().describe('Caller identity for access control (agents should pass this)');
40
+ }).optional().describe('Caller identity for access control (agents should pass this). type:"user" is rejected — MCP is never a human channel.');
35
41
  /**
36
42
  * Wrap an MCP tool handler to scan its response for threats.
37
43
  * Advisory mode: appends a warning but never blocks.
@@ -67,35 +73,19 @@ function withResponseScan(toolName, handler) {
67
73
  };
68
74
  }
69
75
  /**
70
- * Resolve source for an MCP tool call, inferring from environment if not declared.
71
- * Logs an audit warning when source is missing (gives operators visibility).
76
+ * Resolve source for an MCP tool call.
77
+ *
78
+ * Delegates to the env-ceiling clamp helper, which:
79
+ * - Drops any caller-declared source that claims higher trust than the
80
+ * runtime environment justifies (writes SOURCE_ELEVATION_BLOCKED to audit).
81
+ * - Falls back to env-inferred source when none was declared (writes
82
+ * SOURCE_MISSING to audit for operator visibility).
72
83
  */
73
84
  function resolveToolSource(declaredSource, toolName) {
74
- const { source, inferred, detection } = resolveSource(declaredSource);
75
- if (inferred) {
76
- try {
77
- logAudit({
78
- memory_id: null,
79
- project: getActiveProject(),
80
- timestamp: new Date().toISOString(),
81
- source_type: source.type,
82
- source_identifier: source.identifier,
83
- trust_score: 0,
84
- sensitivity_level: 'PUBLIC',
85
- firewall_result: 'ALLOW',
86
- anomaly_score: 0,
87
- threat_indicators: '[]',
88
- blocked_patterns: '[]',
89
- reason: `SOURCE_MISSING: tool=${toolName}, inferred=${source.type}:${source.identifier} via ${detection?.method ?? 'default'} (confidence: ${detection?.confidence ?? 'low'})`,
90
- fragmentation_score: null,
91
- pipeline_duration_ms: null,
92
- });
93
- }
94
- catch {
95
- // Audit logging should never break tool execution
96
- }
97
- }
98
- return source;
85
+ return resolveToolSourceImpl(declaredSource, {
86
+ toolName,
87
+ project: getActiveProject(),
88
+ });
99
89
  }
100
90
  /**
101
91
  * Wrap an MCP tool handler to enforce kill switch lockdown.
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "shieldcortex",
3
- "version": "4.27.2",
3
+ "version": "4.27.3",
4
4
  "description": "Trustworthy memory and security for AI agents. Recall debugging, review queue, OpenClaw session capture, and memory poisoning defence for Claude Code, Codex, OpenClaw, LangChain, and MCP agents.",
5
5
  "main": "dist/index.js",
6
6
  "types": "dist/index.d.ts",
@@ -61,7 +61,8 @@
61
61
  "bench:smoke": "SHIELDCORTEX_SKIP_EMBEDDINGS=1 tsx benchmark/longmemeval/run.ts --quiet",
62
62
  "audit:security": "npm audit --audit-level=moderate",
63
63
  "prepack": "node scripts/ensure-bin-executable.mjs",
64
- "prepublishOnly": "npm run build"
64
+ "version": "node scripts/sync-plugin-version.mjs && git add plugins/openclaw/package.json plugins/openclaw/openclaw.plugin.json",
65
+ "prepublishOnly": "node scripts/sync-plugin-version.mjs --check && npm run build"
65
66
  },
66
67
  "keywords": [
67
68
  "ai-memory",