@infinitedusky/indusk-mcp 1.31.2 → 1.31.5

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (25) hide show
  1. package/admin/.next/BUILD_ID +1 -1
  2. package/admin/.next/build-manifest.json +3 -3
  3. package/admin/.next/fallback-build-manifest.json +3 -3
  4. package/admin/.next/server/app/_global-error.html +1 -1
  5. package/admin/.next/server/app/_global-error.rsc +1 -1
  6. package/admin/.next/server/app/_global-error.segments/__PAGE__.segment.rsc +1 -1
  7. package/admin/.next/server/app/_global-error.segments/_full.segment.rsc +1 -1
  8. package/admin/.next/server/app/_global-error.segments/_head.segment.rsc +1 -1
  9. package/admin/.next/server/app/_global-error.segments/_index.segment.rsc +1 -1
  10. package/admin/.next/server/app/_global-error.segments/_tree.segment.rsc +1 -1
  11. package/admin/.next/server/middleware-build-manifest.js +3 -3
  12. package/admin/.next/server/pages/500.html +1 -1
  13. package/admin/.next/trace +1 -1
  14. package/admin/.next/trace-build +1 -1
  15. package/dist/lib/highlights/highlights.js +37 -0
  16. package/dist/tools/lesson-tools.js +6 -3
  17. package/lessons/community/community-anchor-shell-trigger-patterns-no-substring.md +60 -0
  18. package/lessons/community/community-brief-author-bias-ground-truth-verification.md +48 -0
  19. package/lessons/community/community-graceful-degrade-architecture-trap.md +50 -0
  20. package/lessons/community/community-use-highlight-not-direct-graphiti-writes.md +101 -0
  21. package/package.json +1 -1
  22. package/skills/catchup.md +15 -2
  23. /package/admin/.next/static/{Bb2xZegwFKMXaIfoC1AS3 → rBUR4ZSX0VGkp7YbYJh6L}/_buildManifest.js +0 -0
  24. /package/admin/.next/static/{Bb2xZegwFKMXaIfoC1AS3 → rBUR4ZSX0VGkp7YbYJh6L}/_clientMiddlewareManifest.js +0 -0
  25. /package/admin/.next/static/{Bb2xZegwFKMXaIfoC1AS3 → rBUR4ZSX0VGkp7YbYJh6L}/_ssgManifest.js +0 -0
@@ -1 +1 @@
1
- Bb2xZegwFKMXaIfoC1AS3
1
+ rBUR4ZSX0VGkp7YbYJh6L
@@ -7,9 +7,9 @@
7
7
  "static/chunks/03~yq9q893hmn.js"
8
8
  ],
9
9
  "lowPriorityFiles": [
10
- "static/Bb2xZegwFKMXaIfoC1AS3/_buildManifest.js",
11
- "static/Bb2xZegwFKMXaIfoC1AS3/_ssgManifest.js",
12
- "static/Bb2xZegwFKMXaIfoC1AS3/_clientMiddlewareManifest.js"
10
+ "static/rBUR4ZSX0VGkp7YbYJh6L/_buildManifest.js",
11
+ "static/rBUR4ZSX0VGkp7YbYJh6L/_ssgManifest.js",
12
+ "static/rBUR4ZSX0VGkp7YbYJh6L/_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/Bb2xZegwFKMXaIfoC1AS3/_buildManifest.js",
9
- "static/Bb2xZegwFKMXaIfoC1AS3/_ssgManifest.js",
10
- "static/Bb2xZegwFKMXaIfoC1AS3/_clientMiddlewareManifest.js"
8
+ "static/rBUR4ZSX0VGkp7YbYJh6L/_buildManifest.js",
9
+ "static/rBUR4ZSX0VGkp7YbYJh6L/_ssgManifest.js",
10
+ "static/rBUR4ZSX0VGkp7YbYJh6L/_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,&quot;Segoe UI&quot;,Roboto,Helvetica,Arial,sans-serif,&quot;Apple Color Emoji&quot;,&quot;Segoe UI Emoji&quot;;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\":\"Bb2xZegwFKMXaIfoC1AS3\"}\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>
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,&quot;Segoe UI&quot;,Roboto,Helvetica,Arial,sans-serif,&quot;Apple Color Emoji&quot;,&quot;Segoe UI Emoji&quot;;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\":\"rBUR4ZSX0VGkp7YbYJh6L\"}\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":"Bb2xZegwFKMXaIfoC1AS3"}
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":"rBUR4ZSX0VGkp7YbYJh6L"}
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":"Bb2xZegwFKMXaIfoC1AS3"}
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":"rBUR4ZSX0VGkp7YbYJh6L"}
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":"Bb2xZegwFKMXaIfoC1AS3"}
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":"rBUR4ZSX0VGkp7YbYJh6L"}
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":"Bb2xZegwFKMXaIfoC1AS3"}
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":"rBUR4ZSX0VGkp7YbYJh6L"}
@@ -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":"Bb2xZegwFKMXaIfoC1AS3"}
5
+ 0:{"rsc":["$","$1","c",{"children":[null,["$","$L2",null,{"parallelRouterKey":"children","template":["$","$L3",null,{}]}]]}],"isPartial":false,"staleTime":300,"varyParams":"$W4","buildId":"rBUR4ZSX0VGkp7YbYJh6L"}
@@ -1 +1 @@
1
- 0:{"tree":{"name":"","param":null,"prefetchHints":0,"slots":{"children":{"name":"__PAGE__","param":null,"prefetchHints":0,"slots":null}}},"staleTime":300,"buildId":"Bb2xZegwFKMXaIfoC1AS3"}
1
+ 0:{"tree":{"name":"","param":null,"prefetchHints":0,"slots":{"children":{"name":"__PAGE__","param":null,"prefetchHints":0,"slots":null}}},"staleTime":300,"buildId":"rBUR4ZSX0VGkp7YbYJh6L"}
@@ -7,9 +7,9 @@ globalThis.__BUILD_MANIFEST = {
7
7
  "static/chunks/03~yq9q893hmn.js"
8
8
  ],
