wiki-viewer 3.0.4 → 3.0.5

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (86) hide show
  1. package/.next/standalone/.next/BUILD_ID +1 -1
  2. package/.next/standalone/.next/build-manifest.json +3 -3
  3. package/.next/standalone/.next/prerender-manifest.json +3 -3
  4. package/.next/standalone/.next/required-server-files.json +1 -1
  5. package/.next/standalone/.next/server/app/_global-error.html +1 -1
  6. package/.next/standalone/.next/server/app/_global-error.rsc +1 -1
  7. package/.next/standalone/.next/server/app/_global-error.segments/__PAGE__.segment.rsc +1 -1
  8. package/.next/standalone/.next/server/app/_global-error.segments/_full.segment.rsc +1 -1
  9. package/.next/standalone/.next/server/app/_global-error.segments/_head.segment.rsc +1 -1
  10. package/.next/standalone/.next/server/app/_global-error.segments/_index.segment.rsc +1 -1
  11. package/.next/standalone/.next/server/app/_global-error.segments/_tree.segment.rsc +1 -1
  12. package/.next/standalone/.next/server/app/api/agent/activity/route.js.nft.json +1 -1
  13. package/.next/standalone/.next/server/app/api/agent/events/[...path]/route.js.nft.json +1 -1
  14. package/.next/standalone/.next/server/app/api/agent/files/[...path]/route.js.nft.json +1 -1
  15. package/.next/standalone/.next/server/app/api/agent/fs/file/[...path]/route.js.nft.json +1 -1
  16. package/.next/standalone/.next/server/app/api/agent/fs/ls/[[...path]]/route.js.nft.json +1 -1
  17. package/.next/standalone/.next/server/app/api/agent/fs/move/route.js.nft.json +1 -1
  18. package/.next/standalone/.next/server/app/api/agent/fs/search/route.js.nft.json +1 -1
  19. package/.next/standalone/.next/server/app/api/agent/settings/route.js.nft.json +1 -1
  20. package/.next/standalone/.next/server/app/api/agent/sidecar/[...path]/route.js.nft.json +1 -1
  21. package/.next/standalone/.next/server/app/api/app-proxy/[...path]/route.js.nft.json +1 -1
  22. package/.next/standalone/.next/server/app/api/assets/[...path]/route.js.nft.json +1 -1
  23. package/.next/standalone/.next/server/app/api/pdf/save/route.js.nft.json +1 -1
  24. package/.next/standalone/.next/server/app/api/share/[token]/asset/route.js.nft.json +1 -1
  25. package/.next/standalone/.next/server/app/api/share/[token]/route.js.nft.json +1 -1
  26. package/.next/standalone/.next/server/app/api/share/route.js.nft.json +1 -1
  27. package/.next/standalone/.next/server/app/api/system/browse/route.js.nft.json +1 -1
  28. package/.next/standalone/.next/server/app/api/system/reveal/route.js.nft.json +1 -1
  29. package/.next/standalone/.next/server/app/api/system/workspaces/[id]/branch/route.js.nft.json +1 -1
  30. package/.next/standalone/.next/server/app/api/system/workspaces/[id]/open/route.js.nft.json +1 -1
  31. package/.next/standalone/.next/server/app/api/system/workspaces/[id]/refresh/route.js.nft.json +1 -1
  32. package/.next/standalone/.next/server/app/api/system/workspaces/[id]/route.js.nft.json +1 -1
  33. package/.next/standalone/.next/server/app/api/system/workspaces/route.js.nft.json +1 -1
  34. package/.next/standalone/.next/server/app/api/upload/[...path]/route.js.nft.json +1 -1
  35. package/.next/standalone/.next/server/app/api/wiki/app/route.js.nft.json +1 -1
  36. package/.next/standalone/.next/server/app/api/wiki/backlinks/route.js.nft.json +1 -1
  37. package/.next/standalone/.next/server/app/api/wiki/content/route.js.nft.json +1 -1
  38. package/.next/standalone/.next/server/app/api/wiki/download/route.js.nft.json +1 -1
  39. package/.next/standalone/.next/server/app/api/wiki/folder/route.js.nft.json +1 -1
  40. package/.next/standalone/.next/server/app/api/wiki/git-branches/route.js.nft.json +1 -1
  41. package/.next/standalone/.next/server/app/api/wiki/git-checkout/route.js.nft.json +1 -1
  42. package/.next/standalone/.next/server/app/api/wiki/git-diff/route.js.nft.json +1 -1
  43. package/.next/standalone/.next/server/app/api/wiki/git-file-info/route.js.nft.json +1 -1
  44. package/.next/standalone/.next/server/app/api/wiki/git-history/route.js.nft.json +1 -1
  45. package/.next/standalone/.next/server/app/api/wiki/git-pull/route.js.nft.json +1 -1
  46. package/.next/standalone/.next/server/app/api/wiki/hosted-apps/[slug]/route.js.nft.json +1 -1
  47. package/.next/standalone/.next/server/app/api/wiki/hosted-apps/route.js.nft.json +1 -1
  48. package/.next/standalone/.next/server/app/api/wiki/move/route.js.nft.json +1 -1
  49. package/.next/standalone/.next/server/app/api/wiki/new-file/route.js.nft.json +1 -1
  50. package/.next/standalone/.next/server/app/api/wiki/outlinks/route.js.nft.json +1 -1
  51. package/.next/standalone/.next/server/app/api/wiki/page/route.js.nft.json +1 -1
  52. package/.next/standalone/.next/server/app/api/wiki/presence/route.js.nft.json +1 -1
  53. package/.next/standalone/.next/server/app/api/wiki/preview-token/route.js.nft.json +1 -1
  54. package/.next/standalone/.next/server/app/api/wiki/route.js.nft.json +1 -1
  55. package/.next/standalone/.next/server/app/api/wiki/scratch/route.js.nft.json +1 -1
  56. package/.next/standalone/.next/server/app/api/wiki/search/route.js.nft.json +1 -1
  57. package/.next/standalone/.next/server/app/api/wiki/slugs/route.js.nft.json +1 -1
  58. package/.next/standalone/.next/server/app/api/wiki/upload/route.js.nft.json +1 -1
  59. package/.next/standalone/.next/server/app/api/wiki/watch/route.js.nft.json +1 -1
  60. package/.next/standalone/.next/server/app/app/[slug]/[[...rest]]/route.js.nft.json +1 -1
  61. package/.next/standalone/.next/server/app/page_client-reference-manifest.js +1 -1
  62. package/.next/standalone/.next/server/chunks/[root-of-the-server]__01aj28~._.js +1 -1
  63. package/.next/standalone/.next/server/chunks/[root-of-the-server]__034zu-9._.js +1 -1
  64. package/.next/standalone/.next/server/chunks/[root-of-the-server]__0_2j7pq._.js +1 -1
  65. package/.next/standalone/.next/server/chunks/[root-of-the-server]__0b1c__~._.js +1 -1
  66. package/.next/standalone/.next/server/chunks/[root-of-the-server]__0ivbizg._.js +1 -1
  67. package/.next/standalone/.next/server/chunks/[root-of-the-server]__0j3mjvx._.js +1 -1
  68. package/.next/standalone/.next/server/chunks/[root-of-the-server]__0k2nouu._.js +1 -1
  69. package/.next/standalone/.next/server/chunks/[root-of-the-server]__0puvgme._.js +1 -1
  70. package/.next/standalone/.next/server/chunks/[root-of-the-server]__0u7wq9p._.js +1 -1
  71. package/.next/standalone/.next/server/chunks/[root-of-the-server]__0ul.gyt._.js +1 -1
  72. package/.next/standalone/.next/server/chunks/[root-of-the-server]__0wcg8qs._.js +1 -1
  73. package/.next/standalone/.next/server/chunks/[root-of-the-server]__0yzumg-._.js +1 -1
  74. package/.next/standalone/.next/server/chunks/[root-of-the-server]__10i6erq._.js +1 -1
  75. package/.next/standalone/.next/server/chunks/ssr/_0k6g8yo._.js +2 -2
  76. package/.next/standalone/.next/server/middleware-build-manifest.js +3 -3
  77. package/.next/standalone/.next/server/pages/500.html +1 -1
  78. package/.next/standalone/.next/server/server-reference-manifest.js +1 -1
  79. package/.next/standalone/.next/server/server-reference-manifest.json +1 -1
  80. package/.next/standalone/.next/static/chunks/{0xhfr19ysckbq.js → 05cs75jhm80il.js} +2 -2
  81. package/.next/standalone/package.json +1 -1
  82. package/.next/standalone/server.js +1 -1
  83. package/package.json +1 -1
  84. /package/.next/standalone/.next/static/{BD2zQ3enmSM757-mX63JF → RC2yGgJpI7BPjsVect9PK}/_buildManifest.js +0 -0
  85. /package/.next/standalone/.next/static/{BD2zQ3enmSM757-mX63JF → RC2yGgJpI7BPjsVect9PK}/_clientMiddlewareManifest.js +0 -0
  86. /package/.next/standalone/.next/static/{BD2zQ3enmSM757-mX63JF → RC2yGgJpI7BPjsVect9PK}/_ssgManifest.js +0 -0
@@ -1,3 +1,3 @@
1
- module.exports=[814747,(e,t,a)=>{t.exports=e.x("path",()=>require("path"))},224361,(e,t,a)=>{t.exports=e.x("util",()=>require("util"))},688947,(e,t,a)=>{t.exports=e.x("stream",()=>require("stream"))},427699,(e,t,a)=>{t.exports=e.x("events",()=>require("events"))},228064,e=>{"use strict";var t=e.i(666680),a=e.i(912714),n=e.i(660526),r=e.i(750227),s=e.i(832852);let i="__registry__",o=new Map;function l(){let e=process.env.HOME??n.default.homedir();return r.default.join(e,".wiki-viewer")}function u(){return r.default.join(l(),"agents.json")}function d(e){return(0,t.createHash)("sha256").update(e,"utf8").digest("hex")}async function c(){try{let e=await (0,a.readFile)(u(),"utf8"),t=JSON.parse(e);return{version:1,agents:Array.isArray(t.agents)?t.agents:[]}}catch{return null}}async function p(e){await (0,a.mkdir)(l(),{recursive:!0});let t=u()+".tmp";await (0,a.writeFile)(t,JSON.stringify(e,null,2),{encoding:"utf8",mode:384});try{await (0,a.chmod)(t,384)}catch{}await (0,a.rename)(t,u())}async function h(){let e=await c();if(e)return e;let t={version:1,agents:[]};return await p(t),t}async function g(e){let a=await c();if(!a)return null;let n=d(e);for(let e of a.agents)if(function(e,a){let n=Buffer.from(e.padEnd(64,"0"),"utf8"),r=Buffer.from(a.padEnd(64,"0"),"utf8");return n.length===r.length&&(0,t.timingSafeEqual)(n,r)&&e.length===a.length}(e.tokenHash,n))return e;return null}async function f(e){let t=await c();return t?t.agents.find(t=>t.id===e)??null:null}async function m(e){await (0,s.withFileMutex)(i,async()=>{let t=await h(),a=t.agents.findIndex(t=>t.id===e.id);a>=0?t.agents[a]=e:t.agents.push(e),await p(t)})}async function v(e){return(0,s.withFileMutex)(i,async()=>{let t=await c();if(!t)return!1;let a=t.agents.length;return t.agents=t.agents.filter(t=>t.id!==e),t.agents.length!==a&&(await p(t),!0)})}async function w(e){Date.now()-(o.get(e)??0)<3e4||await (0,s.withFileMutex)(i,async()=>{let t=await c();if(!t)return;let a=t.agents.find(t=>t.id===e);a&&(a.lastSeen=new Date().toISOString(),o.set(e,Date.now()),await p(t))})}e.s(["addAgent",0,m,"hashToken",0,d,"lookupAgentById",0,f,"lookupAgentByToken",0,g,"readRegistry",0,c,"removeAgent",0,v,"updateLastSeen",0,w])},215043,552350,e=>{"use strict";var t=e.i(228064);function a(e,t){return(function(e){let t="^",a=0;for(;a<e.length;)"*"===e[a]&&"*"===e[a+1]?(t+=".*","/"===e[a+=2]&&(t+="(?:.+/)?",a++)):("*"===e[a]?t+="[^/]*":"?"===e[a]?t+="[^/]":t+=e[a].replace(/[.+^${}()|[\]\\]/g,"\\$&"),a++);return new RegExp(t+="$")})(e).test(t)}e.s(["matchGlob",0,a],552350);var n=e.i(254226);async function r(e){let a=await (0,n.getSessionFromRequest)(e);if(a?.user){let e=a.user;return{ok:!0,agent:{id:`user:${e.id}`,displayName:e.name,tokenHash:"",scope:{paths:["**/*"],ops:["read","mutate","delete"]},createdAt:"",lastSeen:""}}}let r=e.headers.get("authorization")??"",s=r.startsWith("Bearer ")?r.slice(7).trim():"";if(!s)return{ok:!1,code:"UNAUTHORIZED",message:"No credentials"};let i=await (0,t.lookupAgentByToken)(s);if(!i)return{ok:!1,code:"UNAUTHORIZED",message:"Unknown or invalid token"};let o=e.headers.get("x-agent-id")??"";return o?o!==i.id?{ok:!1,code:"UNAUTHORIZED",message:"X-Agent-Id does not match token owner"}:((0,t.updateLastSeen)(i.id),{ok:!0,agent:i}):{ok:!1,code:"UNAUTHORIZED",message:"X-Agent-Id header required"}}process.env.AGENT_BEARER_TOKEN&&console.warn("[wiki-viewer] AGENT_BEARER_TOKEN is no longer used; manage agents via the AI Panel."),e.s(["checkAuth",0,r,"enforceScope",0,function(e,t){let{scope:n}=e;return void 0!==n.workspaceId&&void 0!==t.workspaceId&&n.workspaceId!==t.workspaceId?{ok:!1,code:"FORBIDDEN",message:`Agent scope does not cover workspace "${t.workspaceId}" (granted: "${n.workspaceId}")`}:n.ops.includes(t.op)?t.filePath&&!n.paths.some(e=>a(e,t.filePath))?{ok:!1,code:"FORBIDDEN",message:`Agent scope does not cover path "${t.filePath}"`}:{ok:!0}:{ok:!1,code:"FORBIDDEN",message:`Agent scope does not allow "${t.op}"`}},"verifyBy",0,function(e,t){return e.id.startsWith("user:")?!t||"owner"===t||"human"===t||t.startsWith("human:")||t===e.id?{ok:!0}:{ok:!1,code:"FORBIDDEN",message:'User agent must use "human", "owner", or own id in "by" field'}:t!==e.id?{ok:!1,code:"FORBIDDEN",message:`"by" field must equal agent id "${e.id}"`}:{ok:!0}}],215043)},989666,e=>{"use strict";var t=e.i(985426),a=e.i(257574),n=e.i(507835),r=e.i(457789),s=e.i(119791),i=e.i(141062),o=e.i(957291),l=e.i(535899),u=e.i(610241),d=e.i(62749),c=e.i(624891),p=e.i(725836),h=e.i(532736),g=e.i(257858),f=e.i(487476),m=e.i(193695);e.i(484264);var v=e.i(315709),w=e.i(351216),R=e.i(215043),y=e.i(660038),_=e.i(912714),k=e.i(750227);async function E(e,t){let a=Math.min(t?.limit??50,200),n=t?.file??null,r=k.default.join(e,".proof"),s=[];async function i(e){let t;try{t=await (0,_.readdir)(e,{withFileTypes:!0})}catch{return}for(let a of t){let t=k.default.join(e,a.name);if(a.isDirectory())await i(t);else if(a.isFile()&&a.name.endsWith(".json")){let e;try{let a=await (0,_.readFile)(t,"utf-8");if(e=JSON.parse(a),![1,2,3].includes(e.schemaVersion))continue}catch{continue}if(n&&e.path!==n)continue;let a=(e.events??[]).map(t=>({...t,path:e.path}));s=s.concat(a)}}}return await i(r),s.sort((e,t)=>e.at<t.at?1:e.at>t.at?-1:0),s.slice(0,a)}var A=e.i(552350);async function x(e){let t=await (0,R.checkAuth)(e);if(!t.ok)return w.NextResponse.json({error:"UNAUTHORIZED"},{status:401});let a=await (0,y.resolveWorkspaceForAgent)(e);if(!a.ok)return w.NextResponse.json({error:a.code},{status:a.status});let{ws:n,rootDir:r}=a,s=(0,R.enforceScope)(t.agent,{op:"read",workspaceId:n.id});if(!s.ok)return w.NextResponse.json({error:s.code,message:s.message},{status:403});let i=new URL(e.url),o=i.searchParams.get("limit"),l=i.searchParams.get("file")??void 0;if(l){let e=(0,R.enforceScope)(t.agent,{filePath:l,op:"read",workspaceId:n.id});if(!e.ok)return w.NextResponse.json({error:e.code,message:e.message},{status:403})}let u=50;if(null!==o){let e=parseInt(o,10);!isNaN(e)&&e>0&&(u=Math.min(e,200))}let d=await E(r,{limit:u,file:l}),c=t.agent.scope.paths,p=d.filter(e=>c.some(t=>(0,A.matchGlob)(t,e.path)));return w.NextResponse.json({events:p,count:p.length})}e.s(["GET",0,x,"runtime",0,"nodejs"],826676);var N=e.i(826676);let I=new t.AppRouteRouteModule({definition:{kind:a.RouteKind.APP_ROUTE,page:"/api/agent/activity/route",pathname:"/api/agent/activity",filename:"route",bundlePath:""},distDir:".next",relativeProjectDir:"",resolvedPagePath:"[project]/src/app/api/agent/activity/route.ts",nextConfigOutput:"standalone",userland:N,...{}}),{workAsyncStorage:P,workUnitAsyncStorage:T,serverHooks:O}=I;async function C(e,t,n){n.requestMeta&&(0,r.setRequestMeta)(e,n.requestMeta),I.isDev&&(0,r.addRequestMeta)(e,"devRequestTimingInternalsEnd",process.hrtime.bigint());let w="/api/agent/activity/route";w=w.replace(/\/index$/,"")||"/";let R=await I.prepare(e,t,{srcPage:w,multiZoneDraftMode:!1});if(!R)return t.statusCode=400,t.end("Bad Request"),null==n.waitUntil||n.waitUntil.call(n,Promise.resolve()),null;let{buildId:y,params:_,nextConfig:k,parsedUrl:E,isDraftMode:A,prerenderManifest:x,routerServerContext:N,isOnDemandRevalidate:P,revalidateOnlyGenerated:T,resolvedPathname:O,clientReferenceManifest:C,serverActionsManifest:S}=R,q=(0,o.normalizeAppPath)(w),b=!!(x.dynamicRoutes[q]||x.routes[O]),D=async()=>((null==N?void 0:N.render404)?await N.render404(e,t,E,!1):t.end("This page could not be found"),null);if(b&&!A){let e=!!x.routes[O],t=x.dynamicRoutes[q];if(t&&!1===t.fallback&&!e){if(k.adapterPath)return await D();throw new m.NoFallbackError}}let j=null;!b||I.isDev||A||(j="/index"===(j=O)?"/":j);let U=!0===I.isDev||!b,H=b&&!U;S&&C&&(0,i.setManifestsSingleton)({page:w,clientReferenceManifest:C,serverActionsManifest:S});let F=e.method||"GET",M=(0,s.getTracer)(),B=M.getActiveScopeSpan(),$=!!(null==N?void 0:N.isWrappedByNextServer),K=!!(0,r.getRequestMeta)(e,"minimalMode"),G=(0,r.getRequestMeta)(e,"incrementalCache")||await I.getIncrementalCache(e,k,x,K);null==G||G.resetRequestCache(),globalThis.__incrementalCache=G;let L={params:_,previewProps:x.preview,renderOpts:{experimental:{authInterrupts:!!k.experimental.authInterrupts},cacheComponents:!!k.cacheComponents,supportsDynamicResponse:U,incrementalCache:G,cacheLifeProfiles:k.cacheLife,waitUntil:n.waitUntil,onClose:e=>{t.on("close",e)},onAfterTaskError:void 0,onInstrumentationRequestError:(t,a,n,r)=>I.onRequestError(e,t,n,r,N)},sharedContext:{buildId:y}},W=new l.NodeNextRequest(e),z=new l.NodeNextResponse(t),Z=u.NextRequestAdapter.fromNodeNextRequest(W,(0,u.signalFromNodeResponse)(t));try{let r,i=async e=>I.handle(Z,L).finally(()=>{if(!e)return;e.setAttributes({"http.status_code":t.statusCode,"next.rsc":!1});let a=M.getRootSpanAttributes();if(!a)return;if(a.get("next.span_type")!==d.BaseServerSpan.handleRequest)return void console.warn(`Unexpected root span type '${a.get("next.span_type")}'. Please report this Next.js issue https://github.com/vercel/next.js`);let n=a.get("next.route");if(n){let t=`${F} ${n}`;e.setAttributes({"next.route":n,"http.route":n,"next.span_name":t}),e.updateName(t),r&&r!==e&&(r.setAttribute("http.route",n),r.updateName(t))}else e.updateName(`${F} ${w}`)}),o=async r=>{var s,o;let l=async({previousCacheEntry:a})=>{try{if(!K&&P&&T&&!a)return t.statusCode=404,t.setHeader("x-nextjs-cache","REVALIDATED"),t.end("This page could not be found"),null;let s=await i(r);e.fetchMetrics=L.renderOpts.fetchMetrics;let o=L.renderOpts.pendingWaitUntil;o&&n.waitUntil&&(n.waitUntil(o),o=void 0);let l=L.renderOpts.collectedTags;if(!b)return await (0,p.sendResponse)(W,z,s,L.renderOpts.pendingWaitUntil),null;{let e=await s.blob(),t=(0,h.toNodeOutgoingHttpHeaders)(s.headers);l&&(t[f.NEXT_CACHE_TAGS_HEADER]=l),!t["content-type"]&&e.type&&(t["content-type"]=e.type);let a=void 0!==L.renderOpts.collectedRevalidate&&!(L.renderOpts.collectedRevalidate>=f.INFINITE_CACHE)&&L.renderOpts.collectedRevalidate,n=void 0===L.renderOpts.collectedExpire||L.renderOpts.collectedExpire>=f.INFINITE_CACHE?void 0:L.renderOpts.collectedExpire;return{value:{kind:v.CachedRouteKind.APP_ROUTE,status:s.status,body:Buffer.from(await e.arrayBuffer()),headers:t},cacheControl:{revalidate:a,expire:n}}}}catch(t){throw(null==a?void 0:a.isStale)&&await I.onRequestError(e,t,{routerKind:"App Router",routePath:w,routeType:"route",revalidateReason:(0,c.getRevalidateReason)({isStaticGeneration:H,isOnDemandRevalidate:P})},!1,N),t}},u=await I.handleResponse({req:e,nextConfig:k,cacheKey:j,routeKind:a.RouteKind.APP_ROUTE,isFallback:!1,prerenderManifest:x,isRoutePPREnabled:!1,isOnDemandRevalidate:P,revalidateOnlyGenerated:T,responseGenerator:l,waitUntil:n.waitUntil,isMinimalMode:K});if(!b)return null;if((null==u||null==(s=u.value)?void 0:s.kind)!==v.CachedRouteKind.APP_ROUTE)throw Object.defineProperty(Error(`Invariant: app-route received invalid cache entry ${null==u||null==(o=u.value)?void 0:o.kind}`),"__NEXT_ERROR_CODE",{value:"E701",enumerable:!1,configurable:!0});K||t.setHeader("x-nextjs-cache",P?"REVALIDATED":u.isMiss?"MISS":u.isStale?"STALE":"HIT"),A&&t.setHeader("Cache-Control","private, no-cache, no-store, max-age=0, must-revalidate");let d=(0,h.fromNodeOutgoingHttpHeaders)(u.value.headers);return K&&b||d.delete(f.NEXT_CACHE_TAGS_HEADER),!u.cacheControl||t.getHeader("Cache-Control")||d.get("Cache-Control")||d.set("Cache-Control",(0,g.getCacheControlHeader)(u.cacheControl)),await (0,p.sendResponse)(W,z,new Response(u.value.body,{headers:d,status:u.value.status||200})),null};$&&B?await o(B):(r=M.getActiveScopeSpan(),await M.withPropagatedContext(e.headers,()=>M.trace(d.BaseServerSpan.handleRequest,{spanName:`${F} ${w}`,kind:s.SpanKind.SERVER,attributes:{"http.method":F,"http.target":e.url}},o),void 0,!$))}catch(t){if(t instanceof m.NoFallbackError||await I.onRequestError(e,t,{routerKind:"App Router",routePath:q,routeType:"route",revalidateReason:(0,c.getRevalidateReason)({isStaticGeneration:H,isOnDemandRevalidate:P})},!1,N),b)throw t;return await (0,p.sendResponse)(W,z,new Response(null,{status:500})),null}}e.s(["handler",0,C,"patchFetch",0,function(){return(0,n.patchFetch)({workAsyncStorage:P,workUnitAsyncStorage:T})},"routeModule",0,I,"serverHooks",0,O,"workAsyncStorage",0,P,"workUnitAsyncStorage",0,T],989666)},168315,e=>{e.v(t=>Promise.all(["server/chunks/0sag_@better-auth_memory-adapter_dist_index_mjs_0pvj6im._.js"].map(t=>e.l(t))).then(()=>t(862112)))},769787,e=>{e.v(t=>Promise.all(["server/chunks/01er_better-auth_dist_adapters_kysely-adapter_index_mjs_0s~-4gu._.js"].map(t=>e.l(t))).then(()=>t(717789)))},580632,e=>{e.v(e=>Promise.resolve().then(()=>e(270406)))},947559,e=>{e.v(t=>Promise.all(["server/chunks/0ugq_@better-auth_kysely-adapter_dist_bun-sqlite-dialect-DzNwOpKv_mjs_0z1z6m4._.js"].map(t=>e.l(t))).then(()=>t(495181)))},715018,e=>{e.v(t=>Promise.all(["server/chunks/0ugq_@better-auth_kysely-adapter_dist_node-sqlite-dialect_mjs_0qqlvhl._.js"].map(t=>e.l(t))).then(()=>t(698370)))},146843,e=>{e.v(t=>Promise.all(["server/chunks/0ugq_@better-auth_kysely-adapter_dist_d1-sqlite-dialect-C2B7YsIT_mjs_0wynrz3._.js"].map(t=>e.l(t))).then(()=>t(143740)))},697743,e=>{e.v(t=>Promise.all(["server/chunks/0.u4_next_05jevxw._.js"].map(t=>e.l(t))).then(()=>t(428325)))},99243,e=>{e.v(e=>Promise.resolve().then(()=>e(313414)))},893412,e=>{e.v(e=>Promise.resolve().then(()=>e(499465)))},687903,e=>{e.v(e=>Promise.resolve().then(()=>e(912714)))}];
1
+ module.exports=[814747,(e,t,a)=>{t.exports=e.x("path",()=>require("path"))},224361,(e,t,a)=>{t.exports=e.x("util",()=>require("util"))},688947,(e,t,a)=>{t.exports=e.x("stream",()=>require("stream"))},427699,(e,t,a)=>{t.exports=e.x("events",()=>require("events"))},228064,e=>{"use strict";var t=e.i(666680),a=e.i(912714),n=e.i(660526),r=e.i(750227),s=e.i(832852);let i="__registry__",o=new Map;function l(){let e=process.env.HOME??n.default.homedir();return r.default.join(e,".wiki-viewer")}function u(){return r.default.join(l(),"agents.json")}function d(e){return(0,t.createHash)("sha256").update(e,"utf8").digest("hex")}async function c(){try{let e=await (0,a.readFile)(u(),"utf8"),t=JSON.parse(e);return{version:1,agents:Array.isArray(t.agents)?t.agents:[]}}catch{return null}}async function p(e){await (0,a.mkdir)(l(),{recursive:!0});let t=u()+".tmp";await (0,a.writeFile)(t,JSON.stringify(e,null,2),{encoding:"utf8",mode:384});try{await (0,a.chmod)(t,384)}catch{}await (0,a.rename)(t,u())}async function h(){let e=await c();if(e)return e;let t={version:1,agents:[]};return await p(t),t}async function g(e){let a=await c();if(!a)return null;let n=d(e);for(let e of a.agents)if(function(e,a){let n=Buffer.from(e.padEnd(64,"0"),"utf8"),r=Buffer.from(a.padEnd(64,"0"),"utf8");return n.length===r.length&&(0,t.timingSafeEqual)(n,r)&&e.length===a.length}(e.tokenHash,n))return e;return null}async function f(e){let t=await c();return t?t.agents.find(t=>t.id===e)??null:null}async function m(e){await (0,s.withFileMutex)(i,async()=>{let t=await h(),a=t.agents.findIndex(t=>t.id===e.id);a>=0?t.agents[a]=e:t.agents.push(e),await p(t)})}async function v(e){return(0,s.withFileMutex)(i,async()=>{let t=await c();if(!t)return!1;let a=t.agents.length;return t.agents=t.agents.filter(t=>t.id!==e),t.agents.length!==a&&(await p(t),!0)})}async function w(e){Date.now()-(o.get(e)??0)<3e4||await (0,s.withFileMutex)(i,async()=>{let t=await c();if(!t)return;let a=t.agents.find(t=>t.id===e);a&&(a.lastSeen=new Date().toISOString(),o.set(e,Date.now()),await p(t))}).catch(()=>{})}e.s(["addAgent",0,m,"hashToken",0,d,"lookupAgentById",0,f,"lookupAgentByToken",0,g,"readRegistry",0,c,"removeAgent",0,v,"updateLastSeen",0,w])},215043,552350,e=>{"use strict";var t=e.i(228064);function a(e,t){return(function(e){let t="^",a=0;for(;a<e.length;)"*"===e[a]&&"*"===e[a+1]?(t+=".*","/"===e[a+=2]&&(t+="(?:.+/)?",a++)):("*"===e[a]?t+="[^/]*":"?"===e[a]?t+="[^/]":t+=e[a].replace(/[.+^${}()|[\]\\]/g,"\\$&"),a++);return new RegExp(t+="$")})(e).test(t)}e.s(["matchGlob",0,a],552350);var n=e.i(254226);async function r(e){let a=await (0,n.getSessionFromRequest)(e);if(a?.user){let e=a.user;return{ok:!0,agent:{id:`user:${e.id}`,displayName:e.name,tokenHash:"",scope:{paths:["**/*"],ops:["read","mutate","delete"]},createdAt:"",lastSeen:""}}}let r=e.headers.get("authorization")??"",s=r.startsWith("Bearer ")?r.slice(7).trim():"";if(!s)return{ok:!1,code:"UNAUTHORIZED",message:"No credentials"};let i=await (0,t.lookupAgentByToken)(s);if(!i)return{ok:!1,code:"UNAUTHORIZED",message:"Unknown or invalid token"};let o=e.headers.get("x-agent-id")??"";return o?o!==i.id?{ok:!1,code:"UNAUTHORIZED",message:"X-Agent-Id does not match token owner"}:((0,t.updateLastSeen)(i.id),{ok:!0,agent:i}):{ok:!1,code:"UNAUTHORIZED",message:"X-Agent-Id header required"}}process.env.AGENT_BEARER_TOKEN&&console.warn("[wiki-viewer] AGENT_BEARER_TOKEN is no longer used; manage agents via the AI Panel."),e.s(["checkAuth",0,r,"enforceScope",0,function(e,t){let{scope:n}=e;return void 0!==n.workspaceId&&void 0!==t.workspaceId&&n.workspaceId!==t.workspaceId?{ok:!1,code:"FORBIDDEN",message:`Agent scope does not cover workspace "${t.workspaceId}" (granted: "${n.workspaceId}")`}:n.ops.includes(t.op)?t.filePath&&!n.paths.some(e=>a(e,t.filePath))?{ok:!1,code:"FORBIDDEN",message:`Agent scope does not cover path "${t.filePath}"`}:{ok:!0}:{ok:!1,code:"FORBIDDEN",message:`Agent scope does not allow "${t.op}"`}},"verifyBy",0,function(e,t){return e.id.startsWith("user:")?!t||"owner"===t||"human"===t||t.startsWith("human:")||t===e.id?{ok:!0}:{ok:!1,code:"FORBIDDEN",message:'User agent must use "human", "owner", or own id in "by" field'}:t!==e.id?{ok:!1,code:"FORBIDDEN",message:`"by" field must equal agent id "${e.id}"`}:{ok:!0}}],215043)},989666,e=>{"use strict";var t=e.i(985426),a=e.i(257574),n=e.i(507835),r=e.i(457789),s=e.i(119791),i=e.i(141062),o=e.i(957291),l=e.i(535899),u=e.i(610241),d=e.i(62749),c=e.i(624891),p=e.i(725836),h=e.i(532736),g=e.i(257858),f=e.i(487476),m=e.i(193695);e.i(484264);var v=e.i(315709),w=e.i(351216),R=e.i(215043),y=e.i(660038),_=e.i(912714),k=e.i(750227);async function E(e,t){let a=Math.min(t?.limit??50,200),n=t?.file??null,r=k.default.join(e,".proof"),s=[];async function i(e){let t;try{t=await (0,_.readdir)(e,{withFileTypes:!0})}catch{return}for(let a of t){let t=k.default.join(e,a.name);if(a.isDirectory())await i(t);else if(a.isFile()&&a.name.endsWith(".json")){let e;try{let a=await (0,_.readFile)(t,"utf-8");if(e=JSON.parse(a),![1,2,3].includes(e.schemaVersion))continue}catch{continue}if(n&&e.path!==n)continue;let a=(e.events??[]).map(t=>({...t,path:e.path}));s=s.concat(a)}}}return await i(r),s.sort((e,t)=>e.at<t.at?1:e.at>t.at?-1:0),s.slice(0,a)}var A=e.i(552350);async function x(e){let t=await (0,R.checkAuth)(e);if(!t.ok)return w.NextResponse.json({error:"UNAUTHORIZED"},{status:401});let a=await (0,y.resolveWorkspaceForAgent)(e);if(!a.ok)return w.NextResponse.json({error:a.code},{status:a.status});let{ws:n,rootDir:r}=a,s=(0,R.enforceScope)(t.agent,{op:"read",workspaceId:n.id});if(!s.ok)return w.NextResponse.json({error:s.code,message:s.message},{status:403});let i=new URL(e.url),o=i.searchParams.get("limit"),l=i.searchParams.get("file")??void 0;if(l){let e=(0,R.enforceScope)(t.agent,{filePath:l,op:"read",workspaceId:n.id});if(!e.ok)return w.NextResponse.json({error:e.code,message:e.message},{status:403})}let u=50;if(null!==o){let e=parseInt(o,10);!isNaN(e)&&e>0&&(u=Math.min(e,200))}let d=await E(r,{limit:u,file:l}),c=t.agent.scope.paths,p=d.filter(e=>c.some(t=>(0,A.matchGlob)(t,e.path)));return w.NextResponse.json({events:p,count:p.length})}e.s(["GET",0,x,"runtime",0,"nodejs"],826676);var N=e.i(826676);let I=new t.AppRouteRouteModule({definition:{kind:a.RouteKind.APP_ROUTE,page:"/api/agent/activity/route",pathname:"/api/agent/activity",filename:"route",bundlePath:""},distDir:".next",relativeProjectDir:"",resolvedPagePath:"[project]/src/app/api/agent/activity/route.ts",nextConfigOutput:"standalone",userland:N,...{}}),{workAsyncStorage:P,workUnitAsyncStorage:T,serverHooks:O}=I;async function C(e,t,n){n.requestMeta&&(0,r.setRequestMeta)(e,n.requestMeta),I.isDev&&(0,r.addRequestMeta)(e,"devRequestTimingInternalsEnd",process.hrtime.bigint());let w="/api/agent/activity/route";w=w.replace(/\/index$/,"")||"/";let R=await I.prepare(e,t,{srcPage:w,multiZoneDraftMode:!1});if(!R)return t.statusCode=400,t.end("Bad Request"),null==n.waitUntil||n.waitUntil.call(n,Promise.resolve()),null;let{buildId:y,params:_,nextConfig:k,parsedUrl:E,isDraftMode:A,prerenderManifest:x,routerServerContext:N,isOnDemandRevalidate:P,revalidateOnlyGenerated:T,resolvedPathname:O,clientReferenceManifest:C,serverActionsManifest:S}=R,q=(0,o.normalizeAppPath)(w),b=!!(x.dynamicRoutes[q]||x.routes[O]),D=async()=>((null==N?void 0:N.render404)?await N.render404(e,t,E,!1):t.end("This page could not be found"),null);if(b&&!A){let e=!!x.routes[O],t=x.dynamicRoutes[q];if(t&&!1===t.fallback&&!e){if(k.adapterPath)return await D();throw new m.NoFallbackError}}let j=null;!b||I.isDev||A||(j="/index"===(j=O)?"/":j);let U=!0===I.isDev||!b,H=b&&!U;S&&C&&(0,i.setManifestsSingleton)({page:w,clientReferenceManifest:C,serverActionsManifest:S});let F=e.method||"GET",M=(0,s.getTracer)(),B=M.getActiveScopeSpan(),$=!!(null==N?void 0:N.isWrappedByNextServer),K=!!(0,r.getRequestMeta)(e,"minimalMode"),G=(0,r.getRequestMeta)(e,"incrementalCache")||await I.getIncrementalCache(e,k,x,K);null==G||G.resetRequestCache(),globalThis.__incrementalCache=G;let L={params:_,previewProps:x.preview,renderOpts:{experimental:{authInterrupts:!!k.experimental.authInterrupts},cacheComponents:!!k.cacheComponents,supportsDynamicResponse:U,incrementalCache:G,cacheLifeProfiles:k.cacheLife,waitUntil:n.waitUntil,onClose:e=>{t.on("close",e)},onAfterTaskError:void 0,onInstrumentationRequestError:(t,a,n,r)=>I.onRequestError(e,t,n,r,N)},sharedContext:{buildId:y}},W=new l.NodeNextRequest(e),z=new l.NodeNextResponse(t),Z=u.NextRequestAdapter.fromNodeNextRequest(W,(0,u.signalFromNodeResponse)(t));try{let r,i=async e=>I.handle(Z,L).finally(()=>{if(!e)return;e.setAttributes({"http.status_code":t.statusCode,"next.rsc":!1});let a=M.getRootSpanAttributes();if(!a)return;if(a.get("next.span_type")!==d.BaseServerSpan.handleRequest)return void console.warn(`Unexpected root span type '${a.get("next.span_type")}'. Please report this Next.js issue https://github.com/vercel/next.js`);let n=a.get("next.route");if(n){let t=`${F} ${n}`;e.setAttributes({"next.route":n,"http.route":n,"next.span_name":t}),e.updateName(t),r&&r!==e&&(r.setAttribute("http.route",n),r.updateName(t))}else e.updateName(`${F} ${w}`)}),o=async r=>{var s,o;let l=async({previousCacheEntry:a})=>{try{if(!K&&P&&T&&!a)return t.statusCode=404,t.setHeader("x-nextjs-cache","REVALIDATED"),t.end("This page could not be found"),null;let s=await i(r);e.fetchMetrics=L.renderOpts.fetchMetrics;let o=L.renderOpts.pendingWaitUntil;o&&n.waitUntil&&(n.waitUntil(o),o=void 0);let l=L.renderOpts.collectedTags;if(!b)return await (0,p.sendResponse)(W,z,s,L.renderOpts.pendingWaitUntil),null;{let e=await s.blob(),t=(0,h.toNodeOutgoingHttpHeaders)(s.headers);l&&(t[f.NEXT_CACHE_TAGS_HEADER]=l),!t["content-type"]&&e.type&&(t["content-type"]=e.type);let a=void 0!==L.renderOpts.collectedRevalidate&&!(L.renderOpts.collectedRevalidate>=f.INFINITE_CACHE)&&L.renderOpts.collectedRevalidate,n=void 0===L.renderOpts.collectedExpire||L.renderOpts.collectedExpire>=f.INFINITE_CACHE?void 0:L.renderOpts.collectedExpire;return{value:{kind:v.CachedRouteKind.APP_ROUTE,status:s.status,body:Buffer.from(await e.arrayBuffer()),headers:t},cacheControl:{revalidate:a,expire:n}}}}catch(t){throw(null==a?void 0:a.isStale)&&await I.onRequestError(e,t,{routerKind:"App Router",routePath:w,routeType:"route",revalidateReason:(0,c.getRevalidateReason)({isStaticGeneration:H,isOnDemandRevalidate:P})},!1,N),t}},u=await I.handleResponse({req:e,nextConfig:k,cacheKey:j,routeKind:a.RouteKind.APP_ROUTE,isFallback:!1,prerenderManifest:x,isRoutePPREnabled:!1,isOnDemandRevalidate:P,revalidateOnlyGenerated:T,responseGenerator:l,waitUntil:n.waitUntil,isMinimalMode:K});if(!b)return null;if((null==u||null==(s=u.value)?void 0:s.kind)!==v.CachedRouteKind.APP_ROUTE)throw Object.defineProperty(Error(`Invariant: app-route received invalid cache entry ${null==u||null==(o=u.value)?void 0:o.kind}`),"__NEXT_ERROR_CODE",{value:"E701",enumerable:!1,configurable:!0});K||t.setHeader("x-nextjs-cache",P?"REVALIDATED":u.isMiss?"MISS":u.isStale?"STALE":"HIT"),A&&t.setHeader("Cache-Control","private, no-cache, no-store, max-age=0, must-revalidate");let d=(0,h.fromNodeOutgoingHttpHeaders)(u.value.headers);return K&&b||d.delete(f.NEXT_CACHE_TAGS_HEADER),!u.cacheControl||t.getHeader("Cache-Control")||d.get("Cache-Control")||d.set("Cache-Control",(0,g.getCacheControlHeader)(u.cacheControl)),await (0,p.sendResponse)(W,z,new Response(u.value.body,{headers:d,status:u.value.status||200})),null};$&&B?await o(B):(r=M.getActiveScopeSpan(),await M.withPropagatedContext(e.headers,()=>M.trace(d.BaseServerSpan.handleRequest,{spanName:`${F} ${w}`,kind:s.SpanKind.SERVER,attributes:{"http.method":F,"http.target":e.url}},o),void 0,!$))}catch(t){if(t instanceof m.NoFallbackError||await I.onRequestError(e,t,{routerKind:"App Router",routePath:q,routeType:"route",revalidateReason:(0,c.getRevalidateReason)({isStaticGeneration:H,isOnDemandRevalidate:P})},!1,N),b)throw t;return await (0,p.sendResponse)(W,z,new Response(null,{status:500})),null}}e.s(["handler",0,C,"patchFetch",0,function(){return(0,n.patchFetch)({workAsyncStorage:P,workUnitAsyncStorage:T})},"routeModule",0,I,"serverHooks",0,O,"workAsyncStorage",0,P,"workUnitAsyncStorage",0,T],989666)},168315,e=>{e.v(t=>Promise.all(["server/chunks/0sag_@better-auth_memory-adapter_dist_index_mjs_0pvj6im._.js"].map(t=>e.l(t))).then(()=>t(862112)))},769787,e=>{e.v(t=>Promise.all(["server/chunks/01er_better-auth_dist_adapters_kysely-adapter_index_mjs_0s~-4gu._.js"].map(t=>e.l(t))).then(()=>t(717789)))},580632,e=>{e.v(e=>Promise.resolve().then(()=>e(270406)))},947559,e=>{e.v(t=>Promise.all(["server/chunks/0ugq_@better-auth_kysely-adapter_dist_bun-sqlite-dialect-DzNwOpKv_mjs_0z1z6m4._.js"].map(t=>e.l(t))).then(()=>t(495181)))},715018,e=>{e.v(t=>Promise.all(["server/chunks/0ugq_@better-auth_kysely-adapter_dist_node-sqlite-dialect_mjs_0qqlvhl._.js"].map(t=>e.l(t))).then(()=>t(698370)))},146843,e=>{e.v(t=>Promise.all(["server/chunks/0ugq_@better-auth_kysely-adapter_dist_d1-sqlite-dialect-C2B7YsIT_mjs_0wynrz3._.js"].map(t=>e.l(t))).then(()=>t(143740)))},697743,e=>{e.v(t=>Promise.all(["server/chunks/0.u4_next_05jevxw._.js"].map(t=>e.l(t))).then(()=>t(428325)))},99243,e=>{e.v(e=>Promise.resolve().then(()=>e(313414)))},893412,e=>{e.v(e=>Promise.resolve().then(()=>e(499465)))},687903,e=>{e.v(e=>Promise.resolve().then(()=>e(912714)))}];
2
2
 
3
3
  //# sourceMappingURL=%5Broot-of-the-server%5D__0yzumg-._.js.map
@@ -1,3 +1,3 @@
1
- module.exports=[857764,(e,t,r)=>{t.exports=e.x("node:url",()=>require("node:url"))},536654,e=>{"use strict";var t=e.i(912714),r=e.i(750227);function a(e){return!!(r.default.isAbsolute(e)||".."===e||e.startsWith(".."+r.default.sep)||e.startsWith("../"))}async function n(e,s,i={}){let o;if(!e)return null;let l=function(e){if(e.includes("\0")||r.default.isAbsolute(e))return null;let t=e.replace(/\\/g,"/");return(("."===(t=r.default.posix.normalize(t))||"./"===t)&&(t=""),".."===t||t.startsWith("../")||/^[a-zA-Z]:\//.test(t)||t.startsWith("/"))?null:t}(s);if(null===l)return null;if(i.deniedSegments?.length){for(let e of l.split("/").filter(Boolean))if(i.deniedSegments.includes(e))return null}try{o=await (0,t.realpath)(e)}catch{return null}let u=l?r.default.join(o,l):o;try{let e=await (0,t.realpath)(u),n=r.default.relative(o,e);if(a(n))return null;return{relPath:l,absolutePath:e}}catch{if(!i.allowMissing)return null;let e=u;for(;;){let n=r.default.dirname(e);if(n===e)break;try{let e=await (0,t.realpath)(n),s=r.default.relative(o,e);if(a(s))return null;return{relPath:l,absolutePath:u}}catch{e=n}}return null}}e.s(["resolveWorkspacePath",0,n])},848475,e=>{"use strict";var t=e.i(750227);let r={".md":"text/markdown; charset=utf-8",".markdown":"text/markdown; charset=utf-8",".mdx":"text/markdown; charset=utf-8",".txt":"text/plain; charset=utf-8",".json":"application/json; charset=utf-8",".jsonc":"application/json; charset=utf-8",".ts":"text/typescript; charset=utf-8",".tsx":"text/typescript; charset=utf-8",".mts":"text/typescript; charset=utf-8",".js":"text/javascript; charset=utf-8",".jsx":"text/javascript; charset=utf-8",".mjs":"text/javascript; charset=utf-8",".html":"text/html; charset=utf-8",".htm":"text/html; charset=utf-8",".css":"text/css; charset=utf-8",".yaml":"text/yaml; charset=utf-8",".yml":"text/yaml; charset=utf-8",".toml":"text/toml; charset=utf-8",".xml":"application/xml; charset=utf-8",".svg":"image/svg+xml",".png":"image/png",".jpg":"image/jpeg",".jpeg":"image/jpeg",".gif":"image/gif",".webp":"image/webp",".avif":"image/avif",".ico":"image/x-icon",".bmp":"image/bmp",".pdf":"application/pdf",".zip":"application/zip",".tar":"application/x-tar",".gz":"application/gzip",".py":"text/x-python; charset=utf-8",".rs":"text/x-rustsrc; charset=utf-8",".go":"text/x-go; charset=utf-8",".sh":"text/x-shellscript; charset=utf-8",".csv":"text/csv; charset=utf-8",".tsv":"text/tab-separated-values; charset=utf-8",".env":"text/plain; charset=utf-8",".log":"text/plain; charset=utf-8",".ini":"text/plain; charset=utf-8",".conf":"text/plain; charset=utf-8",".mmd":"text/plain; charset=utf-8",".ipynb":"application/json; charset=utf-8",".docx":"application/vnd.openxmlformats-officedocument.wordprocessingml.document",".xlsx":"application/vnd.openxmlformats-officedocument.spreadsheetml.sheet",".pptx":"application/vnd.openxmlformats-officedocument.presentationml.presentation",".doc":"application/msword",".xls":"application/vnd.ms-excel",".ppt":"application/vnd.ms-powerpoint",".mp4":"video/mp4",".webm":"video/webm",".mov":"video/quicktime",".m4v":"video/mp4",".mp3":"audio/mpeg",".wav":"audio/wav",".ogg":"audio/ogg",".m4a":"audio/mp4",".aac":"audio/aac"};e.s(["contentTypeForPath",0,function(e){return r[t.default.extname(e).toLowerCase()]??"application/octet-stream"}])},719126,e=>{"use strict";var t=e.i(666680),r=e.i(912714),a=e.i(750227),n=e.i(716234),s=e.i(536654),i=e.i(848475);async function o(e,t){if(!e)return null;let r=await (0,s.resolveWorkspacePath)(e,t,{allowMissing:!0,deniedSegments:n.DENIED_SEGMENTS});return r?.absolutePath??null}async function l(e,t){let a=420;try{let t=await (0,r.stat)(e);a=511&t.mode}catch{}let n=e+".~"+process.pid+"."+Date.now()+".tmp",s=await (0,r.open)(n,"w",a);try{await s.write(t),await s.datasync()}finally{await s.close()}await (0,r.rename)(n,e)}async function u(e,t){let n=a.default.dirname(e);if(t)return await (0,r.mkdir)(n,{recursive:!0}),!0;try{return await (0,r.stat)(n),!0}catch{return!1}}e.s(["atomicWrite",0,l,"ensureParentDir",0,u,"extractShaHex",0,function(e){return e.replace(/^"/,"").replace(/"$/,"").replace(/^sha256:/,"")},"isDeniedRelPath",0,function(e){let t=e.replace(/\\/g,"/");return n.DENIED_SEGMENTS.some(e=>t===e||t.startsWith(e+"/"))},"isMarkdown",0,function(e){return e.endsWith(".md")||e.endsWith(".markdown")},"looksLikeBinary",0,function(e){return e.slice(0,Math.min(e.length,8192)).includes(0)},"mimeByExt",0,function(e){return(0,i.contentTypeForPath)(e)},"safeAbsPath",0,o,"sha256ofBuf",0,function(e){return"sha256:"+(0,t.createHash)("sha256").update(e).digest("hex")}])},814747,(e,t,r)=>{t.exports=e.x("path",()=>require("path"))},224361,(e,t,r)=>{t.exports=e.x("util",()=>require("util"))},688947,(e,t,r)=>{t.exports=e.x("stream",()=>require("stream"))},427699,(e,t,r)=>{t.exports=e.x("events",()=>require("events"))},228064,e=>{"use strict";var t=e.i(666680),r=e.i(912714),a=e.i(660526),n=e.i(750227),s=e.i(832852);let i="__registry__",o=new Map;function l(){let e=process.env.HOME??a.default.homedir();return n.default.join(e,".wiki-viewer")}function u(){return n.default.join(l(),"agents.json")}function c(e){return(0,t.createHash)("sha256").update(e,"utf8").digest("hex")}async function d(){try{let e=await (0,r.readFile)(u(),"utf8"),t=JSON.parse(e);return{version:1,agents:Array.isArray(t.agents)?t.agents:[]}}catch{return null}}async function p(e){await (0,r.mkdir)(l(),{recursive:!0});let t=u()+".tmp";await (0,r.writeFile)(t,JSON.stringify(e,null,2),{encoding:"utf8",mode:384});try{await (0,r.chmod)(t,384)}catch{}await (0,r.rename)(t,u())}async function f(){let e=await d();if(e)return e;let t={version:1,agents:[]};return await p(t),t}async function h(e){let r=await d();if(!r)return null;let a=c(e);for(let e of r.agents)if(function(e,r){let a=Buffer.from(e.padEnd(64,"0"),"utf8"),n=Buffer.from(r.padEnd(64,"0"),"utf8");return a.length===n.length&&(0,t.timingSafeEqual)(a,n)&&e.length===r.length}(e.tokenHash,a))return e;return null}async function m(e){let t=await d();return t?t.agents.find(t=>t.id===e)??null:null}async function g(e){await (0,s.withFileMutex)(i,async()=>{let t=await f(),r=t.agents.findIndex(t=>t.id===e.id);r>=0?t.agents[r]=e:t.agents.push(e),await p(t)})}async function v(e){return(0,s.withFileMutex)(i,async()=>{let t=await d();if(!t)return!1;let r=t.agents.length;return t.agents=t.agents.filter(t=>t.id!==e),t.agents.length!==r&&(await p(t),!0)})}async function w(e){Date.now()-(o.get(e)??0)<3e4||await (0,s.withFileMutex)(i,async()=>{let t=await d();if(!t)return;let r=t.agents.find(t=>t.id===e);r&&(r.lastSeen=new Date().toISOString(),o.set(e,Date.now()),await p(t))})}e.s(["addAgent",0,g,"hashToken",0,c,"lookupAgentById",0,m,"lookupAgentByToken",0,h,"readRegistry",0,d,"removeAgent",0,v,"updateLastSeen",0,w])},215043,552350,e=>{"use strict";var t=e.i(228064);function r(e,t){return(function(e){let t="^",r=0;for(;r<e.length;)"*"===e[r]&&"*"===e[r+1]?(t+=".*","/"===e[r+=2]&&(t+="(?:.+/)?",r++)):("*"===e[r]?t+="[^/]*":"?"===e[r]?t+="[^/]":t+=e[r].replace(/[.+^${}()|[\]\\]/g,"\\$&"),r++);return new RegExp(t+="$")})(e).test(t)}e.s(["matchGlob",0,r],552350);var a=e.i(254226);async function n(e){let r=await (0,a.getSessionFromRequest)(e);if(r?.user){let e=r.user;return{ok:!0,agent:{id:`user:${e.id}`,displayName:e.name,tokenHash:"",scope:{paths:["**/*"],ops:["read","mutate","delete"]},createdAt:"",lastSeen:""}}}let n=e.headers.get("authorization")??"",s=n.startsWith("Bearer ")?n.slice(7).trim():"";if(!s)return{ok:!1,code:"UNAUTHORIZED",message:"No credentials"};let i=await (0,t.lookupAgentByToken)(s);if(!i)return{ok:!1,code:"UNAUTHORIZED",message:"Unknown or invalid token"};let o=e.headers.get("x-agent-id")??"";return o?o!==i.id?{ok:!1,code:"UNAUTHORIZED",message:"X-Agent-Id does not match token owner"}:((0,t.updateLastSeen)(i.id),{ok:!0,agent:i}):{ok:!1,code:"UNAUTHORIZED",message:"X-Agent-Id header required"}}process.env.AGENT_BEARER_TOKEN&&console.warn("[wiki-viewer] AGENT_BEARER_TOKEN is no longer used; manage agents via the AI Panel."),e.s(["checkAuth",0,n,"enforceScope",0,function(e,t){let{scope:a}=e;return void 0!==a.workspaceId&&void 0!==t.workspaceId&&a.workspaceId!==t.workspaceId?{ok:!1,code:"FORBIDDEN",message:`Agent scope does not cover workspace "${t.workspaceId}" (granted: "${a.workspaceId}")`}:a.ops.includes(t.op)?t.filePath&&!a.paths.some(e=>r(e,t.filePath))?{ok:!1,code:"FORBIDDEN",message:`Agent scope does not cover path "${t.filePath}"`}:{ok:!0}:{ok:!1,code:"FORBIDDEN",message:`Agent scope does not allow "${t.op}"`}},"verifyBy",0,function(e,t){return e.id.startsWith("user:")?!t||"owner"===t||"human"===t||t.startsWith("human:")||t===e.id?{ok:!0}:{ok:!1,code:"FORBIDDEN",message:'User agent must use "human", "owner", or own id in "by" field'}:t!==e.id?{ok:!1,code:"FORBIDDEN",message:`"by" field must equal agent id "${e.id}"`}:{ok:!0}}],215043)},844376,(e,t,r)=>{t.exports=e.x("node:module",()=>require("node:module"))},511745,883129,e=>{"use strict";let t;var r=e.i(874533),a=e.i(750227),n=e.i(844376),s=e.i(812057),i=e.i(902157),o=e.i(857764);let l={get url(){return`file://${e.P("src/lib/search/rg-path.ts")}`}},u=(0,s.promisify)(r.execFile);function c(e){try{let t=(0,i.statSync)(e);return t.isFile()&&(73&t.mode)!=0}catch{return!1}}function d(e,t,r){let n=a.default.resolve(e);for(let e=0;e<=t;e++){let e=a.default.join(n,r);if(c(e))return e;let t=a.default.dirname(n);if(t===n)break;n=t}return null}async function p(){try{return await u("rg",["--version"]),"rg"}catch{return null}}async function f(){if(void 0!==t)return t;let e=process.env.WIKI_VIEWER_RG;if(e&&c(e))return t=e;let r=process.env.npm_config_arch||process.arch,s=`@vscode/ripgrep-${process.platform}-${r}`;try{let e=(0,o.fileURLToPath)(l.resolve("@vscode/ripgrep")),r=(0,n.createRequire)(e).resolve(`${s}/bin/rg`);if(c(r))return t=r}catch{}let i=a.default.join("node_modules",s,"bin","rg"),u=d(process.cwd(),5,i);if(u)return t=u;let f=a.default.dirname(process.execPath);if(f!==process.cwd()){let e=d(f,5,i);if(e)return t=e}return t=await p()}function h(e){return e.replace(/<\/?mark>/g,"")}function m(e,t,r={}){let a=r.window??60;if(!t.length)return h(e);let n=Buffer.from(e,"utf8"),s=n.length,i=[...t].sort((e,t)=>e.start-t.start),o=i[0],l=Math.floor((o.start+o.end)/2),u=Math.max(0,l-a),c=Math.min(s,l+a);for(;u>0&&(192&n[u])==128;)u++;for(;c<s&&(192&n[c])==128;)c--;let d=i.filter(e=>e.start<c&&e.end>u),p=[],f=u;for(let e of d){let t=Math.max(u,e.start),r=Math.min(c,e.end);t>f&&p.push({text:n.toString("utf8",f,t),mark:!1}),r>t&&p.push({text:n.toString("utf8",t,r),mark:!0}),f=r}f<c&&p.push({text:n.toString("utf8",f,c),mark:!1});let g="";for(let e of(u>0&&(g+="…"),p)){let t=h(e.text);g+=e.mark?`<mark>${t}</mark>`:t}return c<s&&(g+="…"),g}e.s(["buildSnippet",0,m],883129);var g=e.i(719126);let v=null;async function w(){if(v)return v;try{let t=await e.A(267328);return v=t,t}catch{return v={nestedHazardMounts:()=>[],rootIsHazardMount:()=>!1}}}let k=[".git",".pi",".proof","node_modules",".next"];async function x(e){let t=[];for(let e of k)t.push("--glob",`!${e}/**`);for(let r of(await w()).nestedHazardMounts(e)){let n=a.default.relative(e,r);!n||n.startsWith("..")||a.default.isAbsolute(n)||(n=n.replace(/\\/g,"/"),t.push("--glob",`!${n}/**`))}return t}async function y(e){let t=["--json","--no-config","--no-messages","--no-follow","--hidden","--no-ignore","--max-filesize","2M","--crlf"];return(await w()).rootIsHazardMount(e)&&t.push("--no-mmap"),t.push(...await x(e)),t.push("--glob","!*.excalidraw"),t}function R(e){let t=e.replace(/\\/g,"/");return a.default.isAbsolute(t)||(t=a.default.normalize(t).replace(/\\/g,"/")).startsWith("..")||"."===t||(0,g.isDeniedRelPath)(t)?null:t}function _(e){try{e.kill("SIGTERM")}catch{}setTimeout(()=>{try{e.kill("SIGKILL")}catch{}},2e3)}function b(e,t,a,n,s,i,o){return new Promise(l=>{if(s.signal?.aborted)return void l({outcome:"aborted",code:null,stderr:"",truncated:!0});let u=(0,r.spawn)(e,t,{cwd:a,stdio:["ignore","pipe","pipe"],env:{...process.env,RIPGREP_CONFIG_PATH:""}}),c="",d="",p=!1,f=!1,h=null,m=e=>{p||(p=!0,clearTimeout(g),v?.removeEventListener("abort",w),l({outcome:e,code:h,stderr:d,truncated:f}))},g=setTimeout(()=>{f=!0,_(u),m("timeout")},s.timeoutMs),v=s.signal,w=()=>{f=!0,_(u),m("aborted")};v?.addEventListener("abort",w,{once:!0}),u.stdout?.on("data",e=>{if(c+=e.toString("utf8"),n){let e=c.split("\n");for(let t of(c=e.pop()??"",e)){let e;if(t.trim()){try{e=JSON.parse(t)}catch{continue}if("cap"===i(e)){f=!0,_(u),m("success");return}}}}else if(o){let e=c.split("\n");for(let t of(c=e.pop()??"",e))if(t&&"cap"===o(t)){f=!0,_(u),m("success");return}}}),u.stderr?.on("data",e=>{d+=e.toString("utf8")}),u.on("error",e=>{h=-1,d=e.message,m("error")}),u.on("close",e=>{if(h=e,!p){if(n&&c.trim())try{let e=JSON.parse(c.trim());i(e)}catch{}else!n&&o&&c&&o(c);0===e||1===e?m("success"):m("error")}})})}async function E(e,t,r={}){let a=t.trim();if(!a)return{ok:!0,results:[],truncated:!1};let n=a.split(/\s+/).slice(0,8).map(e=>e.endsWith("*")?e.slice(0,-1):e);if(0===n.length)return{ok:!0,results:[],truncated:!1};let s=await f();if(!s)return{ok:!1,reason:"unavailable",message:"ripgrep binary not found"};let i=new Map,o=r.limit??200,l=0,u=await y(e);for(let e of(u.push("--fixed-strings","--ignore-case"),n))u.push("-e",e);u.push("--",r.startPath??".");let c={timeoutMs:r.timeoutMs??1e4,signal:r.signal},d=await b(s,u,e,!0,c,e=>{if("match"!==e.type)return"continue";let t=e.data;if(!t)return"continue";let r=R(t.path.text);if(!r)return"continue";let a=(t.submatches??[]).map(e=>({start:e.start,end:e.end})),s=t.lines.text.replace(/\r?\n$/,""),u=m(s,a),c={path:r,line:t.line_number,col:a[0]?.start!=null?a[0].start+1:1,text:s,snippet:u},d=c.text.toLowerCase(),p=new Set;for(let e=0;e<n.length;e++)d.includes(n[e].toLowerCase())&&p.add(e);let f=i.get(r);for(let e of(f||(f={path:r,matches:[],tokenSet:new Set},i.set(r,f)),p))f.tokenSet.add(e);return(f.matches.push(c),++l>=o)?"cap":"continue"}),p=n.length,h=[];for(let e of i.values()){if(e.tokenSet.size<p)continue;let t=e.matches.sort((e,t)=>e.line-t.line)[0],r=e.tokenSet.size/p*1e3+Math.min(e.matches.length,100);h.push({path:e.path,matchCount:e.matches.length,tokensMatched:e.tokenSet.size,score:r,firstMatch:t})}return(h.sort((e,t)=>t.tokensMatched!==e.tokensMatched?t.tokensMatched-e.tokensMatched:t.matchCount!==e.matchCount?t.matchCount-e.matchCount:e.path.localeCompare(t.path)),"success"===d.outcome)?2===d.code?{ok:!1,reason:"error",message:d.stderr.trim().split("\n")[0]??"rg error",partialResults:h}:{ok:!0,results:h,truncated:d.truncated}:"timeout"===d.outcome?{ok:!1,reason:"timeout",message:"Search timed out",partialResults:h}:{ok:!1,reason:"error",message:d.stderr||"Search failed",partialResults:h}}async function A(e,t,r,a,n){var s,i;let o=[],l=a.limit??200,u=0,c=await y(t);n&&c.push("--pcre2"),c.push("-e",r),c.push("--",a.startPath??".");let d=await b(e,c,t,!0,{timeoutMs:a.timeoutMs??1e4,signal:a.signal},e=>{if("match"!==e.type)return"continue";let t=e.data;if(!t)return"continue";let r=R(t.path.text);if(!r)return"continue";let a=t.submatches??[];return(o.push({path:r,line:t.line_number,col:a[0]?.start!=null?a[0].start+1:1,text:t.lines.text.replace(/\r?\n$/,"")}),++u>=l)?"cap":"continue"});return{outcome:(s=d,i=o,"timeout"===s.outcome?{ok:!1,reason:"timeout",message:"Search timed out",partialResults:i}:"aborted"===s.outcome?{ok:!1,reason:"error",message:"Search aborted",partialResults:i}:"error"===s.outcome||2===s.code?{ok:!1,reason:"error",message:s.stderr.trim().split("\n")[0]??"rg error",partialResults:i}:{ok:!0,results:i,truncated:s.truncated}),stderr:d.stderr,code:d.code}}function I(e){let t=e.toLowerCase();return t.includes("look-around")||t.includes("lookaround")||t.includes("backreference")||t.includes("back-reference")||t.includes("lookahead")||t.includes("lookbehind")}function S(e){let t=e.toLowerCase();return t.includes("regex")||t.includes("pattern")||t.includes("parse")||t.includes("syntax")||t.includes("unclosed")||I(t)}async function N(e,t,r={}){let a=t.trim();if(!a)return{ok:!0,results:[],truncated:!1};let n=await f();if(!n)return{ok:!1,reason:"unavailable",message:"ripgrep binary not found"};let s=await A(n,e,a,r,!1);if(!s.outcome.ok&&"error"===s.outcome.reason&&I(s.stderr)){let t=await A(n,e,a,r,!0);return!t.outcome.ok&&"error"===t.outcome.reason&&S(t.stderr)?{ok:!1,reason:"invalid-pattern",message:t.stderr.trim().split("\n")[0]??"Invalid regex pattern",partialResults:t.outcome.partialResults}:t.outcome}return!s.outcome.ok&&"error"===s.outcome.reason&&S(s.stderr)?{ok:!1,reason:"invalid-pattern",message:s.stderr.trim().split("\n")[0]??"Invalid regex pattern",partialResults:s.outcome.partialResults}:s.outcome}async function P(e,t={}){let r=await f();if(!r)return{ok:!1,reason:"unavailable",message:"ripgrep binary not found"};let a=[],n=t.limit??2e3,s=["--no-config","--no-messages","--no-follow","--hidden","--no-ignore","--crlf"];(await w()).rootIsHazardMount(e)&&s.push("--no-mmap"),s.push(...await x(e)),s.push("--files","--",t.startPath??".");let i=await b(r,s,e,!1,{timeoutMs:t.timeoutMs??1e4,signal:t.signal},()=>"continue",e=>{let t=e.trim();if(!t)return"continue";let r=R(t);return r&&(a.push(r),a.length>=n)?"cap":"continue"});return"success"===i.outcome?{ok:!0,results:a,truncated:i.truncated}:{ok:!1,reason:"timeout"===i.outcome?"timeout":"error",message:i.stderr||"rg --files failed",partialResults:a}}e.s(["rgListFiles",0,P,"rgLiteralSearch",0,E,"rgRegexSearch",0,N],511745)},868593,e=>{"use strict";var t=e.i(985426),r=e.i(257574),a=e.i(507835),n=e.i(457789),s=e.i(119791),i=e.i(141062),o=e.i(957291),l=e.i(535899),u=e.i(610241),c=e.i(62749),d=e.i(624891),p=e.i(725836),f=e.i(532736),h=e.i(257858),m=e.i(487476),g=e.i(193695);e.i(484264);var v=e.i(315709),w=e.i(912714),k=e.i(750227),x=e.i(351216),y=e.i(215043),R=e.i(660038),_=e.i(359211),b=e.i(719126),E=e.i(552350),A=e.i(511745);function I(e,t,r){return x.NextResponse.json({error:e,message:t},{status:r})}async function S(e){let t,r,a=await (0,y.checkAuth)(e);if(!a.ok)return I("UNAUTHORIZED",a.message??"Unauthorized",401);try{t=await e.json()}catch{return I("INVALID_PAYLOAD","Invalid JSON body",400)}if("grep"!==t.kind&&"glob"!==t.kind&&"fts"!==t.kind)return I("INVALID_PAYLOAD",'kind must be "grep", "glob", or "fts"',400);if("string"!=typeof t.query||"fts"!==t.kind&&!t.query)return I("INVALID_PAYLOAD","query (string) required",400);let n=t.kind,s=t.query,i="string"==typeof t.path?t.path:"",o=Math.min("number"==typeof t.limit?t.limit:200,2e3),l=await (0,R.resolveWorkspaceForAgent)(e);if(!l.ok)return I(l.code,l.code,l.status);let{ws:u,rootDir:c}=l;if(i){if(!(0,_.safeWorkspacePath)(c,i))return I("INVALID_PATH","path: traversal rejected",400);if(!await (0,b.safeAbsPath)(c,i))return I("INVALID_PATH","path: rejected (symlink escape or denied)",400)}if(i){try{if(!(await (0,w.stat)(k.default.join(c,i))).isDirectory())return I("NOT_A_DIRECTORY","path must be a directory",400)}catch(e){if("ENOENT"===e.code)return I("NOT_FOUND","Start path not found",404);throw e}r=i}if("grep"===n){let e=(0,y.enforceScope)(a.agent,{op:"read",workspaceId:u.id});if(!e.ok)return I("FORBIDDEN",e.message??"Forbidden",403);let t=await (0,A.rgRegexSearch)(c,s,{limit:o,timeoutMs:1e4,startPath:r});if(!t.ok&&"unavailable"===t.reason)return I("SEARCH_UNAVAILABLE","ripgrep not available; set WIKI_VIEWER_RG to override",503);if(!t.ok&&"invalid-pattern"===t.reason)return I("SEARCH_ERROR",t.message,400);let i=(t.ok?t.results:t.partialResults)??[],l=[];for(let e of i)if((0,y.enforceScope)(a.agent,{filePath:e.path,op:"read",workspaceId:u.id}).ok&&(l.push({path:e.path,line:e.line,col:e.col,text:e.text}),l.length>=o))break;let d=!t.ok||t.truncated;return x.NextResponse.json({kind:n,query:s,matches:l,truncated:d})}if("glob"===n){let e=(0,y.enforceScope)(a.agent,{op:"read",workspaceId:u.id});if(!e.ok)return I("FORBIDDEN",e.message??"Forbidden",403);let t=await (0,A.rgListFiles)(c,{limit:2e3,timeoutMs:1e4,startPath:r});if(!t.ok&&"unavailable"===t.reason)return I("SEARCH_UNAVAILABLE","ripgrep not available; set WIKI_VIEWER_RG to override",503);let i=(t.ok?t.results:t.partialResults)??[],l=[];for(let e of i){if(!(0,y.enforceScope)(a.agent,{filePath:e,op:"read",workspaceId:u.id}).ok)continue;let t=k.default.basename(e);if(((0,E.matchGlob)(s,e)||(0,E.matchGlob)(s,t))&&(l.push({path:e}),l.length>=o))break}let d=!t.ok||t.truncated;return x.NextResponse.json({kind:n,query:s,matches:l,truncated:d})}let d=(0,y.enforceScope)(a.agent,{op:"read",workspaceId:u.id});if(!d.ok)return I("FORBIDDEN",d.message??"Forbidden",403);let p=await (0,A.rgLiteralSearch)(c,s,{limit:o,timeoutMs:1e4,startPath:r});if(!p.ok&&"unavailable"===p.reason)return I("SEARCH_UNAVAILABLE","ripgrep not available; set WIKI_VIEWER_RG to override",503);let f=(p.ok?p.results:p.partialResults)??[],h=[];for(let e of f)if((0,y.enforceScope)(a.agent,{filePath:e.path,op:"read",workspaceId:u.id}).ok&&(h.push({path:e.path,score:e.score,snippet:e.firstMatch.snippet,line:e.firstMatch.line}),h.length>=o))break;let m=!p.ok||p.truncated;return x.NextResponse.json({kind:n,query:s,matches:h,truncated:m})}e.s(["POST",0,S,"runtime",0,"nodejs"],128310);var N=e.i(128310);let P=new t.AppRouteRouteModule({definition:{kind:r.RouteKind.APP_ROUTE,page:"/api/agent/fs/search/route",pathname:"/api/agent/fs/search",filename:"route",bundlePath:""},distDir:".next",relativeProjectDir:"",resolvedPagePath:"[project]/src/app/api/agent/fs/search/route.ts",nextConfigOutput:"standalone",userland:N,...{}}),{workAsyncStorage:M,workUnitAsyncStorage:D,serverHooks:C}=P;async function O(e,t,a){a.requestMeta&&(0,n.setRequestMeta)(e,a.requestMeta),P.isDev&&(0,n.addRequestMeta)(e,"devRequestTimingInternalsEnd",process.hrtime.bigint());let w="/api/agent/fs/search/route";w=w.replace(/\/index$/,"")||"/";let k=await P.prepare(e,t,{srcPage:w,multiZoneDraftMode:!1});if(!k)return t.statusCode=400,t.end("Bad Request"),null==a.waitUntil||a.waitUntil.call(a,Promise.resolve()),null;let{buildId:x,params:y,nextConfig:R,parsedUrl:_,isDraftMode:b,prerenderManifest:E,routerServerContext:A,isOnDemandRevalidate:I,revalidateOnlyGenerated:S,resolvedPathname:N,clientReferenceManifest:M,serverActionsManifest:D}=k,C=(0,o.normalizeAppPath)(w),O=!!(E.dynamicRoutes[C]||E.routes[N]),T=async()=>((null==A?void 0:A.render404)?await A.render404(e,t,_,!1):t.end("This page could not be found"),null);if(O&&!b){let e=!!E.routes[N],t=E.dynamicRoutes[C];if(t&&!1===t.fallback&&!e){if(R.adapterPath)return await T();throw new g.NoFallbackError}}let j=null;!O||P.isDev||b||(j="/index"===(j=N)?"/":j);let q=!0===P.isDev||!O,H=O&&!q;D&&M&&(0,i.setManifestsSingleton)({page:w,clientReferenceManifest:M,serverActionsManifest:D});let L=e.method||"GET",F=(0,s.getTracer)(),U=F.getActiveScopeSpan(),B=!!(null==A?void 0:A.isWrappedByNextServer),W=!!(0,n.getRequestMeta)(e,"minimalMode"),$=(0,n.getRequestMeta)(e,"incrementalCache")||await P.getIncrementalCache(e,R,E,W);null==$||$.resetRequestCache(),globalThis.__incrementalCache=$;let z={params:y,previewProps:E.preview,renderOpts:{experimental:{authInterrupts:!!R.experimental.authInterrupts},cacheComponents:!!R.cacheComponents,supportsDynamicResponse:q,incrementalCache:$,cacheLifeProfiles:R.cacheLife,waitUntil:a.waitUntil,onClose:e=>{t.on("close",e)},onAfterTaskError:void 0,onInstrumentationRequestError:(t,r,a,n)=>P.onRequestError(e,t,a,n,A)},sharedContext:{buildId:x}},G=new l.NodeNextRequest(e),K=new l.NodeNextResponse(t),V=u.NextRequestAdapter.fromNodeNextRequest(G,(0,u.signalFromNodeResponse)(t));try{let n,i=async e=>P.handle(V,z).finally(()=>{if(!e)return;e.setAttributes({"http.status_code":t.statusCode,"next.rsc":!1});let r=F.getRootSpanAttributes();if(!r)return;if(r.get("next.span_type")!==c.BaseServerSpan.handleRequest)return void console.warn(`Unexpected root span type '${r.get("next.span_type")}'. Please report this Next.js issue https://github.com/vercel/next.js`);let a=r.get("next.route");if(a){let t=`${L} ${a}`;e.setAttributes({"next.route":a,"http.route":a,"next.span_name":t}),e.updateName(t),n&&n!==e&&(n.setAttribute("http.route",a),n.updateName(t))}else e.updateName(`${L} ${w}`)}),o=async n=>{var s,o;let l=async({previousCacheEntry:r})=>{try{if(!W&&I&&S&&!r)return t.statusCode=404,t.setHeader("x-nextjs-cache","REVALIDATED"),t.end("This page could not be found"),null;let s=await i(n);e.fetchMetrics=z.renderOpts.fetchMetrics;let o=z.renderOpts.pendingWaitUntil;o&&a.waitUntil&&(a.waitUntil(o),o=void 0);let l=z.renderOpts.collectedTags;if(!O)return await (0,p.sendResponse)(G,K,s,z.renderOpts.pendingWaitUntil),null;{let e=await s.blob(),t=(0,f.toNodeOutgoingHttpHeaders)(s.headers);l&&(t[m.NEXT_CACHE_TAGS_HEADER]=l),!t["content-type"]&&e.type&&(t["content-type"]=e.type);let r=void 0!==z.renderOpts.collectedRevalidate&&!(z.renderOpts.collectedRevalidate>=m.INFINITE_CACHE)&&z.renderOpts.collectedRevalidate,a=void 0===z.renderOpts.collectedExpire||z.renderOpts.collectedExpire>=m.INFINITE_CACHE?void 0:z.renderOpts.collectedExpire;return{value:{kind:v.CachedRouteKind.APP_ROUTE,status:s.status,body:Buffer.from(await e.arrayBuffer()),headers:t},cacheControl:{revalidate:r,expire:a}}}}catch(t){throw(null==r?void 0:r.isStale)&&await P.onRequestError(e,t,{routerKind:"App Router",routePath:w,routeType:"route",revalidateReason:(0,d.getRevalidateReason)({isStaticGeneration:H,isOnDemandRevalidate:I})},!1,A),t}},u=await P.handleResponse({req:e,nextConfig:R,cacheKey:j,routeKind:r.RouteKind.APP_ROUTE,isFallback:!1,prerenderManifest:E,isRoutePPREnabled:!1,isOnDemandRevalidate:I,revalidateOnlyGenerated:S,responseGenerator:l,waitUntil:a.waitUntil,isMinimalMode:W});if(!O)return null;if((null==u||null==(s=u.value)?void 0:s.kind)!==v.CachedRouteKind.APP_ROUTE)throw Object.defineProperty(Error(`Invariant: app-route received invalid cache entry ${null==u||null==(o=u.value)?void 0:o.kind}`),"__NEXT_ERROR_CODE",{value:"E701",enumerable:!1,configurable:!0});W||t.setHeader("x-nextjs-cache",I?"REVALIDATED":u.isMiss?"MISS":u.isStale?"STALE":"HIT"),b&&t.setHeader("Cache-Control","private, no-cache, no-store, max-age=0, must-revalidate");let c=(0,f.fromNodeOutgoingHttpHeaders)(u.value.headers);return W&&O||c.delete(m.NEXT_CACHE_TAGS_HEADER),!u.cacheControl||t.getHeader("Cache-Control")||c.get("Cache-Control")||c.set("Cache-Control",(0,h.getCacheControlHeader)(u.cacheControl)),await (0,p.sendResponse)(G,K,new Response(u.value.body,{headers:c,status:u.value.status||200})),null};B&&U?await o(U):(n=F.getActiveScopeSpan(),await F.withPropagatedContext(e.headers,()=>F.trace(c.BaseServerSpan.handleRequest,{spanName:`${L} ${w}`,kind:s.SpanKind.SERVER,attributes:{"http.method":L,"http.target":e.url}},o),void 0,!B))}catch(t){if(t instanceof g.NoFallbackError||await P.onRequestError(e,t,{routerKind:"App Router",routePath:C,routeType:"route",revalidateReason:(0,d.getRevalidateReason)({isStaticGeneration:H,isOnDemandRevalidate:I})},!1,A),O)throw t;return await (0,p.sendResponse)(G,K,new Response(null,{status:500})),null}}e.s(["handler",0,O,"patchFetch",0,function(){return(0,a.patchFetch)({workAsyncStorage:M,workUnitAsyncStorage:D})},"routeModule",0,P,"serverHooks",0,C,"workAsyncStorage",0,M,"workUnitAsyncStorage",0,D],868593)},168315,e=>{e.v(t=>Promise.all(["server/chunks/0sag_@better-auth_memory-adapter_dist_index_mjs_0pvj6im._.js"].map(t=>e.l(t))).then(()=>t(862112)))},769787,e=>{e.v(t=>Promise.all(["server/chunks/01er_better-auth_dist_adapters_kysely-adapter_index_mjs_0s~-4gu._.js"].map(t=>e.l(t))).then(()=>t(717789)))},580632,e=>{e.v(e=>Promise.resolve().then(()=>e(270406)))},947559,e=>{e.v(t=>Promise.all(["server/chunks/0ugq_@better-auth_kysely-adapter_dist_bun-sqlite-dialect-DzNwOpKv_mjs_0z1z6m4._.js"].map(t=>e.l(t))).then(()=>t(495181)))},715018,e=>{e.v(t=>Promise.all(["server/chunks/0ugq_@better-auth_kysely-adapter_dist_node-sqlite-dialect_mjs_0qqlvhl._.js"].map(t=>e.l(t))).then(()=>t(698370)))},146843,e=>{e.v(t=>Promise.all(["server/chunks/0ugq_@better-auth_kysely-adapter_dist_d1-sqlite-dialect-C2B7YsIT_mjs_0wynrz3._.js"].map(t=>e.l(t))).then(()=>t(143740)))},697743,e=>{e.v(t=>Promise.all(["server/chunks/0.u4_next_05jevxw._.js"].map(t=>e.l(t))).then(()=>t(428325)))},99243,e=>{e.v(e=>Promise.resolve().then(()=>e(313414)))},893412,e=>{e.v(e=>Promise.resolve().then(()=>e(499465)))},687903,e=>{e.v(e=>Promise.resolve().then(()=>e(912714)))},267328,e=>{e.v(t=>Promise.all(["server/chunks/src_lib_fs_mounts_ts_0ksy80l._.js"].map(t=>e.l(t))).then(()=>t(60845)))}];
1
+ module.exports=[857764,(e,t,r)=>{t.exports=e.x("node:url",()=>require("node:url"))},536654,e=>{"use strict";var t=e.i(912714),r=e.i(750227);function a(e){return!!(r.default.isAbsolute(e)||".."===e||e.startsWith(".."+r.default.sep)||e.startsWith("../"))}async function n(e,s,i={}){let o;if(!e)return null;let l=function(e){if(e.includes("\0")||r.default.isAbsolute(e))return null;let t=e.replace(/\\/g,"/");return(("."===(t=r.default.posix.normalize(t))||"./"===t)&&(t=""),".."===t||t.startsWith("../")||/^[a-zA-Z]:\//.test(t)||t.startsWith("/"))?null:t}(s);if(null===l)return null;if(i.deniedSegments?.length){for(let e of l.split("/").filter(Boolean))if(i.deniedSegments.includes(e))return null}try{o=await (0,t.realpath)(e)}catch{return null}let u=l?r.default.join(o,l):o;try{let e=await (0,t.realpath)(u),n=r.default.relative(o,e);if(a(n))return null;return{relPath:l,absolutePath:e}}catch{if(!i.allowMissing)return null;let e=u;for(;;){let n=r.default.dirname(e);if(n===e)break;try{let e=await (0,t.realpath)(n),s=r.default.relative(o,e);if(a(s))return null;return{relPath:l,absolutePath:u}}catch{e=n}}return null}}e.s(["resolveWorkspacePath",0,n])},848475,e=>{"use strict";var t=e.i(750227);let r={".md":"text/markdown; charset=utf-8",".markdown":"text/markdown; charset=utf-8",".mdx":"text/markdown; charset=utf-8",".txt":"text/plain; charset=utf-8",".json":"application/json; charset=utf-8",".jsonc":"application/json; charset=utf-8",".ts":"text/typescript; charset=utf-8",".tsx":"text/typescript; charset=utf-8",".mts":"text/typescript; charset=utf-8",".js":"text/javascript; charset=utf-8",".jsx":"text/javascript; charset=utf-8",".mjs":"text/javascript; charset=utf-8",".html":"text/html; charset=utf-8",".htm":"text/html; charset=utf-8",".css":"text/css; charset=utf-8",".yaml":"text/yaml; charset=utf-8",".yml":"text/yaml; charset=utf-8",".toml":"text/toml; charset=utf-8",".xml":"application/xml; charset=utf-8",".svg":"image/svg+xml",".png":"image/png",".jpg":"image/jpeg",".jpeg":"image/jpeg",".gif":"image/gif",".webp":"image/webp",".avif":"image/avif",".ico":"image/x-icon",".bmp":"image/bmp",".pdf":"application/pdf",".zip":"application/zip",".tar":"application/x-tar",".gz":"application/gzip",".py":"text/x-python; charset=utf-8",".rs":"text/x-rustsrc; charset=utf-8",".go":"text/x-go; charset=utf-8",".sh":"text/x-shellscript; charset=utf-8",".csv":"text/csv; charset=utf-8",".tsv":"text/tab-separated-values; charset=utf-8",".env":"text/plain; charset=utf-8",".log":"text/plain; charset=utf-8",".ini":"text/plain; charset=utf-8",".conf":"text/plain; charset=utf-8",".mmd":"text/plain; charset=utf-8",".ipynb":"application/json; charset=utf-8",".docx":"application/vnd.openxmlformats-officedocument.wordprocessingml.document",".xlsx":"application/vnd.openxmlformats-officedocument.spreadsheetml.sheet",".pptx":"application/vnd.openxmlformats-officedocument.presentationml.presentation",".doc":"application/msword",".xls":"application/vnd.ms-excel",".ppt":"application/vnd.ms-powerpoint",".mp4":"video/mp4",".webm":"video/webm",".mov":"video/quicktime",".m4v":"video/mp4",".mp3":"audio/mpeg",".wav":"audio/wav",".ogg":"audio/ogg",".m4a":"audio/mp4",".aac":"audio/aac"};e.s(["contentTypeForPath",0,function(e){return r[t.default.extname(e).toLowerCase()]??"application/octet-stream"}])},719126,e=>{"use strict";var t=e.i(666680),r=e.i(912714),a=e.i(750227),n=e.i(716234),s=e.i(536654),i=e.i(848475);async function o(e,t){if(!e)return null;let r=await (0,s.resolveWorkspacePath)(e,t,{allowMissing:!0,deniedSegments:n.DENIED_SEGMENTS});return r?.absolutePath??null}async function l(e,t){let a=420;try{let t=await (0,r.stat)(e);a=511&t.mode}catch{}let n=e+".~"+process.pid+"."+Date.now()+".tmp",s=await (0,r.open)(n,"w",a);try{await s.write(t),await s.datasync()}finally{await s.close()}await (0,r.rename)(n,e)}async function u(e,t){let n=a.default.dirname(e);if(t)return await (0,r.mkdir)(n,{recursive:!0}),!0;try{return await (0,r.stat)(n),!0}catch{return!1}}e.s(["atomicWrite",0,l,"ensureParentDir",0,u,"extractShaHex",0,function(e){return e.replace(/^"/,"").replace(/"$/,"").replace(/^sha256:/,"")},"isDeniedRelPath",0,function(e){let t=e.replace(/\\/g,"/");return n.DENIED_SEGMENTS.some(e=>t===e||t.startsWith(e+"/"))},"isMarkdown",0,function(e){return e.endsWith(".md")||e.endsWith(".markdown")},"looksLikeBinary",0,function(e){return e.slice(0,Math.min(e.length,8192)).includes(0)},"mimeByExt",0,function(e){return(0,i.contentTypeForPath)(e)},"safeAbsPath",0,o,"sha256ofBuf",0,function(e){return"sha256:"+(0,t.createHash)("sha256").update(e).digest("hex")}])},814747,(e,t,r)=>{t.exports=e.x("path",()=>require("path"))},224361,(e,t,r)=>{t.exports=e.x("util",()=>require("util"))},688947,(e,t,r)=>{t.exports=e.x("stream",()=>require("stream"))},427699,(e,t,r)=>{t.exports=e.x("events",()=>require("events"))},228064,e=>{"use strict";var t=e.i(666680),r=e.i(912714),a=e.i(660526),n=e.i(750227),s=e.i(832852);let i="__registry__",o=new Map;function l(){let e=process.env.HOME??a.default.homedir();return n.default.join(e,".wiki-viewer")}function u(){return n.default.join(l(),"agents.json")}function c(e){return(0,t.createHash)("sha256").update(e,"utf8").digest("hex")}async function d(){try{let e=await (0,r.readFile)(u(),"utf8"),t=JSON.parse(e);return{version:1,agents:Array.isArray(t.agents)?t.agents:[]}}catch{return null}}async function p(e){await (0,r.mkdir)(l(),{recursive:!0});let t=u()+".tmp";await (0,r.writeFile)(t,JSON.stringify(e,null,2),{encoding:"utf8",mode:384});try{await (0,r.chmod)(t,384)}catch{}await (0,r.rename)(t,u())}async function f(){let e=await d();if(e)return e;let t={version:1,agents:[]};return await p(t),t}async function h(e){let r=await d();if(!r)return null;let a=c(e);for(let e of r.agents)if(function(e,r){let a=Buffer.from(e.padEnd(64,"0"),"utf8"),n=Buffer.from(r.padEnd(64,"0"),"utf8");return a.length===n.length&&(0,t.timingSafeEqual)(a,n)&&e.length===r.length}(e.tokenHash,a))return e;return null}async function m(e){let t=await d();return t?t.agents.find(t=>t.id===e)??null:null}async function g(e){await (0,s.withFileMutex)(i,async()=>{let t=await f(),r=t.agents.findIndex(t=>t.id===e.id);r>=0?t.agents[r]=e:t.agents.push(e),await p(t)})}async function v(e){return(0,s.withFileMutex)(i,async()=>{let t=await d();if(!t)return!1;let r=t.agents.length;return t.agents=t.agents.filter(t=>t.id!==e),t.agents.length!==r&&(await p(t),!0)})}async function w(e){Date.now()-(o.get(e)??0)<3e4||await (0,s.withFileMutex)(i,async()=>{let t=await d();if(!t)return;let r=t.agents.find(t=>t.id===e);r&&(r.lastSeen=new Date().toISOString(),o.set(e,Date.now()),await p(t))}).catch(()=>{})}e.s(["addAgent",0,g,"hashToken",0,c,"lookupAgentById",0,m,"lookupAgentByToken",0,h,"readRegistry",0,d,"removeAgent",0,v,"updateLastSeen",0,w])},215043,552350,e=>{"use strict";var t=e.i(228064);function r(e,t){return(function(e){let t="^",r=0;for(;r<e.length;)"*"===e[r]&&"*"===e[r+1]?(t+=".*","/"===e[r+=2]&&(t+="(?:.+/)?",r++)):("*"===e[r]?t+="[^/]*":"?"===e[r]?t+="[^/]":t+=e[r].replace(/[.+^${}()|[\]\\]/g,"\\$&"),r++);return new RegExp(t+="$")})(e).test(t)}e.s(["matchGlob",0,r],552350);var a=e.i(254226);async function n(e){let r=await (0,a.getSessionFromRequest)(e);if(r?.user){let e=r.user;return{ok:!0,agent:{id:`user:${e.id}`,displayName:e.name,tokenHash:"",scope:{paths:["**/*"],ops:["read","mutate","delete"]},createdAt:"",lastSeen:""}}}let n=e.headers.get("authorization")??"",s=n.startsWith("Bearer ")?n.slice(7).trim():"";if(!s)return{ok:!1,code:"UNAUTHORIZED",message:"No credentials"};let i=await (0,t.lookupAgentByToken)(s);if(!i)return{ok:!1,code:"UNAUTHORIZED",message:"Unknown or invalid token"};let o=e.headers.get("x-agent-id")??"";return o?o!==i.id?{ok:!1,code:"UNAUTHORIZED",message:"X-Agent-Id does not match token owner"}:((0,t.updateLastSeen)(i.id),{ok:!0,agent:i}):{ok:!1,code:"UNAUTHORIZED",message:"X-Agent-Id header required"}}process.env.AGENT_BEARER_TOKEN&&console.warn("[wiki-viewer] AGENT_BEARER_TOKEN is no longer used; manage agents via the AI Panel."),e.s(["checkAuth",0,n,"enforceScope",0,function(e,t){let{scope:a}=e;return void 0!==a.workspaceId&&void 0!==t.workspaceId&&a.workspaceId!==t.workspaceId?{ok:!1,code:"FORBIDDEN",message:`Agent scope does not cover workspace "${t.workspaceId}" (granted: "${a.workspaceId}")`}:a.ops.includes(t.op)?t.filePath&&!a.paths.some(e=>r(e,t.filePath))?{ok:!1,code:"FORBIDDEN",message:`Agent scope does not cover path "${t.filePath}"`}:{ok:!0}:{ok:!1,code:"FORBIDDEN",message:`Agent scope does not allow "${t.op}"`}},"verifyBy",0,function(e,t){return e.id.startsWith("user:")?!t||"owner"===t||"human"===t||t.startsWith("human:")||t===e.id?{ok:!0}:{ok:!1,code:"FORBIDDEN",message:'User agent must use "human", "owner", or own id in "by" field'}:t!==e.id?{ok:!1,code:"FORBIDDEN",message:`"by" field must equal agent id "${e.id}"`}:{ok:!0}}],215043)},844376,(e,t,r)=>{t.exports=e.x("node:module",()=>require("node:module"))},511745,883129,e=>{"use strict";let t;var r=e.i(874533),a=e.i(750227),n=e.i(844376),s=e.i(812057),i=e.i(902157),o=e.i(857764);let l={get url(){return`file://${e.P("src/lib/search/rg-path.ts")}`}},u=(0,s.promisify)(r.execFile);function c(e){try{let t=(0,i.statSync)(e);return t.isFile()&&(73&t.mode)!=0}catch{return!1}}function d(e,t,r){let n=a.default.resolve(e);for(let e=0;e<=t;e++){let e=a.default.join(n,r);if(c(e))return e;let t=a.default.dirname(n);if(t===n)break;n=t}return null}async function p(){try{return await u("rg",["--version"]),"rg"}catch{return null}}async function f(){if(void 0!==t)return t;let e=process.env.WIKI_VIEWER_RG;if(e&&c(e))return t=e;let r=process.env.npm_config_arch||process.arch,s=`@vscode/ripgrep-${process.platform}-${r}`;try{let e=(0,o.fileURLToPath)(l.resolve("@vscode/ripgrep")),r=(0,n.createRequire)(e).resolve(`${s}/bin/rg`);if(c(r))return t=r}catch{}let i=a.default.join("node_modules",s,"bin","rg"),u=d(process.cwd(),5,i);if(u)return t=u;let f=a.default.dirname(process.execPath);if(f!==process.cwd()){let e=d(f,5,i);if(e)return t=e}return t=await p()}function h(e){return e.replace(/<\/?mark>/g,"")}function m(e,t,r={}){let a=r.window??60;if(!t.length)return h(e);let n=Buffer.from(e,"utf8"),s=n.length,i=[...t].sort((e,t)=>e.start-t.start),o=i[0],l=Math.floor((o.start+o.end)/2),u=Math.max(0,l-a),c=Math.min(s,l+a);for(;u>0&&(192&n[u])==128;)u++;for(;c<s&&(192&n[c])==128;)c--;let d=i.filter(e=>e.start<c&&e.end>u),p=[],f=u;for(let e of d){let t=Math.max(u,e.start),r=Math.min(c,e.end);t>f&&p.push({text:n.toString("utf8",f,t),mark:!1}),r>t&&p.push({text:n.toString("utf8",t,r),mark:!0}),f=r}f<c&&p.push({text:n.toString("utf8",f,c),mark:!1});let g="";for(let e of(u>0&&(g+="…"),p)){let t=h(e.text);g+=e.mark?`<mark>${t}</mark>`:t}return c<s&&(g+="…"),g}e.s(["buildSnippet",0,m],883129);var g=e.i(719126);let v=null;async function w(){if(v)return v;try{let t=await e.A(267328);return v=t,t}catch{return v={nestedHazardMounts:()=>[],rootIsHazardMount:()=>!1}}}let k=[".git",".pi",".proof","node_modules",".next"];async function x(e){let t=[];for(let e of k)t.push("--glob",`!${e}/**`);for(let r of(await w()).nestedHazardMounts(e)){let n=a.default.relative(e,r);!n||n.startsWith("..")||a.default.isAbsolute(n)||(n=n.replace(/\\/g,"/"),t.push("--glob",`!${n}/**`))}return t}async function y(e){let t=["--json","--no-config","--no-messages","--no-follow","--hidden","--no-ignore","--max-filesize","2M","--crlf"];return(await w()).rootIsHazardMount(e)&&t.push("--no-mmap"),t.push(...await x(e)),t.push("--glob","!*.excalidraw"),t}function R(e){let t=e.replace(/\\/g,"/");return a.default.isAbsolute(t)||(t=a.default.normalize(t).replace(/\\/g,"/")).startsWith("..")||"."===t||(0,g.isDeniedRelPath)(t)?null:t}function _(e){try{e.kill("SIGTERM")}catch{}setTimeout(()=>{try{e.kill("SIGKILL")}catch{}},2e3)}function b(e,t,a,n,s,i,o){return new Promise(l=>{if(s.signal?.aborted)return void l({outcome:"aborted",code:null,stderr:"",truncated:!0});let u=(0,r.spawn)(e,t,{cwd:a,stdio:["ignore","pipe","pipe"],env:{...process.env,RIPGREP_CONFIG_PATH:""}}),c="",d="",p=!1,f=!1,h=null,m=e=>{p||(p=!0,clearTimeout(g),v?.removeEventListener("abort",w),l({outcome:e,code:h,stderr:d,truncated:f}))},g=setTimeout(()=>{f=!0,_(u),m("timeout")},s.timeoutMs),v=s.signal,w=()=>{f=!0,_(u),m("aborted")};v?.addEventListener("abort",w,{once:!0}),u.stdout?.on("data",e=>{if(c+=e.toString("utf8"),n){let e=c.split("\n");for(let t of(c=e.pop()??"",e)){let e;if(t.trim()){try{e=JSON.parse(t)}catch{continue}if("cap"===i(e)){f=!0,_(u),m("success");return}}}}else if(o){let e=c.split("\n");for(let t of(c=e.pop()??"",e))if(t&&"cap"===o(t)){f=!0,_(u),m("success");return}}}),u.stderr?.on("data",e=>{d+=e.toString("utf8")}),u.on("error",e=>{h=-1,d=e.message,m("error")}),u.on("close",e=>{if(h=e,!p){if(n&&c.trim())try{let e=JSON.parse(c.trim());i(e)}catch{}else!n&&o&&c&&o(c);0===e||1===e?m("success"):m("error")}})})}async function E(e,t,r={}){let a=t.trim();if(!a)return{ok:!0,results:[],truncated:!1};let n=a.split(/\s+/).slice(0,8).map(e=>e.endsWith("*")?e.slice(0,-1):e);if(0===n.length)return{ok:!0,results:[],truncated:!1};let s=await f();if(!s)return{ok:!1,reason:"unavailable",message:"ripgrep binary not found"};let i=new Map,o=r.limit??200,l=0,u=await y(e);for(let e of(u.push("--fixed-strings","--ignore-case"),n))u.push("-e",e);u.push("--",r.startPath??".");let c={timeoutMs:r.timeoutMs??1e4,signal:r.signal},d=await b(s,u,e,!0,c,e=>{if("match"!==e.type)return"continue";let t=e.data;if(!t)return"continue";let r=R(t.path.text);if(!r)return"continue";let a=(t.submatches??[]).map(e=>({start:e.start,end:e.end})),s=t.lines.text.replace(/\r?\n$/,""),u=m(s,a),c={path:r,line:t.line_number,col:a[0]?.start!=null?a[0].start+1:1,text:s,snippet:u},d=c.text.toLowerCase(),p=new Set;for(let e=0;e<n.length;e++)d.includes(n[e].toLowerCase())&&p.add(e);let f=i.get(r);for(let e of(f||(f={path:r,matches:[],tokenSet:new Set},i.set(r,f)),p))f.tokenSet.add(e);return(f.matches.push(c),++l>=o)?"cap":"continue"}),p=n.length,h=[];for(let e of i.values()){if(e.tokenSet.size<p)continue;let t=e.matches.sort((e,t)=>e.line-t.line)[0],r=e.tokenSet.size/p*1e3+Math.min(e.matches.length,100);h.push({path:e.path,matchCount:e.matches.length,tokensMatched:e.tokenSet.size,score:r,firstMatch:t})}return(h.sort((e,t)=>t.tokensMatched!==e.tokensMatched?t.tokensMatched-e.tokensMatched:t.matchCount!==e.matchCount?t.matchCount-e.matchCount:e.path.localeCompare(t.path)),"success"===d.outcome)?2===d.code?{ok:!1,reason:"error",message:d.stderr.trim().split("\n")[0]??"rg error",partialResults:h}:{ok:!0,results:h,truncated:d.truncated}:"timeout"===d.outcome?{ok:!1,reason:"timeout",message:"Search timed out",partialResults:h}:{ok:!1,reason:"error",message:d.stderr||"Search failed",partialResults:h}}async function A(e,t,r,a,n){var s,i;let o=[],l=a.limit??200,u=0,c=await y(t);n&&c.push("--pcre2"),c.push("-e",r),c.push("--",a.startPath??".");let d=await b(e,c,t,!0,{timeoutMs:a.timeoutMs??1e4,signal:a.signal},e=>{if("match"!==e.type)return"continue";let t=e.data;if(!t)return"continue";let r=R(t.path.text);if(!r)return"continue";let a=t.submatches??[];return(o.push({path:r,line:t.line_number,col:a[0]?.start!=null?a[0].start+1:1,text:t.lines.text.replace(/\r?\n$/,"")}),++u>=l)?"cap":"continue"});return{outcome:(s=d,i=o,"timeout"===s.outcome?{ok:!1,reason:"timeout",message:"Search timed out",partialResults:i}:"aborted"===s.outcome?{ok:!1,reason:"error",message:"Search aborted",partialResults:i}:"error"===s.outcome||2===s.code?{ok:!1,reason:"error",message:s.stderr.trim().split("\n")[0]??"rg error",partialResults:i}:{ok:!0,results:i,truncated:s.truncated}),stderr:d.stderr,code:d.code}}function I(e){let t=e.toLowerCase();return t.includes("look-around")||t.includes("lookaround")||t.includes("backreference")||t.includes("back-reference")||t.includes("lookahead")||t.includes("lookbehind")}function S(e){let t=e.toLowerCase();return t.includes("regex")||t.includes("pattern")||t.includes("parse")||t.includes("syntax")||t.includes("unclosed")||I(t)}async function N(e,t,r={}){let a=t.trim();if(!a)return{ok:!0,results:[],truncated:!1};let n=await f();if(!n)return{ok:!1,reason:"unavailable",message:"ripgrep binary not found"};let s=await A(n,e,a,r,!1);if(!s.outcome.ok&&"error"===s.outcome.reason&&I(s.stderr)){let t=await A(n,e,a,r,!0);return!t.outcome.ok&&"error"===t.outcome.reason&&S(t.stderr)?{ok:!1,reason:"invalid-pattern",message:t.stderr.trim().split("\n")[0]??"Invalid regex pattern",partialResults:t.outcome.partialResults}:t.outcome}return!s.outcome.ok&&"error"===s.outcome.reason&&S(s.stderr)?{ok:!1,reason:"invalid-pattern",message:s.stderr.trim().split("\n")[0]??"Invalid regex pattern",partialResults:s.outcome.partialResults}:s.outcome}async function P(e,t={}){let r=await f();if(!r)return{ok:!1,reason:"unavailable",message:"ripgrep binary not found"};let a=[],n=t.limit??2e3,s=["--no-config","--no-messages","--no-follow","--hidden","--no-ignore","--crlf"];(await w()).rootIsHazardMount(e)&&s.push("--no-mmap"),s.push(...await x(e)),s.push("--files","--",t.startPath??".");let i=await b(r,s,e,!1,{timeoutMs:t.timeoutMs??1e4,signal:t.signal},()=>"continue",e=>{let t=e.trim();if(!t)return"continue";let r=R(t);return r&&(a.push(r),a.length>=n)?"cap":"continue"});return"success"===i.outcome?{ok:!0,results:a,truncated:i.truncated}:{ok:!1,reason:"timeout"===i.outcome?"timeout":"error",message:i.stderr||"rg --files failed",partialResults:a}}e.s(["rgListFiles",0,P,"rgLiteralSearch",0,E,"rgRegexSearch",0,N],511745)},868593,e=>{"use strict";var t=e.i(985426),r=e.i(257574),a=e.i(507835),n=e.i(457789),s=e.i(119791),i=e.i(141062),o=e.i(957291),l=e.i(535899),u=e.i(610241),c=e.i(62749),d=e.i(624891),p=e.i(725836),f=e.i(532736),h=e.i(257858),m=e.i(487476),g=e.i(193695);e.i(484264);var v=e.i(315709),w=e.i(912714),k=e.i(750227),x=e.i(351216),y=e.i(215043),R=e.i(660038),_=e.i(359211),b=e.i(719126),E=e.i(552350),A=e.i(511745);function I(e,t,r){return x.NextResponse.json({error:e,message:t},{status:r})}async function S(e){let t,r,a=await (0,y.checkAuth)(e);if(!a.ok)return I("UNAUTHORIZED",a.message??"Unauthorized",401);try{t=await e.json()}catch{return I("INVALID_PAYLOAD","Invalid JSON body",400)}if("grep"!==t.kind&&"glob"!==t.kind&&"fts"!==t.kind)return I("INVALID_PAYLOAD",'kind must be "grep", "glob", or "fts"',400);if("string"!=typeof t.query||"fts"!==t.kind&&!t.query)return I("INVALID_PAYLOAD","query (string) required",400);let n=t.kind,s=t.query,i="string"==typeof t.path?t.path:"",o=Math.min("number"==typeof t.limit?t.limit:200,2e3),l=await (0,R.resolveWorkspaceForAgent)(e);if(!l.ok)return I(l.code,l.code,l.status);let{ws:u,rootDir:c}=l;if(i){if(!(0,_.safeWorkspacePath)(c,i))return I("INVALID_PATH","path: traversal rejected",400);if(!await (0,b.safeAbsPath)(c,i))return I("INVALID_PATH","path: rejected (symlink escape or denied)",400)}if(i){try{if(!(await (0,w.stat)(k.default.join(c,i))).isDirectory())return I("NOT_A_DIRECTORY","path must be a directory",400)}catch(e){if("ENOENT"===e.code)return I("NOT_FOUND","Start path not found",404);throw e}r=i}if("grep"===n){let e=(0,y.enforceScope)(a.agent,{op:"read",workspaceId:u.id});if(!e.ok)return I("FORBIDDEN",e.message??"Forbidden",403);let t=await (0,A.rgRegexSearch)(c,s,{limit:o,timeoutMs:1e4,startPath:r});if(!t.ok&&"unavailable"===t.reason)return I("SEARCH_UNAVAILABLE","ripgrep not available; set WIKI_VIEWER_RG to override",503);if(!t.ok&&"invalid-pattern"===t.reason)return I("SEARCH_ERROR",t.message,400);let i=(t.ok?t.results:t.partialResults)??[],l=[];for(let e of i)if((0,y.enforceScope)(a.agent,{filePath:e.path,op:"read",workspaceId:u.id}).ok&&(l.push({path:e.path,line:e.line,col:e.col,text:e.text}),l.length>=o))break;let d=!t.ok||t.truncated;return x.NextResponse.json({kind:n,query:s,matches:l,truncated:d})}if("glob"===n){let e=(0,y.enforceScope)(a.agent,{op:"read",workspaceId:u.id});if(!e.ok)return I("FORBIDDEN",e.message??"Forbidden",403);let t=await (0,A.rgListFiles)(c,{limit:2e3,timeoutMs:1e4,startPath:r});if(!t.ok&&"unavailable"===t.reason)return I("SEARCH_UNAVAILABLE","ripgrep not available; set WIKI_VIEWER_RG to override",503);let i=(t.ok?t.results:t.partialResults)??[],l=[];for(let e of i){if(!(0,y.enforceScope)(a.agent,{filePath:e,op:"read",workspaceId:u.id}).ok)continue;let t=k.default.basename(e);if(((0,E.matchGlob)(s,e)||(0,E.matchGlob)(s,t))&&(l.push({path:e}),l.length>=o))break}let d=!t.ok||t.truncated;return x.NextResponse.json({kind:n,query:s,matches:l,truncated:d})}let d=(0,y.enforceScope)(a.agent,{op:"read",workspaceId:u.id});if(!d.ok)return I("FORBIDDEN",d.message??"Forbidden",403);let p=await (0,A.rgLiteralSearch)(c,s,{limit:o,timeoutMs:1e4,startPath:r});if(!p.ok&&"unavailable"===p.reason)return I("SEARCH_UNAVAILABLE","ripgrep not available; set WIKI_VIEWER_RG to override",503);let f=(p.ok?p.results:p.partialResults)??[],h=[];for(let e of f)if((0,y.enforceScope)(a.agent,{filePath:e.path,op:"read",workspaceId:u.id}).ok&&(h.push({path:e.path,score:e.score,snippet:e.firstMatch.snippet,line:e.firstMatch.line}),h.length>=o))break;let m=!p.ok||p.truncated;return x.NextResponse.json({kind:n,query:s,matches:h,truncated:m})}e.s(["POST",0,S,"runtime",0,"nodejs"],128310);var N=e.i(128310);let P=new t.AppRouteRouteModule({definition:{kind:r.RouteKind.APP_ROUTE,page:"/api/agent/fs/search/route",pathname:"/api/agent/fs/search",filename:"route",bundlePath:""},distDir:".next",relativeProjectDir:"",resolvedPagePath:"[project]/src/app/api/agent/fs/search/route.ts",nextConfigOutput:"standalone",userland:N,...{}}),{workAsyncStorage:M,workUnitAsyncStorage:D,serverHooks:C}=P;async function O(e,t,a){a.requestMeta&&(0,n.setRequestMeta)(e,a.requestMeta),P.isDev&&(0,n.addRequestMeta)(e,"devRequestTimingInternalsEnd",process.hrtime.bigint());let w="/api/agent/fs/search/route";w=w.replace(/\/index$/,"")||"/";let k=await P.prepare(e,t,{srcPage:w,multiZoneDraftMode:!1});if(!k)return t.statusCode=400,t.end("Bad Request"),null==a.waitUntil||a.waitUntil.call(a,Promise.resolve()),null;let{buildId:x,params:y,nextConfig:R,parsedUrl:_,isDraftMode:b,prerenderManifest:E,routerServerContext:A,isOnDemandRevalidate:I,revalidateOnlyGenerated:S,resolvedPathname:N,clientReferenceManifest:M,serverActionsManifest:D}=k,C=(0,o.normalizeAppPath)(w),O=!!(E.dynamicRoutes[C]||E.routes[N]),T=async()=>((null==A?void 0:A.render404)?await A.render404(e,t,_,!1):t.end("This page could not be found"),null);if(O&&!b){let e=!!E.routes[N],t=E.dynamicRoutes[C];if(t&&!1===t.fallback&&!e){if(R.adapterPath)return await T();throw new g.NoFallbackError}}let j=null;!O||P.isDev||b||(j="/index"===(j=N)?"/":j);let q=!0===P.isDev||!O,H=O&&!q;D&&M&&(0,i.setManifestsSingleton)({page:w,clientReferenceManifest:M,serverActionsManifest:D});let L=e.method||"GET",F=(0,s.getTracer)(),U=F.getActiveScopeSpan(),B=!!(null==A?void 0:A.isWrappedByNextServer),W=!!(0,n.getRequestMeta)(e,"minimalMode"),$=(0,n.getRequestMeta)(e,"incrementalCache")||await P.getIncrementalCache(e,R,E,W);null==$||$.resetRequestCache(),globalThis.__incrementalCache=$;let z={params:y,previewProps:E.preview,renderOpts:{experimental:{authInterrupts:!!R.experimental.authInterrupts},cacheComponents:!!R.cacheComponents,supportsDynamicResponse:q,incrementalCache:$,cacheLifeProfiles:R.cacheLife,waitUntil:a.waitUntil,onClose:e=>{t.on("close",e)},onAfterTaskError:void 0,onInstrumentationRequestError:(t,r,a,n)=>P.onRequestError(e,t,a,n,A)},sharedContext:{buildId:x}},G=new l.NodeNextRequest(e),K=new l.NodeNextResponse(t),V=u.NextRequestAdapter.fromNodeNextRequest(G,(0,u.signalFromNodeResponse)(t));try{let n,i=async e=>P.handle(V,z).finally(()=>{if(!e)return;e.setAttributes({"http.status_code":t.statusCode,"next.rsc":!1});let r=F.getRootSpanAttributes();if(!r)return;if(r.get("next.span_type")!==c.BaseServerSpan.handleRequest)return void console.warn(`Unexpected root span type '${r.get("next.span_type")}'. Please report this Next.js issue https://github.com/vercel/next.js`);let a=r.get("next.route");if(a){let t=`${L} ${a}`;e.setAttributes({"next.route":a,"http.route":a,"next.span_name":t}),e.updateName(t),n&&n!==e&&(n.setAttribute("http.route",a),n.updateName(t))}else e.updateName(`${L} ${w}`)}),o=async n=>{var s,o;let l=async({previousCacheEntry:r})=>{try{if(!W&&I&&S&&!r)return t.statusCode=404,t.setHeader("x-nextjs-cache","REVALIDATED"),t.end("This page could not be found"),null;let s=await i(n);e.fetchMetrics=z.renderOpts.fetchMetrics;let o=z.renderOpts.pendingWaitUntil;o&&a.waitUntil&&(a.waitUntil(o),o=void 0);let l=z.renderOpts.collectedTags;if(!O)return await (0,p.sendResponse)(G,K,s,z.renderOpts.pendingWaitUntil),null;{let e=await s.blob(),t=(0,f.toNodeOutgoingHttpHeaders)(s.headers);l&&(t[m.NEXT_CACHE_TAGS_HEADER]=l),!t["content-type"]&&e.type&&(t["content-type"]=e.type);let r=void 0!==z.renderOpts.collectedRevalidate&&!(z.renderOpts.collectedRevalidate>=m.INFINITE_CACHE)&&z.renderOpts.collectedRevalidate,a=void 0===z.renderOpts.collectedExpire||z.renderOpts.collectedExpire>=m.INFINITE_CACHE?void 0:z.renderOpts.collectedExpire;return{value:{kind:v.CachedRouteKind.APP_ROUTE,status:s.status,body:Buffer.from(await e.arrayBuffer()),headers:t},cacheControl:{revalidate:r,expire:a}}}}catch(t){throw(null==r?void 0:r.isStale)&&await P.onRequestError(e,t,{routerKind:"App Router",routePath:w,routeType:"route",revalidateReason:(0,d.getRevalidateReason)({isStaticGeneration:H,isOnDemandRevalidate:I})},!1,A),t}},u=await P.handleResponse({req:e,nextConfig:R,cacheKey:j,routeKind:r.RouteKind.APP_ROUTE,isFallback:!1,prerenderManifest:E,isRoutePPREnabled:!1,isOnDemandRevalidate:I,revalidateOnlyGenerated:S,responseGenerator:l,waitUntil:a.waitUntil,isMinimalMode:W});if(!O)return null;if((null==u||null==(s=u.value)?void 0:s.kind)!==v.CachedRouteKind.APP_ROUTE)throw Object.defineProperty(Error(`Invariant: app-route received invalid cache entry ${null==u||null==(o=u.value)?void 0:o.kind}`),"__NEXT_ERROR_CODE",{value:"E701",enumerable:!1,configurable:!0});W||t.setHeader("x-nextjs-cache",I?"REVALIDATED":u.isMiss?"MISS":u.isStale?"STALE":"HIT"),b&&t.setHeader("Cache-Control","private, no-cache, no-store, max-age=0, must-revalidate");let c=(0,f.fromNodeOutgoingHttpHeaders)(u.value.headers);return W&&O||c.delete(m.NEXT_CACHE_TAGS_HEADER),!u.cacheControl||t.getHeader("Cache-Control")||c.get("Cache-Control")||c.set("Cache-Control",(0,h.getCacheControlHeader)(u.cacheControl)),await (0,p.sendResponse)(G,K,new Response(u.value.body,{headers:c,status:u.value.status||200})),null};B&&U?await o(U):(n=F.getActiveScopeSpan(),await F.withPropagatedContext(e.headers,()=>F.trace(c.BaseServerSpan.handleRequest,{spanName:`${L} ${w}`,kind:s.SpanKind.SERVER,attributes:{"http.method":L,"http.target":e.url}},o),void 0,!B))}catch(t){if(t instanceof g.NoFallbackError||await P.onRequestError(e,t,{routerKind:"App Router",routePath:C,routeType:"route",revalidateReason:(0,d.getRevalidateReason)({isStaticGeneration:H,isOnDemandRevalidate:I})},!1,A),O)throw t;return await (0,p.sendResponse)(G,K,new Response(null,{status:500})),null}}e.s(["handler",0,O,"patchFetch",0,function(){return(0,a.patchFetch)({workAsyncStorage:M,workUnitAsyncStorage:D})},"routeModule",0,P,"serverHooks",0,C,"workAsyncStorage",0,M,"workUnitAsyncStorage",0,D],868593)},168315,e=>{e.v(t=>Promise.all(["server/chunks/0sag_@better-auth_memory-adapter_dist_index_mjs_0pvj6im._.js"].map(t=>e.l(t))).then(()=>t(862112)))},769787,e=>{e.v(t=>Promise.all(["server/chunks/01er_better-auth_dist_adapters_kysely-adapter_index_mjs_0s~-4gu._.js"].map(t=>e.l(t))).then(()=>t(717789)))},580632,e=>{e.v(e=>Promise.resolve().then(()=>e(270406)))},947559,e=>{e.v(t=>Promise.all(["server/chunks/0ugq_@better-auth_kysely-adapter_dist_bun-sqlite-dialect-DzNwOpKv_mjs_0z1z6m4._.js"].map(t=>e.l(t))).then(()=>t(495181)))},715018,e=>{e.v(t=>Promise.all(["server/chunks/0ugq_@better-auth_kysely-adapter_dist_node-sqlite-dialect_mjs_0qqlvhl._.js"].map(t=>e.l(t))).then(()=>t(698370)))},146843,e=>{e.v(t=>Promise.all(["server/chunks/0ugq_@better-auth_kysely-adapter_dist_d1-sqlite-dialect-C2B7YsIT_mjs_0wynrz3._.js"].map(t=>e.l(t))).then(()=>t(143740)))},697743,e=>{e.v(t=>Promise.all(["server/chunks/0.u4_next_05jevxw._.js"].map(t=>e.l(t))).then(()=>t(428325)))},99243,e=>{e.v(e=>Promise.resolve().then(()=>e(313414)))},893412,e=>{e.v(e=>Promise.resolve().then(()=>e(499465)))},687903,e=>{e.v(e=>Promise.resolve().then(()=>e(912714)))},267328,e=>{e.v(t=>Promise.all(["server/chunks/src_lib_fs_mounts_ts_0ksy80l._.js"].map(t=>e.l(t))).then(()=>t(60845)))}];
2
2
 
3
3
  //# sourceMappingURL=%5Broot-of-the-server%5D__10i6erq._.js.map