@seqyuan/annovibe 0.8.143 → 0.8.145
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 -12
- package/.next/build-manifest.json +3 -3
- package/.next/prerender-manifest.json +3 -3
- package/.next/react-loadable-manifest.json +16 -16
- package/.next/required-server-files.js +1 -1
- package/.next/required-server-files.json +1 -1
- package/.next/routes-manifest.json +28 -7
- package/.next/server/app/_global-error/page.js +2 -2
- 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.rsc +1 -1
- package/.next/server/app/_global-error.segments/_full.segment.rsc +1 -1
- package/.next/server/app/_global-error.segments/_global-error/__PAGE__.segment.rsc +1 -1
- package/.next/server/app/_global-error.segments/_tree.segment.rsc +1 -1
- package/.next/server/app/_not-found/page.js +2 -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.rsc +1 -1
- package/.next/server/app/_not-found.segments/_full.segment.rsc +1 -1
- package/.next/server/app/_not-found.segments/_not-found/__PAGE__.segment.rsc +1 -1
- package/.next/server/app/_not-found.segments/_tree.segment.rsc +1 -1
- 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 +1 -1
- 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 +2 -2
- 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 +2 -2
- 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 +2 -2
- package/.next/server/app/api/memory/promote/route.js +2 -2
- 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/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 +1 -1
- 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 +2 -2
- package/.next/server/app/api/skills/route.js +1 -1
- 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/icon.svg/route.js +1 -1
- package/.next/server/app/index.html +1 -1
- package/.next/server/app/index.rsc +5 -5
- package/.next/server/app/index.segments/__PAGE__.segment.rsc +5 -5
- package/.next/server/app/index.segments/_full.segment.rsc +5 -5
- package/.next/server/app/index.segments/_tree.segment.rsc +1 -1
- package/.next/server/app/login/page.js +2 -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.rsc +1 -1
- package/.next/server/app/login.segments/_full.segment.rsc +1 -1
- package/.next/server/app/login.segments/_tree.segment.rsc +1 -1
- package/.next/server/app/login.segments/login/__PAGE__.segment.rsc +1 -1
- package/.next/server/app/page.js +14 -14
- package/.next/server/app/page_client-reference-manifest.js +1 -1
- package/.next/server/app/smoke/page.js +2 -2
- package/.next/server/app/smoke/page_client-reference-manifest.js +1 -1
- package/.next/server/app/smoke/session-stream/page.js +1 -1
- 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.rsc +5 -5
- package/.next/server/app/smoke/session-stream.segments/_full.segment.rsc +5 -5
- package/.next/server/app/smoke/session-stream.segments/_tree.segment.rsc +1 -1
- package/.next/server/app/smoke/session-stream.segments/smoke/session-stream/__PAGE__.segment.rsc +5 -5
- package/.next/server/app/smoke.html +2 -2
- package/.next/server/app/smoke.rsc +3 -3
- package/.next/server/app/smoke.segments/_full.segment.rsc +3 -3
- package/.next/server/app/smoke.segments/_tree.segment.rsc +1 -1
- package/.next/server/app/smoke.segments/smoke/__PAGE__.segment.rsc +3 -3
- package/.next/server/app-paths-manifest.json +11 -12
- package/.next/server/chunks/402.js +2 -2
- package/.next/server/chunks/42.js +1 -1
- package/.next/server/chunks/4801.js +22 -0
- package/.next/server/chunks/6429.js +9 -12
- package/.next/server/chunks/7831.js +1 -1
- package/.next/server/chunks/8305.js +5 -5
- package/.next/server/chunks/9557.js +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 +4 -4
- package/.next/server/next-font-manifest.js +1 -1
- package/.next/server/next-font-manifest.json +1 -1
- package/.next/server/pages/404.html +1 -1
- package/.next/server/pages/500.html +1 -1
- package/.next/server/preview-props.json +3 -3
- package/.next/server/server-reference-manifest.json +1 -1
- package/.next/static/Ag1v_S9DTKxBH3_0fOnfG/_buildManifest.js +1 -0
- package/.next/static/chunks/{5690.332f301b9df6f2dd.js → 3309.d0c34b5ef504a551.js} +1 -1
- package/.next/static/chunks/5690.64d843d3db8e1b4b.js +1 -0
- package/.next/static/chunks/{6586.5969468a897d9e00.js → 6586.775a449050e0e9cc.js} +1 -1
- package/.next/static/chunks/6630-afa0ca63437a28c6.js +22 -0
- package/.next/static/chunks/{8863.d853f8eb221377ed.js → 8863.2ae457485a63aa22.js} +1 -1
- package/.next/static/chunks/9867-9e590871a9f2b1b9.js +260 -0
- package/.next/static/chunks/app/_global-error/{page-ebf7ae60150d40d4.js → page-3bfe21af77950daa.js} +1 -1
- package/.next/static/chunks/app/api/agent/[id]/events/{route-ebf7ae60150d40d4.js → route-3bfe21af77950daa.js} +1 -1
- package/.next/static/chunks/app/api/agent/[id]/prepare/{route-ebf7ae60150d40d4.js → route-3bfe21af77950daa.js} +1 -1
- package/.next/static/chunks/app/api/agent/[id]/{route-ebf7ae60150d40d4.js → route-3bfe21af77950daa.js} +1 -1
- package/.next/static/chunks/app/api/agent/new/route-3bfe21af77950daa.js +1 -0
- package/.next/static/chunks/app/api/agent/running/events/route-3bfe21af77950daa.js +1 -0
- package/.next/static/chunks/app/api/agent/running/route-3bfe21af77950daa.js +1 -0
- package/.next/static/chunks/app/api/agent/runtime/route-3bfe21af77950daa.js +1 -0
- package/.next/static/chunks/app/api/apps/[id]/[[...path]]/route-3bfe21af77950daa.js +1 -0
- package/.next/static/chunks/app/api/apps/route-3bfe21af77950daa.js +1 -0
- package/.next/static/chunks/app/api/auth/all-providers/route-3bfe21af77950daa.js +1 -0
- package/.next/static/chunks/app/api/auth/api-key/[provider]/route-3bfe21af77950daa.js +1 -0
- package/.next/static/chunks/app/api/auth/login/[provider]/route-3bfe21af77950daa.js +1 -0
- package/.next/static/chunks/app/api/auth/login/route-3bfe21af77950daa.js +1 -0
- package/.next/static/chunks/app/api/auth/logout/[provider]/route-3bfe21af77950daa.js +1 -0
- package/.next/static/chunks/app/api/auth/providers/route-3bfe21af77950daa.js +1 -0
- package/.next/static/chunks/app/api/auth/status/route-3bfe21af77950daa.js +1 -0
- package/.next/static/chunks/app/api/auth/totp/route-3bfe21af77950daa.js +1 -0
- package/.next/static/chunks/app/api/debug-models/route-3bfe21af77950daa.js +1 -0
- package/.next/static/chunks/app/api/default-cwd/route-3bfe21af77950daa.js +1 -0
- package/.next/static/chunks/app/api/file-index/route-3bfe21af77950daa.js +1 -0
- package/.next/static/chunks/app/api/file-tree/delete/route-3bfe21af77950daa.js +1 -0
- package/.next/static/chunks/app/api/file-tree/mkdir/route-3bfe21af77950daa.js +1 -0
- package/.next/static/chunks/app/api/file-tree/rename/route-3bfe21af77950daa.js +1 -0
- package/.next/static/chunks/app/api/file-tree/reveal/route-3bfe21af77950daa.js +1 -0
- package/.next/static/chunks/app/api/file-tree/write/route-3bfe21af77950daa.js +1 -0
- package/.next/static/chunks/app/api/file-watch/route-3bfe21af77950daa.js +1 -0
- package/.next/static/chunks/app/api/files/[...path]/route-3bfe21af77950daa.js +1 -0
- package/.next/static/chunks/app/api/harness/route-3bfe21af77950daa.js +1 -0
- package/.next/static/chunks/app/api/home/route-3bfe21af77950daa.js +1 -0
- package/.next/static/chunks/app/api/im/cancel/route-3bfe21af77950daa.js +1 -0
- package/.next/static/chunks/app/api/im/gateway-status/route-3bfe21af77950daa.js +1 -0
- package/.next/static/chunks/app/api/im/project/route-3bfe21af77950daa.js +1 -0
- package/.next/static/chunks/app/api/im/projects/route-3bfe21af77950daa.js +1 -0
- package/.next/static/chunks/app/api/im/session-ids/route-3bfe21af77950daa.js +1 -0
- package/.next/static/chunks/app/api/im/turn/route-3bfe21af77950daa.js +1 -0
- package/.next/static/chunks/app/api/images/upload/route-3bfe21af77950daa.js +1 -0
- package/.next/static/chunks/app/api/internal/runtime/route-3bfe21af77950daa.js +1 -0
- package/.next/static/chunks/app/api/memory/dismiss/route-3bfe21af77950daa.js +1 -0
- package/.next/static/chunks/app/api/memory/promote/route-3bfe21af77950daa.js +1 -0
- package/.next/static/chunks/app/api/models/route-3bfe21af77950daa.js +1 -0
- package/.next/static/chunks/app/api/models-config/discover/route-3bfe21af77950daa.js +1 -0
- package/.next/static/chunks/app/api/models-config/route-3bfe21af77950daa.js +1 -0
- package/.next/static/chunks/app/api/models-config/test/route-3bfe21af77950daa.js +1 -0
- package/.next/static/chunks/app/api/plot-kernels/route-3bfe21af77950daa.js +1 -0
- package/.next/static/chunks/app/api/plot-kernels/status/route-3bfe21af77950daa.js +1 -0
- package/.next/static/chunks/app/api/plot-kernels/stop/route-3bfe21af77950daa.js +1 -0
- package/.next/static/chunks/app/api/plugins/route-3bfe21af77950daa.js +1 -0
- package/.next/static/chunks/app/api/project-trust/route-3bfe21af77950daa.js +1 -0
- package/.next/static/chunks/app/api/projects/browse/route-3bfe21af77950daa.js +1 -0
- package/.next/static/chunks/app/api/projects/route-3bfe21af77950daa.js +1 -0
- package/.next/static/chunks/app/api/search/route-3bfe21af77950daa.js +1 -0
- package/.next/static/chunks/app/api/session-index/events/route-3bfe21af77950daa.js +1 -0
- package/.next/static/chunks/app/api/sessions/[id]/auto-name/route-3bfe21af77950daa.js +1 -0
- package/.next/static/chunks/app/api/sessions/[id]/context/route-3bfe21af77950daa.js +1 -0
- package/.next/static/chunks/app/api/sessions/[id]/export/route-3bfe21af77950daa.js +1 -0
- package/.next/static/chunks/app/api/sessions/[id]/media/route-3bfe21af77950daa.js +1 -0
- package/.next/static/chunks/app/api/sessions/[id]/route-3bfe21af77950daa.js +1 -0
- package/.next/static/chunks/app/api/sessions/[id]/shadowed/route-3bfe21af77950daa.js +1 -0
- package/.next/static/chunks/app/api/sessions/new/route-3bfe21af77950daa.js +1 -0
- package/.next/static/chunks/app/api/sessions/route-3bfe21af77950daa.js +1 -0
- package/.next/static/chunks/app/api/settings/route-3bfe21af77950daa.js +1 -0
- package/.next/static/chunks/app/api/skills/check/route-3bfe21af77950daa.js +1 -0
- package/.next/static/chunks/app/api/skills/install/route-3bfe21af77950daa.js +1 -0
- package/.next/static/chunks/app/api/skills/route-3bfe21af77950daa.js +1 -0
- package/.next/static/chunks/app/api/skills/search/route-3bfe21af77950daa.js +1 -0
- package/.next/static/chunks/app/api/skills/update/route-3bfe21af77950daa.js +1 -0
- package/.next/static/chunks/app/api/smoke/prompt-admission/route-3bfe21af77950daa.js +1 -0
- package/.next/static/chunks/app/api/soul/route-3bfe21af77950daa.js +1 -0
- package/.next/static/chunks/app/api/subagents/status/route-3bfe21af77950daa.js +1 -0
- package/.next/static/chunks/app/api/version/route-3bfe21af77950daa.js +1 -0
- package/.next/static/chunks/app/favicon.ico/route-3bfe21af77950daa.js +1 -0
- package/.next/static/chunks/app/page-46021c793e1b09a3.js +22 -0
- package/.next/static/chunks/app/smoke/{page-82db33b4fdd2e0b4.js → page-7226fa31540df8a8.js} +1 -1
- package/.next/static/chunks/app/smoke/session-stream/{page-f0f45a804e43fece.js → page-ed9bc29486c9e75d.js} +2 -2
- package/.next/static/chunks/next/dist/client/components/builtin/app-error-3bfe21af77950daa.js +1 -0
- package/.next/static/chunks/next/dist/client/components/builtin/forbidden-3bfe21af77950daa.js +1 -0
- package/.next/static/chunks/next/dist/client/components/builtin/not-found-3bfe21af77950daa.js +1 -0
- package/.next/static/chunks/next/dist/client/components/builtin/unauthorized-3bfe21af77950daa.js +1 -0
- package/.next/static/chunks/{webpack-a60990aaf3b13e7a.js → webpack-19f3f7824a602f3b.js} +1 -1
- package/README.md +29 -2
- package/next.config.ts +25 -0
- package/package.json +5 -1
- package/.next/server/app/api/plot-kernels/save/route.js +0 -1
- package/.next/server/app/api/plot-kernels/save/route_client-reference-manifest.js +0 -1
- package/.next/server/chunks/7699.js +0 -22
- package/.next/static/993-z3SwOS_AuLBpkiyRr/_buildManifest.js +0 -1
- package/.next/static/chunks/1230-d71557da20554f50.js +0 -22
- package/.next/static/chunks/3309.581b04bacfeed701.js +0 -1
- package/.next/static/chunks/9867-1b73c62e8b604095.js +0 -260
- package/.next/static/chunks/app/api/agent/new/route-ebf7ae60150d40d4.js +0 -1
- package/.next/static/chunks/app/api/agent/running/events/route-ebf7ae60150d40d4.js +0 -1
- package/.next/static/chunks/app/api/agent/running/route-ebf7ae60150d40d4.js +0 -1
- package/.next/static/chunks/app/api/agent/runtime/route-ebf7ae60150d40d4.js +0 -1
- package/.next/static/chunks/app/api/apps/[id]/[[...path]]/route-ebf7ae60150d40d4.js +0 -1
- package/.next/static/chunks/app/api/apps/route-ebf7ae60150d40d4.js +0 -1
- package/.next/static/chunks/app/api/auth/all-providers/route-ebf7ae60150d40d4.js +0 -1
- package/.next/static/chunks/app/api/auth/api-key/[provider]/route-ebf7ae60150d40d4.js +0 -1
- package/.next/static/chunks/app/api/auth/login/[provider]/route-ebf7ae60150d40d4.js +0 -1
- package/.next/static/chunks/app/api/auth/login/route-ebf7ae60150d40d4.js +0 -1
- package/.next/static/chunks/app/api/auth/logout/[provider]/route-ebf7ae60150d40d4.js +0 -1
- package/.next/static/chunks/app/api/auth/providers/route-ebf7ae60150d40d4.js +0 -1
- package/.next/static/chunks/app/api/auth/status/route-ebf7ae60150d40d4.js +0 -1
- package/.next/static/chunks/app/api/auth/totp/route-ebf7ae60150d40d4.js +0 -1
- package/.next/static/chunks/app/api/debug-models/route-ebf7ae60150d40d4.js +0 -1
- package/.next/static/chunks/app/api/default-cwd/route-ebf7ae60150d40d4.js +0 -1
- package/.next/static/chunks/app/api/file-index/route-ebf7ae60150d40d4.js +0 -1
- package/.next/static/chunks/app/api/file-tree/delete/route-ebf7ae60150d40d4.js +0 -1
- package/.next/static/chunks/app/api/file-tree/mkdir/route-ebf7ae60150d40d4.js +0 -1
- package/.next/static/chunks/app/api/file-tree/rename/route-ebf7ae60150d40d4.js +0 -1
- package/.next/static/chunks/app/api/file-tree/reveal/route-ebf7ae60150d40d4.js +0 -1
- package/.next/static/chunks/app/api/file-tree/write/route-ebf7ae60150d40d4.js +0 -1
- package/.next/static/chunks/app/api/file-watch/route-ebf7ae60150d40d4.js +0 -1
- package/.next/static/chunks/app/api/files/[...path]/route-ebf7ae60150d40d4.js +0 -1
- package/.next/static/chunks/app/api/harness/route-ebf7ae60150d40d4.js +0 -1
- package/.next/static/chunks/app/api/home/route-ebf7ae60150d40d4.js +0 -1
- package/.next/static/chunks/app/api/im/cancel/route-ebf7ae60150d40d4.js +0 -1
- package/.next/static/chunks/app/api/im/gateway-status/route-ebf7ae60150d40d4.js +0 -1
- package/.next/static/chunks/app/api/im/project/route-ebf7ae60150d40d4.js +0 -1
- package/.next/static/chunks/app/api/im/projects/route-ebf7ae60150d40d4.js +0 -1
- package/.next/static/chunks/app/api/im/session-ids/route-ebf7ae60150d40d4.js +0 -1
- package/.next/static/chunks/app/api/im/turn/route-ebf7ae60150d40d4.js +0 -1
- package/.next/static/chunks/app/api/images/upload/route-ebf7ae60150d40d4.js +0 -1
- package/.next/static/chunks/app/api/internal/runtime/route-ebf7ae60150d40d4.js +0 -1
- package/.next/static/chunks/app/api/memory/dismiss/route-ebf7ae60150d40d4.js +0 -1
- package/.next/static/chunks/app/api/memory/promote/route-ebf7ae60150d40d4.js +0 -1
- package/.next/static/chunks/app/api/models/route-ebf7ae60150d40d4.js +0 -1
- package/.next/static/chunks/app/api/models-config/discover/route-ebf7ae60150d40d4.js +0 -1
- package/.next/static/chunks/app/api/models-config/route-ebf7ae60150d40d4.js +0 -1
- package/.next/static/chunks/app/api/models-config/test/route-ebf7ae60150d40d4.js +0 -1
- package/.next/static/chunks/app/api/plot-kernels/route-ebf7ae60150d40d4.js +0 -1
- package/.next/static/chunks/app/api/plot-kernels/save/route-ebf7ae60150d40d4.js +0 -1
- package/.next/static/chunks/app/api/plot-kernels/status/route-ebf7ae60150d40d4.js +0 -1
- package/.next/static/chunks/app/api/plot-kernels/stop/route-ebf7ae60150d40d4.js +0 -1
- package/.next/static/chunks/app/api/plugins/route-ebf7ae60150d40d4.js +0 -1
- package/.next/static/chunks/app/api/project-trust/route-ebf7ae60150d40d4.js +0 -1
- package/.next/static/chunks/app/api/projects/browse/route-ebf7ae60150d40d4.js +0 -1
- package/.next/static/chunks/app/api/projects/route-ebf7ae60150d40d4.js +0 -1
- package/.next/static/chunks/app/api/search/route-ebf7ae60150d40d4.js +0 -1
- package/.next/static/chunks/app/api/session-index/events/route-ebf7ae60150d40d4.js +0 -1
- package/.next/static/chunks/app/api/sessions/[id]/auto-name/route-ebf7ae60150d40d4.js +0 -1
- package/.next/static/chunks/app/api/sessions/[id]/context/route-ebf7ae60150d40d4.js +0 -1
- package/.next/static/chunks/app/api/sessions/[id]/export/route-ebf7ae60150d40d4.js +0 -1
- package/.next/static/chunks/app/api/sessions/[id]/media/route-ebf7ae60150d40d4.js +0 -1
- package/.next/static/chunks/app/api/sessions/[id]/route-ebf7ae60150d40d4.js +0 -1
- package/.next/static/chunks/app/api/sessions/[id]/shadowed/route-ebf7ae60150d40d4.js +0 -1
- package/.next/static/chunks/app/api/sessions/new/route-ebf7ae60150d40d4.js +0 -1
- package/.next/static/chunks/app/api/sessions/route-ebf7ae60150d40d4.js +0 -1
- package/.next/static/chunks/app/api/settings/route-ebf7ae60150d40d4.js +0 -1
- package/.next/static/chunks/app/api/skills/check/route-ebf7ae60150d40d4.js +0 -1
- package/.next/static/chunks/app/api/skills/install/route-ebf7ae60150d40d4.js +0 -1
- package/.next/static/chunks/app/api/skills/route-ebf7ae60150d40d4.js +0 -1
- package/.next/static/chunks/app/api/skills/search/route-ebf7ae60150d40d4.js +0 -1
- package/.next/static/chunks/app/api/skills/update/route-ebf7ae60150d40d4.js +0 -1
- package/.next/static/chunks/app/api/smoke/prompt-admission/route-ebf7ae60150d40d4.js +0 -1
- package/.next/static/chunks/app/api/soul/route-ebf7ae60150d40d4.js +0 -1
- package/.next/static/chunks/app/api/subagents/status/route-ebf7ae60150d40d4.js +0 -1
- package/.next/static/chunks/app/api/version/route-ebf7ae60150d40d4.js +0 -1
- package/.next/static/chunks/app/favicon.ico/route-ebf7ae60150d40d4.js +0 -1
- package/.next/static/chunks/app/page-bdd2e6fc471b822f.js +0 -22
- package/.next/static/chunks/next/dist/client/components/builtin/app-error-ebf7ae60150d40d4.js +0 -1
- package/.next/static/chunks/next/dist/client/components/builtin/forbidden-ebf7ae60150d40d4.js +0 -1
- package/.next/static/chunks/next/dist/client/components/builtin/not-found-ebf7ae60150d40d4.js +0 -1
- package/.next/static/chunks/next/dist/client/components/builtin/unauthorized-ebf7ae60150d40d4.js +0 -1
- /package/.next/static/{993-z3SwOS_AuLBpkiyRr → Ag1v_S9DTKxBH3_0fOnfG}/_ssgManifest.js +0 -0
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[2444],{54833:(e,t,o)=>{"use strict";o.r(t),o.d(t,{default:()=>Y});var i=o(95155),r=o(12115),s=o(25618),n=o(76577),a=o(8391),d=o(99867),l=o(99670),c=o(31775),m=o(
|
|
1
|
+
(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[2444],{54833:(e,t,o)=>{"use strict";o.r(t),o.d(t,{default:()=>Y});var i=o(95155),r=o(12115),s=o(25618),n=o(76577),a=o(8391),d=o(99867),l=o(99670),c=o(31775),m=o(56264),p=o(49006),x=o(18678),u=o(99947),g=o(28093),h=o(17689),f=o(63161),k=o(53308),v=o(6750),w=o(96793);let b="/tmp/annovibe-smoke",y=`${b}/README.smoke.md`,j="/Volumes/data/github/seqyuan/annovibe",D=`${j}/smoke/report.md`,S=Date.UTC(2026,5,6,6,26,0);function C(e=0){return S+6e4*e}let E="data:image/svg+xml;utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%22640%22%20height%3D%22360%22%20viewBox%3D%220%200%20640%20360%22%3E%3Crect%20width%3D%22640%22%20height%3D%22360%22%20rx%3D%2224%22%20fill%3D%22%23f3f4f6%22%2F%3E%3Crect%20x%3D%2232%22%20y%3D%2232%22%20width%3D%22576%22%20height%3D%22296%22%20rx%3D%2220%22%20fill%3D%22%23ffffff%22%20stroke%3D%22%23d1d5db%22%2F%3E%3Ccircle%20cx%3D%22132%22%20cy%3D%22140%22%20r%3D%2256%22%20fill%3D%22%2360a5fa%22%2F%3E%3Crect%20x%3D%22216%22%20y%3D%2296%22%20width%3D%22272%22%20height%3D%2220%22%20rx%3D%2210%22%20fill%3D%22%23111827%22%2F%3E%3Crect%20x%3D%22216%22%20y%3D%22132%22%20width%3D%22208%22%20height%3D%2216%22%20rx%3D%228%22%20fill%3D%22%236b7280%22%2F%3E%3Crect%20x%3D%22216%22%20y%3D%22162%22%20width%3D%22168%22%20height%3D%2216%22%20rx%3D%228%22%20fill%3D%22%239ca3af%22%2F%3E%3Crect%20x%3D%22216%22%20y%3D%22214%22%20width%3D%22128%22%20height%3D%2236%22%20rx%3D%2210%22%20fill%3D%22%232563eb%22%2F%3E%3Ctext%20x%3D%22280%22%20y%3D%22237%22%20font-family%3D%22Arial%2C%20sans-serif%22%20font-size%3D%2216%22%20text-anchor%3D%22middle%22%20fill%3D%22%23ffffff%22%3EAlpha%3C%2Ftext%3E%3C%2Fsvg%3E",T=`
|
|
2
2
|
# Generative UI Smoke
|
|
3
3
|
|
|
4
4
|
Inline code: \`const answer = 42\`
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[8982],{18416:(e,t,n)=>{Promise.resolve().then(n.bind(n,77593))},77593:(e,t,n)=>{"use strict";n.r(t),n.d(t,{default:()=>g});var s=n(95155),o=n(12115),r=n(
|
|
1
|
+
(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[8982],{18416:(e,t,n)=>{Promise.resolve().then(n.bind(n,77593))},77593:(e,t,n)=>{"use strict";n.r(t),n.d(t,{default:()=>g});var s=n(95155),o=n(12115),r=n(26630),i=n(99867);let a="session-stream-smoke",d={role:"user",content:"baseline",timestamp:1},l={role:"assistant",content:[{type:"text",text:"remote completion"}],provider:"smoke",model:"smoke-model",timestamp:2},m={role:"assistant",content:[{type:"text",text:"remote progress before conflict"}],provider:"smoke",model:"smoke-model",timestamp:3},c={role:"assistant",content:[],provider:"smoke",model:"smoke-model",stopReason:"error",errorMessage:"stream_read_error",timestamp:2},u={id:a,path:"/tmp/session-stream-smoke.jsonl",cwd:"/tmp/annovibe-session-stream-smoke",created:new Date(0).toISOString(),modified:new Date(0).toISOString(),messageCount:1,firstMessage:"baseline"};function p(e,t=200){return new Response(JSON.stringify(e),{status:t,headers:{"Content-Type":"application/json"}})}function h(){let e=(0,r.T)({session:u,newSessionCwd:null}),t=e.messages.filter(e=>"assistant"===e.role).length,n=(0,o.useRef)(0),[a,d]=(0,o.useState)(!1),l=e.messages.filter(e=>"user"===e.role&&"concurrent prompt"===e.content).length,m=e.agentPhase?.kind??"idle";return(0,o.useEffect)(()=>{t<n.current?d(!0):n.current=t},[t]),(0,s.jsxs)("main",{style:{padding:24,fontFamily:"sans-serif"},children:[(0,s.jsx)("h1",{children:"Session stream smoke"}),(0,s.jsx)("div",{"data-smoke-running":e.agentRunning?"true":"false",children:e.agentRunning?"running":"idle"}),(0,s.jsx)("div",{"data-smoke-message-count":e.messages.length,children:e.messages.length}),(0,s.jsx)("div",{"data-smoke-assistant-count":t,children:t}),(0,s.jsx)("div",{"data-smoke-assistant-regressed":a?"true":"false",children:a?"regressed":"stable"}),(0,s.jsx)("div",{"data-smoke-conflict-optimistic-count":l,children:l}),(0,s.jsx)("div",{"data-smoke-error":e.agentError??"none",children:e.agentError??"none"}),(0,s.jsx)("div",{"data-smoke-phase":m,children:m}),(0,s.jsx)("button",{type:"button",onClick:()=>window.__sessionStreamSmoke?.remoteStart(),children:"Remote start"}),(0,s.jsx)("button",{type:"button",onClick:()=>window.__sessionStreamSmoke?.remoteToolStart(),children:"Remote tool start"}),(0,s.jsx)("button",{type:"button",onClick:()=>window.__sessionStreamSmoke?.remoteFinish(),children:"Remote finish"}),(0,s.jsx)("button",{type:"button",onClick:()=>window.__sessionStreamSmoke?.remoteFinishWithStaleRead(),children:"Remote finish with stale read"}),(0,s.jsx)("button",{type:"button",onClick:()=>window.__sessionStreamSmoke?.remoteFail(),children:"Remote fail"}),(0,s.jsx)("button",{type:"button",onClick:()=>window.__sessionStreamSmoke?.remotePromptError(),children:"Prompt error"}),(0,s.jsx)("button",{type:"button",onClick:()=>{window.__sessionStreamSmoke?.prepareConcurrentPrompt(),e.handleSend("concurrent prompt")},children:"Concurrent prompt"}),(0,s.jsx)("section",{style:{marginTop:24,maxWidth:760},children:e.messages.map((e,t)=>(0,s.jsx)(i.D,{message:e},t))})]})}function g(){let[e,t]=(0,o.useState)(!1),[n,r]=(0,o.useState)(!0);return(0,o.useEffect)(()=>{let e=window.fetch.bind(window),n=window.EventSource,s=!1,o=!1,r=null,i="idle",h=[],g=[d],S=["entry-user"],w=0,f=new Set,k=new Set,y=new TextEncoder;class _{static{this.CONNECTING=0}static{this.OPEN=1}static{this.CLOSED=2}static{this.instances=new Set}constructor(e){this.CONNECTING=0,this.OPEN=1,this.CLOSED=2,this.withCredentials=!1,this.readyState=1,this.onopen=null,this.onmessage=null,this.onerror=null,this.url=String(e),_.instances.add(this),window.setTimeout(()=>{this.onopen?.call(this,new Event("open")),this.emitRunning()},0)}close(){this.readyState=2,_.instances.delete(this)}addEventListener(){}removeEventListener(){}dispatchEvent(){return!0}emitRunning(){1===this.readyState&&this.url.includes("/api/agent/running/events")&&this.onmessage?.call(this,new MessageEvent("message",{data:JSON.stringify({type:"running",runningSessionIds:s?[a]:[]})}))}}let b=()=>{let e=s?[a]:[];for(let t of f)t(e);for(let e of _.instances)e.emitRunning()},v=(e,t)=>{let n=y.encode(`id: ${e}
|
|
2
2
|
data: ${JSON.stringify(t)}
|
|
3
3
|
|
|
4
4
|
`);for(let e of k)e.enqueue(n)};return window.fetch=async(t,n)=>{let l="string"==typeof t?t:t instanceof URL?t.toString():t.url,c=n?.method??"GET";if(l.includes(`/api/agent/${a}/events`)){let e=null;return new Response(new ReadableStream({start(t){e=t,k.add(t),t.enqueue(y.encode(`data: ${JSON.stringify({type:"connected",sessionId:a})}
|
|
5
5
|
|
|
6
|
-
`))},cancel(){e&&k.delete(e),e=null}}),{headers:{"Content-Type":"text/event-stream"}})}if(l.includes(`/api/sessions/${a}`)){let e=w>0;e&&(w-=1);let t=e?[d]:g,n=e?["entry-user"]:S;return e&&await new Promise(e=>window.setTimeout(e,75)),p({sessionId:a,filePath:u.path,info:u,tree:[],leafId:n[n.length-1]??null,context:{messages:t,entryIds:n,thinkingLevel:"off",model:{provider:"smoke",modelId:"smoke-model"}},totalMessages:t.length,hasMore:!1,agentState:{running:s,state:{isStreaming:"streaming"===i,isCompacting:!1,phase:i,activeTools:h,thinkingLevel:"off",contextUsage:null}}})}if(l.endsWith(`/api/agent/${a}`)&&"GET"===c)return p({running:s,state:{isStreaming:"streaming"===i,isCompacting:!1,phase:i,activeTools:h,thinkingLevel:"off",contextUsage:null}});if(l.endsWith(`/api/agent/${a}/prepare`)&&"POST"===c)return p({ok:!0,sessionId:a});if(l.endsWith(`/api/agent/${a}`)&&"POST"===c){let e=JSON.parse(String(n?.body??"{}"));return("prompt"===e.type&&(r=e),"prompt"===e.type&&o)?(o=!1,g=[...g,m],S=[...S,"entry-assistant-conflict"],v("smoke-epoch:conflict",{type:"message_end",message:m,__entryId:"entry-assistant-conflict"}),p({error:"Session is already processing",code:"SESSION_BUSY"},409)):p({success:!0,data:"get_tools"===e.type?[]:null})}return"/api/models"===l||l.endsWith("/api/models")?p({models:{"smoke:smoke-model":"Smoke model"},modelList:[{id:"smoke-model",name:"Smoke model",provider:"smoke"}],defaultModel:{provider:"smoke",modelId:"smoke-model"}}):e(t,n)},Object.defineProperty(window,"EventSource",{configurable:!0,writable:!0,value:_}),window.__annovibeRunningSessionSubscribe=e=>(f.add(e),e(s?[a]:[]),()=>f.delete(e)),window.__sessionStreamSmoke={remoteStart(){s=!0,i="waiting_model",h=[],b()},remoteToolStart(){s=!0,i="running_tools",h=[{id:"tool-background",name:"bash"}],b()},remoteFinish(){g=[d,l],S=["entry-user","entry-assistant"],s=!1,i="idle",h=[],v("smoke-epoch:1",{type:"message_end",message:l,__entryId:"entry-assistant"}),v("smoke-epoch:2",{type:"agent_end"}),b()},remoteFinishWithStaleRead(){g=[d,l],S=["entry-user","entry-assistant"],w=1,s=!1,i="idle",h=[],v("smoke-epoch:stale:1",{type:"message_end",message:l,__entryId:"entry-assistant"}),v("smoke-epoch:stale:2",{type:"agent_end"}),b()},remoteFail(){g=[d,c],S=["entry-user","entry-assistant-error"],s=!1,i="idle",h=[],v("smoke-epoch:error:1",{type:"message_end",message:c,__entryId:"entry-assistant-error"}),v("smoke-epoch:error:2",{type:"agent_end"}),b()},remotePromptError(){s=!1,i="idle",h=[],v("smoke-epoch:prompt-error",{type:"prompt_error",error:"No API key configured for smoke provider"}),b()},prepareConcurrentPrompt(){s=!0,i="waiting_model",h=[],o=!0},streamCount:()=>k.size,lastPromptModel:()=>r?.provider&&r.modelId?`${r.provider}/${r.modelId}`:null},t(!0),()=>{for(let t of(delete window.__sessionStreamSmoke,delete window.__annovibeRunningSessionSubscribe,f.clear(),window.fetch=e,Object.defineProperty(window,"EventSource",{configurable:!0,writable:!0,value:n}),k))try{t.close()}catch{}k.clear()}},[]),e?(0,s.jsxs)(s.Fragment,{children:[(0,s.jsx)("button",{type:"button",onClick:()=>r(e=>!e),children:n?"Switch away":"Switch back"}),n?(0,s.jsx)(h,{}):(0,s.jsx)("div",{"data-smoke-switched-away":!0,children:"away"})]}):null}}},e=>{e.O(0,[7330,2941,2995,2693,9867,
|
|
6
|
+
`))},cancel(){e&&k.delete(e),e=null}}),{headers:{"Content-Type":"text/event-stream"}})}if(l.includes(`/api/sessions/${a}`)){let e=w>0;e&&(w-=1);let t=e?[d]:g,n=e?["entry-user"]:S;return e&&await new Promise(e=>window.setTimeout(e,75)),p({sessionId:a,filePath:u.path,info:u,tree:[],leafId:n[n.length-1]??null,context:{messages:t,entryIds:n,thinkingLevel:"off",model:{provider:"smoke",modelId:"smoke-model"}},totalMessages:t.length,hasMore:!1,agentState:{running:s,state:{isStreaming:"streaming"===i,isCompacting:!1,phase:i,activeTools:h,thinkingLevel:"off",contextUsage:null}}})}if(l.endsWith(`/api/agent/${a}`)&&"GET"===c)return p({running:s,state:{isStreaming:"streaming"===i,isCompacting:!1,phase:i,activeTools:h,thinkingLevel:"off",contextUsage:null}});if(l.endsWith(`/api/agent/${a}/prepare`)&&"POST"===c)return p({ok:!0,sessionId:a});if(l.endsWith(`/api/agent/${a}`)&&"POST"===c){let e=JSON.parse(String(n?.body??"{}"));return("prompt"===e.type&&(r=e),"prompt"===e.type&&o)?(o=!1,g=[...g,m],S=[...S,"entry-assistant-conflict"],v("smoke-epoch:conflict",{type:"message_end",message:m,__entryId:"entry-assistant-conflict"}),p({error:"Session is already processing",code:"SESSION_BUSY"},409)):p({success:!0,data:"get_tools"===e.type?[]:null})}return"/api/models"===l||l.endsWith("/api/models")?p({models:{"smoke:smoke-model":"Smoke model"},modelList:[{id:"smoke-model",name:"Smoke model",provider:"smoke"}],defaultModel:{provider:"smoke",modelId:"smoke-model"}}):e(t,n)},Object.defineProperty(window,"EventSource",{configurable:!0,writable:!0,value:_}),window.__annovibeRunningSessionSubscribe=e=>(f.add(e),e(s?[a]:[]),()=>f.delete(e)),window.__sessionStreamSmoke={remoteStart(){s=!0,i="waiting_model",h=[],b()},remoteToolStart(){s=!0,i="running_tools",h=[{id:"tool-background",name:"bash"}],b()},remoteFinish(){g=[d,l],S=["entry-user","entry-assistant"],s=!1,i="idle",h=[],v("smoke-epoch:1",{type:"message_end",message:l,__entryId:"entry-assistant"}),v("smoke-epoch:2",{type:"agent_end"}),b()},remoteFinishWithStaleRead(){g=[d,l],S=["entry-user","entry-assistant"],w=1,s=!1,i="idle",h=[],v("smoke-epoch:stale:1",{type:"message_end",message:l,__entryId:"entry-assistant"}),v("smoke-epoch:stale:2",{type:"agent_end"}),b()},remoteFail(){g=[d,c],S=["entry-user","entry-assistant-error"],s=!1,i="idle",h=[],v("smoke-epoch:error:1",{type:"message_end",message:c,__entryId:"entry-assistant-error"}),v("smoke-epoch:error:2",{type:"agent_end"}),b()},remotePromptError(){s=!1,i="idle",h=[],v("smoke-epoch:prompt-error",{type:"prompt_error",error:"No API key configured for smoke provider"}),b()},prepareConcurrentPrompt(){s=!0,i="waiting_model",h=[],o=!0},streamCount:()=>k.size,lastPromptModel:()=>r?.provider&&r.modelId?`${r.provider}/${r.modelId}`:null},t(!0),()=>{for(let t of(delete window.__sessionStreamSmoke,delete window.__annovibeRunningSessionSubscribe,f.clear(),window.fetch=e,Object.defineProperty(window,"EventSource",{configurable:!0,writable:!0,value:n}),k))try{t.close()}catch{}k.clear()}},[]),e?(0,s.jsxs)(s.Fragment,{children:[(0,s.jsx)("button",{type:"button",onClick:()=>r(e=>!e),children:n?"Switch away":"Switch back"}),n?(0,s.jsx)(h,{}):(0,s.jsx)("div",{"data-smoke-switched-away":!0,children:"away"})]}):null}}},e=>{e.O(0,[7330,2941,2995,2693,9867,6630,8441,3794,7358],()=>e(e.s=18416)),_N_E=e.O()}]);
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[21,64,186,222,394,552,976,1004,1097,1327,1541,1900,1921,1938,1960,2007,2053,2138,2234,2314,2469,2752,2835,2922,2929,2976,3230,3374,3502,3679,3785,3851,3955,4037,4368,4494,4813,4896,5177,5218,5221,5907,5987,6202,6442,6450,6709,6710,6780,6819,6849,6919,6988,7035,7067,7070,7253,7473,7483,7505,7758,7778,7812,7851,8167,8197,8658,8743,8933,9043,9156,9240,9579,9742,9787,9968],{84441:()=>{}},_=>{_.O(0,[8441,3794,7358],()=>_(_.s=84441)),_N_E=_.O()}]);
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[21,64,186,222,394,552,976,1004,1097,1327,1541,1900,1921,1938,1960,2007,2053,2138,2234,2314,2469,2752,2835,2922,2929,2976,3230,3374,3502,3679,3785,3851,3955,4037,4368,4494,4813,4896,5177,5218,5221,5907,5987,6202,6442,6450,6709,6710,6780,6819,6849,6919,6988,7035,7067,7070,7253,7473,7483,7505,7758,7778,7812,7851,8167,8197,8658,8743,8933,9043,9156,9240,9579,9742,9787,9968],{84441:()=>{}},_=>{_.O(0,[8441,3794,7358],()=>_(_.s=84441)),_N_E=_.O()}]);
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[21,64,186,222,394,552,976,1004,1097,1327,1541,1900,1921,1938,1960,2007,2053,2138,2234,2314,2469,2752,2835,2922,2929,2976,3230,3374,3502,3679,3785,3851,3955,4037,4368,4494,4813,4896,5177,5218,5221,5907,5987,6202,6442,6450,6709,6710,6780,6819,6849,6919,6988,7035,7067,7070,7253,7473,7483,7505,7758,7778,7812,7851,8167,8197,8658,8743,8933,9043,9156,9240,9579,9742,9787,9968],{84441:()=>{}},_=>{_.O(0,[8441,3794,7358],()=>_(_.s=84441)),_N_E=_.O()}]);
|
package/.next/static/chunks/next/dist/client/components/builtin/unauthorized-3bfe21af77950daa.js
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[21,64,186,222,394,552,976,1004,1097,1327,1541,1900,1921,1938,1960,2007,2053,2138,2234,2314,2469,2752,2835,2922,2929,2976,3230,3374,3502,3679,3785,3851,3955,4037,4368,4494,4813,4896,5177,5218,5221,5907,5987,6202,6442,6450,6709,6710,6780,6819,6849,6919,6988,7035,7067,7070,7253,7473,7483,7505,7758,7778,7812,7851,8167,8197,8658,8743,8933,9043,9156,9240,9579,9742,9787,9968],{84441:()=>{}},_=>{_.O(0,[8441,3794,7358],()=>_(_.s=84441)),_N_E=_.O()}]);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
(()=>{"use strict";var e,a,f,c,d,b,t,r,o={},n={};function i(e){var a=n[e];if(void 0!==a)return a.exports;var f=n[e]={exports:{}},c=!0;try{o[e].call(f.exports,f,f.exports,i),c=!1}finally{c&&delete n[e]}return f.exports}i.m=o,e=[],i.O=(a,f,c,d)=>{if(f){d=d||0;for(var b=e.length;b>0&&e[b-1][2]>d;b--)e[b]=e[b-1];e[b]=[f,c,d];return}for(var t=1/0,b=0;b<e.length;b++){for(var[f,c,d]=e[b],r=!0,o=0;o<f.length;o++)(!1&d||t>=d)&&Object.keys(i.O).every(e=>i.O[e](f[o]))?f.splice(o--,1):(r=!1,d<t&&(t=d));if(r){e.splice(b--,1);var n=c();void 0!==n&&(a=n)}}return a},i.n=e=>{var a=e&&e.__esModule?()=>e.default:()=>e;return i.d(a,{a:a}),a},f=Object.getPrototypeOf?e=>Object.getPrototypeOf(e):e=>e.__proto__,i.t=function(e,c){if(1&c&&(e=this(e)),8&c||"object"==typeof e&&e&&(4&c&&e.__esModule||16&c&&"function"==typeof e.then))return e;var d=Object.create(null);i.r(d);var b={};a=a||[null,f({}),f([]),f(f)];for(var t=2&c&&e;"object"==typeof t&&!~a.indexOf(t);t=f(t))Object.getOwnPropertyNames(t).forEach(a=>b[a]=()=>e[a]);return b.default=()=>e,i.d(d,b),d},i.d=(e,a)=>{for(var f in a)i.o(a,f)&&!i.o(e,f)&&Object.defineProperty(e,f,{enumerable:!0,get:a[f]})},i.f={},i.e=e=>Promise.all(Object.keys(i.f).reduce((a,f)=>(i.f[f](e,a),a),[])),i.u=e=>"static/chunks/"+(({535:"4ca0cff5",1290:"cee15710",1630:"53c1bd3f",2213:"51fb665c",2577:"d1c28714",3879:"cfdf2ac7",4279:"c66d966b",4763:"4402d2ac",4814:"799ebd4e",4954:"2918becc",6666:"570e4624",6814:"7d29de82",7442:"92e53eb0",8184:"58bb9007",8747:"90542734",8835:"ce16f5a9",9312:"1cd6e1d3"})[e]||e)+"."+({10:"6cf001c181ce1098",34:"ce581867cf95e24b",36:"b4a553bf2106f6d3",83:"85d62d7fc9850b75",144:"26e4646d1b55baa3",194:"76dbdc07cdc2311d",214:"f6bba63dfa159e01",252:"a9e22657cbf67b42",327:"8ecab0b86d52b597",376:"9e742ff6919b2b54",392:"3cad93691f1b7360",400:"fed6ebb7ec3037da",425:"8fe80c34648b01ec",498:"fe1d9da9ecad6c36",532:"5956ed631aff722b",535:"07efe2bc8f09d72e",541:"cfa15b606745131a",547:"0f08d4931c0f04a2",579:"33fc87fb95163c6a",583:"b3efc73cb21097e2",624:"2dd909fbfce98c5e",640:"5bf1e25d0bddf875",698:"e0dda03fd303b96b",794:"06b1ae4fc9cc10a9",816:"f909c891b91aa79f",830:"e49b226c07876df4",840:"a9c535f8868cc4bd",862:"fe3b86ecfb9c0716",893:"c469257bbbbca4f5",966:"57e4cd93c2368d34",968:"237f19aca13543fe",1078:"02294b2934d5bf21",1142:"463325d879ef45f8",1161:"06b33878b495da50",1184:"e80a999422621ed9",1188:"1d4ce94ddc297119",1198:"2a5c215f01a8b74d",1209:"4f7491c863d512f0",1215:"88ed89521e915107",1219:"e27b0bd10b029e40",1247:"64e212daa5bb3925",1248:"36af3903f037c1f5",1274:"ce6906b1fe2e04b8",1280:"1651bb5167170457",1290:"869cef5f741d40c2",1319:"b8435cdf9f3843c6",1335:"716cc5924662708e",1365:"d7391145ca7f8791",1379:"03e1e0f31bdaa2cc",1410:"77acea37535dbbef",1413:"922d232de90c0c41",1453:"3c24c777a3deca2d",1456:"217c3832b3e76b7f",1501:"549af2c91a889a08",1534:"918a25b2e3daab22",1556:"96abc9ff91b0c383",1583:"03a06dbdde85ac56",1595:"ee61519fde230f60",1630:"2911e2bac119d910",1642:"a4b60c9daf4646b1",1643:"467a526a1f24f54d",1656:"a9efc78185a5a85f",1664:"6d5b5e3112b66906",1852:"5543122f11aa7fed",1898:"e07b2b1c5e789b06",1932:"b0aea9b52cabe5e8",1977:"a06c8e8d2198f765",2013:"598558c40e51e107",2031:"3877441c49bff5cd",2041:"00f4fa0ab26c6ba5",2062:"4a0ab3400fea0e34",2097:"6c701b89fd60f2f1",2107:"c627112b02b9e1c8",2130:"441ae0f68863efeb",2160:"30eac4452ed5402b",2179:"1bf5fe315e6e132c",2213:"b01d5a04c27e9091",2215:"9d2d6fbe90ffcc80",2274:"6cd173f80a1405a2",2278:"0b14de1cb2041bfd",2320:"fd867786b7cc6d5f",2349:"ca15d465c4260b4b",2374:"7560cc5c4b8ed6b0",2403:"3dda71b6482dce3b",2419:"347fdfe3c170854d",2485:"3188870375e9fbee",2489:"fcc70bd67329a70e",2501:"4e65b56602faa956",2503:"68e12779c4b14adb",2504:"159b28843e61aae9",2577:"f52cffdd449a2d14",2614:"8349e4b407470a30",2619:"8f686be8e2479c20",2623:"a6bf38491c50cb6e",2708:"6503b5c105cc1420",2710:"fe0656d4ebae4d30",2728:"5fed9ac13dfcd1d1",2729:"f5365061a849d659",2733:"8bc8208edd9edde5",2735:"5a3e65a580bd5af9",2747:"1d85d388314f2904",2765:"2c6d9772af50feed",2774:"ba50ba9e8b3ebf4a",2783:"e8bbf2c794ef9750",2812:"dcd8179a6b1d76c9",2821:"d15f14bd03d9d290",2839:"74d87f21177e5bbc",2895:"0339e755e79ee794",2947:"114e51cb06d1c01a",2954:"7d8daeae6410d4a4",2964:"1a0e15f7327680a2",3072:"2ca833b62c2837c1",3074:"911584369786c26c",3077:"bf82c0c332cc9fec",3079:"4c511fa1144e3adf",3082:"159e4ab8f0572597",3095:"8cd478c42cee505a",3111:"1cf85db2faeb20cc",3175:"538ce7aec634bddb",3186:"3665756f8aae3eb7",3194:"5a331fb5e3dc34e9",3229:"5e91f7d0b135266b",3274:"208ca44844cd7d95",3286:"196c508356bb0b66",3288:"f23c8a5183e6b910",3290:"b5ba2646ad49c9fd",3304:"16305e84f4ff6598",3307:"c87aab94f4464604",3309:"581b04bacfeed701",3313:"471138e5504646a9",3324:"85e21e3313d0901c",3325:"e4bfe1ca657f3b5b",3392:"460f5a753531f501",3419:"78b520dab7e2f96d",3437:"0ad1ecc8c5b8a679",3476:"246c30b47bded3b7",3483:"fc2a0b1185dbaa5d",3492:"ca55498822ad7796",3506:"2a7eaa08b9f55337",3526:"24826331ab265b39",3633:"2526b2d018636ff0",3689:"93592a22c737d185",3782:"8d7b66d0e37dbe76",3787:"78ebe68a043f50ce",3837:"a755ccfe6f9c1c1c",3860:"be5b243bf7d6618c",3873:"72a9a21509f713f7",3879:"f50abf4e93e943ea",3942:"085da8d58242eeab",3979:"cea8623f6e9f83ea",3997:"1009c06025691712",4053:"90d71fcbe4ffd852",4080:"08a21dae9e93c547",4097:"7f5a996cb7ab16e2",4163:"c6ebefdd9aa5c358",4174:"b6ff75dd91a2a32e",4223:"c10556cd92fc8018",4242:"3a66c58375424a5b",4275:"8f2e531757c2a813",4279:"4add33ed4e764123",4295:"6c0f4838b0c9c69d",4309:"a887a10e84c44f9e",4350:"b9d80827e8eee01a",4357:"ac4f251cdac34fbe",4358:"f89b14cf7a988731",4367:"2610339aa03a9fb3",4370:"ac13b62c811f7ede",4453:"ba05c4805425ceeb",4474:"053807fa34066566",4491:"44fdf20580ac72bd",4539:"559c223da16b0282",4540:"03df20c499bca840",4553:"ce3eab65a260353e",4567:"7dc81a6e1c7df565",4583:"2a5df6eb3a6ea30b",4593:"676ac488744e1af5",4608:"1ff246d6b4c771f8",4634:"0332a56fdb8e26c0",4650:"61aec912b756287b",4659:"0b14de1cb2041bfd",4678:"867dfae26694be02",4763:"d0d1b1777a45e0b2",4801:"17596dbc1818c262",4814:"ccb85c56e9216a38",4823:"907850963b2bcb70",4829:"cf1d50e43e6d9db5",4900:"b723a916eafdf743",4903:"004f583a12223dac",4954:"abff2ece1de37bc1",4963:"0f6678151a159143",4969:"1cb10af9489ea295",4976:"8870319ffbd1c31f",5005:"73745d7fcae6989e",5019:"b5a1a2b8daf17525",5025:"b597364f0cf8b85a",5034:"8f16c3fa3ce75411",5061:"025d30c3123eeaf6",5074:"d16651da01ec4e02",5135:"db90392e58298a66",5136:"ac897c2a56ee392f",5183:"2e5c895a2be76262",5269:"2e771096652dc113",5318:"d48b9096df0171df",5320:"00f00028b9163a43",5326:"69460442bdcd6cd3",5331:"4d5d42e5253dbee2",5338:"76f7773c317f3142",5347:"3192e0021174aaa8",5375:"ebc026e6140b52f1",5403:"ff110bf5bf600758",5424:"4d62f7ee887cd8b9",5460:"6384269ca3add9f0",5482:"0907421e6bf5eeec",5491:"5cc285c4b84dac30",5498:"117ef4b6035a90c5",5518:"6c3dc9afe81a566b",5520:"eab85d7487e77510",5553:"75df19e3cc1246d6",5567:"6674301d1337d738",5575:"3d90c643343a1329",5590:"ef62922166d308b4",5645:"0b86853ae26d9ee3",5655:"6fae871a6243a772",5670:"2a1b27a6fdb7aa6b",5690:"332f301b9df6f2dd",5712:"574fca2d5f06483a",5728:"8ef773d61765855e",5749:"25faee4a1e55b854",5750:"aa57d25b74640d23",5755:"00015c284ed6fb39",5920:"9db223329ee9e11a",5922:"ce56021f8cc6ebbc",5937:"0827b5b3eb831ff0",5968:"63d5869783fad06f",5997:"226c07d9e6c496e0",6046:"00d36aea7fd5b147",6089:"2dd351186ec85cc3",6099:"43e6595fcf24fc33",6110:"5ce3f75fced27aaf",6121:"333d793734b9abf7",6144:"f967a8228bcdf663",6155:"e17e26e83e0dcb8b",6166:"ecd82a9dcb484b97",6175:"051b1d45b220fa33",6290:"e14cf4fc52dd4539",6293:"5914fa73a9f7e777",6311:"5b9c1f74df9a8f67",6331:"758f2f66b92cada9",6339:"391981806dd1e012",6360:"ff0a9063773daeeb",6402:"a0070d7688ed986b",6412:"089ee787a294d10b",6455:"12b78a2660d609eb",6563:"5d618b608750f4dc",6572:"ca2463823b9b01a0",6580:"75d53830b434451f",6586:"5969468a897d9e00",6588:"01b6e9d47c509b33",6600:"583c88eef37aa524",6647:"584c5d5cd8dfdb5a",6666:"a82467c542429379",6686:"ba6a712accb45472",6696:"345b3cd62db13cb6",6701:"bff0efb979f71a17",6704:"f280f0ad0f5d8644",6729:"77a5381ac8f5c9ae",6741:"06fdaf122961074e",6814:"30ff86a90cbfd921",6846:"91283f709c40802c",6859:"8c142424e1250280",6887:"6c81234d73740fb9",6922:"42148793782d2fe7",6927:"aa3914b5fb0d14d4",6931:"3c90e9fe0f7f1e66",6938:"0ccf683bd8aa8410",6948:"2719ed8731963209",6959:"5a803faf27f88e9f",7006:"e191611ffc2b9528",7021:"b71240b1d5f6fbe4",7040:"0b14de1cb2041bfd",7041:"174bf29bd837f06d",7082:"fc816f91214026d7",7113:"336a2a8deabe2aa5",7130:"8d24694735826c22",7142:"dbd2cf8141eece5e",7152:"c7b7f1f5e9622f21",7198:"4c3df741a5e26fb2",7210:"633f94f9314304b6",7227:"a6b2f01487bb3d9d",7258:"6cbe24c3bcb63d1d",7343:"9fbb58204d8ac681",7425:"8b47c8e398a12dd8",7442:"097194be4a0e7d55",7455:"54ff2bed6a94131c",7465:"867e8ff655666413",7482:"485c6cc8694747d0",7524:"9528295a19a5837a",7525:"f433aaf1fe40c90a",7547:"58bda8a2aabba0d4",7557:"bdc743175125b3d8",7610:"b1439345dbcf285d",7625:"ab66bd50d2fb61a4",7635:"166d83de1d29e758",7636:"bf91320a9ff695af",7648:"4ae2f183b4db0353",7656:"ff4c2e8f57917a3e",7785:"1402a4110c300764",7799:"40b047a634f96a24",7819:"3c56f48c0dc5ad5d",7844:"2bb29faa262f313e",7846:"c9705c044ab8f87a",7874:"7faccf8fab087120",7884:"390ae2efbbf230c4",7889:"af3e581842f34c28",7921:"c361f794cc208e06",7959:"1f20a35df316216a",7977:"80e4daa080a79c39",8013:"d099e26a71d06fa9",8113:"907baefc7227cfb8",8132:"74491162f08af899",8184:"3d4e7356b1e96b6a",8192:"5918d83ac6a0e2dc",8198:"42369073fedf8a54",8243:"1450514f8390977e",8257:"dd8f651f1a43fee2",8288:"9bd1d26060cb00a1",8318:"81c7ac586fcbb728",8406:"955ccfbb4b70b8c3",8430:"b1f802dcffa41626",8432:"bd66ac287c569996",8457:"b61d96d8d30215fc",8489:"514938fd5e801cf7",8496:"046efd6301dd804f",8545:"be0c9eea6aae5971",8555:"ab3ee6358f1d64da",8568:"f85d8b36fc9a9037",8656:"2ceb4e5ff5df2fca",8670:"90ede75068758e82",8704:"a1003918da6654da",8747:"6b9fbcabf095d1a0",8773:"614f1f4f0f845c5e",8835:"5c7821b201f35593",8848:"7c6e47cca9f0059a",8863:"d853f8eb221377ed",8947:"31d3d834d8281fd9",8977:"073245098d90f307",9005:"33cf91e617920d4f",9006:"11537833945ec4b8",9015:"c4e40321a6503a1b",9136:"191be42a2fee842c",9178:"48a90097ee3f0b0c",9186:"3af6fcd13ab752fa",9189:"3e9d29bf275ec462",9220:"bc767ebb5adb9f49",9224:"401f9320ee58570b",9267:"df6676f5f86b3a4a",9294:"a20485f3282321b3",9302:"726b065f2df0323a",9312:"8121a74b2042bff3",9377:"f9db706e76f04afe",9382:"bc0e11ecc88dd62c",9421:"a5c1dbcfbfdd8f52",9448:"2668b3cd408e86de",9466:"c9d8f45d14235087",9500:"1488aec06ee78127",9521:"e1240eb862eb32dc",9547:"7729788fff21926f",9565:"8de0671f99d12abe",9569:"2f36b2b1c2f838d7",9615:"3b62c13af671f714",9633:"155548b5fca6e580",9648:"8235b6fea7087b3a",9666:"a515fa6d89a71f1c",9680:"d5ceac8967e0b6a8",9690:"7773c72f0eff6dec",9779:"673004a62d70e36a",9841:"422321143547591a",9842:"3b71b65b30d8ef2a",9996:"18b7bca2f0ab222e"})[e]+".js",i.miniCssF=e=>{},i.g=function(){if("object"==typeof globalThis)return globalThis;try{return this||Function("return this")()}catch(e){if("object"==typeof window)return window}}(),i.o=(e,a)=>Object.prototype.hasOwnProperty.call(e,a),c={},i.l=(e,a,f,d)=>{if(c[e])return void c[e].push(a);if(void 0!==f)for(var b,t,r=document.getElementsByTagName("script"),o=0;o<r.length;o++){var n=r[o];if(n.getAttribute("src")==e||n.getAttribute("data-webpack")=="_N_E:"+f){b=n;break}}b||(t=!0,(b=document.createElement("script")).charset="utf-8",b.timeout=120,i.nc&&b.setAttribute("nonce",i.nc),b.setAttribute("data-webpack","_N_E:"+f),b.src=i.tu(e)),c[e]=[a];var u=(a,f)=>{b.onerror=b.onload=null,clearTimeout(l);var d=c[e];if(delete c[e],b.parentNode&&b.parentNode.removeChild(b),d&&d.forEach(e=>e(f)),a)return a(f)},l=setTimeout(u.bind(null,void 0,{type:"timeout",target:b}),12e4);b.onerror=u.bind(null,b.onerror),b.onload=u.bind(null,b.onload),t&&document.head.appendChild(b)},i.r=e=>{"u">typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},i.U=function(e){var a=new URL(e,"x:/"),f={};for(var c in a)f[c]=a[c];for(var c in f.href=e,f.pathname=e.replace(/[?#].*/,""),f.origin=f.protocol="",f.toString=f.toJSON=()=>e,f)Object.defineProperty(this,c,{enumerable:!0,configurable:!0,value:f[c]})},i.U.prototype=URL.prototype,i.tt=()=>(void 0===d&&(d={createScriptURL:e=>e},"u">typeof trustedTypes&&trustedTypes.createPolicy&&(d=trustedTypes.createPolicy("nextjs#bundler",d))),d),i.tu=e=>i.tt().createScriptURL(e),i.p="/_next/",b={8068:0,7389:0,7513:0},i.f.j=(e,a)=>{var f=i.o(b,e)?b[e]:void 0;if(0!==f)if(f)a.push(f[2]);else if(/^(7389|7513|8068)$/.test(e))b[e]=0;else{var c=new Promise((a,c)=>f=b[e]=[a,c]);a.push(f[2]=c);var d=i.p+i.u(e),t=Error();i.l(d,a=>{if(i.o(b,e)&&(0!==(f=b[e])&&(b[e]=void 0),f)){var c=a&&("load"===a.type?"missing":a.type),d=a&&a.target&&a.target.src;t.message="Loading chunk "+e+" failed.\n("+c+": "+d+")",t.name="ChunkLoadError",t.type=c,t.request=d,f[1](t)}},"chunk-"+e,e)}},i.O.j=e=>0===b[e],t=(e,a)=>{var f,c,[d,t,r]=a,o=0;if(d.some(e=>0!==b[e])){for(f in t)i.o(t,f)&&(i.m[f]=t[f]);if(r)var n=r(i)}for(e&&e(a);o<d.length;o++)c=d[o],i.o(b,c)&&b[c]&&b[c][0](),b[c]=0;return i.O(n)},(r=self.webpackChunk_N_E=self.webpackChunk_N_E||[]).forEach(t.bind(null,0)),r.push=t.bind(null,r.push.bind(r))})();
|
|
1
|
+
(()=>{"use strict";var e,a,f,c,d,b,t,r,o={},n={};function i(e){var a=n[e];if(void 0!==a)return a.exports;var f=n[e]={exports:{}},c=!0;try{o[e].call(f.exports,f,f.exports,i),c=!1}finally{c&&delete n[e]}return f.exports}i.m=o,e=[],i.O=(a,f,c,d)=>{if(f){d=d||0;for(var b=e.length;b>0&&e[b-1][2]>d;b--)e[b]=e[b-1];e[b]=[f,c,d];return}for(var t=1/0,b=0;b<e.length;b++){for(var[f,c,d]=e[b],r=!0,o=0;o<f.length;o++)(!1&d||t>=d)&&Object.keys(i.O).every(e=>i.O[e](f[o]))?f.splice(o--,1):(r=!1,d<t&&(t=d));if(r){e.splice(b--,1);var n=c();void 0!==n&&(a=n)}}return a},i.n=e=>{var a=e&&e.__esModule?()=>e.default:()=>e;return i.d(a,{a:a}),a},f=Object.getPrototypeOf?e=>Object.getPrototypeOf(e):e=>e.__proto__,i.t=function(e,c){if(1&c&&(e=this(e)),8&c||"object"==typeof e&&e&&(4&c&&e.__esModule||16&c&&"function"==typeof e.then))return e;var d=Object.create(null);i.r(d);var b={};a=a||[null,f({}),f([]),f(f)];for(var t=2&c&&e;"object"==typeof t&&!~a.indexOf(t);t=f(t))Object.getOwnPropertyNames(t).forEach(a=>b[a]=()=>e[a]);return b.default=()=>e,i.d(d,b),d},i.d=(e,a)=>{for(var f in a)i.o(a,f)&&!i.o(e,f)&&Object.defineProperty(e,f,{enumerable:!0,get:a[f]})},i.f={},i.e=e=>Promise.all(Object.keys(i.f).reduce((a,f)=>(i.f[f](e,a),a),[])),i.u=e=>"static/chunks/"+(({535:"4ca0cff5",1290:"cee15710",1630:"53c1bd3f",2213:"51fb665c",2577:"d1c28714",3879:"cfdf2ac7",4279:"c66d966b",4763:"4402d2ac",4814:"799ebd4e",4954:"2918becc",6666:"570e4624",6814:"7d29de82",7442:"92e53eb0",8184:"58bb9007",8747:"90542734",8835:"ce16f5a9",9312:"1cd6e1d3"})[e]||e)+"."+({10:"6cf001c181ce1098",34:"ce581867cf95e24b",36:"b4a553bf2106f6d3",83:"85d62d7fc9850b75",144:"26e4646d1b55baa3",194:"76dbdc07cdc2311d",214:"f6bba63dfa159e01",252:"a9e22657cbf67b42",327:"8ecab0b86d52b597",376:"9e742ff6919b2b54",392:"3cad93691f1b7360",400:"fed6ebb7ec3037da",425:"8fe80c34648b01ec",498:"fe1d9da9ecad6c36",532:"5956ed631aff722b",535:"07efe2bc8f09d72e",541:"cfa15b606745131a",547:"0f08d4931c0f04a2",579:"33fc87fb95163c6a",583:"b3efc73cb21097e2",624:"2dd909fbfce98c5e",640:"5bf1e25d0bddf875",698:"e0dda03fd303b96b",794:"06b1ae4fc9cc10a9",816:"f909c891b91aa79f",830:"e49b226c07876df4",840:"a9c535f8868cc4bd",862:"fe3b86ecfb9c0716",893:"c469257bbbbca4f5",966:"57e4cd93c2368d34",968:"237f19aca13543fe",1078:"02294b2934d5bf21",1142:"463325d879ef45f8",1161:"06b33878b495da50",1184:"e80a999422621ed9",1188:"1d4ce94ddc297119",1198:"2a5c215f01a8b74d",1209:"4f7491c863d512f0",1215:"88ed89521e915107",1219:"e27b0bd10b029e40",1247:"64e212daa5bb3925",1248:"36af3903f037c1f5",1274:"ce6906b1fe2e04b8",1280:"1651bb5167170457",1290:"869cef5f741d40c2",1319:"b8435cdf9f3843c6",1335:"716cc5924662708e",1365:"d7391145ca7f8791",1379:"03e1e0f31bdaa2cc",1410:"77acea37535dbbef",1413:"922d232de90c0c41",1453:"3c24c777a3deca2d",1456:"217c3832b3e76b7f",1501:"549af2c91a889a08",1534:"918a25b2e3daab22",1556:"96abc9ff91b0c383",1583:"03a06dbdde85ac56",1595:"ee61519fde230f60",1630:"2911e2bac119d910",1642:"a4b60c9daf4646b1",1643:"467a526a1f24f54d",1656:"a9efc78185a5a85f",1664:"6d5b5e3112b66906",1852:"5543122f11aa7fed",1898:"e07b2b1c5e789b06",1932:"b0aea9b52cabe5e8",1977:"a06c8e8d2198f765",2013:"598558c40e51e107",2031:"3877441c49bff5cd",2041:"00f4fa0ab26c6ba5",2062:"4a0ab3400fea0e34",2097:"6c701b89fd60f2f1",2107:"c627112b02b9e1c8",2130:"441ae0f68863efeb",2160:"30eac4452ed5402b",2179:"1bf5fe315e6e132c",2213:"b01d5a04c27e9091",2215:"9d2d6fbe90ffcc80",2274:"6cd173f80a1405a2",2278:"0b14de1cb2041bfd",2320:"fd867786b7cc6d5f",2349:"ca15d465c4260b4b",2374:"7560cc5c4b8ed6b0",2403:"3dda71b6482dce3b",2419:"347fdfe3c170854d",2485:"3188870375e9fbee",2489:"fcc70bd67329a70e",2501:"4e65b56602faa956",2503:"68e12779c4b14adb",2504:"159b28843e61aae9",2577:"f52cffdd449a2d14",2614:"8349e4b407470a30",2619:"8f686be8e2479c20",2623:"a6bf38491c50cb6e",2708:"6503b5c105cc1420",2710:"fe0656d4ebae4d30",2728:"5fed9ac13dfcd1d1",2729:"f5365061a849d659",2733:"8bc8208edd9edde5",2735:"5a3e65a580bd5af9",2747:"1d85d388314f2904",2765:"2c6d9772af50feed",2774:"ba50ba9e8b3ebf4a",2783:"e8bbf2c794ef9750",2812:"dcd8179a6b1d76c9",2821:"d15f14bd03d9d290",2839:"74d87f21177e5bbc",2895:"0339e755e79ee794",2947:"114e51cb06d1c01a",2954:"7d8daeae6410d4a4",2964:"1a0e15f7327680a2",3072:"2ca833b62c2837c1",3074:"911584369786c26c",3077:"bf82c0c332cc9fec",3079:"4c511fa1144e3adf",3082:"159e4ab8f0572597",3095:"8cd478c42cee505a",3111:"1cf85db2faeb20cc",3175:"538ce7aec634bddb",3186:"3665756f8aae3eb7",3194:"5a331fb5e3dc34e9",3229:"5e91f7d0b135266b",3274:"208ca44844cd7d95",3286:"196c508356bb0b66",3288:"f23c8a5183e6b910",3290:"b5ba2646ad49c9fd",3304:"16305e84f4ff6598",3307:"c87aab94f4464604",3309:"d0c34b5ef504a551",3313:"471138e5504646a9",3324:"85e21e3313d0901c",3325:"e4bfe1ca657f3b5b",3392:"460f5a753531f501",3419:"78b520dab7e2f96d",3437:"0ad1ecc8c5b8a679",3476:"246c30b47bded3b7",3483:"fc2a0b1185dbaa5d",3492:"ca55498822ad7796",3506:"2a7eaa08b9f55337",3526:"24826331ab265b39",3633:"2526b2d018636ff0",3689:"93592a22c737d185",3782:"8d7b66d0e37dbe76",3787:"78ebe68a043f50ce",3837:"a755ccfe6f9c1c1c",3860:"be5b243bf7d6618c",3873:"72a9a21509f713f7",3879:"f50abf4e93e943ea",3942:"085da8d58242eeab",3979:"cea8623f6e9f83ea",3997:"1009c06025691712",4053:"90d71fcbe4ffd852",4080:"08a21dae9e93c547",4097:"7f5a996cb7ab16e2",4163:"c6ebefdd9aa5c358",4174:"b6ff75dd91a2a32e",4223:"c10556cd92fc8018",4242:"3a66c58375424a5b",4275:"8f2e531757c2a813",4279:"4add33ed4e764123",4295:"6c0f4838b0c9c69d",4309:"a887a10e84c44f9e",4350:"b9d80827e8eee01a",4357:"ac4f251cdac34fbe",4358:"f89b14cf7a988731",4367:"2610339aa03a9fb3",4370:"ac13b62c811f7ede",4453:"ba05c4805425ceeb",4474:"053807fa34066566",4491:"44fdf20580ac72bd",4539:"559c223da16b0282",4540:"03df20c499bca840",4553:"ce3eab65a260353e",4567:"7dc81a6e1c7df565",4583:"2a5df6eb3a6ea30b",4593:"676ac488744e1af5",4608:"1ff246d6b4c771f8",4634:"0332a56fdb8e26c0",4650:"61aec912b756287b",4659:"0b14de1cb2041bfd",4678:"867dfae26694be02",4763:"d0d1b1777a45e0b2",4801:"17596dbc1818c262",4814:"ccb85c56e9216a38",4823:"907850963b2bcb70",4829:"cf1d50e43e6d9db5",4900:"b723a916eafdf743",4903:"004f583a12223dac",4954:"abff2ece1de37bc1",4963:"0f6678151a159143",4969:"1cb10af9489ea295",4976:"8870319ffbd1c31f",5005:"73745d7fcae6989e",5019:"b5a1a2b8daf17525",5025:"b597364f0cf8b85a",5034:"8f16c3fa3ce75411",5061:"025d30c3123eeaf6",5074:"d16651da01ec4e02",5135:"db90392e58298a66",5136:"ac897c2a56ee392f",5183:"2e5c895a2be76262",5269:"2e771096652dc113",5318:"d48b9096df0171df",5320:"00f00028b9163a43",5326:"69460442bdcd6cd3",5331:"4d5d42e5253dbee2",5338:"76f7773c317f3142",5347:"3192e0021174aaa8",5375:"ebc026e6140b52f1",5403:"ff110bf5bf600758",5424:"4d62f7ee887cd8b9",5460:"6384269ca3add9f0",5482:"0907421e6bf5eeec",5491:"5cc285c4b84dac30",5498:"117ef4b6035a90c5",5518:"6c3dc9afe81a566b",5520:"eab85d7487e77510",5553:"75df19e3cc1246d6",5567:"6674301d1337d738",5575:"3d90c643343a1329",5590:"ef62922166d308b4",5645:"0b86853ae26d9ee3",5655:"6fae871a6243a772",5670:"2a1b27a6fdb7aa6b",5690:"64d843d3db8e1b4b",5712:"574fca2d5f06483a",5728:"8ef773d61765855e",5749:"25faee4a1e55b854",5750:"aa57d25b74640d23",5755:"00015c284ed6fb39",5920:"9db223329ee9e11a",5922:"ce56021f8cc6ebbc",5937:"0827b5b3eb831ff0",5968:"63d5869783fad06f",5997:"226c07d9e6c496e0",6046:"00d36aea7fd5b147",6089:"2dd351186ec85cc3",6099:"43e6595fcf24fc33",6110:"5ce3f75fced27aaf",6121:"333d793734b9abf7",6144:"f967a8228bcdf663",6155:"e17e26e83e0dcb8b",6166:"ecd82a9dcb484b97",6175:"051b1d45b220fa33",6290:"e14cf4fc52dd4539",6293:"5914fa73a9f7e777",6311:"5b9c1f74df9a8f67",6331:"758f2f66b92cada9",6339:"391981806dd1e012",6360:"ff0a9063773daeeb",6402:"a0070d7688ed986b",6412:"089ee787a294d10b",6455:"12b78a2660d609eb",6563:"5d618b608750f4dc",6572:"ca2463823b9b01a0",6580:"75d53830b434451f",6586:"775a449050e0e9cc",6588:"01b6e9d47c509b33",6600:"583c88eef37aa524",6647:"584c5d5cd8dfdb5a",6666:"a82467c542429379",6686:"ba6a712accb45472",6696:"345b3cd62db13cb6",6701:"bff0efb979f71a17",6704:"f280f0ad0f5d8644",6729:"77a5381ac8f5c9ae",6741:"06fdaf122961074e",6814:"30ff86a90cbfd921",6846:"91283f709c40802c",6859:"8c142424e1250280",6887:"6c81234d73740fb9",6922:"42148793782d2fe7",6927:"aa3914b5fb0d14d4",6931:"3c90e9fe0f7f1e66",6938:"0ccf683bd8aa8410",6948:"2719ed8731963209",6959:"5a803faf27f88e9f",7006:"e191611ffc2b9528",7021:"b71240b1d5f6fbe4",7040:"0b14de1cb2041bfd",7041:"174bf29bd837f06d",7082:"fc816f91214026d7",7113:"336a2a8deabe2aa5",7130:"8d24694735826c22",7142:"dbd2cf8141eece5e",7152:"c7b7f1f5e9622f21",7198:"4c3df741a5e26fb2",7210:"633f94f9314304b6",7227:"a6b2f01487bb3d9d",7258:"6cbe24c3bcb63d1d",7343:"9fbb58204d8ac681",7425:"8b47c8e398a12dd8",7442:"097194be4a0e7d55",7455:"54ff2bed6a94131c",7465:"867e8ff655666413",7482:"485c6cc8694747d0",7524:"9528295a19a5837a",7525:"f433aaf1fe40c90a",7547:"58bda8a2aabba0d4",7557:"bdc743175125b3d8",7610:"b1439345dbcf285d",7625:"ab66bd50d2fb61a4",7635:"166d83de1d29e758",7636:"bf91320a9ff695af",7648:"4ae2f183b4db0353",7656:"ff4c2e8f57917a3e",7785:"1402a4110c300764",7799:"40b047a634f96a24",7819:"3c56f48c0dc5ad5d",7844:"2bb29faa262f313e",7846:"c9705c044ab8f87a",7874:"7faccf8fab087120",7884:"390ae2efbbf230c4",7889:"af3e581842f34c28",7921:"c361f794cc208e06",7959:"1f20a35df316216a",7977:"80e4daa080a79c39",8013:"d099e26a71d06fa9",8113:"907baefc7227cfb8",8132:"74491162f08af899",8184:"3d4e7356b1e96b6a",8192:"5918d83ac6a0e2dc",8198:"42369073fedf8a54",8243:"1450514f8390977e",8257:"dd8f651f1a43fee2",8288:"9bd1d26060cb00a1",8318:"81c7ac586fcbb728",8406:"955ccfbb4b70b8c3",8430:"b1f802dcffa41626",8432:"bd66ac287c569996",8457:"b61d96d8d30215fc",8489:"514938fd5e801cf7",8496:"046efd6301dd804f",8545:"be0c9eea6aae5971",8555:"ab3ee6358f1d64da",8568:"f85d8b36fc9a9037",8656:"2ceb4e5ff5df2fca",8670:"90ede75068758e82",8704:"a1003918da6654da",8747:"6b9fbcabf095d1a0",8773:"614f1f4f0f845c5e",8835:"5c7821b201f35593",8848:"7c6e47cca9f0059a",8863:"2ae457485a63aa22",8947:"31d3d834d8281fd9",8977:"073245098d90f307",9005:"33cf91e617920d4f",9006:"11537833945ec4b8",9015:"c4e40321a6503a1b",9136:"191be42a2fee842c",9178:"48a90097ee3f0b0c",9186:"3af6fcd13ab752fa",9189:"3e9d29bf275ec462",9220:"bc767ebb5adb9f49",9224:"401f9320ee58570b",9267:"df6676f5f86b3a4a",9294:"a20485f3282321b3",9302:"726b065f2df0323a",9312:"8121a74b2042bff3",9377:"f9db706e76f04afe",9382:"bc0e11ecc88dd62c",9421:"a5c1dbcfbfdd8f52",9448:"2668b3cd408e86de",9466:"c9d8f45d14235087",9500:"1488aec06ee78127",9521:"e1240eb862eb32dc",9547:"7729788fff21926f",9565:"8de0671f99d12abe",9569:"2f36b2b1c2f838d7",9615:"3b62c13af671f714",9633:"155548b5fca6e580",9648:"8235b6fea7087b3a",9666:"a515fa6d89a71f1c",9680:"d5ceac8967e0b6a8",9690:"7773c72f0eff6dec",9779:"673004a62d70e36a",9841:"422321143547591a",9842:"3b71b65b30d8ef2a",9996:"18b7bca2f0ab222e"})[e]+".js",i.miniCssF=e=>{},i.g=function(){if("object"==typeof globalThis)return globalThis;try{return this||Function("return this")()}catch(e){if("object"==typeof window)return window}}(),i.o=(e,a)=>Object.prototype.hasOwnProperty.call(e,a),c={},i.l=(e,a,f,d)=>{if(c[e])return void c[e].push(a);if(void 0!==f)for(var b,t,r=document.getElementsByTagName("script"),o=0;o<r.length;o++){var n=r[o];if(n.getAttribute("src")==e||n.getAttribute("data-webpack")=="_N_E:"+f){b=n;break}}b||(t=!0,(b=document.createElement("script")).charset="utf-8",b.timeout=120,i.nc&&b.setAttribute("nonce",i.nc),b.setAttribute("data-webpack","_N_E:"+f),b.src=i.tu(e)),c[e]=[a];var u=(a,f)=>{b.onerror=b.onload=null,clearTimeout(l);var d=c[e];if(delete c[e],b.parentNode&&b.parentNode.removeChild(b),d&&d.forEach(e=>e(f)),a)return a(f)},l=setTimeout(u.bind(null,void 0,{type:"timeout",target:b}),12e4);b.onerror=u.bind(null,b.onerror),b.onload=u.bind(null,b.onload),t&&document.head.appendChild(b)},i.r=e=>{"u">typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},i.U=function(e){var a=new URL(e,"x:/"),f={};for(var c in a)f[c]=a[c];for(var c in f.href=e,f.pathname=e.replace(/[?#].*/,""),f.origin=f.protocol="",f.toString=f.toJSON=()=>e,f)Object.defineProperty(this,c,{enumerable:!0,configurable:!0,value:f[c]})},i.U.prototype=URL.prototype,i.tt=()=>(void 0===d&&(d={createScriptURL:e=>e},"u">typeof trustedTypes&&trustedTypes.createPolicy&&(d=trustedTypes.createPolicy("nextjs#bundler",d))),d),i.tu=e=>i.tt().createScriptURL(e),i.p="/_next/",b={8068:0,7389:0,7513:0},i.f.j=(e,a)=>{var f=i.o(b,e)?b[e]:void 0;if(0!==f)if(f)a.push(f[2]);else if(/^(7389|7513|8068)$/.test(e))b[e]=0;else{var c=new Promise((a,c)=>f=b[e]=[a,c]);a.push(f[2]=c);var d=i.p+i.u(e),t=Error();i.l(d,a=>{if(i.o(b,e)&&(0!==(f=b[e])&&(b[e]=void 0),f)){var c=a&&("load"===a.type?"missing":a.type),d=a&&a.target&&a.target.src;t.message="Loading chunk "+e+" failed.\n("+c+": "+d+")",t.name="ChunkLoadError",t.type=c,t.request=d,f[1](t)}},"chunk-"+e,e)}},i.O.j=e=>0===b[e],t=(e,a)=>{var f,c,[d,t,r]=a,o=0;if(d.some(e=>0!==b[e])){for(f in t)i.o(t,f)&&(i.m[f]=t[f]);if(r)var n=r(i)}for(e&&e(a);o<d.length;o++)c=d[o],i.o(b,c)&&b[c]&&b[c][0](),b[c]=0;return i.O(n)},(r=self.webpackChunk_N_E=self.webpackChunk_N_E||[]).forEach(t.bind(null,0)),r.push=t.bind(null,r.push.bind(r))})();
|
package/README.md
CHANGED
|
@@ -60,24 +60,51 @@ ANNOVIBE_PASSWORD=xxx annovibe # 环境变量设置密码
|
|
|
60
60
|
- **模型配置** — 从智能体数据目录下的 `models.json` 读取可用模型,可在侧边栏的「Models」面板中编辑。
|
|
61
61
|
- **文件浏览** — 侧边栏内置文件浏览器,可在标签页中查看和编辑当前工作目录下的文件。所有文件读写/删除/重命名接口只允许访问已注册项目、会话 cwd、`~/pi-cwd-*` 以及手动选择的目录,并会解析 symlink;它不是通用文件系统浏览器。
|
|
62
62
|
- **项目信任** — 仓库内的 `.pi/extensions`、项目 settings 与 `.agents/skills` 默认不执行。打开此类项目时输入框上方会出现 Trust 提示,信任决定与 `pi` CLI 共享(`~/.pi/agent/trust.json`)。
|
|
63
|
-
- **远程访问** — 默认只监听 localhost。绑定到 LAN 或自定义域名时,除密码外还会校验 Host/Origin;自定义域名需加入 `ANNOVIBE_ALLOWED_HOSTS`(逗号分隔)或使用 `--hostname`
|
|
63
|
+
- **远程访问** — 默认只监听 localhost。绑定到 LAN 或自定义域名时,除密码外还会校验 Host/Origin;自定义域名需加入 `ANNOVIBE_ALLOWED_HOSTS`(逗号分隔)或使用 `--hostname` 启动。若前面有 HTTPS 反向代理,设置 `ANNOVIBE_HTTPS=1`(或保证代理发送 `x-forwarded-proto: https`),登录 Cookie 才会带上 `Secure`。
|
|
64
64
|
- **密码存储** — `~/.pi/agent/web-auth.json`,忘记密码可删除此文件重新设置。
|
|
65
65
|
- **全局上下文** — `~/.pi/agent/soul.md`(全局 persona / 语气 / 工作风格)、`~/.pi/agent/harness.md`(行为约束)首次启动自动 seed。
|
|
66
66
|
|
|
67
|
+
## 技术栈与安全
|
|
68
|
+
|
|
69
|
+
- 运行时:Node.js 22、Next.js `16.4.3`、React 19
|
|
70
|
+
- 智能体:pi SDK `1.4.0`
|
|
71
|
+
- 依赖审计:`npm audit` 0 vulnerabilities
|
|
72
|
+
- 安全模型(API 凭据、文件边界、项目信任、Host/Origin)见
|
|
73
|
+
[`docs/adr/0004-api-credentials.md`](docs/adr/0004-api-credentials.md) 与 [`AGENTS.md`](AGENTS.md)
|
|
74
|
+
|
|
67
75
|
## 开发
|
|
68
76
|
|
|
69
77
|
```bash
|
|
70
78
|
npm install
|
|
71
79
|
npm run dev # 端口 30141
|
|
72
80
|
npm test # Node 内置 runner:lib/**/*.test.mjs
|
|
81
|
+
npm run lint
|
|
82
|
+
```
|
|
83
|
+
|
|
84
|
+
浏览器冒烟(必须用生产构建,dev 模式在无头 Chromium 下不水合):
|
|
85
|
+
|
|
86
|
+
```bash
|
|
87
|
+
npm run build
|
|
88
|
+
PI_CODING_AGENT_DIR=/tmp/ui-test node_modules/.bin/next start -p 31234 &
|
|
89
|
+
scripts/ui-fixture.sh
|
|
90
|
+
npm run smoke:ui # 33 项检查
|
|
91
|
+
npm run test:api # 26 项凭据/写边界/分页断言(自己起临时实例)
|
|
92
|
+
|
|
93
|
+
# 会话规模(分页 / 冷启动)
|
|
94
|
+
scripts/ui-fixture.sh --many 300 && UI_SMOKE_MANY=1 npm run smoke:ui
|
|
95
|
+
npm run bench:sessions -- --agent-dir /tmp/ui-test --cwd /tmp/ui-test/cwd-a --cold
|
|
73
96
|
```
|
|
74
97
|
|
|
98
|
+
CI 会在 PR 与 main push 上跑 typecheck、单测、lint、构建与浏览器冒烟
|
|
99
|
+
(`.github/workflows/release-preflight.yml`)。
|
|
100
|
+
|
|
75
101
|
- 日常开发不要运行 `npm run build` 或 `next build`;这只用于发布前验证。
|
|
76
102
|
- `npm run dev` 使用开发态 `.next`,此时 `npm run pack:check` 失败是预期行为,因为它要求生产构建产物。
|
|
77
103
|
|
|
78
104
|
## 发布校验
|
|
79
105
|
|
|
80
|
-
|
|
106
|
+
发布前执行 `tsc`、`npm run lint`、`npm test`、`npm audit`(应为 0),并在生产构建上跑一遍浏览器冒烟;
|
|
107
|
+
全部绿后再 bump 版本、打 tag(见 `AGENTS.md` 的 Release Rules)。打包检查:
|
|
81
108
|
|
|
82
109
|
```bash
|
|
83
110
|
npm run build
|
package/next.config.ts
CHANGED
|
@@ -10,6 +10,31 @@ const nextConfig: NextConfig = {
|
|
|
10
10
|
env: {
|
|
11
11
|
NEXT_PUBLIC_APP_VERSION: version,
|
|
12
12
|
},
|
|
13
|
+
/**
|
|
14
|
+
* Baseline security headers. Deliberately CSP-lite: widgets are srcdoc
|
|
15
|
+
* iframes that inherit the parent CSP, and their own meta CSP allows inline
|
|
16
|
+
* scripts plus four CDNs, while Next injects an inline `beforeInteractive`
|
|
17
|
+
* theme bootstrap. A nonce/strict-dynamic `script-src` would break every
|
|
18
|
+
* widget and the theme, so only the directives that are safe here are set.
|
|
19
|
+
* See ADR-0004 (accepted risk).
|
|
20
|
+
*/
|
|
21
|
+
async headers() {
|
|
22
|
+
return [
|
|
23
|
+
{
|
|
24
|
+
source: "/:path*",
|
|
25
|
+
headers: [
|
|
26
|
+
{ key: "X-Content-Type-Options", value: "nosniff" },
|
|
27
|
+
{ key: "Referrer-Policy", value: "no-referrer" },
|
|
28
|
+
{ key: "X-Frame-Options", value: "SAMEORIGIN" },
|
|
29
|
+
{ key: "Permissions-Policy", value: "camera=(), microphone=(), geolocation=()" },
|
|
30
|
+
{
|
|
31
|
+
key: "Content-Security-Policy",
|
|
32
|
+
value: "base-uri 'none'; object-src 'none'; frame-ancestors 'self'; form-action 'self'",
|
|
33
|
+
},
|
|
34
|
+
],
|
|
35
|
+
},
|
|
36
|
+
];
|
|
37
|
+
},
|
|
13
38
|
};
|
|
14
39
|
|
|
15
40
|
export default nextConfig;
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@seqyuan/annovibe",
|
|
3
|
-
"version": "0.8.
|
|
3
|
+
"version": "0.8.145",
|
|
4
4
|
"description": "AI-native bioinformatics workspace by Annoroad",
|
|
5
5
|
"license": "MIT",
|
|
6
6
|
"bin": {
|
|
@@ -30,6 +30,9 @@
|
|
|
30
30
|
"lint": "eslint .",
|
|
31
31
|
"pack:check": "node scripts/check-npm-pack.mjs",
|
|
32
32
|
"smoke:generative-ui": "python3 scripts/smoke_generative_ui.py",
|
|
33
|
+
"smoke:ui": "node scripts/ui-smoke.mjs",
|
|
34
|
+
"test:api": "node scripts/api-smoke.mjs",
|
|
35
|
+
"bench:sessions": "node scripts/bench-sessions.mjs",
|
|
33
36
|
"prepublishOnly": "node scripts/check-npm-pack.mjs",
|
|
34
37
|
"test": "node --experimental-strip-types --test \"lib/**/*.test.mjs\""
|
|
35
38
|
},
|
|
@@ -84,6 +87,7 @@
|
|
|
84
87
|
"jszip": "^3.10.1",
|
|
85
88
|
"mermaid": "^11.15.0",
|
|
86
89
|
"pdfjs-dist": "^5.7.284",
|
|
90
|
+
"playwright": "^1.64.1",
|
|
87
91
|
"postcss": "^8",
|
|
88
92
|
"react-markdown": "^10.1.0",
|
|
89
93
|
"remark-gfm": "^4.0.1",
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
(()=>{var a={};a.id=9626,a.ids=[9626],a.modules={261:a=>{"use strict";a.exports=require("next/dist/shared/lib/router/utils/app-paths")},3295:a=>{"use strict";a.exports=require("next/dist/server/app-render/after-task-async-storage.external.js")},8128:a=>{"use strict";a.exports=require("next/dist/server/runtime-reacts.external.js")},10846:a=>{"use strict";a.exports=require("next/dist/compiled/next-server/app-page.runtime.prod.js")},19121:a=>{"use strict";a.exports=require("next/dist/server/app-render/action-async-storage.external.js")},26048:(a,b,c)=>{"use strict";c.r(b),c.d(b,{handler:()=>A,patchFetch:()=>z,routeModule:()=>v,serverHooks:()=>y,workAsyncStorage:()=>w,workUnitAsyncStorage:()=>x});var d=c(19225),e=c(84006),f=c(8317),g=c(99373),h=c(34775),i=c(24235),j=c(261),k=c(54365),l=c(90771),m=c(73461),n=c(67798),o=c(92280),p=c(62018),q=c(45696),r=c(47929),s=c(86439),t=c(10246),u=c(37527);let v=new d.AppRouteRouteModule({definition:{kind:e.RouteKind.APP_ROUTE,page:"/api/plot-kernels/save/route",pathname:"/api/plot-kernels/save",filename:"route",bundlePath:"app/api/plot-kernels/save/route"},distDir:".next",relativeProjectDir:"",resolvedPagePath:"/home/runner/work/annovibe/annovibe/app/api/plot-kernels/save/route.ts",nextConfigOutput:"",userland:()=>c(63325),...{}}),{workAsyncStorage:w,workUnitAsyncStorage:x,serverHooks:y}=v;function z(){return(0,f.patchFetch)({workAsyncStorage:w,workUnitAsyncStorage:x})}async function A(a,b,c){c.requestMeta&&(0,g.setRequestMeta)(a,c.requestMeta),v.isDev&&(0,g.addRequestMeta)(a,"devRequestTimingInternalsEnd",process.hrtime.bigint());let d="/api/plot-kernels/save/route";"/index"===d&&(d="/");let{instrumentation:e}=await v.ensureInstrumentation(a,{deferSpans:!0});return v.traceRequest(a,{tracer:(0,h.getTracer)(),spanName:`${a.method||"GET"} ${d}`,httpTarget:a.url,instrumentation:e},(e,f)=>B(a,b,c,d,!1,e,f))}async function B(a,b,c,d,f,w,x){let y=await v.prepare(a,b,{srcPage:d,multiZoneDraftMode:f});if(!y)return b.statusCode=400,b.end("Bad Request"),null==c.waitUntil||c.waitUntil.call(c,Promise.resolve()),null;let{buildId:z,deploymentId:A,params:B,nextConfig:C,parsedUrl:D,isDraftMode:E,prerenderManifest:F,routerServerContext:G,isOnDemandRevalidate:H,revalidateOnlyGenerated:I,resolvedPathname:J,clientReferenceManifest:K,serverActionsManifest:L,previewProps:M}=y,N=(0,j.normalizeAppPath)(d),O=!!F.routes[J]&&(v.isDev||(0,t.isRouteCacheOwner)(J,v.cacheOwner,F.routes[J])),P=!!(F.dynamicRoutes[N]||O),Q=async()=>((null==G?void 0:G.render404)?await G.render404(a,b,D,!1):b.end("This page could not be found"),null);if(P&&!E){let a=F.dynamicRoutes[N];if(a&&!1===a.fallback&&!O){if(C.adapterPath)return await Q();throw new s.NoFallbackError}}let R=null;!P||v.isDev||E||(R="/index"===(R=J)?"/":R),L&&K&&(0,i.setManifestsSingleton)({page:d,clientReferenceManifest:K,serverActionsManifest:L});let S=a.method||"GET",T=(0,h.getTracer)(),U=!!(null==G?void 0:G.isWrappedByNextServer),V=!!(0,g.getRequestMeta)(a,"minimalMode"),W=(0,g.getRequestMeta)(a,"incrementalCache")||await v.getIncrementalCache(a,C,M,F,V);null==W||W.resetRequestCache(),globalThis.__incrementalCache=W;let X={params:B,previewProps:M,renderOpts:{experimental:{authInterrupts:!!C.experimental.authInterrupts,useCacheTimeout:C.experimental.useCacheTimeout,durableUseCacheEntries:!!C.experimental.durableUseCacheEntries},cacheComponents:!!C.cacheComponents,validationLevel:C.experimental.instantInsights.validationLevel,isDraftMode:E,incrementalCache:W,hmrRefreshHash:(0,g.getRequestMeta)(a,"hmrRefreshHash"),cacheLifeProfiles:C.cacheLife,staticPageGenerationTimeout:C.staticPageGenerationTimeout,waitUntil:c.waitUntil,onClose:a=>{b.on("close",a)},onAfterTaskError:void 0},sharedContext:{buildId:z,deploymentId:A}},Y=new k.NodeNextRequest(a),Z=new k.NodeNextResponse(b),$=l.NextRequestAdapter.fromNodeNextRequest(Y,(0,l.signalFromNodeResponse)(b)),_=async({previousCacheEntry:e})=>{try{if(!V&&H&&I&&!e)return b.statusCode=404,b.setHeader("x-nextjs-cache","REVALIDATED"),b.end("This page could not be found"),null;let d=null===R?await v.handle($,X):await v.prerender($,X);a.fetchMetrics=X.renderOpts.fetchMetrics;let f=X.renderOpts.pendingWaitUntil;f&&c.waitUntil&&(c.waitUntil(f),f=void 0);let g=X.renderOpts.collectedTags;if(!P)return await (0,o.I)(Y,Z,d,f),null;{let a=await d.blob(),b=(0,p.toNodeOutgoingHttpHeaders)(d.headers);g&&(b[r.NEXT_CACHE_TAGS_HEADER]=g),!b["content-type"]&&a.type&&(b["content-type"]=a.type);let c=void 0!==X.renderOpts.collectedRevalidate&&!(X.renderOpts.collectedRevalidate>=r.INFINITE_CACHE)&&X.renderOpts.collectedRevalidate,e=void 0===X.renderOpts.collectedExpire||X.renderOpts.collectedExpire>=r.INFINITE_CACHE?!1!==c&&c>0?C.expireTime:void 0:X.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==e?void 0:e.isStale)&&await v.onRequestError(a,b,{routerKind:"App Router",routePath:d,routeType:"route",revalidateReason:(0,n.getRevalidateReason)({isStaticGeneration:null!==R,isOnDemandRevalidate:H})},!1,G),b}},aa=async d=>{try{var f,g;let d=await v.handleResponse({req:a,nextConfig:C,cacheKey:R,routeKind:e.RouteKind.APP_ROUTE,isFallback:!1,previewProps:M,prerenderManifest:F,isRoutePPREnabled:!1,isOnDemandRevalidate:H,revalidateOnlyGenerated:I,responseGenerator:_,waitUntil:c.waitUntil,isMinimalMode:V});if(null!==d&&"error"in d)throw d.error;if(!P)return;if((null==d||null==(f=d.value)?void 0:f.kind)!==u.CachedRouteKind.APP_ROUTE)throw Error(`Invariant: app-route received invalid cache entry ${null==d||null==(g=d.value)?void 0:g.kind}`);V||b.setHeader("x-nextjs-cache",H?"REVALIDATED":d.isMiss?"MISS":d.isStale?"STALE":"HIT"),E&&b.setHeader("Cache-Control","private, no-cache, no-store, max-age=0, must-revalidate");let h=(0,p.fromNodeOutgoingHttpHeaders)(d.value.headers);V&&P||h.delete(r.NEXT_CACHE_TAGS_HEADER),!d.cacheControl||b.getHeader("Cache-Control")||h.get("Cache-Control")||h.set("Cache-Control",(0,q.getCacheControlHeader)(d.cacheControl)),await (0,o.I)(Y,Z,new Response(d.value.body,{headers:h,status:d.value.status||200}));return}catch(c){if(c instanceof s.NoFallbackError||await v.onRequestError(a,c,{routerKind:"App Router",routePath:N,routeType:"route",revalidateReason:(0,n.getRevalidateReason)({isStaticGeneration:null!==R,isOnDemandRevalidate:H})},!1,G),P)throw c;if(b.headersSent){if(d){let a=c instanceof Error?c:Error("Unknown app route error");d.recordException(a),d.setStatus({code:h.SpanStatusCode.ERROR,message:a.message}),d.setAttribute("error.type",a.name)}b.writableEnded||b.destroyed||b.end()}else await (0,o.I)(Y,Z,new Response(null,{status:500}));return}finally{(()=>{if(!d)return;let a=b.statusCode;d.setAttributes({"http.status_code":a,"next.rsc":!1}),a&&a>=500&&(d.setStatus({code:h.SpanStatusCode.ERROR}),d.setAttribute("error.type",a.toString()));let c=T.getRootSpanAttributes();if(!c)return;if(c.get("next.span_type")!==m.BaseServerSpan.handleRequest)return console.warn(`Unexpected root span type '${c.get("next.span_type")}'. Please report this Next.js issue https://github.com/vercel/next.js`);let e=c.get("next.route")||N,f=`${S} ${e}`;d.setAttributes({"next.route":e,"http.route":e,"next.span_name":f}),d.updateName(f),x&&x!==d&&(x.setAttribute("http.route",e),x.updateName(f))})()}};U||void 0===a.url||null==w||w.setAttribute("http.target",a.url),await aa(w)}},29294:a=>{"use strict";a.exports=require("next/dist/server/app-render/work-async-storage.external.js")},31421:a=>{"use strict";a.exports=require("node:child_process")},33873:a=>{"use strict";a.exports=require("path")},39773:(a,b,c)=>{"use strict";c.d(b,{X:()=>g,w:()=>f});var d=c(55511);let e=new Map;function f(a){let b=(0,d.randomUUID)().replace(/-/g,"").slice(0,24);return e.set(b,{...a,token:b,expiresAt:Date.now()+18e5}),b}function g(a){let b=e.get(a);return b?Date.now()>b.expiresAt?(e.delete(a),null):b:null}setInterval(()=>{let a=Date.now();for(let[b,c]of e)a>c.expiresAt&&e.delete(b)},3e5)},44870:a=>{"use strict";a.exports=require("next/dist/compiled/next-server/app-route.runtime.prod.js")},48161:a=>{"use strict";a.exports=require("node:os")},51455:a=>{"use strict";a.exports=require("node:fs/promises")},53571:(a,b,c)=>{"use strict";c.d(b,{Q:()=>f});var d=c(23211),e=c(74177);function f(a,b){let c=b.status??500,f=`[api] ${b.context} failed (${c}): ${(0,e.m)(a)}`;c>=500?console.error(f,a instanceof Error?a.stack??"":""):console.warn(f);let{error:g,detail:h}=(0,e.c)(a,{status:c,expose:b.expose,verbose:"1"===process.env.ANNOVIBE_VERBOSE_ERRORS});return d.NextResponse.json({error:g,...b.code?{code:b.code}:{},...h?{detail:h}:{},...b.extra},{status:c,...b.headers?{headers:b.headers}:{}})}},55511:a=>{"use strict";a.exports=require("crypto")},57975:a=>{"use strict";a.exports=require("node:util")},63033:a=>{"use strict";a.exports=require("next/dist/server/app-render/work-unit-async-storage.external.js")},63325:(a,b,c)=>{"use strict";c.r(b),c.d(b,{POST:()=>i,dynamic:()=>h});var d=c(23211),e=c(15193),f=c(39773),g=c(53571);let h="force-dynamic";async function i(a){try{let{replayToken:b,format:c,dpi:g,width:h,height:i}=await a.json();if(!b)return d.NextResponse.json({error:"replayToken required"},{status:400});let j=(0,f.X)(b);if(!j)return d.NextResponse.json({error:"Save session expired. Re-render the plot."},{status:410});let k=await (0,e.n6)();if(!k.save)return d.NextResponse.json({error:"kernel-lite-core does not support save"},{status:501});let l=await k.save({scriptPath:j.scriptPath,outputDir:j.outputDir,language:j.language,format:"png"===c||"svg"===c?c:"pdf",dpi:"number"==typeof g&&Number.isFinite(g)&&g>=72&&g<=1200?g:300,width:"number"==typeof h&&Number.isFinite(h)&&h>=100?h:800,height:"number"==typeof i&&Number.isFinite(i)&&i>=100?i:600});return d.NextResponse.json({ok:!0,savedPath:l.savedPath,artifacts:l.artifacts})}catch(a){return(0,g.Q)(a,{context:"POST /api/plot-kernels/save"})}}},73024:a=>{"use strict";a.exports=require("node:fs")},74177:(a,b,c)=>{"use strict";c.d(b,{c:()=>f,m:()=>e});let d={400:"Request could not be processed",401:"Authentication required",403:"Request was rejected",404:"Not found",405:"Method not allowed",409:"Request conflicts with the current state",413:"Payload too large",415:"Unsupported media type",422:"Request could not be processed",429:"Too many requests"};function e(a){if(a instanceof Error)return a.message||a.name;if("string"==typeof a)return a;try{return JSON.stringify(a)??String(a)}catch{return String(a)}}function f(a,b){let c=e(a),f=d[b.status]??(b.status>=500?"Internal server error":"Request failed"),g=b.expose?c:f;return b.verbose&&c&&c!==g?{error:g,detail:c}:{error:g}}},76760:a=>{"use strict";a.exports=require("node:path")},77598:a=>{"use strict";a.exports=require("node:crypto")},78335:()=>{},86439:a=>{"use strict";a.exports=require("next/dist/shared/lib/no-fallback-error.external")},96487:()=>{}};var b=require("../../../../webpack-runtime.js");b.C(a);var c=b.X(0,[2970,1813,5193],()=>b(b.s=26048));module.exports=c})();
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
globalThis.__RSC_MANIFEST=(globalThis.__RSC_MANIFEST||{});globalThis.__RSC_MANIFEST["/api/plot-kernels/save/route"]={"moduleLoading":{"prefix":"/_next/"},"ssrModuleMapping":{},"edgeSSRModuleMapping":{},"clientModules":{},"entryCSSFiles":{"/home/runner/work/annovibe/annovibe/app/api/plot-kernels/save/route":[]},"rscModuleMapping":{},"edgeRscModuleMapping":{}};
|
|
@@ -1,22 +0,0 @@
|
|
|
1
|
-
"use strict";exports.id=7699,exports.ids=[7699],exports.modules={17699:(a,b,c)=>{c.d(b,{T:()=>X});var d=c(67484);function e(a){if("assistant"!==a.role)return a;let b=a.content;if(!Array.isArray(b))return a;let c=b.map(a=>("object"!=typeof a||null===a||Array.isArray(a)||"toolCall"!==a.type?null:{type:"toolCall",toolCallId:"string"==typeof a.toolCallId?a.toolCallId:"string"==typeof a.id?a.id:"",toolName:"string"==typeof a.toolName?a.toolName:"string"==typeof a.name?a.name:"",input:"object"!=typeof a.input||null===a.input||Array.isArray(a.input)?"object"!=typeof a.arguments||null===a.arguments||Array.isArray(a.arguments)?{}:a.arguments:a.input})??a);return{...a,content:c}}let f={isStreaming:!1,streamingMessage:null};function g(){return{role:"assistant",content:[],model:"",provider:"",timestamp:Date.now()}}function h(a,b,c){if(!Number.isInteger(b)||void 0===b||b<0)return a;let d=a.streamingMessage??g(),e=[...d.content],f=c(e[b]);return f?(e[b]=f,{isStreaming:!0,streamingMessage:{...d,content:e}}):a}function i(a){if(a.id||a.toolName)return{...a.id?{id:a.id}:{},...a.toolName?{toolName:a.toolName}:{}};let b=a.partial,c=a.contentIndex;if(!b||!Array.isArray(b.content)||void 0===c)return{};let d=b.content[c];return d&&"toolCall"===d.type?{..."string"==typeof d.id?{id:d.id}:"string"==typeof d.toolCallId?{id:d.toolCallId}:{},..."string"==typeof d.name?{toolName:d.name}:"string"==typeof d.toolName?{toolName:d.toolName}:{}}:{}}function j(a,b){switch(b.type){case"start":return{isStreaming:!0,streamingMessage:null};case"snapshot":return"assistant"===b.message.role?{isStreaming:!0,streamingMessage:b.message}:a;case"delta":var c=b.event;switch(c.type){case"start":return{isStreaming:!0,streamingMessage:a.streamingMessage??g()};case"text_start":return h(a,c.contentIndex,a=>a?.type==="text"?a:{type:"text",text:""});case"text_delta":return h(a,c.contentIndex,a=>({type:"text",text:(a?.type==="text"?a.text:"")+(c.delta??"")}));case"text_end":return h(a,c.contentIndex,a=>({type:"text",text:c.content??(a?.type==="text"?a.text:"")}));case"thinking_start":return h(a,c.contentIndex,a=>a?.type==="thinking"?a:{type:"thinking",thinking:""});case"thinking_delta":return h(a,c.contentIndex,a=>({type:"thinking",thinking:(a?.type==="thinking"?a.thinking:"")+(c.delta??"")}));case"thinking_end":return h(a,c.contentIndex,a=>({type:"thinking",thinking:c.content??(a?.type==="thinking"?a.thinking:"")}));case"toolcall_start":return h(a,c.contentIndex,a=>{let b=i(c);return a?.type==="toolCall"?{...a,...b.id?{toolCallId:b.id}:{},...b.toolName?{toolName:b.toolName}:{},rawInput:a.rawInput??""}:{type:"toolCall",toolCallId:b.id??"",toolName:b.toolName??"tool",input:{},rawInput:""}});case"toolcall_delta":return h(a,c.contentIndex,a=>{let b=i(c),d=a?.type==="toolCall"?a:{type:"toolCall",toolCallId:b.id??"",toolName:b.toolName??"tool",input:{}};return{...d,...b.id?{toolCallId:b.id}:{},...b.toolName?{toolName:b.toolName}:{},rawInput:(d.rawInput??"")+(c.delta??"")}});case"toolcall_end":return h(a,c.contentIndex,()=>({type:"toolCall",toolCallId:c.toolCall?.id??"",toolName:c.toolCall?.name??"tool",input:c.toolCall?.arguments??{}}));default:return a}case"end":case"reset":return f;default:return a}}function k(a){return"object"==typeof a&&null!==a&&!Array.isArray(a)}function l(a){if("assistant"!==a.role)return null;let b=a.timestamp;return"number"!=typeof b?null:`assistant:${b}`}class m extends Error{constructor(a,b,c){super(a),this.status=b,this.code=c,this.name="AgentCommandError"}}async function n(a,b){let c=await fetch(`/api/agent/${encodeURIComponent(a)}`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify(b)}),d=await c.json().catch(()=>({}));if(!c.ok||d.error)throw new m(d.error??`HTTP ${c.status}`,c.status,d.code);return d.data}async function o(a,b,c){let d,e=new TextDecoder,f="",g=a=>{if(a.startsWith("id: ")){d=a.slice(4);return}if(!a.startsWith("data: "))return;let c=a.slice(6);if("[DONE]"!==c)try{b(c,d)}catch{}finally{d=void 0}},h=new Promise(a=>{c?.aborted?a():c?.addEventListener("abort",()=>a(),{once:!0})});for(;;){let b=await Promise.race([a.read(),h.then(()=>({done:!0,value:void 0}))]);if(b.done)break;let c=(f+=e.decode(b.value,{stream:!0})).split("\n");for(let a of(f=c.pop()||"",c))g(a)}if(f.trim())for(let a of f.split("\n"))g(a)}let p="__annovibeStreamSessions__",q="__annovibeStreamListeners__",r="__annovibeStreamErrorCallbacks__";function s(){let a=globalThis;return a[p]||(a[p]=new Map),a[p]}function t(){let a=globalThis;return a[r]||(a[r]=new Map),a[r]}function u(a){return{sessionId:a,phase:"idle",startedAt:null,lastEventAt:null,lastHeartbeatAt:null,reconnectCount:0,lastSyncReason:null,accumulatedText:"",toolCalls:[],toolResults:[],statusText:null,streamingMessage:null,isStreaming:!1,error:null}}function v(a,b){let c;for(let d of(!(c=globalThis)[q]&&(c[q]=new Map),c[q]).get(a)??[])try{d(b)}catch{}}function w(a){a.textThrottleTimer&&(clearTimeout(a.textThrottleTimer),a.textThrottleTimer=null),a.textDirty&&(a.textDirty=!1,y(a))}function x(a,b=!1){let c=Date.now();if(a.snapshot.lastEventAt=c,!b){a.textDirty=!0,a.textThrottleTimer||(a.textThrottleTimer=setTimeout(()=>{a.textThrottleTimer=null,a.textDirty&&(a.textDirty=!1,y(a))},100));return}w(a),y(a)}function y(a,b){let c=Date.now(),d=function(a){let b=[];for(let c of a.toolCalls.values())b.push({type:"toolCall",toolCallId:c.toolCallId,toolName:c.toolName,input:c.input??{}});let c=a.accumulatedText.trim();return c&&b.push({type:"text",text:c}),b}(a),e=(b??a.snapshot.phase)==="active";a.snapshot={...a.snapshot,phase:b??a.snapshot.phase,lastEventAt:c,accumulatedText:a.accumulatedText,toolCalls:[...a.toolCalls.values()],toolResults:[...a.toolResults.values()],statusText:e?function(a){if(a.activeToolId){let b=a.toolCalls.get(a.activeToolId);if(b){let a=Math.max(0,Math.floor((Date.now()-b.startedAt)/1e3));return`Running ${b.toolName||"tool"}… (${a}s)`}}return a.accumulatedText.trim()?"Generating response…":a.toolCalls.size>0?"Finishing tool results…":null}(a):a.snapshot.statusText,streamingMessage:e&&d.length>0?{role:"assistant",content:d}:null,isStreaming:e},v(a.snapshot.sessionId,{type:"snapshot-updated",snapshot:a.snapshot})}function z(a){A(a),a.idleCheckTimer=setInterval(()=>{if("connected"!==a.connectionState)return;let b=Math.max(a.snapshot.lastEventAt??0,a.snapshot.lastHeartbeatAt??0);if(Date.now()-b>=18e4){B(a),w(a);let b="Stream idle timeout — no activity for 180s.";a.snapshot={...a.snapshot,phase:"error",isStreaming:!1,streamingMessage:null,statusText:null,error:b},A(a),v(a.snapshot.sessionId,{type:"error",snapshot:a.snapshot});let c=t().get(a.snapshot.sessionId);if(c)try{c(a.snapshot.sessionId,b)}catch{}}},1e4)}function A(a){a.idleCheckTimer&&(clearInterval(a.idleCheckTimer),a.idleCheckTimer=null)}function B(a){a.toolProgressTimer&&(clearInterval(a.toolProgressTimer),a.toolProgressTimer=null)}function C(a){let b=s(),c=b.get(a);return c||(c={snapshot:u(a),accumulatedText:"",toolCalls:new Map,toolResults:new Map,toolProgressTimer:null,activeToolId:null,textThrottleTimer:null,textDirty:!1,connectionState:"idle",idleCheckTimer:null},b.set(a,c)),c}function D(a,b){let c=t();return c.set(a,b),()=>{c.get(a)===b&&c.delete(a)}}function E(a){let b=s(),c=b.get(a);c&&(B(c),A(c),w(c)),b.delete(a)}function F(a){let b=s().get(a);b&&(b.snapshot={...b.snapshot,reconnectCount:b.snapshot.reconnectCount+1,lastSyncReason:"sse-reconnect",lastEventAt:Date.now()},x(b,!0))}var G=c(31343);async function H(a,b){if(!b.length)return[];let c=await fetch("/api/images/upload",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({cwd:a,images:b.map(a=>({data:a.data,mimeType:a.mimeType,name:a.name}))})}),d=await c.json().catch(()=>({}));if(!c.ok||d.error)throw Error(d.error??`Upload failed (HTTP ${c.status})`);return(d.uploaded??[]).map((a,c)=>({...a,previewUrl:b[c]?.previewUrl}))}c(81537);let I="__annovibeSessionMessageCache__";function J(){let a=globalThis;if(!a[I]){var b;let c={entries:new Map,cleanupTimer:null};a[I]=c,(b=c).cleanupTimer||(b.cleanupTimer=setInterval(()=>{let a=Date.now();for(let[c,d]of b.entries)a-d.loadedAt>72e5&&b.entries.delete(c)},6e4))}return a[I]}function K(a){let b=J(),c=b.entries.get(a);return c?Date.now()-c.loadedAt>72e5?(b.entries.delete(a),null):(c.loadedAt=Date.now(),{...c,messages:[...c.messages],entryIds:[...c.entryIds]}):null}function L(a,b,c,d,e){let f=J(),g=f.entries.get(a);if(!g)return;let h=new Set(g.entryIds),i=[],j=[];for(let a=0;a<b.length;a++){let d=c[a];d&&!h.has(d)&&(i.push(b[a]),j.push(d))}0!==i.length&&f.entries.set(a,{...g,messages:[...i,...g.messages],entryIds:[...j,...g.entryIds],hasMore:d,loadedMessagesCount:e,loadedAt:Date.now()})}function M(a){J().entries.delete(a)}var N=c(29947);function O(a){return{steering:a?.steering??[],followUp:a?.followUp??[]}}let P=[500,1500,3e3];function Q(a,b){return new DOMException(a,b)}function R(){return"u">typeof crypto&&"function"==typeof crypto.randomUUID?crypto.randomUUID():`${Date.now().toString(36)}-${Math.random().toString(36).slice(2,11)}-${Math.random().toString(36).slice(2,11)}`}function S(a,b){return a.trim()||0!==b?`text:${a}|images:${b}`:null}function T(a){return"string"==typeof a?S(a,0):Array.isArray(a)?S(a.filter(a=>!!a&&"object"==typeof a&&"text"===a.type&&"string"==typeof a.text).map(a=>a.text).join("\n"),a.filter(a=>!!a&&"object"==typeof a&&"image"===a.type).length):null}function U(a){let b=new Map;for(let c of a){let a="user"!==c.role?null:T(c.content);a&&b.set(a,(b.get(a)??0)+1)}return b}function V(a,b,c){return a.sessionId===b&&(!a.leafId||c.includes(a.leafId))}function W(a,b){let c=a.timestamp,d=b.timestamp;if("number"!=typeof c||"number"!=typeof d||c!==d||a.role!==b.role)return!1;try{return JSON.stringify(a)===JSON.stringify(b)}catch{return!1}}function X(a){let{session:b,newSessionCwd:c,onAgentEnd:g,onSessionCreated:h,onSessionForked:i,modelsRefreshKey:p,onBranchDataChange:q,chatInputRef:r}=a,t=null===b&&null!==c,[y,I]=(0,d.useState)(null),[X,Y]=(0,d.useState)(!t),[Z,$]=(0,d.useState)(null),[_,aa]=(0,d.useState)(null),[ab,ac]=(0,d.useState)([]),[ad,ae]=(0,d.useState)([]),[af,ag]=(0,d.useState)(0),[ah,ai]=(0,d.useState)(!1),[aj,ak]=(0,d.useState)(0),[al,am]=(0,d.useReducer)(j,f),[an,ao]=(0,d.useState)(!1),[ap,aq]=(0,d.useState)({}),[ar,as]=(0,d.useState)([]),[at,au]=(0,d.useState)({}),[av,aw]=(0,d.useState)({}),[ax,ay]=(0,d.useState)(null),[az,aA]=(0,d.useState)("full"),[aB,aC]=(0,d.useState)([...N.SN]),[aD,aE]=(0,d.useState)([]),[aF,aG]=(0,d.useState)("auto"),[aH,aI]=(0,d.useState)(null),[aJ,aK]=(0,d.useState)(null),[aL,aM]=(0,d.useState)(null),[aN,aO]=(0,d.useState)(null),[aP,aQ]=(0,d.useState)(null),[aR,aS]=(0,d.useState)(null),[aT,aU]=(0,d.useState)(!1),[aV,aW]=(0,d.useState)(null),[aX,aY]=(0,d.useState)(null),[aZ,a$]=(0,d.useState)(null),[a_,a0]=(0,d.useState)({steering:[],followUp:[]}),[a1,a2]=(0,d.useState)(null),a3=(0,d.useRef)(b?.id??null),a4=function({sessionIdRef:a,onEvent:b,onReconnect:c,reconnectBaseMs:e=1e3,reconnectMaxMs:f=3e4}){let g=(0,d.useRef)(null),h=(0,d.useRef)({onEvent:b,onReconnect:c});h.current={onEvent:b,onReconnect:c};let i=(0,d.useCallback)(()=>{g.current?.close(),g.current=null},[]),j=(0,d.useCallback)(()=>{let a=g.current;return!!a&&"closed"!==a.state&&"error"!==a.state},[]);return{connect:(0,d.useCallback)((b,c={})=>{g.current?.close(),g.current=null;let d=`/api/agent/${encodeURIComponent(b)}/events${c.replay?"?replay=1":""}`;return!function(a){let b=C(a);if("active"===b.snapshot.phase)return x(b,!0),z(b),b.snapshot;let c=Date.now();b.snapshot={...u(a),phase:"active",startedAt:c,lastEventAt:c,isStreaming:!0,streamingMessage:{role:"assistant",content:[]}},z(b),x(b,!0),b.snapshot}(b),new Promise((i,j)=>{let k=!1,l=!1,m=null,n=a=>{if(!k){if(k=!0,clearTimeout(p),a){m?.close(),g.current===m&&(g.current=null),j(a);return}i()}},p=setTimeout(()=>{c.requireConnected?n(Error("Timed out waiting for event stream connection")):n()},c.timeoutMs??3e4);g.current=m=function(a){let{url:b,onEvent:c,onStateChange:d,onFatalError:e,maxReconnectAttempts:f=1/0,reconnectBaseMs:g=1e3,reconnectMaxMs:h=3e4,autoReconnect:i=!0}=a,j="idle",k=new AbortController,l=0,m=null,n=null,p=!1,q=(a,b)=>{b&&(n=b),c(a,b)},r=a=>{j!==a&&(j=a,d?.(a))},s=()=>{null!==m&&(clearTimeout(m),m=null)},t=()=>{if(p)return;if(!i)return void r("error");if(l>=f){r("error"),e?.(Error(`Max reconnect attempts (${f}) reached`));return}let a=Math.min(h,g*2**l);l+=1,r("connecting"),m=setTimeout(()=>{m=null,u()},a)},u=async()=>{if(!p){s(),k=new AbortController,r("connecting");try{let a=await fetch(b,{signal:k.signal,headers:{Accept:"text/event-stream","Cache-Control":"no-cache",...n?{"Last-Event-ID":n}:{}}});if(!a.ok)throw Error(`HTTP ${a.status}: ${a.statusText}`);let c=a.body;if(!c)throw Error("Response has no readable body");let d=c.getReader();if(r("connected"),l=0,await o(d,q,k.signal),k.signal.aborted)try{await d.cancel()}catch{}d.releaseLock(),r("closed"),!p&&i&&t()}catch(a){if(p||a instanceof DOMException&&"AbortError"===a.name)return void r("closed");r("error"),i&&t()}}};return{get state(){return j},connect:()=>{p=!1,l=0,s(),u()},close:()=>{p=!0,s(),k.abort(),r("closed")},get abortController(){return k}}}({url:d,onEvent:c=>{try{let d=JSON.parse(c);if("connected"===d.type&&n(),a.current!==b)return;h.current.onEvent(d)}catch{}},onStateChange:a=>{!function(a,b){let c=s().get(a);if(!c)return;let d=c.connectionState;c.connectionState=b,"connected"===b&&"connected"!==d&&(c.snapshot={...c.snapshot,lastEventAt:Date.now(),lastHeartbeatAt:Date.now()},z(c)),"connected"!==b&&"connected"===d&&A(c)}(b,a),"connected"===a&&(l&&(F(b),h.current.onReconnect?.(b)),l=!0)},reconnectBaseMs:e,reconnectMaxMs:f}),m.connect()})},[e,f,a]),disconnect:i,isActive:j,readerRef:g}}({sessionIdRef:a3,onEvent:a=>bn.current?.(a),onReconnect:a=>bo.current?.(a,"sse_reconnected")}),{disconnect:a5,isActive:a6}=a4,a7=a4.readerRef,{statuses:a8,widgets:a9,dialog:ba,notices:bb,applyFromState:bc,handleEvent:bd,respond:be,dismissNotice:bf}=function({chatInputRef:a,sessionIdRef:b,onError:c,noticeTtlMs:e=8e3}){let[f,g]=(0,d.useState)([]),[h,i]=(0,d.useState)([]),[j,k]=(0,d.useState)(null),[l,m]=(0,d.useState)([]),o=(0,d.useRef)(new Set),p=(0,d.useCallback)(()=>{for(let a of o.current)clearTimeout(a);o.current.clear()},[]),q=(0,d.useCallback)((a,b)=>{let c={id:`${Date.now()}-${Math.random().toString(36).slice(2,8)}`,message:a,type:b};m(a=>[...a,c].slice(-4));let d=setTimeout(()=>{o.current.delete(d),m(a=>a.filter(a=>a.id!==c.id))},e);o.current.add(d)},[e]),r=(0,d.useCallback)(a=>{a&&(Array.isArray(a.extensionStatuses)&&g(a.extensionStatuses),Array.isArray(a.extensionWidgets)&&i(a.extensionWidgets))},[]),s=(0,d.useCallback)(b=>{if("extension_error"===b.type)return q("string"==typeof b.error?b.error:"Extension command failed","error"),!0;if("extension_ui_request"!==b.type)return!1;let c="string"==typeof b.method?b.method:"";if("select"===c||"confirm"===c||"input"===c||"editor"===c)return k({id:String(b.id??""),method:c,title:"string"==typeof b.title?b.title:"",...Array.isArray(b.options)?{options:b.options}:{},..."string"==typeof b.message?{message:b.message}:{},..."string"==typeof b.placeholder?{placeholder:b.placeholder}:{},..."string"==typeof b.prefill?{prefill:b.prefill}:{}}),!0;if("notify"===c){let a="warning"===b.notifyType||"error"===b.notifyType?b.notifyType:"info";return q(String(b.message??""),a),!0}if("setStatus"===c){let a=String(b.statusKey??"");if(!a)return!0;let c="string"==typeof b.statusText?b.statusText:null;return g(b=>{let d=b.filter(b=>b.key!==a);return c?[...d,{key:a,text:c}]:d}),!0}if("setWidget"===c){let a=String(b.widgetKey??"");if(!a)return!0;let c=Array.isArray(b.widgetLines)?b.widgetLines.filter(a=>"string"==typeof a):null;return i(d=>{let e=d.filter(b=>b.key!==a);return c&&c.length>0?[...e,{key:a,lines:c,placement:"string"==typeof b.widgetPlacement?b.widgetPlacement:"aboveEditor"}]:e}),!0}return"dismiss"===c?k(a=>a?.id===b.id?null:a):"set_editor_text"===c&&"string"==typeof b.text?a?.current?.setText?.(b.text):"setTitle"===c&&"string"==typeof b.title&&(document.title=b.title),!0},[a,q]),t=(0,d.useCallback)(async(a,d)=>{let e=b.current;if(k(b=>b?.id===a?null:b),e)try{await n(e,{type:"extension_ui_response",id:a,...d})}catch(a){c(a instanceof Error?a.message:String(a))}},[c,b]);return{statuses:f,widgets:h,dialog:j,notices:l,applyFromState:r,handleEvent:s,respond:t,dismissNotice:(0,d.useCallback)(a=>{m(b=>b.filter(b=>b.id!==a))},[]),reset:(0,d.useCallback)(()=>{p(),g([]),i([]),k(null),m([])},[p])}}({chatInputRef:r,sessionIdRef:a3,onError:a2}),bg=(0,d.useRef)(!1),{live:bh,running:bi,isRunning:bj,begin:bk,finish:bl,handleEvent:bm}=function({onRunningChange:a,onDone:b,flushMs:c=60}={}){let[e,f]=(0,d.useState)(null),[g,h]=(0,d.useState)(!1),i=(0,d.useRef)(!1),j=(0,d.useRef)(""),k=(0,d.useRef)(null),l=(0,d.useRef)({onRunningChange:a,onDone:b});l.current={onRunningChange:a,onDone:b};let m=(0,d.useCallback)(()=>{k.current&&(clearTimeout(k.current),k.current=null)},[]),n=(0,d.useCallback)(a=>{m(),j.current="",i.current=!0,h(!0),f({command:a,output:""}),l.current.onRunningChange?.(!0,a)},[m]),o=(0,d.useCallback)(()=>{m(),j.current="",i.current=!1,h(!1),f(null),l.current.onRunningChange?.(!1)},[m]);return{live:e,running:g,isRunning:(0,d.useCallback)(()=>i.current,[]),begin:n,finish:o,handleEvent:(0,d.useCallback)(a=>{if("bash_execution_start"===a.type){let b=String(a.command??"");return m(),j.current="",i.current=!0,h(!0),f({command:b,output:""}),l.current.onRunningChange?.(!0,b),!0}if("bash_execution_update"===a.type){let b="string"==typeof a.chunk?a.chunk:"";return!b||(j.current+=b,k.current||(k.current=setTimeout(()=>{k.current=null;let a=j.current;j.current="",a&&f(b=>b?{...b,output:b.output+a}:b)},c)),!0)}return"bash_done"===a.type&&(m(),j.current="",i.current=!1,h(!1),f(null),l.current.onRunningChange?.(!1),l.current.onDone?.(),!0)},[m,c])}}({onRunningChange:(a,b)=>{bg.current=a,ao(a),a$(a?{kind:"running_tools",tools:[{id:"bash",name:"bash",args:b}]}:null)}}),bn=(0,d.useRef)(null),bo=(0,d.useRef)(null),bp=(0,d.useRef)(null),bq=(0,d.useRef)(!1),br=(0,d.useRef)(null),bs=(0,d.useRef)(!1),bt=(0,d.useRef)(null),bu=(0,d.useRef)(null),bv=(0,d.useRef)(new Map),bw=(0,d.useRef)(new Map),bx=(0,d.useRef)(new Map),by=(0,d.useRef)(new Map),bz=(0,d.useRef)(null),bA=(0,d.useRef)([]),bB=(0,d.useRef)(null),bC=(0,d.useRef)(0),bD=(0,d.useRef)(!1),bE=(0,d.useRef)(0),bF=(0,d.useRef)(!1);(0,d.useRef)(!1),(0,d.useRef)(0);let bG=(0,d.useRef)(null),bH=(0,d.useRef)(null),bI=(0,d.useRef)(0);(0,d.useRef)(!1);let bJ=a.setNewSessionModel??ay,bK=a.setToolPreset??aA,bL=a.setMemoryTools??aC,bM=aP??y?.context.model??aR??null,bN=t?ax:bM,bO=(0,d.useCallback)(()=>(0,N.tE)(az,aB),[aB,az]),bP=(0,d.useCallback)(a=>a?.length?a.map((a,b)=>{let c=`Attachment ${b+1}: ${a.fileName} (${a.mimeType||"application/octet-stream"}, ${a.size} bytes)`;if(a.extractedText){let b=a.truncated?"\n[The extracted text was truncated before sending.]":"";return`${c}
|
|
2
|
-
${b}
|
|
3
|
-
${a.extractedText}`.trim()}return`${c}
|
|
4
|
-
[Text extraction unavailable: ${a.extractionError??"unsupported file type"}]`}).join("\n\n---\n\n"):"",[]),bQ=(0,d.useCallback)(async a=>{let b=await fetch(`/api/agent/${encodeURIComponent(a)}/prepare`,{method:"POST"});if(!b.ok)throw Error((await b.json().catch(()=>({}))).error??`Failed to prepare session (HTTP ${b.status})`)},[]),bR=(()=>{let a={input:0,output:0,cacheRead:0,cacheWrite:0};for(let b of ab){if("assistant"!==b.role)continue;let c=b.usage;c&&(a.input+=c.input??0,a.output+=c.output??0,a.cacheRead+=c.cacheRead??0,a.cacheWrite+=c.cacheWrite??0)}return a.input+a.output+a.cacheRead+a.cacheWrite>0?{tokens:a}:null})(),bS=(0,d.useRef)(!1),bT=(0,d.useCallback)(async()=>{let a=a3.current;if(!a||bS.current||bF.current)return;bS.current=!0,bD.current=!0;let b=0,c=K(a);b=c?c.loadedMessagesCount:50;try{for(;;)try{let c=await fetch(`/api/sessions/${encodeURIComponent(a)}?limit=100&offset=${b}&deferThinking=1&deferMedia=1`);if(!c.ok)break;let d=await c.json();if(a3.current!==a)break;let e=d.context.messages,f=d.context.entryIds??[];if(0===e.length)break;ac(a=>[...e,...a]),ae(a=>{let b=[...f,...a];return bA.current=b,b});let g=b+e.length;if(ak(g),bE.current=g,ai(d.hasMore??!1),L(a,e,f,d.hasMore??!1,g),b=g,!d.hasMore)break;await new Promise(a=>setTimeout(a,800))}catch{break}}finally{bS.current=!1,bF.current=!0,bD.current=!1}},[]),bU=(0,d.useCallback)(async(a,b=!1,c=!1,d=!1)=>{var e;let f=null;try{if(b&&Y(!0),!c&&!bg.current&&!d){let c=K(a);if(c)return ag(c.totalMessages),ai(c.hasMore),ak(c.loadedMessagesCount),ac(c.messages),bA.current=c.entryIds,ae(c.entryIds),bz.current=c.leafId,aa(c.leafId),bE.current=c.loadedMessagesCount,b&&Y(!1),c.hasMore&&!bF.current&&setTimeout(()=>{bT()},1500),null}let g=c?`/api/sessions/${encodeURIComponent(a)}?includeState&deferThinking=1&deferMedia=1`:`/api/sessions/${encodeURIComponent(a)}?limit=50&offset=0&deferThinking=1&deferMedia=1`,h=bH.current;if(h?.sid===a&&!b)return null;h?.controller.abort(Q("Session load superseded","AbortError"));let i=new AbortController;f=i,bH.current={sid:a,controller:i};let j=setTimeout(()=>{i.abort(Q("Session load timed out after 30 seconds","TimeoutError"))},3e4),k=await fetch(g,{signal:i.signal}).finally(()=>clearTimeout(j));if(a3.current&&a3.current!==a)return null;if(404===k.status)return b&&(I(null),bz.current=null,aa(null),ac([]),$(null)),null;if(!k.ok)throw Error(`HTTP ${k.status}`);let m=await k.json();c?(ag(m.totalMessages??m.context.messages.length),ai(!1)):(ag(m.totalMessages??m.context.messages.length),ai(m.hasMore??!1)),ak(m.context.messages.length),I(m),bz.current=m.leafId,aa(m.leafId);let n=m.context.messages,o=U(n),p=new Map,q=Date.now();for(let[b,c]of bv.current)if(c.sessionId===a){if(q-c.createdAt>12e4){bv.current.delete(b);continue}if(c.confirmKey){let a=o.get(c.confirmKey)??0,d=p.get(c.confirmKey)??0;a-d>c.confirmCountAtCreate&&(bv.current.delete(b),p.set(c.confirmKey,d+1))}}bw.current=o;let r=m.context.entryIds??[],s=[...bv.current.values()].filter(b=>V(b,a,r)).map(a=>a.message),t=s.length>0?[...n,...s]:n,u=function(a,b,c){if(0===b.size)return a;let d=!1,e=a.map(a=>{let e=l(a);if(!e)return a;let f=b.get(e);return f?c-f.observedAt>5e3||function(a,b){let c=a.timestamp,d=b.timestamp;if("number"!=typeof c||"number"!=typeof d||c!==d||a.role!==b.role)return!1;try{return JSON.stringify(a)===JSON.stringify(b)}catch{return!1}}(f.message,a)?(b.delete(e),a):(d=!0,f.message):a});return d?e:a}(t,by.current,Date.now()),v=bx.current.get(a);if(v){for(let[a,b]of v)q-b>12e4&&v.delete(a);0===v.size&&bx.current.delete(a)}let w=v?.size?v:null,x=w?new Set(r):null,y=!!w&&!!x&&[...w.keys()].some(a=>!x.has(a));w&&x&&!y&&bx.current.delete(a);let z=u.length;return!c&&(bE.current>z||y)?(ag(m.totalMessages??m.context.messages.length),ai(m.hasMore??!1)):(ac(a=>(function(a,b){if(a.length!==b.length)return b;let c=!1,d=b.map((b,d)=>W(a[d],b)?a[d]:(c=!0,b));return c?d:a})(a,u)),bA.current=r,ae(r),c?bE.current=z:bE.current=Math.max(bE.current,z),e={sessionId:a,leafId:m.leafId,messages:u,entryIds:r,totalMessages:m.totalMessages??m.context.messages.length,hasMore:!c&&(m.hasMore??!1),loadedMessagesCount:m.context.messages.length},J().entries.set(a,{...e,loadedAt:Date.now()})),aQ(a=>{if(!a)return null;let b=m.context.model;return b?.provider===a.provider&&b.modelId===a.modelId?null:a}),$(null),!m.agentState?.state?.thinkingLevel&&m.context.thinkingLevel&&"off"!==m.context.thinkingLevel&&aG(m.context.thinkingLevel),m.agentState??null}catch(a){if(a instanceof DOMException&&("AbortError"===a.name||"TimeoutError"===a.name)||a instanceof Error&&/aborted without reason|AbortError|Session load (?:timed out|superseded)/i.test(a.message))return null;return $(String(a)),null}finally{f&&bH.current?.controller===f&&(bH.current=null),b&&Y(!1)}},[bT]),bV=(0,d.useRef)(!1),bW=(0,d.useCallback)(async()=>{if(bV.current)return;bV.current=!0;let a=a3.current;if(!a){bV.current=!1;return}try{let b=await fetch(`/api/sessions/${encodeURIComponent(a)}?limit=50&offset=${aj}&deferThinking=1&deferMedia=1`);if(!b.ok)return;let c=await b.json(),d=c.context.messages,e=c.context.entryIds??[];ac(a=>[...d,...a]),ae(a=>{let b=[...e,...a];return bA.current=b,b}),ak(a=>a+d.length),ai(c.hasMore??!1),L(a,d,e,c.hasMore??!1,aj+d.length)}catch{}finally{bV.current=!1}},[aj]),bX=(0,d.useCallback)(async a=>{let b=a3.current;if(!b)return[];let c=bz.current,d=c?`?leafId=${encodeURIComponent(c)}`:"";try{let c=await fetch(`/api/sessions/${encodeURIComponent(b)}/shadowed${d}`);if(!c.ok)return[];let e=await c.json(),f=e.groups?.find(b=>b.compactionEntryId===a);return f?.messages??[]}catch{return[]}},[]),bY=(0,d.useCallback)(async(a,b)=>{try{let c=b?`/api/sessions/${encodeURIComponent(a)}/context?leafId=${encodeURIComponent(b)}&deferThinking=1&deferMedia=1`:`/api/sessions/${encodeURIComponent(a)}/context?deferThinking=1&deferMedia=1`,d=await fetch(c);if(!d.ok)throw Error(`HTTP ${d.status}`);let e=await d.json(),f=e.context.messages,g=e.context.entryIds??[],h=U(f),i=new Map,j=Date.now();for(let[b,c]of bv.current)if(c.sessionId===a){if(j-c.createdAt>12e4){bv.current.delete(b);continue}if(c.confirmKey){let a=h.get(c.confirmKey)??0,d=i.get(c.confirmKey)??0;a-d>c.confirmCountAtCreate&&(bv.current.delete(b),i.set(c.confirmKey,d+1))}}bw.current=h;let k=[...bv.current.values()].filter(b=>V(b,a,g)).map(a=>a.message);ac(k.length>0?[...f,...k]:f),bA.current=g,ae(g)}catch(a){console.error("Failed to load context:",a)}},[]),bZ=(0,d.useCallback)(async a=>{try{let b=await n(a,{type:"get_tools"});b&&(bK((0,N.ES)(b)),bL((0,N.IB)(b)))}catch(a){console.error("Failed to load tools:",a)}},[bL,bK]),b$=(0,d.useCallback)(async a=>{try{let b=await n(a,{type:"get_commands"});aE(Array.isArray(b?.commands)?b.commands:[])}catch{aE([])}},[]),b_=a4.connect,b0=(0,d.useCallback)(async(a,b="manual")=>{if(!a||a3.current!==a)return;let c=bC.current;try{let b=await fetch(`/api/agent/${encodeURIComponent(a)}`),e=await b.json().catch(()=>({}));if(a3.current!==a||bC.current!==c)return;if(e.running){var d;bg.current=!0,ao(!0),a$((d=e.state,d?.phase==="running_tools"?{kind:"running_tools",tools:(d.activeTools??[]).map(a=>({id:a.id,name:a.name}))}:d?.phase==="streaming"||d?.phase==="compacting"||d?.phase==="idle"?null:{kind:"waiting_model"})),a6()||(F(a),b_(a,{replay:!0}))}else bg.current=!1,a5(),E(a),ao(!1),a$(null),aI(null),am({type:"end"}),M(a),await bU(a,!1,!1,!0);e.state?.contextUsage!==void 0&&aK(e.state.contextUsage??null),e.state?.systemPrompt!==void 0&&aM(e.state.systemPrompt??null),e.state?.isCompacting!==void 0&&aU(e.state.isCompacting),e.state?.thinkingLevel!==void 0&&aG(e.state.thinkingLevel??"auto"),e.state?.queuedMessages!==void 0&&a0(O(e.state.queuedMessages)),bc(e.state),e.state?.isBashRunning&&bk("")}catch{}},[b_,bU,bc,bk,a5,a6]);bn.current=(0,d.useCallback)(a=>{let b=a3.current;switch(b&&function(a,b){let c=C(a),d=Date.now();switch(b.type){case"agent_start":if("active"===c.snapshot.phase)return x(c,!0),c.snapshot;return B(c),c.accumulatedText="",c.toolCalls.clear(),c.toolResults.clear(),c.activeToolId=null,c.snapshot={...u(a),phase:"active",startedAt:d,lastEventAt:d,isStreaming:!0,streamingMessage:{role:"assistant",content:[]}},z(c),x(c,!0),c.snapshot;case"message_update":{let a=b.message;if(a?.role==="assistant"){let b=a.content;for(let a of Array.isArray(b)?b:[])"object"==typeof a&&null!==a&&"type"in a&&("text"===a.type?c.accumulatedText=a.text??"":"toolCall"===a.type&&a.toolCallId&&!c.toolCalls.has(a.toolCallId)&&c.toolCalls.set(a.toolCallId,{...a,startedAt:d}))}else{let a=b.assistantMessageEvent;a?.type==="text_delta"?c.accumulatedText+=a.delta??"":a?.type==="text_end"?c.accumulatedText=a.content??c.accumulatedText:(a?.type==="toolcall_start"||a?.type==="toolcall_delta")&&a.id&&!c.toolCalls.has(a.id)&&c.toolCalls.set(a.id,{type:"toolCall",toolCallId:a.id,toolName:a.toolName??"tool",input:{},startedAt:d})}return x(c,!1),c.snapshot}case"tool_execution_start":{let a="string"==typeof b.toolCallId?b.toolCallId:"",e="string"==typeof b.toolName?b.toolName:"tool",f=b.input??{};if(!a)return c.snapshot;let g=c.toolCalls.get(a);return c.toolCalls.set(a,{type:"toolCall",toolCallId:a,toolName:e,input:g&&Object.keys(g.input).length>0?g.input:f,startedAt:g?.startedAt??d}),c.activeToolId=a,B(c),c.activeToolId&&(c.toolProgressTimer=setInterval(()=>x(c,!0),1e3)),x(c,!0),c.snapshot}case"tool_execution_end":{let a="string"==typeof b.toolCallId?b.toolCallId:"",e="string"==typeof b.toolName?b.toolName:"tool",f="string"==typeof b.result?b.result:JSON.stringify(b.result??"");if(a){let g=c.toolCalls.get(a);g&&c.toolCalls.set(a,{...g,endedAt:d}),c.toolResults.set(a,{role:"toolResult",toolCallId:a,toolName:e,content:[{type:"text",text:f}],isError:!!b.isError,timestamp:d}),c.activeToolId===a&&(c.activeToolId=null,B(c))}return x(c,!0),c.snapshot}case"message_end":return w(c),x(c,!0),c.snapshot;case"agent_end":{if(w(c),B(c),c.activeToolId=null,!0===b.willRetry)return c.accumulatedText="",c.toolCalls.clear(),c.toolResults.clear(),c.snapshot={...c.snapshot,phase:"active",lastEventAt:d,accumulatedText:"",toolCalls:[],toolResults:[],statusText:null,streamingMessage:null,isStreaming:!0,error:null},z(c),v(a,{type:"snapshot-updated",snapshot:c.snapshot}),c.snapshot;A(c);let e="string"==typeof b.error?b.error:null;return c.snapshot={...c.snapshot,phase:e?"error":"completed",isStreaming:!1,streamingMessage:null,statusText:null,error:e},v(a,e?{type:"error",snapshot:c.snapshot}:{type:"completed",snapshot:c.snapshot}),c.snapshot}case"heartbeat":return c.snapshot={...c.snapshot,lastHeartbeatAt:d},c.snapshot;default:return c.snapshot}}(b,a),"heartbeat"!==a.type&&(bI.current=Date.now()),a.type){case"prompt_admitted":case"agent_start":a2(null),bg.current=!0,ao(!0),a$({kind:"waiting_model"}),am({type:"start"});break;case"agent_end":if(!0===a.willRetry){bg.current=!0,ao(!0),a$({kind:"waiting_model"});break}if(bg.current=!1,ao(!1),a$(null),aI(null),am({type:"end"}),b){bG.current&&clearTimeout(bG.current);let a=bC.current,c=0,d=async()=>{if(a3.current!==b||bg.current||bC.current!==a)return;M(b),await bU(b,!1,!1,!0);let e=P[c++];void 0===e||a3.current!==b||bg.current||bC.current!==a||(bG.current=setTimeout(()=>{bG.current=null,d()},e))};d(),fetch(`/api/agent/${encodeURIComponent(b)}`).then(a=>a.json()).then(a=>{a.state?.contextUsage!==void 0&&aK(a.state.contextUsage??null),a.state?.systemPrompt!==void 0&&aM(a.state.systemPrompt??null),a.state?.isCompacting!==void 0&&aU(a.state.isCompacting)}).catch(()=>{})}g?.();break;case"agent_settled":a$(null),aI(null),bg.current&&(bg.current=!1,ao(!1),am({type:"end"}));break;case"message_start":case"message_update":{let b=a.message;if(b?.role==="user")break;bg.current||(bg.current=!0,ao(!0),a$({kind:"waiting_model"}));let c=a.assistantMessageEvent;b?.role==="assistant"?am({type:"snapshot",message:e(b)}):c&&am({type:"delta",event:c}),a$(null);break}case"message_end":{let c=a.message,d="string"==typeof a.__entryId?a.__entryId:null,f=bg.current;if(c&&"user"!==c.role){"assistant"===c.role&&"error"===c.stopReason&&c.errorMessage?.trim()&&a2(`Model response failed: ${c.errorMessage.trim()}`);let a=e(c),f=l(a);if(f&&by.current.set(f,{observedAt:Date.now(),message:a}),!(d&&bA.current.includes(d))){if(b&&d){let a=bx.current.get(b)??new Map;a.set(d,Date.now()),bx.current.set(b,a)}ac(b=>b.some(b=>W(b,a))?b:[...b,a]),d&&ae(a=>{if(a.includes(d))return a;let b=[...a,d];return bA.current=b,b})}}f&&(am({type:"reset"}),a$({kind:"waiting_model"}));break}case"replay_gap":b&&(M(b),bU(b,!1,!1,!0));break;case"prompt_done":if(!bg.current)break;b0(a3.current??"","prompt_done");break;case"prompt_error":{let c="string"==typeof a.error&&a.error.trim()?a.error.trim():"The model request failed before producing a response.";if(bg.current=!1,ao(!1),a$(null),aI(null),am({type:"end"}),a5(),b){for(let[a,c]of(E(b),bv.current))c.sessionId===b&&"prompt"===c.kind&&bv.current.delete(a);M(b),bU(b,!1,!1,!0)}a2(`Model request failed: ${c}`),g?.();break}case"tool_execution_start":{let b=a.toolCallId,c=a.toolName,d=a.args,e="bash"===c&&"string"==typeof d?.command?d.command:void 0;a$(a=>{let d=a?.kind==="running_tools"?[...a.tools]:[];return d.some(a=>a.id===b)||d.push({id:b,name:c,args:e}),{kind:"running_tools",tools:d}});break}case"tool_execution_update":{let b=a.toolCallId,c=a.toolName,d=function(a){if(!k(a))return null;let b=a.content;if(!Array.isArray(b))return null;let c=b.filter(a=>k(a)&&"text"===a.type&&"string"==typeof a.text).map(a=>a.text).join("\n").split(/\r?\n/),d="";for(let a=c.length-1;a>=0&&!(d=c[a].trim());a-=1);if(!d)return null;let e=d.replace(/\s+/g," ");return e.length<=500?e:`...${e.slice(-497)}`}(a.partialResult);if(!b)break;a$(a=>{let e=a?.kind==="running_tools"?[...a.tools]:[],f=e.find(a=>a.id===b),g={id:b,name:c||f?.name||"tool",args:f?.args,progress:d??f?.progress};return{kind:"running_tools",tools:[...e.filter(a=>a.id!==b),g]}});break}case"tool_execution_end":{let b=a.toolCallId;a$(a=>{if(a?.kind!=="running_tools")return a;let c=a.tools.filter(a=>a.id!==b);return 0===c.length?{kind:"waiting_model"}:{kind:"running_tools",tools:c}});break}case"extension_ui_request":case"extension_error":bd(a);break;case"bash_execution_start":case"bash_execution_update":bm(a);break;case"bash_done":{bm(a);let b=a3.current;b&&(M(b),bU(b,!1,!1,!0));break}case"queue_update":a0(O({steering:Array.isArray(a.steering)?a.steering:[],followUp:Array.isArray(a.followUp)?a.followUp:[]}));break;case"auto_retry_start":a2(null),bg.current=!0,ao(!0),a$({kind:"waiting_model"}),aI({attempt:a.attempt,maxAttempts:a.maxAttempts,errorMessage:a.errorMessage});break;case"auto_retry_end":aI(null),!1===a.success&&"string"==typeof a.finalError&&a.finalError.trim()?a2(`Model response failed after retries: ${a.finalError.trim()}`):!0===a.success&&a2(null);break;case"auto_compaction_start":case"compaction_start":aU(!0),aW(null);break;case"auto_compaction_end":case"compaction_end":aU(!1),a.errorMessage?aW(a.errorMessage):!a.aborted&&a3.current&&bU(a3.current)}},[bU,g,b0,bd,bm,a5]);let b1=(0,d.useCallback)(async(a,d,e,f)=>{if(!a.trim()&&!d?.length&&!e?.length||an)return;bC.current+=1;let g=bP(e),i=a.trim()?g?`${a}
|
|
5
|
-
|
|
6
|
-
Attached document text:
|
|
7
|
-
|
|
8
|
-
${g}`:a:g?`Attached document text:
|
|
9
|
-
|
|
10
|
-
${g}`:"",j=[],k=t?c:b?.cwd??y?.info?.cwd;if(d?.length&&k)try{j=await H(k,d)}catch(a){a2(a instanceof Error?a.message:String(a));return}let l=j.length?j.map(a=>{var b;return{type:"image",path:a.path,mimeType:a.mimeType,name:a.name,source:{type:"url",url:(b=a.path,`/api/files/${(0,G.HG)(b)}?type=read`),media_type:a.mimeType}}}):d?.map(a=>({type:"image",source:{type:"base64",media_type:a.mimeType,data:a.data}})),o={role:"user",content:l?.length?[...i.trim()?[{type:"text",text:i}]:[],...l]:i,timestamp:Date.now()},p=R(),q=t?null:b?.id??null;q&&M(q);let s=bz.current,u=T(o.content);bv.current.set(p,{localId:p,sessionId:q??"__new__",leafId:s,message:o,createdAt:Date.now(),kind:"prompt",confirmKey:u,confirmCountAtCreate:t?0:u?bw.current.get(u)??0:0}),ac(a=>[...a,o]),a2(null),bg.current=!0,ao(!0),a$({kind:"waiting_model"}),am({type:"start"}),bs.current=!0;let v=ar.find(a=>a.provider===bM?.provider&&a.id===bM?.modelId)?.input,w=!v||0===v.length||v.includes("image")?d?.map(a=>({type:"image",data:a.data,mimeType:a.mimeType})):void 0;try{if(t&&c){ax&&aS(ax);let b=f??bO(),d=await fetch("/api/agent/new",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({cwd:c,type:"prompt",message:i,toolNames:b,deferPrompt:!0,...w?.length?{images:w}:{},...ax?{provider:ax.provider,modelId:ax.modelId}:{},..."auto"!==aF?{thinkingLevel:aF}:{}})}),e=await d.json().catch(()=>({}));if(!d.ok||e.error||!e.sessionId)throw Error(e.error??`HTTP ${d.status}`);let g=e.sessionId;a3.current=g;let j=bv.current.get(p);j&&(j.sessionId=g),bp.current?.(),bp.current=D(g,()=>{a3.current===g&&(ao(!1),a$(null))}),bB.current=g,await b_(g,{requireConnected:!0,timeoutMs:1e4}),await n(g,{type:"prompt",message:i,toolNames:b,...w?.length?{images:w}:{}}),h?.({id:g,path:"",cwd:c,name:void 0,created:new Date().toISOString(),modified:new Date().toISOString(),messageCount:1,firstMessage:a})}else if(b){let a=f??bO();await bQ(b.id),bp.current?.(),bp.current=D(b.id,()=>{a3.current===b.id&&(ao(!1),a$(null))}),await b_(b.id,{requireConnected:!0,timeoutMs:1e4}),await n(b.id,{type:"prompt",message:i,toolNames:a,leafId:s,...bM?{provider:bM.provider,modelId:bM.modelId}:{},..."auto"!==aF?{thinkingLevel:aF}:{},...w?.length?{images:w}:{}})}}catch(c){let b=a3.current;if(bv.current.delete(p),ac(a=>a.filter(a=>a!==o)),c instanceof m&&(409===c.status||"SESSION_BUSY"===c.code)){a2("This session is already running in another tab. Showing that active run instead."),bg.current=!0,ao(!0),a$({kind:"waiting_model"}),am({type:"start"}),b&&(a5(),F(b),b_(b,{replay:!0}),bo.current?.(b,"prompt_conflict"));return}if(console.error("Failed to send message:",c),t&&a3.current){let a=a3.current;a3.current=null,bB.current=null,fetch(`/api/sessions/${encodeURIComponent(a)}`,{method:"DELETE"}).catch(()=>{})}r?.current&&a.trim()&&r.current.insertIfEmpty(a),r?.current&&d?.length&&r.current.addBase64Images?.(d.map(({data:a,mimeType:b})=>({data:a,mimeType:b}))),a2(c instanceof Error?c.message:String(c)),a5(),b&&E(b),bg.current=!1,ao(!1),a$(null),am({type:"end"})}},[t,c,ax,bO,aF,b,y?.info?.cwd,an,b_,h,bP,ar,bM,bQ,r,a5]),b2=(0,d.useCallback)(async()=>{let a=a3.current;if(!a)return;let b=bj();bg.current=!1,bl(),a2(null),ao(!1),a$(null),am({type:"end"}),a5(),E(a),M(a);try{await n(a,{type:b?"abort_bash":"abort"}),await bU(a,!1,!1,!0)}catch(b){console.error("Failed to abort:",b),await bU(a,!1,!1,!0)}finally{b&&bl()}},[bl,bj,bU,a5]),b3=(0,d.useCallback)(async(a,b)=>{let c=a3.current,d=a.trim();if(c&&d){a2(null),bk(d);try{await n(c,{type:"bash",command:d,excludeFromContext:b})}catch(a){a2(a instanceof Error?a.message:String(a))}finally{bl(),M(c),await bU(c,!1,!1,!0)}}},[bk,bl,bU]),b4=(0,d.useCallback)(async a=>{let b=a3.current;if(b){aO(a);try{let{cancelled:c,newSessionId:d}=await n(b,{type:"fork",entryId:a})??{};!c&&d&&i?.(d)}catch(a){console.error("Fork failed:",a)}finally{aO(null)}}},[i]),b5=(0,d.useCallback)(async a=>{let d=a3.current,e=y?.info?.cwd??b?.cwd??c??null;if(!d||!e)return{ok:!1,error:"No active session to fork"};if(bg.current)return{ok:!1,error:"Agent is still running"};try{let b=bO(),c=await fetch("/api/agent/new",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({cwd:e,type:"prompt",parentSessionId:d,deferPrompt:!0,toolNames:b,...bM?{provider:bM.provider,modelId:bM.modelId}:{},..."auto"!==aF?{thinkingLevel:aF}:{}})}),f=await c.json().catch(()=>({}));if(!c.ok||f.error||!f.sessionId)return{ok:!1,error:f.error??`HTTP ${c.status}`};let g=f.sessionId;try{await n(g,{type:"append_message",message:a,customType:"fork_handoff",display:!0})}catch{}return h?.({id:g,path:"",cwd:e,created:new Date().toISOString(),modified:new Date().toISOString(),messageCount:1,firstMessage:a.slice(0,120),parentSessionId:d}),{ok:!0}}catch(a){return{ok:!1,error:a instanceof Error?a.message:String(a)}}},[y?.info?.cwd,b?.cwd,c,bM,aF,bO,h]),b6=(0,d.useCallback)(async a=>{let b=a3.current;b&&(bx.current.delete(b),M(b),bz.current=a,aa(a),await bY(b,a))},[bY]);(0,d.useCallback)(async a=>{bz.current=a,aa(a);let b=a3.current;b&&(bx.current.delete(b),M(b),await bY(b,a))},[bY]);let b7=(0,d.useCallback)(async(a,b)=>{if(t)return void bJ({provider:a,modelId:b});let c=a3.current;if(c)try{var d;a2(null);let e=await n(c,{type:"set_model",provider:a,modelId:b}),f={provider:e.provider,modelId:e.id};e.thinkingLevel&&(d=e.thinkingLevel,"auto"===d||"off"===d||"minimal"===d||"low"===d||"medium"===d||"high"===d||"xhigh"===d)&&aG(e.thinkingLevel),aQ(f),I(a=>a?{...a,context:{...a.context,model:f}}:a)}catch(b){let a=b instanceof Error?b.message:String(b);console.error("Failed to set model:",b),a2(a)}},[t,bJ]),b8=(0,d.useCallback)(async()=>{let a=a3.current;if(a&&!aT){aU(!0),aW(null),aY(null);try{let b=await n(a,{type:"compact"});b?.reducedBy!=null&&aY(`Compacted ~${b.tokensBefore??"?"} → ~${b.tokensAfter??"?"} tokens (−${b.reducedBy})`),await bU(a,!0)}catch(a){aW(a instanceof Error?a.message:String(a))}finally{aU(!1)}}},[aT,bU]),b9=(0,d.useCallback)(async(a,b,c)=>{let d=a3.current;if(!d)return;M(d);let e=bP(c),f=a.trim()?e?`${a}
|
|
11
|
-
|
|
12
|
-
Attached document text:
|
|
13
|
-
|
|
14
|
-
${e}`:a:e?`Attached document text:
|
|
15
|
-
|
|
16
|
-
${e}`:"",g=ar.find(a=>a.provider===bM?.provider&&a.id===bM?.modelId)?.input,h=!g||0===g.length||g.includes("image")?b?.map(a=>({type:"image",data:a.data,mimeType:a.mimeType})):void 0,i={role:"user",content:`[steer] ${f}`,timestamp:Date.now()},j=R(),k=S(f,h?.length??0);bv.current.set(j,{localId:j,sessionId:d,leafId:bz.current,message:i,createdAt:Date.now(),kind:"steer",confirmKey:k,confirmCountAtCreate:k?bw.current.get(k)??0:0}),ac(a=>[...a,i]);try{await n(d,{type:"steer",message:f,...h?.length?{images:h}:{}})}catch(a){bv.current.delete(j),console.error("Failed to steer:",a)}},[bP,ar,bM]),ca=(0,d.useCallback)(async(a,b,c)=>{let d=a3.current;if(!d)return;M(d);let e=bP(c),f=a.trim()?e?`${a}
|
|
17
|
-
|
|
18
|
-
Attached document text:
|
|
19
|
-
|
|
20
|
-
${e}`:a:e?`Attached document text:
|
|
21
|
-
|
|
22
|
-
${e}`:"",g=ar.find(a=>a.provider===bM?.provider&&a.id===bM?.modelId)?.input,h=!g||0===g.length||g.includes("image")?b?.map(a=>({type:"image",data:a.data,mimeType:a.mimeType})):void 0,i={role:"user",content:f,timestamp:Date.now()},j=R(),k=S(f,h?.length??0);bv.current.set(j,{localId:j,sessionId:d,leafId:bz.current,message:i,createdAt:Date.now(),kind:"follow_up",confirmKey:k,confirmCountAtCreate:k?bw.current.get(k)??0:0}),ac(a=>[...a,i]);try{await n(d,{type:"follow_up",message:f,...h?.length?{images:h}:{}})}catch(a){bv.current.delete(j),console.error("Failed to follow up:",a)}},[bP,ar,bM]),cb=(0,d.useCallback)(async()=>{let a=a3.current;if(a)try{await n(a,{type:"abort_compaction"})}catch(a){console.error("Failed to abort compaction:",a)}},[]),cc=(0,d.useCallback)(async a=>{if(aG(a),"auto"===a)return;let b=a3.current;if(b)try{await n(b,{type:"set_thinking_level",level:a})}catch(a){console.error("Failed to set thinking level:",a)}},[]),cd=(0,d.useCallback)(async a=>{bK(a);let b=(0,N.tE)(a,aB),c=a3.current;if(c)try{await n(c,{type:"set_tools",toolNames:b})}catch(a){console.error("Failed to set tools:",a)}},[aB,bK]),ce=(0,d.useCallback)(async a=>{bL(a);let b=(0,N.tE)(az,a),c=a3.current;if(c)try{await n(c,{type:"set_tools",toolNames:b})}catch(a){console.error("Failed to set memory tools:",a)}},[bL,az]);(0,d.useCallback)((a="smooth")=>{bt.current?.scrollIntoView({behavior:a})},[]),(0,d.useCallback)(()=>{let a=bu.current,b=br.current;if(!a||!b)return;let c=b.getBoundingClientRect().top-a.getBoundingClientRect().top+a.scrollTop;a.scrollTo({top:c-16,behavior:"smooth"})},[]);let cf=(0,d.useCallback)(async()=>{let a=a3.current;if(a)try{await n(a,{type:"clear_queue"}),a0({steering:[],followUp:[]})}catch(a){a2(a instanceof Error?a.message:String(a))}},[]);return{data:y,loading:X,error:Z,activeLeafId:_,messages:ab,entryIds:ad,streamState:al,agentRunning:an,modelNames:ap,modelList:ar,modelThinkingLevels:at,modelThinkingLevelMaps:av,newSessionModel:ax,toolPreset:az,memoryTools:aB,thinkingLevel:aF,retryInfo:aH,queuedMessages:a_,extensionStatuses:a8,extensionWidgets:a9,extensionDialog:ba,extensionNotices:bb,bashLive:bh,bashRunning:bi,contextUsage:aJ,systemPrompt:aL,forkingEntryId:aN,isCompacting:aT,compactError:aV,compactInfo:aX,currentModel:bM,displayModel:bN,sessionStats:bR,agentPhase:aZ,agentError:a1,isNew:t,sessionIdRef:a3,sseReaderRef:a7,messagesEndRef:bt,scrollContainerRef:bu,lastUserMsgRef:br,pendingScrollToUserRef:bs,initialScrollDoneRef:bq,handleSend:b1,handleAbort:b2,handleFork:b4,handleNavigate:b6,handleModelChange:b7,handleCompact:b8,handleSteer:b9,handleFollowUp:ca,handleAbortCompaction:cb,handleToolPresetChange:cd,handleMemoryToolsChange:ce,handleThinkingLevelChange:cc,handleClearQueue:cf,handleBash:b3,respondToExtensionUi:be,dismissExtensionNotice:bf,loadTools:bZ,loadSlashCommands:b$,slashCommands:aD,setActiveLeafId:aa,setData:I,setMessages:ac,dispatch:am,setAgentRunning:ao,setForkingEntryId:aO,forkToNewSession:b5,loadMoreMessages:bW,hasMoreMessages:ah,totalMessages:af,loadedMessagesCount:aj,loadShadowedMessages:bX,handleAgentEventRef:bn}}},29947:(a,b,c)=>{c.d(b,{ES:()=>l,IB:()=>m,SN:()=>e,tE:()=>n});let d="subagent",e=["retain","recall","reflect"],f=[],g=["read","bash","edit","write"],h=["bash","read","edit","write","grep","find","ls"],i=[...h,"kernel_plot_run","kernel_plot_render","kernel_plot_inspect","kernel_plot_stop","kernel_plot_artifacts"],j=[...h,d];function k(a){return[...a].sort().join(",")}function l(a){let b=a.filter(a=>a.active).map(a=>a.name),c=b.filter(a=>!e.includes(a)),f=k(b),l=k(c);return""===f?"none":f===k(g)?"default":f===k(h)?"full":f===k(i)?"workbench":f===k(j)?"agent":""===l?"none":l===k(g)?"default":l===k(h)?"full":l===k(i)?"workbench":l===k(j)||b.includes(d)?"agent":"default"}function m(a){return e.filter(b=>a.some(a=>a.active&&a.name===b))}function n(a,b){return[...new Set([...function(a){switch(a){case"none":return f;case"default":return g;case"workbench":return i;case"agent":return j;default:return h}}(a),...b])]}},81537:(a,b,c)=>{c.d(b,{O:()=>k});let d=new Set,e=null,f=null,g=null,h=null,i=null,j=!1;function k(a){return d.add(a),e&&a(e),()=>{if(d.delete(a),0===d.size&&j){if(j=!1,h&&clearTimeout(h),h=null,g&&(clearInterval(g),g=null),i?.(),i=null,f){try{f.port.postMessage({type:"disconnect"})}catch{}try{f.port.close()}catch{}}f=null,e=null}}}}};
|
|
@@ -1 +0,0 @@
|
|
|
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();
|