9
9
  "lowPriorityFiles": [
10
- "static/Bb2xZegwFKMXaIfoC1AS3/_buildManifest.js",
11
- "static/Bb2xZegwFKMXaIfoC1AS3/_ssgManifest.js",
12
- "static/Bb2xZegwFKMXaIfoC1AS3/_clientMiddlewareManifest.js"
10
+ "static/rBUR4ZSX0VGkp7YbYJh6L/_buildManifest.js",
11
+ "static/rBUR4ZSX0VGkp7YbYJh6L/_ssgManifest.js",
12
+ "static/rBUR4ZSX0VGkp7YbYJh6L/_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,&quot;Segoe UI&quot;,Roboto,Helvetica,Arial,sans-serif,&quot;Apple Color Emoji&quot;,&quot;Segoe UI Emoji&quot;;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\":\"Bb2xZegwFKMXaIfoC1AS3\"}\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>
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,&quot;Segoe UI&quot;,Roboto,Helvetica,Arial,sans-serif,&quot;Apple Color Emoji&quot;,&quot;Segoe UI Emoji&quot;;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\":\"rBUR4ZSX0VGkp7YbYJh6L\"}\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":149,"timestamp":1777656889104,"id":4,"parentId":1,"tags":{},"startTime":1782618155324,"traceId":"2851a33a133c12e3"},{"name":"load-custom-routes","duration":224,"timestamp":1777656889313,"id":5,"parentId":1,"tags":{},"startTime":1782618155324,"traceId":"2851a33a133c12e3"},{"name":"create-dist-dir","duration":105,"timestamp":1777656889553,"id":6,"parentId":1,"tags":{},"startTime":1782618155324,"traceId":"2851a33a133c12e3"},{"name":"clean","duration":27289,"timestamp":1777656890279,"id":7,"parentId":1,"tags":{},"startTime":1782618155325,"traceId":"2851a33a133c12e3"},{"name":"discover-routes","duration":4010,"timestamp":1777656922978,"id":8,"parentId":1,"tags":{},"startTime":1782618155357,"traceId":"2851a33a133c12e3"},{"name":"create-root-mapping","duration":31,"timestamp":1777656927016,"id":9,"parentId":1,"tags":{},"startTime":1782618155361,"traceId":"2851a33a133c12e3"},{"name":"generate-route-types","duration":12814,"timestamp":1777656927830,"id":10,"parentId":1,"tags":{},"startTime":1782618155362,"traceId":"2851a33a133c12e3"},{"name":"public-dir-conflict-check","duration":56,"timestamp":1777656940716,"id":11,"parentId":1,"tags":{},"startTime":1782618155375,"traceId":"2851a33a133c12e3"},{"name":"generate-routes-manifest","duration":1240,"timestamp":1777656940824,"id":12,"parentId":1,"tags":{},"startTime":1782618155375,"traceId":"2851a33a133c12e3"},{"name":"run-turbopack","duration":1840437,"timestamp":1777656943662,"id":14,"parentId":1,"tags":{},"startTime":1782618155378,"traceId":"2851a33a133c12e3"},{"name":"turbopack-build-events","duration":47,"timestamp":1777657097805,"id":15,"parentId":1,"tags":{},"startTime":1782618155532,"traceId":"2851a33a133c12e3"},{"name":"run-typescript","duration":2053922,"timestamp":1777658804659,"id":16,"parentId":1,"tags":{},"startTime":1782618157239,"traceId":"2851a33a133c12e3"},{"name":"generate-required-server-files","duration":561,"timestamp":1777660859526,"id":18,"parentId":1,"tags":{},"startTime":1782618159294,"traceId":"2851a33a133c12e3"},{"name":"check-static-error-page","duration":2408,"timestamp":1777660877517,"id":20,"parentId":19,"tags":{},"startTime":1782618159312,"traceId":"2851a33a133c12e3"},{"name":"is-page-static","duration":185714,"timestamp":1777660883304,"id":30,"parentId":22,"tags":{},"startTime":1782618159318,"traceId":"2851a33a133c12e3"},{"name":"check-page","duration":189865,"timestamp":1777660879263,"id":22,"parentId":19,"tags":{"page":"/_global-error"},"startTime":1782618159314,"traceId":"2851a33a133c12e3"},{"name":"is-page-static","duration":208309,"timestamp":1777660883169,"id":29,"parentId":21,"tags":{},"startTime":1782618159318,"traceId":"2851a33a133c12e3"},{"name":"check-page","duration":213190,"timestamp":1777660878322,"id":21,"parentId":19,"tags":{"page":"/_not-found"},"startTime":1782618159313,"traceId":"2851a33a133c12e3"},{"name":"is-page-static","duration":223749,"timestamp":1777660883333,"id":31,"parentId":23,"tags":{},"startTime":1782618159318,"traceId":"2851a33a133c12e3"},{"name":"check-page","duration":227619,"timestamp":1777660879498,"id":23,"parentId":19,"tags":{"page":"/favicon.ico"},"startTime":1782618159314,"traceId":"2851a33a133c12e3"},{"name":"is-page-static","duration":224953,"timestamp":1777660887933,"id":32,"parentId":28,"tags":{},"startTime":1782618159322,"traceId":"2851a33a133c12e3"},{"name":"check-page","duration":233053,"timestamp":1777660879882,"id":28,"parentId":19,"tags":{"page":"/"},"startTime":1782618159314,"traceId":"2851a33a133c12e3"},{"name":"is-page-static","duration":229814,"timestamp":1777660888079,"id":35,"parentId":26,"tags":{},"startTime":1782618159323,"traceId":"2851a33a133c12e3"},{"name":"check-page","duration":238154,"timestamp":1777660879804,"id":26,"parentId":19,"tags":{"page":"/p/[project]/research/[slug]"},"startTime":1782618159314,"traceId":"2851a33a133c12e3"},{"name":"is-page-static","duration":229979,"timestamp":1777660888024,"id":33,"parentId":24,"tags":{},"startTime":1782618159322,"traceId":"2851a33a133c12e3"},{"name":"check-page","duration":238302,"timestamp":1777660879713,"id":24,"parentId":19,"tags":{"page":"/p/[project]"},"startTime":1782618159314,"traceId":"2851a33a133c12e3"},{"name":"is-page-static","duration":236275,"timestamp":1777660888053,"id":34,"parentId":25,"tags":{},"startTime":1782618159323,"traceId":"2851a33a133c12e3"},{"name":"check-page","duration":244630,"timestamp":1777660879758,"id":25,"parentId":19,"tags":{"page":"/p/[project]/plan/[name]"},"startTime":1782618159314,"traceId":"2851a33a133c12e3"},{"name":"is-page-static","duration":238019,"timestamp":1777660888112,"id":36,"parentId":27,"tags":{},"startTime":1782618159323,"traceId":"2851a33a133c12e3"},{"name":"check-page","duration":246329,"timestamp":1777660879838,"id":27,"parentId":19,"tags":{"page":"/p/[project]/scorecards"},"startTime":1782618159314,"traceId":"2851a33a133c12e3"},{"name":"static-check","duration":249599,"timestamp":1777660876583,"id":19,"parentId":1,"tags":{},"startTime":1782618159311,"traceId":"2851a33a133c12e3"},{"name":"write-routes-manifest","duration":748,"timestamp":1777661128719,"id":38,"parentId":1,"tags":{},"startTime":1782618159563,"traceId":"2851a33a133c12e3"},{"name":"load-dotenv","duration":28,"timestamp":1777661135585,"id":41,"parentId":40,"tags":{},"startTime":1782618159570,"traceId":"2851a33a133c12e3"},{"name":"run-export-path-map","duration":226,"timestamp":1777661136795,"id":42,"parentId":40,"tags":{},"startTime":1782618159571,"traceId":"2851a33a133c12e3"},{"name":"next-export","duration":196183,"timestamp":1777661135091,"id":40,"parentId":1,"tags":{},"startTime":1782618159570,"traceId":"2851a33a133c12e3"},{"name":"move-exported-app-global-error-","duration":489,"timestamp":1777661331964,"id":43,"parentId":39,"tags":{},"startTime":1782618159766,"traceId":"2851a33a133c12e3"},{"name":"static-generation","duration":202077,"timestamp":1777661131213,"id":39,"parentId":1,"tags":{},"startTime":1782618159566,"traceId":"2851a33a133c12e3"},{"name":"write-routes-manifest","duration":200,"timestamp":1777661333413,"id":44,"parentId":1,"tags":{},"startTime":1782618159768,"traceId":"2851a33a133c12e3"},{"name":"print-tree-view","duration":1610,"timestamp":1777661340140,"id":45,"parentId":1,"tags":{},"startTime":1782618159775,"traceId":"2851a33a133c12e3"},{"name":"write-route-bundle-stats","duration":4904,"timestamp":1777661341763,"id":46,"parentId":1,"tags":{},"startTime":1782618159776,"traceId":"2851a33a133c12e3"},{"name":"telemetry-flush","duration":489196,"timestamp":1777661346680,"id":47,"parentId":1,"tags":{},"startTime":1782618159781,"traceId":"2851a33a133c12e3"},{"name":"next-build","duration":5041272,"timestamp":1777656794626,"id":1,"tags":{"buildMode":"default","version":"16.2.4","bundler":"turbopack","has-custom-webpack-config":"false","use-build-worker":"true"},"startTime":1782618155229,"traceId":"2851a33a133c12e3"}]
1
+ [{"name":"generate-buildid","duration":96,"timestamp":1816401425447,"id":4,"parentId":1,"tags":{},"startTime":1782656899845,"traceId":"1223254ff2b2bd28"},{"name":"load-custom-routes","duration":207,"timestamp":1816401425593,"id":5,"parentId":1,"tags":{},"startTime":1782656899845,"traceId":"1223254ff2b2bd28"},{"name":"create-dist-dir","duration":119,"timestamp":1816401425813,"id":6,"parentId":1,"tags":{},"startTime":1782656899845,"traceId":"1223254ff2b2bd28"},{"name":"clean","duration":14839,"timestamp":1816401426486,"id":7,"parentId":1,"tags":{},"startTime":1782656899846,"traceId":"1223254ff2b2bd28"},{"name":"discover-routes","duration":3748,"timestamp":1816401447038,"id":8,"parentId":1,"tags":{},"startTime":1782656899866,"traceId":"1223254ff2b2bd28"},{"name":"create-root-mapping","duration":38,"timestamp":1816401450821,"id":9,"parentId":1,"tags":{},"startTime":1782656899870,"traceId":"1223254ff2b2bd28"},{"name":"generate-route-types","duration":12580,"timestamp":1816401451497,"id":10,"parentId":1,"tags":{},"startTime":1782656899871,"traceId":"1223254ff2b2bd28"},{"name":"public-dir-conflict-check","duration":53,"timestamp":1816401464133,"id":11,"parentId":1,"tags":{},"startTime":1782656899883,"traceId":"1223254ff2b2bd28"},{"name":"generate-routes-manifest","duration":1155,"timestamp":1816401464230,"id":12,"parentId":1,"tags":{},"startTime":1782656899884,"traceId":"1223254ff2b2bd28"},{"name":"run-turbopack","duration":1911345,"timestamp":1816401467310,"id":14,"parentId":1,"tags":{},"startTime":1782656899887,"traceId":"1223254ff2b2bd28"},{"name":"turbopack-build-events","duration":56,"timestamp":1816401663254,"id":15,"parentId":1,"tags":{},"startTime":1782656900083,"traceId":"1223254ff2b2bd28"},{"name":"run-typescript","duration":2098500,"timestamp":1816403405723,"id":16,"parentId":1,"tags":{},"startTime":1782656901825,"traceId":"1223254ff2b2bd28"},{"name":"generate-required-server-files","duration":634,"timestamp":1816405505152,"id":18,"parentId":1,"tags":{},"startTime":1782656903924,"traceId":"1223254ff2b2bd28"},{"name":"check-static-error-page","duration":9729,"timestamp":1816405516249,"id":20,"parentId":19,"tags":{},"startTime":1782656903936,"traceId":"1223254ff2b2bd28"},{"name":"is-page-static","duration":183776,"timestamp":1816405530083,"id":30,"parentId":22,"tags":{},"startTime":1782656903949,"traceId":"1223254ff2b2bd28"},{"name":"check-page","duration":188668,"timestamp":1816405525298,"id":22,"parentId":19,"tags":{"page":"/_global-error"},"startTime":1782656903945,"traceId":"1223254ff2b2bd28"},{"name":"is-page-static","duration":220822,"timestamp":1816405529920,"id":29,"parentId":21,"tags":{},"startTime":1782656903949,"traceId":"1223254ff2b2bd28"},{"name":"check-page","duration":226628,"timestamp":1816405524192,"id":21,"parentId":19,"tags":{"page":"/_not-found"},"startTime":1782656903943,"traceId":"1223254ff2b2bd28"},{"name":"is-page-static","duration":231310,"timestamp":1816405530111,"id":31,"parentId":23,"tags":{},"startTime":1782656903949,"traceId":"1223254ff2b2bd28"},{"name":"check-page","duration":235959,"timestamp":1816405525498,"id":23,"parentId":19,"tags":{"page":"/favicon.ico"},"startTime":1782656903945,"traceId":"1223254ff2b2bd28"},{"name":"is-page-static","duration":232140,"timestamp":1816405534271,"id":32,"parentId":28,"tags":{},"startTime":1782656903954,"traceId":"1223254ff2b2bd28"},{"name":"check-page","duration":240550,"timestamp":1816405525920,"id":28,"parentId":19,"tags":{"page":"/"},"startTime":1782656903945,"traceId":"1223254ff2b2bd28"},{"name":"is-page-static","duration":235982,"timestamp":1816405534415,"id":35,"parentId":26,"tags":{},"startTime":1782656903954,"traceId":"1223254ff2b2bd28"},{"name":"check-page","duration":244651,"timestamp":1816405525816,"id":26,"parentId":19,"tags":{"page":"/p/[project]/research/[slug]"},"startTime":1782656903945,"traceId":"1223254ff2b2bd28"},{"name":"is-page-static","duration":242431,"timestamp":1816405534446,"id":36,"parentId":27,"tags":{},"startTime":1782656903954,"traceId":"1223254ff2b2bd28"},{"name":"check-page","duration":251077,"timestamp":1816405525868,"id":27,"parentId":19,"tags":{"page":"/p/[project]/scorecards"},"startTime":1782656903945,"traceId":"1223254ff2b2bd28"},{"name":"is-page-static","duration":246464,"timestamp":1816405534352,"id":33,"parentId":24,"tags":{},"startTime":1782656903954,"traceId":"1223254ff2b2bd28"},{"name":"check-page","duration":255134,"timestamp":1816405525711,"id":24,"parentId":19,"tags":{"page":"/p/[project]"},"startTime":1782656903945,"traceId":"1223254ff2b2bd28"},{"name":"is-page-static","duration":249181,"timestamp":1816405534389,"id":34,"parentId":25,"tags":{},"startTime":1782656903954,"traceId":"1223254ff2b2bd28"},{"name":"check-page","duration":257841,"timestamp":1816405525768,"id":25,"parentId":19,"tags":{"page":"/p/[project]/plan/[name]"},"startTime":1782656903945,"traceId":"1223254ff2b2bd28"},{"name":"static-check","duration":267837,"timestamp":1816405515793,"id":19,"parentId":1,"tags":{},"startTime":1782656903935,"traceId":"1223254ff2b2bd28"},{"name":"write-routes-manifest","duration":1282,"timestamp":1816405784701,"id":38,"parentId":1,"tags":{},"startTime":1782656904204,"traceId":"1223254ff2b2bd28"},{"name":"load-dotenv","duration":15,"timestamp":1816405791986,"id":41,"parentId":40,"tags":{},"startTime":1782656904211,"traceId":"1223254ff2b2bd28"},{"name":"run-export-path-map","duration":257,"timestamp":1816405793368,"id":42,"parentId":40,"tags":{},"startTime":1782656904213,"traceId":"1223254ff2b2bd28"},{"name":"next-export","duration":199128,"timestamp":1816405791468,"id":40,"parentId":1,"tags":{},"startTime":1782656904211,"traceId":"1223254ff2b2bd28"},{"name":"move-exported-app-global-error-","duration":384,"timestamp":1816405991270,"id":43,"parentId":39,"tags":{},"startTime":1782656904411,"traceId":"1223254ff2b2bd28"},{"name":"static-generation","duration":205386,"timestamp":1816405787237,"id":39,"parentId":1,"tags":{},"startTime":1782656904207,"traceId":"1223254ff2b2bd28"},{"name":"write-routes-manifest","duration":240,"timestamp":1816405992747,"id":44,"parentId":1,"tags":{},"startTime":1782656904412,"traceId":"1223254ff2b2bd28"},{"name":"print-tree-view","duration":1388,"timestamp":1816406000892,"id":45,"parentId":1,"tags":{},"startTime":1782656904420,"traceId":"1223254ff2b2bd28"},{"name":"write-route-bundle-stats","duration":5912,"timestamp":1816406002292,"id":46,"parentId":1,"tags":{},"startTime":1782656904422,"traceId":"1223254ff2b2bd28"},{"name":"telemetry-flush","duration":490975,"timestamp":1816406008220,"id":47,"parentId":1,"tags":{},"startTime":1782656904428,"traceId":"1223254ff2b2bd28"},{"name":"next-build","duration":5163258,"timestamp":1816401335975,"id":1,"tags":{"buildMode":"default","version":"16.2.4","bundler":"turbopack","has-custom-webpack-config":"false","use-build-worker":"true"},"startTime":1782656899755,"traceId":"1223254ff2b2bd28"}]
@@ -1 +1 @@
1
- [{"name":"run-turbopack","duration":1840437,"timestamp":1777656943662,"id":14,"parentId":1,"tags":{},"startTime":1782618155378,"traceId":"2851a33a133c12e3"},{"name":"turbopack-build-events","duration":47,"timestamp":1777657097805,"id":15,"parentId":1,"tags":{},"startTime":1782618155532,"traceId":"2851a33a133c12e3"},{"name":"run-typescript","duration":2053922,"timestamp":1777658804659,"id":16,"parentId":1,"tags":{},"startTime":1782618157239,"traceId":"2851a33a133c12e3"},{"name":"static-check","duration":249599,"timestamp":1777660876583,"id":19,"parentId":1,"tags":{},"startTime":1782618159311,"traceId":"2851a33a133c12e3"},{"name":"static-generation","duration":202077,"timestamp":1777661131213,"id":39,"parentId":1,"tags":{},"startTime":1782618159566,"traceId":"2851a33a133c12e3"},{"name":"telemetry-flush","duration":489196,"timestamp":1777661346680,"id":47,"parentId":1,"tags":{},"startTime":1782618159781,"traceId":"2851a33a133c12e3"},{"name":"next-build","duration":5041272,"timestamp":1777656794626,"id":1,"tags":{"buildMode":"default","version":"16.2.4","bundler":"turbopack","has-custom-webpack-config":"false","use-build-worker":"true"},"startTime":1782618155229,"traceId":"2851a33a133c12e3"}]
1
+ [{"name":"run-turbopack","duration":1911345,"timestamp":1816401467310,"id":14,"parentId":1,"tags":{},"startTime":1782656899887,"traceId":"1223254ff2b2bd28"},{"name":"turbopack-build-events","duration":56,"timestamp":1816401663254,"id":15,"parentId":1,"tags":{},"startTime":1782656900083,"traceId":"1223254ff2b2bd28"},{"name":"run-typescript","duration":2098500,"timestamp":1816403405723,"id":16,"parentId":1,"tags":{},"startTime":1782656901825,"traceId":"1223254ff2b2bd28"},{"name":"static-check","duration":267837,"timestamp":1816405515793,"id":19,"parentId":1,"tags":{},"startTime":1782656903935,"traceId":"1223254ff2b2bd28"},{"name":"static-generation","duration":205386,"timestamp":1816405787237,"id":39,"parentId":1,"tags":{},"startTime":1782656904207,"traceId":"1223254ff2b2bd28"},{"name":"telemetry-flush","duration":490975,"timestamp":1816406008220,"id":47,"parentId":1,"tags":{},"startTime":1782656904428,"traceId":"1223254ff2b2bd28"},{"name":"next-build","duration":5163258,"timestamp":1816401335975,"id":1,"tags":{"buildMode":"default","version":"16.2.4","bundler":"turbopack","has-custom-webpack-config":"false","use-build-worker":"true"},"startTime":1782656899755,"traceId":"1223254ff2b2bd28"}]
@@ -57,6 +57,28 @@ function readAllProcessed(projectRoot) {
57
57
  }
