@inkeep/agents-manage-ui 0.22.7 → 0.22.9

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 (295) hide show
  1. package/.next/standalone/agents-manage-ui/.next/BUILD_ID +1 -1
  2. package/.next/standalone/agents-manage-ui/.next/app-build-manifest.json +170 -295
  3. package/.next/standalone/agents-manage-ui/.next/app-path-routes-manifest.json +7 -7
  4. package/.next/standalone/agents-manage-ui/.next/build-manifest.json +2 -2
  5. package/.next/standalone/agents-manage-ui/.next/prerender-manifest.json +3 -3
  6. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/page.js +2 -2
  7. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/page.js.nft.json +1 -1
  8. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/page_client-reference-manifest.js +1 -1
  9. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/agents/[agentId]/page.js +2 -2
  10. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/agents/[agentId]/page.js.nft.json +1 -1
  11. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/agents/[agentId]/page_client-reference-manifest.js +1 -1
  12. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/agents/new/page.js +2 -2
  13. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/agents/new/page.js.nft.json +1 -1
  14. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/agents/new/page_client-reference-manifest.js +1 -1
  15. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/agents/page.js +2 -2
  16. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/agents/page.js.nft.json +1 -1
  17. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/agents/page_client-reference-manifest.js +1 -1
  18. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/api-keys/page.js +3 -3
  19. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/api-keys/page.js.nft.json +1 -1
  20. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/api-keys/page_client-reference-manifest.js +1 -1
  21. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/artifacts/[artifactComponentId]/page.js +2 -2
  22. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/artifacts/[artifactComponentId]/page.js.nft.json +1 -1
  23. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/artifacts/[artifactComponentId]/page_client-reference-manifest.js +1 -1
  24. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/artifacts/new/page.js +2 -2
  25. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/artifacts/new/page.js.nft.json +1 -1
  26. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/artifacts/new/page_client-reference-manifest.js +1 -1
  27. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/artifacts/page.js +2 -2
  28. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/artifacts/page.js.nft.json +1 -1
  29. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/artifacts/page_client-reference-manifest.js +1 -1
  30. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/components/[dataComponentId]/page.js +2 -2
  31. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/components/[dataComponentId]/page.js.nft.json +1 -1
  32. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/components/[dataComponentId]/page_client-reference-manifest.js +1 -1
  33. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/components/new/page.js +2 -2
  34. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/components/new/page.js.nft.json +1 -1
  35. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/components/new/page_client-reference-manifest.js +1 -1
  36. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/components/page.js +2 -2
  37. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/components/page.js.nft.json +1 -1
  38. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/components/page_client-reference-manifest.js +1 -1
  39. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/credentials/[credentialId]/page.js +2 -2
  40. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/credentials/[credentialId]/page.js.nft.json +1 -1
  41. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/credentials/[credentialId]/page_client-reference-manifest.js +1 -1
  42. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/credentials/new/bearer/page.js +2 -2
  43. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/credentials/new/bearer/page.js.nft.json +1 -1
  44. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/credentials/new/bearer/page_client-reference-manifest.js +1 -1
  45. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/credentials/new/page.js +2 -2
  46. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/credentials/new/page.js.nft.json +1 -1
  47. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/credentials/new/page_client-reference-manifest.js +1 -1
  48. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/credentials/new/providers/[providerId]/page.js +2 -2
  49. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/credentials/new/providers/[providerId]/page.js.nft.json +1 -1
  50. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/credentials/new/providers/[providerId]/page_client-reference-manifest.js +1 -1
  51. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/credentials/new/providers/page.js +2 -2
  52. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/credentials/new/providers/page.js.nft.json +1 -1
  53. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/credentials/new/providers/page_client-reference-manifest.js +1 -1
  54. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/credentials/page.js +2 -2
  55. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/credentials/page.js.nft.json +1 -1
  56. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/credentials/page_client-reference-manifest.js +1 -1
  57. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/mcp-servers/[mcpServerId]/edit/page.js +2 -2
  58. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/mcp-servers/[mcpServerId]/edit/page.js.nft.json +1 -1
  59. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/mcp-servers/[mcpServerId]/edit/page_client-reference-manifest.js +1 -1
  60. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/mcp-servers/[mcpServerId]/page.js +2 -2
  61. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/mcp-servers/[mcpServerId]/page.js.nft.json +1 -1
  62. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/mcp-servers/[mcpServerId]/page_client-reference-manifest.js +1 -1
  63. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/mcp-servers/new/page.js +2 -2
  64. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/mcp-servers/new/page.js.nft.json +1 -1
  65. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/mcp-servers/new/page_client-reference-manifest.js +1 -1
  66. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/mcp-servers/page.js +2 -2
  67. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/mcp-servers/page.js.nft.json +1 -1
  68. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/mcp-servers/page_client-reference-manifest.js +1 -1
  69. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/page.js +2 -2
  70. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/page.js.nft.json +1 -1
  71. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/page_client-reference-manifest.js +1 -1
  72. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/settings/page.js +2 -2
  73. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/settings/page.js.nft.json +1 -1
  74. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/settings/page_client-reference-manifest.js +1 -1
  75. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/traces/ai-calls/page.js +2 -2
  76. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/traces/ai-calls/page.js.nft.json +1 -1
  77. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/traces/ai-calls/page_client-reference-manifest.js +1 -1
  78. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/traces/conversations/[conversationId]/page.js +2 -2
  79. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/traces/conversations/[conversationId]/page.js.nft.json +1 -1
  80. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/traces/conversations/[conversationId]/page_client-reference-manifest.js +1 -1
  81. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/traces/page.js +3 -3
  82. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/traces/page.js.nft.json +1 -1
  83. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/traces/page_client-reference-manifest.js +1 -1
  84. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/page.js +2 -3
  85. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/page.js.nft.json +1 -1
  86. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/page_client-reference-manifest.js +1 -1
  87. package/.next/standalone/agents-manage-ui/.next/server/app/_not-found/page.js +2 -2
  88. package/.next/standalone/agents-manage-ui/.next/server/app/_not-found/page.js.nft.json +1 -1
  89. package/.next/standalone/agents-manage-ui/.next/server/app/_not-found/page_client-reference-manifest.js +1 -1
  90. package/.next/standalone/agents-manage-ui/.next/server/app/_not-found.html +1 -1
  91. package/.next/standalone/agents-manage-ui/.next/server/app/_not-found.rsc +21 -20
  92. package/.next/standalone/agents-manage-ui/.next/server/app/api/signoz/conversations/[conversationId]/route.js +1 -1
  93. package/.next/standalone/agents-manage-ui/.next/server/app/api/signoz/conversations/[conversationId]/route_client-reference-manifest.js +1 -1
  94. package/.next/standalone/agents-manage-ui/.next/server/app/api/signoz/route_client-reference-manifest.js +1 -1
  95. package/.next/standalone/agents-manage-ui/.next/server/app/page.js +2 -2
  96. package/.next/standalone/agents-manage-ui/.next/server/app/page.js.nft.json +1 -1
  97. package/.next/standalone/agents-manage-ui/.next/server/app/page_client-reference-manifest.js +1 -1
  98. package/.next/standalone/agents-manage-ui/.next/server/app-paths-manifest.json +7 -7
  99. package/.next/standalone/agents-manage-ui/.next/server/chunks/1670.js +1 -1
  100. package/.next/standalone/agents-manage-ui/.next/server/chunks/1913.js +1 -1
  101. package/.next/standalone/agents-manage-ui/.next/server/chunks/{2903.js → 2411.js} +1 -1
  102. package/.next/standalone/agents-manage-ui/.next/server/chunks/{1237.js → 246.js} +4 -4
  103. package/.next/standalone/agents-manage-ui/.next/server/chunks/258.js +1 -1
  104. package/.next/standalone/agents-manage-ui/.next/server/chunks/272.js +1 -0
  105. package/.next/standalone/agents-manage-ui/.next/server/chunks/2787.js +1 -1
  106. package/.next/standalone/agents-manage-ui/.next/server/chunks/3547.js +1 -1
  107. package/.next/standalone/agents-manage-ui/.next/server/chunks/3667.js +1 -1
  108. package/.next/standalone/agents-manage-ui/.next/server/chunks/4146.js +1 -0
  109. package/.next/standalone/agents-manage-ui/.next/server/chunks/5262.js +1 -1
  110. package/.next/standalone/agents-manage-ui/.next/server/chunks/5450.js +2 -2
  111. package/.next/standalone/agents-manage-ui/.next/server/chunks/5619.js +1 -1
  112. package/.next/standalone/agents-manage-ui/.next/server/chunks/6048.js +1 -0
  113. package/.next/standalone/agents-manage-ui/.next/server/chunks/6212.js +1 -1
  114. package/.next/standalone/agents-manage-ui/.next/server/chunks/6575.js +1 -1
  115. package/.next/standalone/agents-manage-ui/.next/server/chunks/7013.js +1 -0
  116. package/.next/standalone/agents-manage-ui/.next/server/chunks/7596.js +1 -0
  117. package/.next/standalone/agents-manage-ui/.next/server/chunks/7711.js +14 -14
  118. package/.next/standalone/agents-manage-ui/.next/server/chunks/7714.js +1 -0
  119. package/.next/standalone/agents-manage-ui/.next/server/chunks/7788.js +1 -0
  120. package/.next/standalone/agents-manage-ui/.next/server/chunks/7988.js +10 -0
  121. package/.next/standalone/agents-manage-ui/.next/server/chunks/{2961.js → 8381.js} +1 -1
  122. package/.next/standalone/agents-manage-ui/.next/server/chunks/{2496.js → 8434.js} +4 -4
  123. package/.next/standalone/agents-manage-ui/.next/server/chunks/8727.js +1 -1
  124. package/.next/standalone/agents-manage-ui/.next/server/chunks/9122.js +1 -1
  125. package/.next/standalone/agents-manage-ui/.next/server/chunks/9394.js +211 -1
  126. package/.next/standalone/agents-manage-ui/.next/server/chunks/9802.js +1 -0
  127. package/.next/standalone/agents-manage-ui/.next/server/chunks/9946.js +2 -0
  128. package/.next/standalone/agents-manage-ui/.next/server/middleware-manifest.json +5 -5
  129. package/.next/standalone/agents-manage-ui/.next/server/pages/404.html +1 -1
  130. package/.next/standalone/agents-manage-ui/.next/server/pages/500.html +1 -1
  131. package/.next/standalone/agents-manage-ui/.next/server/pages-manifest.json +1 -1
  132. package/.next/standalone/agents-manage-ui/.next/server/server-reference-manifest.js +1 -1
  133. package/.next/standalone/agents-manage-ui/.next/server/server-reference-manifest.json +1 -1
  134. package/.next/standalone/agents-manage-ui/.next/static/chunks/{37213-a3d5fa67db657652.js → 10290-b925159523c10e92.js} +8 -8
  135. package/.next/standalone/agents-manage-ui/.next/static/chunks/20837-a6bae4e33a71cde2.js +1 -0
  136. package/.next/standalone/agents-manage-ui/.next/static/chunks/23624-6eacc9668906f9e7.js +1 -0
  137. package/.next/standalone/agents-manage-ui/.next/static/chunks/29001-6c4c18e5d87ad9f4.js +1 -0
  138. package/.next/standalone/agents-manage-ui/.next/static/chunks/35250-f291415e1221d5c4.js +1 -0
  139. package/.next/standalone/agents-manage-ui/.next/static/chunks/39438-1f8d20735c0d802d.js +1 -0
  140. package/.next/standalone/agents-manage-ui/.next/static/chunks/51382-6c4c18e5d87ad9f4.js +1 -0
  141. package/.next/standalone/agents-manage-ui/.next/static/chunks/52452-bd888845b029d049.js +1 -0
  142. package/.next/standalone/agents-manage-ui/.next/static/chunks/63969-2154b498bc04168d.js +1 -0
  143. package/.next/standalone/agents-manage-ui/.next/static/chunks/64403-67b979248af65da3.js +1 -0
  144. package/.next/standalone/agents-manage-ui/.next/static/chunks/6481-43349443fd5e9141.js +1 -0
  145. package/.next/standalone/agents-manage-ui/.next/static/chunks/72613-20f990823f0992b0.js +1 -0
  146. package/.next/standalone/agents-manage-ui/.next/static/chunks/73763-6c4c18e5d87ad9f4.js +1 -0
  147. package/.next/standalone/agents-manage-ui/.next/static/chunks/{75188-bd991c37ae1fc628.js → 75188-f5ea109c8b387450.js} +1 -1
  148. package/.next/standalone/agents-manage-ui/.next/static/chunks/8082-d7654712bfdd7ab2.js +1 -0
  149. package/.next/standalone/agents-manage-ui/.next/static/chunks/96144-6c4c18e5d87ad9f4.js +1 -0
  150. package/.next/standalone/agents-manage-ui/.next/static/chunks/99526-9079a1fcd9d74df8.js +1 -0
  151. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/page-1b690e0c70886d6c.js +1 -0
  152. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/agents/[agentId]/{loading-e1f169e1ecbf908b.js → loading-255a4015ef5de1d5.js} +1 -1
  153. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/agents/[agentId]/page-dfb1cceaafe373fb.js +1 -0
  154. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/{credentials/new/page-f63f184c7d568cae.js → agents/loading-ba8a6912fa234bb0.js} +1 -1
  155. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/agents/new/{loading-e1f169e1ecbf908b.js → loading-255a4015ef5de1d5.js} +1 -1
  156. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/agents/new/page-7788b2f189e0e6f0.js +1 -0
  157. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/agents/page-f93df417f7fdfbbf.js +1 -0
  158. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/api-keys/page-1a0adf5ebeceee7a.js +1 -0
  159. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/artifacts/[artifactComponentId]/page-d5d0eb309cc13172.js +1 -0
  160. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/{components/loading-f63f184c7d568cae.js → artifacts/loading-ba8a6912fa234bb0.js} +1 -1
  161. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/artifacts/new/page-ede690773dcc4ee4.js +1 -0
  162. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/artifacts/page-682ebf32b8d6a880.js +1 -0
  163. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/components/[dataComponentId]/page-627e1e232a4c684d.js +1 -0
  164. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/{agents/loading-f63f184c7d568cae.js → components/loading-ba8a6912fa234bb0.js} +1 -1
  165. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/components/new/page-a8dea81485381dd9.js +1 -0
  166. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/components/page-2aafad76ab35c3df.js +1 -0
  167. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/credentials/[credentialId]/page-8e378309aa04bd5c.js +1 -0
  168. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/credentials/new/bearer/page-b88248e5c7401a84.js +1 -0
  169. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/{artifacts/loading-f63f184c7d568cae.js → credentials/new/page-ba8a6912fa234bb0.js} +1 -1
  170. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/credentials/new/providers/[providerId]/page-a0bde034bbc89a66.js +1 -0
  171. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/credentials/new/providers/{page-426cc0efd6a1bee4.js → page-f612e8440da853bd.js} +1 -1
  172. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/credentials/page-c18c85ba5a982378.js +1 -0
  173. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/layout-0f84ce3202492bc1.js +1 -0
  174. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/mcp-servers/[mcpServerId]/edit/page-ae70faf419377af8.js +1 -0
  175. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/mcp-servers/[mcpServerId]/page-d9f62e41a8e26a00.js +1 -0
  176. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/mcp-servers/new/{layout-e1f169e1ecbf908b.js → layout-255a4015ef5de1d5.js} +1 -1
  177. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/mcp-servers/new/{page-1575512005327de3.js → page-5522c4ea7c950a31.js} +1 -1
  178. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/mcp-servers/page-d15d040371577c1a.js +1 -0
  179. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/settings/page-9716d678e3c26414.js +1 -0
  180. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/traces/ai-calls/{page-727cedc8c02cd8bd.js → page-af14c8af742a8226.js} +1 -1
  181. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/traces/conversations/[conversationId]/page-90f1d4f22b83b49b.js +1 -0
  182. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/traces/page-7125d891b649c89f.js +1 -0
  183. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/error-89dae9d8e7c56c2f.js +1 -0
  184. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/loading-ba8a6912fa234bb0.js +1 -0
  185. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/page-5367220c2009d909.js +1 -0
  186. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/_not-found/page-1b690e0c70886d6c.js +1 -0
  187. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/api/signoz/conversations/[conversationId]/route-1b690e0c70886d6c.js +1 -0
  188. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/api/signoz/route-1b690e0c70886d6c.js +1 -0
  189. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/layout-696420b395e44f80.js +1 -0
  190. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/not-found-4fc170fc11e5aaec.js +1 -0
  191. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/page-1b690e0c70886d6c.js +1 -0
  192. package/.next/standalone/agents-manage-ui/.next/static/css/7af00fc080500f18.css +1 -0
  193. package/.next/standalone/agents-manage-ui/package.json +1 -1
  194. package/.next/standalone/packages/agents-core/package.json +1 -1
  195. package/package.json +4 -4
  196. package/src/app/[tenantId]/projects/[projectId]/agents/[agentId]/page.tsx +11 -1
  197. package/src/app/[tenantId]/projects/[projectId]/agents/page.tsx +8 -8
  198. package/src/app/[tenantId]/projects/[projectId]/api-keys/page.tsx +14 -5
  199. package/src/app/[tenantId]/projects/[projectId]/artifacts/[artifactComponentId]/page.tsx +16 -1
  200. package/src/app/[tenantId]/projects/[projectId]/artifacts/page.tsx +7 -6
  201. package/src/app/[tenantId]/projects/[projectId]/components/[dataComponentId]/page.tsx +16 -1
  202. package/src/app/[tenantId]/projects/[projectId]/components/page.tsx +7 -6
  203. package/src/app/[tenantId]/projects/[projectId]/credentials/[credentialId]/page.tsx +36 -28
  204. package/src/app/[tenantId]/projects/[projectId]/credentials/page.tsx +5 -4
  205. package/src/app/[tenantId]/projects/[projectId]/layout.tsx +2 -3
  206. package/src/app/[tenantId]/projects/[projectId]/mcp-servers/[mcpServerId]/edit/page.tsx +29 -22
  207. package/src/app/[tenantId]/projects/[projectId]/mcp-servers/[mcpServerId]/page.tsx +29 -22
  208. package/src/app/[tenantId]/projects/[projectId]/mcp-servers/page.tsx +19 -18
  209. package/src/app/[tenantId]/projects/[projectId]/settings/page.tsx +15 -1
  210. package/src/app/[tenantId]/projects/error.tsx +15 -2
  211. package/src/app/[tenantId]/projects/page.tsx +6 -6
  212. package/src/app/api/signoz/conversations/[conversationId]/route.ts +3 -3
  213. package/src/app/not-found.tsx +12 -0
  214. package/src/components/errors/full-page-error.tsx +117 -14
  215. package/src/lib/api/agent-full-client.ts +2 -2
  216. package/src/lib/api/signoz-stats.ts +11 -11
  217. package/src/lib/types/errors.ts +9 -5
  218. package/.next/standalone/agents-manage-ui/.next/server/chunks/175.js +0 -211
  219. package/.next/standalone/agents-manage-ui/.next/server/chunks/3217.js +0 -1
  220. package/.next/standalone/agents-manage-ui/.next/server/chunks/4098.js +0 -1
  221. package/.next/standalone/agents-manage-ui/.next/server/chunks/6046.js +0 -1
  222. package/.next/standalone/agents-manage-ui/.next/server/chunks/6061.js +0 -1
  223. package/.next/standalone/agents-manage-ui/.next/server/chunks/7457.js +0 -10
  224. package/.next/standalone/agents-manage-ui/.next/server/chunks/7514.js +0 -1
  225. package/.next/standalone/agents-manage-ui/.next/server/chunks/8129.js +0 -1
  226. package/.next/standalone/agents-manage-ui/.next/server/chunks/8290.js +0 -1
  227. package/.next/standalone/agents-manage-ui/.next/server/chunks/9248.js +0 -1
  228. package/.next/standalone/agents-manage-ui/.next/static/chunks/18197-fc668636ea58fdf3.js +0 -1
  229. package/.next/standalone/agents-manage-ui/.next/static/chunks/22327-efb8a4e0a3d60d2f.js +0 -1
  230. package/.next/standalone/agents-manage-ui/.next/static/chunks/23624-2571fe5a16f780dc.js +0 -1
  231. package/.next/standalone/agents-manage-ui/.next/static/chunks/24510-3add529cda53ebc3.js +0 -1
  232. package/.next/standalone/agents-manage-ui/.next/static/chunks/26649-013f610d0d1b7cb7.js +0 -1
  233. package/.next/standalone/agents-manage-ui/.next/static/chunks/36025-fcdbb9a346d6c678.js +0 -1
  234. package/.next/standalone/agents-manage-ui/.next/static/chunks/39557-35f1379dd47bb2a0.js +0 -1
  235. package/.next/standalone/agents-manage-ui/.next/static/chunks/44708-efb8a4e0a3d60d2f.js +0 -1
  236. package/.next/standalone/agents-manage-ui/.next/static/chunks/68467-f56f6d55885b8098.js +0 -1
  237. package/.next/standalone/agents-manage-ui/.next/static/chunks/71558-bf29d8e1a64919da.js +0 -1
  238. package/.next/standalone/agents-manage-ui/.next/static/chunks/7190-a071fd2cd79ae8e2.js +0 -1
  239. package/.next/standalone/agents-manage-ui/.next/static/chunks/77565-efb8a4e0a3d60d2f.js +0 -1
  240. package/.next/standalone/agents-manage-ui/.next/static/chunks/80230-fd9fd8f274521a92.js +0 -1
  241. package/.next/standalone/agents-manage-ui/.next/static/chunks/81916-7e58cd65e34860ed.js +0 -1
  242. package/.next/standalone/agents-manage-ui/.next/static/chunks/99946-efb8a4e0a3d60d2f.js +0 -1
  243. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/page-78153a3b79a06207.js +0 -1
  244. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/agents/[agentId]/error-8ae206d1430882ab.js +0 -1
  245. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/agents/[agentId]/page-ddd417cc95864d4d.js +0 -1
  246. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/agents/error-aa8e3feab2fca22e.js +0 -1
  247. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/agents/new/page-bff7a6de4a5d7177.js +0 -1
  248. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/agents/page-f748a390657c6bdb.js +0 -1
  249. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/api-keys/error-cd2fba21ced33b0a.js +0 -1
  250. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/api-keys/page-2b2b092aef95d2e0.js +0 -1
  251. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/artifacts/[artifactComponentId]/error-d361c69222ae1daa.js +0 -1
  252. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/artifacts/[artifactComponentId]/page-57365a604c57d02f.js +0 -1
  253. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/artifacts/error-c51a56f9059df193.js +0 -1
  254. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/artifacts/new/page-57365a604c57d02f.js +0 -1
  255. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/artifacts/page-8b368b8b5e84f39a.js +0 -1
  256. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/components/[dataComponentId]/error-3ed272d436f9c4af.js +0 -1
  257. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/components/[dataComponentId]/page-da9993a9057acc17.js +0 -1
  258. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/components/error-c48397ff3d0af72e.js +0 -1
  259. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/components/new/page-da9993a9057acc17.js +0 -1
  260. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/components/page-8472ec5c577d3c9d.js +0 -1
  261. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/credentials/[credentialId]/page-728b963b91b2e11a.js +0 -1
  262. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/credentials/error-212abab01348cfa0.js +0 -1
  263. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/credentials/new/bearer/page-4ec9326681b922fd.js +0 -1
  264. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/credentials/new/providers/[providerId]/page-b3a33728e2e411ee.js +0 -1
  265. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/credentials/page-a1c286579d67f43c.js +0 -1
  266. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/layout-78153a3b79a06207.js +0 -1
  267. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/mcp-servers/[mcpServerId]/edit/page-a6a4de07efda794a.js +0 -1
  268. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/mcp-servers/[mcpServerId]/page-ce2a0be52a10a1f2.js +0 -1
  269. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/mcp-servers/page-ba0054b117307486.js +0 -1
  270. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/not-found-01743e28b6c59780.js +0 -1
  271. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/settings/error-a863a27baceb31cc.js +0 -1
  272. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/settings/page-3ad5dbb8999ec0b4.js +0 -1
  273. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/traces/conversations/[conversationId]/page-1025ee478d7359e4.js +0 -1
  274. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/traces/page-13c59a717fe47ff7.js +0 -1
  275. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/error-938666d5b13570b3.js +0 -1
  276. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/loading-f63f184c7d568cae.js +0 -1
  277. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/page-74589611fcb8c539.js +0 -1
  278. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/_not-found/page-11863f22328d3ac7.js +0 -1
  279. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/api/signoz/conversations/[conversationId]/route-78153a3b79a06207.js +0 -1
  280. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/api/signoz/route-78153a3b79a06207.js +0 -1
  281. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/layout-864029246cf98d6e.js +0 -1
  282. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/page-78153a3b79a06207.js +0 -1
  283. package/.next/standalone/agents-manage-ui/.next/static/css/a813c86aed230074.css +0 -1
  284. package/src/app/[tenantId]/projects/[projectId]/agents/[agentId]/error.tsx +0 -21
  285. package/src/app/[tenantId]/projects/[projectId]/agents/error.tsx +0 -7
  286. package/src/app/[tenantId]/projects/[projectId]/api-keys/error.tsx +0 -7
  287. package/src/app/[tenantId]/projects/[projectId]/artifacts/[artifactComponentId]/error.tsx +0 -18
  288. package/src/app/[tenantId]/projects/[projectId]/artifacts/error.tsx +0 -7
  289. package/src/app/[tenantId]/projects/[projectId]/components/[dataComponentId]/error.tsx +0 -18
  290. package/src/app/[tenantId]/projects/[projectId]/components/error.tsx +0 -7
  291. package/src/app/[tenantId]/projects/[projectId]/credentials/error.tsx +0 -7
  292. package/src/app/[tenantId]/projects/[projectId]/not-found.tsx +0 -42
  293. package/src/app/[tenantId]/projects/[projectId]/settings/error.tsx +0 -17
  294. /package/.next/standalone/agents-manage-ui/.next/static/{Qe_A5dt3HEibQ6bvSpfpi → JjrSa9WWidcKfw6rf-NeA}/_buildManifest.js +0 -0
  295. /package/.next/standalone/agents-manage-ui/.next/static/{Qe_A5dt3HEibQ6bvSpfpi → JjrSa9WWidcKfw6rf-NeA}/_ssgManifest.js +0 -0
@@ -1,13 +1,14 @@
1
1
  import { Plus } from 'lucide-react';
2
2
  import Link from 'next/link';
3
3
  import { DataComponentsList } from '@/components/data-components/data-components-list';
4
+ import FullPageError from '@/components/errors/full-page-error';
4
5
  import { BodyTemplate } from '@/components/layout/body-template';
5
6
  import EmptyState from '@/components/layout/empty-state';
6
7
  import { MainContent } from '@/components/layout/main-content';
7
8
  import { PageHeader } from '@/components/layout/page-header';
8
9
  import { Button } from '@/components/ui/button';
9
10
  import { dataComponentDescription } from '@/constants/page-descriptions';
10
- import { type DataComponent, fetchDataComponents } from '@/lib/api/data-components';
11
+ import { fetchDataComponents } from '@/lib/api/data-components';
11
12
 
12
13
  export const dynamic = 'force-dynamic';
13
14
 
@@ -17,12 +18,12 @@ interface DataComponentsPageProps {
17
18
 
18
19
  async function DataComponentsPage({ params }: DataComponentsPageProps) {
19
20
  const { tenantId, projectId } = await params;
20
- let dataComponents: { data: DataComponent[] } = { data: [] };
21
+
22
+ let dataComponents: Awaited<ReturnType<typeof fetchDataComponents>>;
21
23
  try {
22
- const response = await fetchDataComponents(tenantId, projectId);
23
- dataComponents = response;
24
- } catch (_error) {
25
- throw new Error('Failed to fetch components');
24
+ dataComponents = await fetchDataComponents(tenantId, projectId);
25
+ } catch (error) {
26
+ return <FullPageError error={error as Error} context="components" />;
26
27
  }
27
28
  return (
28
29
  <BodyTemplate breadcrumbs={[{ label: 'Components' }]}>
@@ -1,8 +1,8 @@
1
- import { notFound } from 'next/navigation';
2
1
  import {
3
2
  EditCredentialForm,
4
3
  type EditCredentialFormData,
5
4
  } from '@/components/credentials/views/edit-credential-form';
5
+ import FullPageError from '@/components/errors/full-page-error';
6
6
  import { BodyTemplate } from '@/components/layout/body-template';
7
7
  import { MainContent } from '@/components/layout/main-content';
8
8
  import { type Credential, fetchCredential } from '@/lib/api/credentials';
@@ -35,37 +35,45 @@ async function EditCredentialsPage({
35
35
  }) {
36
36
  const { tenantId, projectId, credentialId } = await params;
37
37
 
38
- try {
39
- // Fetch credential data on the server
40
- const credential = await fetchCredential(tenantId, projectId, credentialId);
41
- const initialFormData = await credentialToFormData(credential);
38
+ let credential: Credential;
39
+ let initialFormData: EditCredentialFormData;
42
40
 
41
+ try {
42
+ credential = await fetchCredential(tenantId, projectId, credentialId);
43
+ initialFormData = await credentialToFormData(credential);
44
+ } catch (error) {
43
45
  return (
44
- <BodyTemplate
45
- breadcrumbs={[
46
- {
47
- label: 'Credentials',
48
- href: `/${tenantId}/projects/${projectId}/credentials`,
49
- },
50
- { label: 'Edit' },
51
- ]}
52
- >
53
- <MainContent>
54
- <div className="max-w-2xl mx-auto py-4">
55
- <EditCredentialForm
56
- tenantId={tenantId}
57
- projectId={projectId}
58
- credential={credential}
59
- initialFormData={initialFormData}
60
- />
61
- </div>
62
- </MainContent>
63
- </BodyTemplate>
46
+ <FullPageError
47
+ error={error as Error}
48
+ link={`/${tenantId}/projects/${projectId}/credentials`}
49
+ linkText="Back to credentials"
50
+ context="credential"
51
+ />
64
52
  );
65
- } catch (error) {
66
- console.error('Failed to fetch credential:', error);
67
- notFound();
68
53
  }
54
+
55
+ return (
56
+ <BodyTemplate
57
+ breadcrumbs={[
58
+ {
59
+ label: 'Credentials',
60
+ href: `/${tenantId}/projects/${projectId}/credentials`,
61
+ },
62
+ { label: 'Edit' },
63
+ ]}
64
+ >
65
+ <MainContent>
66
+ <div className="max-w-2xl mx-auto py-4">
67
+ <EditCredentialForm
68
+ tenantId={tenantId}
69
+ projectId={projectId}
70
+ credential={credential}
71
+ initialFormData={initialFormData}
72
+ />
73
+ </div>
74
+ </MainContent>
75
+ </BodyTemplate>
76
+ );
69
77
  }
70
78
 
71
79
  export default EditCredentialsPage;
@@ -1,13 +1,13 @@
1
1
  import { Plus } from 'lucide-react';
2
2
  import Link from 'next/link';
3
3
  import { CredentialsList } from '@/components/credentials/credentials-list';
4
+ import FullPageError from '@/components/errors/full-page-error';
4
5
  import { CredentialsIcon } from '@/components/icons/empty-state/credentials';
5
6
  import { BodyTemplate } from '@/components/layout/body-template';
6
7
  import EmptyState from '@/components/layout/empty-state';
7
8
  import { MainContent } from '@/components/layout/main-content';
8
9
  import { PageHeader } from '@/components/layout/page-header';
9
10
  import { Button } from '@/components/ui/button';
10
- import type { Credential } from '@/lib/api/credentials';
11
11
  import { fetchCredentials } from '@/lib/api/credentials';
12
12
 
13
13
  export const dynamic = 'force-dynamic';
@@ -21,11 +21,12 @@ async function CredentialsPage({
21
21
  params: Promise<{ tenantId: string; projectId: string }>;
22
22
  }) {
23
23
  const { tenantId, projectId } = await params;
24
- let credentials: Credential[] = [];
24
+
25
+ let credentials: Awaited<ReturnType<typeof fetchCredentials>>;
25
26
  try {
26
27
  credentials = await fetchCredentials(tenantId, projectId);
27
- } catch (_error) {
28
- throw new Error('Failed to fetch credentials');
28
+ } catch (error) {
29
+ return <FullPageError error={error as Error} context="credentials" />;
29
30
  }
30
31
 
31
32
  return (
@@ -1,5 +1,5 @@
1
- import { notFound } from 'next/navigation';
2
1
  import type { ReactNode } from 'react';
2
+ import FullPageError from '@/components/errors/full-page-error';
3
3
  import { fetchProject } from '@/lib/api/projects';
4
4
 
5
5
  export const dynamic = 'force-dynamic';
@@ -16,8 +16,7 @@ export default async function ProjectLayout({ children, params }: ProjectLayoutP
16
16
  // Verify project exists
17
17
  await fetchProject(tenantId, projectId);
18
18
  } catch (_error) {
19
- // If project doesn't exist, show 404 page
20
- notFound();
19
+ return <FullPageError error={_error as Error} context="project" />;
21
20
  }
22
21
 
23
22
  return <>{children}</>;
@@ -1,41 +1,48 @@
1
- import { MCPTransportType } from '@inkeep/agents-core/client-exports'
2
- import { notFound } from 'next/navigation'
3
- import { BodyTemplate } from '@/components/layout/body-template'
4
- import { MainContent } from '@/components/layout/main-content'
5
- import { MCPServerForm } from '@/components/mcp-servers/form/mcp-server-form'
6
- import type { MCPToolFormData } from '@/components/mcp-servers/form/validation'
7
- import { type Credential, fetchCredentials } from '@/lib/api/credentials'
8
- import { fetchMCPTool } from '@/lib/api/tools'
9
- import type { MCPTool } from '@/lib/types/tools'
1
+ import { MCPTransportType } from '@inkeep/agents-core/client-exports';
2
+ import FullPageError from '@/components/errors/full-page-error';
3
+ import { BodyTemplate } from '@/components/layout/body-template';
4
+ import { MainContent } from '@/components/layout/main-content';
5
+ import { MCPServerForm } from '@/components/mcp-servers/form/mcp-server-form';
6
+ import type { MCPToolFormData } from '@/components/mcp-servers/form/validation';
7
+ import { type Credential, fetchCredentials } from '@/lib/api/credentials';
8
+ import { fetchMCPTool } from '@/lib/api/tools';
9
+ import type { MCPTool } from '@/lib/types/tools';
10
10
 
11
11
  interface EditMCPPageProps {
12
- params: Promise<{ mcpServerId: string; tenantId: string; projectId: string }>
12
+ params: Promise<{ mcpServerId: string; tenantId: string; projectId: string }>;
13
13
  }
14
14
 
15
15
  async function EditMCPPage({ params }: EditMCPPageProps) {
16
- const { mcpServerId, tenantId, projectId } = await params
16
+ const { mcpServerId, tenantId, projectId } = await params;
17
17
 
18
18
  // Fetch both in parallel with individual error handling
19
19
  const [mcpToolResult, credentialsResult] = await Promise.allSettled([
20
20
  fetchMCPTool(tenantId, projectId, mcpServerId),
21
21
  fetchCredentials(tenantId, projectId),
22
- ])
22
+ ]);
23
23
 
24
24
  // Handle MCP tool result (required)
25
- let mcpTool: MCPTool
25
+ let mcpTool: MCPTool;
26
26
  if (mcpToolResult.status === 'fulfilled') {
27
- mcpTool = mcpToolResult.value
27
+ mcpTool = mcpToolResult.value;
28
28
  } else {
29
- console.error('Failed to load MCP tool:', mcpToolResult.reason)
30
- notFound()
29
+ console.error('Failed to load MCP tool:', mcpToolResult.reason);
30
+ return (
31
+ <FullPageError
32
+ error={mcpToolResult.reason as Error}
33
+ link={`/${tenantId}/projects/${projectId}/mcp-servers`}
34
+ linkText="Back to MCP servers"
35
+ context="MCP server"
36
+ />
37
+ );
31
38
  }
32
39
 
33
40
  // Handle credentials result (optional - fallback to empty array)
34
- let credentials: Credential[] = []
41
+ let credentials: Credential[] = [];
35
42
  if (credentialsResult.status === 'fulfilled') {
36
- credentials = credentialsResult.value
43
+ credentials = credentialsResult.value;
37
44
  } else {
38
- console.error('Failed to load credentials:', credentialsResult.reason)
45
+ console.error('Failed to load credentials:', credentialsResult.reason);
39
46
  // Continue without credentials
40
47
  }
41
48
 
@@ -67,7 +74,7 @@ async function EditMCPPage({ params }: EditMCPPageProps) {
67
74
  },
68
75
  credentialReferenceId: mcpTool.credentialReferenceId || 'none',
69
76
  imageUrl: mcpTool.imageUrl?.trim() || undefined,
70
- }
77
+ };
71
78
 
72
79
  // MCPServerForm handles all the form logic
73
80
 
@@ -98,7 +105,7 @@ async function EditMCPPage({ params }: EditMCPPageProps) {
98
105
  </div>
99
106
  </MainContent>
100
107
  </BodyTemplate>
101
- )
108
+ );
102
109
  }
103
110
 
104
- export default EditMCPPage
111
+ export default EditMCPPage;
@@ -1,4 +1,4 @@
1
- import { notFound } from 'next/navigation';
1
+ import FullPageError from '@/components/errors/full-page-error';
2
2
  import { BodyTemplate } from '@/components/layout/body-template';
3
3
  import { MainContent } from '@/components/layout/main-content';
4
4
  import { ViewMCPServerDetails } from '@/components/mcp-servers/view-mcp-server-details';
@@ -11,31 +11,38 @@ interface MCPPageProps {
11
11
  async function MCPPage({ params }: MCPPageProps) {
12
12
  const { mcpServerId, tenantId, projectId } = await params;
13
13
 
14
+ let tool: Awaited<ReturnType<typeof fetchMCPTool>>;
14
15
  try {
15
- const tool = await fetchMCPTool(tenantId, projectId, mcpServerId);
16
-
16
+ tool = await fetchMCPTool(tenantId, projectId, mcpServerId);
17
+ } catch (error) {
17
18
  return (
18
- <BodyTemplate
19
- breadcrumbs={[
20
- {
21
- label: 'MCP servers',
22
- href: `/${tenantId}/projects/${projectId}/mcp-servers`,
23
- },
24
- {
25
- label: tool.name,
26
- href: `/${tenantId}/projects/${projectId}/mcp-servers/${mcpServerId}`,
27
- },
28
- ]}
29
- >
30
- <MainContent>
31
- <ViewMCPServerDetails tool={tool} tenantId={tenantId} projectId={projectId} />
32
- </MainContent>
33
- </BodyTemplate>
19
+ <FullPageError
20
+ error={error as Error}
21
+ link={`/${tenantId}/projects/${projectId}/mcp-servers`}
22
+ linkText="Back to MCP servers"
23
+ context="MCP server"
24
+ />
34
25
  );
35
- } catch (error) {
36
- console.error('Failed to load MCP server:', error);
37
- notFound();
38
26
  }
27
+
28
+ return (
29
+ <BodyTemplate
30
+ breadcrumbs={[
31
+ {
32
+ label: 'MCP servers',
33
+ href: `/${tenantId}/projects/${projectId}/mcp-servers`,
34
+ },
35
+ {
36
+ label: tool.name,
37
+ href: `/${tenantId}/projects/${projectId}/mcp-servers/${mcpServerId}`,
38
+ },
39
+ ]}
40
+ >
41
+ <MainContent>
42
+ <ViewMCPServerDetails tool={tool} tenantId={tenantId} projectId={projectId} />
43
+ </MainContent>
44
+ </BodyTemplate>
45
+ );
39
46
  }
40
47
 
41
48
  export default MCPPage;
@@ -1,27 +1,28 @@
1
- import { Plus } from 'lucide-react'
2
- import Link from 'next/link'
3
- import { BodyTemplate } from '@/components/layout/body-template'
4
- import EmptyState from '@/components/layout/empty-state'
5
- import { MainContent } from '@/components/layout/main-content'
6
- import { PageHeader } from '@/components/layout/page-header'
7
- import { MCPToolsList } from '@/components/mcp-servers/mcp-tools-list'
8
- import { Button } from '@/components/ui/button'
9
- import { fetchMCPTools } from '@/lib/api/tools'
10
- import type { MCPTool } from '@/lib/types/tools'
1
+ import { Plus } from 'lucide-react';
2
+ import Link from 'next/link';
3
+ import FullPageError from '@/components/errors/full-page-error';
4
+ import { BodyTemplate } from '@/components/layout/body-template';
5
+ import EmptyState from '@/components/layout/empty-state';
6
+ import { MainContent } from '@/components/layout/main-content';
7
+ import { PageHeader } from '@/components/layout/page-header';
8
+ import { MCPToolsList } from '@/components/mcp-servers/mcp-tools-list';
9
+ import { Button } from '@/components/ui/button';
10
+ import { fetchMCPTools } from '@/lib/api/tools';
11
11
 
12
- const mcpServerDescription = 'Create MCP servers that agents can use to access external services.'
12
+ const mcpServerDescription = 'Create MCP servers that agents can use to access external services.';
13
13
 
14
14
  async function MCPServersPage({
15
15
  params,
16
16
  }: {
17
- params: Promise<{ tenantId: string; projectId: string }>
17
+ params: Promise<{ tenantId: string; projectId: string }>;
18
18
  }) {
19
- const { tenantId, projectId } = await params
20
- let tools: MCPTool[] = []
19
+ const { tenantId, projectId } = await params;
20
+
21
+ let tools: Awaited<ReturnType<typeof fetchMCPTools>>;
21
22
  try {
22
- tools = await fetchMCPTools(tenantId, projectId)
23
+ tools = await fetchMCPTools(tenantId, projectId);
23
24
  } catch (error) {
24
- console.error('Failed to load MCP tools:', error)
25
+ return <FullPageError error={error as Error} context="MCP servers" />;
25
26
  }
26
27
 
27
28
  return (
@@ -56,7 +57,7 @@ async function MCPServersPage({
56
57
  )}
57
58
  </MainContent>
58
59
  </BodyTemplate>
59
- )
60
+ );
60
61
  }
61
62
 
62
- export default MCPServersPage
63
+ export default MCPServersPage;
@@ -1,3 +1,4 @@
1
+ import FullPageError from '@/components/errors/full-page-error';
1
2
  import { BodyTemplate } from '@/components/layout/body-template';
2
3
  import { MainContent } from '@/components/layout/main-content';
3
4
  import { ProjectForm } from '@/components/projects/form/project-form';
@@ -15,7 +16,20 @@ interface SettingsPageProps {
15
16
 
16
17
  export default async function SettingsPage({ params }: SettingsPageProps) {
17
18
  const { tenantId, projectId } = await params;
18
- const projectData = await fetchProject(tenantId, projectId);
19
+
20
+ let projectData: Awaited<ReturnType<typeof fetchProject>>;
21
+ try {
22
+ projectData = await fetchProject(tenantId, projectId);
23
+ } catch (error) {
24
+ return (
25
+ <FullPageError
26
+ error={error as Error}
27
+ link={`/${tenantId}/projects`}
28
+ linkText="Back to projects"
29
+ context="project"
30
+ />
31
+ );
32
+ }
19
33
  return (
20
34
  <BodyTemplate
21
35
  breadcrumbs={[
@@ -2,6 +2,19 @@
2
2
 
3
3
  import FullPageError from '@/components/errors/full-page-error';
4
4
 
5
- export default function ProjectsError() {
6
- return <FullPageError description="Something went wrong." />;
5
+ export default function ProjectsErrorBoundary({
6
+ error,
7
+ reset,
8
+ }: {
9
+ error: Error & { cause?: { code: string; status: number } & { message: string } };
10
+ reset: () => void;
11
+ }) {
12
+ return (
13
+ <FullPageError
14
+ error={error}
15
+ title="Something went wrong."
16
+ description="An unexpected error occurred. Please try again."
17
+ reset={reset}
18
+ />
19
+ );
7
20
  }
@@ -1,4 +1,5 @@
1
1
  import { Plus } from 'lucide-react';
2
+ import FullPageError from '@/components/errors/full-page-error';
2
3
  import { BodyTemplate } from '@/components/layout/body-template';
3
4
  import EmptyState from '@/components/layout/empty-state';
4
5
  import { MainContent } from '@/components/layout/main-content';
@@ -8,16 +9,15 @@ import { ProjectList } from '@/components/projects/project-list';
8
9
  import { Button } from '@/components/ui/button';
9
10
  import { emptyStateProjectDescription, projectDescription } from '@/constants/page-descriptions';
10
11
  import { fetchProjects } from '@/lib/api/projects';
11
- import type { Project } from '@/lib/types/project';
12
12
 
13
13
  async function ProjectsPage({ params }: { params: Promise<{ tenantId: string }> }) {
14
14
  const { tenantId } = await params;
15
- let projects: { data: Project[] } = { data: [] };
15
+
16
+ let projects: Awaited<ReturnType<typeof fetchProjects>>;
16
17
  try {
17
- const response = await fetchProjects(tenantId);
18
- projects = response;
19
- } catch (_error) {
20
- // throw new Error('Failed to fetch projects');
18
+ projects = await fetchProjects(tenantId);
19
+ } catch (error) {
20
+ return <FullPageError error={error as Error} context="projects" />;
21
21
  }
22
22
 
23
23
  return (
@@ -524,7 +524,7 @@ function buildConversationListPayload(
524
524
  {
525
525
  key: {
526
526
  key: SPAN_KEYS.AI_OPERATION_ID,
527
- ...QUERY_FIELD_CONFIGS.STRING_TAG_COLUMN,
527
+ ...QUERY_FIELD_CONFIGS.STRING_TAG,
528
528
  },
529
529
  op: OPERATORS.EQUALS,
530
530
  value: AI_OPERATIONS.GENERATE_TEXT,
@@ -590,7 +590,7 @@ function buildConversationListPayload(
590
590
  {
591
591
  key: {
592
592
  key: SPAN_KEYS.AI_OPERATION_ID,
593
- ...QUERY_FIELD_CONFIGS.STRING_TAG_COLUMN,
593
+ ...QUERY_FIELD_CONFIGS.STRING_TAG,
594
594
  },
595
595
  op: OPERATORS.EQUALS,
596
596
  value: AI_OPERATIONS.STREAM_TEXT,
@@ -653,7 +653,7 @@ function buildConversationListPayload(
653
653
  {
654
654
  key: {
655
655
  key: SPAN_KEYS.AI_OPERATION_ID,
656
- ...QUERY_FIELD_CONFIGS.STRING_TAG_COLUMN,
656
+ ...QUERY_FIELD_CONFIGS.STRING_TAG,
657
657
  },
658
658
  op: OPERATORS.EQUALS,
659
659
  value: AI_OPERATIONS.STREAM_OBJECT,
@@ -0,0 +1,12 @@
1
+ import FullPageError from '@/components/errors/full-page-error';
2
+
3
+ export default function NotFound() {
4
+ return (
5
+ <FullPageError
6
+ title="Page not found"
7
+ description="The page you are looking for does not exist or has been moved."
8
+ statusCode={404}
9
+ showRetry={false}
10
+ />
11
+ );
12
+ }
@@ -1,33 +1,136 @@
1
1
  'use client';
2
2
 
3
- import { ArrowLeft } from 'lucide-react';
3
+ import { AlertTriangle, ArrowLeft, RefreshCw } from 'lucide-react';
4
4
  import Link from 'next/link';
5
5
  import { BodyTemplate } from '@/components/layout/body-template';
6
6
  import { MainContent } from '@/components/layout/main-content';
7
+ import { Button } from '@/components/ui/button';
8
+
9
+ function hasStatusCode(obj: unknown): obj is { status: number } {
10
+ return (
11
+ typeof obj === 'object' &&
12
+ obj !== null &&
13
+ 'status' in obj &&
14
+ typeof (obj as { status: unknown }).status === 'number'
15
+ );
16
+ }
7
17
 
8
18
  interface FullPageErrorProps {
19
+ error?: Error & { digest?: string };
20
+ reset?: () => void;
9
21
  title?: string;
10
22
  description?: string;
11
23
  link?: string;
12
24
  linkText?: string;
25
+ statusCode?: number;
26
+ showRetry?: boolean;
27
+ onRetry?: () => void;
28
+ context?: string;
13
29
  }
14
30
 
15
- export default function FullPageError({ title, description, link, linkText }: FullPageErrorProps) {
31
+ export default function FullPageError({
32
+ error,
33
+ reset,
34
+ title: propTitle,
35
+ description: propDescription,
36
+ link,
37
+ linkText,
38
+ statusCode: propStatusCode,
39
+ showRetry = true,
40
+ onRetry,
41
+ context = 'resource',
42
+ }: FullPageErrorProps) {
43
+ let statusCode = propStatusCode;
44
+
45
+ if (!statusCode && error) {
46
+ if (hasStatusCode(error.cause)) {
47
+ statusCode = error.cause.status;
48
+ } else {
49
+ const match = error.message.match(/^\[(\d{3})\]/);
50
+ if (match) {
51
+ statusCode = Number.parseInt(match[1], 10);
52
+ } else if (hasStatusCode(error)) {
53
+ statusCode = error.status;
54
+ }
55
+ }
56
+ }
57
+
58
+ let title = propTitle;
59
+ let description = propDescription;
60
+
61
+ if (error && !title) {
62
+ title = `Failed to load ${context}`;
63
+ let errorMessage =
64
+ error.message || `An unexpected error occurred while loading this ${context}.`;
65
+ errorMessage = errorMessage.replace(/^\[\d{3}\]\s*/, '');
66
+ description = errorMessage;
67
+
68
+ if (statusCode === 404) {
69
+ title = `${context.charAt(0).toUpperCase() + context.slice(1)} not found`;
70
+ description = `The ${context} you are looking for does not exist or has been deleted.`;
71
+ } else if (statusCode === 403) {
72
+ title = 'Access denied';
73
+ description = `You do not have permission to access this ${context}.`;
74
+ } else if (statusCode === 401) {
75
+ title = 'Authentication required';
76
+ description = 'Please sign in to access this resource.';
77
+ } else if (statusCode === 500) {
78
+ title = 'Server error';
79
+ description = 'An error occurred on the server. Please try again later.';
80
+ } else if (statusCode === 503) {
81
+ title = 'Service unavailable';
82
+ description = 'The service is temporarily unavailable. Please try again in a few moments.';
83
+ } else if (typeof navigator !== 'undefined' && !navigator.onLine) {
84
+ title = 'Connection error';
85
+ description = 'Unable to connect to the server. Please check your internet connection.';
86
+ }
87
+ }
88
+
89
+ if (!title) {
90
+ title = 'Something went wrong';
91
+ }
92
+ if (!description) {
93
+ description = 'An unexpected error occurred. Please try again.';
94
+ }
95
+
96
+ const handleRetry = () => {
97
+ if (reset) {
98
+ reset();
99
+ } else if (onRetry) {
100
+ onRetry();
101
+ } else {
102
+ window.location.reload();
103
+ }
104
+ };
105
+
16
106
  return (
17
- <BodyTemplate breadcrumbs={[{ label: title ?? 'Error' }]}>
107
+ <BodyTemplate breadcrumbs={[{ label: statusCode ? `${statusCode} Error` : 'Error' }]}>
18
108
  <MainContent className="flex-1">
19
- <div className="flex flex-col items-center justify-center h-full gap-4">
20
- {title && <p className="text-lg text-foreground font-semibold">{title}</p>}
21
- <div className="text-muted-foreground gap-2 flex flex-col items-center justify-center">
22
- {description && <p>{description}</p>}
109
+ <div className="flex flex-col items-center justify-center h-full gap-10 px-4">
110
+ {statusCode ? (
111
+ <div className="text-8xl font-mono font-bold text-foreground">{statusCode}</div>
112
+ ) : (
113
+ <AlertTriangle className="w-14 h-14 text-foreground" strokeWidth={1} />
114
+ )}
115
+ <div className="flex flex-col items-center gap-2 text-center max-w-md">
116
+ <h1 className="text-lg text-muted-foreground font-mono uppercase">{title}</h1>
117
+ <p className="text-muted-foreground text-sm">{description}</p>
118
+ </div>
119
+
120
+ <div className="flex items-center gap-3">
121
+ {showRetry && (
122
+ <Button onClick={handleRetry} variant="outline">
123
+ <RefreshCw className="w-4 h-4" />
124
+ Try Again
125
+ </Button>
126
+ )}
23
127
  {link && linkText && (
24
- <Link
25
- href={link}
26
- className="flex items-center gap-2 underline text-muted-foreground hover:text-foreground transition-colors"
27
- >
28
- <ArrowLeft className="w-4 h-4 text-muted-foreground hover:text-foreground transition-colors" />
29
- {linkText}
30
- </Link>
128
+ <Button asChild variant="outline">
129
+ <Link href={link} className="flex items-center gap-2">
130
+ <ArrowLeft className="w-4 h-4" />
131
+ {linkText}
132
+ </Link>
133
+ </Button>
31
134
  )}
32
135
  </div>
33
136
  </div>
@@ -5,14 +5,14 @@
5
5
  * inkeep-chat backend AgentFull REST API endpoints.
6
6
  */
7
7
 
8
- import { ApiError } from '../types/errors';
9
8
  import type {
9
+ Agent,
10
10
  CreateAgentResponse,
11
11
  FullAgentDefinition,
12
12
  GetAgentResponse,
13
- Agent,
14
13
  UpdateAgentResponse,
15
14
  } from '../types/agent-full';
15
+ import { ApiError } from '../types/errors';
16
16
  import type { ListResponse } from '../types/response';
17
17
  import { makeManagementApiRequest } from './api-config';
18
18
  import { validateProjectId, validateTenantId } from './resource-validation';