@seqyuan/annovibe 0.8.136 → 0.8.138
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.next/BUILD_ID +1 -1
- package/.next/app-path-routes-manifest.json +11 -15
- package/.next/build-manifest.json +6 -6
- package/.next/diagnostics/framework.json +1 -1
- package/.next/prerender-manifest.json +33 -3
- package/.next/react-loadable-manifest.json +60 -60
- package/.next/required-server-files.js +45 -10
- package/.next/required-server-files.json +45 -10
- package/.next/routes-manifest.json +0 -30
- package/.next/server/app/_global-error/page.js +6 -3
- package/.next/server/app/_global-error/page_client-reference-manifest.js +1 -1
- package/.next/server/app/_global-error.html +1 -1
- package/.next/server/app/_global-error.meta +24 -5
- package/.next/server/app/_global-error.rsc +19 -12
- package/.next/server/app/_global-error.segments/_full.segment.rsc +19 -12
- package/.next/server/app/_global-error.segments/_global-error/__PAGE__.segment.rsc +25 -4
- package/.next/server/app/_global-error.segments/_tree.segment.rsc +3 -1
- package/.next/server/app/_not-found/page.js +5 -2
- package/.next/server/app/_not-found/page_client-reference-manifest.js +1 -1
- package/.next/server/app/_not-found.html +1 -1
- package/.next/server/app/_not-found.meta +24 -5
- package/.next/server/app/_not-found.rsc +24 -16
- package/.next/server/app/_not-found.segments/_full.segment.rsc +24 -16
- package/.next/server/app/_not-found.segments/_not-found/__PAGE__.segment.rsc +30 -4
- package/.next/server/app/_not-found.segments/_tree.segment.rsc +4 -2
- package/.next/server/app/api/agent/[id]/events/route.js +2 -2
- package/.next/server/app/api/agent/[id]/prepare/route.js +1 -1
- package/.next/server/app/api/agent/[id]/route.js +1 -1
- package/.next/server/app/api/agent/new/route.js +2 -2
- package/.next/server/app/api/agent/running/events/route.js +2 -2
- package/.next/server/app/api/agent/running/route.js +1 -1
- package/.next/server/app/api/agent/runtime/route.js +1 -1
- package/.next/server/app/api/apps/[id]/[[...path]]/route.js +2 -2
- package/.next/server/app/api/apps/route.js +2 -2
- package/.next/server/app/api/auth/all-providers/route.js +1 -1
- package/.next/server/app/api/auth/api-key/[provider]/route.js +1 -1
- package/.next/server/app/api/auth/login/[provider]/route.js +2 -2
- package/.next/server/app/api/auth/login/route.js +1 -1
- package/.next/server/app/api/auth/logout/[provider]/route.js +1 -1
- package/.next/server/app/api/auth/providers/route.js +1 -1
- package/.next/server/app/api/auth/status/route.js +1 -1
- package/.next/server/app/api/auth/totp/route.js +1 -1
- package/.next/server/app/api/debug-models/route.js +1 -1
- package/.next/server/app/api/default-cwd/route.js +1 -1
- package/.next/server/app/api/file-index/route.js +1 -1
- package/.next/server/app/api/file-tree/delete/route.js +1 -1
- package/.next/server/app/api/file-tree/mkdir/route.js +1 -1
- package/.next/server/app/api/file-tree/rename/route.js +1 -1
- package/.next/server/app/api/file-tree/reveal/route.js +1 -1
- package/.next/server/app/api/file-tree/write/route.js +1 -1
- package/.next/server/app/api/file-watch/route.js +3 -3
- package/.next/server/app/api/files/[...path]/route.js +1 -1
- package/.next/server/app/api/harness/route.js +1 -1
- package/.next/server/app/api/home/route.js +1 -1
- package/.next/server/app/api/im/cancel/route.js +1 -1
- package/.next/server/app/api/im/gateway-status/route.js +1 -1
- package/.next/server/app/api/im/project/route.js +1 -1
- package/.next/server/app/api/im/projects/route.js +1 -1
- package/.next/server/app/api/im/session-ids/route.js +1 -1
- package/.next/server/app/api/im/turn/route.js +3 -3
- package/.next/server/app/api/images/upload/route.js +1 -1
- package/.next/server/app/api/internal/runtime/route.js +1 -1
- package/.next/server/app/api/memory/dismiss/route.js +3 -3
- package/.next/server/app/api/memory/promote/route.js +3 -3
- package/.next/server/app/api/models/route.js +1 -1
- package/.next/server/app/api/models-config/discover/route.js +1 -1
- package/.next/server/app/api/models-config/route.js +1 -1
- package/.next/server/app/api/models-config/test/route.js +1 -1
- package/.next/server/app/api/plot-kernels/route.js +1 -1
- package/.next/server/app/api/plot-kernels/save/route.js +1 -1
- package/.next/server/app/api/plot-kernels/status/route.js +1 -1
- package/.next/server/app/api/plot-kernels/stop/route.js +1 -1
- package/.next/server/app/api/plugins/route.js +1 -1
- package/.next/server/app/api/project-trust/route.js +1 -1
- package/.next/server/app/api/projects/browse/route.js +1 -1
- package/.next/server/app/api/projects/route.js +1 -1
- package/.next/server/app/api/search/route.js +1 -1
- package/.next/server/app/api/session-index/events/route.js +2 -2
- package/.next/server/app/api/sessions/[id]/auto-name/route.js +7 -8
- package/.next/server/app/api/sessions/[id]/context/route.js +1 -1
- package/.next/server/app/api/sessions/[id]/export/route.js +1 -1
- package/.next/server/app/api/sessions/[id]/media/route.js +1 -1
- package/.next/server/app/api/sessions/[id]/route.js +1 -1
- package/.next/server/app/api/sessions/[id]/shadowed/route.js +1 -1
- package/.next/server/app/api/sessions/new/route.js +1 -1
- package/.next/server/app/api/sessions/route.js +1 -1
- package/.next/server/app/api/settings/route.js +1 -1
- package/.next/server/app/api/skills/check/route.js +1 -1
- package/.next/server/app/api/skills/install/route.js +5 -5
- package/.next/server/app/api/skills/route.js +5 -5
- package/.next/server/app/api/skills/search/route.js +1 -1
- package/.next/server/app/api/skills/update/route.js +2 -2
- package/.next/server/app/api/smoke/prompt-admission/route.js +1 -1
- package/.next/server/app/api/soul/route.js +1 -1
- package/.next/server/app/api/subagents/status/route.js +1 -1
- package/.next/server/app/api/version/route.js +1 -1
- package/.next/server/app/favicon.ico/route.js +1 -1
- package/.next/server/app/favicon.ico.meta +1 -1
- package/.next/server/app/icon.svg/route.js +1 -1
- package/.next/server/app/icon.svg.meta +1 -1
- package/.next/server/app/index.html +1 -1
- package/.next/server/app/index.meta +19 -4
- package/.next/server/app/index.rsc +33 -15
- package/.next/server/app/index.segments/__PAGE__.segment.rsc +38 -5
- package/.next/server/app/index.segments/_full.segment.rsc +33 -15
- package/.next/server/app/index.segments/_tree.segment.rsc +3 -2
- package/.next/server/app/login/page.js +5 -2
- package/.next/server/app/login/page_client-reference-manifest.js +1 -1
- package/.next/server/app/login.html +1 -1
- package/.next/server/app/login.meta +24 -5
- package/.next/server/app/login.rsc +29 -20
- package/.next/server/app/login.segments/_full.segment.rsc +29 -20
- package/.next/server/app/login.segments/_tree.segment.rsc +4 -2
- package/.next/server/app/login.segments/login/__PAGE__.segment.rsc +35 -8
- package/.next/server/app/page.js +14 -37
- package/.next/server/app/page_client-reference-manifest.js +1 -1
- package/.next/server/app/smoke/page.js +5 -6
- package/.next/server/app/smoke/page_client-reference-manifest.js +1 -1
- package/.next/server/app/smoke/session-stream/page.js +1 -2
- package/.next/server/app/smoke/session-stream/page_client-reference-manifest.js +1 -1
- package/.next/server/app/smoke/session-stream.html +1 -1
- package/.next/server/app/smoke/session-stream.meta +29 -6
- package/.next/server/app/smoke/session-stream.rsc +36 -20
- package/.next/server/app/smoke/session-stream.segments/_full.segment.rsc +36 -20
- package/.next/server/app/smoke/session-stream.segments/_tree.segment.rsc +5 -2
- package/.next/server/app/smoke/session-stream.segments/smoke/session-stream/__PAGE__.segment.rsc +43 -8
- package/.next/server/app/smoke.html +2 -2
- package/.next/server/app/smoke.meta +24 -5
- package/.next/server/app/smoke.rsc +37 -20
- package/.next/server/app/smoke.segments/_full.segment.rsc +37 -20
- package/.next/server/app/smoke.segments/_tree.segment.rsc +4 -2
- package/.next/server/app/smoke.segments/smoke/__PAGE__.segment.rsc +43 -8
- package/.next/server/app-paths-manifest.json +11 -15
- package/.next/server/chunks/1367.js +1 -1
- package/.next/server/chunks/1681.js +1 -1
- package/.next/server/chunks/1688.js +3 -3
- package/.next/server/chunks/1761.js +1 -1
- package/.next/server/chunks/1813.js +23 -1
- package/.next/server/chunks/2242.js +1 -1
- package/.next/server/chunks/2325.js +28 -28
- package/.next/server/chunks/2671.js +2 -2
- package/.next/server/chunks/2970.js +46 -0
- package/.next/server/chunks/402.js +1 -1
- package/.next/server/chunks/42.js +44 -44
- package/.next/server/chunks/4367.js +1 -1
- package/.next/server/chunks/4406.js +1 -1
- package/.next/server/chunks/4779.js +1 -0
- package/.next/server/chunks/4980.js +1 -1
- package/.next/server/chunks/5193.js +3 -3
- package/.next/server/chunks/5715.js +1 -1
- package/.next/server/chunks/5851.js +1 -1
- package/.next/server/chunks/6346.js +1 -1
- package/.next/server/chunks/6429.js +15 -15
- package/.next/server/chunks/6644.js +108 -0
- package/.next/server/chunks/707.js +1 -1
- package/.next/server/chunks/716.js +1 -1
- package/.next/server/chunks/7307.js +1 -1
- package/.next/server/chunks/7365.js +1 -1
- package/.next/server/chunks/7603.js +1 -0
- package/.next/server/chunks/7765.js +1 -1
- package/.next/server/chunks/7890.js +1 -1
- package/.next/server/chunks/8305.js +264 -0
- package/.next/server/chunks/8363.js +1 -1
- package/.next/server/chunks/8797.js +1 -1
- package/.next/server/chunks/8973.js +1 -1
- package/.next/server/chunks/9868.js +1 -1
- package/.next/server/chunks/static/media/pdf.worker.min.94f8ceaf.mjs +6 -0
- package/.next/server/functions-config-manifest.json +1 -1
- package/.next/server/middleware-build-manifest.js +1 -1
- package/.next/server/middleware-react-loadable-manifest.js +1 -1
- package/.next/server/middleware.js +54 -6
- package/.next/server/pages/404.html +1 -1
- package/.next/server/pages/500.html +1 -1
- package/.next/server/prefetch-hints.json +86 -1
- package/.next/server/preview-props.json +5 -0
- package/.next/server/server-reference-manifest.json +1 -1
- package/.next/static/chunks/{0b9a0da7-9075af772487e743.js → 0b9a0da7-373b544740862358.js} +1 -1
- package/.next/static/chunks/{1209.6d037cb2674eafa2.js → 1209.4f7491c863d512f0.js} +1 -1
- package/.next/static/chunks/2170a4aa.4301f7c49f3f0a6e.js +1 -0
- package/.next/static/chunks/2254-db22997b60e1dc27.js +1 -0
- package/.next/static/chunks/2619.8f686be8e2479c20.js +1 -0
- package/.next/static/chunks/{2623.d20fabd8e18197c6.js → 2623.a6bf38491c50cb6e.js} +2 -2
- package/.next/static/chunks/2693-421c2e9d9c92a666.js +173 -0
- package/.next/static/chunks/{2774.0811cda036dfeb94.js → 2774.ba50ba9e8b3ebf4a.js} +1 -1
- package/.next/static/chunks/2821.d15f14bd03d9d290.js +1 -0
- package/.next/static/chunks/{291-bfdfc8bcf5d0a962.js → 291-e0c3c616f67fe126.js} +1 -1
- package/.next/static/chunks/{3307.e638f7fa43f28bac.js → 3307.c87aab94f4464604.js} +1 -1
- package/.next/static/chunks/363642f4-a09fcaca7af039e5.js +1 -0
- package/.next/static/chunks/{3689.0336d97dde6c9084.js → 3689.93592a22c737d185.js} +1 -1
- package/.next/static/chunks/3794-fba3f76785a3c234.js +52 -0
- package/.next/static/chunks/{425.9a3434a28926566a.js → 425.8fe80c34648b01ec.js} +1 -1
- package/.next/static/chunks/{4453.91a357dc43c21745.js → 4453.ba05c4805425ceeb.js} +1 -1
- package/.next/static/chunks/4936-799f05324bb5c236.js +1 -0
- package/.next/static/chunks/4bd1b696-8cd12253b448cc13.js +1 -0
- package/.next/static/chunks/51fb665c.b01d5a04c27e9091.js +45 -0
- package/.next/static/chunks/{547.902a733488cfe3f7.js → 547.0f08d4931c0f04a2.js} +1 -1
- package/.next/static/chunks/{5567.540d7fc108ad6ee5.js → 5567.6674301d1337d738.js} +1 -1
- package/.next/static/chunks/5618-8aecfc54df369be5.js +22 -0
- package/.next/static/chunks/{58bb9007.1ccb6bba34b4c635.js → 58bb9007.3d4e7356b1e96b6a.js} +28 -28
- package/.next/static/chunks/6121.333d793734b9abf7.js +1 -0
- package/.next/static/chunks/6586.775a449050e0e9cc.js +138 -0
- package/.next/static/chunks/{6696.a41aec266e657d54.js → 6696.345b3cd62db13cb6.js} +1 -1
- package/.next/static/chunks/{7874.8db6929b94cdf697.js → 7874.7faccf8fab087120.js} +1 -1
- package/.next/static/chunks/8489.514938fd5e801cf7.js +36 -0
- package/.next/static/chunks/{8863.8b769013468d83d4.js → 8863.2ae457485a63aa22.js} +1 -1
- package/.next/static/chunks/90542734.6b9fbcabf095d1a0.js +1 -0
- package/.next/static/chunks/9867-1b73c62e8b604095.js +260 -0
- package/.next/static/chunks/app/_global-error/page-ebf7ae60150d40d4.js +1 -0
- package/.next/static/chunks/app/api/agent/[id]/events/route-ebf7ae60150d40d4.js +1 -0
- package/.next/static/chunks/app/api/agent/[id]/prepare/route-ebf7ae60150d40d4.js +1 -0
- package/.next/static/chunks/app/api/agent/[id]/route-ebf7ae60150d40d4.js +1 -0
- package/.next/static/chunks/app/api/agent/new/route-ebf7ae60150d40d4.js +1 -0
- package/.next/static/chunks/app/api/agent/running/events/route-ebf7ae60150d40d4.js +1 -0
- package/.next/static/chunks/app/api/agent/running/route-ebf7ae60150d40d4.js +1 -0
- package/.next/static/chunks/app/api/agent/runtime/route-ebf7ae60150d40d4.js +1 -0
- package/.next/static/chunks/app/api/apps/[id]/[[...path]]/route-ebf7ae60150d40d4.js +1 -0
- package/.next/static/chunks/app/api/apps/route-ebf7ae60150d40d4.js +1 -0
- package/.next/static/chunks/app/api/auth/all-providers/route-ebf7ae60150d40d4.js +1 -0
- package/.next/static/chunks/app/api/auth/api-key/[provider]/route-ebf7ae60150d40d4.js +1 -0
- package/.next/static/chunks/app/api/auth/login/[provider]/route-ebf7ae60150d40d4.js +1 -0
- package/.next/static/chunks/app/api/auth/login/route-ebf7ae60150d40d4.js +1 -0
- package/.next/static/chunks/app/api/auth/logout/[provider]/route-ebf7ae60150d40d4.js +1 -0
- package/.next/static/chunks/app/api/auth/providers/route-ebf7ae60150d40d4.js +1 -0
- package/.next/static/chunks/app/api/auth/status/route-ebf7ae60150d40d4.js +1 -0
- package/.next/static/chunks/app/api/auth/totp/route-ebf7ae60150d40d4.js +1 -0
- package/.next/static/chunks/app/api/debug-models/route-ebf7ae60150d40d4.js +1 -0
- package/.next/static/chunks/app/api/default-cwd/route-ebf7ae60150d40d4.js +1 -0
- package/.next/static/chunks/app/api/file-index/route-ebf7ae60150d40d4.js +1 -0
- package/.next/static/chunks/app/api/file-tree/delete/route-ebf7ae60150d40d4.js +1 -0
- package/.next/static/chunks/app/api/file-tree/mkdir/route-ebf7ae60150d40d4.js +1 -0
- package/.next/static/chunks/app/api/file-tree/rename/route-ebf7ae60150d40d4.js +1 -0
- package/.next/static/chunks/app/api/file-tree/reveal/route-ebf7ae60150d40d4.js +1 -0
- package/.next/static/chunks/app/api/file-tree/write/route-ebf7ae60150d40d4.js +1 -0
- package/.next/static/chunks/app/api/file-watch/route-ebf7ae60150d40d4.js +1 -0
- package/.next/static/chunks/app/api/files/[...path]/route-ebf7ae60150d40d4.js +1 -0
- package/.next/static/chunks/app/api/harness/route-ebf7ae60150d40d4.js +1 -0
- package/.next/static/chunks/app/api/home/route-ebf7ae60150d40d4.js +1 -0
- package/.next/static/chunks/app/api/im/cancel/route-ebf7ae60150d40d4.js +1 -0
- package/.next/static/chunks/app/api/im/gateway-status/route-ebf7ae60150d40d4.js +1 -0
- package/.next/static/chunks/app/api/im/project/route-ebf7ae60150d40d4.js +1 -0
- package/.next/static/chunks/app/api/im/projects/route-ebf7ae60150d40d4.js +1 -0
- package/.next/static/chunks/app/api/im/session-ids/route-ebf7ae60150d40d4.js +1 -0
- package/.next/static/chunks/app/api/im/turn/route-ebf7ae60150d40d4.js +1 -0
- package/.next/static/chunks/app/api/images/upload/route-ebf7ae60150d40d4.js +1 -0
- package/.next/static/chunks/app/api/internal/runtime/route-ebf7ae60150d40d4.js +1 -0
- package/.next/static/chunks/app/api/memory/dismiss/route-ebf7ae60150d40d4.js +1 -0
- package/.next/static/chunks/app/api/memory/promote/route-ebf7ae60150d40d4.js +1 -0
- package/.next/static/chunks/app/api/models/route-ebf7ae60150d40d4.js +1 -0
- package/.next/static/chunks/app/api/models-config/discover/route-ebf7ae60150d40d4.js +1 -0
- package/.next/static/chunks/app/api/models-config/route-ebf7ae60150d40d4.js +1 -0
- package/.next/static/chunks/app/api/models-config/test/route-ebf7ae60150d40d4.js +1 -0
- package/.next/static/chunks/app/api/plot-kernels/route-ebf7ae60150d40d4.js +1 -0
- package/.next/static/chunks/app/api/plot-kernels/save/route-ebf7ae60150d40d4.js +1 -0
- package/.next/static/chunks/app/api/plot-kernels/status/route-ebf7ae60150d40d4.js +1 -0
- package/.next/static/chunks/app/api/plot-kernels/stop/route-ebf7ae60150d40d4.js +1 -0
- package/.next/static/chunks/app/api/plugins/route-ebf7ae60150d40d4.js +1 -0
- package/.next/static/chunks/app/api/project-trust/route-ebf7ae60150d40d4.js +1 -0
- package/.next/static/chunks/app/api/projects/browse/route-ebf7ae60150d40d4.js +1 -0
- package/.next/static/chunks/app/api/projects/route-ebf7ae60150d40d4.js +1 -0
- package/.next/static/chunks/app/api/search/route-ebf7ae60150d40d4.js +1 -0
- package/.next/static/chunks/app/api/session-index/events/route-ebf7ae60150d40d4.js +1 -0
- package/.next/static/chunks/app/api/sessions/[id]/auto-name/route-ebf7ae60150d40d4.js +1 -0
- package/.next/static/chunks/app/api/sessions/[id]/context/route-ebf7ae60150d40d4.js +1 -0
- package/.next/static/chunks/app/api/sessions/[id]/export/route-ebf7ae60150d40d4.js +1 -0
- package/.next/static/chunks/app/api/sessions/[id]/media/route-ebf7ae60150d40d4.js +1 -0
- package/.next/static/chunks/app/api/sessions/[id]/route-ebf7ae60150d40d4.js +1 -0
- package/.next/static/chunks/app/api/sessions/[id]/shadowed/route-ebf7ae60150d40d4.js +1 -0
- package/.next/static/chunks/app/api/sessions/new/route-ebf7ae60150d40d4.js +1 -0
- package/.next/static/chunks/app/api/sessions/route-ebf7ae60150d40d4.js +1 -0
- package/.next/static/chunks/app/api/settings/route-ebf7ae60150d40d4.js +1 -0
- package/.next/static/chunks/app/api/skills/check/route-ebf7ae60150d40d4.js +1 -0
- package/.next/static/chunks/app/api/skills/install/route-ebf7ae60150d40d4.js +1 -0
- package/.next/static/chunks/app/api/skills/route-ebf7ae60150d40d4.js +1 -0
- package/.next/static/chunks/app/api/skills/search/route-ebf7ae60150d40d4.js +1 -0
- package/.next/static/chunks/app/api/skills/update/route-ebf7ae60150d40d4.js +1 -0
- package/.next/static/chunks/app/api/smoke/prompt-admission/route-ebf7ae60150d40d4.js +1 -0
- package/.next/static/chunks/app/api/soul/route-ebf7ae60150d40d4.js +1 -0
- package/.next/static/chunks/app/api/subagents/status/route-ebf7ae60150d40d4.js +1 -0
- package/.next/static/chunks/app/api/version/route-ebf7ae60150d40d4.js +1 -0
- package/.next/static/chunks/app/error-6309e3e4cdf79d40.js +3 -0
- package/.next/static/chunks/app/favicon.ico/route-ebf7ae60150d40d4.js +1 -0
- package/.next/static/chunks/app/global-error-7595c826cec2c048.js +3 -0
- package/.next/static/chunks/app/layout-31265427e43f6876.js +1 -0
- package/.next/static/chunks/app/page-2e2760a4cdaff534.js +22 -0
- package/.next/static/chunks/app/smoke/{page-32674afc320aa48b.js → page-82db33b4fdd2e0b4.js} +3 -3
- package/.next/static/chunks/framework-461b899b66554474.js +1 -0
- package/.next/static/chunks/main-4c5c62a3f03fc745.js +5 -0
- package/.next/static/chunks/main-app-a8a207cb34d209aa.js +1 -0
- package/.next/static/chunks/next/dist/client/components/builtin/app-error-ebf7ae60150d40d4.js +1 -0
- package/.next/static/chunks/next/dist/client/components/builtin/forbidden-ebf7ae60150d40d4.js +1 -0
- package/.next/static/chunks/next/dist/client/components/builtin/not-found-ebf7ae60150d40d4.js +1 -0
- package/.next/static/chunks/next/dist/client/components/builtin/unauthorized-ebf7ae60150d40d4.js +1 -0
- package/.next/static/chunks/{webpack-0d1f7348ddb20bdc.js → webpack-36fa69ae1e15e7ce.js} +1 -1
- package/.next/static/css/{738b0b1c24aae500.css → d68ecb6695873888.css} +1 -1
- package/.next/static/media/pdf.worker.min.7a62f52c.mjs +6 -0
- package/.next/static/r3Awszl0kNf_sRFX-3vDi/_buildManifest.js +1 -0
- package/bin/annovibe-im-gateway.js +98 -21
- package/bin/pi-web.js +16 -9
- package/package.json +3 -3
- package/.next/server/app/_global-error.segments/_global-error.segment.rsc +0 -5
- package/.next/server/app/_global-error.segments/_head.segment.rsc +0 -5
- package/.next/server/app/_global-error.segments/_index.segment.rsc +0 -5
- package/.next/server/app/_not-found.segments/_head.segment.rsc +0 -6
- package/.next/server/app/_not-found.segments/_index.segment.rsc +0 -7
- package/.next/server/app/_not-found.segments/_not-found.segment.rsc +0 -5
- package/.next/server/app/api/im/gateway-token/route.js +0 -1
- package/.next/server/app/api/im/gateway-token/route_client-reference-manifest.js +0 -1
- package/.next/server/app/api/sessions/[id]/kernel-state/route.js +0 -1
- package/.next/server/app/api/sessions/[id]/kernel-state/route_client-reference-manifest.js +0 -1
- package/.next/server/app/api/sessions/[id]/workbench-artifact/route.js +0 -1
- package/.next/server/app/api/sessions/[id]/workbench-artifact/route_client-reference-manifest.js +0 -1
- package/.next/server/app/api/sessions/[id]/workbench-review/route.js +0 -1
- package/.next/server/app/api/sessions/[id]/workbench-review/route_client-reference-manifest.js +0 -1
- package/.next/server/app/index.segments/_head.segment.rsc +0 -6
- package/.next/server/app/index.segments/_index.segment.rsc +0 -7
- package/.next/server/app/login.segments/_head.segment.rsc +0 -6
- package/.next/server/app/login.segments/_index.segment.rsc +0 -7
- package/.next/server/app/login.segments/login.segment.rsc +0 -5
- package/.next/server/app/smoke/session-stream.segments/_head.segment.rsc +0 -6
- package/.next/server/app/smoke/session-stream.segments/_index.segment.rsc +0 -7
- package/.next/server/app/smoke/session-stream.segments/smoke/session-stream.segment.rsc +0 -5
- package/.next/server/app/smoke/session-stream.segments/smoke.segment.rsc +0 -5
- package/.next/server/app/smoke.segments/_head.segment.rsc +0 -6
- package/.next/server/app/smoke.segments/_index.segment.rsc +0 -7
- package/.next/server/app/smoke.segments/smoke.segment.rsc +0 -5
- package/.next/server/chunks/2562.js +0 -12
- package/.next/server/chunks/4741.js +0 -18
- package/.next/server/chunks/63.js +0 -45
- package/.next/server/chunks/7303.js +0 -260
- package/.next/server/chunks/8304.js +0 -1
- package/.next/server/chunks/static/media/pdf.worker.min.c476e1a0.mjs +0 -6
- package/.next/static/chunks/2170a4aa.4213bb2183c9cdf9.js +0 -1
- package/.next/static/chunks/2254-fa3fcc88564ee18d.js +0 -1
- package/.next/static/chunks/2619.9aac8983f30c7c8a.js +0 -1
- package/.next/static/chunks/2693-52c358cf5d84b069.js +0 -173
- package/.next/static/chunks/2821.934bcf60fbdc28c6.js +0 -1
- package/.next/static/chunks/363642f4-dc35a7a659350f8e.js +0 -1
- package/.next/static/chunks/3794-123fdf632563f469.js +0 -32
- package/.next/static/chunks/4936-9558484c46c3ecc8.js +0 -1
- package/.next/static/chunks/4bd1b696-e356ca5ba0218e27.js +0 -1
- package/.next/static/chunks/51fb665c.e2bfdae35ef4d790.js +0 -45
- package/.next/static/chunks/5618-5e2e47e6ed401a75.js +0 -22
- package/.next/static/chunks/6121.f3f43f1896ea0cd9.js +0 -1
- package/.next/static/chunks/6586.8c2a88c2a55300d2.js +0 -138
- package/.next/static/chunks/8489.45f22859734f514f.js +0 -36
- package/.next/static/chunks/90542734.ecc36ada79772529.js +0 -1
- package/.next/static/chunks/9867-b1d15d9354f100e7.js +0 -260
- package/.next/static/chunks/app/_global-error/page-dcc4d4b28dc1e9eb.js +0 -1
- package/.next/static/chunks/app/api/agent/[id]/events/route-dcc4d4b28dc1e9eb.js +0 -1
- package/.next/static/chunks/app/api/agent/[id]/prepare/route-dcc4d4b28dc1e9eb.js +0 -1
- package/.next/static/chunks/app/api/agent/[id]/route-dcc4d4b28dc1e9eb.js +0 -1
- package/.next/static/chunks/app/api/agent/new/route-dcc4d4b28dc1e9eb.js +0 -1
- package/.next/static/chunks/app/api/agent/running/events/route-dcc4d4b28dc1e9eb.js +0 -1
- package/.next/static/chunks/app/api/agent/running/route-dcc4d4b28dc1e9eb.js +0 -1
- package/.next/static/chunks/app/api/agent/runtime/route-dcc4d4b28dc1e9eb.js +0 -1
- package/.next/static/chunks/app/api/apps/[id]/[[...path]]/route-dcc4d4b28dc1e9eb.js +0 -1
- package/.next/static/chunks/app/api/apps/route-dcc4d4b28dc1e9eb.js +0 -1
- package/.next/static/chunks/app/api/auth/all-providers/route-dcc4d4b28dc1e9eb.js +0 -1
- package/.next/static/chunks/app/api/auth/api-key/[provider]/route-dcc4d4b28dc1e9eb.js +0 -1
- package/.next/static/chunks/app/api/auth/login/[provider]/route-dcc4d4b28dc1e9eb.js +0 -1
- package/.next/static/chunks/app/api/auth/login/route-dcc4d4b28dc1e9eb.js +0 -1
- package/.next/static/chunks/app/api/auth/logout/[provider]/route-dcc4d4b28dc1e9eb.js +0 -1
- package/.next/static/chunks/app/api/auth/providers/route-dcc4d4b28dc1e9eb.js +0 -1
- package/.next/static/chunks/app/api/auth/status/route-dcc4d4b28dc1e9eb.js +0 -1
- package/.next/static/chunks/app/api/auth/totp/route-dcc4d4b28dc1e9eb.js +0 -1
- package/.next/static/chunks/app/api/debug-models/route-dcc4d4b28dc1e9eb.js +0 -1
- package/.next/static/chunks/app/api/default-cwd/route-dcc4d4b28dc1e9eb.js +0 -1
- package/.next/static/chunks/app/api/file-index/route-dcc4d4b28dc1e9eb.js +0 -1
- package/.next/static/chunks/app/api/file-tree/delete/route-dcc4d4b28dc1e9eb.js +0 -1
- package/.next/static/chunks/app/api/file-tree/mkdir/route-dcc4d4b28dc1e9eb.js +0 -1
- package/.next/static/chunks/app/api/file-tree/rename/route-dcc4d4b28dc1e9eb.js +0 -1
- package/.next/static/chunks/app/api/file-tree/reveal/route-dcc4d4b28dc1e9eb.js +0 -1
- package/.next/static/chunks/app/api/file-tree/write/route-dcc4d4b28dc1e9eb.js +0 -1
- package/.next/static/chunks/app/api/file-watch/route-dcc4d4b28dc1e9eb.js +0 -1
- package/.next/static/chunks/app/api/files/[...path]/route-dcc4d4b28dc1e9eb.js +0 -1
- package/.next/static/chunks/app/api/harness/route-dcc4d4b28dc1e9eb.js +0 -1
- package/.next/static/chunks/app/api/home/route-dcc4d4b28dc1e9eb.js +0 -1
- package/.next/static/chunks/app/api/im/cancel/route-dcc4d4b28dc1e9eb.js +0 -1
- package/.next/static/chunks/app/api/im/gateway-status/route-dcc4d4b28dc1e9eb.js +0 -1
- package/.next/static/chunks/app/api/im/gateway-token/route-dcc4d4b28dc1e9eb.js +0 -1
- package/.next/static/chunks/app/api/im/project/route-dcc4d4b28dc1e9eb.js +0 -1
- package/.next/static/chunks/app/api/im/projects/route-dcc4d4b28dc1e9eb.js +0 -1
- package/.next/static/chunks/app/api/im/session-ids/route-dcc4d4b28dc1e9eb.js +0 -1
- package/.next/static/chunks/app/api/im/turn/route-dcc4d4b28dc1e9eb.js +0 -1
- package/.next/static/chunks/app/api/images/upload/route-dcc4d4b28dc1e9eb.js +0 -1
- package/.next/static/chunks/app/api/internal/runtime/route-dcc4d4b28dc1e9eb.js +0 -1
- package/.next/static/chunks/app/api/memory/dismiss/route-dcc4d4b28dc1e9eb.js +0 -1
- package/.next/static/chunks/app/api/memory/promote/route-dcc4d4b28dc1e9eb.js +0 -1
- package/.next/static/chunks/app/api/models/route-dcc4d4b28dc1e9eb.js +0 -1
- package/.next/static/chunks/app/api/models-config/discover/route-dcc4d4b28dc1e9eb.js +0 -1
- package/.next/static/chunks/app/api/models-config/route-dcc4d4b28dc1e9eb.js +0 -1
- package/.next/static/chunks/app/api/models-config/test/route-dcc4d4b28dc1e9eb.js +0 -1
- package/.next/static/chunks/app/api/plot-kernels/route-dcc4d4b28dc1e9eb.js +0 -1
- package/.next/static/chunks/app/api/plot-kernels/save/route-dcc4d4b28dc1e9eb.js +0 -1
- package/.next/static/chunks/app/api/plot-kernels/status/route-dcc4d4b28dc1e9eb.js +0 -1
- package/.next/static/chunks/app/api/plot-kernels/stop/route-dcc4d4b28dc1e9eb.js +0 -1
- package/.next/static/chunks/app/api/plugins/route-dcc4d4b28dc1e9eb.js +0 -1
- package/.next/static/chunks/app/api/project-trust/route-dcc4d4b28dc1e9eb.js +0 -1
- package/.next/static/chunks/app/api/projects/browse/route-dcc4d4b28dc1e9eb.js +0 -1
- package/.next/static/chunks/app/api/projects/route-dcc4d4b28dc1e9eb.js +0 -1
- package/.next/static/chunks/app/api/search/route-dcc4d4b28dc1e9eb.js +0 -1
- package/.next/static/chunks/app/api/session-index/events/route-dcc4d4b28dc1e9eb.js +0 -1
- package/.next/static/chunks/app/api/sessions/[id]/auto-name/route-dcc4d4b28dc1e9eb.js +0 -1
- package/.next/static/chunks/app/api/sessions/[id]/context/route-dcc4d4b28dc1e9eb.js +0 -1
- package/.next/static/chunks/app/api/sessions/[id]/export/route-dcc4d4b28dc1e9eb.js +0 -1
- package/.next/static/chunks/app/api/sessions/[id]/kernel-state/route-dcc4d4b28dc1e9eb.js +0 -1
- package/.next/static/chunks/app/api/sessions/[id]/media/route-dcc4d4b28dc1e9eb.js +0 -1
- package/.next/static/chunks/app/api/sessions/[id]/route-dcc4d4b28dc1e9eb.js +0 -1
- package/.next/static/chunks/app/api/sessions/[id]/shadowed/route-dcc4d4b28dc1e9eb.js +0 -1
- package/.next/static/chunks/app/api/sessions/[id]/workbench-artifact/route-dcc4d4b28dc1e9eb.js +0 -1
- package/.next/static/chunks/app/api/sessions/[id]/workbench-review/route-dcc4d4b28dc1e9eb.js +0 -1
- package/.next/static/chunks/app/api/sessions/new/route-dcc4d4b28dc1e9eb.js +0 -1
- package/.next/static/chunks/app/api/sessions/route-dcc4d4b28dc1e9eb.js +0 -1
- package/.next/static/chunks/app/api/settings/route-dcc4d4b28dc1e9eb.js +0 -1
- package/.next/static/chunks/app/api/skills/check/route-dcc4d4b28dc1e9eb.js +0 -1
- package/.next/static/chunks/app/api/skills/install/route-dcc4d4b28dc1e9eb.js +0 -1
- package/.next/static/chunks/app/api/skills/route-dcc4d4b28dc1e9eb.js +0 -1
- package/.next/static/chunks/app/api/skills/search/route-dcc4d4b28dc1e9eb.js +0 -1
- package/.next/static/chunks/app/api/skills/update/route-dcc4d4b28dc1e9eb.js +0 -1
- package/.next/static/chunks/app/api/smoke/prompt-admission/route-dcc4d4b28dc1e9eb.js +0 -1
- package/.next/static/chunks/app/api/soul/route-dcc4d4b28dc1e9eb.js +0 -1
- package/.next/static/chunks/app/api/subagents/status/route-dcc4d4b28dc1e9eb.js +0 -1
- package/.next/static/chunks/app/api/version/route-dcc4d4b28dc1e9eb.js +0 -1
- package/.next/static/chunks/app/favicon.ico/route-dcc4d4b28dc1e9eb.js +0 -1
- package/.next/static/chunks/app/layout-101c4ccdf12880f0.js +0 -1
- package/.next/static/chunks/app/page-703d91d8bff67f70.js +0 -44
- package/.next/static/chunks/framework-594babcea68f40f6.js +0 -1
- package/.next/static/chunks/main-0371fd3122de9512.js +0 -5
- package/.next/static/chunks/main-app-8d81a93b58bb990f.js +0 -1
- package/.next/static/chunks/next/dist/client/components/builtin/app-error-dcc4d4b28dc1e9eb.js +0 -1
- package/.next/static/chunks/next/dist/client/components/builtin/forbidden-dcc4d4b28dc1e9eb.js +0 -1
- package/.next/static/chunks/next/dist/client/components/builtin/global-error-a7f3f044c72f9137.js +0 -1
- package/.next/static/chunks/next/dist/client/components/builtin/not-found-dcc4d4b28dc1e9eb.js +0 -1
- package/.next/static/chunks/next/dist/client/components/builtin/unauthorized-dcc4d4b28dc1e9eb.js +0 -1
- package/.next/static/media/pdf.worker.min.29aaf158.mjs +0 -6
- package/.next/static/zeWki1Z47rqBkR2ph5H6N/_buildManifest.js +0 -1
- /package/.next/static/{zeWki1Z47rqBkR2ph5H6N → r3Awszl0kNf_sRFX-3vDi}/_ssgManifest.js +0 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
self.__BUILD_MANIFEST={__rewrites:{afterFiles:[],beforeFiles:[],fallback:[]},__routerFilterStatic:{numItems:65,errorRate:1e-4,numBits:1247,numHashes:14,bitArray:[0,0,0,0,1,1,0,0,1,0,1,1,0,1,1,1,1,1,1,1,0,1,1,1,0,1,0,0,0,0,1,0,0,0,1,1,1,1,0,0,0,0,1,0,0,1,0,0,0,1,1,1,0,0,0,0,1,1,0,1,0,0,1,0,1,1,1,1,1,1,1,0,1,0,1,1,0,0,1,1,0,0,0,1,1,1,1,0,0,1,1,0,1,0,1,0,0,0,0,0,0,0,1,1,0,1,1,1,1,0,0,0,0,1,1,0,1,1,1,0,1,0,0,1,0,1,1,0,1,1,1,1,0,0,1,1,1,1,0,0,1,1,1,1,1,0,1,1,1,0,1,0,0,0,0,0,1,0,0,1,1,1,1,1,0,1,0,1,1,0,1,0,0,0,1,1,1,0,1,0,0,0,0,1,1,1,1,1,1,0,0,0,1,0,1,1,0,1,0,0,1,0,1,1,1,1,0,0,1,0,1,1,0,0,1,0,0,1,0,0,1,0,1,0,0,0,0,0,0,0,1,1,1,1,0,0,1,0,1,0,0,0,0,0,0,0,0,0,0,0,0,1,1,1,1,0,1,0,0,1,1,1,1,1,1,0,0,0,1,0,1,1,1,1,0,1,0,1,1,0,1,0,0,0,1,1,0,1,1,0,0,1,1,0,0,0,1,1,1,0,1,1,1,0,0,1,1,1,0,1,0,1,1,0,0,1,1,0,0,1,1,1,1,0,1,1,1,1,0,1,0,0,1,0,1,0,0,1,0,1,1,1,1,0,1,1,1,1,1,1,1,0,1,0,1,0,1,1,1,0,1,0,0,0,1,1,1,1,0,1,1,1,1,0,0,1,1,1,1,1,0,0,0,1,0,0,1,0,1,1,0,1,1,1,1,0,1,1,1,1,0,1,0,1,0,1,1,1,0,1,0,0,1,1,0,0,0,1,1,1,1,1,0,0,1,1,0,1,0,1,0,0,1,0,0,1,1,0,1,1,0,1,0,0,0,1,1,0,0,0,1,1,0,0,0,1,1,1,1,0,1,0,0,0,1,0,0,1,1,1,0,0,0,0,0,1,1,0,0,0,0,0,0,1,1,0,1,1,1,1,1,0,0,1,1,0,1,1,0,1,0,0,1,0,1,1,1,0,0,1,0,1,0,1,1,0,1,1,1,0,1,0,0,0,0,1,0,0,0,1,1,0,0,0,0,1,0,1,1,1,0,0,0,0,1,1,1,0,1,0,0,0,1,0,1,1,1,1,1,1,0,1,1,1,0,0,1,1,0,1,1,0,0,1,0,1,0,0,1,1,1,1,1,1,1,1,1,0,1,0,0,1,0,1,0,1,0,1,1,1,1,0,0,0,0,1,0,0,1,1,0,0,0,0,1,1,0,0,1,1,0,1,0,1,1,1,0,1,0,0,0,0,0,1,0,1,1,0,0,0,0,1,1,1,1,0,1,0,0,0,0,1,0,1,0,1,0,0,1,0,1,1,1,1,0,1,1,1,1,1,1,1,1,0,1,0,0,1,1,0,1,1,1,1,0,1,1,0,1,1,1,1,0,0,0,0,0,1,1,0,0,1,1,1,1,1,1,1,0,1,0,0,1,1,0,0,1,0,1,1,1,0,1,0,1,0,1,1,1,0,0,0,1,1,0,1,0,0,0,1,0,0,0,0,1,1,1,0,1,0,0,0,1,1,1,1,0,1,0,1,0,1,1,0,1,0,0,1,1,1,1,0,1,1,0,1,1,1,1,1,0,0,0,1,1,0,1,0,1,0,0,0,1,0,1,1,0,1,1,1,0,0,1,1,0,1,0,1,0,0,1,1,1,1,0,0,1,1,1,1,0,0,0,1,1,0,1,1,0,1,0,0,0,1,1,1,1,1,1,1,0,0,1,1,1,1,0,0,0,1,1,0,0,1,0,1,1,0,0,0,0,0,1,0,0,0,0,0,0,1,0,1,0,1,1,0,1,1,1,1,1,0,0,0,0,1,0,0,0,1,0,0,1,0,0,0,1,1,0,0,0,0,0,1,0,0,1,1,1,0,0,1,1,0,1,1,1,1,1,0,1,1,1,1,0,1,1,0,0,0,1,0,1,1,0,1,0,0,1,0,1,1,1,0,1,0,1,0,0,1,1,0,1,1,0,1,1,0,1,1,1,1,1,1,0,1,1,1,1,0,0,1,0,0,0,1,0,1,1,1,0,0,0,1,1,0,0,0,1,0,1,1,0,1,1,1,0,0,0,1,1,0,0,0,1,1,1,0,1,0,0,0,1,1,0,1,1,0,1,1,0,1,1,0,1,1,0,1,0,1,0,0,1,1,0,1,0,0,1,0,1,0,0,1,1,0,1,1,0,0,0,0,0,1,0,1,1,1,0,0,1,0,0,1,0,1,0,1,0,1,0,0,1,0,1,1,1,1,0,1,0,1,1,0,1,0,0,1,1,0,0,0,1,0,1,1,0,1,1,0,1,1,0,0,0,0,1,0,1,0,1,1,1,1,0,0,0,0,1,1,0,1,1,0,0,0,1,0,0,0,1,0,0,1,1,1,1,0,0,0,1,1,1,0,0,0,1,1,0,0,1,1,1,1,1,1,1,1,0,1,0,1,0,0,0,0,0,0,1,0,1,1,0,0,0,0,0,0,0,1,0,1,0,0,0,1,1,1,1,0,1,1,1,1,0,1,1,0,1,1,1,1,1,1,0,0,1,0,0,0,0,1,0,1,0,0,1,0,0,1,1,0,0,0,0,1,1,0,1,0,0,1,1,0,1,1,1,0,1,0,0,0,0,0,1,1,0]},__routerFilterDynamic:{numItems:7,errorRate:1e-4,numBits:135,numHashes:14,bitArray:[0,1,1,0,0,1,0,0,0,0,1,0,0,1,0,1,0,0,0,0,1,0,1,0,1,1,0,0,1,0,0,0,1,1,1,1,1,0,1,1,1,1,1,1,0,1,1,1,1,1,1,1,1,1,0,1,1,1,1,0,1,0,0,1,1,1,1,0,1,1,1,1,1,0,0,0,0,1,0,0,1,0,1,0,1,0,1,1,0,1,1,0,0,1,0,0,0,0,1,0,0,0,0,0,0,0,1,0,1,1,1,1,0,1,1,0,0,0,0,0,1,0,0,1,1,1,1,1,0,0,1,0,1,0,1]},sortedPages:["/_app"]},self.__BUILD_MANIFEST_CB&&self.__BUILD_MANIFEST_CB();
|
|
@@ -64,7 +64,11 @@ function envFirst(...names) {
|
|
|
64
64
|
}
|
|
65
65
|
|
|
66
66
|
function getAgentDir() {
|
|
67
|
-
|
|
67
|
+
// Must mirror the server (pi's getAgentDir + lib/*): PI_CODING_AGENT_DIR is the
|
|
68
|
+
// documented relocation switch, PI_AGENT_DIR is the legacy name this file used
|
|
69
|
+
// to read. Diverging here splits gateway.json between two directories and makes
|
|
70
|
+
// every IM request fail with 401.
|
|
71
|
+
return envFirst("PI_CODING_AGENT_DIR", "PI_AGENT_DIR") ?? path.join(os.homedir(), ".pi", "agent");
|
|
68
72
|
}
|
|
69
73
|
|
|
70
74
|
function readAnnovibeState() {
|
|
@@ -105,9 +109,12 @@ function readGatewayToken() {
|
|
|
105
109
|
|
|
106
110
|
function writeGatewayState(patch) {
|
|
107
111
|
const statePath = getGatewayStatePath();
|
|
108
|
-
try { fs.mkdirSync(path.dirname(statePath), { recursive: true }); } catch {}
|
|
112
|
+
try { fs.mkdirSync(path.dirname(statePath), { recursive: true, mode: 0o700 }); } catch {}
|
|
109
113
|
const state = readGatewayState();
|
|
110
|
-
|
|
114
|
+
const tmpPath = `${statePath}.${process.pid}.tmp`;
|
|
115
|
+
fs.writeFileSync(tmpPath, JSON.stringify({ ...state, ...patch }, null, 2), { encoding: "utf8", mode: 0o600 });
|
|
116
|
+
fs.renameSync(tmpPath, statePath);
|
|
117
|
+
try { fs.chmodSync(statePath, 0o600); } catch {}
|
|
111
118
|
}
|
|
112
119
|
|
|
113
120
|
// ── HTTP helpers ────────────────────────────────────────────────────
|
|
@@ -116,11 +123,11 @@ function getToken() {
|
|
|
116
123
|
return process.env.ANNOVIBE_GATEWAY_TOKEN?.trim() || readGatewayToken();
|
|
117
124
|
}
|
|
118
125
|
|
|
119
|
-
function requestJsonRaw(method, pathname, body
|
|
126
|
+
function requestJsonRaw(method, pathname, body) {
|
|
120
127
|
const url = new URL(pathname, getBaseUrl());
|
|
121
128
|
const payload = body === undefined ? undefined : JSON.stringify(body);
|
|
122
129
|
const lib = url.protocol === "https:" ? https : http;
|
|
123
|
-
const token =
|
|
130
|
+
const token = getToken();
|
|
124
131
|
|
|
125
132
|
return new Promise((resolve, reject) => {
|
|
126
133
|
const req = lib.request(
|
|
@@ -163,26 +170,14 @@ function requestJson(method, pathname, body) {
|
|
|
163
170
|
|
|
164
171
|
function formatImApiError(statusCode, message) {
|
|
165
172
|
if (statusCode === 401) {
|
|
166
|
-
return `${message}.
|
|
173
|
+
return `${message}. The gateway token in ~/.pi/agent/im/gateway.json does not match the one annovibe is using; restart \`annovibe restart\` to resync.`;
|
|
167
174
|
}
|
|
168
175
|
if (statusCode === 403) {
|
|
169
|
-
return `${message}.
|
|
176
|
+
return `${message}. Request rejected by annovibe's host/origin check.`;
|
|
170
177
|
}
|
|
171
178
|
return message;
|
|
172
179
|
}
|
|
173
180
|
|
|
174
|
-
async function syncGatewayTokenFromServer() {
|
|
175
|
-
try {
|
|
176
|
-
const payload = await requestJsonRaw("GET", "/api/im/gateway-token", undefined, { skipAuth: true });
|
|
177
|
-
const serverToken = typeof payload.token === "string" ? payload.token.trim() : "";
|
|
178
|
-
if (!serverToken || readGatewayToken() === serverToken) return;
|
|
179
|
-
writeGatewayState({ token: serverToken });
|
|
180
|
-
console.error("[im] synced gateway token from annovibe server");
|
|
181
|
-
} catch (error) {
|
|
182
|
-
console.error(`[im] could not sync gateway token: ${String(error)}`);
|
|
183
|
-
}
|
|
184
|
-
}
|
|
185
|
-
|
|
186
181
|
/**
|
|
187
182
|
* Consume SSE turn stream, yielding deltas and status changes to callbacks.
|
|
188
183
|
*/
|
|
@@ -647,6 +642,72 @@ class ProjectWeComBridge {
|
|
|
647
642
|
}
|
|
648
643
|
}
|
|
649
644
|
|
|
645
|
+
// ── Single-instance lock ────────────────────────────────────────────
|
|
646
|
+
// Two gateways would fight over the same WeCom bot connection and clobber
|
|
647
|
+
// each other's state. `gateway.json`'s pid is written per start and goes stale,
|
|
648
|
+
// so the lock is a separate file created with O_EXCL plus a liveness + cmdline
|
|
649
|
+
// check on the recorded pid.
|
|
650
|
+
|
|
651
|
+
function getGatewayLockPath() {
|
|
652
|
+
return path.join(getAgentDir(), "im", "gateway.lock");
|
|
653
|
+
}
|
|
654
|
+
|
|
655
|
+
function readLockPid(lockPath) {
|
|
656
|
+
try {
|
|
657
|
+
const raw = JSON.parse(fs.readFileSync(lockPath, "utf8"));
|
|
658
|
+
const pid = Number(raw && raw.pid);
|
|
659
|
+
return Number.isInteger(pid) && pid > 0 ? pid : null;
|
|
660
|
+
} catch {
|
|
661
|
+
return null;
|
|
662
|
+
}
|
|
663
|
+
}
|
|
664
|
+
|
|
665
|
+
function isLiveGatewayPid(pid) {
|
|
666
|
+
if (!Number.isInteger(pid) || pid <= 0) return false;
|
|
667
|
+
try { process.kill(pid, 0); } catch { return false; }
|
|
668
|
+
|
|
669
|
+
let cmdline = "";
|
|
670
|
+
try { cmdline = fs.readFileSync(`/proc/${pid}/cmdline`, "utf8").replace(/\0/g, " "); } catch {}
|
|
671
|
+
if (!cmdline.trim()) {
|
|
672
|
+
try {
|
|
673
|
+
cmdline = require("child_process").execFileSync("ps", ["-p", String(pid), "-o", "command="], { encoding: "utf8" });
|
|
674
|
+
} catch {}
|
|
675
|
+
}
|
|
676
|
+
// Unreadable cmdline is rare; err on the side of "alive" so a double connect
|
|
677
|
+
// cannot happen silently.
|
|
678
|
+
if (!cmdline.trim()) return true;
|
|
679
|
+
return /annovibe-im-gateway|im-gateway/i.test(cmdline);
|
|
680
|
+
}
|
|
681
|
+
|
|
682
|
+
function acquireGatewayLock() {
|
|
683
|
+
const lockPath = getGatewayLockPath();
|
|
684
|
+
fs.mkdirSync(path.dirname(lockPath), { recursive: true, mode: 0o700 });
|
|
685
|
+
for (let attempt = 0; attempt < 2; attempt += 1) {
|
|
686
|
+
try {
|
|
687
|
+
const fd = fs.openSync(lockPath, "wx", 0o600);
|
|
688
|
+
try {
|
|
689
|
+
fs.writeSync(fd, JSON.stringify({ pid: process.pid, startedAt: new Date().toISOString() }));
|
|
690
|
+
} finally {
|
|
691
|
+
fs.closeSync(fd);
|
|
692
|
+
}
|
|
693
|
+
return { ok: true, lockPath };
|
|
694
|
+
} catch (error) {
|
|
695
|
+
if (error.code !== "EEXIST") throw error;
|
|
696
|
+
const holder = readLockPid(lockPath);
|
|
697
|
+
if (holder && isLiveGatewayPid(holder)) return { ok: false, holder };
|
|
698
|
+
try { fs.unlinkSync(lockPath); } catch {}
|
|
699
|
+
}
|
|
700
|
+
}
|
|
701
|
+
return { ok: false, holder: readLockPid(lockPath) };
|
|
702
|
+
}
|
|
703
|
+
|
|
704
|
+
function releaseGatewayLock() {
|
|
705
|
+
try {
|
|
706
|
+
const lockPath = getGatewayLockPath();
|
|
707
|
+
if (readLockPid(lockPath) === process.pid) fs.unlinkSync(lockPath);
|
|
708
|
+
} catch {}
|
|
709
|
+
}
|
|
710
|
+
|
|
650
711
|
class ImGateway {
|
|
651
712
|
constructor() {
|
|
652
713
|
this.bridges = new Map();
|
|
@@ -657,6 +718,16 @@ class ImGateway {
|
|
|
657
718
|
async start() {
|
|
658
719
|
console.error("[im] Annovibe IM Gateway starting...");
|
|
659
720
|
|
|
721
|
+
const lock = acquireGatewayLock();
|
|
722
|
+
if (!lock.ok) {
|
|
723
|
+
if (process.env.ANNOVIBE_IM_GATEWAY_FORCE === "1") {
|
|
724
|
+
console.error(`[im] another gateway (pid ${lock.holder}) looks alive; starting anyway (ANNOVIBE_IM_GATEWAY_FORCE=1)`);
|
|
725
|
+
} else {
|
|
726
|
+
console.error(`[im] another gateway is already running (pid ${lock.holder}); exiting. Set ANNOVIBE_IM_GATEWAY_FORCE=1 to override.`);
|
|
727
|
+
process.exit(1);
|
|
728
|
+
}
|
|
729
|
+
}
|
|
730
|
+
|
|
660
731
|
// Write gateway state
|
|
661
732
|
const token = readGatewayToken() || crypto.randomBytes(32).toString("hex");
|
|
662
733
|
writeGatewayState({ token, startedAt: new Date().toISOString(), pid: process.pid });
|
|
@@ -664,7 +735,8 @@ class ImGateway {
|
|
|
664
735
|
console.error(`[im] Gateway token: ${token.slice(0, 8)}...`);
|
|
665
736
|
console.error(`[im] Annovibe port: ${getAnnovibePort()}`);
|
|
666
737
|
|
|
667
|
-
|
|
738
|
+
// No HTTP token sync: the token lives in ~/.pi/agent/im/gateway.json, which
|
|
739
|
+
// both this process and the annovibe server read on every request.
|
|
668
740
|
|
|
669
741
|
// Start config poll
|
|
670
742
|
await this.refreshProjects();
|
|
@@ -710,9 +782,13 @@ class ImGateway {
|
|
|
710
782
|
}
|
|
711
783
|
this.bridges.clear();
|
|
712
784
|
|
|
785
|
+
// Keep the token: it is a shared secret, not a liveness marker. Clearing it
|
|
786
|
+
// here made every IM request fail with 401 until someone reopened the IM
|
|
787
|
+
// settings panel (which is the only place that regenerates it).
|
|
713
788
|
try {
|
|
714
|
-
writeGatewayState({
|
|
789
|
+
writeGatewayState({ pid: 0, stoppedAt: new Date().toISOString() });
|
|
715
790
|
} catch {}
|
|
791
|
+
releaseGatewayLock();
|
|
716
792
|
}
|
|
717
793
|
}
|
|
718
794
|
|
|
@@ -722,6 +798,7 @@ const gateway = new ImGateway();
|
|
|
722
798
|
|
|
723
799
|
process.on("SIGINT", () => { void gateway.stop().then(() => process.exit(0)); });
|
|
724
800
|
process.on("SIGTERM", () => { void gateway.stop().then(() => process.exit(0)); });
|
|
801
|
+
process.on("exit", releaseGatewayLock);
|
|
725
802
|
|
|
726
803
|
void gateway.start();
|
|
727
804
|
|
package/bin/pi-web.js
CHANGED
|
@@ -22,6 +22,19 @@ const VERSION = pkg.version;
|
|
|
22
22
|
const PKG_NAME = pkg.name;
|
|
23
23
|
const agentDir = process.env.PI_CODING_AGENT_DIR ?? path.join(os.homedir(), ".pi", "agent");
|
|
24
24
|
const authFile = path.join(agentDir, "web-auth.json");
|
|
25
|
+
/**
|
|
26
|
+
* web-auth.json carries the bcrypt hash (+ TOTP secret once enabled). Write it
|
|
27
|
+
* atomically with 0600: the umask must not decide who can read it, and a crash
|
|
28
|
+
* mid-write must not leave a truncated file behind (that would disable auth).
|
|
29
|
+
*/
|
|
30
|
+
function writeAuthFile(payload) {
|
|
31
|
+
const dir = path.dirname(authFile);
|
|
32
|
+
if (!fs.existsSync(dir)) fs.mkdirSync(dir, { recursive: true, mode: 0o700 });
|
|
33
|
+
const tmpPath = `${authFile}.${process.pid}.tmp`;
|
|
34
|
+
fs.writeFileSync(tmpPath, JSON.stringify(payload, null, 2), { encoding: "utf8", mode: 0o600 });
|
|
35
|
+
fs.renameSync(tmpPath, authFile);
|
|
36
|
+
try { fs.chmodSync(authFile, 0o600); } catch { /* best effort on odd filesystems */ }
|
|
37
|
+
}
|
|
25
38
|
const stateFile = path.join(agentDir, "annovibe.json");
|
|
26
39
|
const legacyStateFile = path.join(agentDir, "pidex.json");
|
|
27
40
|
const logFile = path.join(agentDir, "annovibe.log");
|
|
@@ -880,9 +893,7 @@ if (firstPos === "passwd") {
|
|
|
880
893
|
process.exit(0);
|
|
881
894
|
}
|
|
882
895
|
const hash = bcrypt.hashSync(pw, 10);
|
|
883
|
-
|
|
884
|
-
if (!fs.existsSync(dir)) fs.mkdirSync(dir, { recursive: true });
|
|
885
|
-
fs.writeFileSync(authFile, JSON.stringify({ passwordHash: hash, enabled: true }, null, 2));
|
|
896
|
+
writeAuthFile({ passwordHash: hash, enabled: true });
|
|
886
897
|
console.log(exists ? " ✅ Password changed.\n" : " ✅ Password set. Restart won't prompt.\n");
|
|
887
898
|
rl.close();
|
|
888
899
|
process.exit(0);
|
|
@@ -935,9 +946,7 @@ function promptPassword() {
|
|
|
935
946
|
return;
|
|
936
947
|
}
|
|
937
948
|
const hash = bcrypt.hashSync(pw1, 10);
|
|
938
|
-
|
|
939
|
-
if (!fs.existsSync(dir)) fs.mkdirSync(dir, { recursive: true });
|
|
940
|
-
fs.writeFileSync(authFile, JSON.stringify({ passwordHash: hash, enabled: true }, null, 2));
|
|
949
|
+
writeAuthFile({ passwordHash: hash, enabled: true });
|
|
941
950
|
console.log(" ✅ Password set. Restart won't prompt.\n");
|
|
942
951
|
rl.close();
|
|
943
952
|
resolve(true);
|
|
@@ -950,9 +959,7 @@ async function maybeSetupAuth() {
|
|
|
950
959
|
const password = process.env.ANNOVIBE_PASSWORD ?? process.env.PIDEX_PASSWORD;
|
|
951
960
|
if (password) {
|
|
952
961
|
const hash = bcrypt.hashSync(password, 10);
|
|
953
|
-
|
|
954
|
-
if (!fs.existsSync(dir)) fs.mkdirSync(dir, { recursive: true });
|
|
955
|
-
fs.writeFileSync(authFile, JSON.stringify({ passwordHash: hash, enabled: true }, null, 2));
|
|
962
|
+
writeAuthFile({ passwordHash: hash, enabled: true });
|
|
956
963
|
console.log(` 🔐 Password set from ${process.env.ANNOVIBE_PASSWORD ? "ANNOVIBE_PASSWORD" : "PIDEX_PASSWORD"} env var.`);
|
|
957
964
|
return;
|
|
958
965
|
}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@seqyuan/annovibe",
|
|
3
|
-
"version": "0.8.
|
|
3
|
+
"version": "0.8.138",
|
|
4
4
|
"description": "AI-native bioinformatics workspace by Annoroad",
|
|
5
5
|
"license": "MIT",
|
|
6
6
|
"bin": {
|
|
@@ -41,7 +41,7 @@
|
|
|
41
41
|
"@seqyuan/kernel-lite-core": "^0.2.1",
|
|
42
42
|
"@seqyuan/pi-kernel-plot": "^0.2.1",
|
|
43
43
|
"bcryptjs": "^3.0.3",
|
|
44
|
-
"next": "16.
|
|
44
|
+
"next": "16.4.3",
|
|
45
45
|
"otplib": "^13.4.1",
|
|
46
46
|
"qrcode": "^1.5.4",
|
|
47
47
|
"react": "^19.2.4",
|
|
@@ -80,7 +80,7 @@
|
|
|
80
80
|
"codemirror": "^6.0.2",
|
|
81
81
|
"docx-preview": "^0.3.7",
|
|
82
82
|
"eslint": "^9",
|
|
83
|
-
"eslint-config-next": "16.
|
|
83
|
+
"eslint-config-next": "16.4.3",
|
|
84
84
|
"jszip": "^3.10.1",
|
|
85
85
|
"mermaid": "^11.15.0",
|
|
86
86
|
"pdfjs-dist": "^5.7.284",
|
|
@@ -1,5 +0,0 @@
|
|
|
1
|
-
1:"$Sreact.fragment"
|
|
2
|
-
2:I[57121,[],""]
|
|
3
|
-
3:I[74581,[],""]
|
|
4
|
-
4:[]
|
|
5
|
-
0:{"rsc":["$","$1","c",{"children":[null,["$","$L2",null,{"parallelRouterKey":"children","template":["$","$L3",null,{}]}]]}],"isPartial":false,"staleTime":300,"varyParams":"$W4","buildId":"zeWki1Z47rqBkR2ph5H6N"}
|
|
@@ -1,5 +0,0 @@
|
|
|
1
|
-
1:"$Sreact.fragment"
|
|
2
|
-
2:I[90484,[],"ViewportBoundary"]
|
|
3
|
-
3:I[90484,[],"MetadataBoundary"]
|
|
4
|
-
4:"$Sreact.suspense"
|
|
5
|
-
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":[]}]}]}],["$","meta",null,{"name":"next-size-adjust","content":""}]]}],"isPartial":false,"staleTime":300,"varyParams":null,"buildId":"zeWki1Z47rqBkR2ph5H6N"}
|
|
@@ -1,5 +0,0 @@
|
|
|
1
|
-
1:"$Sreact.fragment"
|
|
2
|
-
2:I[57121,[],""]
|
|
3
|
-
3:I[74581,[],""]
|
|
4
|
-
4:[]
|
|
5
|
-
0:{"rsc":["$","$1","c",{"children":[null,["$","$L2",null,{"parallelRouterKey":"children","template":["$","$L3",null,{}]}]]}],"isPartial":false,"staleTime":300,"varyParams":"$W4","buildId":"zeWki1Z47rqBkR2ph5H6N"}
|
|
@@ -1,6 +0,0 @@
|
|
|
1
|
-
1:"$Sreact.fragment"
|
|
2
|
-
2:I[90484,[],"ViewportBoundary"]
|
|
3
|
-
3:I[90484,[],"MetadataBoundary"]
|
|
4
|
-
4:"$Sreact.suspense"
|
|
5
|
-
5:I[86869,[],"IconMark"]
|
|
6
|
-
0:{"rsc":["$","$1","h",{"children":[["$","meta",null,{"name":"robots","content":"noindex"}],["$","$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":[["$","title","0",{"children":"AnnoVibe"}],["$","meta","1",{"name":"description","content":"AI-native bioinformatics workspace by Annoroad"}],["$","link","2",{"rel":"shortcut icon","href":"/icon.svg","type":"image/svg+xml"}],["$","link","3",{"rel":"icon","href":"/icon.svg","type":"image/svg+xml"}],["$","$L5","4",{}]]}]}]}],["$","meta",null,{"name":"next-size-adjust","content":""}]]}],"isPartial":false,"staleTime":300,"varyParams":null,"buildId":"zeWki1Z47rqBkR2ph5H6N"}
|
|
@@ -1,7 +0,0 @@
|
|
|
1
|
-
1:"$Sreact.fragment"
|
|
2
|
-
2:I[42593,["7177","static/chunks/app/layout-101c4ccdf12880f0.js"],""]
|
|
3
|
-
3:I[57121,[],""]
|
|
4
|
-
4:I[74581,[],""]
|
|
5
|
-
:HL["/_next/static/css/9bcd6051db4f8890.css","style"]
|
|
6
|
-
:HL["/_next/static/css/738b0b1c24aae500.css","style"]
|
|
7
|
-
0:{"rsc":["$","$1","c",{"children":[[["$","link","0",{"rel":"stylesheet","href":"/_next/static/css/9bcd6051db4f8890.css","precedence":"next"}],["$","link","1",{"rel":"stylesheet","href":"/_next/static/css/738b0b1c24aae500.css","precedence":"next"}]],["$","html",null,{"lang":"en","className":"__variable_9e44ca","suppressHydrationWarning":true,"children":[["$","head",null,{"children":["$","$L2",null,{"id":"theme-init","strategy":"beforeInteractive","children":"(function(){try{var t=localStorage.getItem(\"pi-theme\");if(t===\"dark\")document.documentElement.classList.add(\"dark\")}catch(e){}})();"}]}],["$","body",null,{"style":{"height":"100dvh","display":"flex","flexDirection":"column"},"children":["$","$L3",null,{"parallelRouterKey":"children","template":["$","$L4",null,{}]}]}]]}]]}],"isPartial":false,"staleTime":300,"varyParams":null,"buildId":"zeWki1Z47rqBkR2ph5H6N"}
|
|
@@ -1,5 +0,0 @@
|
|
|
1
|
-
1:"$Sreact.fragment"
|
|
2
|
-
2:I[57121,[],""]
|
|
3
|
-
3:I[74581,[],""]
|
|
4
|
-
4:[]
|
|
5
|
-
0:{"rsc":["$","$1","c",{"children":[null,["$","$L2",null,{"parallelRouterKey":"children","template":["$","$L3",null,{}]}]]}],"isPartial":false,"staleTime":300,"varyParams":"$W4","buildId":"zeWki1Z47rqBkR2ph5H6N"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
"use strict";(()=>{var a={};a.id=9815,a.ids=[9815],a.modules={261:a=>{a.exports=require("next/dist/shared/lib/router/utils/app-paths")},3295:a=>{a.exports=require("next/dist/server/app-render/after-task-async-storage.external.js")},10846:a=>{a.exports=require("next/dist/compiled/next-server/app-page.runtime.prod.js")},21820:a=>{a.exports=require("os")},29021:a=>{a.exports=require("fs")},29294:a=>{a.exports=require("next/dist/server/app-render/work-async-storage.external.js")},31202:(a,b,c)=>{c.a(a,async(a,d)=>{try{c.r(b),c.d(b,{GET:()=>i,dynamic:()=>j});var e=c(23211),f=c(31761),g=c(81896),h=a([f,g]);[f,g]=h.then?(await h)():h;let j="force-dynamic";async function i(a){if(!(0,g.N)(a))return e.NextResponse.json({error:"Gateway token sync is localhost-only"},{status:403});let b=(0,f.SR)();return e.NextResponse.json({token:b?.token??""})}d()}catch(a){d(a)}})},33873:a=>{a.exports=require("path")},44870:a=>{a.exports=require("next/dist/compiled/next-server/app-route.runtime.prod.js")},55511:a=>{a.exports=require("crypto")},63033:a=>{a.exports=require("next/dist/server/app-render/work-unit-async-storage.external.js")},64094:(a,b,c)=>{c.a(a,async(a,d)=>{try{c.r(b),c.d(b,{handler:()=>y,patchFetch:()=>x,routeModule:()=>z,serverHooks:()=>C,workAsyncStorage:()=>A,workUnitAsyncStorage:()=>B});var e=c(19225),f=c(84006),g=c(8317),h=c(99373),i=c(34775),j=c(24235),k=c(261),l=c(54365),m=c(90771),n=c(73461),o=c(67798),p=c(92280),q=c(62018),r=c(45696),s=c(47929),t=c(86439),u=c(37527),v=c(31202),w=a([v]);v=(w.then?(await w)():w)[0];let z=new e.AppRouteRouteModule({definition:{kind:f.RouteKind.APP_ROUTE,page:"/api/im/gateway-token/route",pathname:"/api/im/gateway-token",filename:"route",bundlePath:"app/api/im/gateway-token/route"},distDir:".next",relativeProjectDir:"",resolvedPagePath:"/home/runner/work/annovibe/annovibe/app/api/im/gateway-token/route.ts",nextConfigOutput:"",userland:v}),{workAsyncStorage:A,workUnitAsyncStorage:B,serverHooks:C}=z;function x(){return(0,g.patchFetch)({workAsyncStorage:A,workUnitAsyncStorage:B})}async function y(a,b,c){c.requestMeta&&(0,h.setRequestMeta)(a,c.requestMeta),z.isDev&&(0,h.addRequestMeta)(a,"devRequestTimingInternalsEnd",process.hrtime.bigint());let d="/api/im/gateway-token/route";"/index"===d&&(d="/");let e=await z.prepare(a,b,{srcPage:d,multiZoneDraftMode:!1});if(!e)return b.statusCode=400,b.end("Bad Request"),null==c.waitUntil||c.waitUntil.call(c,Promise.resolve()),null;let{buildId:g,params:v,nextConfig:w,parsedUrl:x,isDraftMode:y,prerenderManifest:A,routerServerContext:B,isOnDemandRevalidate:C,revalidateOnlyGenerated:D,resolvedPathname:E,clientReferenceManifest:F,serverActionsManifest:G}=e,H=(0,k.normalizeAppPath)(d),I=!!(A.dynamicRoutes[H]||A.routes[E]),J=async()=>((null==B?void 0:B.render404)?await B.render404(a,b,x,!1):b.end("This page could not be found"),null);if(I&&!y){let a=!!A.routes[E],b=A.dynamicRoutes[H];if(b&&!1===b.fallback&&!a){if(w.adapterPath)return await J();throw new t.NoFallbackError}}let K=null;!I||z.isDev||y||(K=E,K="/index"===K?"/":K);let L=!0===z.isDev||!I,M=I&&!L;G&&F&&(0,j.setManifestsSingleton)({page:d,clientReferenceManifest:F,serverActionsManifest:G});let N=a.method||"GET",O=(0,i.getTracer)(),P=O.getActiveScopeSpan(),Q=!!(null==B?void 0:B.isWrappedByNextServer),R=!!(0,h.getRequestMeta)(a,"minimalMode"),S=(0,h.getRequestMeta)(a,"incrementalCache")||await z.getIncrementalCache(a,w,A,R);null==S||S.resetRequestCache(),globalThis.__incrementalCache=S;let T={params:v,previewProps:A.preview,renderOpts:{experimental:{authInterrupts:!!w.experimental.authInterrupts},cacheComponents:!!w.cacheComponents,supportsDynamicResponse:L,incrementalCache:S,cacheLifeProfiles:w.cacheLife,waitUntil:c.waitUntil,onClose:a=>{b.on("close",a)},onAfterTaskError:void 0,onInstrumentationRequestError:(b,c,d,e)=>z.onRequestError(a,b,d,e,B)},sharedContext:{buildId:g}},U=new l.NodeNextRequest(a),V=new l.NodeNextResponse(b),W=m.NextRequestAdapter.fromNodeNextRequest(U,(0,m.signalFromNodeResponse)(b));try{let e,g=async a=>z.handle(W,T).finally(()=>{if(!a)return;a.setAttributes({"http.status_code":b.statusCode,"next.rsc":!1});let c=O.getRootSpanAttributes();if(!c)return;if(c.get("next.span_type")!==n.BaseServerSpan.handleRequest)return void console.warn(`Unexpected root span type '${c.get("next.span_type")}'. Please report this Next.js issue https://github.com/vercel/next.js`);let f=c.get("next.route");if(f){let b=`${N} ${f}`;a.setAttributes({"next.route":f,"http.route":f,"next.span_name":b}),a.updateName(b),e&&e!==a&&(e.setAttribute("http.route",f),e.updateName(b))}else a.updateName(`${N} ${d}`)}),h=async e=>{var h,i;let j=async({previousCacheEntry:f})=>{try{if(!R&&C&&D&&!f)return b.statusCode=404,b.setHeader("x-nextjs-cache","REVALIDATED"),b.end("This page could not be found"),null;let d=await g(e);a.fetchMetrics=T.renderOpts.fetchMetrics;let h=T.renderOpts.pendingWaitUntil;h&&c.waitUntil&&(c.waitUntil(h),h=void 0);let i=T.renderOpts.collectedTags;if(!I)return await (0,p.I)(U,V,d,T.renderOpts.pendingWaitUntil),null;{let a=await d.blob(),b=(0,q.toNodeOutgoingHttpHeaders)(d.headers);i&&(b[s.NEXT_CACHE_TAGS_HEADER]=i),!b["content-type"]&&a.type&&(b["content-type"]=a.type);let c=void 0!==T.renderOpts.collectedRevalidate&&!(T.renderOpts.collectedRevalidate>=s.INFINITE_CACHE)&&T.renderOpts.collectedRevalidate,e=void 0===T.renderOpts.collectedExpire||T.renderOpts.collectedExpire>=s.INFINITE_CACHE?void 0:T.renderOpts.collectedExpire;return{value:{kind:u.CachedRouteKind.APP_ROUTE,status:d.status,body:Buffer.from(await a.arrayBuffer()),headers:b},cacheControl:{revalidate:c,expire:e}}}}catch(b){throw(null==f?void 0:f.isStale)&&await z.onRequestError(a,b,{routerKind:"App Router",routePath:d,routeType:"route",revalidateReason:(0,o.c)({isStaticGeneration:M,isOnDemandRevalidate:C})},!1,B),b}},k=await z.handleResponse({req:a,nextConfig:w,cacheKey:K,routeKind:f.RouteKind.APP_ROUTE,isFallback:!1,prerenderManifest:A,isRoutePPREnabled:!1,isOnDemandRevalidate:C,revalidateOnlyGenerated:D,responseGenerator:j,waitUntil:c.waitUntil,isMinimalMode:R});if(!I)return null;if((null==k||null==(h=k.value)?void 0:h.kind)!==u.CachedRouteKind.APP_ROUTE)throw Object.defineProperty(Error(`Invariant: app-route received invalid cache entry ${null==k||null==(i=k.value)?void 0:i.kind}`),"__NEXT_ERROR_CODE",{value:"E701",enumerable:!1,configurable:!0});R||b.setHeader("x-nextjs-cache",C?"REVALIDATED":k.isMiss?"MISS":k.isStale?"STALE":"HIT"),y&&b.setHeader("Cache-Control","private, no-cache, no-store, max-age=0, must-revalidate");let l=(0,q.fromNodeOutgoingHttpHeaders)(k.value.headers);return R&&I||l.delete(s.NEXT_CACHE_TAGS_HEADER),!k.cacheControl||b.getHeader("Cache-Control")||l.get("Cache-Control")||l.set("Cache-Control",(0,r.getCacheControlHeader)(k.cacheControl)),await (0,p.I)(U,V,new Response(k.value.body,{headers:l,status:k.value.status||200})),null};Q&&P?await h(P):(e=O.getActiveScopeSpan(),await O.withPropagatedContext(a.headers,()=>O.trace(n.BaseServerSpan.handleRequest,{spanName:`${N} ${d}`,kind:i.SpanKind.SERVER,attributes:{"http.method":N,"http.target":a.url}},h),void 0,!Q))}catch(b){if(b instanceof t.NoFallbackError||await z.onRequestError(a,b,{routerKind:"App Router",routePath:H,routeType:"route",revalidateReason:(0,o.c)({isStaticGeneration:M,isOnDemandRevalidate:C})},!1,B),I)throw b;return await (0,p.I)(U,V,new Response(null,{status:500})),null}}d()}catch(a){d(a)}})},75430:a=>{a.exports=import("@earendil-works/pi-coding-agent")},81896:(a,b,c)=>{c.a(a,async(a,d)=>{try{c.d(b,{D:()=>h,N:()=>g});var e=c(31761),f=a([e]);function g(a){try{let b=new URL(a.url).hostname.toLowerCase();if("localhost"===b||"127.0.0.1"===b||"::1"===b)return!0}catch{}let b=(a.headers.get("host")??"").split(":")[0]?.toLowerCase()??"";if("localhost"===b||"127.0.0.1"===b||"::1"===b)return!0;let c=a.headers.get("x-forwarded-for");if(!c)return!1;let d=c.split(",")[0]?.trim();return"127.0.0.1"===d||"::1"===d}function h(a){let b=(0,e.SR)(),c=b?.token?.trim();if(!c)return g(a);let d=a.headers.get("authorization");if(!d)return!1;let f=d.match(/^Bearer\s+(.+)$/i);return!!f&&f[1].trim()===c}e=(f.then?(await f)():f)[0],d()}catch(a){d(a)}})},86439:a=>{a.exports=require("next/dist/shared/lib/no-fallback-error.external")}};var b=require("../../../../webpack-runtime.js");b.C(a);var c=b.X(0,[4741,1813,7831,402,1761],()=>b(b.s=64094));module.exports=c})();
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
globalThis.__RSC_MANIFEST=(globalThis.__RSC_MANIFEST||{});globalThis.__RSC_MANIFEST["/api/im/gateway-token/route"]={"moduleLoading":{"prefix":"/_next/"},"ssrModuleMapping":{},"edgeSSRModuleMapping":{},"clientModules":{},"entryCSSFiles":{"/home/runner/work/annovibe/annovibe/app/api/im/gateway-token/route":[]},"rscModuleMapping":{},"edgeRscModuleMapping":{}};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
"use strict";(()=>{var a={};a.id=4055,a.ids=[4055],a.modules={261:a=>{a.exports=require("next/dist/shared/lib/router/utils/app-paths")},3295:a=>{a.exports=require("next/dist/server/app-render/after-task-async-storage.external.js")},10846:a=>{a.exports=require("next/dist/compiled/next-server/app-page.runtime.prod.js")},19989:(a,b,c)=>{c.d(b,{X:()=>d});function d(a,b){let c=new Map;for(let a of b){let b=a.provenance.cellIndex;c.set(b,[...c.get(b)??[],a])}return a.map(a=>{let b,d=c.get(a.index)??[],e=d.map(a=>a.fileName).slice(0,4),f=(b=a.stdoutPreview.split("\n").map(a=>a.trim()).find(a=>a&&!a.startsWith("[")&&a.length>2))?b.slice(0,240):null,g=["succeeded"===a.status?"Completed":"failed"===a.status?"Failed":"Ran",a.title||`Cell #${a.index}`,e.length>0?`generated ${e.join(", ")}`:null,f?`Output: ${f}`:null].filter(Boolean);return{id:`cell-${a.index}`,cellIndex:a.index,title:a.title||`Cell #${a.index}`,status:a.status,summary:g.join(". "),artifactIds:d.map(a=>a.id),createdAt:a.createdAt}})}},29021:a=>{a.exports=require("fs")},29294:a=>{a.exports=require("next/dist/server/app-render/work-async-storage.external.js")},33873:a=>{a.exports=require("path")},44870:a=>{a.exports=require("next/dist/compiled/next-server/app-route.runtime.prod.js")},55511:a=>{a.exports=require("crypto")},63033:a=>{a.exports=require("next/dist/server/app-render/work-unit-async-storage.external.js")},66214:(a,b,c)=>{c.a(a,async(a,d)=>{try{c.r(b),c.d(b,{handler:()=>y,patchFetch:()=>x,routeModule:()=>z,serverHooks:()=>C,workAsyncStorage:()=>A,workUnitAsyncStorage:()=>B});var e=c(19225),f=c(84006),g=c(8317),h=c(99373),i=c(34775),j=c(24235),k=c(261),l=c(54365),m=c(90771),n=c(73461),o=c(67798),p=c(92280),q=c(62018),r=c(45696),s=c(47929),t=c(86439),u=c(37527),v=c(78582),w=a([v]);v=(w.then?(await w)():w)[0];let z=new e.AppRouteRouteModule({definition:{kind:f.RouteKind.APP_ROUTE,page:"/api/sessions/[id]/kernel-state/route",pathname:"/api/sessions/[id]/kernel-state",filename:"route",bundlePath:"app/api/sessions/[id]/kernel-state/route"},distDir:".next",relativeProjectDir:"",resolvedPagePath:"/home/runner/work/annovibe/annovibe/app/api/sessions/[id]/kernel-state/route.ts",nextConfigOutput:"",userland:v}),{workAsyncStorage:A,workUnitAsyncStorage:B,serverHooks:C}=z;function x(){return(0,g.patchFetch)({workAsyncStorage:A,workUnitAsyncStorage:B})}async function y(a,b,c){c.requestMeta&&(0,h.setRequestMeta)(a,c.requestMeta),z.isDev&&(0,h.addRequestMeta)(a,"devRequestTimingInternalsEnd",process.hrtime.bigint());let d="/api/sessions/[id]/kernel-state/route";"/index"===d&&(d="/");let e=await z.prepare(a,b,{srcPage:d,multiZoneDraftMode:!1});if(!e)return b.statusCode=400,b.end("Bad Request"),null==c.waitUntil||c.waitUntil.call(c,Promise.resolve()),null;let{buildId:g,params:v,nextConfig:w,parsedUrl:x,isDraftMode:y,prerenderManifest:A,routerServerContext:B,isOnDemandRevalidate:C,revalidateOnlyGenerated:D,resolvedPathname:E,clientReferenceManifest:F,serverActionsManifest:G}=e,H=(0,k.normalizeAppPath)(d),I=!!(A.dynamicRoutes[H]||A.routes[E]),J=async()=>((null==B?void 0:B.render404)?await B.render404(a,b,x,!1):b.end("This page could not be found"),null);if(I&&!y){let a=!!A.routes[E],b=A.dynamicRoutes[H];if(b&&!1===b.fallback&&!a){if(w.adapterPath)return await J();throw new t.NoFallbackError}}let K=null;!I||z.isDev||y||(K=E,K="/index"===K?"/":K);let L=!0===z.isDev||!I,M=I&&!L;G&&F&&(0,j.setManifestsSingleton)({page:d,clientReferenceManifest:F,serverActionsManifest:G});let N=a.method||"GET",O=(0,i.getTracer)(),P=O.getActiveScopeSpan(),Q=!!(null==B?void 0:B.isWrappedByNextServer),R=!!(0,h.getRequestMeta)(a,"minimalMode"),S=(0,h.getRequestMeta)(a,"incrementalCache")||await z.getIncrementalCache(a,w,A,R);null==S||S.resetRequestCache(),globalThis.__incrementalCache=S;let T={params:v,previewProps:A.preview,renderOpts:{experimental:{authInterrupts:!!w.experimental.authInterrupts},cacheComponents:!!w.cacheComponents,supportsDynamicResponse:L,incrementalCache:S,cacheLifeProfiles:w.cacheLife,waitUntil:c.waitUntil,onClose:a=>{b.on("close",a)},onAfterTaskError:void 0,onInstrumentationRequestError:(b,c,d,e)=>z.onRequestError(a,b,d,e,B)},sharedContext:{buildId:g}},U=new l.NodeNextRequest(a),V=new l.NodeNextResponse(b),W=m.NextRequestAdapter.fromNodeNextRequest(U,(0,m.signalFromNodeResponse)(b));try{let e,g=async a=>z.handle(W,T).finally(()=>{if(!a)return;a.setAttributes({"http.status_code":b.statusCode,"next.rsc":!1});let c=O.getRootSpanAttributes();if(!c)return;if(c.get("next.span_type")!==n.BaseServerSpan.handleRequest)return void console.warn(`Unexpected root span type '${c.get("next.span_type")}'. Please report this Next.js issue https://github.com/vercel/next.js`);let f=c.get("next.route");if(f){let b=`${N} ${f}`;a.setAttributes({"next.route":f,"http.route":f,"next.span_name":b}),a.updateName(b),e&&e!==a&&(e.setAttribute("http.route",f),e.updateName(b))}else a.updateName(`${N} ${d}`)}),h=async e=>{var h,i;let j=async({previousCacheEntry:f})=>{try{if(!R&&C&&D&&!f)return b.statusCode=404,b.setHeader("x-nextjs-cache","REVALIDATED"),b.end("This page could not be found"),null;let d=await g(e);a.fetchMetrics=T.renderOpts.fetchMetrics;let h=T.renderOpts.pendingWaitUntil;h&&c.waitUntil&&(c.waitUntil(h),h=void 0);let i=T.renderOpts.collectedTags;if(!I)return await (0,p.I)(U,V,d,T.renderOpts.pendingWaitUntil),null;{let a=await d.blob(),b=(0,q.toNodeOutgoingHttpHeaders)(d.headers);i&&(b[s.NEXT_CACHE_TAGS_HEADER]=i),!b["content-type"]&&a.type&&(b["content-type"]=a.type);let c=void 0!==T.renderOpts.collectedRevalidate&&!(T.renderOpts.collectedRevalidate>=s.INFINITE_CACHE)&&T.renderOpts.collectedRevalidate,e=void 0===T.renderOpts.collectedExpire||T.renderOpts.collectedExpire>=s.INFINITE_CACHE?void 0:T.renderOpts.collectedExpire;return{value:{kind:u.CachedRouteKind.APP_ROUTE,status:d.status,body:Buffer.from(await a.arrayBuffer()),headers:b},cacheControl:{revalidate:c,expire:e}}}}catch(b){throw(null==f?void 0:f.isStale)&&await z.onRequestError(a,b,{routerKind:"App Router",routePath:d,routeType:"route",revalidateReason:(0,o.c)({isStaticGeneration:M,isOnDemandRevalidate:C})},!1,B),b}},k=await z.handleResponse({req:a,nextConfig:w,cacheKey:K,routeKind:f.RouteKind.APP_ROUTE,isFallback:!1,prerenderManifest:A,isRoutePPREnabled:!1,isOnDemandRevalidate:C,revalidateOnlyGenerated:D,responseGenerator:j,waitUntil:c.waitUntil,isMinimalMode:R});if(!I)return null;if((null==k||null==(h=k.value)?void 0:h.kind)!==u.CachedRouteKind.APP_ROUTE)throw Object.defineProperty(Error(`Invariant: app-route received invalid cache entry ${null==k||null==(i=k.value)?void 0:i.kind}`),"__NEXT_ERROR_CODE",{value:"E701",enumerable:!1,configurable:!0});R||b.setHeader("x-nextjs-cache",C?"REVALIDATED":k.isMiss?"MISS":k.isStale?"STALE":"HIT"),y&&b.setHeader("Cache-Control","private, no-cache, no-store, max-age=0, must-revalidate");let l=(0,q.fromNodeOutgoingHttpHeaders)(k.value.headers);return R&&I||l.delete(s.NEXT_CACHE_TAGS_HEADER),!k.cacheControl||b.getHeader("Cache-Control")||l.get("Cache-Control")||l.set("Cache-Control",(0,r.getCacheControlHeader)(k.cacheControl)),await (0,p.I)(U,V,new Response(k.value.body,{headers:l,status:k.value.status||200})),null};Q&&P?await h(P):(e=O.getActiveScopeSpan(),await O.withPropagatedContext(a.headers,()=>O.trace(n.BaseServerSpan.handleRequest,{spanName:`${N} ${d}`,kind:i.SpanKind.SERVER,attributes:{"http.method":N,"http.target":a.url}},h),void 0,!Q))}catch(b){if(b instanceof t.NoFallbackError||await z.onRequestError(a,b,{routerKind:"App Router",routePath:H,routeType:"route",revalidateReason:(0,o.c)({isStaticGeneration:M,isOnDemandRevalidate:C})},!1,B),I)throw b;return await (0,p.I)(U,V,new Response(null,{status:500})),null}}d()}catch(a){d(a)}})},75430:a=>{a.exports=import("@earendil-works/pi-coding-agent")},78582:(a,b,c)=>{c.a(a,async(a,d)=>{try{c.r(b),c.d(b,{GET:()=>l});var e=c(23211),f=c(40402),g=c(60103),h=c(59059),i=c(19989),j=c(12506),k=a([f]);async function l(a,{params:b}){try{let{id:a}=await b;if(!a)return e.NextResponse.json({error:"session id required"},{status:400});let c=await (0,f.os)(a);if(!c)return e.NextResponse.json({error:"session not found"},{status:404});let d=(0,g.f)(c);if(!d)return e.NextResponse.json({error:"no kernel state found"},{status:404});let k=(0,h.od)(a,d.cells),l=(0,i.X)(d.cells,k),m=(0,j.M$)(d,k);return e.NextResponse.json({...d,artifacts:k,notes:l,review:m})}catch(a){return e.NextResponse.json({error:String(a)},{status:500})}}f=(k.then?(await k)():k)[0],d()}catch(a){d(a)}})},86439:a=>{a.exports=require("next/dist/shared/lib/no-fallback-error.external")}};var b=require("../../../../../webpack-runtime.js");b.C(a);var c=b.X(0,[4741,1813,7831,402,2562],()=>b(b.s=66214));module.exports=c})();
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
globalThis.__RSC_MANIFEST=(globalThis.__RSC_MANIFEST||{});globalThis.__RSC_MANIFEST["/api/sessions/[id]/kernel-state/route"]={"moduleLoading":{"prefix":"/_next/"},"ssrModuleMapping":{},"edgeSSRModuleMapping":{},"clientModules":{},"entryCSSFiles":{"/home/runner/work/annovibe/annovibe/app/api/sessions/[id]/kernel-state/route":[]},"rscModuleMapping":{},"edgeRscModuleMapping":{}};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
"use strict";(()=>{var a={};a.id=3098,a.ids=[3098],a.modules={261:a=>{a.exports=require("next/dist/shared/lib/router/utils/app-paths")},3295:a=>{a.exports=require("next/dist/server/app-render/after-task-async-storage.external.js")},10846:a=>{a.exports=require("next/dist/compiled/next-server/app-page.runtime.prod.js")},29021:a=>{a.exports=require("fs")},29294:a=>{a.exports=require("next/dist/server/app-render/work-async-storage.external.js")},33873:a=>{a.exports=require("path")},44870:a=>{a.exports=require("next/dist/compiled/next-server/app-route.runtime.prod.js")},55511:a=>{a.exports=require("crypto")},63033:a=>{a.exports=require("next/dist/server/app-render/work-unit-async-storage.external.js")},75430:a=>{a.exports=import("@earendil-works/pi-coding-agent")},76464:(a,b,c)=>{c.a(a,async(a,d)=>{try{c.r(b),c.d(b,{handler:()=>y,patchFetch:()=>x,routeModule:()=>z,serverHooks:()=>C,workAsyncStorage:()=>A,workUnitAsyncStorage:()=>B});var e=c(19225),f=c(84006),g=c(8317),h=c(99373),i=c(34775),j=c(24235),k=c(261),l=c(54365),m=c(90771),n=c(73461),o=c(67798),p=c(92280),q=c(62018),r=c(45696),s=c(47929),t=c(86439),u=c(37527),v=c(83533),w=a([v]);v=(w.then?(await w)():w)[0];let z=new e.AppRouteRouteModule({definition:{kind:f.RouteKind.APP_ROUTE,page:"/api/sessions/[id]/workbench-artifact/route",pathname:"/api/sessions/[id]/workbench-artifact",filename:"route",bundlePath:"app/api/sessions/[id]/workbench-artifact/route"},distDir:".next",relativeProjectDir:"",resolvedPagePath:"/home/runner/work/annovibe/annovibe/app/api/sessions/[id]/workbench-artifact/route.ts",nextConfigOutput:"",userland:v}),{workAsyncStorage:A,workUnitAsyncStorage:B,serverHooks:C}=z;function x(){return(0,g.patchFetch)({workAsyncStorage:A,workUnitAsyncStorage:B})}async function y(a,b,c){c.requestMeta&&(0,h.setRequestMeta)(a,c.requestMeta),z.isDev&&(0,h.addRequestMeta)(a,"devRequestTimingInternalsEnd",process.hrtime.bigint());let d="/api/sessions/[id]/workbench-artifact/route";"/index"===d&&(d="/");let e=await z.prepare(a,b,{srcPage:d,multiZoneDraftMode:!1});if(!e)return b.statusCode=400,b.end("Bad Request"),null==c.waitUntil||c.waitUntil.call(c,Promise.resolve()),null;let{buildId:g,params:v,nextConfig:w,parsedUrl:x,isDraftMode:y,prerenderManifest:A,routerServerContext:B,isOnDemandRevalidate:C,revalidateOnlyGenerated:D,resolvedPathname:E,clientReferenceManifest:F,serverActionsManifest:G}=e,H=(0,k.normalizeAppPath)(d),I=!!(A.dynamicRoutes[H]||A.routes[E]),J=async()=>((null==B?void 0:B.render404)?await B.render404(a,b,x,!1):b.end("This page could not be found"),null);if(I&&!y){let a=!!A.routes[E],b=A.dynamicRoutes[H];if(b&&!1===b.fallback&&!a){if(w.adapterPath)return await J();throw new t.NoFallbackError}}let K=null;!I||z.isDev||y||(K=E,K="/index"===K?"/":K);let L=!0===z.isDev||!I,M=I&&!L;G&&F&&(0,j.setManifestsSingleton)({page:d,clientReferenceManifest:F,serverActionsManifest:G});let N=a.method||"GET",O=(0,i.getTracer)(),P=O.getActiveScopeSpan(),Q=!!(null==B?void 0:B.isWrappedByNextServer),R=!!(0,h.getRequestMeta)(a,"minimalMode"),S=(0,h.getRequestMeta)(a,"incrementalCache")||await z.getIncrementalCache(a,w,A,R);null==S||S.resetRequestCache(),globalThis.__incrementalCache=S;let T={params:v,previewProps:A.preview,renderOpts:{experimental:{authInterrupts:!!w.experimental.authInterrupts},cacheComponents:!!w.cacheComponents,supportsDynamicResponse:L,incrementalCache:S,cacheLifeProfiles:w.cacheLife,waitUntil:c.waitUntil,onClose:a=>{b.on("close",a)},onAfterTaskError:void 0,onInstrumentationRequestError:(b,c,d,e)=>z.onRequestError(a,b,d,e,B)},sharedContext:{buildId:g}},U=new l.NodeNextRequest(a),V=new l.NodeNextResponse(b),W=m.NextRequestAdapter.fromNodeNextRequest(U,(0,m.signalFromNodeResponse)(b));try{let e,g=async a=>z.handle(W,T).finally(()=>{if(!a)return;a.setAttributes({"http.status_code":b.statusCode,"next.rsc":!1});let c=O.getRootSpanAttributes();if(!c)return;if(c.get("next.span_type")!==n.BaseServerSpan.handleRequest)return void console.warn(`Unexpected root span type '${c.get("next.span_type")}'. Please report this Next.js issue https://github.com/vercel/next.js`);let f=c.get("next.route");if(f){let b=`${N} ${f}`;a.setAttributes({"next.route":f,"http.route":f,"next.span_name":b}),a.updateName(b),e&&e!==a&&(e.setAttribute("http.route",f),e.updateName(b))}else a.updateName(`${N} ${d}`)}),h=async e=>{var h,i;let j=async({previousCacheEntry:f})=>{try{if(!R&&C&&D&&!f)return b.statusCode=404,b.setHeader("x-nextjs-cache","REVALIDATED"),b.end("This page could not be found"),null;let d=await g(e);a.fetchMetrics=T.renderOpts.fetchMetrics;let h=T.renderOpts.pendingWaitUntil;h&&c.waitUntil&&(c.waitUntil(h),h=void 0);let i=T.renderOpts.collectedTags;if(!I)return await (0,p.I)(U,V,d,T.renderOpts.pendingWaitUntil),null;{let a=await d.blob(),b=(0,q.toNodeOutgoingHttpHeaders)(d.headers);i&&(b[s.NEXT_CACHE_TAGS_HEADER]=i),!b["content-type"]&&a.type&&(b["content-type"]=a.type);let c=void 0!==T.renderOpts.collectedRevalidate&&!(T.renderOpts.collectedRevalidate>=s.INFINITE_CACHE)&&T.renderOpts.collectedRevalidate,e=void 0===T.renderOpts.collectedExpire||T.renderOpts.collectedExpire>=s.INFINITE_CACHE?void 0:T.renderOpts.collectedExpire;return{value:{kind:u.CachedRouteKind.APP_ROUTE,status:d.status,body:Buffer.from(await a.arrayBuffer()),headers:b},cacheControl:{revalidate:c,expire:e}}}}catch(b){throw(null==f?void 0:f.isStale)&&await z.onRequestError(a,b,{routerKind:"App Router",routePath:d,routeType:"route",revalidateReason:(0,o.c)({isStaticGeneration:M,isOnDemandRevalidate:C})},!1,B),b}},k=await z.handleResponse({req:a,nextConfig:w,cacheKey:K,routeKind:f.RouteKind.APP_ROUTE,isFallback:!1,prerenderManifest:A,isRoutePPREnabled:!1,isOnDemandRevalidate:C,revalidateOnlyGenerated:D,responseGenerator:j,waitUntil:c.waitUntil,isMinimalMode:R});if(!I)return null;if((null==k||null==(h=k.value)?void 0:h.kind)!==u.CachedRouteKind.APP_ROUTE)throw Object.defineProperty(Error(`Invariant: app-route received invalid cache entry ${null==k||null==(i=k.value)?void 0:i.kind}`),"__NEXT_ERROR_CODE",{value:"E701",enumerable:!1,configurable:!0});R||b.setHeader("x-nextjs-cache",C?"REVALIDATED":k.isMiss?"MISS":k.isStale?"STALE":"HIT"),y&&b.setHeader("Cache-Control","private, no-cache, no-store, max-age=0, must-revalidate");let l=(0,q.fromNodeOutgoingHttpHeaders)(k.value.headers);return R&&I||l.delete(s.NEXT_CACHE_TAGS_HEADER),!k.cacheControl||b.getHeader("Cache-Control")||l.get("Cache-Control")||l.set("Cache-Control",(0,r.getCacheControlHeader)(k.cacheControl)),await (0,p.I)(U,V,new Response(k.value.body,{headers:l,status:k.value.status||200})),null};Q&&P?await h(P):(e=O.getActiveScopeSpan(),await O.withPropagatedContext(a.headers,()=>O.trace(n.BaseServerSpan.handleRequest,{spanName:`${N} ${d}`,kind:i.SpanKind.SERVER,attributes:{"http.method":N,"http.target":a.url}},h),void 0,!Q))}catch(b){if(b instanceof t.NoFallbackError||await z.onRequestError(a,b,{routerKind:"App Router",routePath:H,routeType:"route",revalidateReason:(0,o.c)({isStaticGeneration:M,isOnDemandRevalidate:C})},!1,B),I)throw b;return await (0,p.I)(U,V,new Response(null,{status:500})),null}}d()}catch(a){d(a)}})},83533:(a,b,c)=>{c.a(a,async(a,d)=>{try{c.r(b),c.d(b,{GET:()=>k});var e=c(23211),f=c(40402),g=c(60103),h=c(59059),i=c(12506),j=a([f]);async function k(a,{params:b}){try{let{id:c}=await b,d=a.nextUrl.searchParams.get("path");if(!c)return e.NextResponse.json({error:"session id required"},{status:400});if(!d)return e.NextResponse.json({error:"path is required"},{status:400});let j=await (0,f.os)(c);if(!j)return e.NextResponse.json({error:"session not found"},{status:404});let k=(0,g.f)(j);if(!k)return e.NextResponse.json({artifact:null,reviewIssues:[]});let l=(0,h.od)(c,k.cells),m=l.find(a=>a.path===d)??null,n=(0,i.M$)(k,l);return e.NextResponse.json({artifact:m,reviewIssues:m?n.issues.filter(a=>a.artifactId===m.id):[]})}catch(a){return e.NextResponse.json({error:String(a)},{status:500})}}f=(j.then?(await j)():j)[0],d()}catch(a){d(a)}})},86439:a=>{a.exports=require("next/dist/shared/lib/no-fallback-error.external")}};var b=require("../../../../../webpack-runtime.js");b.C(a);var c=b.X(0,[4741,1813,7831,402,2562],()=>b(b.s=76464));module.exports=c})();
|
package/.next/server/app/api/sessions/[id]/workbench-artifact/route_client-reference-manifest.js
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
globalThis.__RSC_MANIFEST=(globalThis.__RSC_MANIFEST||{});globalThis.__RSC_MANIFEST["/api/sessions/[id]/workbench-artifact/route"]={"moduleLoading":{"prefix":"/_next/"},"ssrModuleMapping":{},"edgeSSRModuleMapping":{},"clientModules":{},"entryCSSFiles":{"/home/runner/work/annovibe/annovibe/app/api/sessions/[id]/workbench-artifact/route":[]},"rscModuleMapping":{},"edgeRscModuleMapping":{}};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
"use strict";(()=>{var a={};a.id=6700,a.ids=[6700],a.modules={261:a=>{a.exports=require("next/dist/shared/lib/router/utils/app-paths")},3295:a=>{a.exports=require("next/dist/server/app-render/after-task-async-storage.external.js")},10846:a=>{a.exports=require("next/dist/compiled/next-server/app-page.runtime.prod.js")},29021:a=>{a.exports=require("fs")},29294:a=>{a.exports=require("next/dist/server/app-render/work-async-storage.external.js")},33873:a=>{a.exports=require("path")},41719:(a,b,c)=>{c.a(a,async(a,d)=>{try{c.r(b),c.d(b,{GET:()=>k});var e=c(23211),f=c(40402),g=c(60103),h=c(59059),i=c(12506),j=a([f]);async function k(a,{params:b}){try{let{id:a}=await b;if(!a)return e.NextResponse.json({error:"session id required"},{status:400});let c=await (0,f.os)(a);if(!c)return e.NextResponse.json({error:"session not found"},{status:404});let d=(0,g.f)(c);if(!d)return e.NextResponse.json({error:"no kernel state found"},{status:404});let j=(0,h.od)(a,d.cells);return e.NextResponse.json((0,i.M$)(d,j))}catch(a){return e.NextResponse.json({error:String(a)},{status:500})}}f=(j.then?(await j)():j)[0],d()}catch(a){d(a)}})},44870:a=>{a.exports=require("next/dist/compiled/next-server/app-route.runtime.prod.js")},48280:(a,b,c)=>{c.a(a,async(a,d)=>{try{c.r(b),c.d(b,{handler:()=>y,patchFetch:()=>x,routeModule:()=>z,serverHooks:()=>C,workAsyncStorage:()=>A,workUnitAsyncStorage:()=>B});var e=c(19225),f=c(84006),g=c(8317),h=c(99373),i=c(34775),j=c(24235),k=c(261),l=c(54365),m=c(90771),n=c(73461),o=c(67798),p=c(92280),q=c(62018),r=c(45696),s=c(47929),t=c(86439),u=c(37527),v=c(41719),w=a([v]);v=(w.then?(await w)():w)[0];let z=new e.AppRouteRouteModule({definition:{kind:f.RouteKind.APP_ROUTE,page:"/api/sessions/[id]/workbench-review/route",pathname:"/api/sessions/[id]/workbench-review",filename:"route",bundlePath:"app/api/sessions/[id]/workbench-review/route"},distDir:".next",relativeProjectDir:"",resolvedPagePath:"/home/runner/work/annovibe/annovibe/app/api/sessions/[id]/workbench-review/route.ts",nextConfigOutput:"",userland:v}),{workAsyncStorage:A,workUnitAsyncStorage:B,serverHooks:C}=z;function x(){return(0,g.patchFetch)({workAsyncStorage:A,workUnitAsyncStorage:B})}async function y(a,b,c){c.requestMeta&&(0,h.setRequestMeta)(a,c.requestMeta),z.isDev&&(0,h.addRequestMeta)(a,"devRequestTimingInternalsEnd",process.hrtime.bigint());let d="/api/sessions/[id]/workbench-review/route";"/index"===d&&(d="/");let e=await z.prepare(a,b,{srcPage:d,multiZoneDraftMode:!1});if(!e)return b.statusCode=400,b.end("Bad Request"),null==c.waitUntil||c.waitUntil.call(c,Promise.resolve()),null;let{buildId:g,params:v,nextConfig:w,parsedUrl:x,isDraftMode:y,prerenderManifest:A,routerServerContext:B,isOnDemandRevalidate:C,revalidateOnlyGenerated:D,resolvedPathname:E,clientReferenceManifest:F,serverActionsManifest:G}=e,H=(0,k.normalizeAppPath)(d),I=!!(A.dynamicRoutes[H]||A.routes[E]),J=async()=>((null==B?void 0:B.render404)?await B.render404(a,b,x,!1):b.end("This page could not be found"),null);if(I&&!y){let a=!!A.routes[E],b=A.dynamicRoutes[H];if(b&&!1===b.fallback&&!a){if(w.adapterPath)return await J();throw new t.NoFallbackError}}let K=null;!I||z.isDev||y||(K=E,K="/index"===K?"/":K);let L=!0===z.isDev||!I,M=I&&!L;G&&F&&(0,j.setManifestsSingleton)({page:d,clientReferenceManifest:F,serverActionsManifest:G});let N=a.method||"GET",O=(0,i.getTracer)(),P=O.getActiveScopeSpan(),Q=!!(null==B?void 0:B.isWrappedByNextServer),R=!!(0,h.getRequestMeta)(a,"minimalMode"),S=(0,h.getRequestMeta)(a,"incrementalCache")||await z.getIncrementalCache(a,w,A,R);null==S||S.resetRequestCache(),globalThis.__incrementalCache=S;let T={params:v,previewProps:A.preview,renderOpts:{experimental:{authInterrupts:!!w.experimental.authInterrupts},cacheComponents:!!w.cacheComponents,supportsDynamicResponse:L,incrementalCache:S,cacheLifeProfiles:w.cacheLife,waitUntil:c.waitUntil,onClose:a=>{b.on("close",a)},onAfterTaskError:void 0,onInstrumentationRequestError:(b,c,d,e)=>z.onRequestError(a,b,d,e,B)},sharedContext:{buildId:g}},U=new l.NodeNextRequest(a),V=new l.NodeNextResponse(b),W=m.NextRequestAdapter.fromNodeNextRequest(U,(0,m.signalFromNodeResponse)(b));try{let e,g=async a=>z.handle(W,T).finally(()=>{if(!a)return;a.setAttributes({"http.status_code":b.statusCode,"next.rsc":!1});let c=O.getRootSpanAttributes();if(!c)return;if(c.get("next.span_type")!==n.BaseServerSpan.handleRequest)return void console.warn(`Unexpected root span type '${c.get("next.span_type")}'. Please report this Next.js issue https://github.com/vercel/next.js`);let f=c.get("next.route");if(f){let b=`${N} ${f}`;a.setAttributes({"next.route":f,"http.route":f,"next.span_name":b}),a.updateName(b),e&&e!==a&&(e.setAttribute("http.route",f),e.updateName(b))}else a.updateName(`${N} ${d}`)}),h=async e=>{var h,i;let j=async({previousCacheEntry:f})=>{try{if(!R&&C&&D&&!f)return b.statusCode=404,b.setHeader("x-nextjs-cache","REVALIDATED"),b.end("This page could not be found"),null;let d=await g(e);a.fetchMetrics=T.renderOpts.fetchMetrics;let h=T.renderOpts.pendingWaitUntil;h&&c.waitUntil&&(c.waitUntil(h),h=void 0);let i=T.renderOpts.collectedTags;if(!I)return await (0,p.I)(U,V,d,T.renderOpts.pendingWaitUntil),null;{let a=await d.blob(),b=(0,q.toNodeOutgoingHttpHeaders)(d.headers);i&&(b[s.NEXT_CACHE_TAGS_HEADER]=i),!b["content-type"]&&a.type&&(b["content-type"]=a.type);let c=void 0!==T.renderOpts.collectedRevalidate&&!(T.renderOpts.collectedRevalidate>=s.INFINITE_CACHE)&&T.renderOpts.collectedRevalidate,e=void 0===T.renderOpts.collectedExpire||T.renderOpts.collectedExpire>=s.INFINITE_CACHE?void 0:T.renderOpts.collectedExpire;return{value:{kind:u.CachedRouteKind.APP_ROUTE,status:d.status,body:Buffer.from(await a.arrayBuffer()),headers:b},cacheControl:{revalidate:c,expire:e}}}}catch(b){throw(null==f?void 0:f.isStale)&&await z.onRequestError(a,b,{routerKind:"App Router",routePath:d,routeType:"route",revalidateReason:(0,o.c)({isStaticGeneration:M,isOnDemandRevalidate:C})},!1,B),b}},k=await z.handleResponse({req:a,nextConfig:w,cacheKey:K,routeKind:f.RouteKind.APP_ROUTE,isFallback:!1,prerenderManifest:A,isRoutePPREnabled:!1,isOnDemandRevalidate:C,revalidateOnlyGenerated:D,responseGenerator:j,waitUntil:c.waitUntil,isMinimalMode:R});if(!I)return null;if((null==k||null==(h=k.value)?void 0:h.kind)!==u.CachedRouteKind.APP_ROUTE)throw Object.defineProperty(Error(`Invariant: app-route received invalid cache entry ${null==k||null==(i=k.value)?void 0:i.kind}`),"__NEXT_ERROR_CODE",{value:"E701",enumerable:!1,configurable:!0});R||b.setHeader("x-nextjs-cache",C?"REVALIDATED":k.isMiss?"MISS":k.isStale?"STALE":"HIT"),y&&b.setHeader("Cache-Control","private, no-cache, no-store, max-age=0, must-revalidate");let l=(0,q.fromNodeOutgoingHttpHeaders)(k.value.headers);return R&&I||l.delete(s.NEXT_CACHE_TAGS_HEADER),!k.cacheControl||b.getHeader("Cache-Control")||l.get("Cache-Control")||l.set("Cache-Control",(0,r.getCacheControlHeader)(k.cacheControl)),await (0,p.I)(U,V,new Response(k.value.body,{headers:l,status:k.value.status||200})),null};Q&&P?await h(P):(e=O.getActiveScopeSpan(),await O.withPropagatedContext(a.headers,()=>O.trace(n.BaseServerSpan.handleRequest,{spanName:`${N} ${d}`,kind:i.SpanKind.SERVER,attributes:{"http.method":N,"http.target":a.url}},h),void 0,!Q))}catch(b){if(b instanceof t.NoFallbackError||await z.onRequestError(a,b,{routerKind:"App Router",routePath:H,routeType:"route",revalidateReason:(0,o.c)({isStaticGeneration:M,isOnDemandRevalidate:C})},!1,B),I)throw b;return await (0,p.I)(U,V,new Response(null,{status:500})),null}}d()}catch(a){d(a)}})},55511:a=>{a.exports=require("crypto")},63033:a=>{a.exports=require("next/dist/server/app-render/work-unit-async-storage.external.js")},75430:a=>{a.exports=import("@earendil-works/pi-coding-agent")},86439:a=>{a.exports=require("next/dist/shared/lib/no-fallback-error.external")}};var b=require("../../../../../webpack-runtime.js");b.C(a);var c=b.X(0,[4741,1813,7831,402,2562],()=>b(b.s=48280));module.exports=c})();
|
package/.next/server/app/api/sessions/[id]/workbench-review/route_client-reference-manifest.js
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
globalThis.__RSC_MANIFEST=(globalThis.__RSC_MANIFEST||{});globalThis.__RSC_MANIFEST["/api/sessions/[id]/workbench-review/route"]={"moduleLoading":{"prefix":"/_next/"},"ssrModuleMapping":{},"edgeSSRModuleMapping":{},"clientModules":{},"entryCSSFiles":{"/home/runner/work/annovibe/annovibe/app/api/sessions/[id]/workbench-review/route":[]},"rscModuleMapping":{},"edgeRscModuleMapping":{}};
|
|
@@ -1,6 +0,0 @@
|
|
|
1
|
-
1:"$Sreact.fragment"
|
|
2
|
-
2:I[90484,[],"ViewportBoundary"]
|
|
3
|
-
3:I[90484,[],"MetadataBoundary"]
|
|
4
|
-
4:"$Sreact.suspense"
|
|
5
|
-
5:I[86869,[],"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":[["$","title","0",{"children":"AnnoVibe"}],["$","meta","1",{"name":"description","content":"AI-native bioinformatics workspace by Annoroad"}],["$","link","2",{"rel":"shortcut icon","href":"/icon.svg","type":"image/svg+xml"}],["$","link","3",{"rel":"icon","href":"/icon.svg","type":"image/svg+xml"}],["$","$L5","4",{}]]}]}]}],["$","meta",null,{"name":"next-size-adjust","content":""}]]}],"isPartial":false,"staleTime":300,"varyParams":null,"buildId":"zeWki1Z47rqBkR2ph5H6N"}
|
|
@@ -1,7 +0,0 @@
|
|
|
1
|
-
1:"$Sreact.fragment"
|
|
2
|
-
2:I[42593,["7177","static/chunks/app/layout-101c4ccdf12880f0.js"],""]
|
|
3
|
-
3:I[57121,[],""]
|
|
4
|
-
4:I[74581,[],""]
|
|
5
|
-
:HL["/_next/static/css/9bcd6051db4f8890.css","style"]
|
|
6
|
-
:HL["/_next/static/css/738b0b1c24aae500.css","style"]
|
|
7
|
-
0:{"rsc":["$","$1","c",{"children":[[["$","link","0",{"rel":"stylesheet","href":"/_next/static/css/9bcd6051db4f8890.css","precedence":"next"}],["$","link","1",{"rel":"stylesheet","href":"/_next/static/css/738b0b1c24aae500.css","precedence":"next"}]],["$","html",null,{"lang":"en","className":"__variable_9e44ca","suppressHydrationWarning":true,"children":[["$","head",null,{"children":["$","$L2",null,{"id":"theme-init","strategy":"beforeInteractive","children":"(function(){try{var t=localStorage.getItem(\"pi-theme\");if(t===\"dark\")document.documentElement.classList.add(\"dark\")}catch(e){}})();"}]}],["$","body",null,{"style":{"height":"100dvh","display":"flex","flexDirection":"column"},"children":["$","$L3",null,{"parallelRouterKey":"children","template":["$","$L4",null,{}],"notFound":[[["$","title",null,{"children":"404: This page could not be found."}],["$","div",null,{"style":{"fontFamily":"system-ui,\"Segoe UI\",Roboto,Helvetica,Arial,sans-serif,\"Apple Color Emoji\",\"Segoe UI Emoji\"","height":"100vh","textAlign":"center","display":"flex","flexDirection":"column","alignItems":"center","justifyContent":"center"},"children":["$","div",null,{"children":[["$","style",null,{"dangerouslySetInnerHTML":{"__html":"body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}"}}],["$","h1",null,{"className":"next-error-h1","style":{"display":"inline-block","margin":"0 20px 0 0","padding":"0 23px 0 0","fontSize":24,"fontWeight":500,"verticalAlign":"top","lineHeight":"49px"},"children":404}],["$","div",null,{"style":{"display":"inline-block"},"children":["$","h2",null,{"style":{"fontSize":14,"fontWeight":400,"lineHeight":"49px","margin":0},"children":"This page could not be found."}]}]]}]}]],[]]}]}]]}]]}],"isPartial":false,"staleTime":300,"varyParams":null,"buildId":"zeWki1Z47rqBkR2ph5H6N"}
|
|
@@ -1,6 +0,0 @@
|
|
|
1
|
-
1:"$Sreact.fragment"
|
|
2
|
-
2:I[90484,[],"ViewportBoundary"]
|
|
3
|
-
3:I[90484,[],"MetadataBoundary"]
|
|
4
|
-
4:"$Sreact.suspense"
|
|
5
|
-
5:I[86869,[],"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":[["$","title","0",{"children":"AnnoVibe"}],["$","meta","1",{"name":"description","content":"AI-native bioinformatics workspace by Annoroad"}],["$","link","2",{"rel":"shortcut icon","href":"/icon.svg","type":"image/svg+xml"}],["$","link","3",{"rel":"icon","href":"/icon.svg","type":"image/svg+xml"}],["$","$L5","4",{}]]}]}]}],["$","meta",null,{"name":"next-size-adjust","content":""}]]}],"isPartial":false,"staleTime":300,"varyParams":null,"buildId":"zeWki1Z47rqBkR2ph5H6N"}
|
|
@@ -1,7 +0,0 @@
|
|
|
1
|
-
1:"$Sreact.fragment"
|
|
2
|
-
2:I[42593,["7177","static/chunks/app/layout-101c4ccdf12880f0.js"],""]
|
|
3
|
-
3:I[57121,[],""]
|
|
4
|
-
4:I[74581,[],""]
|
|
5
|
-
:HL["/_next/static/css/9bcd6051db4f8890.css","style"]
|
|
6
|
-
:HL["/_next/static/css/738b0b1c24aae500.css","style"]
|
|
7
|
-
0:{"rsc":["$","$1","c",{"children":[[["$","link","0",{"rel":"stylesheet","href":"/_next/static/css/9bcd6051db4f8890.css","precedence":"next"}],["$","link","1",{"rel":"stylesheet","href":"/_next/static/css/738b0b1c24aae500.css","precedence":"next"}]],["$","html",null,{"lang":"en","className":"__variable_9e44ca","suppressHydrationWarning":true,"children":[["$","head",null,{"children":["$","$L2",null,{"id":"theme-init","strategy":"beforeInteractive","children":"(function(){try{var t=localStorage.getItem(\"pi-theme\");if(t===\"dark\")document.documentElement.classList.add(\"dark\")}catch(e){}})();"}]}],["$","body",null,{"style":{"height":"100dvh","display":"flex","flexDirection":"column"},"children":["$","$L3",null,{"parallelRouterKey":"children","template":["$","$L4",null,{}],"notFound":[[["$","title",null,{"children":"404: This page could not be found."}],["$","div",null,{"style":{"fontFamily":"system-ui,\"Segoe UI\",Roboto,Helvetica,Arial,sans-serif,\"Apple Color Emoji\",\"Segoe UI Emoji\"","height":"100vh","textAlign":"center","display":"flex","flexDirection":"column","alignItems":"center","justifyContent":"center"},"children":["$","div",null,{"children":[["$","style",null,{"dangerouslySetInnerHTML":{"__html":"body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}"}}],["$","h1",null,{"className":"next-error-h1","style":{"display":"inline-block","margin":"0 20px 0 0","padding":"0 23px 0 0","fontSize":24,"fontWeight":500,"verticalAlign":"top","lineHeight":"49px"},"children":404}],["$","div",null,{"style":{"display":"inline-block"},"children":["$","h2",null,{"style":{"fontSize":14,"fontWeight":400,"lineHeight":"49px","margin":0},"children":"This page could not be found."}]}]]}]}]],[]]}]}]]}]]}],"isPartial":false,"staleTime":300,"varyParams":null,"buildId":"zeWki1Z47rqBkR2ph5H6N"}
|
|
@@ -1,5 +0,0 @@
|
|
|
1
|
-
1:"$Sreact.fragment"
|
|
2
|
-
2:I[57121,[],""]
|
|
3
|
-
3:I[74581,[],""]
|
|
4
|
-
4:[]
|
|
5
|
-
0:{"rsc":["$","$1","c",{"children":[null,["$","$L2",null,{"parallelRouterKey":"children","template":["$","$L3",null,{}]}]]}],"isPartial":false,"staleTime":300,"varyParams":"$W4","buildId":"zeWki1Z47rqBkR2ph5H6N"}
|
|
@@ -1,6 +0,0 @@
|
|
|
1
|
-
1:"$Sreact.fragment"
|
|
2
|
-
2:I[90484,[],"ViewportBoundary"]
|
|
3
|
-
3:I[90484,[],"MetadataBoundary"]
|
|
4
|
-
4:"$Sreact.suspense"
|
|
5
|
-
5:I[86869,[],"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":[["$","title","0",{"children":"AnnoVibe"}],["$","meta","1",{"name":"description","content":"AI-native bioinformatics workspace by Annoroad"}],["$","link","2",{"rel":"shortcut icon","href":"/icon.svg","type":"image/svg+xml"}],["$","link","3",{"rel":"icon","href":"/icon.svg","type":"image/svg+xml"}],["$","$L5","4",{}]]}]}]}],["$","meta",null,{"name":"next-size-adjust","content":""}]]}],"isPartial":false,"staleTime":300,"varyParams":null,"buildId":"zeWki1Z47rqBkR2ph5H6N"}
|
|
@@ -1,7 +0,0 @@
|
|
|
1
|
-
1:"$Sreact.fragment"
|
|
2
|
-
2:I[42593,["7177","static/chunks/app/layout-101c4ccdf12880f0.js"],""]
|
|
3
|
-
3:I[57121,[],""]
|
|
4
|
-
4:I[74581,[],""]
|
|
5
|
-
:HL["/_next/static/css/9bcd6051db4f8890.css","style"]
|
|
6
|
-
:HL["/_next/static/css/738b0b1c24aae500.css","style"]
|
|
7
|
-
0:{"rsc":["$","$1","c",{"children":[[["$","link","0",{"rel":"stylesheet","href":"/_next/static/css/9bcd6051db4f8890.css","precedence":"next"}],["$","link","1",{"rel":"stylesheet","href":"/_next/static/css/738b0b1c24aae500.css","precedence":"next"}]],["$","html",null,{"lang":"en","className":"__variable_9e44ca","suppressHydrationWarning":true,"children":[["$","head",null,{"children":["$","$L2",null,{"id":"theme-init","strategy":"beforeInteractive","children":"(function(){try{var t=localStorage.getItem(\"pi-theme\");if(t===\"dark\")document.documentElement.classList.add(\"dark\")}catch(e){}})();"}]}],["$","body",null,{"style":{"height":"100dvh","display":"flex","flexDirection":"column"},"children":["$","$L3",null,{"parallelRouterKey":"children","template":["$","$L4",null,{}],"notFound":[[["$","title",null,{"children":"404: This page could not be found."}],["$","div",null,{"style":{"fontFamily":"system-ui,\"Segoe UI\",Roboto,Helvetica,Arial,sans-serif,\"Apple Color Emoji\",\"Segoe UI Emoji\"","height":"100vh","textAlign":"center","display":"flex","flexDirection":"column","alignItems":"center","justifyContent":"center"},"children":["$","div",null,{"children":[["$","style",null,{"dangerouslySetInnerHTML":{"__html":"body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}"}}],["$","h1",null,{"className":"next-error-h1","style":{"display":"inline-block","margin":"0 20px 0 0","padding":"0 23px 0 0","fontSize":24,"fontWeight":500,"verticalAlign":"top","lineHeight":"49px"},"children":404}],["$","div",null,{"style":{"display":"inline-block"},"children":["$","h2",null,{"style":{"fontSize":14,"fontWeight":400,"lineHeight":"49px","margin":0},"children":"This page could not be found."}]}]]}]}]],[]]}]}]]}]]}],"isPartial":false,"staleTime":300,"varyParams":null,"buildId":"zeWki1Z47rqBkR2ph5H6N"}
|
|
@@ -1,5 +0,0 @@
|
|
|
1
|
-
1:"$Sreact.fragment"
|
|
2
|
-
2:I[57121,[],""]
|
|
3
|
-
3:I[74581,[],""]
|
|
4
|
-
4:[]
|
|
5
|
-
0:{"rsc":["$","$1","c",{"children":[null,["$","$L2",null,{"parallelRouterKey":"children","template":["$","$L3",null,{}]}]]}],"isPartial":false,"staleTime":300,"varyParams":"$W4","buildId":"zeWki1Z47rqBkR2ph5H6N"}
|
|
@@ -1,5 +0,0 @@
|
|
|
1
|
-
1:"$Sreact.fragment"
|
|
2
|
-
2:I[57121,[],""]
|
|
3
|
-
3:I[74581,[],""]
|
|
4
|
-
4:[]
|
|
5
|
-
0:{"rsc":["$","$1","c",{"children":[null,["$","$L2",null,{"parallelRouterKey":"children","template":["$","$L3",null,{}]}]]}],"isPartial":false,"staleTime":300,"varyParams":"$W4","buildId":"zeWki1Z47rqBkR2ph5H6N"}
|
|
@@ -1,6 +0,0 @@
|
|
|
1
|
-
1:"$Sreact.fragment"
|
|
2
|
-
2:I[90484,[],"ViewportBoundary"]
|
|
3
|
-
3:I[90484,[],"MetadataBoundary"]
|
|
4
|
-
4:"$Sreact.suspense"
|
|
5
|
-
5:I[86869,[],"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":[["$","title","0",{"children":"AnnoVibe"}],["$","meta","1",{"name":"description","content":"AI-native bioinformatics workspace by Annoroad"}],["$","link","2",{"rel":"shortcut icon","href":"/icon.svg","type":"image/svg+xml"}],["$","link","3",{"rel":"icon","href":"/icon.svg","type":"image/svg+xml"}],["$","$L5","4",{}]]}]}]}],["$","meta",null,{"name":"next-size-adjust","content":""}]]}],"isPartial":false,"staleTime":300,"varyParams":null,"buildId":"zeWki1Z47rqBkR2ph5H6N"}
|
|
@@ -1,7 +0,0 @@
|
|
|
1
|
-
1:"$Sreact.fragment"
|
|
2
|
-
2:I[42593,["7177","static/chunks/app/layout-101c4ccdf12880f0.js"],""]
|
|
3
|
-
3:I[57121,[],""]
|
|
4
|
-
4:I[74581,[],""]
|
|
5
|
-
:HL["/_next/static/css/9bcd6051db4f8890.css","style"]
|
|
6
|
-
:HL["/_next/static/css/738b0b1c24aae500.css","style"]
|
|
7
|
-
0:{"rsc":["$","$1","c",{"children":[[["$","link","0",{"rel":"stylesheet","href":"/_next/static/css/9bcd6051db4f8890.css","precedence":"next"}],["$","link","1",{"rel":"stylesheet","href":"/_next/static/css/738b0b1c24aae500.css","precedence":"next"}]],["$","html",null,{"lang":"en","className":"__variable_9e44ca","suppressHydrationWarning":true,"children":[["$","head",null,{"children":["$","$L2",null,{"id":"theme-init","strategy":"beforeInteractive","children":"(function(){try{var t=localStorage.getItem(\"pi-theme\");if(t===\"dark\")document.documentElement.classList.add(\"dark\")}catch(e){}})();"}]}],["$","body",null,{"style":{"height":"100dvh","display":"flex","flexDirection":"column"},"children":["$","$L3",null,{"parallelRouterKey":"children","template":["$","$L4",null,{}],"notFound":[[["$","title",null,{"children":"404: This page could not be found."}],["$","div",null,{"style":{"fontFamily":"system-ui,\"Segoe UI\",Roboto,Helvetica,Arial,sans-serif,\"Apple Color Emoji\",\"Segoe UI Emoji\"","height":"100vh","textAlign":"center","display":"flex","flexDirection":"column","alignItems":"center","justifyContent":"center"},"children":["$","div",null,{"children":[["$","style",null,{"dangerouslySetInnerHTML":{"__html":"body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}"}}],["$","h1",null,{"className":"next-error-h1","style":{"display":"inline-block","margin":"0 20px 0 0","padding":"0 23px 0 0","fontSize":24,"fontWeight":500,"verticalAlign":"top","lineHeight":"49px"},"children":404}],["$","div",null,{"style":{"display":"inline-block"},"children":["$","h2",null,{"style":{"fontSize":14,"fontWeight":400,"lineHeight":"49px","margin":0},"children":"This page could not be found."}]}]]}]}]],[]]}]}]]}]]}],"isPartial":false,"staleTime":300,"varyParams":null,"buildId":"zeWki1Z47rqBkR2ph5H6N"}
|
|
@@ -1,5 +0,0 @@
|
|
|
1
|
-
1:"$Sreact.fragment"
|
|
2
|
-
2:I[57121,[],""]
|
|
3
|
-
3:I[74581,[],""]
|
|
4
|
-
4:[]
|
|
5
|
-
0:{"rsc":["$","$1","c",{"children":[null,["$","$L2",null,{"parallelRouterKey":"children","template":["$","$L3",null,{}]}]]}],"isPartial":false,"staleTime":300,"varyParams":"$W4","buildId":"zeWki1Z47rqBkR2ph5H6N"}
|