58
58
  return marks;
59
59
  }
60
+ /**
61
+ * Phase 7 falsification fix (H19): defensive substring check on the raw
62
+ * file content. `readAllProcessed` silently skips malformed JSON lines
63
+ * (try/catch around `JSON.parse`), so a corrupted historic entry carrying
64
+ * the target ID is invisible to the parsed dedup check. This helper
65
+ * scans the raw bytes for the literal `"id":"<escaped id>"` substring —
66
+ * if found, the ID has been "seen" by the file even if the line is
67
+ * unparseable. Used as a belt-and-suspenders layer on top of
68
+ * `readAllProcessed` in `markProcessed`.
69
+ */
70
+ function isIdInRawProcessed(projectRoot, id) {
71
+ const path = processedPath(projectRoot);
72
+ if (!existsSync(path))
73
+ return false;
74
+ const raw = readFileSync(path, "utf-8");
75
+ // Escape JSON-relevant characters in the ID for the regex literal.
76
+ // Highlight IDs are h-YYYYMMDD-NNN (alphanumeric + hyphens), so no
77
+ // regex metacharacters in practice, but defensive escaping is cheap.
78
+ const escaped = id.replace(/[.*+?^${}()|[\]\\]/g, "\\$&");
79
+ const pattern = new RegExp(`"id"\\s*:\\s*"${escaped}"`);
80
+ return pattern.test(raw);
81
+ }
60
82
  /**
61
83
  * Compute the next sequence number for today's highlights. Reads all
62
84
  * existing highlights, filters to entries whose ID starts with today's
@@ -146,6 +168,21 @@ export function markProcessed(projectRoot, id, action, detail) {
146
168
  original_processedAt: existing.processedAt,
147
169
  };
148
170
  }
171
+ // Phase 7 (H19) defense: even if `readAllProcessed` returned no parseable
172
+ // entry for this ID, the raw file may still contain a corrupted historic
173
+ // line carrying the literal ID. Treat that as "already processed" too —
174
+ // the parser's tolerance shouldn't silently re-open the dedup contract.
175
+ // original_processedAt is undefined because the malformed entry didn't
176
+ // yield a parseable timestamp; the boolean is the load-bearing signal.
177
+ if (isIdInRawProcessed(projectRoot, id)) {
178
+ return {
179
+ id,
180
+ processedAt: new Date().toISOString(),
181
+ action,
182
+ detail,
183
+ already_processed: true,
184
+ };
185
+ }
149
186
  const mark = {
150
187
  id,
151
188
  processedAt: new Date().toISOString(),
@@ -4,7 +4,7 @@ import { z } from "zod";
4
4
  export function registerLessonTools(server, projectRoot) {
5
5
  const lessonsDir = join(projectRoot, ".claude/lessons");
6
6
  server.registerTool("list_lessons", {
7
- description: "List all lessons (community + personal) from .claude/lessons/. Read these at session start to internalize proven patterns and avoid known mistakes.",
7
+ description: "List all lessons (community + personal) from .claude/lessons/ — returns title + file path per lesson, NOT full content. Titles ARE the rules in most cases; read full content via the Read tool against `path` only when a lesson is relevant to the work the user is asking for.",
8
8
  }, async () => {
9
9
  if (!existsSync(lessonsDir)) {
10
10
  return {
@@ -22,13 +22,15 @@ export function registerLessonTools(server, projectRoot) {
22
22
  }
23
23
  const files = readdirSync(lessonsDir).filter((f) => f.endsWith(".md"));
24
24
  const lessons = files.map((file) => {
25
- const content = readFileSync(join(lessonsDir, file), "utf-8");
25
+ const filePath = join(lessonsDir, file);
26
+ // Read only enough bytes to find the H1 — avoids loading full content for the listing.
27
+ const content = readFileSync(filePath, "utf-8");
26
28
  const firstLine = content.split("\n").find((l) => l.startsWith("# "));
27
29
  return {
28
30
  file,
31
+ path: filePath,
29
32
  type: file.startsWith("community-") ? "community" : "personal",
30
33
  title: firstLine?.replace("# ", "") ?? file,
31
- content: content.trim(),
32
34
  };
33
35
  });
34
36
  return {
@@ -39,6 +41,7 @@ export function registerLessonTools(server, projectRoot) {
39
41
  count: lessons.length,
40
42
  community: lessons.filter((l) => l.type === "community").length,
41
43
  personal: lessons.filter((l) => l.type === "personal").length,
44
+ note: "Titles are the actionable rules. Read full content via the Read tool on `path` only when a lesson's title matches the work you're about to do.",
42
45
  lessons,
43
46
  }, null, 2),
44
47
  },
@@ -0,0 +1,60 @@
1
+ # Never use String.includes for shell-command trigger detection — use anchored regex
2
+
3
+ # Never use String.includes for shell-command trigger detection — use anchored regex
4
+
5
+ When matching against shell command strings to decide whether to fire a hook, scheduler, watcher, or other action, `String.includes` is structurally dangerous — it false-positives on every command whose string content contains the trigger as a substring.
6
+
7
+ ## What goes wrong
8
+
9
+ `git-or-jj-substrate` Phase 6 added trigger detection like this:
10
+
11
+ ```js
12
+ const triggerPatterns = ["jj describe", "git commit"];
13
+ if (!triggerPatterns.some(p => command.includes(p))) {
14
+ return; // skip
15
+ }
16
+ ```
17
+
18
+ Phase 7 falsification surfaced that this fires on:
19
+ - `git config user.email "git committer"` — "committer" contains "commit"
20
+ - `cat git-commit-template.md` — filename contains "git commit"
21
+ - `echo "Don't forget to git commit!"` — prose contains "git commit"
22
+ - Many other Bash commands whose string content happens to contain the trigger substring
23
+
24
+ Result: silent eval-runner spawns + junk scorecards on non-commit commands. Cost-bearing in tokens, latency, and signal-noise.
25
+
26
+ ## The discipline
27
+
28
+ Use anchored regex with boundary conditions. Two levels of strictness:
29
+
30
+ **Word-boundary** (minimum):
31
+ ```js
32
+ const TRIGGER_RE = /\b(jj describe|git commit)\b/;
33
+ if (!TRIGGER_RE.test(command)) return;
34
+ ```
35
+ `\b` matches the position between a word char and a non-word char, so `git committer` (where "committer" continues past the trigger) doesn't fire.
36
+
37
+ **Right-edge lookahead** (recommended for shell commands):
38
+ ```js
39
+ const TRIGGER_RE = /\bgit commit(?=$|\s|;|&|\|)/;
40
+ ```
41
+ This rejects `git commit-tree` and `git commit-graph` plumbing commands — bare `\b` matches `t`→`-` and false-positives there. The right-edge lookahead requires end-of-string, whitespace, or shell separator after `commit`.
42
+
43
+ ## When this applies
44
+
45
+ Anywhere you're matching a Bash command, log line, or other user/agent-controlled string against a pattern that triggers downstream action:
46
+ - PostToolUse hooks (Claude Code)
47
+ - Pre-commit hooks
48
+ - Log watchers / alert rules
49
+ - Slack / chat command parsers
50
+ - CI trigger conditions
51
+ - Webhook routing
52
+
53
+ ## Signal of regression
54
+
55
+ If the trigger fires on user.email containing the trigger word, or on filenames, or on echoed prose, the pattern is using substring matching. Add a regression test that asserts the trigger does NOT fire on a curated set of false-positive shell commands.
56
+
57
+ ## Related discipline
58
+
59
+ PostToolUse hooks must also check `event.tool_response?.exit_code` and skip when non-zero. A successful trigger-pattern match on a failed Bash command produces downstream noise (eval against the wrong SHA, scheduler firing on a no-op, etc.). The trigger detection AND the exit-code check together gate downstream action.
60
+
@@ -0,0 +1,48 @@
1
+ # Ground-truth-verify every "X already works" claim in a brief before acceptance
2
+
3
+ # Ground-truth-verify every "X already works" claim in a brief before acceptance
4
+
5
+ Brief author bias is the most expensive bug class in plan authoring. When the brief asserts that some existing code does X, the author tends to read the source looking for *confirmation* of the design intent rather than ground truth — and confirmation-shaped reading misses what the code actually does.
6
+
7
+ ## What goes wrong
8
+
9
+ In `git-or-jj-substrate`'s brief, three claims were made about `eval-trigger.js`:
10
+
11
+ 1. *"It tries jj first and falls back to git rev-parse HEAD for the change ID"*
12
+ 2. *"It matches both `jj describe` and `git commit` as trigger commands"*
13
+ 3. (Implicit) *"It's installed correctly by `indusk init`"*
14
+
15
+ All three were wrong:
16
+ 1. The change-ID extractor used `jj log` with no git fallback.
17
+ 2. The filter rejected `git commit`.
18
+ 3. `init.ts` had a hardcoded `hookFiles` array that omitted `eval-trigger.js`.
19
+
20
+ Each claim looked plausible to the brief author because the *design intent* was that the hook should support both SCMs. The actual code didn't match the intent. The bug shipped to Phase 6 falsification, costing ~4 hours of investigation + fix work.
21
+
22
+ ## The discipline
23
+
24
+ A brief is not accepted until every "X already works" or "X currently does Y" claim is annotated with one of:
25
+
26
+ - A source-code line range (`apps/foo/bar.ts:45-58`)
27
+ - A quoted snippet
28
+ - A test name that asserts the claim
29
+
30
+ Reading source code while writing a brief is a different operation than reading it during impl: the brief author is biased toward confirming the plan, and confirmation-shaped reading is structurally lossy.
31
+
32
+ ## Cost-benefit
33
+
34
+ - Verification at brief time: ~20 minutes per claim
35
+ - Investigation cost when the claim turns out to be wrong: ~4 hours per claim
36
+ - Ratio: ~12×
37
+
38
+ The same pattern applies to:
39
+ - Briefs that assert what existing tests cover (often wrong; tests aren't read carefully)
40
+ - Briefs that assert how hooks/middleware/extensions behave (often based on documentation, not source)
41
+ - Briefs that assert what a config file does (often based on default values, not actual codepath behavior)
42
+
43
+ ## How to apply
44
+
45
+ When reviewing or writing a brief, find every "X already works / X currently does Y / X is configured to Z" sentence. For each: either annotate with a source pointer, or rewrite as a question for impl phase 0 to resolve. Don't accept the brief until every assertion is either source-pointed or testable.
46
+
47
+ If the brief was authored before you noticed this, the cheapest recovery is a 30-minute "annotate-or-question" pass before impl starts.
48
+
@@ -0,0 +1,50 @@
1
+ # Graceful-degrade for substrate decisions is the architecture trap — pick deliberately
2
+
3
+ # Graceful-degrade for substrate decisions is the architecture trap — pick deliberately
4
+
5
+ When a plan touches a substrate decision (which database, which SCM, which auth model, which serialization format), "graceful degrade" is often picked as the safe-looking middle path. It is rarely the right long-term answer. It defers the harder commitment question and pays compounding cost during the deferral period.
6
+
7
+ ## What goes wrong
8
+
9
+ `git-or-jj-substrate` (May 2026) picked graceful-degrade for the semantic graph: on git-mode projects, `indusk graph sync` no-ops with a clear "git mode — semantic graph unavailable" message. The plan justified this as "v1 ships dual-SCM; full git parity is future work."
10
+
11
+ The cost during the deferral period:
12
+ - 6 weeks of dual-SCM code paths to maintain
13
+ - `lib/scm/detect.ts`, `lib/semantic-graph/jj.ts`, branching logic at ~14 call sites
14
+ - Dual-form sections in 4 skills (`work.md`, `highlight.md`, `eval-review.md`, plus new `git.md`)
15
+ - The semantic graph was off on dusk's own codebase (which used git for some operations) — **so the system wasn't using its own substrate features**
16
+
17
+ Then `git-only-substrate` (June 2026, six weeks later) ripped all of it out. The dual-SCM model was determined to be wrong direction; git was the only substrate worth supporting; jj support was deleted entirely.
18
+
19
+ The `git-only-substrate` ADR explicitly named "keep graceful-degrade dual-SCM" as a rejected alternative with the reasoning: *"compounding debt, dusk's own file-linkage layer stays off."*
20
+
21
+ ## Why graceful-degrade tempts
22
+
23
+ It looks like the safe choice. You don't break existing users; you ship something; you defer the hard question. Each individual decision feels reasonable: "we can polish git parity later."
24
+
25
+ But "later" never gets cheaper. The dual code paths compound. The downstream features (Dawn correlation, lessons capture, eval-trigger hooks) all have to know about both modes. The user-facing docs have to explain both. Every new feature now has a "what's the SCM behavior here?" question that wouldn't exist with a single substrate.
26
+
27
+ ## The discipline
28
+
29
+ When a plan touches a substrate decision, force the commitment question at brief time:
30
+
31
+ > Is {substrate-A} something we're committed to long-term, yes or no? If no, drop it now.
32
+
33
+ If the answer is "no, we're not committed long-term" — pick the future-state substrate. Don't graceful-degrade.
34
+
35
+ If the answer is "yes, both are long-term" — design for both as first-class, not one-with-degraded-other.
36
+
37
+ If the answer is "we don't know yet" — that's the actual problem. Solve that before shipping any code.
38
+
39
+ ## When graceful-degrade IS the right call
40
+
41
+ - When the "degraded" path is a one-way ratchet you commit to eventually replacing entirely (and you write down the replacement plan)
42
+ - When external users would be broken by a sharp pivot, AND those users matter enough to absorb the maintenance cost
43
+ - When the substrate decision genuinely needs production usage data to resolve
44
+
45
+ In all three cases: name the exit condition explicitly. "We're keeping graceful-degrade until {specific signal}, then we commit to {direction}." Without that, graceful-degrade is just deferral, and deferral pays compounding cost.
46
+
47
+ ## Signal of trap
48
+
49
+ You catch yourself writing "v1 ships this as a known limitation" or "full parity is future work" in a brief. That's the smoke. Force the question: do we ever actually intend to do the future work? If not, pick now.
50
+
@@ -0,0 +1,101 @@
1
+ # Use mcp__indusk__highlight, never call mcp__graphiti__add_memory directly
2
+
3
+ The InDusk agent system runs across three tiers — working agent, eval agent, infrastructure. The boundary between the first two tiers is load-bearing for every project that uses InDusk: **the working agent flags moments via `mcp__indusk__highlight`; the eval agent is the sole structured Graphiti writer at trigger points.**
4
+
5
+ If you are a working agent in a Claude Code session — and during normal sessions, you are — this rule applies to you.
6
+
7
+ ## The rule
8
+
9
+ When you want to capture a decision, observation, correction, or lesson from the current session:
10
+
11
+ ✅ **Do this:**
12
+
13
+ ```typescript
14
+ mcp__indusk__highlight({
15
+ tag: "brief-accepted" | "adr-accepted" | "correction" | "retro-lesson" | "observation" | ...,
16
+ note: "single line describing what matters, with enough context to materialize",
17
+ level: "critical" | "important" | "note"
18
+ })
19
+ ```
20
+
21
+ ❌ **Do NOT do this from process skills:**
22
+
23
+ ```typescript
24
+ mcp__graphiti__add_memory({ ... }) // working agent crossing into eval-agent territory
25
+ mcp__indusk__graph_capture({ ... }) // same, just the InDusk wrapper
26
+ ```
27
+
28
+ The eval agent — spawned automatically on every `git commit` and at session end via `/handoff` — reads the unprocessed highlights queue and materializes each entry as a structured Graphiti episode with the right typing, group ID, and edges. Your job is to **flag the moment**, not to shape the structured episode.
29
+
30
+ ## Why this boundary exists
31
+
32
+ Direct Graphiti writes from in-flow code require the working agent to:
33
+
34
+ 1. Pick a group ID (sanitization rules, project vs shared, etc.)
35
+ 2. Phrase the episode as a Y-statement or correction (typed entity, structured edges)
36
+ 3. Swallow Graphiti's network failures or container outages
37
+ 4. Stop what it was doing to do all of the above
38
+
39
+ Every one of these is out-of-flow work. The working agent should stay in flow.
40
+
41
+ Highlights flip the model: write one line, keep going. The eval agent does the heavier shaping on its own cadence, in its own subprocess, with its own context. By the next `/catchup`, the structured episode is in Graphiti and queryable via `mcp__graphiti__search_nodes`.
42
+
43
+ ## What you CAN do with Graphiti directly
44
+
45
+ **Reads are always allowed** from the working agent:
46
+
47
+ ```typescript
48
+ mcp__graphiti__search_nodes({ query, group_ids: [project_group, "shared"], max_nodes })
49
+ mcp__graphiti__search_memory_facts({ ... })
50
+ mcp__graphiti__get_episodes({ ... })
51
+ mcp__graphiti__get_entity_edge({ ... })
52
+ ```
53
+
54
+ These are used during `/catchup`, mid-session research, and conflict resolution. The boundary is only on **structured writes**.
55
+
56
+ ## Trigger points where you SHOULD call highlight
57
+
58
+ The skills you load via slash commands already call highlight at the right moments. If you're authoring or modifying a skill, these are the canonical trigger points:
59
+
60
+ | Trigger | Skill | Tag | Level |
61
+ |---|---|---|---|
62
+ | Brief accepted | planner | `brief-accepted` | `important` |
63
+ | ADR accepted | planner | `adr-accepted` | `critical` |
64
+ | Mid-session correction (user says "no, do it this way") | work | `correction` | `important` |
65
+ | Retrospective "What We Learned" item | retrospective | `retro-lesson` | `important` |
66
+ | Retrospective "What We'd Do Differently" item | retrospective | `retro-hindsight` | `important` |
67
+ | User runs `/highlight ...` | highlight | user-specified, default `observation` | user-specified, default `important` |
68
+
69
+ If you find yourself wanting to write to Graphiti at a trigger point not on this list — first ask whether the existing skills should be flagging there too. The answer is usually yes; add a `mcp__indusk__highlight` call to the existing skill rather than calling Graphiti directly from your new skill.
70
+
71
+ ## Common failure modes
72
+
73
+ **"I want the episode to land in Graphiti RIGHT NOW because the user is asking about it."**
74
+ You're conflating "I want the user to see something" with "I need Graphiti to remember something." If the user is asking now, just tell them now. The eval agent handles the durable memory. If the user wants you to query Graphiti and report what's there, that's a `mcp__graphiti__search_nodes` call (read) — fine.
75
+
76
+ **"The eval agent might not run if I don't commit."**
77
+ That's what `/handoff` is for. The session-end ritual fires the eval-trigger explicitly so the queue drains before the session closes. If you're using `/handoff`, the highlight will be processed.
78
+
79
+ **"Graphiti is down — should I write the highlight anyway?"**
80
+ Yes. Highlights write to a local `.indusk/highlights.jsonl` file, not to Graphiti. The eval agent retries on its own schedule. Graphiti being down doesn't prevent you from flagging the moment.
81
+
82
+ **"I'm writing a custom MCP tool — can it call `add_memory`?"**
83
+ Custom tools that aren't process skills can have different rules, but the question is whether the tool's purpose includes "structured durable memory" (eval-agent territory) or "ad-hoc temporal state" (working-agent territory). If it's the former, route it through the highlights queue so the discipline survives. If it's the latter, you probably don't want Graphiti at all — use the file system or a session-scoped store.
84
+
85
+ ## Where this is enforced (and where it isn't)
86
+
87
+ There is no structural enforcement of this rule. No validator hook blocks `mcp__graphiti__add_memory` calls from process skills. The discipline is content-level: skills are authored to call highlight; agents trained on the skills follow the pattern; lessons (this one) reinforce it.
88
+
89
+ If you violate the rule, your episode WILL land in Graphiti (it'll work). But:
90
+ - The typing won't match what the eval agent's prompt produces (group ID sanitization, entity-type assumptions, edge weighting)
91
+ - The highlights queue won't have a record, so cross-agent visibility breaks
92
+ - The eval agent can't deduplicate against your direct write
93
+ - Future plans that rely on the highlights queue as a complete audit trail will miss your entry
94
+
95
+ The rule exists because the consequences of violating it are subtle and accumulate. A single direct-Graphiti-write call may seem harmless. Hundreds across many skills produce graph corruption that's hard to detect and harder to clean.
96
+
97
+ ## How to know if you're following the rule
98
+
99
+ Search your generated code for `mcp__graphiti__add_memory` and `mcp__indusk__graph_capture`. If either appears in a process skill, an MCP tool, or any agent-invoked code path, that's the violation. Replace with `mcp__indusk__highlight` + tag + level + note.
100
+
101
+ The exception is `apps/indusk-mcp/src/lib/eval/` — that's the eval-agent code path and it's allowed to call `graph_capture` because it IS the eval agent. If you're touching eval-agent code, you're operating in the second tier and the rules differ.
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@infinitedusky/indusk-mcp",
3
- "version": "1.31.2",
3
+ "version": "1.31.5",
4
4
  "description": "InDusk development system — skills, MCP tools, and CLI for structured AI-assisted development",
5
5
  "type": "module",
6
6
  "files": [
package/skills/catchup.md CHANGED
@@ -58,9 +58,20 @@ Read `.indusk/current.md`. It has two regions worth surfacing:
58
58
 
59
59
  **Do NOT edit `.indusk/current.md` during catchup.** Catchup is read-only for shared content. Your own section's content (in-flight / open-questions / cursor) is written via the [`mcp__indusk__update_current_section` MCP tool](apps/docs/src/reference/tools/indusk-mcp.md#agent-tools) — typically at `/handoff`, not during catchup. The `agent register` call in Step 1 only refreshes the heading + `Last updated`; it preserves any existing body content.
60
60
 
61
- ### 4. Read Lessons
61
+ ### 4. Skim Lessons (Lazy-Load)
62
62
 
63
- Call `list_lessons`. Read every lesson. These are rules learned from past mistakes — not suggestions. Internalize them before touching any code.
63
+ Call `list_lessons`. As of 1.31.5, the tool returns `title` + `path` per lesson **not** the full content. Titles ARE the actionable rules in most cases.
64
+
65
+ **Skim every title.** Most lesson titles are written as the rule itself ("Never use String.includes for shell-command trigger detection — use anchored regex" / "Ground-truth-verify every 'X already works' claim in a brief before acceptance"). Internalize the titles. That's enough to act on for most work.
66
+
67
+ **Read the full body** (via the `Read` tool against the `path` field — not via a new MCP call) only when:
68
+ - The lesson's title bears on what the user is about to ask you to do (e.g., starting a brief → read `community-brief-author-bias-ground-truth-verification` in full; touching shell-triggered code → read `community-anchor-shell-trigger-patterns-no-substring` in full)
69
+ - An error, finding, or question mid-session matches a lesson title — read that one's body then
70
+ - The user explicitly asks about a topic a lesson covers
71
+
72
+ The shift from "read every lesson's full content" (status quo through 1.31.4) to "skim titles + read on demand" is a ~5–15× context-cost reduction per catchup without losing any lesson coverage — every lesson is still discoverable; you just defer the body load until it's relevant.
73
+
74
+ These are rules learned from past mistakes — not suggestions. Internalize the titles before touching any code; reach for full content when the work calls for it.
64
75
 
65
76
  ### 5. Check Infrastructure
66
77
 
@@ -108,6 +119,8 @@ mcp__graphiti__search_nodes({
108
119
 
109
120
  **Graceful degradation:** If `mcp__graphiti__search_nodes` is unavailable (Graphiti container down, transport error), skip this step silently and add a note to the catchup summary: `Graphiti: unavailable (run \`indusk infra start\` to recall episodic memory)`. Catchup should not fail if Graphiti is down — the rest of the layers are still valid.
110
121
 
122
+ **Reads only.** Catchup queries Graphiti — it does not write to it. As a working agent, **you never call `mcp__graphiti__add_memory` or `mcp__indusk__graph_capture` directly in process skills**. When you have a moment worth remembering, write a highlight via `mcp__indusk__highlight` (tag + level + note); the eval agent materializes it into a structured Graphiti episode at the next `git commit` or session end. See the `community-use-highlight-not-direct-graphiti-writes` lesson for the full discipline.
123
+
111
124
  ### 8. Check Active Plans
112
125
 
113
126
  Call `list_plans`. This shows every plan and its status. Pay attention to: