@infinitedusky/indusk-mcp 1.28.10 → 1.28.12
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/admin/.next/BUILD_ID +1 -1
- package/admin/.next/build-manifest.json +3 -3
- package/admin/.next/fallback-build-manifest.json +3 -3
- package/admin/.next/server/app/_global-error.html +1 -1
- package/admin/.next/server/app/_global-error.rsc +1 -1
- package/admin/.next/server/app/_global-error.segments/__PAGE__.segment.rsc +1 -1
- package/admin/.next/server/app/_global-error.segments/_full.segment.rsc +1 -1
- package/admin/.next/server/app/_global-error.segments/_head.segment.rsc +1 -1
- package/admin/.next/server/app/_global-error.segments/_index.segment.rsc +1 -1
- package/admin/.next/server/app/_global-error.segments/_tree.segment.rsc +1 -1
- package/admin/.next/server/middleware-build-manifest.js +3 -3
- package/admin/.next/server/pages/500.html +1 -1
- package/admin/.next/trace +1 -1
- package/admin/.next/trace-build +1 -1
- package/dist/bin/commands/init.js +1 -0
- package/dist/lib/config.d.ts +42 -0
- package/dist/lib/config.js +21 -0
- package/dist/lib/eval/evaluator-runner.js +3 -3
- package/dist/lib/eval/persistent-evaluator.js +3 -3
- package/dist/tools/system-tools.js +29 -0
- package/extensions/datadog/.env.example +48 -0
- package/extensions/datadog/manifest.json +30 -0
- package/extensions/datadog/skill.md +66 -0
- package/lessons/community/community-graphiti-group-id-underscores.md +31 -0
- package/package.json +1 -1
- package/skills/catchup.md +12 -2
- package/templates/FullscreenDiagram.vue +29 -5
- /package/admin/.next/static/{_oX-T7qB0nAK3y2koB5cK → 2tWMjd58X-Zsw6LJ1qDp1}/_buildManifest.js +0 -0
- /package/admin/.next/static/{_oX-T7qB0nAK3y2koB5cK → 2tWMjd58X-Zsw6LJ1qDp1}/_clientMiddlewareManifest.js +0 -0
- /package/admin/.next/static/{_oX-T7qB0nAK3y2koB5cK → 2tWMjd58X-Zsw6LJ1qDp1}/_ssgManifest.js +0 -0
package/admin/.next/BUILD_ID
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
|
|
1
|
+
2tWMjd58X-Zsw6LJ1qDp1
|
|
@@ -7,9 +7,9 @@
|
|
|
7
7
|
"static/chunks/03~yq9q893hmn.js"
|
|
8
8
|
],
|
|
9
9
|
"lowPriorityFiles": [
|
|
10
|
-
"static/
|
|
11
|
-
"static/
|
|
12
|
-
"static/
|
|
10
|
+
"static/2tWMjd58X-Zsw6LJ1qDp1/_buildManifest.js",
|
|
11
|
+
"static/2tWMjd58X-Zsw6LJ1qDp1/_ssgManifest.js",
|
|
12
|
+
"static/2tWMjd58X-Zsw6LJ1qDp1/_clientMiddlewareManifest.js"
|
|
13
13
|
],
|
|
14
14
|
"rootMainFiles": [
|
|
15
15
|
"static/chunks/0_yzfo7pu205m.js",
|
|
@@ -5,9 +5,9 @@
|
|
|
5
5
|
"devFiles": [],
|
|
6
6
|
"polyfillFiles": [],
|
|
7
7
|
"lowPriorityFiles": [
|
|
8
|
-
"static/
|
|
9
|
-
"static/
|
|
10
|
-
"static/
|
|
8
|
+
"static/2tWMjd58X-Zsw6LJ1qDp1/_buildManifest.js",
|
|
9
|
+
"static/2tWMjd58X-Zsw6LJ1qDp1/_ssgManifest.js",
|
|
10
|
+
"static/2tWMjd58X-Zsw6LJ1qDp1/_clientMiddlewareManifest.js"
|
|
11
11
|
],
|
|
12
12
|
"rootMainFiles": []
|
|
13
13
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
<!DOCTYPE html><html id="__next_error__"><head><meta charSet="utf-8"/><meta name="viewport" content="width=device-width, initial-scale=1"/><link rel="preload" as="script" fetchPriority="low" href="/_next/static/chunks/0_yzfo7pu205m.js"/><script src="/_next/static/chunks/0_r.3~d-5z8~_.js" async=""></script><script src="/_next/static/chunks/0u1lny1.4-f8c.js" async=""></script><script src="/_next/static/chunks/036h9~rhidv.e.js" async=""></script><script src="/_next/static/chunks/turbopack-129yl57l2cd7_.js" async=""></script><script src="/_next/static/chunks/0.v8w524wvk94.js" async=""></script><script src="/_next/static/chunks/0z9652tpun_.d.js" async=""></script><meta name="next-size-adjust" content=""/><title>500: This page couldn’t load</title><link rel="icon" href="/favicon.ico?favicon.0x3dzn~oxb6tn.ico" sizes="256x256" type="image/x-icon"/><style>:root {--next-error-bg: #fff;--next-error-text: #171717;--next-error-title: #171717;--next-error-message: #171717;--next-error-digest: #666666;--next-error-btn-text: #fff;--next-error-btn-bg: #171717;--next-error-btn-border: none;--next-error-btn-secondary-text: #171717;--next-error-btn-secondary-bg: transparent;--next-error-btn-secondary-border: 1px solid rgba(0,0,0,0.08);}@media (prefers-color-scheme: dark) {:root {--next-error-bg: #0a0a0a;--next-error-text: #ededed;--next-error-title: #ededed;--next-error-message: #ededed;--next-error-digest: #a0a0a0;--next-error-btn-text: #0a0a0a;--next-error-btn-bg: #ededed;--next-error-btn-border: none;--next-error-btn-secondary-text: #ededed;--next-error-btn-secondary-bg: transparent;--next-error-btn-secondary-border: 1px solid rgba(255,255,255,0.14);}}body { margin: 0; color: var(--next-error-text); background: var(--next-error-bg); }</style><script src="/_next/static/chunks/03~yq9q893hmn.js" noModule=""></script></head><body><div hidden=""><!--$--><!--/$--></div><div style="font-family:system-ui,"Segoe UI",Roboto,Helvetica,Arial,sans-serif,"Apple Color Emoji","Segoe UI Emoji";height:100vh;display:flex;align-items:center;justify-content:center"><div style="margin-top:-32px;max-width:325px;padding:32px 28px;text-align:left"><svg width="32" height="32" viewBox="-0.2 -1.5 32 32" fill="none" style="margin-bottom:24px"><path d="M16.9328 0C18.0839 0.000116771 19.1334 0.658832 19.634 1.69531L31.4299 26.1309C32.0708 27.4588 31.1036 28.9999 29.6291 29H2.00215C0.527541 29 -0.439628 27.4588 0.201371 26.1309L11.9973 1.69531C12.4979 0.658823 13.5474 7.75066e-05 14.6984 0H16.9328ZM3.59493 26H28.0363L16.9328 3H14.6984L3.59493 26ZM15.8156 19C16.9202 19.0001 17.8156 19.8955 17.8156 21C17.8156 22.1045 16.9202 22.9999 15.8156 23C14.7111 23 13.8156 22.1046 13.8156 21C13.8156 19.8954 14.7111 19 15.8156 19ZM17.3156 16.5H14.3156V8.5H17.3156V16.5Z" fill="var(--next-error-title)"></path></svg><h1 style="font-size:24px;font-weight:500;letter-spacing:-0.02em;line-height:32px;margin:0 0 12px 0;color:var(--next-error-title)">This page couldn’t load</h1><p style="font-size:14px;font-weight:400;line-height:21px;margin:0 0 20px 0;color:var(--next-error-message)">A server error occurred. Reload to try again.</p><form style="margin:0"><button type="submit" style="display:inline-flex;align-items:center;justify-content:center;height:32px;padding:0 12px;font-size:14px;font-weight:500;line-height:20px;border-radius:6px;cursor:pointer;color:var(--next-error-btn-text);background:var(--next-error-btn-bg);border:var(--next-error-btn-border)">Reload</button></form></div></div><!--$--><!--/$--><script src="/_next/static/chunks/0_yzfo7pu205m.js" id="_R_" async=""></script><script>(self.__next_f=self.__next_f||[]).push([0])</script><script>self.__next_f.push([1,"1:\"$Sreact.fragment\"\n2:I[85530,[\"/_next/static/chunks/0.v8w524wvk94.js\",\"/_next/static/chunks/0z9652tpun_.d.js\"],\"default\"]\n3:I[50571,[\"/_next/static/chunks/0.v8w524wvk94.js\",\"/_next/static/chunks/0z9652tpun_.d.js\"],\"default\"]\n4:I[76614,[\"/_next/static/chunks/0.v8w524wvk94.js\",\"/_next/static/chunks/0z9652tpun_.d.js\"],\"OutletBoundary\"]\n5:\"$Sreact.suspense\"\n8:I[76614,[\"/_next/static/chunks/0.v8w524wvk94.js\",\"/_next/static/chunks/0z9652tpun_.d.js\"],\"ViewportBoundary\"]\na:I[76614,[\"/_next/static/chunks/0.v8w524wvk94.js\",\"/_next/static/chunks/0z9652tpun_.d.js\"],\"MetadataBoundary\"]\nc:I[59179,[\"/_next/static/chunks/0.v8w524wvk94.js\",\"/_next/static/chunks/0z9652tpun_.d.js\"],\"default\",1]\n"])</script><script>self.__next_f.push([1,"0:{\"P\":null,\"c\":[\"\",\"_global-error\"],\"q\":\"\",\"i\":false,\"f\":[[[\"\",{\"children\":[\"__PAGE__\",{}]}],[[\"$\",\"$1\",\"c\",{\"children\":[null,[\"$\",\"$L2\",null,{\"parallelRouterKey\":\"children\",\"error\":\"$undefined\",\"errorStyles\":\"$undefined\",\"errorScripts\":\"$undefined\",\"template\":[\"$\",\"$L3\",null,{}],\"templateStyles\":\"$undefined\",\"templateScripts\":\"$undefined\",\"notFound\":\"$undefined\",\"forbidden\":\"$undefined\",\"unauthorized\":\"$undefined\"}]]}],{\"children\":[[\"$\",\"$1\",\"c\",{\"children\":[[\"$\",\"html\",null,{\"id\":\"__next_error__\",\"children\":[[\"$\",\"head\",null,{\"children\":[[\"$\",\"title\",null,{\"children\":\"500: This page couldn’t load\"}],[\"$\",\"style\",null,{\"dangerouslySetInnerHTML\":{\"__html\":\":root {--next-error-bg: #fff;--next-error-text: #171717;--next-error-title: #171717;--next-error-message: #171717;--next-error-digest: #666666;--next-error-btn-text: #fff;--next-error-btn-bg: #171717;--next-error-btn-border: none;--next-error-btn-secondary-text: #171717;--next-error-btn-secondary-bg: transparent;--next-error-btn-secondary-border: 1px solid rgba(0,0,0,0.08);}@media (prefers-color-scheme: dark) {:root {--next-error-bg: #0a0a0a;--next-error-text: #ededed;--next-error-title: #ededed;--next-error-message: #ededed;--next-error-digest: #a0a0a0;--next-error-btn-text: #0a0a0a;--next-error-btn-bg: #ededed;--next-error-btn-border: none;--next-error-btn-secondary-text: #ededed;--next-error-btn-secondary-bg: transparent;--next-error-btn-secondary-border: 1px solid rgba(255,255,255,0.14);}}body { margin: 0; color: var(--next-error-text); background: var(--next-error-bg); }\"}}]]}],[\"$\",\"body\",null,{\"children\":[\"$\",\"div\",null,{\"style\":{\"fontFamily\":\"system-ui,\\\"Segoe UI\\\",Roboto,Helvetica,Arial,sans-serif,\\\"Apple Color Emoji\\\",\\\"Segoe UI Emoji\\\"\",\"height\":\"100vh\",\"display\":\"flex\",\"alignItems\":\"center\",\"justifyContent\":\"center\"},\"children\":[\"$\",\"div\",null,{\"style\":{\"marginTop\":\"-32px\",\"maxWidth\":\"325px\",\"padding\":\"32px 28px\",\"textAlign\":\"left\"},\"children\":[[\"$\",\"svg\",null,{\"width\":\"32\",\"height\":\"32\",\"viewBox\":\"-0.2 -1.5 32 32\",\"fill\":\"none\",\"style\":{\"marginBottom\":\"24px\"},\"children\":[\"$\",\"path\",null,{\"d\":\"M16.9328 0C18.0839 0.000116771 19.1334 0.658832 19.634 1.69531L31.4299 26.1309C32.0708 27.4588 31.1036 28.9999 29.6291 29H2.00215C0.527541 29 -0.439628 27.4588 0.201371 26.1309L11.9973 1.69531C12.4979 0.658823 13.5474 7.75066e-05 14.6984 0H16.9328ZM3.59493 26H28.0363L16.9328 3H14.6984L3.59493 26ZM15.8156 19C16.9202 19.0001 17.8156 19.8955 17.8156 21C17.8156 22.1045 16.9202 22.9999 15.8156 23C14.7111 23 13.8156 22.1046 13.8156 21C13.8156 19.8954 14.7111 19 15.8156 19ZM17.3156 16.5H14.3156V8.5H17.3156V16.5Z\",\"fill\":\"var(--next-error-title)\"}]}],[\"$\",\"h1\",null,{\"style\":{\"fontSize\":\"24px\",\"fontWeight\":500,\"letterSpacing\":\"-0.02em\",\"lineHeight\":\"32px\",\"margin\":\"0 0 12px 0\",\"color\":\"var(--next-error-title)\"},\"children\":\"This page couldn’t load\"}],[\"$\",\"p\",null,{\"style\":{\"fontSize\":\"14px\",\"fontWeight\":400,\"lineHeight\":\"21px\",\"margin\":\"0 0 20px 0\",\"color\":\"var(--next-error-message)\"},\"children\":\"A server error occurred. Reload to try again.\"}],[\"$\",\"form\",null,{\"style\":{\"margin\":0},\"children\":[\"$\",\"button\",null,{\"type\":\"submit\",\"style\":{\"display\":\"inline-flex\",\"alignItems\":\"center\",\"justifyContent\":\"center\",\"height\":\"32px\",\"padding\":\"0 12px\",\"fontSize\":\"14px\",\"fontWeight\":500,\"lineHeight\":\"20px\",\"borderRadius\":\"6px\",\"cursor\":\"pointer\",\"color\":\"var(--next-error-btn-text)\",\"background\":\"var(--next-error-btn-bg)\",\"border\":\"var(--next-error-btn-border)\"},\"children\":\"Reload\"}]}]]}]}]}]]}],null,[\"$\",\"$L4\",null,{\"children\":[\"$\",\"$5\",null,{\"name\":\"Next.MetadataOutlet\",\"children\":\"$@6\"}]}]]}],{},null,false,null]},null,false,\"$@7\"],[\"$\",\"$1\",\"h\",{\"children\":[null,[\"$\",\"$L8\",null,{\"children\":\"$L9\"}],[\"$\",\"div\",null,{\"hidden\":true,\"children\":[\"$\",\"$La\",null,{\"children\":[\"$\",\"$5\",null,{\"name\":\"Next.Metadata\",\"children\":\"$Lb\"}]}]}],[\"$\",\"meta\",null,{\"name\":\"next-size-adjust\",\"content\":\"\"}]]}],false]],\"m\":\"$undefined\",\"G\":[\"$c\",[]],\"S\":true,\"h\":null,\"s\":\"$undefined\",\"l\":\"$undefined\",\"p\":\"$undefined\",\"d\":\"$undefined\",\"b\":\"
|
|
1
|
+
<!DOCTYPE html><html id="__next_error__"><head><meta charSet="utf-8"/><meta name="viewport" content="width=device-width, initial-scale=1"/><link rel="preload" as="script" fetchPriority="low" href="/_next/static/chunks/0_yzfo7pu205m.js"/><script src="/_next/static/chunks/0_r.3~d-5z8~_.js" async=""></script><script src="/_next/static/chunks/0u1lny1.4-f8c.js" async=""></script><script src="/_next/static/chunks/036h9~rhidv.e.js" async=""></script><script src="/_next/static/chunks/turbopack-129yl57l2cd7_.js" async=""></script><script src="/_next/static/chunks/0.v8w524wvk94.js" async=""></script><script src="/_next/static/chunks/0z9652tpun_.d.js" async=""></script><meta name="next-size-adjust" content=""/><title>500: This page couldn’t load</title><link rel="icon" href="/favicon.ico?favicon.0x3dzn~oxb6tn.ico" sizes="256x256" type="image/x-icon"/><style>:root {--next-error-bg: #fff;--next-error-text: #171717;--next-error-title: #171717;--next-error-message: #171717;--next-error-digest: #666666;--next-error-btn-text: #fff;--next-error-btn-bg: #171717;--next-error-btn-border: none;--next-error-btn-secondary-text: #171717;--next-error-btn-secondary-bg: transparent;--next-error-btn-secondary-border: 1px solid rgba(0,0,0,0.08);}@media (prefers-color-scheme: dark) {:root {--next-error-bg: #0a0a0a;--next-error-text: #ededed;--next-error-title: #ededed;--next-error-message: #ededed;--next-error-digest: #a0a0a0;--next-error-btn-text: #0a0a0a;--next-error-btn-bg: #ededed;--next-error-btn-border: none;--next-error-btn-secondary-text: #ededed;--next-error-btn-secondary-bg: transparent;--next-error-btn-secondary-border: 1px solid rgba(255,255,255,0.14);}}body { margin: 0; color: var(--next-error-text); background: var(--next-error-bg); }</style><script src="/_next/static/chunks/03~yq9q893hmn.js" noModule=""></script></head><body><div hidden=""><!--$--><!--/$--></div><div style="font-family:system-ui,"Segoe UI",Roboto,Helvetica,Arial,sans-serif,"Apple Color Emoji","Segoe UI Emoji";height:100vh;display:flex;align-items:center;justify-content:center"><div style="margin-top:-32px;max-width:325px;padding:32px 28px;text-align:left"><svg width="32" height="32" viewBox="-0.2 -1.5 32 32" fill="none" style="margin-bottom:24px"><path d="M16.9328 0C18.0839 0.000116771 19.1334 0.658832 19.634 1.69531L31.4299 26.1309C32.0708 27.4588 31.1036 28.9999 29.6291 29H2.00215C0.527541 29 -0.439628 27.4588 0.201371 26.1309L11.9973 1.69531C12.4979 0.658823 13.5474 7.75066e-05 14.6984 0H16.9328ZM3.59493 26H28.0363L16.9328 3H14.6984L3.59493 26ZM15.8156 19C16.9202 19.0001 17.8156 19.8955 17.8156 21C17.8156 22.1045 16.9202 22.9999 15.8156 23C14.7111 23 13.8156 22.1046 13.8156 21C13.8156 19.8954 14.7111 19 15.8156 19ZM17.3156 16.5H14.3156V8.5H17.3156V16.5Z" fill="var(--next-error-title)"></path></svg><h1 style="font-size:24px;font-weight:500;letter-spacing:-0.02em;line-height:32px;margin:0 0 12px 0;color:var(--next-error-title)">This page couldn’t load</h1><p style="font-size:14px;font-weight:400;line-height:21px;margin:0 0 20px 0;color:var(--next-error-message)">A server error occurred. Reload to try again.</p><form style="margin:0"><button type="submit" style="display:inline-flex;align-items:center;justify-content:center;height:32px;padding:0 12px;font-size:14px;font-weight:500;line-height:20px;border-radius:6px;cursor:pointer;color:var(--next-error-btn-text);background:var(--next-error-btn-bg);border:var(--next-error-btn-border)">Reload</button></form></div></div><!--$--><!--/$--><script src="/_next/static/chunks/0_yzfo7pu205m.js" id="_R_" async=""></script><script>(self.__next_f=self.__next_f||[]).push([0])</script><script>self.__next_f.push([1,"1:\"$Sreact.fragment\"\n2:I[85530,[\"/_next/static/chunks/0.v8w524wvk94.js\",\"/_next/static/chunks/0z9652tpun_.d.js\"],\"default\"]\n3:I[50571,[\"/_next/static/chunks/0.v8w524wvk94.js\",\"/_next/static/chunks/0z9652tpun_.d.js\"],\"default\"]\n4:I[76614,[\"/_next/static/chunks/0.v8w524wvk94.js\",\"/_next/static/chunks/0z9652tpun_.d.js\"],\"OutletBoundary\"]\n5:\"$Sreact.suspense\"\n8:I[76614,[\"/_next/static/chunks/0.v8w524wvk94.js\",\"/_next/static/chunks/0z9652tpun_.d.js\"],\"ViewportBoundary\"]\na:I[76614,[\"/_next/static/chunks/0.v8w524wvk94.js\",\"/_next/static/chunks/0z9652tpun_.d.js\"],\"MetadataBoundary\"]\nc:I[59179,[\"/_next/static/chunks/0.v8w524wvk94.js\",\"/_next/static/chunks/0z9652tpun_.d.js\"],\"default\",1]\n"])</script><script>self.__next_f.push([1,"0:{\"P\":null,\"c\":[\"\",\"_global-error\"],\"q\":\"\",\"i\":false,\"f\":[[[\"\",{\"children\":[\"__PAGE__\",{}]}],[[\"$\",\"$1\",\"c\",{\"children\":[null,[\"$\",\"$L2\",null,{\"parallelRouterKey\":\"children\",\"error\":\"$undefined\",\"errorStyles\":\"$undefined\",\"errorScripts\":\"$undefined\",\"template\":[\"$\",\"$L3\",null,{}],\"templateStyles\":\"$undefined\",\"templateScripts\":\"$undefined\",\"notFound\":\"$undefined\",\"forbidden\":\"$undefined\",\"unauthorized\":\"$undefined\"}]]}],{\"children\":[[\"$\",\"$1\",\"c\",{\"children\":[[\"$\",\"html\",null,{\"id\":\"__next_error__\",\"children\":[[\"$\",\"head\",null,{\"children\":[[\"$\",\"title\",null,{\"children\":\"500: This page couldn’t load\"}],[\"$\",\"style\",null,{\"dangerouslySetInnerHTML\":{\"__html\":\":root {--next-error-bg: #fff;--next-error-text: #171717;--next-error-title: #171717;--next-error-message: #171717;--next-error-digest: #666666;--next-error-btn-text: #fff;--next-error-btn-bg: #171717;--next-error-btn-border: none;--next-error-btn-secondary-text: #171717;--next-error-btn-secondary-bg: transparent;--next-error-btn-secondary-border: 1px solid rgba(0,0,0,0.08);}@media (prefers-color-scheme: dark) {:root {--next-error-bg: #0a0a0a;--next-error-text: #ededed;--next-error-title: #ededed;--next-error-message: #ededed;--next-error-digest: #a0a0a0;--next-error-btn-text: #0a0a0a;--next-error-btn-bg: #ededed;--next-error-btn-border: none;--next-error-btn-secondary-text: #ededed;--next-error-btn-secondary-bg: transparent;--next-error-btn-secondary-border: 1px solid rgba(255,255,255,0.14);}}body { margin: 0; color: var(--next-error-text); background: var(--next-error-bg); }\"}}]]}],[\"$\",\"body\",null,{\"children\":[\"$\",\"div\",null,{\"style\":{\"fontFamily\":\"system-ui,\\\"Segoe UI\\\",Roboto,Helvetica,Arial,sans-serif,\\\"Apple Color Emoji\\\",\\\"Segoe UI Emoji\\\"\",\"height\":\"100vh\",\"display\":\"flex\",\"alignItems\":\"center\",\"justifyContent\":\"center\"},\"children\":[\"$\",\"div\",null,{\"style\":{\"marginTop\":\"-32px\",\"maxWidth\":\"325px\",\"padding\":\"32px 28px\",\"textAlign\":\"left\"},\"children\":[[\"$\",\"svg\",null,{\"width\":\"32\",\"height\":\"32\",\"viewBox\":\"-0.2 -1.5 32 32\",\"fill\":\"none\",\"style\":{\"marginBottom\":\"24px\"},\"children\":[\"$\",\"path\",null,{\"d\":\"M16.9328 0C18.0839 0.000116771 19.1334 0.658832 19.634 1.69531L31.4299 26.1309C32.0708 27.4588 31.1036 28.9999 29.6291 29H2.00215C0.527541 29 -0.439628 27.4588 0.201371 26.1309L11.9973 1.69531C12.4979 0.658823 13.5474 7.75066e-05 14.6984 0H16.9328ZM3.59493 26H28.0363L16.9328 3H14.6984L3.59493 26ZM15.8156 19C16.9202 19.0001 17.8156 19.8955 17.8156 21C17.8156 22.1045 16.9202 22.9999 15.8156 23C14.7111 23 13.8156 22.1046 13.8156 21C13.8156 19.8954 14.7111 19 15.8156 19ZM17.3156 16.5H14.3156V8.5H17.3156V16.5Z\",\"fill\":\"var(--next-error-title)\"}]}],[\"$\",\"h1\",null,{\"style\":{\"fontSize\":\"24px\",\"fontWeight\":500,\"letterSpacing\":\"-0.02em\",\"lineHeight\":\"32px\",\"margin\":\"0 0 12px 0\",\"color\":\"var(--next-error-title)\"},\"children\":\"This page couldn’t load\"}],[\"$\",\"p\",null,{\"style\":{\"fontSize\":\"14px\",\"fontWeight\":400,\"lineHeight\":\"21px\",\"margin\":\"0 0 20px 0\",\"color\":\"var(--next-error-message)\"},\"children\":\"A server error occurred. Reload to try again.\"}],[\"$\",\"form\",null,{\"style\":{\"margin\":0},\"children\":[\"$\",\"button\",null,{\"type\":\"submit\",\"style\":{\"display\":\"inline-flex\",\"alignItems\":\"center\",\"justifyContent\":\"center\",\"height\":\"32px\",\"padding\":\"0 12px\",\"fontSize\":\"14px\",\"fontWeight\":500,\"lineHeight\":\"20px\",\"borderRadius\":\"6px\",\"cursor\":\"pointer\",\"color\":\"var(--next-error-btn-text)\",\"background\":\"var(--next-error-btn-bg)\",\"border\":\"var(--next-error-btn-border)\"},\"children\":\"Reload\"}]}]]}]}]}]]}],null,[\"$\",\"$L4\",null,{\"children\":[\"$\",\"$5\",null,{\"name\":\"Next.MetadataOutlet\",\"children\":\"$@6\"}]}]]}],{},null,false,null]},null,false,\"$@7\"],[\"$\",\"$1\",\"h\",{\"children\":[null,[\"$\",\"$L8\",null,{\"children\":\"$L9\"}],[\"$\",\"div\",null,{\"hidden\":true,\"children\":[\"$\",\"$La\",null,{\"children\":[\"$\",\"$5\",null,{\"name\":\"Next.Metadata\",\"children\":\"$Lb\"}]}]}],[\"$\",\"meta\",null,{\"name\":\"next-size-adjust\",\"content\":\"\"}]]}],false]],\"m\":\"$undefined\",\"G\":[\"$c\",[]],\"S\":true,\"h\":null,\"s\":\"$undefined\",\"l\":\"$undefined\",\"p\":\"$undefined\",\"d\":\"$undefined\",\"b\":\"2tWMjd58X-Zsw6LJ1qDp1\"}\n"])</script><script>self.__next_f.push([1,"d:[]\n7:\"$Wd\"\n"])</script><script>self.__next_f.push([1,"9:[[\"$\",\"meta\",\"0\",{\"charSet\":\"utf-8\"}],[\"$\",\"meta\",\"1\",{\"name\":\"viewport\",\"content\":\"width=device-width, initial-scale=1\"}]]\n"])</script><script>self.__next_f.push([1,"e:I[61299,[\"/_next/static/chunks/0.v8w524wvk94.js\",\"/_next/static/chunks/0z9652tpun_.d.js\"],\"IconMark\"]\n6:null\nb:[[\"$\",\"link\",\"0\",{\"rel\":\"icon\",\"href\":\"/favicon.ico?favicon.0x3dzn~oxb6tn.ico\",\"sizes\":\"256x256\",\"type\":\"image/x-icon\"}],[\"$\",\"$Le\",\"1\",{}]]\n"])</script></body></html>
|
|
@@ -6,7 +6,7 @@
|
|
|
6
6
|
8:I[76614,["/_next/static/chunks/0.v8w524wvk94.js","/_next/static/chunks/0z9652tpun_.d.js"],"ViewportBoundary"]
|
|
7
7
|
a:I[76614,["/_next/static/chunks/0.v8w524wvk94.js","/_next/static/chunks/0z9652tpun_.d.js"],"MetadataBoundary"]
|
|
8
8
|
c:I[59179,["/_next/static/chunks/0.v8w524wvk94.js","/_next/static/chunks/0z9652tpun_.d.js"],"default",1]
|
|
9
|
-
0:{"P":null,"c":["","_global-error"],"q":"","i":false,"f":[[["",{"children":["__PAGE__",{}]}],[["$","$1","c",{"children":[null,["$","$L2",null,{"parallelRouterKey":"children","error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$L3",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":"$undefined","forbidden":"$undefined","unauthorized":"$undefined"}]]}],{"children":[["$","$1","c",{"children":[["$","html",null,{"id":"__next_error__","children":[["$","head",null,{"children":[["$","title",null,{"children":"500: This page couldn’t load"}],["$","style",null,{"dangerouslySetInnerHTML":{"__html":":root {--next-error-bg: #fff;--next-error-text: #171717;--next-error-title: #171717;--next-error-message: #171717;--next-error-digest: #666666;--next-error-btn-text: #fff;--next-error-btn-bg: #171717;--next-error-btn-border: none;--next-error-btn-secondary-text: #171717;--next-error-btn-secondary-bg: transparent;--next-error-btn-secondary-border: 1px solid rgba(0,0,0,0.08);}@media (prefers-color-scheme: dark) {:root {--next-error-bg: #0a0a0a;--next-error-text: #ededed;--next-error-title: #ededed;--next-error-message: #ededed;--next-error-digest: #a0a0a0;--next-error-btn-text: #0a0a0a;--next-error-btn-bg: #ededed;--next-error-btn-border: none;--next-error-btn-secondary-text: #ededed;--next-error-btn-secondary-bg: transparent;--next-error-btn-secondary-border: 1px solid rgba(255,255,255,0.14);}}body { margin: 0; color: var(--next-error-text); background: var(--next-error-bg); }"}}]]}],["$","body",null,{"children":["$","div",null,{"style":{"fontFamily":"system-ui,\"Segoe UI\",Roboto,Helvetica,Arial,sans-serif,\"Apple Color Emoji\",\"Segoe UI Emoji\"","height":"100vh","display":"flex","alignItems":"center","justifyContent":"center"},"children":["$","div",null,{"style":{"marginTop":"-32px","maxWidth":"325px","padding":"32px 28px","textAlign":"left"},"children":[["$","svg",null,{"width":"32","height":"32","viewBox":"-0.2 -1.5 32 32","fill":"none","style":{"marginBottom":"24px"},"children":["$","path",null,{"d":"M16.9328 0C18.0839 0.000116771 19.1334 0.658832 19.634 1.69531L31.4299 26.1309C32.0708 27.4588 31.1036 28.9999 29.6291 29H2.00215C0.527541 29 -0.439628 27.4588 0.201371 26.1309L11.9973 1.69531C12.4979 0.658823 13.5474 7.75066e-05 14.6984 0H16.9328ZM3.59493 26H28.0363L16.9328 3H14.6984L3.59493 26ZM15.8156 19C16.9202 19.0001 17.8156 19.8955 17.8156 21C17.8156 22.1045 16.9202 22.9999 15.8156 23C14.7111 23 13.8156 22.1046 13.8156 21C13.8156 19.8954 14.7111 19 15.8156 19ZM17.3156 16.5H14.3156V8.5H17.3156V16.5Z","fill":"var(--next-error-title)"}]}],["$","h1",null,{"style":{"fontSize":"24px","fontWeight":500,"letterSpacing":"-0.02em","lineHeight":"32px","margin":"0 0 12px 0","color":"var(--next-error-title)"},"children":"This page couldn’t load"}],["$","p",null,{"style":{"fontSize":"14px","fontWeight":400,"lineHeight":"21px","margin":"0 0 20px 0","color":"var(--next-error-message)"},"children":"A server error occurred. Reload to try again."}],["$","form",null,{"style":{"margin":0},"children":["$","button",null,{"type":"submit","style":{"display":"inline-flex","alignItems":"center","justifyContent":"center","height":"32px","padding":"0 12px","fontSize":"14px","fontWeight":500,"lineHeight":"20px","borderRadius":"6px","cursor":"pointer","color":"var(--next-error-btn-text)","background":"var(--next-error-btn-bg)","border":"var(--next-error-btn-border)"},"children":"Reload"}]}]]}]}]}]]}],null,["$","$L4",null,{"children":["$","$5",null,{"name":"Next.MetadataOutlet","children":"$@6"}]}]]}],{},null,false,null]},null,false,"$@7"],["$","$1","h",{"children":[null,["$","$L8",null,{"children":"$L9"}],["$","div",null,{"hidden":true,"children":["$","$La",null,{"children":["$","$5",null,{"name":"Next.Metadata","children":"$Lb"}]}]}],["$","meta",null,{"name":"next-size-adjust","content":""}]]}],false]],"m":"$undefined","G":["$c",[]],"S":true,"h":null,"s":"$undefined","l":"$undefined","p":"$undefined","d":"$undefined","b":"
|
|
9
|
+
0:{"P":null,"c":["","_global-error"],"q":"","i":false,"f":[[["",{"children":["__PAGE__",{}]}],[["$","$1","c",{"children":[null,["$","$L2",null,{"parallelRouterKey":"children","error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$L3",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":"$undefined","forbidden":"$undefined","unauthorized":"$undefined"}]]}],{"children":[["$","$1","c",{"children":[["$","html",null,{"id":"__next_error__","children":[["$","head",null,{"children":[["$","title",null,{"children":"500: This page couldn’t load"}],["$","style",null,{"dangerouslySetInnerHTML":{"__html":":root {--next-error-bg: #fff;--next-error-text: #171717;--next-error-title: #171717;--next-error-message: #171717;--next-error-digest: #666666;--next-error-btn-text: #fff;--next-error-btn-bg: #171717;--next-error-btn-border: none;--next-error-btn-secondary-text: #171717;--next-error-btn-secondary-bg: transparent;--next-error-btn-secondary-border: 1px solid rgba(0,0,0,0.08);}@media (prefers-color-scheme: dark) {:root {--next-error-bg: #0a0a0a;--next-error-text: #ededed;--next-error-title: #ededed;--next-error-message: #ededed;--next-error-digest: #a0a0a0;--next-error-btn-text: #0a0a0a;--next-error-btn-bg: #ededed;--next-error-btn-border: none;--next-error-btn-secondary-text: #ededed;--next-error-btn-secondary-bg: transparent;--next-error-btn-secondary-border: 1px solid rgba(255,255,255,0.14);}}body { margin: 0; color: var(--next-error-text); background: var(--next-error-bg); }"}}]]}],["$","body",null,{"children":["$","div",null,{"style":{"fontFamily":"system-ui,\"Segoe UI\",Roboto,Helvetica,Arial,sans-serif,\"Apple Color Emoji\",\"Segoe UI Emoji\"","height":"100vh","display":"flex","alignItems":"center","justifyContent":"center"},"children":["$","div",null,{"style":{"marginTop":"-32px","maxWidth":"325px","padding":"32px 28px","textAlign":"left"},"children":[["$","svg",null,{"width":"32","height":"32","viewBox":"-0.2 -1.5 32 32","fill":"none","style":{"marginBottom":"24px"},"children":["$","path",null,{"d":"M16.9328 0C18.0839 0.000116771 19.1334 0.658832 19.634 1.69531L31.4299 26.1309C32.0708 27.4588 31.1036 28.9999 29.6291 29H2.00215C0.527541 29 -0.439628 27.4588 0.201371 26.1309L11.9973 1.69531C12.4979 0.658823 13.5474 7.75066e-05 14.6984 0H16.9328ZM3.59493 26H28.0363L16.9328 3H14.6984L3.59493 26ZM15.8156 19C16.9202 19.0001 17.8156 19.8955 17.8156 21C17.8156 22.1045 16.9202 22.9999 15.8156 23C14.7111 23 13.8156 22.1046 13.8156 21C13.8156 19.8954 14.7111 19 15.8156 19ZM17.3156 16.5H14.3156V8.5H17.3156V16.5Z","fill":"var(--next-error-title)"}]}],["$","h1",null,{"style":{"fontSize":"24px","fontWeight":500,"letterSpacing":"-0.02em","lineHeight":"32px","margin":"0 0 12px 0","color":"var(--next-error-title)"},"children":"This page couldn’t load"}],["$","p",null,{"style":{"fontSize":"14px","fontWeight":400,"lineHeight":"21px","margin":"0 0 20px 0","color":"var(--next-error-message)"},"children":"A server error occurred. Reload to try again."}],["$","form",null,{"style":{"margin":0},"children":["$","button",null,{"type":"submit","style":{"display":"inline-flex","alignItems":"center","justifyContent":"center","height":"32px","padding":"0 12px","fontSize":"14px","fontWeight":500,"lineHeight":"20px","borderRadius":"6px","cursor":"pointer","color":"var(--next-error-btn-text)","background":"var(--next-error-btn-bg)","border":"var(--next-error-btn-border)"},"children":"Reload"}]}]]}]}]}]]}],null,["$","$L4",null,{"children":["$","$5",null,{"name":"Next.MetadataOutlet","children":"$@6"}]}]]}],{},null,false,null]},null,false,"$@7"],["$","$1","h",{"children":[null,["$","$L8",null,{"children":"$L9"}],["$","div",null,{"hidden":true,"children":["$","$La",null,{"children":["$","$5",null,{"name":"Next.Metadata","children":"$Lb"}]}]}],["$","meta",null,{"name":"next-size-adjust","content":""}]]}],false]],"m":"$undefined","G":["$c",[]],"S":true,"h":null,"s":"$undefined","l":"$undefined","p":"$undefined","d":"$undefined","b":"2tWMjd58X-Zsw6LJ1qDp1"}
|
|
10
10
|
d:[]
|
|
11
11
|
7:"$Wd"
|
|
12
12
|
9:[["$","meta","0",{"charSet":"utf-8"}],["$","meta","1",{"name":"viewport","content":"width=device-width, initial-scale=1"}]]
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
1:"$Sreact.fragment"
|
|
2
2
|
2:I[76614,["/_next/static/chunks/0.v8w524wvk94.js","/_next/static/chunks/0z9652tpun_.d.js"],"OutletBoundary"]
|
|
3
3
|
3:"$Sreact.suspense"
|
|
4
|
-
0:{"rsc":["$","$1","c",{"children":[["$","html",null,{"id":"__next_error__","children":[["$","head",null,{"children":[["$","title",null,{"children":"500: This page couldn’t load"}],["$","style",null,{"dangerouslySetInnerHTML":{"__html":":root {--next-error-bg: #fff;--next-error-text: #171717;--next-error-title: #171717;--next-error-message: #171717;--next-error-digest: #666666;--next-error-btn-text: #fff;--next-error-btn-bg: #171717;--next-error-btn-border: none;--next-error-btn-secondary-text: #171717;--next-error-btn-secondary-bg: transparent;--next-error-btn-secondary-border: 1px solid rgba(0,0,0,0.08);}@media (prefers-color-scheme: dark) {:root {--next-error-bg: #0a0a0a;--next-error-text: #ededed;--next-error-title: #ededed;--next-error-message: #ededed;--next-error-digest: #a0a0a0;--next-error-btn-text: #0a0a0a;--next-error-btn-bg: #ededed;--next-error-btn-border: none;--next-error-btn-secondary-text: #ededed;--next-error-btn-secondary-bg: transparent;--next-error-btn-secondary-border: 1px solid rgba(255,255,255,0.14);}}body { margin: 0; color: var(--next-error-text); background: var(--next-error-bg); }"}}]]}],["$","body",null,{"children":["$","div",null,{"style":{"fontFamily":"system-ui,\"Segoe UI\",Roboto,Helvetica,Arial,sans-serif,\"Apple Color Emoji\",\"Segoe UI Emoji\"","height":"100vh","display":"flex","alignItems":"center","justifyContent":"center"},"children":["$","div",null,{"style":{"marginTop":"-32px","maxWidth":"325px","padding":"32px 28px","textAlign":"left"},"children":[["$","svg",null,{"width":"32","height":"32","viewBox":"-0.2 -1.5 32 32","fill":"none","style":{"marginBottom":"24px"},"children":["$","path",null,{"d":"M16.9328 0C18.0839 0.000116771 19.1334 0.658832 19.634 1.69531L31.4299 26.1309C32.0708 27.4588 31.1036 28.9999 29.6291 29H2.00215C0.527541 29 -0.439628 27.4588 0.201371 26.1309L11.9973 1.69531C12.4979 0.658823 13.5474 7.75066e-05 14.6984 0H16.9328ZM3.59493 26H28.0363L16.9328 3H14.6984L3.59493 26ZM15.8156 19C16.9202 19.0001 17.8156 19.8955 17.8156 21C17.8156 22.1045 16.9202 22.9999 15.8156 23C14.7111 23 13.8156 22.1046 13.8156 21C13.8156 19.8954 14.7111 19 15.8156 19ZM17.3156 16.5H14.3156V8.5H17.3156V16.5Z","fill":"var(--next-error-title)"}]}],["$","h1",null,{"style":{"fontSize":"24px","fontWeight":500,"letterSpacing":"-0.02em","lineHeight":"32px","margin":"0 0 12px 0","color":"var(--next-error-title)"},"children":"This page couldn’t load"}],["$","p",null,{"style":{"fontSize":"14px","fontWeight":400,"lineHeight":"21px","margin":"0 0 20px 0","color":"var(--next-error-message)"},"children":"A server error occurred. Reload to try again."}],["$","form",null,{"style":{"margin":0},"children":["$","button",null,{"type":"submit","style":{"display":"inline-flex","alignItems":"center","justifyContent":"center","height":"32px","padding":"0 12px","fontSize":"14px","fontWeight":500,"lineHeight":"20px","borderRadius":"6px","cursor":"pointer","color":"var(--next-error-btn-text)","background":"var(--next-error-btn-bg)","border":"var(--next-error-btn-border)"},"children":"Reload"}]}]]}]}]}]]}],null,["$","$L2",null,{"children":["$","$3",null,{"name":"Next.MetadataOutlet","children":"$@4"}]}]]}],"isPartial":false,"staleTime":300,"varyParams":null,"buildId":"
|
|
4
|
+
0:{"rsc":["$","$1","c",{"children":[["$","html",null,{"id":"__next_error__","children":[["$","head",null,{"children":[["$","title",null,{"children":"500: This page couldn’t load"}],["$","style",null,{"dangerouslySetInnerHTML":{"__html":":root {--next-error-bg: #fff;--next-error-text: #171717;--next-error-title: #171717;--next-error-message: #171717;--next-error-digest: #666666;--next-error-btn-text: #fff;--next-error-btn-bg: #171717;--next-error-btn-border: none;--next-error-btn-secondary-text: #171717;--next-error-btn-secondary-bg: transparent;--next-error-btn-secondary-border: 1px solid rgba(0,0,0,0.08);}@media (prefers-color-scheme: dark) {:root {--next-error-bg: #0a0a0a;--next-error-text: #ededed;--next-error-title: #ededed;--next-error-message: #ededed;--next-error-digest: #a0a0a0;--next-error-btn-text: #0a0a0a;--next-error-btn-bg: #ededed;--next-error-btn-border: none;--next-error-btn-secondary-text: #ededed;--next-error-btn-secondary-bg: transparent;--next-error-btn-secondary-border: 1px solid rgba(255,255,255,0.14);}}body { margin: 0; color: var(--next-error-text); background: var(--next-error-bg); }"}}]]}],["$","body",null,{"children":["$","div",null,{"style":{"fontFamily":"system-ui,\"Segoe UI\",Roboto,Helvetica,Arial,sans-serif,\"Apple Color Emoji\",\"Segoe UI Emoji\"","height":"100vh","display":"flex","alignItems":"center","justifyContent":"center"},"children":["$","div",null,{"style":{"marginTop":"-32px","maxWidth":"325px","padding":"32px 28px","textAlign":"left"},"children":[["$","svg",null,{"width":"32","height":"32","viewBox":"-0.2 -1.5 32 32","fill":"none","style":{"marginBottom":"24px"},"children":["$","path",null,{"d":"M16.9328 0C18.0839 0.000116771 19.1334 0.658832 19.634 1.69531L31.4299 26.1309C32.0708 27.4588 31.1036 28.9999 29.6291 29H2.00215C0.527541 29 -0.439628 27.4588 0.201371 26.1309L11.9973 1.69531C12.4979 0.658823 13.5474 7.75066e-05 14.6984 0H16.9328ZM3.59493 26H28.0363L16.9328 3H14.6984L3.59493 26ZM15.8156 19C16.9202 19.0001 17.8156 19.8955 17.8156 21C17.8156 22.1045 16.9202 22.9999 15.8156 23C14.7111 23 13.8156 22.1046 13.8156 21C13.8156 19.8954 14.7111 19 15.8156 19ZM17.3156 16.5H14.3156V8.5H17.3156V16.5Z","fill":"var(--next-error-title)"}]}],["$","h1",null,{"style":{"fontSize":"24px","fontWeight":500,"letterSpacing":"-0.02em","lineHeight":"32px","margin":"0 0 12px 0","color":"var(--next-error-title)"},"children":"This page couldn’t load"}],["$","p",null,{"style":{"fontSize":"14px","fontWeight":400,"lineHeight":"21px","margin":"0 0 20px 0","color":"var(--next-error-message)"},"children":"A server error occurred. Reload to try again."}],["$","form",null,{"style":{"margin":0},"children":["$","button",null,{"type":"submit","style":{"display":"inline-flex","alignItems":"center","justifyContent":"center","height":"32px","padding":"0 12px","fontSize":"14px","fontWeight":500,"lineHeight":"20px","borderRadius":"6px","cursor":"pointer","color":"var(--next-error-btn-text)","background":"var(--next-error-btn-bg)","border":"var(--next-error-btn-border)"},"children":"Reload"}]}]]}]}]}]]}],null,["$","$L2",null,{"children":["$","$3",null,{"name":"Next.MetadataOutlet","children":"$@4"}]}]]}],"isPartial":false,"staleTime":300,"varyParams":null,"buildId":"2tWMjd58X-Zsw6LJ1qDp1"}
|
|
5
5
|
4:null
|
|
@@ -6,7 +6,7 @@
|
|
|
6
6
|
8:I[76614,["/_next/static/chunks/0.v8w524wvk94.js","/_next/static/chunks/0z9652tpun_.d.js"],"ViewportBoundary"]
|
|
7
7
|
a:I[76614,["/_next/static/chunks/0.v8w524wvk94.js","/_next/static/chunks/0z9652tpun_.d.js"],"MetadataBoundary"]
|
|
8
8
|
c:I[59179,["/_next/static/chunks/0.v8w524wvk94.js","/_next/static/chunks/0z9652tpun_.d.js"],"default",1]
|
|
9
|
-
0:{"P":null,"c":["","_global-error"],"q":"","i":false,"f":[[["",{"children":["__PAGE__",{}]}],[["$","$1","c",{"children":[null,["$","$L2",null,{"parallelRouterKey":"children","error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$L3",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":"$undefined","forbidden":"$undefined","unauthorized":"$undefined"}]]}],{"children":[["$","$1","c",{"children":[["$","html",null,{"id":"__next_error__","children":[["$","head",null,{"children":[["$","title",null,{"children":"500: This page couldn’t load"}],["$","style",null,{"dangerouslySetInnerHTML":{"__html":":root {--next-error-bg: #fff;--next-error-text: #171717;--next-error-title: #171717;--next-error-message: #171717;--next-error-digest: #666666;--next-error-btn-text: #fff;--next-error-btn-bg: #171717;--next-error-btn-border: none;--next-error-btn-secondary-text: #171717;--next-error-btn-secondary-bg: transparent;--next-error-btn-secondary-border: 1px solid rgba(0,0,0,0.08);}@media (prefers-color-scheme: dark) {:root {--next-error-bg: #0a0a0a;--next-error-text: #ededed;--next-error-title: #ededed;--next-error-message: #ededed;--next-error-digest: #a0a0a0;--next-error-btn-text: #0a0a0a;--next-error-btn-bg: #ededed;--next-error-btn-border: none;--next-error-btn-secondary-text: #ededed;--next-error-btn-secondary-bg: transparent;--next-error-btn-secondary-border: 1px solid rgba(255,255,255,0.14);}}body { margin: 0; color: var(--next-error-text); background: var(--next-error-bg); }"}}]]}],["$","body",null,{"children":["$","div",null,{"style":{"fontFamily":"system-ui,\"Segoe UI\",Roboto,Helvetica,Arial,sans-serif,\"Apple Color Emoji\",\"Segoe UI Emoji\"","height":"100vh","display":"flex","alignItems":"center","justifyContent":"center"},"children":["$","div",null,{"style":{"marginTop":"-32px","maxWidth":"325px","padding":"32px 28px","textAlign":"left"},"children":[["$","svg",null,{"width":"32","height":"32","viewBox":"-0.2 -1.5 32 32","fill":"none","style":{"marginBottom":"24px"},"children":["$","path",null,{"d":"M16.9328 0C18.0839 0.000116771 19.1334 0.658832 19.634 1.69531L31.4299 26.1309C32.0708 27.4588 31.1036 28.9999 29.6291 29H2.00215C0.527541 29 -0.439628 27.4588 0.201371 26.1309L11.9973 1.69531C12.4979 0.658823 13.5474 7.75066e-05 14.6984 0H16.9328ZM3.59493 26H28.0363L16.9328 3H14.6984L3.59493 26ZM15.8156 19C16.9202 19.0001 17.8156 19.8955 17.8156 21C17.8156 22.1045 16.9202 22.9999 15.8156 23C14.7111 23 13.8156 22.1046 13.8156 21C13.8156 19.8954 14.7111 19 15.8156 19ZM17.3156 16.5H14.3156V8.5H17.3156V16.5Z","fill":"var(--next-error-title)"}]}],["$","h1",null,{"style":{"fontSize":"24px","fontWeight":500,"letterSpacing":"-0.02em","lineHeight":"32px","margin":"0 0 12px 0","color":"var(--next-error-title)"},"children":"This page couldn’t load"}],["$","p",null,{"style":{"fontSize":"14px","fontWeight":400,"lineHeight":"21px","margin":"0 0 20px 0","color":"var(--next-error-message)"},"children":"A server error occurred. Reload to try again."}],["$","form",null,{"style":{"margin":0},"children":["$","button",null,{"type":"submit","style":{"display":"inline-flex","alignItems":"center","justifyContent":"center","height":"32px","padding":"0 12px","fontSize":"14px","fontWeight":500,"lineHeight":"20px","borderRadius":"6px","cursor":"pointer","color":"var(--next-error-btn-text)","background":"var(--next-error-btn-bg)","border":"var(--next-error-btn-border)"},"children":"Reload"}]}]]}]}]}]]}],null,["$","$L4",null,{"children":["$","$5",null,{"name":"Next.MetadataOutlet","children":"$@6"}]}]]}],{},null,false,null]},null,false,"$@7"],["$","$1","h",{"children":[null,["$","$L8",null,{"children":"$L9"}],["$","div",null,{"hidden":true,"children":["$","$La",null,{"children":["$","$5",null,{"name":"Next.Metadata","children":"$Lb"}]}]}],["$","meta",null,{"name":"next-size-adjust","content":""}]]}],false]],"m":"$undefined","G":["$c",[]],"S":true,"h":null,"s":"$undefined","l":"$undefined","p":"$undefined","d":"$undefined","b":"
|
|
9
|
+
0:{"P":null,"c":["","_global-error"],"q":"","i":false,"f":[[["",{"children":["__PAGE__",{}]}],[["$","$1","c",{"children":[null,["$","$L2",null,{"parallelRouterKey":"children","error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$L3",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":"$undefined","forbidden":"$undefined","unauthorized":"$undefined"}]]}],{"children":[["$","$1","c",{"children":[["$","html",null,{"id":"__next_error__","children":[["$","head",null,{"children":[["$","title",null,{"children":"500: This page couldn’t load"}],["$","style",null,{"dangerouslySetInnerHTML":{"__html":":root {--next-error-bg: #fff;--next-error-text: #171717;--next-error-title: #171717;--next-error-message: #171717;--next-error-digest: #666666;--next-error-btn-text: #fff;--next-error-btn-bg: #171717;--next-error-btn-border: none;--next-error-btn-secondary-text: #171717;--next-error-btn-secondary-bg: transparent;--next-error-btn-secondary-border: 1px solid rgba(0,0,0,0.08);}@media (prefers-color-scheme: dark) {:root {--next-error-bg: #0a0a0a;--next-error-text: #ededed;--next-error-title: #ededed;--next-error-message: #ededed;--next-error-digest: #a0a0a0;--next-error-btn-text: #0a0a0a;--next-error-btn-bg: #ededed;--next-error-btn-border: none;--next-error-btn-secondary-text: #ededed;--next-error-btn-secondary-bg: transparent;--next-error-btn-secondary-border: 1px solid rgba(255,255,255,0.14);}}body { margin: 0; color: var(--next-error-text); background: var(--next-error-bg); }"}}]]}],["$","body",null,{"children":["$","div",null,{"style":{"fontFamily":"system-ui,\"Segoe UI\",Roboto,Helvetica,Arial,sans-serif,\"Apple Color Emoji\",\"Segoe UI Emoji\"","height":"100vh","display":"flex","alignItems":"center","justifyContent":"center"},"children":["$","div",null,{"style":{"marginTop":"-32px","maxWidth":"325px","padding":"32px 28px","textAlign":"left"},"children":[["$","svg",null,{"width":"32","height":"32","viewBox":"-0.2 -1.5 32 32","fill":"none","style":{"marginBottom":"24px"},"children":["$","path",null,{"d":"M16.9328 0C18.0839 0.000116771 19.1334 0.658832 19.634 1.69531L31.4299 26.1309C32.0708 27.4588 31.1036 28.9999 29.6291 29H2.00215C0.527541 29 -0.439628 27.4588 0.201371 26.1309L11.9973 1.69531C12.4979 0.658823 13.5474 7.75066e-05 14.6984 0H16.9328ZM3.59493 26H28.0363L16.9328 3H14.6984L3.59493 26ZM15.8156 19C16.9202 19.0001 17.8156 19.8955 17.8156 21C17.8156 22.1045 16.9202 22.9999 15.8156 23C14.7111 23 13.8156 22.1046 13.8156 21C13.8156 19.8954 14.7111 19 15.8156 19ZM17.3156 16.5H14.3156V8.5H17.3156V16.5Z","fill":"var(--next-error-title)"}]}],["$","h1",null,{"style":{"fontSize":"24px","fontWeight":500,"letterSpacing":"-0.02em","lineHeight":"32px","margin":"0 0 12px 0","color":"var(--next-error-title)"},"children":"This page couldn’t load"}],["$","p",null,{"style":{"fontSize":"14px","fontWeight":400,"lineHeight":"21px","margin":"0 0 20px 0","color":"var(--next-error-message)"},"children":"A server error occurred. Reload to try again."}],["$","form",null,{"style":{"margin":0},"children":["$","button",null,{"type":"submit","style":{"display":"inline-flex","alignItems":"center","justifyContent":"center","height":"32px","padding":"0 12px","fontSize":"14px","fontWeight":500,"lineHeight":"20px","borderRadius":"6px","cursor":"pointer","color":"var(--next-error-btn-text)","background":"var(--next-error-btn-bg)","border":"var(--next-error-btn-border)"},"children":"Reload"}]}]]}]}]}]]}],null,["$","$L4",null,{"children":["$","$5",null,{"name":"Next.MetadataOutlet","children":"$@6"}]}]]}],{},null,false,null]},null,false,"$@7"],["$","$1","h",{"children":[null,["$","$L8",null,{"children":"$L9"}],["$","div",null,{"hidden":true,"children":["$","$La",null,{"children":["$","$5",null,{"name":"Next.Metadata","children":"$Lb"}]}]}],["$","meta",null,{"name":"next-size-adjust","content":""}]]}],false]],"m":"$undefined","G":["$c",[]],"S":true,"h":null,"s":"$undefined","l":"$undefined","p":"$undefined","d":"$undefined","b":"2tWMjd58X-Zsw6LJ1qDp1"}
|
|
10
10
|
d:[]
|
|
11
11
|
7:"$Wd"
|
|
12
12
|
9:[["$","meta","0",{"charSet":"utf-8"}],["$","meta","1",{"name":"viewport","content":"width=device-width, initial-scale=1"}]]
|
|
@@ -3,4 +3,4 @@
|
|
|
3
3
|
3:I[76614,["/_next/static/chunks/0.v8w524wvk94.js","/_next/static/chunks/0z9652tpun_.d.js"],"MetadataBoundary"]
|
|
4
4
|
4:"$Sreact.suspense"
|
|
5
5
|
5:I[61299,["/_next/static/chunks/0.v8w524wvk94.js","/_next/static/chunks/0z9652tpun_.d.js"],"IconMark"]
|
|
6
|
-
0:{"rsc":["$","$1","h",{"children":[null,["$","$L2",null,{"children":[["$","meta","0",{"charSet":"utf-8"}],["$","meta","1",{"name":"viewport","content":"width=device-width, initial-scale=1"}]]}],["$","div",null,{"hidden":true,"children":["$","$L3",null,{"children":["$","$4",null,{"name":"Next.Metadata","children":[["$","link","0",{"rel":"icon","href":"/favicon.ico?favicon.0x3dzn~oxb6tn.ico","sizes":"256x256","type":"image/x-icon"}],["$","$L5","1",{}]]}]}]}],["$","meta",null,{"name":"next-size-adjust","content":""}]]}],"isPartial":false,"staleTime":300,"varyParams":null,"buildId":"
|
|
6
|
+
0:{"rsc":["$","$1","h",{"children":[null,["$","$L2",null,{"children":[["$","meta","0",{"charSet":"utf-8"}],["$","meta","1",{"name":"viewport","content":"width=device-width, initial-scale=1"}]]}],["$","div",null,{"hidden":true,"children":["$","$L3",null,{"children":["$","$4",null,{"name":"Next.Metadata","children":[["$","link","0",{"rel":"icon","href":"/favicon.ico?favicon.0x3dzn~oxb6tn.ico","sizes":"256x256","type":"image/x-icon"}],["$","$L5","1",{}]]}]}]}],["$","meta",null,{"name":"next-size-adjust","content":""}]]}],"isPartial":false,"staleTime":300,"varyParams":null,"buildId":"2tWMjd58X-Zsw6LJ1qDp1"}
|
|
@@ -2,4 +2,4 @@
|
|
|
2
2
|
2:I[85530,["/_next/static/chunks/0.v8w524wvk94.js","/_next/static/chunks/0z9652tpun_.d.js"],"default"]
|
|
3
3
|
3:I[50571,["/_next/static/chunks/0.v8w524wvk94.js","/_next/static/chunks/0z9652tpun_.d.js"],"default"]
|
|
4
4
|
4:[]
|
|
5
|
-
0:{"rsc":["$","$1","c",{"children":[null,["$","$L2",null,{"parallelRouterKey":"children","template":["$","$L3",null,{}]}]]}],"isPartial":false,"staleTime":300,"varyParams":"$W4","buildId":"
|
|
5
|
+
0:{"rsc":["$","$1","c",{"children":[null,["$","$L2",null,{"parallelRouterKey":"children","template":["$","$L3",null,{}]}]]}],"isPartial":false,"staleTime":300,"varyParams":"$W4","buildId":"2tWMjd58X-Zsw6LJ1qDp1"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
0:{"tree":{"name":"","param":null,"prefetchHints":0,"slots":{"children":{"name":"__PAGE__","param":null,"prefetchHints":0,"slots":null}}},"staleTime":300,"buildId":"
|
|
1
|
+
0:{"tree":{"name":"","param":null,"prefetchHints":0,"slots":{"children":{"name":"__PAGE__","param":null,"prefetchHints":0,"slots":null}}},"staleTime":300,"buildId":"2tWMjd58X-Zsw6LJ1qDp1"}
|
|
@@ -7,9 +7,9 @@ globalThis.__BUILD_MANIFEST = {
|
|
|
7
7
|
"static/chunks/03~yq9q893hmn.js"
|
|
8
8
|
],
|
|
9
9
|
"lowPriorityFiles": [
|
|
10
|
-
"static/
|
|
11
|
-
"static/
|
|
12
|
-
"static/
|
|
10
|
+
"static/2tWMjd58X-Zsw6LJ1qDp1/_buildManifest.js",
|
|
11
|
+
"static/2tWMjd58X-Zsw6LJ1qDp1/_ssgManifest.js",
|
|
12
|
+
"static/2tWMjd58X-Zsw6LJ1qDp1/_clientMiddlewareManifest.js"
|
|
13
13
|
],
|
|
14
14
|
"rootMainFiles": [
|
|
15
15
|
"static/chunks/0_yzfo7pu205m.js",
|
|
@@ -1 +1 @@
|
|
|
1
|
-
<!DOCTYPE html><html id="__next_error__"><head><meta charSet="utf-8"/><meta name="viewport" content="width=device-width, initial-scale=1"/><link rel="preload" as="script" fetchPriority="low" href="/_next/static/chunks/0_yzfo7pu205m.js"/><script src="/_next/static/chunks/0_r.3~d-5z8~_.js" async=""></script><script src="/_next/static/chunks/0u1lny1.4-f8c.js" async=""></script><script src="/_next/static/chunks/036h9~rhidv.e.js" async=""></script><script src="/_next/static/chunks/turbopack-129yl57l2cd7_.js" async=""></script><script src="/_next/static/chunks/0.v8w524wvk94.js" async=""></script><script src="/_next/static/chunks/0z9652tpun_.d.js" async=""></script><meta name="next-size-adjust" content=""/><title>500: This page couldn’t load</title><link rel="icon" href="/favicon.ico?favicon.0x3dzn~oxb6tn.ico" sizes="256x256" type="image/x-icon"/><style>:root {--next-error-bg: #fff;--next-error-text: #171717;--next-error-title: #171717;--next-error-message: #171717;--next-error-digest: #666666;--next-error-btn-text: #fff;--next-error-btn-bg: #171717;--next-error-btn-border: none;--next-error-btn-secondary-text: #171717;--next-error-btn-secondary-bg: transparent;--next-error-btn-secondary-border: 1px solid rgba(0,0,0,0.08);}@media (prefers-color-scheme: dark) {:root {--next-error-bg: #0a0a0a;--next-error-text: #ededed;--next-error-title: #ededed;--next-error-message: #ededed;--next-error-digest: #a0a0a0;--next-error-btn-text: #0a0a0a;--next-error-btn-bg: #ededed;--next-error-btn-border: none;--next-error-btn-secondary-text: #ededed;--next-error-btn-secondary-bg: transparent;--next-error-btn-secondary-border: 1px solid rgba(255,255,255,0.14);}}body { margin: 0; color: var(--next-error-text); background: var(--next-error-bg); }</style><script src="/_next/static/chunks/03~yq9q893hmn.js" noModule=""></script></head><body><div hidden=""><!--$--><!--/$--></div><div style="font-family:system-ui,"Segoe UI",Roboto,Helvetica,Arial,sans-serif,"Apple Color Emoji","Segoe UI Emoji";height:100vh;display:flex;align-items:center;justify-content:center"><div style="margin-top:-32px;max-width:325px;padding:32px 28px;text-align:left"><svg width="32" height="32" viewBox="-0.2 -1.5 32 32" fill="none" style="margin-bottom:24px"><path d="M16.9328 0C18.0839 0.000116771 19.1334 0.658832 19.634 1.69531L31.4299 26.1309C32.0708 27.4588 31.1036 28.9999 29.6291 29H2.00215C0.527541 29 -0.439628 27.4588 0.201371 26.1309L11.9973 1.69531C12.4979 0.658823 13.5474 7.75066e-05 14.6984 0H16.9328ZM3.59493 26H28.0363L16.9328 3H14.6984L3.59493 26ZM15.8156 19C16.9202 19.0001 17.8156 19.8955 17.8156 21C17.8156 22.1045 16.9202 22.9999 15.8156 23C14.7111 23 13.8156 22.1046 13.8156 21C13.8156 19.8954 14.7111 19 15.8156 19ZM17.3156 16.5H14.3156V8.5H17.3156V16.5Z" fill="var(--next-error-title)"></path></svg><h1 style="font-size:24px;font-weight:500;letter-spacing:-0.02em;line-height:32px;margin:0 0 12px 0;color:var(--next-error-title)">This page couldn’t load</h1><p style="font-size:14px;font-weight:400;line-height:21px;margin:0 0 20px 0;color:var(--next-error-message)">A server error occurred. Reload to try again.</p><form style="margin:0"><button type="submit" style="display:inline-flex;align-items:center;justify-content:center;height:32px;padding:0 12px;font-size:14px;font-weight:500;line-height:20px;border-radius:6px;cursor:pointer;color:var(--next-error-btn-text);background:var(--next-error-btn-bg);border:var(--next-error-btn-border)">Reload</button></form></div></div><!--$--><!--/$--><script src="/_next/static/chunks/0_yzfo7pu205m.js" id="_R_" async=""></script><script>(self.__next_f=self.__next_f||[]).push([0])</script><script>self.__next_f.push([1,"1:\"$Sreact.fragment\"\n2:I[85530,[\"/_next/static/chunks/0.v8w524wvk94.js\",\"/_next/static/chunks/0z9652tpun_.d.js\"],\"default\"]\n3:I[50571,[\"/_next/static/chunks/0.v8w524wvk94.js\",\"/_next/static/chunks/0z9652tpun_.d.js\"],\"default\"]\n4:I[76614,[\"/_next/static/chunks/0.v8w524wvk94.js\",\"/_next/static/chunks/0z9652tpun_.d.js\"],\"OutletBoundary\"]\n5:\"$Sreact.suspense\"\n8:I[76614,[\"/_next/static/chunks/0.v8w524wvk94.js\",\"/_next/static/chunks/0z9652tpun_.d.js\"],\"ViewportBoundary\"]\na:I[76614,[\"/_next/static/chunks/0.v8w524wvk94.js\",\"/_next/static/chunks/0z9652tpun_.d.js\"],\"MetadataBoundary\"]\nc:I[59179,[\"/_next/static/chunks/0.v8w524wvk94.js\",\"/_next/static/chunks/0z9652tpun_.d.js\"],\"default\",1]\n"])</script><script>self.__next_f.push([1,"0:{\"P\":null,\"c\":[\"\",\"_global-error\"],\"q\":\"\",\"i\":false,\"f\":[[[\"\",{\"children\":[\"__PAGE__\",{}]}],[[\"$\",\"$1\",\"c\",{\"children\":[null,[\"$\",\"$L2\",null,{\"parallelRouterKey\":\"children\",\"error\":\"$undefined\",\"errorStyles\":\"$undefined\",\"errorScripts\":\"$undefined\",\"template\":[\"$\",\"$L3\",null,{}],\"templateStyles\":\"$undefined\",\"templateScripts\":\"$undefined\",\"notFound\":\"$undefined\",\"forbidden\":\"$undefined\",\"unauthorized\":\"$undefined\"}]]}],{\"children\":[[\"$\",\"$1\",\"c\",{\"children\":[[\"$\",\"html\",null,{\"id\":\"__next_error__\",\"children\":[[\"$\",\"head\",null,{\"children\":[[\"$\",\"title\",null,{\"children\":\"500: This page couldn’t load\"}],[\"$\",\"style\",null,{\"dangerouslySetInnerHTML\":{\"__html\":\":root {--next-error-bg: #fff;--next-error-text: #171717;--next-error-title: #171717;--next-error-message: #171717;--next-error-digest: #666666;--next-error-btn-text: #fff;--next-error-btn-bg: #171717;--next-error-btn-border: none;--next-error-btn-secondary-text: #171717;--next-error-btn-secondary-bg: transparent;--next-error-btn-secondary-border: 1px solid rgba(0,0,0,0.08);}@media (prefers-color-scheme: dark) {:root {--next-error-bg: #0a0a0a;--next-error-text: #ededed;--next-error-title: #ededed;--next-error-message: #ededed;--next-error-digest: #a0a0a0;--next-error-btn-text: #0a0a0a;--next-error-btn-bg: #ededed;--next-error-btn-border: none;--next-error-btn-secondary-text: #ededed;--next-error-btn-secondary-bg: transparent;--next-error-btn-secondary-border: 1px solid rgba(255,255,255,0.14);}}body { margin: 0; color: var(--next-error-text); background: var(--next-error-bg); }\"}}]]}],[\"$\",\"body\",null,{\"children\":[\"$\",\"div\",null,{\"style\":{\"fontFamily\":\"system-ui,\\\"Segoe UI\\\",Roboto,Helvetica,Arial,sans-serif,\\\"Apple Color Emoji\\\",\\\"Segoe UI Emoji\\\"\",\"height\":\"100vh\",\"display\":\"flex\",\"alignItems\":\"center\",\"justifyContent\":\"center\"},\"children\":[\"$\",\"div\",null,{\"style\":{\"marginTop\":\"-32px\",\"maxWidth\":\"325px\",\"padding\":\"32px 28px\",\"textAlign\":\"left\"},\"children\":[[\"$\",\"svg\",null,{\"width\":\"32\",\"height\":\"32\",\"viewBox\":\"-0.2 -1.5 32 32\",\"fill\":\"none\",\"style\":{\"marginBottom\":\"24px\"},\"children\":[\"$\",\"path\",null,{\"d\":\"M16.9328 0C18.0839 0.000116771 19.1334 0.658832 19.634 1.69531L31.4299 26.1309C32.0708 27.4588 31.1036 28.9999 29.6291 29H2.00215C0.527541 29 -0.439628 27.4588 0.201371 26.1309L11.9973 1.69531C12.4979 0.658823 13.5474 7.75066e-05 14.6984 0H16.9328ZM3.59493 26H28.0363L16.9328 3H14.6984L3.59493 26ZM15.8156 19C16.9202 19.0001 17.8156 19.8955 17.8156 21C17.8156 22.1045 16.9202 22.9999 15.8156 23C14.7111 23 13.8156 22.1046 13.8156 21C13.8156 19.8954 14.7111 19 15.8156 19ZM17.3156 16.5H14.3156V8.5H17.3156V16.5Z\",\"fill\":\"var(--next-error-title)\"}]}],[\"$\",\"h1\",null,{\"style\":{\"fontSize\":\"24px\",\"fontWeight\":500,\"letterSpacing\":\"-0.02em\",\"lineHeight\":\"32px\",\"margin\":\"0 0 12px 0\",\"color\":\"var(--next-error-title)\"},\"children\":\"This page couldn’t load\"}],[\"$\",\"p\",null,{\"style\":{\"fontSize\":\"14px\",\"fontWeight\":400,\"lineHeight\":\"21px\",\"margin\":\"0 0 20px 0\",\"color\":\"var(--next-error-message)\"},\"children\":\"A server error occurred. Reload to try again.\"}],[\"$\",\"form\",null,{\"style\":{\"margin\":0},\"children\":[\"$\",\"button\",null,{\"type\":\"submit\",\"style\":{\"display\":\"inline-flex\",\"alignItems\":\"center\",\"justifyContent\":\"center\",\"height\":\"32px\",\"padding\":\"0 12px\",\"fontSize\":\"14px\",\"fontWeight\":500,\"lineHeight\":\"20px\",\"borderRadius\":\"6px\",\"cursor\":\"pointer\",\"color\":\"var(--next-error-btn-text)\",\"background\":\"var(--next-error-btn-bg)\",\"border\":\"var(--next-error-btn-border)\"},\"children\":\"Reload\"}]}]]}]}]}]]}],null,[\"$\",\"$L4\",null,{\"children\":[\"$\",\"$5\",null,{\"name\":\"Next.MetadataOutlet\",\"children\":\"$@6\"}]}]]}],{},null,false,null]},null,false,\"$@7\"],[\"$\",\"$1\",\"h\",{\"children\":[null,[\"$\",\"$L8\",null,{\"children\":\"$L9\"}],[\"$\",\"div\",null,{\"hidden\":true,\"children\":[\"$\",\"$La\",null,{\"children\":[\"$\",\"$5\",null,{\"name\":\"Next.Metadata\",\"children\":\"$Lb\"}]}]}],[\"$\",\"meta\",null,{\"name\":\"next-size-adjust\",\"content\":\"\"}]]}],false]],\"m\":\"$undefined\",\"G\":[\"$c\",[]],\"S\":true,\"h\":null,\"s\":\"$undefined\",\"l\":\"$undefined\",\"p\":\"$undefined\",\"d\":\"$undefined\",\"b\":\"
|
|
1
|
+
<!DOCTYPE html><html id="__next_error__"><head><meta charSet="utf-8"/><meta name="viewport" content="width=device-width, initial-scale=1"/><link rel="preload" as="script" fetchPriority="low" href="/_next/static/chunks/0_yzfo7pu205m.js"/><script src="/_next/static/chunks/0_r.3~d-5z8~_.js" async=""></script><script src="/_next/static/chunks/0u1lny1.4-f8c.js" async=""></script><script src="/_next/static/chunks/036h9~rhidv.e.js" async=""></script><script src="/_next/static/chunks/turbopack-129yl57l2cd7_.js" async=""></script><script src="/_next/static/chunks/0.v8w524wvk94.js" async=""></script><script src="/_next/static/chunks/0z9652tpun_.d.js" async=""></script><meta name="next-size-adjust" content=""/><title>500: This page couldn’t load</title><link rel="icon" href="/favicon.ico?favicon.0x3dzn~oxb6tn.ico" sizes="256x256" type="image/x-icon"/><style>:root {--next-error-bg: #fff;--next-error-text: #171717;--next-error-title: #171717;--next-error-message: #171717;--next-error-digest: #666666;--next-error-btn-text: #fff;--next-error-btn-bg: #171717;--next-error-btn-border: none;--next-error-btn-secondary-text: #171717;--next-error-btn-secondary-bg: transparent;--next-error-btn-secondary-border: 1px solid rgba(0,0,0,0.08);}@media (prefers-color-scheme: dark) {:root {--next-error-bg: #0a0a0a;--next-error-text: #ededed;--next-error-title: #ededed;--next-error-message: #ededed;--next-error-digest: #a0a0a0;--next-error-btn-text: #0a0a0a;--next-error-btn-bg: #ededed;--next-error-btn-border: none;--next-error-btn-secondary-text: #ededed;--next-error-btn-secondary-bg: transparent;--next-error-btn-secondary-border: 1px solid rgba(255,255,255,0.14);}}body { margin: 0; color: var(--next-error-text); background: var(--next-error-bg); }</style><script src="/_next/static/chunks/03~yq9q893hmn.js" noModule=""></script></head><body><div hidden=""><!--$--><!--/$--></div><div style="font-family:system-ui,"Segoe UI",Roboto,Helvetica,Arial,sans-serif,"Apple Color Emoji","Segoe UI Emoji";height:100vh;display:flex;align-items:center;justify-content:center"><div style="margin-top:-32px;max-width:325px;padding:32px 28px;text-align:left"><svg width="32" height="32" viewBox="-0.2 -1.5 32 32" fill="none" style="margin-bottom:24px"><path d="M16.9328 0C18.0839 0.000116771 19.1334 0.658832 19.634 1.69531L31.4299 26.1309C32.0708 27.4588 31.1036 28.9999 29.6291 29H2.00215C0.527541 29 -0.439628 27.4588 0.201371 26.1309L11.9973 1.69531C12.4979 0.658823 13.5474 7.75066e-05 14.6984 0H16.9328ZM3.59493 26H28.0363L16.9328 3H14.6984L3.59493 26ZM15.8156 19C16.9202 19.0001 17.8156 19.8955 17.8156 21C17.8156 22.1045 16.9202 22.9999 15.8156 23C14.7111 23 13.8156 22.1046 13.8156 21C13.8156 19.8954 14.7111 19 15.8156 19ZM17.3156 16.5H14.3156V8.5H17.3156V16.5Z" fill="var(--next-error-title)"></path></svg><h1 style="font-size:24px;font-weight:500;letter-spacing:-0.02em;line-height:32px;margin:0 0 12px 0;color:var(--next-error-title)">This page couldn’t load</h1><p style="font-size:14px;font-weight:400;line-height:21px;margin:0 0 20px 0;color:var(--next-error-message)">A server error occurred. Reload to try again.</p><form style="margin:0"><button type="submit" style="display:inline-flex;align-items:center;justify-content:center;height:32px;padding:0 12px;font-size:14px;font-weight:500;line-height:20px;border-radius:6px;cursor:pointer;color:var(--next-error-btn-text);background:var(--next-error-btn-bg);border:var(--next-error-btn-border)">Reload</button></form></div></div><!--$--><!--/$--><script src="/_next/static/chunks/0_yzfo7pu205m.js" id="_R_" async=""></script><script>(self.__next_f=self.__next_f||[]).push([0])</script><script>self.__next_f.push([1,"1:\"$Sreact.fragment\"\n2:I[85530,[\"/_next/static/chunks/0.v8w524wvk94.js\",\"/_next/static/chunks/0z9652tpun_.d.js\"],\"default\"]\n3:I[50571,[\"/_next/static/chunks/0.v8w524wvk94.js\",\"/_next/static/chunks/0z9652tpun_.d.js\"],\"default\"]\n4:I[76614,[\"/_next/static/chunks/0.v8w524wvk94.js\",\"/_next/static/chunks/0z9652tpun_.d.js\"],\"OutletBoundary\"]\n5:\"$Sreact.suspense\"\n8:I[76614,[\"/_next/static/chunks/0.v8w524wvk94.js\",\"/_next/static/chunks/0z9652tpun_.d.js\"],\"ViewportBoundary\"]\na:I[76614,[\"/_next/static/chunks/0.v8w524wvk94.js\",\"/_next/static/chunks/0z9652tpun_.d.js\"],\"MetadataBoundary\"]\nc:I[59179,[\"/_next/static/chunks/0.v8w524wvk94.js\",\"/_next/static/chunks/0z9652tpun_.d.js\"],\"default\",1]\n"])</script><script>self.__next_f.push([1,"0:{\"P\":null,\"c\":[\"\",\"_global-error\"],\"q\":\"\",\"i\":false,\"f\":[[[\"\",{\"children\":[\"__PAGE__\",{}]}],[[\"$\",\"$1\",\"c\",{\"children\":[null,[\"$\",\"$L2\",null,{\"parallelRouterKey\":\"children\",\"error\":\"$undefined\",\"errorStyles\":\"$undefined\",\"errorScripts\":\"$undefined\",\"template\":[\"$\",\"$L3\",null,{}],\"templateStyles\":\"$undefined\",\"templateScripts\":\"$undefined\",\"notFound\":\"$undefined\",\"forbidden\":\"$undefined\",\"unauthorized\":\"$undefined\"}]]}],{\"children\":[[\"$\",\"$1\",\"c\",{\"children\":[[\"$\",\"html\",null,{\"id\":\"__next_error__\",\"children\":[[\"$\",\"head\",null,{\"children\":[[\"$\",\"title\",null,{\"children\":\"500: This page couldn’t load\"}],[\"$\",\"style\",null,{\"dangerouslySetInnerHTML\":{\"__html\":\":root {--next-error-bg: #fff;--next-error-text: #171717;--next-error-title: #171717;--next-error-message: #171717;--next-error-digest: #666666;--next-error-btn-text: #fff;--next-error-btn-bg: #171717;--next-error-btn-border: none;--next-error-btn-secondary-text: #171717;--next-error-btn-secondary-bg: transparent;--next-error-btn-secondary-border: 1px solid rgba(0,0,0,0.08);}@media (prefers-color-scheme: dark) {:root {--next-error-bg: #0a0a0a;--next-error-text: #ededed;--next-error-title: #ededed;--next-error-message: #ededed;--next-error-digest: #a0a0a0;--next-error-btn-text: #0a0a0a;--next-error-btn-bg: #ededed;--next-error-btn-border: none;--next-error-btn-secondary-text: #ededed;--next-error-btn-secondary-bg: transparent;--next-error-btn-secondary-border: 1px solid rgba(255,255,255,0.14);}}body { margin: 0; color: var(--next-error-text); background: var(--next-error-bg); }\"}}]]}],[\"$\",\"body\",null,{\"children\":[\"$\",\"div\",null,{\"style\":{\"fontFamily\":\"system-ui,\\\"Segoe UI\\\",Roboto,Helvetica,Arial,sans-serif,\\\"Apple Color Emoji\\\",\\\"Segoe UI Emoji\\\"\",\"height\":\"100vh\",\"display\":\"flex\",\"alignItems\":\"center\",\"justifyContent\":\"center\"},\"children\":[\"$\",\"div\",null,{\"style\":{\"marginTop\":\"-32px\",\"maxWidth\":\"325px\",\"padding\":\"32px 28px\",\"textAlign\":\"left\"},\"children\":[[\"$\",\"svg\",null,{\"width\":\"32\",\"height\":\"32\",\"viewBox\":\"-0.2 -1.5 32 32\",\"fill\":\"none\",\"style\":{\"marginBottom\":\"24px\"},\"children\":[\"$\",\"path\",null,{\"d\":\"M16.9328 0C18.0839 0.000116771 19.1334 0.658832 19.634 1.69531L31.4299 26.1309C32.0708 27.4588 31.1036 28.9999 29.6291 29H2.00215C0.527541 29 -0.439628 27.4588 0.201371 26.1309L11.9973 1.69531C12.4979 0.658823 13.5474 7.75066e-05 14.6984 0H16.9328ZM3.59493 26H28.0363L16.9328 3H14.6984L3.59493 26ZM15.8156 19C16.9202 19.0001 17.8156 19.8955 17.8156 21C17.8156 22.1045 16.9202 22.9999 15.8156 23C14.7111 23 13.8156 22.1046 13.8156 21C13.8156 19.8954 14.7111 19 15.8156 19ZM17.3156 16.5H14.3156V8.5H17.3156V16.5Z\",\"fill\":\"var(--next-error-title)\"}]}],[\"$\",\"h1\",null,{\"style\":{\"fontSize\":\"24px\",\"fontWeight\":500,\"letterSpacing\":\"-0.02em\",\"lineHeight\":\"32px\",\"margin\":\"0 0 12px 0\",\"color\":\"var(--next-error-title)\"},\"children\":\"This page couldn’t load\"}],[\"$\",\"p\",null,{\"style\":{\"fontSize\":\"14px\",\"fontWeight\":400,\"lineHeight\":\"21px\",\"margin\":\"0 0 20px 0\",\"color\":\"var(--next-error-message)\"},\"children\":\"A server error occurred. Reload to try again.\"}],[\"$\",\"form\",null,{\"style\":{\"margin\":0},\"children\":[\"$\",\"button\",null,{\"type\":\"submit\",\"style\":{\"display\":\"inline-flex\",\"alignItems\":\"center\",\"justifyContent\":\"center\",\"height\":\"32px\",\"padding\":\"0 12px\",\"fontSize\":\"14px\",\"fontWeight\":500,\"lineHeight\":\"20px\",\"borderRadius\":\"6px\",\"cursor\":\"pointer\",\"color\":\"var(--next-error-btn-text)\",\"background\":\"var(--next-error-btn-bg)\",\"border\":\"var(--next-error-btn-border)\"},\"children\":\"Reload\"}]}]]}]}]}]]}],null,[\"$\",\"$L4\",null,{\"children\":[\"$\",\"$5\",null,{\"name\":\"Next.MetadataOutlet\",\"children\":\"$@6\"}]}]]}],{},null,false,null]},null,false,\"$@7\"],[\"$\",\"$1\",\"h\",{\"children\":[null,[\"$\",\"$L8\",null,{\"children\":\"$L9\"}],[\"$\",\"div\",null,{\"hidden\":true,\"children\":[\"$\",\"$La\",null,{\"children\":[\"$\",\"$5\",null,{\"name\":\"Next.Metadata\",\"children\":\"$Lb\"}]}]}],[\"$\",\"meta\",null,{\"name\":\"next-size-adjust\",\"content\":\"\"}]]}],false]],\"m\":\"$undefined\",\"G\":[\"$c\",[]],\"S\":true,\"h\":null,\"s\":\"$undefined\",\"l\":\"$undefined\",\"p\":\"$undefined\",\"d\":\"$undefined\",\"b\":\"2tWMjd58X-Zsw6LJ1qDp1\"}\n"])</script><script>self.__next_f.push([1,"d:[]\n7:\"$Wd\"\n"])</script><script>self.__next_f.push([1,"9:[[\"$\",\"meta\",\"0\",{\"charSet\":\"utf-8\"}],[\"$\",\"meta\",\"1\",{\"name\":\"viewport\",\"content\":\"width=device-width, initial-scale=1\"}]]\n"])</script><script>self.__next_f.push([1,"e:I[61299,[\"/_next/static/chunks/0.v8w524wvk94.js\",\"/_next/static/chunks/0z9652tpun_.d.js\"],\"IconMark\"]\n6:null\nb:[[\"$\",\"link\",\"0\",{\"rel\":\"icon\",\"href\":\"/favicon.ico?favicon.0x3dzn~oxb6tn.ico\",\"sizes\":\"256x256\",\"type\":\"image/x-icon\"}],[\"$\",\"$Le\",\"1\",{}]]\n"])</script></body></html>
|
package/admin/.next/trace
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
[{"name":"generate-buildid","duration":
|
|
1
|
+
[{"name":"generate-buildid","duration":226,"timestamp":3541735999186,"id":4,"parentId":1,"tags":{},"startTime":1778188606226,"traceId":"d44b8767d2d907ac"},{"name":"load-custom-routes","duration":243,"timestamp":3541735999486,"id":5,"parentId":1,"tags":{},"startTime":1778188606226,"traceId":"d44b8767d2d907ac"},{"name":"create-dist-dir","duration":178,"timestamp":3541735999746,"id":6,"parentId":1,"tags":{},"startTime":1778188606227,"traceId":"d44b8767d2d907ac"},{"name":"clean","duration":90180,"timestamp":3541736000618,"id":7,"parentId":1,"tags":{},"startTime":1778188606228,"traceId":"d44b8767d2d907ac"},{"name":"discover-routes","duration":4668,"timestamp":3541736098442,"id":8,"parentId":1,"tags":{},"startTime":1778188606325,"traceId":"d44b8767d2d907ac"},{"name":"create-root-mapping","duration":31,"timestamp":3541736103200,"id":9,"parentId":1,"tags":{},"startTime":1778188606330,"traceId":"d44b8767d2d907ac"},{"name":"generate-route-types","duration":40255,"timestamp":3541736104127,"id":10,"parentId":1,"tags":{},"startTime":1778188606331,"traceId":"d44b8767d2d907ac"},{"name":"public-dir-conflict-check","duration":47,"timestamp":3541736144485,"id":11,"parentId":1,"tags":{},"startTime":1778188606371,"traceId":"d44b8767d2d907ac"},{"name":"generate-routes-manifest","duration":1238,"timestamp":3541736144571,"id":12,"parentId":1,"tags":{},"startTime":1778188606372,"traceId":"d44b8767d2d907ac"},{"name":"run-turbopack","duration":2090491,"timestamp":3541736148242,"id":14,"parentId":1,"tags":{},"startTime":1778188606375,"traceId":"d44b8767d2d907ac"},{"name":"turbopack-build-events","duration":113,"timestamp":3541736345433,"id":15,"parentId":1,"tags":{},"startTime":1778188606572,"traceId":"d44b8767d2d907ac"},{"name":"run-typescript","duration":2325933,"timestamp":3541738263441,"id":16,"parentId":1,"tags":{},"startTime":1778188608490,"traceId":"d44b8767d2d907ac"},{"name":"generate-required-server-files","duration":1224,"timestamp":3541740590773,"id":18,"parentId":1,"tags":{},"startTime":1778188610818,"traceId":"d44b8767d2d907ac"},{"name":"check-static-error-page","duration":3771,"timestamp":3541740606653,"id":20,"parentId":19,"tags":{},"startTime":1778188610834,"traceId":"d44b8767d2d907ac"},{"name":"is-page-static","duration":208178,"timestamp":3541740623954,"id":30,"parentId":22,"tags":{},"startTime":1778188610851,"traceId":"d44b8767d2d907ac"},{"name":"check-page","duration":222418,"timestamp":3541740609800,"id":22,"parentId":19,"tags":{"page":"/_global-error"},"startTime":1778188610837,"traceId":"d44b8767d2d907ac"},{"name":"is-page-static","duration":252867,"timestamp":3541740623986,"id":31,"parentId":23,"tags":{},"startTime":1778188610851,"traceId":"d44b8767d2d907ac"},{"name":"check-page","duration":266892,"timestamp":3541740609997,"id":23,"parentId":19,"tags":{"page":"/favicon.ico"},"startTime":1778188610837,"traceId":"d44b8767d2d907ac"},{"name":"is-page-static","duration":253114,"timestamp":3541740623809,"id":29,"parentId":21,"tags":{},"startTime":1778188610851,"traceId":"d44b8767d2d907ac"},{"name":"check-page","duration":269753,"timestamp":3541740607179,"id":21,"parentId":19,"tags":{"page":"/_not-found"},"startTime":1778188610834,"traceId":"d44b8767d2d907ac"},{"name":"is-page-static","duration":251016,"timestamp":3541740635008,"id":32,"parentId":28,"tags":{},"startTime":1778188610862,"traceId":"d44b8767d2d907ac"},{"name":"check-page","duration":275709,"timestamp":3541740610385,"id":28,"parentId":19,"tags":{"page":"/"},"startTime":1778188610837,"traceId":"d44b8767d2d907ac"},{"name":"is-page-static","duration":266615,"timestamp":3541740635224,"id":35,"parentId":26,"tags":{},"startTime":1778188610862,"traceId":"d44b8767d2d907ac"},{"name":"check-page","duration":291578,"timestamp":3541740610299,"id":26,"parentId":19,"tags":{"page":"/p/[project]/research/[slug]"},"startTime":1778188610837,"traceId":"d44b8767d2d907ac"},{"name":"is-page-static","duration":268536,"timestamp":3541740635261,"id":36,"parentId":27,"tags":{},"startTime":1778188610862,"traceId":"d44b8767d2d907ac"},{"name":"check-page","duration":293732,"timestamp":3541740610338,"id":27,"parentId":19,"tags":{"page":"/p/[project]/scorecards"},"startTime":1778188610837,"traceId":"d44b8767d2d907ac"},{"name":"is-page-static","duration":270419,"timestamp":3541740635096,"id":33,"parentId":24,"tags":{},"startTime":1778188610862,"traceId":"d44b8767d2d907ac"},{"name":"check-page","duration":295321,"timestamp":3541740610213,"id":24,"parentId":19,"tags":{"page":"/p/[project]"},"startTime":1778188610837,"traceId":"d44b8767d2d907ac"},{"name":"is-page-static","duration":273098,"timestamp":3541740635129,"id":34,"parentId":25,"tags":{},"startTime":1778188610862,"traceId":"d44b8767d2d907ac"},{"name":"check-page","duration":297995,"timestamp":3541740610258,"id":25,"parentId":19,"tags":{"page":"/p/[project]/plan/[name]"},"startTime":1778188610837,"traceId":"d44b8767d2d907ac"},{"name":"static-check","duration":301941,"timestamp":3541740606325,"id":19,"parentId":1,"tags":{},"startTime":1778188610833,"traceId":"d44b8767d2d907ac"},{"name":"write-routes-manifest","duration":369,"timestamp":3541740909123,"id":38,"parentId":1,"tags":{},"startTime":1778188611136,"traceId":"d44b8767d2d907ac"},{"name":"load-dotenv","duration":15,"timestamp":3541740925998,"id":41,"parentId":40,"tags":{},"startTime":1778188611153,"traceId":"d44b8767d2d907ac"},{"name":"run-export-path-map","duration":158,"timestamp":3541740927189,"id":42,"parentId":40,"tags":{},"startTime":1778188611154,"traceId":"d44b8767d2d907ac"},{"name":"next-export","duration":215703,"timestamp":3541740925454,"id":40,"parentId":1,"tags":{},"startTime":1778188611152,"traceId":"d44b8767d2d907ac"},{"name":"move-exported-app-global-error-","duration":405,"timestamp":3541741141813,"id":43,"parentId":39,"tags":{},"startTime":1778188611369,"traceId":"d44b8767d2d907ac"},{"name":"static-generation","duration":231616,"timestamp":3541740911464,"id":39,"parentId":1,"tags":{},"startTime":1778188611138,"traceId":"d44b8767d2d907ac"},{"name":"write-routes-manifest","duration":138,"timestamp":3541741143167,"id":44,"parentId":1,"tags":{},"startTime":1778188611370,"traceId":"d44b8767d2d907ac"},{"name":"print-tree-view","duration":1427,"timestamp":3541741148075,"id":45,"parentId":1,"tags":{},"startTime":1778188611375,"traceId":"d44b8767d2d907ac"},{"name":"write-route-bundle-stats","duration":4545,"timestamp":3541741149516,"id":46,"parentId":1,"tags":{},"startTime":1778188611376,"traceId":"d44b8767d2d907ac"},{"name":"telemetry-flush","duration":105183,"timestamp":3541741154071,"id":47,"parentId":1,"tags":{},"startTime":1778188611381,"traceId":"d44b8767d2d907ac"},{"name":"next-build","duration":5363761,"timestamp":3541735895514,"id":1,"tags":{"buildMode":"default","version":"16.2.4","bundler":"turbopack","has-custom-webpack-config":"false","use-build-worker":"true"},"startTime":1778188606122,"traceId":"d44b8767d2d907ac"}]
|
package/admin/.next/trace-build
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
[{"name":"run-turbopack","duration":
|
|
1
|
+
[{"name":"run-turbopack","duration":2090491,"timestamp":3541736148242,"id":14,"parentId":1,"tags":{},"startTime":1778188606375,"traceId":"d44b8767d2d907ac"},{"name":"turbopack-build-events","duration":113,"timestamp":3541736345433,"id":15,"parentId":1,"tags":{},"startTime":1778188606572,"traceId":"d44b8767d2d907ac"},{"name":"run-typescript","duration":2325933,"timestamp":3541738263441,"id":16,"parentId":1,"tags":{},"startTime":1778188608490,"traceId":"d44b8767d2d907ac"},{"name":"static-check","duration":301941,"timestamp":3541740606325,"id":19,"parentId":1,"tags":{},"startTime":1778188610833,"traceId":"d44b8767d2d907ac"},{"name":"static-generation","duration":231616,"timestamp":3541740911464,"id":39,"parentId":1,"tags":{},"startTime":1778188611138,"traceId":"d44b8767d2d907ac"},{"name":"telemetry-flush","duration":105183,"timestamp":3541741154071,"id":47,"parentId":1,"tags":{},"startTime":1778188611381,"traceId":"d44b8767d2d907ac"},{"name":"next-build","duration":5363761,"timestamp":3541735895514,"id":1,"tags":{"buildMode":"default","version":"16.2.4","bundler":"turbopack","has-custom-webpack-config":"false","use-build-worker":"true"},"startTime":1778188606122,"traceId":"d44b8767d2d907ac"}]
|
|
@@ -843,6 +843,7 @@ export async function init(projectRoot, options = {}) {
|
|
|
843
843
|
"mcp__indusk__list_lessons",
|
|
844
844
|
"mcp__indusk__check_health",
|
|
845
845
|
"mcp__indusk__get_context",
|
|
846
|
+
"mcp__indusk__get_project_info",
|
|
846
847
|
"mcp__indusk__list_plans",
|
|
847
848
|
"mcp__indusk__extensions_status",
|
|
848
849
|
"mcp__indusk__graph_ensure",
|
package/dist/lib/config.d.ts
CHANGED
|
@@ -70,6 +70,34 @@ export interface InduskConfig {
|
|
|
70
70
|
* field populated; `update` migrates pre-1.28.x projects on the next run.
|
|
71
71
|
*/
|
|
72
72
|
scm?: "jj" | "git";
|
|
73
|
+
/**
|
|
74
|
+
* Eval-agent configuration. Most of this is read directly via JSON
|
|
75
|
+
* traversal in `lib/eval/otel.ts`; the schema here is documentary.
|
|
76
|
+
*/
|
|
77
|
+
eval?: {
|
|
78
|
+
enabled?: boolean;
|
|
79
|
+
endpoint?: string | null;
|
|
80
|
+
otel?: {
|
|
81
|
+
enabled?: boolean;
|
|
82
|
+
dataset?: string;
|
|
83
|
+
};
|
|
84
|
+
/**
|
|
85
|
+
* Model the eval agent uses for fresh first-call evals. Accepts any
|
|
86
|
+
* value Claude Code's `--model` flag accepts: shortcuts (`opus`,
|
|
87
|
+
* `sonnet`, `haiku`) or full IDs (`claude-sonnet-4-6`).
|
|
88
|
+
*
|
|
89
|
+
* **Default: `"sonnet"`** — chosen because resume calls already drop
|
|
90
|
+
* to Sonnet on Claude Code's machine default, so making first-call
|
|
91
|
+
* also Sonnet matches the actual behavior most users experience and
|
|
92
|
+
* cuts catchup cost ~5× ($4–$7 → $0.80–$1.50 per fresh call).
|
|
93
|
+
*
|
|
94
|
+
* Set to `"opus"` to force Opus on fresh first-call. Note: subsequent
|
|
95
|
+
* resume calls do NOT re-pass `--model` (Claude Code's session model
|
|
96
|
+
* inheritance is opaque from our side), so Opus on fresh-call may not
|
|
97
|
+
* mean Opus on resume. Verify via `~/.claude/projects/<pkg>/<sessionId>.jsonl`.
|
|
98
|
+
*/
|
|
99
|
+
model?: string;
|
|
100
|
+
};
|
|
73
101
|
/**
|
|
74
102
|
* Extensions the project has explicitly opted OUT of, even if they're
|
|
75
103
|
* marked `required: true` in the built-in manifest. Escape hatch for
|
|
@@ -135,3 +163,17 @@ export declare function getProjectGroupId(projectRoot: string): string;
|
|
|
135
163
|
* Backwards compatible: projects without the new field behave exactly as before.
|
|
136
164
|
*/
|
|
137
165
|
export declare function shouldEmitOtelGate(projectRoot: string): boolean;
|
|
166
|
+
/**
|
|
167
|
+
* Model arg the eval agent passes to `claude --print --model <arg>` on fresh
|
|
168
|
+
* first-call evals. Reads `eval.model` from `.indusk/config.json`; defaults to
|
|
169
|
+
* `"sonnet"` when unset.
|
|
170
|
+
*
|
|
171
|
+
* Why default to sonnet: empirical pricing on resume calls (which don't pass
|
|
172
|
+
* `--model` and inherit Claude Code's machine default) shows ~5× cheaper than
|
|
173
|
+
* Opus. Defaulting fresh-call to Sonnet matches that behavior and saves the
|
|
174
|
+
* catchup-cost spike. Set `eval.model: "opus"` to opt back into Opus.
|
|
175
|
+
*
|
|
176
|
+
* Returns the raw string — pass directly to `--model`. Accepts any value
|
|
177
|
+
* Claude Code's `--model` accepts (`opus`, `sonnet`, `haiku`, full IDs).
|
|
178
|
+
*/
|
|
179
|
+
export declare function getEvalModel(projectRoot: string): string;
|
package/dist/lib/config.js
CHANGED
|
@@ -119,3 +119,24 @@ export function shouldEmitOtelGate(projectRoot) {
|
|
|
119
119
|
const role = config?.otel?.role;
|
|
120
120
|
return role === undefined || role === "service";
|
|
121
121
|
}
|
|
122
|
+
const DEFAULT_EVAL_MODEL = "sonnet";
|
|
123
|
+
/**
|
|
124
|
+
* Model arg the eval agent passes to `claude --print --model <arg>` on fresh
|
|
125
|
+
* first-call evals. Reads `eval.model` from `.indusk/config.json`; defaults to
|
|
126
|
+
* `"sonnet"` when unset.
|
|
127
|
+
*
|
|
128
|
+
* Why default to sonnet: empirical pricing on resume calls (which don't pass
|
|
129
|
+
* `--model` and inherit Claude Code's machine default) shows ~5× cheaper than
|
|
130
|
+
* Opus. Defaulting fresh-call to Sonnet matches that behavior and saves the
|
|
131
|
+
* catchup-cost spike. Set `eval.model: "opus"` to opt back into Opus.
|
|
132
|
+
*
|
|
133
|
+
* Returns the raw string — pass directly to `--model`. Accepts any value
|
|
134
|
+
* Claude Code's `--model` accepts (`opus`, `sonnet`, `haiku`, full IDs).
|
|
135
|
+
*/
|
|
136
|
+
export function getEvalModel(projectRoot) {
|
|
137
|
+
const config = readConfig(projectRoot);
|
|
138
|
+
const model = config?.eval?.model;
|
|
139
|
+
if (typeof model === "string" && model.length > 0)
|
|
140
|
+
return model;
|
|
141
|
+
return DEFAULT_EVAL_MODEL;
|
|
142
|
+
}
|
|
@@ -7,7 +7,7 @@
|
|
|
7
7
|
*/
|
|
8
8
|
import { spawn } from "node:child_process";
|
|
9
9
|
import { join } from "node:path";
|
|
10
|
-
import { getProjectGroupId } from "../config.js";
|
|
10
|
+
import { getEvalModel, getProjectGroupId } from "../config.js";
|
|
11
11
|
import { getScm } from "../scm/detect.js";
|
|
12
12
|
import { ingestScorecard } from "./findings.js";
|
|
13
13
|
import { EvalLogWriter } from "./log-writer.js";
|
|
@@ -66,7 +66,7 @@ export function runEvaluatorBackground(opts) {
|
|
|
66
66
|
"--output-format",
|
|
67
67
|
"json",
|
|
68
68
|
"--model",
|
|
69
|
-
|
|
69
|
+
getEvalModel(opts.projectRoot),
|
|
70
70
|
"--permission-mode",
|
|
71
71
|
"bypassPermissions",
|
|
72
72
|
"--mcp-config",
|
|
@@ -192,7 +192,7 @@ async function runEvaluatorSyncInner(opts, projectGroup) {
|
|
|
192
192
|
"--output-format",
|
|
193
193
|
"json",
|
|
194
194
|
"--model",
|
|
195
|
-
|
|
195
|
+
getEvalModel(opts.projectRoot),
|
|
196
196
|
"--permission-mode",
|
|
197
197
|
"bypassPermissions",
|
|
198
198
|
"--mcp-config",
|
|
@@ -9,7 +9,7 @@
|
|
|
9
9
|
import { spawn } from "node:child_process";
|
|
10
10
|
import { existsSync, mkdirSync, readFileSync, writeFileSync } from "node:fs";
|
|
11
11
|
import { dirname, join } from "node:path";
|
|
12
|
-
import { getProjectGroupId } from "../config.js";
|
|
12
|
+
import { getEvalModel, getProjectGroupId } from "../config.js";
|
|
13
13
|
import { readUnprocessedHighlights } from "../highlights/highlights.js";
|
|
14
14
|
import { getScm } from "../scm/detect.js";
|
|
15
15
|
import { ingestScorecard } from "./findings.js";
|
|
@@ -189,7 +189,7 @@ Output ONLY the JSON scorecard as before — no commentary.`;
|
|
|
189
189
|
"--output-format",
|
|
190
190
|
"json",
|
|
191
191
|
"--model",
|
|
192
|
-
|
|
192
|
+
getEvalModel(opts.projectRoot),
|
|
193
193
|
"--permission-mode",
|
|
194
194
|
"bypassPermissions",
|
|
195
195
|
"--mcp-config",
|
|
@@ -209,7 +209,7 @@ Output ONLY the JSON scorecard as before — no commentary.`;
|
|
|
209
209
|
}
|
|
210
210
|
const claudeResult = await withSpan(tracer, "eval.spawn_claude", {
|
|
211
211
|
"args.resumed": session !== null,
|
|
212
|
-
"args.model": session ? "(resumed)" :
|
|
212
|
+
"args.model": session ? "(resumed)" : getEvalModel(opts.projectRoot),
|
|
213
213
|
}, async (span) => {
|
|
214
214
|
const spawned = await spawnClaude(args, prompt, opts.projectRoot);
|
|
215
215
|
span.setAttribute("exit.code", spawned.code ?? -1);
|
|
@@ -3,7 +3,9 @@ import { createHash } from "node:crypto";
|
|
|
3
3
|
import { existsSync, readdirSync, readFileSync } from "node:fs";
|
|
4
4
|
import { dirname, join } from "node:path";
|
|
5
5
|
import { fileURLToPath } from "node:url";
|
|
6
|
+
import { getEvalModel, getProjectGroupId, readConfig, shouldEmitOtelGate, } from "../lib/config.js";
|
|
6
7
|
import { getEnabledExtensions } from "../lib/extension-loader.js";
|
|
8
|
+
import { getScm } from "../lib/scm/detect.js";
|
|
7
9
|
const __dirname = dirname(fileURLToPath(import.meta.url));
|
|
8
10
|
const packageRoot = join(__dirname, "../..");
|
|
9
11
|
function fileHash(path) {
|
|
@@ -24,6 +26,33 @@ export function registerSystemTools(server, projectRoot) {
|
|
|
24
26
|
],
|
|
25
27
|
};
|
|
26
28
|
});
|
|
29
|
+
server.registerTool("get_project_info", {
|
|
30
|
+
description: "Return runtime project metadata: project_group (Graphiti group ID — sanitized form, hyphens → underscores), scm (jj or git), planning_dir, otel_role, eval_model, eval_enabled. Use `project_group` as the value for `group_ids` when querying `mcp__graphiti__*` tools — the sanitized form is what writes use, so reads must match. Always pass `[project_group, \"shared\"]` to recall both project-specific and cross-project knowledge.",
|
|
31
|
+
}, async () => {
|
|
32
|
+
const config = readConfig(projectRoot);
|
|
33
|
+
const info = {
|
|
34
|
+
project_root: projectRoot,
|
|
35
|
+
project_group: getProjectGroupId(projectRoot),
|
|
36
|
+
scm: getScm(projectRoot),
|
|
37
|
+
planning_dir: join(projectRoot, ".indusk/planning"),
|
|
38
|
+
otel_role: config?.otel?.role ?? "service",
|
|
39
|
+
otel_gate_emits: shouldEmitOtelGate(projectRoot),
|
|
40
|
+
eval_enabled: config?.eval?.enabled !== false,
|
|
41
|
+
eval_model: getEvalModel(projectRoot),
|
|
42
|
+
graphiti_group_recall_example: {
|
|
43
|
+
note: "Pass `group_ids: [project_group, \"shared\"]` to graphiti queries. Omitting group_ids does NOT scan all groups — it returns empty.",
|
|
44
|
+
group_ids: [getProjectGroupId(projectRoot), "shared"],
|
|
45
|
+
},
|
|
46
|
+
};
|
|
47
|
+
return {
|
|
48
|
+
content: [
|
|
49
|
+
{
|
|
50
|
+
type: "text",
|
|
51
|
+
text: JSON.stringify(info, null, 2),
|
|
52
|
+
},
|
|
53
|
+
],
|
|
54
|
+
};
|
|
55
|
+
});
|
|
27
56
|
server.registerTool("check_health", {
|
|
28
57
|
description: "Check health of all enabled extensions. Runs health check commands from extension manifests. Errors indicate degraded system.",
|
|
29
58
|
}, async () => {
|
|
@@ -0,0 +1,48 @@
|
|
|
1
|
+
# datadog extension env template
|
|
2
|
+
#
|
|
3
|
+
# Datadog's official remote MCP server uses OAuth on first session launch —
|
|
4
|
+
# there is NO API token to paste here (unlike dash0, which uses a Bearer
|
|
5
|
+
# token). The only thing this .env configures is which regional endpoint
|
|
6
|
+
# the MCP server points at. Pick the URL matching your Datadog site.
|
|
7
|
+
#
|
|
8
|
+
# When this extension is enabled on a project, copy this file to
|
|
9
|
+
# `.indusk/extensions/datadog/.env` and uncomment the URL line for your
|
|
10
|
+
# region. The Datadog MCP server auto-registers on the next
|
|
11
|
+
# `indusk extensions enable datadog` (or `indusk update`).
|
|
12
|
+
#
|
|
13
|
+
# On first Claude Code session after registration, you'll be prompted to
|
|
14
|
+
# complete OAuth. The browser flow handles auth; nothing else lives here.
|
|
15
|
+
|
|
16
|
+
# --- Required: pick ONE regional endpoint ---
|
|
17
|
+
|
|
18
|
+
# US1 (datadoghq.com — the default for most US-based accounts):
|
|
19
|
+
DATADOG_MCP_URL=https://mcp.datadoghq.com/api/unstable/mcp-server/mcp?toolsets=all
|
|
20
|
+
|
|
21
|
+
# US3 (us3.datadoghq.com):
|
|
22
|
+
# DATADOG_MCP_URL=https://mcp.us3.datadoghq.com/api/unstable/mcp-server/mcp?toolsets=all
|
|
23
|
+
|
|
24
|
+
# US5 (us5.datadoghq.com):
|
|
25
|
+
# DATADOG_MCP_URL=https://mcp.us5.datadoghq.com/api/unstable/mcp-server/mcp?toolsets=all
|
|
26
|
+
|
|
27
|
+
# EU1 (datadoghq.eu):
|
|
28
|
+
# DATADOG_MCP_URL=https://mcp.datadoghq.eu/api/unstable/mcp-server/mcp?toolsets=all
|
|
29
|
+
|
|
30
|
+
# AP1 (ap1.datadoghq.com):
|
|
31
|
+
# DATADOG_MCP_URL=https://mcp.ap1.datadoghq.com/api/unstable/mcp-server/mcp?toolsets=all
|
|
32
|
+
|
|
33
|
+
# US1-FED (ddog-gov.com):
|
|
34
|
+
# DATADOG_MCP_URL=https://mcp.ddog-gov.com/api/unstable/mcp-server/mcp?toolsets=all
|
|
35
|
+
|
|
36
|
+
# --- Toolset filtering (optional) ---
|
|
37
|
+
#
|
|
38
|
+
# `toolsets=all` enables every available toolset (APM, Logs, Metrics,
|
|
39
|
+
# Monitors, Dashboards, Security Signals, Error Tracking, Feature Flags,
|
|
40
|
+
# DBM, LLM Observability, etc.). To enable only a subset, replace with
|
|
41
|
+
# a comma-separated list, e.g.:
|
|
42
|
+
#
|
|
43
|
+
# ?toolsets=apm,logs,metrics
|
|
44
|
+
#
|
|
45
|
+
# Valid toolsets vary by Datadog product enablement; see
|
|
46
|
+
# https://docs.datadoghq.com/bits_ai/mcp_server/setup/ for the current
|
|
47
|
+
# list. `all` works best with clients that do their own tool filtering
|
|
48
|
+
# (Claude Code does).
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
{
|
|
2
|
+
"name": "datadog",
|
|
3
|
+
"description": "Datadog observability — query logs, traces, metrics, monitors, dashboards, security signals via Datadog's official remote MCP server (16+ tools, OAuth)",
|
|
4
|
+
"provides": {
|
|
5
|
+
"skill": true,
|
|
6
|
+
"health_checks": [
|
|
7
|
+
{
|
|
8
|
+
"name": "datadog-mcp-configured",
|
|
9
|
+
"command": "node -e \"const m=JSON.parse(require('fs').readFileSync('.mcp.json','utf-8'));process.exit(m.mcpServers?.datadog ? 0 : 1)\""
|
|
10
|
+
}
|
|
11
|
+
]
|
|
12
|
+
},
|
|
13
|
+
"mcp_server": {
|
|
14
|
+
"type": "http",
|
|
15
|
+
"url": "DATADOG_MCP_URL",
|
|
16
|
+
"setup_instructions": [
|
|
17
|
+
"1. Copy the template:",
|
|
18
|
+
" cp .indusk/extensions/datadog/.env.example .indusk/extensions/datadog/.env",
|
|
19
|
+
"2. Edit .env and pick the regional endpoint matching your Datadog site (US1, US3, US5, EU1, US1-FED, AP1).",
|
|
20
|
+
"3. Run 'indusk extensions enable datadog' again (or 'indusk update'). The MCP server gets registered in '.mcp.json'.",
|
|
21
|
+
"4. On first session in Claude Code, complete the OAuth flow when prompted — no API token in env vars (different from dash0)."
|
|
22
|
+
]
|
|
23
|
+
},
|
|
24
|
+
"hooks": {
|
|
25
|
+
"on_enable": "echo 'Datadog extension enabled. Complete OAuth on first Claude Code session.'"
|
|
26
|
+
},
|
|
27
|
+
"detect": {
|
|
28
|
+
"mcp_server": "datadog"
|
|
29
|
+
}
|
|
30
|
+
}
|
|
@@ -0,0 +1,66 @@
|
|
|
1
|
+
# Datadog Observability
|
|
2
|
+
|
|
3
|
+
Datadog provides access to your observability data — logs, traces, metrics, monitors, dashboards, security signals, error tracking, feature flags, DBM, LLM observability — via Datadog's official remote MCP server. You query it with `mcp__datadog__*` tools during a Claude Code session.
|
|
4
|
+
|
|
5
|
+
## One Interface (No Local CLI)
|
|
6
|
+
|
|
7
|
+
Datadog ships an **official remote MCP server** (launched March 2026). It's hosted by Datadog at a regional endpoint (US1/US3/US5/EU1/AP1/US1-FED) and exposes 16+ core tools plus optional toolsets for APM, Error Tracking, Feature Flags, DBM, Security, and LLM Observability.
|
|
8
|
+
|
|
9
|
+
Unlike dash0, there is **no separate `datadog` CLI** that this extension wires up. Datadog's official `dd-cli` and the `datadog-agent` daemon are unrelated — they're for emit-side instrumentation, not for AI agents querying observability data. All in-session queries flow through `mcp__datadog__*` tools.
|
|
10
|
+
|
|
11
|
+
## Auth Model — OAuth, Not Tokens
|
|
12
|
+
|
|
13
|
+
Datadog uses **OAuth on first session launch**, not a static API token. This is different from dash0 (Bearer token in headers). What this means in practice:
|
|
14
|
+
|
|
15
|
+
- `.indusk/extensions/datadog/.env` only has `DATADOG_MCP_URL` (regional endpoint). No secrets.
|
|
16
|
+
- On first Claude Code session after the extension enables, you'll see an OAuth prompt — choose your Datadog account, complete the browser flow.
|
|
17
|
+
- Subsequent sessions reuse the OAuth token transparently. If it expires, the next session re-prompts.
|
|
18
|
+
- The OAuth-vs-token split means `datadog/.env` is safer to share (no credentials), but the extension is harder to use in headless / CI contexts where OAuth can't complete.
|
|
19
|
+
|
|
20
|
+
## Extension Scope — Read-Side Only
|
|
21
|
+
|
|
22
|
+
This extension wires the **read side** — how indusk-mcp and Claude *query* Datadog. It does NOT configure how your services *emit* telemetry to Datadog. Service emit (the Datadog agent, `dd-trace`, OTLP forwarding to Datadog's intake endpoint, etc.) is a runtime concern managed elsewhere — your project's env-management setup (root `.env.local`, composable.env profile-scoped component, Docker compose env, Vercel env, etc.).
|
|
23
|
+
|
|
24
|
+
The split: **datadog extension = query Datadog (read). Service env = emit to Datadog (write).** Keeping them separate means you can point dev services at a local daemon while the datadog extension still queries staging/prod data from the same session.
|
|
25
|
+
|
|
26
|
+
## When to Use Datadog
|
|
27
|
+
|
|
28
|
+
- **Test failures**: query recent logs/traces to see what happened in the service during the test
|
|
29
|
+
- **Debugging production issues**: search logs for errors, find related traces by trace ID
|
|
30
|
+
- **Performance investigation**: query metrics to check latency, throughput, error rates
|
|
31
|
+
- **Deployment verification**: check error rates and trace patterns after deploying a change
|
|
32
|
+
- **Monitor inspection**: list active monitors, check alert history
|
|
33
|
+
- **Security signals**: query security findings, check posture
|
|
34
|
+
- **LLM observability**: if your project uses Datadog's LLM Observability product, the MCP exposes prompt/response traces
|
|
35
|
+
|
|
36
|
+
If your project uses Dash0 instead of Datadog, prefer the dash0 extension — both are observability tools but they're typically not used in the same project.
|
|
37
|
+
|
|
38
|
+
## Key MCP Tools
|
|
39
|
+
|
|
40
|
+
The exact tool list depends on your toolset filter (`?toolsets=all` enables everything; `?toolsets=apm,logs,metrics` is a focused subset). Common tools include:
|
|
41
|
+
|
|
42
|
+
- `mcp__datadog__list_logs` / `mcp__datadog__search_logs` — query logs by query string + time range
|
|
43
|
+
- `mcp__datadog__get_trace` — fetch a trace by ID
|
|
44
|
+
- `mcp__datadog__list_services` — enumerate APM-instrumented services
|
|
45
|
+
- `mcp__datadog__query_metrics` — run metric queries
|
|
46
|
+
- `mcp__datadog__list_monitors` / `mcp__datadog__get_monitor` — monitor inspection
|
|
47
|
+
- `mcp__datadog__list_dashboards` — dashboard inventory
|
|
48
|
+
- `mcp__datadog__list_security_signals` — security findings
|
|
49
|
+
- `mcp__datadog__list_errors` — error tracking issues
|
|
50
|
+
|
|
51
|
+
The actual surface is product-enablement-dependent on your Datadog account. Run `mcp__datadog__list_tools` (or whatever the discovery tool is for your version) once after OAuth completes to see what's available.
|
|
52
|
+
|
|
53
|
+
## Troubleshooting
|
|
54
|
+
|
|
55
|
+
**"OAuth flow didn't open"**: the MCP server is unreachable or the URL is malformed. Re-check `.indusk/extensions/datadog/.env` and confirm the regional endpoint matches your Datadog site.
|
|
56
|
+
|
|
57
|
+
**"OAuth completed but tools return permission errors"**: your Datadog account doesn't have the product enabled (e.g., querying `list_security_signals` without Cloud Security Management enabled). Either enable the product in Datadog admin or narrow the toolsets filter to products you do have.
|
|
58
|
+
|
|
59
|
+
**"Empty results for known logs"**: the query may not match the log structure. Datadog log search uses faceted query syntax — start broader (just a service name + time range) before adding filters.
|
|
60
|
+
|
|
61
|
+
**"Tool calls are slow"**: Datadog's MCP server caches some queries; cold queries take longer. Subsequent calls in the same session resume cached state. If consistently slow, check Datadog status (status.datadoghq.com).
|
|
62
|
+
|
|
63
|
+
## See Also
|
|
64
|
+
|
|
65
|
+
- [`apps/indusk-mcp/extensions/dash0/skill.md`](../dash0/skill.md) — sibling observability extension; same problem space, different vendor + auth model
|
|
66
|
+
- [Datadog MCP Server docs](https://docs.datadoghq.com/bits_ai/mcp_server/) — the canonical reference; toolset list, auth flow, regional endpoints
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
# Use underscore-form group IDs when querying Graphiti — and always pass `group_ids` explicitly
|
|
2
|
+
|
|
3
|
+
Graphiti episodes are partitioned by `group_id`. Two failure modes are silent and look identical to "the graph has nothing":
|
|
4
|
+
|
|
5
|
+
1. **Hyphens in `group_id` hit a RediSearch syntax error.** A query like `mcp__graphiti__search_nodes({ query: "...", group_ids: ["dawn-fde-toolkit"] })` triggers a RediSearch tokenizer error; the lib catches it and returns empty. The agent concludes "no episodes." Fix: use the underscore form (`dawn_fde_toolkit`). InDusk's `getProjectGroupId(projectRoot)` helper sanitizes hyphen → underscore on writes; **the same convention applies on reads** — the bytes the writer used are the bytes the reader must use.
|
|
6
|
+
|
|
7
|
+
2. **Omitting `group_ids` doesn't scan all groups — it returns empty.** Falling back to `mcp__graphiti__search_nodes({ query: "..." })` (no filter) silently produces nothing. Always pass `group_ids: [<project-group>, "shared"]` explicitly.
|
|
8
|
+
|
|
9
|
+
The bug is silent both directions: a malformed group_id and a missing group_id both look like "graph empty." If you're querying Graphiti and getting nothing, the first check is the group_id form, not "is Graphiti down."
|
|
10
|
+
|
|
11
|
+
**Discovering your project's group**: call `mcp__indusk__get_project_info` and use `.project_group`. Don't try to derive it from the project basename — InDusk applies sanitization rules (lowercase, hyphen → underscore, hyphens around digits) that the basename doesn't match.
|
|
12
|
+
|
|
13
|
+
**Two minimum query shapes**:
|
|
14
|
+
|
|
15
|
+
```js
|
|
16
|
+
// Recall from project + cross-project shared knowledge
|
|
17
|
+
mcp__graphiti__search_nodes({
|
|
18
|
+
query: "...",
|
|
19
|
+
group_ids: [project_group, "shared"],
|
|
20
|
+
max_nodes: 8,
|
|
21
|
+
});
|
|
22
|
+
|
|
23
|
+
// Just one group
|
|
24
|
+
mcp__graphiti__search_memory_facts({
|
|
25
|
+
query: "...",
|
|
26
|
+
group_ids: [project_group],
|
|
27
|
+
max_facts: 5,
|
|
28
|
+
});
|
|
29
|
+
```
|
|
30
|
+
|
|
31
|
+
If you ever see empty results from Graphiti and you "thought you wrote there earlier," the answer 95% of the time is wrong group_id form, not data loss.
|
package/package.json
CHANGED
package/skills/catchup.md
CHANGED
|
@@ -63,15 +63,25 @@ Read it fully. Don't skim.
|
|
|
63
63
|
CLAUDE.md is the stable, slow-changing layer of project memory. Graphiti is the fast, temporal layer — it captures decisions, corrections, and retrospective insights as they happen. Catchup pulls both layers so the agent starts the session with full context.
|
|
64
64
|
|
|
65
65
|
**Recall recent decisions and lessons:**
|
|
66
|
+
|
|
67
|
+
First, fetch the project's Graphiti group via the InDusk MCP (do NOT guess from project basename — InDusk applies sanitization rules):
|
|
68
|
+
|
|
69
|
+
```
|
|
70
|
+
mcp__indusk__get_project_info()
|
|
71
|
+
// returns { project_group: "<sanitized>", scm: ..., ... }
|
|
72
|
+
```
|
|
73
|
+
|
|
74
|
+
Then query Graphiti with that group plus `"shared"` for cross-project knowledge:
|
|
75
|
+
|
|
66
76
|
```
|
|
67
77
|
mcp__graphiti__search_nodes({
|
|
68
78
|
query: "recent decisions and lessons",
|
|
69
|
-
group_ids: [
|
|
79
|
+
group_ids: [<project_group from get_project_info>, "shared"],
|
|
70
80
|
max_nodes: 8
|
|
71
81
|
})
|
|
72
82
|
```
|
|
73
83
|
|
|
74
|
-
|
|
84
|
+
**Why the explicit group lookup matters**: hyphen-containing group IDs (`dawn-fde-toolkit`) hit a RediSearch syntax error and silently return empty. Omitting `group_ids` entirely also returns empty — Graphiti does NOT scan all groups by default. Both failure modes look identical to "graph empty," so always pass the sanitized `project_group` value plus `"shared"` explicitly. See the `community-graphiti-group-id-underscores` lesson for the full pattern.
|
|
75
85
|
|
|
76
86
|
**Surface contradictions:** look at the returned nodes for any whose `attributes` reference recently invalidated facts (Graphiti marks superseded facts with `invalid_at`). If a recently invalidated fact relates to an active plan or current code area, flag it to the user — those are places where assumptions changed.
|
|
77
87
|
|
|
@@ -63,7 +63,14 @@ const cloneDiagram = () => {
|
|
|
63
63
|
diagramHTML.value = diagramRef.value.innerHTML;
|
|
64
64
|
};
|
|
65
65
|
|
|
66
|
-
|
|
66
|
+
// IMPORTANT: handler names must NOT be prefixed with `_`. The template binds
|
|
67
|
+
// to `toggleExpand` / `zoomIn` / `zoomOut`; an underscore prefix makes Vue
|
|
68
|
+
// resolve those bindings to undefined → silent no-op on click. ESLint's
|
|
69
|
+
// `no-unused-vars` with `argsIgnorePattern: "^_"` may try to auto-fix these
|
|
70
|
+
// as "unused" because the linter can't see template references — turn off
|
|
71
|
+
// `no-unused-vars` for `<script setup>` blocks, or enable
|
|
72
|
+
// `vue/no-unused-properties` so the parser counts template references as uses.
|
|
73
|
+
const toggleExpand = () => {
|
|
67
74
|
if (!isExpanded.value) {
|
|
68
75
|
cloneDiagram();
|
|
69
76
|
}
|
|
@@ -76,10 +83,27 @@ const _toggleExpand = () => {
|
|
|
76
83
|
expandedDiagramRef.value.querySelector("svg") || expandedDiagramRef.value.firstChild;
|
|
77
84
|
if (svgElement) {
|
|
78
85
|
panzoomInstance.value = panzoom(svgElement, {
|
|
79
|
-
bounds: true
|
|
80
|
-
|
|
86
|
+
// `bounds: true` + `boundsPadding: 0.1` silently locks panning when
|
|
87
|
+
// the rendered SVG roughly fills the modal — drag does nothing.
|
|
88
|
+
// Figma/Miro convention is unbounded panning with a reset button.
|
|
89
|
+
bounds: false,
|
|
81
90
|
minZoom: 0.05,
|
|
82
91
|
maxZoom: 10,
|
|
92
|
+
// Wheel-to-pan with Cmd/Ctrl-wheel-to-zoom — panzoom's default
|
|
93
|
+
// (wheel-to-zoom) feels wrong for diagram viewers. Returning
|
|
94
|
+
// `false` from `beforeWheel` aborts panzoom's wheel handler so
|
|
95
|
+
// our custom logic runs instead.
|
|
96
|
+
beforeWheel(e) {
|
|
97
|
+
if (e.ctrlKey || e.metaKey) {
|
|
98
|
+
// Let panzoom handle zoom — return falsy so it proceeds.
|
|
99
|
+
return false;
|
|
100
|
+
}
|
|
101
|
+
// Plain wheel = pan. Move by the wheel delta and abort the
|
|
102
|
+
// default zoom path.
|
|
103
|
+
e.preventDefault();
|
|
104
|
+
panzoomInstance.value?.moveBy(-e.deltaX, -e.deltaY, false);
|
|
105
|
+
return true;
|
|
106
|
+
},
|
|
83
107
|
});
|
|
84
108
|
panzoomInstance.value.on("zoom", () => {
|
|
85
109
|
zoom.value = panzoomInstance.value.getTransform().scale;
|
|
@@ -97,7 +121,7 @@ const _toggleExpand = () => {
|
|
|
97
121
|
}
|
|
98
122
|
};
|
|
99
123
|
|
|
100
|
-
const
|
|
124
|
+
const zoomIn = () => {
|
|
101
125
|
if (panzoomInstance.value) {
|
|
102
126
|
const currentZoom = panzoomInstance.value.getTransform().scale;
|
|
103
127
|
if (currentZoom < 10) {
|
|
@@ -106,7 +130,7 @@ const _zoomIn = () => {
|
|
|
106
130
|
}
|
|
107
131
|
};
|
|
108
132
|
|
|
109
|
-
const
|
|
133
|
+
const zoomOut = () => {
|
|
110
134
|
if (panzoomInstance.value) {
|
|
111
135
|
const currentZoom = panzoomInstance.value.getTransform().scale;
|
|
112
136
|
if (currentZoom > 0.05) {
|
/package/admin/.next/static/{_oX-T7qB0nAK3y2koB5cK → 2tWMjd58X-Zsw6LJ1qDp1}/_buildManifest.js
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|