@henlii/pidance 0.2.11 → 0.2.13

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 (67) hide show
  1. package/.next/BUILD_ID +1 -1
  2. package/.next/app-path-routes-manifest.json +12 -12
  3. package/.next/build-manifest.json +2 -2
  4. package/.next/prerender-manifest.json +3 -3
  5. package/.next/required-server-files.json +1 -1
  6. package/.next/server/app/_global-error/page_client-reference-manifest.js +1 -1
  7. package/.next/server/app/_global-error.html +1 -1
  8. package/.next/server/app/_global-error.rsc +1 -1
  9. package/.next/server/app/_global-error.segments/_full.segment.rsc +1 -1
  10. package/.next/server/app/_global-error.segments/_global-error/__PAGE__.segment.rsc +1 -1
  11. package/.next/server/app/_global-error.segments/_global-error.segment.rsc +1 -1
  12. package/.next/server/app/_global-error.segments/_head.segment.rsc +1 -1
  13. package/.next/server/app/_global-error.segments/_index.segment.rsc +1 -1
  14. package/.next/server/app/_global-error.segments/_tree.segment.rsc +1 -1
  15. package/.next/server/app/_not-found/page_client-reference-manifest.js +1 -1
  16. package/.next/server/app/_not-found.html +1 -1
  17. package/.next/server/app/_not-found.rsc +2 -2
  18. package/.next/server/app/_not-found.segments/_full.segment.rsc +2 -2
  19. package/.next/server/app/_not-found.segments/_head.segment.rsc +1 -1
  20. package/.next/server/app/_not-found.segments/_index.segment.rsc +2 -2
  21. package/.next/server/app/_not-found.segments/_not-found/__PAGE__.segment.rsc +1 -1
  22. package/.next/server/app/_not-found.segments/_not-found.segment.rsc +1 -1
  23. package/.next/server/app/_not-found.segments/_tree.segment.rsc +1 -1
  24. package/.next/server/app/api/about/route.js +1 -1
  25. package/.next/server/app/api/attachments/route.js +1 -1
  26. package/.next/server/app/api/auth/ui-sessions/[id]/route.js +1 -1
  27. package/.next/server/app/api/cwd/browse/route.js +1 -1
  28. package/.next/server/app/api/cwd/validate/route.js +1 -1
  29. package/.next/server/app/api/default-cwd/route.js +1 -1
  30. package/.next/server/app/api/file-index/route.js +1 -1
  31. package/.next/server/app/api/files/[...path]/route.js +3 -3
  32. package/.next/server/app/api/models/route.js +1 -1
  33. package/.next/server/app/api/preferences/route.js +1 -1
  34. package/.next/server/app/api/project-assets/route.js +1 -1
  35. package/.next/server/app/api/sessions/[id]/route.js +1 -1
  36. package/.next/server/app/api/skills/route.js +2 -2
  37. package/.next/server/app/api/update/apply/route.js +2 -2
  38. package/.next/server/app/api/update/check/route.js +2 -2
  39. package/.next/server/app/api/worktrees/route.js +1 -1
  40. package/.next/server/app/index.html +1 -1
  41. package/.next/server/app/index.rsc +4 -4
  42. package/.next/server/app/index.segments/__PAGE__.segment.rsc +3 -3
  43. package/.next/server/app/index.segments/_full.segment.rsc +4 -4
  44. package/.next/server/app/index.segments/_head.segment.rsc +1 -1
  45. package/.next/server/app/index.segments/_index.segment.rsc +2 -2
  46. package/.next/server/app/index.segments/_tree.segment.rsc +1 -1
  47. package/.next/server/app/page.js +14 -14
  48. package/.next/server/app/page_client-reference-manifest.js +1 -1
  49. package/.next/server/app-paths-manifest.json +12 -12
  50. package/.next/server/chunks/188.js +1 -1
  51. package/.next/server/chunks/329.js +1 -1
  52. package/.next/server/chunks/5304.js +1 -0
  53. package/.next/server/chunks/5582.js +1 -1
  54. package/.next/server/chunks/6192.js +2 -2
  55. package/.next/server/chunks/7594.js +1 -1
  56. package/.next/server/instrumentation.js +1 -1
  57. package/.next/server/middleware-build-manifest.js +1 -1
  58. package/.next/server/pages/404.html +1 -1
  59. package/.next/server/pages/500.html +1 -1
  60. package/.next/server/server-reference-manifest.json +1 -1
  61. package/.next/static/chunks/9780-6c3a23bf3225b4e4.js +1 -0
  62. package/.next/static/chunks/app/page-b7557470a69f54d8.js +25 -0
  63. package/package.json +1 -1
  64. package/.next/static/chunks/9780-0fa59080a2704139.js +0 -1
  65. package/.next/static/chunks/app/page-1524e08b5e4e4a34.js +0 -25
  66. /package/.next/static/{3Ib_mKVkLPgOQQS2ZuNQ- → tSMtvUw39aEnL_q0KYTYU}/_buildManifest.js +0 -0
  67. /package/.next/static/{3Ib_mKVkLPgOQQS2ZuNQ- → tSMtvUw39aEnL_q0KYTYU}/_ssgManifest.js +0 -0
@@ -1,4 +1,4 @@
1
- "use strict";(()=>{var a={};a.id=4037,a.ids=[4037],a.modules={261:a=>{a.exports=require("next/dist/shared/lib/router/utils/app-paths")},400:(a,b,c)=>{c.d(b,{OJ:()=>o,Sk:()=>j,j0:()=>m});var d=c(89477),e=c.n(d),f=c(86697),g=c.n(f),h=c(716);let i="true"===process.env.SAVE_FSYNC;class j extends Error{constructor(a,b){super(b),this.code=a}}function k(a){return(a.split(/[\\/]+/).filter(Boolean).pop()??"").startsWith(".pi-save-")?"目标路径包含受保护名称":null}function l(a){return/^[a-zA-Z]:[\\/]/.test(a)||a.startsWith("\\\\")||a.startsWith("//")}function m(a,b,c=l(a)||l(b)){let d=c?g().win32:g(),e=d.resolve(a),f=d.resolve(b),h=c?e.toLowerCase():e,i=c?f.toLowerCase():f;return h!==i&&h.startsWith(i.endsWith(d.sep)?i:i+d.sep)}function n(a,b){let c=a?.code;if("ENOENT"===c)throw new j("not-found",b);if("EACCES"===c||"EPERM"===c)throw new j("forbidden","文件访问被拒绝");throw a}function o(a){let b,c,d,{target:f,cwd:l,allowedRoots:o,content:p,baseline:q}=a,r=k(f);if(r)throw new j("forbidden",r);let s=function(a,b){if(!Number.isFinite(b?.mtimeMs)||b.mtimeMs<0||!Number.isFinite(b?.size)||b.size<0)throw new j("bad-request","保存请求格式无效");for(let b=0;b<a.length;b+=1){let c=a.charCodeAt(b);if(c>=55296&&c<=57343){if(c<=56319&&b+1<a.length&&a.charCodeAt(b+1)>=56320&&57343>=a.charCodeAt(b+1)){b+=1;continue}throw new j("bad-request","内容包含不可逆 UTF-8 字符")}}return Buffer.from(a,"utf8")}(p,q),t=a.isAllowed??((a,b)=>[...b].some(b=>a===b||a.startsWith(`${b}/`)||a.startsWith(`${b}\\`)));if(!t(f,o))throw new j("forbidden","目标不在授权目录内");try{b=e().lstatSync(f)}catch(a){return n(a,"目标文件不存在")}if(b.isSymbolicLink())throw new j("forbidden","目标不能是符号链接");if(!b.isFile())throw new j("bad-request","目标不是常规文件");try{if(e().realpathSync(l),c=e().realpathSync(f),d=new Set([...o].map(a=>e().realpathSync(a))),k(c)||!t(c,d))throw new j("forbidden","目标不在授权目录内");for(let a=g().dirname(f);m(a,l);a=g().dirname(a))if(e().lstatSync(a).isSymbolicLink())throw new j("forbidden","目标父目录不能是符号链接")}catch(a){if(a instanceof j)throw a;return n(a,"目标路径不存在")}try{e().statSync(c)}catch(a){return n(a,"目标文件不存在")}let u=g().dirname(c),v=g().join(u,`.pi-save-${process.pid}-${(0,h.randomUUID)()}`);try{if(e().writeFileSync(v,s,{flag:"wx",mode:4095&b.mode}),e().chmodSync(v,4095&b.mode),i){let a=e().openSync(v,"r+");try{e().fsyncSync(a)}finally{e().closeSync(a)}}e().renameSync(v,c)}catch(a){try{e().unlinkSync(v)}catch{}return n(a,"保存目标不存在")}let w=e().statSync(c);return{path:f,size:w.size,mtimeMs:w.mtimeMs}}},716:a=>{a.exports=require("node:crypto")},1060:(a,b,c)=>{c.d(b,{Ac:()=>n,GO:()=>j,X:()=>l,_4:()=>d,cV:()=>k,jL:()=>f,kv:()=>e,oC:()=>m});let d=262144,e=0xa00000,f=0xa00000,g={png:"image/png",jpg:"image/jpeg",jpeg:"image/jpeg",gif:"image/gif",webp:"image/webp",svg:"image/svg+xml",bmp:"image/bmp",ico:"image/x-icon",avif:"image/avif"},h={mp3:"audio/mpeg",wav:"audio/wav",ogg:"audio/ogg",oga:"audio/ogg",opus:"audio/ogg",m4a:"audio/mp4",aac:"audio/aac",flac:"audio/flac",weba:"audio/webm"},i={pdf:"application/pdf",docx:"application/vnd.openxmlformats-officedocument.wordprocessingml.document"};function j(a){return(a.replace(/\\/g,"/").split("/").pop()??"").toLowerCase().split(".").pop()??""}function k(a){return g[j(a)]??null}function l(a){return h[j(a)]??null}function m(a){return i[j(a)]??null}function n(a){let b=j(a);return"pdf"===b||"docx"===b?b:null}},1304:(a,b,c)=>{c.a(a,async(a,d)=>{try{c.r(b),c.d(b,{GET:()=>B,POST:()=>x});var e=c(23211),f=c(29021),g=c.n(f),h=c(33873),i=c.n(h),j=c(80547),k=c(1060),l=c(88473),m=c(65630),n=c(60601),o=c(54968),p=c(93089),q=c(55484),r=a([j,m,o,p]);[j,m,o,p]=r.then?(await r)():r;let C=new Set(["node_modules",".git",".next","dist","build","__pycache__",".turbo",".cache","coverage",".pytest_cache",".mypy_cache","target","vendor",".DS_Store",".git"]),D=[".pyc"],E=new Set(["list","read","download","meta","preview","watch"]),F={ts:"typescript",tsx:"typescript",js:"javascript",jsx:"javascript",mjs:"javascript",cjs:"javascript",py:"python",rb:"ruby",go:"go",rs:"rust",java:"java",kt:"kotlin",swift:"swift",c:"c",cpp:"cpp",h:"c",hpp:"cpp",cs:"csharp",html:"html",htm:"html",css:"css",scss:"css",less:"css",json:"json",jsonl:"json",yaml:"yaml",yml:"yaml",toml:"toml",xml:"xml",md:"markdown",mdx:"markdown",sh:"bash",bash:"bash",zsh:"bash",fish:"bash",sql:"sql",graphql:"graphql",gql:"graphql",dockerfile:"dockerfile",tf:"hcl",hcl:"hcl",env:"bash",gitignore:"bash",txt:"text",pdf:"pdf",docx:"word"};function s(a){let b=i().basename(a).toLowerCase();return"dockerfile"===b||b.startsWith("dockerfile.")?"dockerfile":".env"===b||b.startsWith(".env.")?"bash":"makefile"===b||"gnumakefile"===b?"makefile":F[b.split(".").pop()??""]??"text"}function t(a){let b=a.join("/"),c=(0,j.Nw)(b);return(0,j.uK)(c)?c:"/"+b.replace(/^\/+/,"")}async function u(a){let b,c=t(a),d=await (0,j.mc)();if(!(0,j.A$)(c,d))return{response:e.NextResponse.json({error:"Access denied"},{status:403})};try{b=g().statSync(c)}catch{return{response:e.NextResponse.json({error:"Upload directory not found"},{status:404})}}if(!b.isDirectory())return{response:e.NextResponse.json({error:"Upload target is not a directory"},{status:400})};let f=g().realpathSync(c),h=new Set;for(let a of d)try{h.add(g().realpathSync(a))}catch{}return(0,j.A$)(f,h)?{directory:f}:{response:e.NextResponse.json({error:"Access denied"},{status:403})}}function v(a,b){if(!a||"object"!=typeof a)return null;let c=a[b];return"string"==typeof c?c:null}function w(a){return a instanceof p.nf?e.NextResponse.json({error:a.message},{status:(0,p.LO)(a.code)}):e.NextResponse.json({error:a instanceof Error?a.message:String(a)},{status:500})}async function x(a,{params:b}){try{let{path:d}=await b,f=a.nextUrl.searchParams.get("type")??"upload";if("save"===f){let b=t(d);return(0,o.$)(a,b)}if("create-file"===f||"create-dir"===f||"rename"===f||"move"===f||"copy"===f){let b=await (0,j.mc)(),c=await a.json().catch(()=>null);try{if("rename"===f){let a=t(d),f=v(c,"newName");if(!f)return e.NextResponse.json({error:"newName is required"},{status:400});let g=(0,p.xO)(a,f,b);return e.NextResponse.json({path:g.path,name:g.name})}if("move"===f||"copy"===f){let a=t(d),g=v(c,"targetDirectory");if(!g)return e.NextResponse.json({error:"targetDirectory is required"},{status:400});let h="move"===f?(0,p.cb)(a,g,b):(0,p.ox)(a,g,b);return e.NextResponse.json({path:h.path,name:h.name})}let a=t(d),g=v(c,"name");if(!g)return e.NextResponse.json({error:"name is required"},{status:400});let h="create-file"===f?(0,p.wp)(a,g,b):(0,p.c1)(a,g,b);return e.NextResponse.json({path:h.path,name:h.name},{status:201})}catch(a){return w(a)}}let h=await u(d);if("response"in h)return h.response;let{directory:k}=h;if("upload-check"===f){var c;let b=await a.json().catch(()=>null),d=(c=b?.fileNames,Array.isArray(c)&&c.every(a=>"string"==typeof a)?c:null);if(!d)return e.NextResponse.json({error:"fileNames must be an array of strings"},{status:400});let f=(0,q.SI)(d);if(f)return e.NextResponse.json({error:f},{status:400});return e.NextResponse.json((0,q.Gu)(k,d))}if("upload"!==f)return e.NextResponse.json({error:"Invalid upload request type"},{status:400});let l=(0,q.Ey)(a.nextUrl.searchParams.get("conflict"));if(!l)return e.NextResponse.json({error:"Invalid conflict strategy"},{status:400});let m=Number(a.headers.get("content-length"));if(Number.isFinite(m)&&m>0x6900000)return e.NextResponse.json({error:"Uploads must total 100MB or less"},{status:413});let n=(await a.formData()).getAll("files").filter(a=>"string"!=typeof a);if(n.some(a=>a.size>0x1900000))return e.NextResponse.json({error:"Each upload must be 25MB or smaller"},{status:413});if(n.reduce((a,b)=>a+b.size,0)>0x6400000)return e.NextResponse.json({error:"Uploads must total 100MB or less"},{status:413});let r=n.map(a=>a.name),s=(0,q.SI)(r);if(s)return e.NextResponse.json({error:s},{status:400});let x=(0,q.Gu)(k,r);if("error"===l&&x.conflicts.length>0)return e.NextResponse.json({error:"One or more files already exist",conflicts:x.conflicts,nonReplaceable:x.nonReplaceable},{status:409});let y=new Set(x.conflicts),z=new Set(x.nonReplaceable),A=[],B=[],C=[];for(let a of n){let b,c=i().join(k,a.name);if(y.has(a.name)&&"skip"===l){B.push(a.name);continue}if(y.has(a.name)&&z.has(a.name)){C.push({name:a.name,error:"Cannot replace a directory or symbolic link"});continue}try{b=Buffer.from(await a.arrayBuffer())}catch(b){C.push({name:a.name,error:b instanceof Error?b.message:String(b)});continue}if(y.has(a.name))try{g().unlinkSync(c)}catch(b){C.push({name:a.name,error:b instanceof Error?b.message:String(b)});continue}try{g().writeFileSync(c,b,{flag:"wx"}),A.push(a.name)}catch(b){C.push({name:a.name,error:b instanceof Error?b.message:String(b)})}}return e.NextResponse.json({uploaded:A,skipped:B,errors:C},{status:C.length>0?207:200})}catch(a){return e.NextResponse.json({error:a instanceof Error?a.message:String(a)},{status:500})}}function y(a,b){let c=(0,n.fu)(a),d=g().createReadStream(a,{fd:c,autoClose:!0,...b??{}}),e=!1;return new ReadableStream({start(a){d.on("data",b=>{if(!e)try{a.enqueue(new Uint8Array(b))}catch{e=!0,d.destroy()}}),d.once("end",()=>{if(!e){e=!0;try{a.close()}catch{}}}),d.once("error",b=>{if(!e){e=!0;try{a.error(b)}catch{}}})},cancel(){e=!0,d.destroy()}})}function z(a,b=!1){let c=i().basename(a),d=c.replace(/[^\x20-\x7E]|["\\;\r\n]/g,"_")||"download";return`${b?"attachment":"inline"}; filename="${d}"; filename*=UTF-8''${encodeURIComponent(c).replace(/[!'()*]/g,a=>`%${a.charCodeAt(0).toString(16).toUpperCase()}`)}`}function A(a,b,c,d,e=!1){let f={"Content-Type":c,"Cache-Control":"no-cache","Accept-Ranges":"bytes","Content-Disposition":z(a,e)};if(!d)return new Response(y(a),{headers:{...f,"Content-Length":String(b.size)}});let g=/^bytes=(\d*)-(\d*)$/.exec(d);if(!g)return new Response(null,{status:416,headers:{...f,"Content-Range":`bytes */${b.size}`}});let h=g[1]?Number(g[1]):0,i=g[2]?Number(g[2]):b.size-1;if(!g[1]&&g[2]){let a=Number(g[2]);h=Math.max(b.size-a,0),i=b.size-1}if(!Number.isFinite(h)||!Number.isFinite(i)||h<0||i<h||h>=b.size)return new Response(null,{status:416,headers:{...f,"Content-Range":`bytes */${b.size}`}});let j=(i=Math.min(i,b.size-1))-h+1;return new Response(y(a,{start:h,end:i}),{status:206,headers:{...f,"Content-Length":String(j),"Content-Range":`bytes ${h}-${i}/${b.size}`}})}async function B(a,{params:b}){try{var d,f,h;let o,q,{path:r}=await b,u=t(r),v=(d=a.nextUrl.searchParams.get("type")??"list",E.has(d)?d:null);if(!v)return e.NextResponse.json({error:"Invalid file request type"},{status:400});let x=a.nextUrl.searchParams.get("sessionId"),y=await (0,j.mc)(),B=(0,j.A$)(u,y),F=!B&&"list"!==v&&await (0,m.Iq)(u,x);if(!B&&!F)return e.NextResponse.json({error:"Access denied"},{status:403});let G=(0,n.iM)(u,y);if("not-found"===G.kind)return e.NextResponse.json({error:"Not found"},{status:404});if("ok"===G.kind)o=G.realPath,q=G.stat;else{if("denied"===G.kind||!F||!(0,n.hI)(u,G.realPath))return e.NextResponse.json({error:"Access denied"},{status:403});o=G.realPath,q=G.stat}if("read"===v){if(!q.isFile())return e.NextResponse.json({error:"Not a file"},{status:400});let b=(0,k.cV)(o);if(b){if(q.size>k.kv)return e.NextResponse.json({error:"Image too large (>10MB)"},{status:413});return A(o,q,b,a.headers.get("range"))}let c=(0,k.X)(o);if(c)return A(o,q,c,a.headers.get("range"));let d=(0,k.oC)(o);if(d)return A(o,q,d,a.headers.get("range"));if(q.size>k._4)return e.NextResponse.json({error:"File too large for preview (>256KB)"},{status:413});let f=(0,n.fu)(o);try{let a=g().readFileSync(f,"utf-8"),b=s(o);return e.NextResponse.json({content:a,language:b,size:q.size,mtimeMs:q.mtimeMs})}finally{g().closeSync(f)}}if("download"===v){if(q.isDirectory())try{let a=(0,p.Wd)(o),b=`${i().basename(o)||"folder"}.tar.gz`;return new Response(a,{headers:{"Content-Type":"application/gzip","Content-Disposition":z(b,!0),"Cache-Control":"no-cache"}})}catch(a){return w(a)}if(!q.isFile())return e.NextResponse.json({error:"Not a file"},{status:400});let b=(0,k.cV)(o)||(0,k.X)(o)||(0,k.oC)(o)||"application/octet-stream";return A(o,q,b,a.headers.get("range"),!0)}if("meta"===v){if(!q.isFile())return e.NextResponse.json({error:"Not a file"},{status:400});let a=(0,k.cV)(o),b=(0,k.X)(o),c=(0,k.oC)(o);return e.NextResponse.json({size:q.size,mtimeMs:q.mtimeMs,language:s(o),mime:a||b||c||"text/plain",previewKind:(0,k.Ac)(o)})}if("preview"===v){if(!q.isFile())return e.NextResponse.json({error:"Not a file"},{status:400});if("docx"!==(0,k.GO)(o))return e.NextResponse.json({error:"Preview not available for this file type"},{status:400});if(q.size>k.jL)return e.NextResponse.json({error:"DOCX too large for preview (>10MB)"},{status:413});let a=await c.e(3379).then(c.t.bind(c,53379,19)),b=(f=(await a.convertToHtml({path:o},{externalFileAccess:!1,convertImage:a.images.dataUri})).value,h=i().basename(o),`<!doctype html>
1
+ "use strict";(()=>{var a={};a.id=4037,a.ids=[4037],a.modules={261:a=>{a.exports=require("next/dist/shared/lib/router/utils/app-paths")},400:(a,b,c)=>{c.d(b,{OJ:()=>n,Sk:()=>j,j0:()=>l});var d=c(89477),e=c.n(d),f=c(86697),g=c.n(f),h=c(716);let i="true"===process.env.SAVE_FSYNC;class j extends Error{constructor(a,b){super(b),this.code=a}}function k(a){return/^[a-zA-Z]:[\\/]/.test(a)||a.startsWith("\\\\")||a.startsWith("//")}function l(a,b,c=k(a)||k(b)){let d=c?g().win32:g(),e=d.resolve(a),f=d.resolve(b),h=c?e.toLowerCase():e,i=c?f.toLowerCase():f;return h!==i&&h.startsWith(i.endsWith(d.sep)?i:i+d.sep)}function m(a,b){let c=a?.code;if("ENOENT"===c)throw new j("not-found",b);if("EACCES"===c||"EPERM"===c)throw new j("forbidden","文件访问被拒绝");throw a}function n(a){let b,c,d,{target:f,cwd:k,allowedRoots:n,content:o,baseline:p}=a,q=function(a,b){if(!Number.isFinite(b?.mtimeMs)||b.mtimeMs<0||!Number.isFinite(b?.size)||b.size<0)throw new j("bad-request","保存请求格式无效");for(let b=0;b<a.length;b+=1){let c=a.charCodeAt(b);if(c>=55296&&c<=57343){if(c<=56319&&b+1<a.length&&a.charCodeAt(b+1)>=56320&&57343>=a.charCodeAt(b+1)){b+=1;continue}throw new j("bad-request","内容包含不可逆 UTF-8 字符")}}return Buffer.from(a,"utf8")}(o,p),r=a.isAllowed??((a,b)=>[...b].some(b=>a===b||a.startsWith(`${b}/`)||a.startsWith(`${b}\\`)));if(!r(f,n))throw new j("forbidden","目标不在授权目录内");try{b=e().lstatSync(f)}catch(a){return m(a,"目标文件不存在")}if(b.isSymbolicLink())throw new j("forbidden","目标不能是符号链接");if(!b.isFile())throw new j("bad-request","目标不是常规文件");try{if(e().realpathSync(k),c=e().realpathSync(f),d=new Set([...n].map(a=>e().realpathSync(a))),!r(c,d))throw new j("forbidden","目标不在授权目录内");for(let a=g().dirname(f);l(a,k);a=g().dirname(a))if(e().lstatSync(a).isSymbolicLink())throw new j("forbidden","目标父目录不能是符号链接")}catch(a){if(a instanceof j)throw a;return m(a,"目标路径不存在")}try{e().statSync(c)}catch(a){return m(a,"目标文件不存在")}let s=g().dirname(c),t=g().join(s,`.pi-save-${process.pid}-${(0,h.randomUUID)()}`);try{if(e().writeFileSync(t,q,{flag:"wx",mode:4095&b.mode}),e().chmodSync(t,4095&b.mode),i){let a=e().openSync(t,"r+");try{e().fsyncSync(a)}finally{e().closeSync(a)}}e().renameSync(t,c)}catch(a){try{e().unlinkSync(t)}catch{}return m(a,"保存目标不存在")}let u=e().statSync(c);return{path:f,size:u.size,mtimeMs:u.mtimeMs}}},716:a=>{a.exports=require("node:crypto")},1060:(a,b,c)=>{c.d(b,{Ac:()=>l,GO:()=>h,X:()=>j,_4:()=>d,cV:()=>i,oC:()=>k});let d=262144,e={png:"image/png",jpg:"image/jpeg",jpeg:"image/jpeg",gif:"image/gif",webp:"image/webp",svg:"image/svg+xml",bmp:"image/bmp",ico:"image/x-icon",avif:"image/avif"},f={mp3:"audio/mpeg",wav:"audio/wav",ogg:"audio/ogg",oga:"audio/ogg",opus:"audio/ogg",m4a:"audio/mp4",aac:"audio/aac",flac:"audio/flac",weba:"audio/webm"},g={pdf:"application/pdf",docx:"application/vnd.openxmlformats-officedocument.wordprocessingml.document"};function h(a){return(a.replace(/\\/g,"/").split("/").pop()??"").toLowerCase().split(".").pop()??""}function i(a){return e[h(a)]??null}function j(a){return f[h(a)]??null}function k(a){return g[h(a)]??null}function l(a){let b=h(a);return"pdf"===b||"docx"===b?b:null}},1304:(a,b,c)=>{c.a(a,async(a,d)=>{try{c.r(b),c.d(b,{DELETE:()=>z,GET:()=>D,POST:()=>y});var e=c(23211),f=c(29021),g=c.n(f),h=c(33873),i=c.n(h),j=c(80547),k=c(1060),l=c(74940),m=c(88473),n=c(65630),o=c(60601),p=c(54968),q=c(93089),r=c(55484),s=a([j,n,o,p,q]);[j,n,o,p,q]=s.then?(await s)():s;let E=new Set,F=[],G=new Set(["list","read","download","meta","preview","watch"]),H={ts:"typescript",tsx:"typescript",js:"javascript",jsx:"javascript",mjs:"javascript",cjs:"javascript",py:"python",rb:"ruby",go:"go",rs:"rust",java:"java",kt:"kotlin",swift:"swift",c:"c",cpp:"cpp",h:"c",hpp:"cpp",cs:"csharp",html:"html",htm:"html",css:"css",scss:"css",less:"css",json:"json",jsonl:"json",yaml:"yaml",yml:"yaml",toml:"toml",xml:"xml",md:"markdown",mdx:"markdown",sh:"bash",bash:"bash",zsh:"bash",fish:"bash",sql:"sql",graphql:"graphql",gql:"graphql",dockerfile:"dockerfile",tf:"hcl",hcl:"hcl",env:"bash",gitignore:"bash",txt:"text",pdf:"pdf",docx:"word"};function t(a){let b=i().basename(a).toLowerCase();return"dockerfile"===b||b.startsWith("dockerfile.")?"dockerfile":".env"===b||b.startsWith(".env.")?"bash":"makefile"===b||"gnumakefile"===b?"makefile":H[b.split(".").pop()??""]??"text"}function u(a){let b=a.join("/"),c=(0,j.Nw)(b);return(0,j.uK)(c)?c:"/"+b.replace(/^\/+/,"")}async function v(a){let b,c=u(a),d=await (0,j.mc)();if(!(0,j.A$)(c,d))return{response:e.NextResponse.json({error:"Access denied"},{status:403})};try{b=g().statSync(c)}catch{return{response:e.NextResponse.json({error:"Upload directory not found"},{status:404})}}if(!b.isDirectory())return{response:e.NextResponse.json({error:"Upload target is not a directory"},{status:400})};let f=g().realpathSync(c),h=new Set;for(let a of d)try{h.add(g().realpathSync(a))}catch{}return(0,j.A$)(f,h)?{directory:f}:{response:e.NextResponse.json({error:"Access denied"},{status:403})}}function w(a,b){if(!a||"object"!=typeof a)return null;let c=a[b];return"string"==typeof c?c:null}function x(a){return a instanceof q.nf?e.NextResponse.json({error:a.message},{status:(0,q.LO)(a.code)}):e.NextResponse.json({error:a instanceof Error?a.message:String(a)},{status:500})}async function y(a,{params:b}){try{let{path:d}=await b,f=a.nextUrl.searchParams.get("type")??"upload";if("save"===f){let b=u(d);return(0,p.$)(a,b)}if("create-file"===f||"create-dir"===f||"rename"===f||"move"===f||"copy"===f){let b=await (0,j.mc)(),c=await a.json().catch(()=>null);try{if("rename"===f){let a=u(d),f=w(c,"newName");if(!f)return e.NextResponse.json({error:"newName is required"},{status:400});let g=(0,q.xO)(a,f,b);return e.NextResponse.json({path:g.path,name:g.name})}if("move"===f||"copy"===f){let a=u(d),g=w(c,"targetDirectory");if(!g)return e.NextResponse.json({error:"targetDirectory is required"},{status:400});let h="move"===f?(0,q.cb)(a,g,b):(0,q.ox)(a,g,b);return e.NextResponse.json({path:h.path,name:h.name})}let a=u(d),g=w(c,"name");if(!g)return e.NextResponse.json({error:"name is required"},{status:400});let h="create-file"===f?(0,q.wp)(a,g,b):(0,q.c1)(a,g,b);return e.NextResponse.json({path:h.path,name:h.name},{status:201})}catch(a){return x(a)}}let h=await v(d);if("response"in h)return h.response;let{directory:k}=h;if("upload-check"===f){var c;let b=await a.json().catch(()=>null),d=(c=b?.fileNames,Array.isArray(c)&&c.every(a=>"string"==typeof a)?c:null);if(!d)return e.NextResponse.json({error:"fileNames must be an array of strings"},{status:400});let f=(0,r.SI)(d);if(f)return e.NextResponse.json({error:f},{status:400});return e.NextResponse.json((0,r.Gu)(k,d))}if("upload"!==f)return e.NextResponse.json({error:"Invalid upload request type"},{status:400});let l=(0,r.Ey)(a.nextUrl.searchParams.get("conflict"));if(!l)return e.NextResponse.json({error:"Invalid conflict strategy"},{status:400});let m=(await a.formData()).getAll("files").filter(a=>"string"!=typeof a),n=m.map(a=>a.name),o=(0,r.SI)(n);if(o)return e.NextResponse.json({error:o},{status:400});let s=(0,r.Gu)(k,n);if("error"===l&&s.conflicts.length>0)return e.NextResponse.json({error:"One or more files already exist",conflicts:s.conflicts,nonReplaceable:s.nonReplaceable},{status:409});let t=new Set(s.conflicts),y=new Set(s.nonReplaceable),z=[],A=[],B=[];for(let a of m){let b,c=i().join(k,a.name);if(t.has(a.name)&&"skip"===l){A.push(a.name);continue}if(t.has(a.name)&&y.has(a.name)){B.push({name:a.name,error:"Cannot replace a directory or symbolic link"});continue}try{b=Buffer.from(await a.arrayBuffer())}catch(b){B.push({name:a.name,error:b instanceof Error?b.message:String(b)});continue}if(t.has(a.name))try{g().unlinkSync(c)}catch(b){B.push({name:a.name,error:b instanceof Error?b.message:String(b)});continue}try{g().writeFileSync(c,b,{flag:"wx"}),z.push(a.name)}catch(b){B.push({name:a.name,error:b instanceof Error?b.message:String(b)})}}return e.NextResponse.json({uploaded:z,skipped:A,errors:B},{status:B.length>0?207:200})}catch(a){return e.NextResponse.json({error:a instanceof Error?a.message:String(a)},{status:500})}}async function z(a,{params:b}){try{let a,{path:c}=await b,d=u(c),f=i().parse(d).root;if(d===f||d.replace(/[\\/]+$/,"")===f.replace(/[\\/]+$/,""))return e.NextResponse.json({error:"Cannot delete root"},{status:400});try{a=g().lstatSync(d)}catch(b){let a=b.code;if("ENOENT"===a||"ENOTDIR"===a)return e.NextResponse.json({error:"Not found"},{status:404});throw b}return a.isDirectory()?g().rmSync(d,{recursive:!0,force:!1}):g().unlinkSync(d),e.NextResponse.json({ok:!0})}catch(a){return e.NextResponse.json({error:a instanceof Error?a.message:String(a)},{status:500})}}function A(a,b){let c=(0,o.fu)(a),d=g().createReadStream(a,{fd:c,autoClose:!0,...b??{}}),e=!1;return new ReadableStream({start(a){d.on("data",b=>{if(!e)try{a.enqueue(new Uint8Array(b))}catch{e=!0,d.destroy()}}),d.once("end",()=>{if(!e){e=!0;try{a.close()}catch{}}}),d.once("error",b=>{if(!e){e=!0;try{a.error(b)}catch{}}})},cancel(){e=!0,d.destroy()}})}function B(a,b=!1){let c=i().basename(a),d=c.replace(/[^\x20-\x7E]|["\\;\r\n]/g,"_")||"download";return`${b?"attachment":"inline"}; filename="${d}"; filename*=UTF-8''${encodeURIComponent(c).replace(/[!'()*]/g,a=>`%${a.charCodeAt(0).toString(16).toUpperCase()}`)}`}function C(a,b,c,d,e=!1){let f={"Content-Type":c,"Cache-Control":"no-cache","Accept-Ranges":"bytes","Content-Disposition":B(a,e)};if(!d)return new Response(A(a),{headers:{...f,"Content-Length":String(b.size)}});let g=/^bytes=(\d*)-(\d*)$/.exec(d);if(!g)return new Response(null,{status:416,headers:{...f,"Content-Range":`bytes */${b.size}`}});let h=g[1]?Number(g[1]):0,i=g[2]?Number(g[2]):b.size-1;if(!g[1]&&g[2]){let a=Number(g[2]);h=Math.max(b.size-a,0),i=b.size-1}if(!Number.isFinite(h)||!Number.isFinite(i)||h<0||i<h||h>=b.size)return new Response(null,{status:416,headers:{...f,"Content-Range":`bytes */${b.size}`}});let j=(i=Math.min(i,b.size-1))-h+1;return new Response(A(a,{start:h,end:i}),{status:206,headers:{...f,"Content-Length":String(j),"Content-Range":`bytes ${h}-${i}/${b.size}`}})}async function D(a,{params:b}){try{var d,f,h;let p,r,{path:s}=await b,v=u(s),w=(d=a.nextUrl.searchParams.get("type")??"list",G.has(d)?d:null);if(!w)return e.NextResponse.json({error:"Invalid file request type"},{status:400});let y=a.nextUrl.searchParams.get("sessionId"),z=await (0,j.mc)(),A=(0,j.A$)(v,z),D=!A&&"list"!==w&&await (0,n.Iq)(v,y);if(!A&&!D)return e.NextResponse.json({error:"Access denied"},{status:403});let H=(0,o.iM)(v,z);if("not-found"===H.kind)return e.NextResponse.json({error:"Not found"},{status:404});if("ok"===H.kind)p=H.realPath,r=H.stat;else{if("denied"===H.kind||!D||!(0,o.hI)(v,H.realPath))return e.NextResponse.json({error:"Access denied"},{status:403});p=H.realPath,r=H.stat}if("read"===w){if(!r.isFile())return e.NextResponse.json({error:"Not a file"},{status:400});let b=(0,k.cV)(p);if(b){if(r.size>(0,l.le)().imagePreviewMaxBytes)return e.NextResponse.json({error:"Image too large (>10MB)"},{status:413});return C(p,r,b,a.headers.get("range"))}let c=(0,k.X)(p);if(c)return C(p,r,c,a.headers.get("range"));let d=(0,k.oC)(p);if(d)return C(p,r,d,a.headers.get("range"));if(r.size>(0,l.le)().textPreviewMaxBytes)return e.NextResponse.json({error:"File too large for preview (>256KB)"},{status:413});let f=(0,o.fu)(p);try{let a=g().readFileSync(f,"utf-8"),b=t(p);return e.NextResponse.json({content:a,language:b,size:r.size,mtimeMs:r.mtimeMs})}finally{g().closeSync(f)}}if("download"===w){if(r.isDirectory())try{let a=(0,q.Wd)(p),b=`${i().basename(p)||"folder"}.tar.gz`;return new Response(a,{headers:{"Content-Type":"application/gzip","Content-Disposition":B(b,!0),"Cache-Control":"no-cache"}})}catch(a){return x(a)}if(!r.isFile())return e.NextResponse.json({error:"Not a file"},{status:400});let b=(0,k.cV)(p)||(0,k.X)(p)||(0,k.oC)(p)||"application/octet-stream";return C(p,r,b,a.headers.get("range"),!0)}if("meta"===w){if(!r.isFile())return e.NextResponse.json({error:"Not a file"},{status:400});let a=(0,k.cV)(p),b=(0,k.X)(p),c=(0,k.oC)(p);return e.NextResponse.json({size:r.size,mtimeMs:r.mtimeMs,language:t(p),mime:a||b||c||"text/plain",previewKind:(0,k.Ac)(p)})}if("preview"===w){if(!r.isFile())return e.NextResponse.json({error:"Not a file"},{status:400});if("docx"!==(0,k.GO)(p))return e.NextResponse.json({error:"Preview not available for this file type"},{status:400});if(r.size>(0,l.le)().docxPreviewMaxBytes)return e.NextResponse.json({error:"DOCX too large for preview (>10MB)"},{status:413});let a=await c.e(3379).then(c.t.bind(c,53379,19)),b=(f=(await a.convertToHtml({path:p},{externalFileAccess:!1,convertImage:a.images.dataUri})).value,h=i().basename(p),`<!doctype html>
2
2
  <html>
3
3
  <head>
4
4
  <meta charset="utf-8">
@@ -43,7 +43,7 @@
43
43
  ${f}
44
44
  </main>
45
45
  </body>
46
- </html>`);return new Response(b,{headers:{"Content-Type":"text/html; charset=utf-8","Cache-Control":"no-cache","Content-Security-Policy":"default-src 'none'; img-src data:; style-src 'unsafe-inline'; base-uri 'none'; form-action 'none'; frame-ancestors 'self'","Referrer-Policy":"no-referrer","X-Content-Type-Options":"nosniff"}})}if("watch"===v){if(!q.isFile())return e.NextResponse.json({error:"Not a file"},{status:400});let a=null,b=q.mtimeMs,c=q.size,d=new ReadableStream({start(d){let e=(a,b)=>{let c=`event: ${a}
46
+ </html>`);return new Response(b,{headers:{"Content-Type":"text/html; charset=utf-8","Cache-Control":"no-cache","Content-Security-Policy":"default-src 'none'; img-src data:; style-src 'unsafe-inline'; base-uri 'none'; form-action 'none'; frame-ancestors 'self'","Referrer-Policy":"no-referrer","X-Content-Type-Options":"nosniff"}})}if("watch"===w){if(!r.isFile())return e.NextResponse.json({error:"Not a file"},{status:400});let a=null,b=r.mtimeMs,c=r.size,d=new ReadableStream({start(d){let e=(a,b)=>{let c=`event: ${a}
47
47
  data: ${JSON.stringify(b)}
48
48
 
49
- `;try{d.enqueue(new TextEncoder().encode(c))}catch{}};e("connected",{filePath:u});try{(a=g().watch(o,()=>{try{let a=g().statSync(o);if(a.mtimeMs===b&&a.size===c)return;b=a.mtimeMs,c=a.size,e("change",{mtime:a.mtime.toISOString(),size:a.size})}catch{e("change",{mtime:new Date().toISOString(),size:0})}})).on("error",()=>{try{d.close()}catch{}})}catch{e("error",{message:"Failed to watch file"}),d.close()}},cancel(){try{a?.close()}catch{}}});return new Response(d,{headers:{"Content-Type":"text/event-stream","Cache-Control":"no-cache, no-transform",Connection:"keep-alive","X-Accel-Buffering":"no"}})}if(!q.isDirectory())return e.NextResponse.json({error:"Not a directory"},{status:400});let H=g().readdirSync(o,{withFileTypes:!0}).filter(a=>!C.has(a.name)&&!D.some(b=>a.name.endsWith(b))).flatMap(a=>{let b=(0,l.w)(a,i().join(o,a.name));return null===b?[]:[{name:a.name,isDir:b,size:0,modified:""}]}).sort((a,b)=>a.isDir!==b.isDir?a.isDir?-1:1:a.name.localeCompare(b.name));return e.NextResponse.json({entries:H,path:u})}catch(a){return e.NextResponse.json({error:String(a)},{status:500})}}d()}catch(a){d(a)}})},1932:a=>{a.exports=require("url")},3295:a=>{a.exports=require("next/dist/server/app-render/after-task-async-storage.external.js")},4984:a=>{a.exports=require("readline")},6954:(a,b,c)=>{c.a(a,async(a,d)=>{try{c.r(b),c.d(b,{handler:()=>y,patchFetch:()=>x,routeModule:()=>z,serverHooks:()=>C,workAsyncStorage:()=>A,workUnitAsyncStorage:()=>B});var e=c(19225),f=c(84006),g=c(8317),h=c(99373),i=c(34775),j=c(24235),k=c(261),l=c(54365),m=c(90771),n=c(73461),o=c(67798),p=c(92280),q=c(62018),r=c(45696),s=c(47929),t=c(86439),u=c(37527),v=c(1304),w=a([v]);v=(w.then?(await w)():w)[0];let z=new e.AppRouteRouteModule({definition:{kind:f.RouteKind.APP_ROUTE,page:"/api/files/[...path]/route",pathname:"/api/files/[...path]",filename:"route",bundlePath:"app/api/files/[...path]/route"},distDir:".next",relativeProjectDir:"",resolvedPagePath:"/tmp/pidance-release-build/app/api/files/[...path]/route.ts",nextConfigOutput:"",userland:v,...{}}),{workAsyncStorage:A,workUnitAsyncStorage:B,serverHooks:C}=z;function x(){return(0,g.patchFetch)({workAsyncStorage:A,workUnitAsyncStorage:B})}async function y(a,b,c){c.requestMeta&&(0,h.setRequestMeta)(a,c.requestMeta),z.isDev&&(0,h.addRequestMeta)(a,"devRequestTimingInternalsEnd",process.hrtime.bigint());let d="/api/files/[...path]/route";"/index"===d&&(d="/");let e=await z.prepare(a,b,{srcPage:d,multiZoneDraftMode:!1});if(!e)return b.statusCode=400,b.end("Bad Request"),null==c.waitUntil||c.waitUntil.call(c,Promise.resolve()),null;let{buildId:g,deploymentId:v,params:w,nextConfig:x,parsedUrl:y,isDraftMode:A,prerenderManifest:B,routerServerContext:C,isOnDemandRevalidate:D,revalidateOnlyGenerated:E,resolvedPathname:F,clientReferenceManifest:G,serverActionsManifest:H}=e,I=(0,k.normalizeAppPath)(d),J=!!(B.dynamicRoutes[I]||B.routes[F]),K=async()=>((null==C?void 0:C.render404)?await C.render404(a,b,y,!1):b.end("This page could not be found"),null);if(J&&!A){let a=!!B.routes[F],b=B.dynamicRoutes[I];if(b&&!1===b.fallback&&!a){if(x.adapterPath)return await K();throw new t.NoFallbackError}}let L=null;!J||z.isDev||A||(L=F,L="/index"===L?"/":L);let M=!0===z.isDev||!J,N=J&&!M;H&&G&&(0,j.setManifestsSingleton)({page:d,clientReferenceManifest:G,serverActionsManifest:H});let O=a.method||"GET",P=(0,i.getTracer)(),Q=P.getActiveScopeSpan(),R=!!(null==C?void 0:C.isWrappedByNextServer),S=!!(0,h.getRequestMeta)(a,"minimalMode"),T=(0,h.getRequestMeta)(a,"incrementalCache")||await z.getIncrementalCache(a,x,B,S);null==T||T.resetRequestCache(),globalThis.__incrementalCache=T;let U={params:w,previewProps:B.preview,renderOpts:{experimental:{authInterrupts:!!x.experimental.authInterrupts},cacheComponents:!!x.cacheComponents,supportsDynamicResponse:M,incrementalCache:T,cacheLifeProfiles:x.cacheLife,waitUntil:c.waitUntil,onClose:a=>{b.on("close",a)},onAfterTaskError:void 0,onInstrumentationRequestError:(b,c,d,e)=>z.onRequestError(a,b,d,e,C)},sharedContext:{buildId:g,deploymentId:v}},V=new l.NodeNextRequest(a),W=new l.NodeNextResponse(b),X=m.NextRequestAdapter.fromNodeNextRequest(V,(0,m.signalFromNodeResponse)(b));try{let e,g=async a=>z.handle(X,U).finally(()=>{if(!a)return;a.setAttributes({"http.status_code":b.statusCode,"next.rsc":!1});let c=P.getRootSpanAttributes();if(!c)return;if(c.get("next.span_type")!==n.BaseServerSpan.handleRequest)return void console.warn(`Unexpected root span type '${c.get("next.span_type")}'. Please report this Next.js issue https://github.com/vercel/next.js`);let f=c.get("next.route");if(f){let b=`${O} ${f}`;a.setAttributes({"next.route":f,"http.route":f,"next.span_name":b}),a.updateName(b),e&&e!==a&&(e.setAttribute("http.route",f),e.updateName(b))}else a.updateName(`${O} ${d}`)}),h=async e=>{var h,i;let j=async({previousCacheEntry:f})=>{try{if(!S&&D&&E&&!f)return b.statusCode=404,b.setHeader("x-nextjs-cache","REVALIDATED"),b.end("This page could not be found"),null;let d=await g(e);a.fetchMetrics=U.renderOpts.fetchMetrics;let h=U.renderOpts.pendingWaitUntil;h&&c.waitUntil&&(c.waitUntil(h),h=void 0);let i=U.renderOpts.collectedTags;if(!J)return await (0,p.I)(V,W,d,U.renderOpts.pendingWaitUntil),null;{let a=await d.blob(),b=(0,q.toNodeOutgoingHttpHeaders)(d.headers);i&&(b[s.NEXT_CACHE_TAGS_HEADER]=i),!b["content-type"]&&a.type&&(b["content-type"]=a.type);let c=void 0!==U.renderOpts.collectedRevalidate&&!(U.renderOpts.collectedRevalidate>=s.INFINITE_CACHE)&&U.renderOpts.collectedRevalidate,e=void 0===U.renderOpts.collectedExpire||U.renderOpts.collectedExpire>=s.INFINITE_CACHE?void 0:U.renderOpts.collectedExpire;return{value:{kind:u.CachedRouteKind.APP_ROUTE,status:d.status,body:Buffer.from(await a.arrayBuffer()),headers:b},cacheControl:{revalidate:c,expire:e}}}}catch(b){throw(null==f?void 0:f.isStale)&&await z.onRequestError(a,b,{routerKind:"App Router",routePath:d,routeType:"route",revalidateReason:(0,o.c)({isStaticGeneration:N,isOnDemandRevalidate:D})},!1,C),b}},k=await z.handleResponse({req:a,nextConfig:x,cacheKey:L,routeKind:f.RouteKind.APP_ROUTE,isFallback:!1,prerenderManifest:B,isRoutePPREnabled:!1,isOnDemandRevalidate:D,revalidateOnlyGenerated:E,responseGenerator:j,waitUntil:c.waitUntil,isMinimalMode:S});if(!J)return null;if((null==k||null==(h=k.value)?void 0:h.kind)!==u.CachedRouteKind.APP_ROUTE)throw Object.defineProperty(Error(`Invariant: app-route received invalid cache entry ${null==k||null==(i=k.value)?void 0:i.kind}`),"__NEXT_ERROR_CODE",{value:"E701",enumerable:!1,configurable:!0});S||b.setHeader("x-nextjs-cache",D?"REVALIDATED":k.isMiss?"MISS":k.isStale?"STALE":"HIT"),A&&b.setHeader("Cache-Control","private, no-cache, no-store, max-age=0, must-revalidate");let l=(0,q.fromNodeOutgoingHttpHeaders)(k.value.headers);return S&&J||l.delete(s.NEXT_CACHE_TAGS_HEADER),!k.cacheControl||b.getHeader("Cache-Control")||l.get("Cache-Control")||l.set("Cache-Control",(0,r.getCacheControlHeader)(k.cacheControl)),await (0,p.I)(V,W,new Response(k.value.body,{headers:l,status:k.value.status||200})),null};R&&Q?await h(Q):(e=P.getActiveScopeSpan(),await P.withPropagatedContext(a.headers,()=>P.trace(n.BaseServerSpan.handleRequest,{spanName:`${O} ${d}`,kind:i.SpanKind.SERVER,attributes:{"http.method":O,"http.target":a.url}},h),void 0,!R))}catch(b){if(b instanceof t.NoFallbackError||await z.onRequestError(a,b,{routerKind:"App Router",routePath:I,routeType:"route",revalidateReason:(0,o.c)({isStaticGeneration:N,isOnDemandRevalidate:D})},!1,C),J)throw b;return await (0,p.I)(V,W,new Response(null,{status:500})),null}}d()}catch(a){d(a)}})},10846:a=>{a.exports=require("next/dist/compiled/next-server/app-page.runtime.prod.js")},21820:a=>{a.exports=require("os")},26238:a=>{a.exports=require("node:stream")},27910:a=>{a.exports=require("stream")},28354:a=>{a.exports=require("util")},29021:a=>{a.exports=require("fs")},29294:a=>{a.exports=require("next/dist/server/app-render/work-async-storage.external.js")},33873:a=>{a.exports=require("path")},44870:a=>{a.exports=require("next/dist/compiled/next-server/app-route.runtime.prod.js")},49180:(a,b,c)=>{c.d(b,{ah:()=>f,iX:()=>h,j1:()=>i});var d=c(50593);let e=/^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$/i;function f(a){return!!a&&e.test(a)}function g(a){return/[A-Za-z0-9._~+%@/\\:-]/.test(a)}function h(a,b){for(let c of b){let b=[];if(!function a(b,c){if("string"==typeof b)return void c.push(b);if(b&&"object"==typeof b){if(Array.isArray(b)){for(let d of b)a(d,c);return}for(let d of Object.values(b))a(d,c)}}(c,b),b.some(b=>(function(a,b){let c=(0,d.Nw)(b),e=c.startsWith("/")?[c,`file://${c}`]:[c];for(let b of new Set([(0,d.Nw)(a),(0,d.Nw)((0,d.ex)(a))]))for(let a of e){let c=b.indexOf(a);for(;-1!==c;){let d=0===c?"":b[c-1],e=c+a.length;if((0===c||!g(d))&&function(a,b){if(b>=a.length)return!0;let c=a[b];return":"===c?/\d/.test(a[b+1]??""):!g(c)}(b,e))return!0;c=b.indexOf(a,c+1)}}return!1})(b,a)))return!0}return!1}function i(a,b){return b.some(b=>"message"===b.type&&"bashExecution"===b.message.role&&b.message.fullOutputPath===a)}},54968:(a,b,c)=>{c.a(a,async(a,d)=>{try{c.d(b,{$:()=>l});var e=c(23211),f=c(80547),g=c(1060),h=c(400),i=c(40402),j=c(37594),k=a([f,i,j]);[f,i,j]=k.then?(await k)():k;let m={resolveSessionPath:i.os,requireWritableSession:j.Yz,isReadOnly:j.mB.isReadOnly,readSessionHeader:i.eP,getAllowedFileRoots:f.mc,saveFile:h.OJ,isFilePathAllowed:f.A$,getBinaryMime:a=>(0,g.cV)(a)||(0,g.X)(a)||(0,g.oC)(a)};async function l(a,b,c={}){let d={...m,...c};try{let c=(0,f.Nw)(b);if(!c.startsWith("/")&&!(0,f.uK)(c))return e.NextResponse.json({error:"Save target must be absolute"},{status:400});let g=a.nextUrl.searchParams.get("sessionId");if(!g)return e.NextResponse.json({error:"sessionId is required"},{status:400});let h=await a.json().catch(()=>null);if("string"!=typeof h?.content||"number"!=typeof h.baseline?.mtimeMs||!Number.isFinite(h.baseline.mtimeMs)||h.baseline.mtimeMs<0||"number"!=typeof h.baseline?.size||!Number.isFinite(h.baseline.size)||h.baseline.size<0)return e.NextResponse.json({error:"Invalid save request"},{status:400});let i=await d.resolveSessionPath(g);if(!i)return e.NextResponse.json({error:"Session not found"},{status:404});try{await d.requireWritableSession(g,d.isReadOnly)}catch(a){if(a instanceof j.C9)return e.NextResponse.json({error:a.message},{status:403});throw a}let k=d.readSessionHeader(i);if(!k?.cwd)return e.NextResponse.json({error:"Session cwd not found"},{status:404});let l={target:b,cwd:k.cwd,sourceSessionId:g,allowedRoots:await d.getAllowedFileRoots(),content:h.content,baseline:{mtimeMs:h.baseline.mtimeMs,size:h.baseline.size},isAllowed:d.isFilePathAllowed,getBinaryMime:d.getBinaryMime},m=d.saveFile(l);return e.NextResponse.json({success:!0,...m})}catch(a){if(a instanceof h.Sk){let b={"bad-request":400,forbidden:403,"not-found":404,conflict:409,"too-large":413}[a.code];return"conflict"===a.code?e.NextResponse.json({error:"File changed externally",baseline:JSON.parse(a.message)},{status:b}):e.NextResponse.json({error:a.message},{status:b})}return e.NextResponse.json({error:a instanceof Error?a.message:String(a)},{status:500})}}d()}catch(a){d(a)}})},55484:(a,b,c)=>{c.d(b,{Ey:()=>i,Gu:()=>k,SI:()=>j});var d=c(29021),e=c.n(d),f=c(33873),g=c.n(f);let h=new Set(["error","overwrite","skip"]);function i(a){let b=a??"error";return h.has(b)?b:null}function j(a){if(0===a.length)return"No files selected";let b=new Set;for(let c of a){if(!c||"."===c||".."===c||c.includes("\0"))return`Invalid file name: ${c||"(empty)"}`;if(c.includes("/")||c.includes("\\")||g().basename(c)!==c)return`File names must not contain a path: ${c}`;if(b.has(c))return`Duplicate file name in upload: ${c}`;b.add(c)}return null}function k(a,b){let c=[],d=[];for(let f of b){let b,h=g().join(a,f);try{b=e().lstatSync(h)}catch(a){if("ENOENT"===a.code)continue;throw a}c.push(f),(!b.isFile()||b.isSymbolicLink())&&d.push(f)}return{conflicts:c,nonReplaceable:d}}},55511:a=>{a.exports=require("crypto")},60601:(a,b,c)=>{c.d(b,{fu:()=>m,hI:()=>l,iM:()=>j});var d=c(89477),e=c.n(d),f=c(86697),g=c.n(f),h=c(400);function i(a){let b=a?.code;return"ENOENT"===b||"ENOTDIR"===b}function j(a,b){let c,d;try{c=e().realpathSync(a)}catch(a){if(i(a))return{kind:"not-found"};return{kind:"denied"}}try{d=e().statSync(c)}catch(a){if(i(a))return{kind:"not-found"};return{kind:"denied"}}let f=!1;for(let a of b){let b;try{b=e().realpathSync(a)}catch{continue}if(f=!0,c===b||(0,h.j0)(c,b))return{kind:"ok",realPath:c,stat:d}}return f?{kind:"outside-roots",realPath:c,stat:d}:{kind:"denied"}}function k(a){return"win32"===process.platform?a.toLowerCase():a}function l(a,b){try{return k(g().resolve(a))===k(b)}catch{return!1}}function m(a){let b="number"==typeof e().constants.O_NOFOLLOW?e().constants.O_NOFOLLOW:0,c=e().openSync(a,e().constants.O_RDONLY|b);try{if(!e().fstatSync(c).isFile())throw Error("Read path is not a regular file");return c}catch(a){try{e().closeSync(c)}catch{}throw a}}},62228:a=>{a.exports=require("node:os")},63033:a=>{a.exports=require("next/dist/server/app-render/work-unit-async-storage.external.js")},65630:(a,b,c)=>{c.a(a,async(a,d)=>{try{c.d(b,{Iq:()=>h,jV:()=>i});var e=c(40402),f=c(49180),g=a([e]);async function h(a,b){if(!(0,f.ah)(b))return!1;try{let c=await (0,e.os)(b);if(!c)return!1;return(0,f.iX)(a,(0,e.DK)(c))}catch{return!1}}async function i(a,b){if(!(0,f.ah)(b))return!1;try{let c=await (0,e.os)(b);if(!c)return!1;return(0,f.j1)(a,(0,e.DK)(c))}catch{return!1}}e=(g.then?(await g)():g)[0],d()}catch(a){d(a)}})},75430:a=>{a.exports=import("@earendil-works/pi-coding-agent")},79428:a=>{a.exports=require("buffer")},79646:a=>{a.exports=require("child_process")},79748:a=>{a.exports=require("fs/promises")},86439:a=>{a.exports=require("next/dist/shared/lib/no-fallback-error.external")},86697:a=>{a.exports=require("node:path")},88473:(a,b,c)=>{c.d(b,{w:()=>f});var d=c(29021),e=c.n(d);function f(a,b){if(a.isDirectory())return!0;if(a.isFile())return!1;try{return e().statSync(b).isDirectory()}catch{return null}}},89477:a=>{a.exports=require("node:fs")},93089:(a,b,c)=>{c.a(a,async(a,d)=>{try{c.d(b,{LO:()=>y,Wd:()=>x,c1:()=>t,cb:()=>v,nf:()=>A,ox:()=>w,wp:()=>s,xO:()=>u});var e=c(89477),f=c.n(e),g=c(86697),h=c.n(g),i=c(95398),j=c(26238),k=c(80547),l=a([k]);k=(l.then?(await l)():l)[0];let z=new Set([".git",".pi",".next","node_modules","dist","build","coverage","__pycache__",".pytest_cache",".mypy_cache",".turbo",".cache","target","vendor"]);class A extends Error{constructor(a,b){super(b),this.code=a}}function m(a){return a instanceof Set?a:new Set(a)}function n(a){return!a||"."===a||".."===a||a.includes("\0")?"Invalid name":a.includes("/")||a.includes("\\")||h().basename(a)!==a?"Name must not contain a path":z.has(a)||a.startsWith(".pi-save-")?"Protected name is not allowed":".env"===a||a.startsWith(".env.")&&".env.example"!==a?"Environment files are not allowed":null}function o(a,b){let c=a?.code;if("ENOENT"===c)throw new A("not-found",b);if("EACCES"===c||"EPERM"===c)throw new A("forbidden","Access denied");if("EEXIST"===c)throw new A("conflict","Already exists");throw a}function p(a){let b=new Set;for(let c of m(a))try{b.add(f().realpathSync(c))}catch{}return b}function q(a,b){let c,d;if(!(0,k.A$)(a,m(b)))throw new A("forbidden","Access denied");try{c=f().statSync(a)}catch(a){return o(a,"Directory not found")}if(!c.isDirectory())throw new A("bad-request","Target is not a directory");try{d=f().realpathSync(a)}catch(a){return o(a,"Directory not found")}if(!(0,k.A$)(d,p(b)))throw new A("forbidden","Access denied");return d}function r(a,b){let c=a;for(;;){let a;try{a=f().lstatSync(c)}catch(a){return o(a,"Path not found")}if(a.isSymbolicLink())throw new A("forbidden","Symbolic links are not allowed");if(c===b)break;let d=h().dirname(c);if(d===c)break;c=d}}function s(a,b,c){let d=n(b);if(d)throw new A("bad-request",d);let e=q(a,c),g=h().join(e,b);if(!(0,k.A$)(g,p(c)))throw new A("forbidden","Access denied");try{f().writeFileSync(g,Buffer.alloc(0),{flag:"wx",mode:420})}catch(a){return o(a,"Failed to create file")}return{path:g,name:b}}function t(a,b,c){let d=n(b);if(d)throw new A("bad-request",d);let e=q(a,c),g=h().join(e,b);if(!(0,k.A$)(g,p(c)))throw new A("forbidden","Access denied");try{f().mkdirSync(g,{recursive:!1,mode:493})}catch(a){return o(a,"Failed to create directory")}return{path:g,name:b}}function u(a,b,c){let d,e,g=n(b);if(g)throw new A("bad-request",g);let i=m(c);if(!(0,k.A$)(a,i))throw new A("forbidden","Access denied");try{d=f().lstatSync(a)}catch(a){return o(a,"Not found")}if(d.isSymbolicLink())throw new A("forbidden","Symbolic links are not allowed");try{e=f().realpathSync(a)}catch(a){return o(a,"Not found")}let j=p(c);if(!(0,k.A$)(e,j))throw new A("forbidden","Access denied");let l=h().dirname(e);r(l,l);let q=h().join(l,b);if(q===e)return{path:e,name:b};if(!(0,k.A$)(q,j))throw new A("forbidden","Access denied");if(f().existsSync(q))throw new A("conflict","Already exists");try{f().renameSync(e,q)}catch(a){return o(a,"Rename failed")}return{path:q,name:b}}function v(a,b,c){let d,e,g=m(c),i=p(c);if(!(0,k.A$)(a,g))throw new A("forbidden","Access denied");try{d=f().lstatSync(a)}catch(a){return o(a,"Not found")}if(d.isSymbolicLink())throw new A("forbidden","Symbolic links are not allowed");try{e=f().realpathSync(a)}catch(a){return o(a,"Not found")}if(!(0,k.A$)(e,i))throw new A("forbidden","Access denied");r(h().dirname(e),e);let j=q(b,c),l=h().join(j,h().basename(e));if(l===e)return{path:e,name:h().basename(e)};if(!(0,k.A$)(l,i))throw new A("forbidden","Access denied");if(d.isDirectory()){let a=h().relative(e,j);if(""===a||!a.startsWith("..")&&".."!==a&&!h().isAbsolute(a))throw new A("bad-request","Cannot move a directory into itself")}if(f().existsSync(l))throw new A("conflict","Already exists");try{f().renameSync(e,l)}catch(a){return o(a,"Move failed")}return{path:l,name:h().basename(l)}}function w(a,b,c){let d,e,g=m(c),i=p(c);if(!(0,k.A$)(a,g))throw new A("forbidden","Access denied");try{d=f().lstatSync(a)}catch(a){return o(a,"Not found")}if(d.isSymbolicLink())throw new A("forbidden","Symbolic links are not allowed");try{e=f().realpathSync(a)}catch(a){return o(a,"Not found")}if(!(0,k.A$)(e,i))throw new A("forbidden","Access denied");r(h().dirname(e),e);let j=q(b,c),l=h().join(j,h().basename(e));if(l===e)throw new A("bad-request","Cannot copy onto itself");if(!(0,k.A$)(l,i))throw new A("forbidden","Access denied");if(f().existsSync(l))throw new A("conflict","Already exists");try{d.isDirectory()?f().cpSync(e,l,{recursive:!0,dereference:!1}):f().copyFileSync(e,l,f().constants.COPYFILE_EXCL)}catch(a){return o(a,"Copy failed")}return{path:l,name:h().basename(l)}}function x(a){let b=h().dirname(a),c=h().basename(a),d=(0,i.spawn)("tar",["-czf","-","-C",b,c],{stdio:["ignore","pipe","pipe"]});if(!d.stdout)throw d.kill(),new A("bad-request","Failed to start archive");return d.stderr?.resume(),d.on("error",()=>{}),j.Readable.toWeb(d.stdout)}function y(a){switch(a){case"bad-request":return 400;case"forbidden":return 403;case"not-found":return 404;case"conflict":return 409;default:return 500}}d()}catch(a){d(a)}})},94735:a=>{a.exports=require("events")},95398:a=>{a.exports=require("node:child_process")}};var b=require("../../../../webpack-runtime.js");b.C(a);var c=b.X(0,[4741,1813,5582,7594],()=>b(b.s=6954));module.exports=c})();
49
+ `;try{d.enqueue(new TextEncoder().encode(c))}catch{}};e("connected",{filePath:v});try{(a=g().watch(p,()=>{try{let a=g().statSync(p);if(a.mtimeMs===b&&a.size===c)return;b=a.mtimeMs,c=a.size,e("change",{mtime:a.mtime.toISOString(),size:a.size})}catch{e("change",{mtime:new Date().toISOString(),size:0})}})).on("error",()=>{try{d.close()}catch{}})}catch{e("error",{message:"Failed to watch file"}),d.close()}},cancel(){try{a?.close()}catch{}}});return new Response(d,{headers:{"Content-Type":"text/event-stream","Cache-Control":"no-cache, no-transform",Connection:"keep-alive","X-Accel-Buffering":"no"}})}if(!r.isDirectory())return e.NextResponse.json({error:"Not a directory"},{status:400});let I=g().readdirSync(p,{withFileTypes:!0}).filter(a=>!E.has(a.name)&&!F.some(b=>a.name.endsWith(b))).flatMap(a=>{let b=(0,m.w)(a,i().join(p,a.name));return null===b?[]:[{name:a.name,isDir:b,size:0,modified:""}]}).sort((a,b)=>a.isDir!==b.isDir?a.isDir?-1:1:a.name.localeCompare(b.name));return e.NextResponse.json({entries:I,path:v})}catch(a){return e.NextResponse.json({error:String(a)},{status:500})}}d()}catch(a){d(a)}})},1932:a=>{a.exports=require("url")},3295:a=>{a.exports=require("next/dist/server/app-render/after-task-async-storage.external.js")},4984:a=>{a.exports=require("readline")},6954:(a,b,c)=>{c.a(a,async(a,d)=>{try{c.r(b),c.d(b,{handler:()=>y,patchFetch:()=>x,routeModule:()=>z,serverHooks:()=>C,workAsyncStorage:()=>A,workUnitAsyncStorage:()=>B});var e=c(19225),f=c(84006),g=c(8317),h=c(99373),i=c(34775),j=c(24235),k=c(261),l=c(54365),m=c(90771),n=c(73461),o=c(67798),p=c(92280),q=c(62018),r=c(45696),s=c(47929),t=c(86439),u=c(37527),v=c(1304),w=a([v]);v=(w.then?(await w)():w)[0];let z=new e.AppRouteRouteModule({definition:{kind:f.RouteKind.APP_ROUTE,page:"/api/files/[...path]/route",pathname:"/api/files/[...path]",filename:"route",bundlePath:"app/api/files/[...path]/route"},distDir:".next",relativeProjectDir:"",resolvedPagePath:"/tmp/pidance-release-build/app/api/files/[...path]/route.ts",nextConfigOutput:"",userland:v,...{}}),{workAsyncStorage:A,workUnitAsyncStorage:B,serverHooks:C}=z;function x(){return(0,g.patchFetch)({workAsyncStorage:A,workUnitAsyncStorage:B})}async function y(a,b,c){c.requestMeta&&(0,h.setRequestMeta)(a,c.requestMeta),z.isDev&&(0,h.addRequestMeta)(a,"devRequestTimingInternalsEnd",process.hrtime.bigint());let d="/api/files/[...path]/route";"/index"===d&&(d="/");let e=await z.prepare(a,b,{srcPage:d,multiZoneDraftMode:!1});if(!e)return b.statusCode=400,b.end("Bad Request"),null==c.waitUntil||c.waitUntil.call(c,Promise.resolve()),null;let{buildId:g,deploymentId:v,params:w,nextConfig:x,parsedUrl:y,isDraftMode:A,prerenderManifest:B,routerServerContext:C,isOnDemandRevalidate:D,revalidateOnlyGenerated:E,resolvedPathname:F,clientReferenceManifest:G,serverActionsManifest:H}=e,I=(0,k.normalizeAppPath)(d),J=!!(B.dynamicRoutes[I]||B.routes[F]),K=async()=>((null==C?void 0:C.render404)?await C.render404(a,b,y,!1):b.end("This page could not be found"),null);if(J&&!A){let a=!!B.routes[F],b=B.dynamicRoutes[I];if(b&&!1===b.fallback&&!a){if(x.adapterPath)return await K();throw new t.NoFallbackError}}let L=null;!J||z.isDev||A||(L=F,L="/index"===L?"/":L);let M=!0===z.isDev||!J,N=J&&!M;H&&G&&(0,j.setManifestsSingleton)({page:d,clientReferenceManifest:G,serverActionsManifest:H});let O=a.method||"GET",P=(0,i.getTracer)(),Q=P.getActiveScopeSpan(),R=!!(null==C?void 0:C.isWrappedByNextServer),S=!!(0,h.getRequestMeta)(a,"minimalMode"),T=(0,h.getRequestMeta)(a,"incrementalCache")||await z.getIncrementalCache(a,x,B,S);null==T||T.resetRequestCache(),globalThis.__incrementalCache=T;let U={params:w,previewProps:B.preview,renderOpts:{experimental:{authInterrupts:!!x.experimental.authInterrupts},cacheComponents:!!x.cacheComponents,supportsDynamicResponse:M,incrementalCache:T,cacheLifeProfiles:x.cacheLife,waitUntil:c.waitUntil,onClose:a=>{b.on("close",a)},onAfterTaskError:void 0,onInstrumentationRequestError:(b,c,d,e)=>z.onRequestError(a,b,d,e,C)},sharedContext:{buildId:g,deploymentId:v}},V=new l.NodeNextRequest(a),W=new l.NodeNextResponse(b),X=m.NextRequestAdapter.fromNodeNextRequest(V,(0,m.signalFromNodeResponse)(b));try{let e,g=async a=>z.handle(X,U).finally(()=>{if(!a)return;a.setAttributes({"http.status_code":b.statusCode,"next.rsc":!1});let c=P.getRootSpanAttributes();if(!c)return;if(c.get("next.span_type")!==n.BaseServerSpan.handleRequest)return void console.warn(`Unexpected root span type '${c.get("next.span_type")}'. Please report this Next.js issue https://github.com/vercel/next.js`);let f=c.get("next.route");if(f){let b=`${O} ${f}`;a.setAttributes({"next.route":f,"http.route":f,"next.span_name":b}),a.updateName(b),e&&e!==a&&(e.setAttribute("http.route",f),e.updateName(b))}else a.updateName(`${O} ${d}`)}),h=async e=>{var h,i;let j=async({previousCacheEntry:f})=>{try{if(!S&&D&&E&&!f)return b.statusCode=404,b.setHeader("x-nextjs-cache","REVALIDATED"),b.end("This page could not be found"),null;let d=await g(e);a.fetchMetrics=U.renderOpts.fetchMetrics;let h=U.renderOpts.pendingWaitUntil;h&&c.waitUntil&&(c.waitUntil(h),h=void 0);let i=U.renderOpts.collectedTags;if(!J)return await (0,p.I)(V,W,d,U.renderOpts.pendingWaitUntil),null;{let a=await d.blob(),b=(0,q.toNodeOutgoingHttpHeaders)(d.headers);i&&(b[s.NEXT_CACHE_TAGS_HEADER]=i),!b["content-type"]&&a.type&&(b["content-type"]=a.type);let c=void 0!==U.renderOpts.collectedRevalidate&&!(U.renderOpts.collectedRevalidate>=s.INFINITE_CACHE)&&U.renderOpts.collectedRevalidate,e=void 0===U.renderOpts.collectedExpire||U.renderOpts.collectedExpire>=s.INFINITE_CACHE?void 0:U.renderOpts.collectedExpire;return{value:{kind:u.CachedRouteKind.APP_ROUTE,status:d.status,body:Buffer.from(await a.arrayBuffer()),headers:b},cacheControl:{revalidate:c,expire:e}}}}catch(b){throw(null==f?void 0:f.isStale)&&await z.onRequestError(a,b,{routerKind:"App Router",routePath:d,routeType:"route",revalidateReason:(0,o.c)({isStaticGeneration:N,isOnDemandRevalidate:D})},!1,C),b}},k=await z.handleResponse({req:a,nextConfig:x,cacheKey:L,routeKind:f.RouteKind.APP_ROUTE,isFallback:!1,prerenderManifest:B,isRoutePPREnabled:!1,isOnDemandRevalidate:D,revalidateOnlyGenerated:E,responseGenerator:j,waitUntil:c.waitUntil,isMinimalMode:S});if(!J)return null;if((null==k||null==(h=k.value)?void 0:h.kind)!==u.CachedRouteKind.APP_ROUTE)throw Object.defineProperty(Error(`Invariant: app-route received invalid cache entry ${null==k||null==(i=k.value)?void 0:i.kind}`),"__NEXT_ERROR_CODE",{value:"E701",enumerable:!1,configurable:!0});S||b.setHeader("x-nextjs-cache",D?"REVALIDATED":k.isMiss?"MISS":k.isStale?"STALE":"HIT"),A&&b.setHeader("Cache-Control","private, no-cache, no-store, max-age=0, must-revalidate");let l=(0,q.fromNodeOutgoingHttpHeaders)(k.value.headers);return S&&J||l.delete(s.NEXT_CACHE_TAGS_HEADER),!k.cacheControl||b.getHeader("Cache-Control")||l.get("Cache-Control")||l.set("Cache-Control",(0,r.getCacheControlHeader)(k.cacheControl)),await (0,p.I)(V,W,new Response(k.value.body,{headers:l,status:k.value.status||200})),null};R&&Q?await h(Q):(e=P.getActiveScopeSpan(),await P.withPropagatedContext(a.headers,()=>P.trace(n.BaseServerSpan.handleRequest,{spanName:`${O} ${d}`,kind:i.SpanKind.SERVER,attributes:{"http.method":O,"http.target":a.url}},h),void 0,!R))}catch(b){if(b instanceof t.NoFallbackError||await z.onRequestError(a,b,{routerKind:"App Router",routePath:I,routeType:"route",revalidateReason:(0,o.c)({isStaticGeneration:N,isOnDemandRevalidate:D})},!1,C),J)throw b;return await (0,p.I)(V,W,new Response(null,{status:500})),null}}d()}catch(a){d(a)}})},10846:a=>{a.exports=require("next/dist/compiled/next-server/app-page.runtime.prod.js")},21820:a=>{a.exports=require("os")},26238:a=>{a.exports=require("node:stream")},27910:a=>{a.exports=require("stream")},28354:a=>{a.exports=require("util")},29021:a=>{a.exports=require("fs")},29294:a=>{a.exports=require("next/dist/server/app-render/work-async-storage.external.js")},33873:a=>{a.exports=require("path")},44870:a=>{a.exports=require("next/dist/compiled/next-server/app-route.runtime.prod.js")},49180:(a,b,c)=>{c.d(b,{ah:()=>f,iX:()=>h,j1:()=>i});var d=c(50593);let e=/^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$/i;function f(a){return!!a&&e.test(a)}function g(a){return/[A-Za-z0-9._~+%@/\\:-]/.test(a)}function h(a,b){for(let c of b){let b=[];if(!function a(b,c){if("string"==typeof b)return void c.push(b);if(b&&"object"==typeof b){if(Array.isArray(b)){for(let d of b)a(d,c);return}for(let d of Object.values(b))a(d,c)}}(c,b),b.some(b=>(function(a,b){let c=(0,d.Nw)(b),e=c.startsWith("/")?[c,`file://${c}`]:[c];for(let b of new Set([(0,d.Nw)(a),(0,d.Nw)((0,d.ex)(a))]))for(let a of e){let c=b.indexOf(a);for(;-1!==c;){let d=0===c?"":b[c-1],e=c+a.length;if((0===c||!g(d))&&function(a,b){if(b>=a.length)return!0;let c=a[b];return":"===c?/\d/.test(a[b+1]??""):!g(c)}(b,e))return!0;c=b.indexOf(a,c+1)}}return!1})(b,a)))return!0}return!1}function i(a,b){return b.some(b=>"message"===b.type&&"bashExecution"===b.message.role&&b.message.fullOutputPath===a)}},54968:(a,b,c)=>{c.a(a,async(a,d)=>{try{c.d(b,{$:()=>l});var e=c(23211),f=c(80547),g=c(1060),h=c(400),i=c(40402),j=c(37594),k=a([f,i,j]);[f,i,j]=k.then?(await k)():k;let m={resolveSessionPath:i.os,requireWritableSession:j.Yz,isReadOnly:j.mB.isReadOnly,readSessionHeader:i.eP,getAllowedFileRoots:f.mc,saveFile:h.OJ,isFilePathAllowed:f.A$,getBinaryMime:a=>(0,g.cV)(a)||(0,g.X)(a)||(0,g.oC)(a)};async function l(a,b,c={}){let d={...m,...c};try{let c=(0,f.Nw)(b);if(!c.startsWith("/")&&!(0,f.uK)(c))return e.NextResponse.json({error:"Save target must be absolute"},{status:400});let g=a.nextUrl.searchParams.get("sessionId");if(!g)return e.NextResponse.json({error:"sessionId is required"},{status:400});let h=await a.json().catch(()=>null);if("string"!=typeof h?.content||"number"!=typeof h.baseline?.mtimeMs||!Number.isFinite(h.baseline.mtimeMs)||h.baseline.mtimeMs<0||"number"!=typeof h.baseline?.size||!Number.isFinite(h.baseline.size)||h.baseline.size<0)return e.NextResponse.json({error:"Invalid save request"},{status:400});let i=await d.resolveSessionPath(g);if(!i)return e.NextResponse.json({error:"Session not found"},{status:404});try{await d.requireWritableSession(g,d.isReadOnly)}catch(a){if(a instanceof j.C9)return e.NextResponse.json({error:a.message},{status:403});throw a}let k=d.readSessionHeader(i);if(!k?.cwd)return e.NextResponse.json({error:"Session cwd not found"},{status:404});let l={target:b,cwd:k.cwd,sourceSessionId:g,allowedRoots:await d.getAllowedFileRoots(),content:h.content,baseline:{mtimeMs:h.baseline.mtimeMs,size:h.baseline.size},isAllowed:d.isFilePathAllowed,getBinaryMime:d.getBinaryMime},m=d.saveFile(l);return e.NextResponse.json({success:!0,...m})}catch(a){if(a instanceof h.Sk){let b={"bad-request":400,forbidden:403,"not-found":404,conflict:409,"too-large":413}[a.code];return"conflict"===a.code?e.NextResponse.json({error:"File changed externally",baseline:JSON.parse(a.message)},{status:b}):e.NextResponse.json({error:a.message},{status:b})}return e.NextResponse.json({error:a instanceof Error?a.message:String(a)},{status:500})}}d()}catch(a){d(a)}})},55484:(a,b,c)=>{c.d(b,{Ey:()=>i,Gu:()=>k,SI:()=>j});var d=c(29021),e=c.n(d),f=c(33873),g=c.n(f);let h=new Set(["error","overwrite","skip"]);function i(a){let b=a??"error";return h.has(b)?b:null}function j(a){if(0===a.length)return"No files selected";let b=new Set;for(let c of a){if(!c||"."===c||".."===c||c.includes("\0"))return`Invalid file name: ${c||"(empty)"}`;if(c.includes("/")||c.includes("\\")||g().basename(c)!==c)return`File names must not contain a path: ${c}`;if(b.has(c))return`Duplicate file name in upload: ${c}`;b.add(c)}return null}function k(a,b){let c=[],d=[];for(let f of b){let b,h=g().join(a,f);try{b=e().lstatSync(h)}catch(a){if("ENOENT"===a.code)continue;throw a}c.push(f),(!b.isFile()||b.isSymbolicLink())&&d.push(f)}return{conflicts:c,nonReplaceable:d}}},55511:a=>{a.exports=require("crypto")},60601:(a,b,c)=>{c.a(a,async(a,d)=>{try{c.d(b,{fu:()=>p,hI:()=>o,iM:()=>m});var e=c(89477),f=c.n(e),g=c(86697),h=c.n(g),i=c(400),j=c(80547),k=a([j]);function l(a){let b=a?.code;return"ENOENT"===b||"ENOTDIR"===b}function m(a,b){let c,d;try{c=f().realpathSync(a)}catch(a){if(l(a))return{kind:"not-found"};return{kind:"denied"}}try{d=f().statSync(c)}catch(a){if(l(a))return{kind:"not-found"};return{kind:"denied"}}if((0,j.bk)())return{kind:"ok",realPath:c,stat:d};let e=!1;for(let a of b){let b;try{b=f().realpathSync(a)}catch{continue}if(e=!0,c===b||(0,i.j0)(c,b))return{kind:"ok",realPath:c,stat:d}}return e?{kind:"outside-roots",realPath:c,stat:d}:{kind:"denied"}}function n(a){return"win32"===process.platform?a.toLowerCase():a}function o(a,b){try{return n(h().resolve(a))===n(b)}catch{return!1}}function p(a){let b="number"==typeof f().constants.O_NOFOLLOW?f().constants.O_NOFOLLOW:0,c=f().openSync(a,f().constants.O_RDONLY|b);try{if(!f().fstatSync(c).isFile())throw Error("Read path is not a regular file");return c}catch(a){try{f().closeSync(c)}catch{}throw a}}j=(k.then?(await k)():k)[0],d()}catch(a){d(a)}})},62228:a=>{a.exports=require("node:os")},63033:a=>{a.exports=require("next/dist/server/app-render/work-unit-async-storage.external.js")},65630:(a,b,c)=>{c.a(a,async(a,d)=>{try{c.d(b,{Iq:()=>h,jV:()=>i});var e=c(40402),f=c(49180),g=a([e]);async function h(a,b){if(!(0,f.ah)(b))return!1;try{let c=await (0,e.os)(b);if(!c)return!1;return(0,f.iX)(a,(0,e.DK)(c))}catch{return!1}}async function i(a,b){if(!(0,f.ah)(b))return!1;try{let c=await (0,e.os)(b);if(!c)return!1;return(0,f.j1)(a,(0,e.DK)(c))}catch{return!1}}e=(g.then?(await g)():g)[0],d()}catch(a){d(a)}})},74940:(a,b,c)=>{c.d(b,{le:()=>f});var d=c(68524);function e(a,b){return"number"==typeof a&&Number.isFinite(a)&&a>0?Math.floor(a):b}function f(a){var b;let c;return{indexMaxFiles:e((c="object"!=typeof(b=(0,d.rV)(a).fileConfig)||null===b||Array.isArray(b)?{}:b).indexMaxFiles,5e3),indexGitHardCap:e(c.indexGitHardCap,2e5),indexWalkHardCap:e(c.indexWalkHardCap,5e4),indexMaxWalkDepth:e(c.indexMaxWalkDepth,8),atResultLimit:e(c.atResultLimit,20),textPreviewMaxBytes:e(c.textPreviewMaxBytes,0xa00000),imagePreviewMaxBytes:e(c.imagePreviewMaxBytes,0x3200000),docxPreviewMaxBytes:e(c.docxPreviewMaxBytes,0xa00000),browseMaxEntries:e(c.browseMaxEntries,400)}}},75430:a=>{a.exports=import("@earendil-works/pi-coding-agent")},79428:a=>{a.exports=require("buffer")},79646:a=>{a.exports=require("child_process")},79748:a=>{a.exports=require("fs/promises")},86439:a=>{a.exports=require("next/dist/shared/lib/no-fallback-error.external")},86697:a=>{a.exports=require("node:path")},88473:(a,b,c)=>{c.d(b,{w:()=>f});var d=c(29021),e=c.n(d);function f(a,b){if(a.isDirectory())return!0;if(a.isFile())return!1;try{return e().statSync(b).isDirectory()}catch{return null}}},89477:a=>{a.exports=require("node:fs")},93089:(a,b,c)=>{c.a(a,async(a,d)=>{try{c.d(b,{LO:()=>y,Wd:()=>x,c1:()=>t,cb:()=>v,nf:()=>z,ox:()=>w,wp:()=>s,xO:()=>u});var e=c(89477),f=c.n(e),g=c(86697),h=c.n(g),i=c(95398),j=c(26238),k=c(80547),l=a([k]);k=(l.then?(await l)():l)[0];class z extends Error{constructor(a,b){super(b),this.code=a}}function m(a){return a instanceof Set?a:new Set(a)}function n(a){return!a||"."===a||".."===a||a.includes("\0")?"Invalid name":a.includes("/")||a.includes("\\")||h().basename(a)!==a?"Name must not contain a path":null}function o(a,b){let c=a?.code;if("ENOENT"===c)throw new z("not-found",b);if("EACCES"===c||"EPERM"===c)throw new z("forbidden","Access denied");if("EEXIST"===c)throw new z("conflict","Already exists");throw a}function p(a){let b=new Set;for(let c of m(a))try{b.add(f().realpathSync(c))}catch{}return b}function q(a,b){let c,d;if(!(0,k.A$)(a,m(b)))throw new z("forbidden","Access denied");try{c=f().statSync(a)}catch(a){return o(a,"Directory not found")}if(!c.isDirectory())throw new z("bad-request","Target is not a directory");try{d=f().realpathSync(a)}catch(a){return o(a,"Directory not found")}if(!(0,k.A$)(d,p(b)))throw new z("forbidden","Access denied");return d}function r(a,b){let c=a;for(;;){let a;try{a=f().lstatSync(c)}catch(a){return o(a,"Path not found")}if(a.isSymbolicLink())throw new z("forbidden","Symbolic links are not allowed");if(c===b)break;let d=h().dirname(c);if(d===c)break;c=d}}function s(a,b,c){let d=n(b);if(d)throw new z("bad-request",d);let e=q(a,c),g=h().join(e,b);if(!(0,k.A$)(g,p(c)))throw new z("forbidden","Access denied");try{f().writeFileSync(g,Buffer.alloc(0),{flag:"wx",mode:420})}catch(a){return o(a,"Failed to create file")}return{path:g,name:b}}function t(a,b,c){let d=n(b);if(d)throw new z("bad-request",d);let e=q(a,c),g=h().join(e,b);if(!(0,k.A$)(g,p(c)))throw new z("forbidden","Access denied");try{f().mkdirSync(g,{recursive:!1,mode:493})}catch(a){return o(a,"Failed to create directory")}return{path:g,name:b}}function u(a,b,c){let d,e,g=n(b);if(g)throw new z("bad-request",g);let i=m(c);if(!(0,k.A$)(a,i))throw new z("forbidden","Access denied");try{d=f().lstatSync(a)}catch(a){return o(a,"Not found")}if(d.isSymbolicLink())throw new z("forbidden","Symbolic links are not allowed");try{e=f().realpathSync(a)}catch(a){return o(a,"Not found")}let j=p(c);if(!(0,k.A$)(e,j))throw new z("forbidden","Access denied");let l=h().dirname(e);r(l,l);let q=h().join(l,b);if(q===e)return{path:e,name:b};if(!(0,k.A$)(q,j))throw new z("forbidden","Access denied");if(f().existsSync(q))throw new z("conflict","Already exists");try{f().renameSync(e,q)}catch(a){return o(a,"Rename failed")}return{path:q,name:b}}function v(a,b,c){let d,e,g=m(c),i=p(c);if(!(0,k.A$)(a,g))throw new z("forbidden","Access denied");try{d=f().lstatSync(a)}catch(a){return o(a,"Not found")}if(d.isSymbolicLink())throw new z("forbidden","Symbolic links are not allowed");try{e=f().realpathSync(a)}catch(a){return o(a,"Not found")}if(!(0,k.A$)(e,i))throw new z("forbidden","Access denied");r(h().dirname(e),e);let j=q(b,c),l=h().join(j,h().basename(e));if(l===e)return{path:e,name:h().basename(e)};if(!(0,k.A$)(l,i))throw new z("forbidden","Access denied");if(d.isDirectory()){let a=h().relative(e,j);if(""===a||!a.startsWith("..")&&".."!==a&&!h().isAbsolute(a))throw new z("bad-request","Cannot move a directory into itself")}if(f().existsSync(l))throw new z("conflict","Already exists");try{f().renameSync(e,l)}catch(a){return o(a,"Move failed")}return{path:l,name:h().basename(l)}}function w(a,b,c){let d,e,g=m(c),i=p(c);if(!(0,k.A$)(a,g))throw new z("forbidden","Access denied");try{d=f().lstatSync(a)}catch(a){return o(a,"Not found")}if(d.isSymbolicLink())throw new z("forbidden","Symbolic links are not allowed");try{e=f().realpathSync(a)}catch(a){return o(a,"Not found")}if(!(0,k.A$)(e,i))throw new z("forbidden","Access denied");r(h().dirname(e),e);let j=q(b,c),l=h().join(j,h().basename(e));if(l===e)throw new z("bad-request","Cannot copy onto itself");if(!(0,k.A$)(l,i))throw new z("forbidden","Access denied");if(f().existsSync(l))throw new z("conflict","Already exists");try{d.isDirectory()?f().cpSync(e,l,{recursive:!0,dereference:!1}):f().copyFileSync(e,l,f().constants.COPYFILE_EXCL)}catch(a){return o(a,"Copy failed")}return{path:l,name:h().basename(l)}}function x(a){let b=h().dirname(a),c=h().basename(a),d=(0,i.spawn)("tar",["-czf","-","-C",b,c],{stdio:["ignore","pipe","pipe"]});if(!d.stdout)throw d.kill(),new z("bad-request","Failed to start archive");return d.stderr?.resume(),d.on("error",()=>{}),j.Readable.toWeb(d.stdout)}function y(a){switch(a){case"bad-request":return 400;case"forbidden":return 403;case"not-found":return 404;case"conflict":return 409;default:return 500}}d()}catch(a){d(a)}})},94735:a=>{a.exports=require("events")},95398:a=>{a.exports=require("node:child_process")}};var b=require("../../../../webpack-runtime.js");b.C(a);var c=b.X(0,[4741,1813,5582,7594],()=>b(b.s=6954));module.exports=c})();
@@ -1 +1 @@
1
- (()=>{var a={};a.id=552,a.ids=[552],a.modules={261:a=>{"use strict";a.exports=require("next/dist/shared/lib/router/utils/app-paths")},10846:a=>{"use strict";a.exports=require("next/dist/compiled/next-server/app-page.runtime.prod.js")},15770:(a,b,c)=>{"use strict";c.r(b),c.d(b,{handler:()=>Q,patchFetch:()=>P,routeModule:()=>L,serverHooks:()=>O,workAsyncStorage:()=>M,workUnitAsyncStorage:()=>N});var d={};c.r(d),c.d(d,{GET:()=>K,dynamic:()=>D});var e=c(19225),f=c(84006),g=c(8317),h=c(99373),i=c(34775),j=c(24235),k=c(261),l=c(54365),m=c(90771),n=c(73461),o=c(67798),p=c(92280),q=c(62018),r=c(45696),s=c(47929),t=c(86439),u=c(37527),v=c(79748),w=c(33873),x=c(60396),y=c(17924),z=c(28967),A=c(8106),B=c(21182),C=c(92395);let D="force-dynamic",E=new Intl.Collator(void 0,{numeric:!0,sensitivity:"base"});function F(a,b){return E.compare(a.name||a.id,b.name||b.id)||E.compare(a.provider,b.provider)||E.compare(a.id,b.id)}let G=new Set(["off","minimal","low","medium","high","xhigh","max"]);function H(a){let b=a.trim(),c=b.lastIndexOf(":");if(-1===c)return b;let d=b.substring(c+1);return G.has(d)?b.substring(0,c):b}async function I(a){let b=(0,x.Mc)(),c=(0,x.pA)(),d=(0,x.CZ)(),e=(0,C.wq)(c),f=Array.isArray(e.enabledModels)?e.enabledModels:void 0,g=(0,A.js)(b),h={};for(let a of(0,y.yN)(d))h[a]=(0,y.gb)(a,{authPath:d,modelsPath:b});for(let a of g)void 0===h[a.provider]&&(h[a.provider]=(0,y.gb)(a.provider,{authPath:d,modelsPath:b}));let i=await (0,B.v1)(),j=(0,A.kp)(g,i,h),k=(0,A.cJ)(j,{settingsPath:c,authConfigured:h}),l=function(a,b){if(!b||0===b.length)return a;let c=new Set(b.map(H).filter(Boolean)),d=a.filter(a=>c.has(`${a.provider}/${a.id}`)||c.has(a.id));return d.length>0?d:a}(k.modelList,f),m=new Set(l.map(a=>`${a.provider}:${a.id}`)),n={},o={},p={};for(let a of l){let b=`${a.provider}:${a.id}`;n[b]=k.models[b]??a.name,k.thinkingLevels[b]&&(o[b]=k.thinkingLevels[b]),k.thinkingLevelMaps[b]&&(p[b]=k.thinkingLevelMaps[b])}let q=k.defaultModel;return q&&!m.has(`${q.provider}:${q.modelId}`)&&(q=null),{models:n,modelList:[...l].sort(F),defaultModel:q,thinkingLevels:o,thinkingLevelMaps:p,authConfigured:k.authConfigured}}let J={models:{},modelList:[],defaultModel:null,thinkingLevels:{},thinkingLevelMaps:{},authConfigured:{}};async function K(a){let b,c=new URL(a.url).searchParams.get("cwd")||process.cwd(),d=(0,w.resolve)(c);try{b=await (0,v.stat)(d)}catch{return Response.json({error:`Directory does not exist: ${d}`},{status:400})}if(!b.isDirectory())return Response.json({error:`Not a directory: ${d}`},{status:400});try{return Response.json(await (0,z.rC)(d,()=>I(d)))}catch{return Response.json(J)}}let L=new e.AppRouteRouteModule({definition:{kind:f.RouteKind.APP_ROUTE,page:"/api/models/route",pathname:"/api/models",filename:"route",bundlePath:"app/api/models/route"},distDir:".next",relativeProjectDir:"",resolvedPagePath:"/tmp/pidance-release-build/app/api/models/route.ts",nextConfigOutput:"",userland:d,...{}}),{workAsyncStorage:M,workUnitAsyncStorage:N,serverHooks:O}=L;function P(){return(0,g.patchFetch)({workAsyncStorage:M,workUnitAsyncStorage:N})}async function Q(a,b,c){c.requestMeta&&(0,h.setRequestMeta)(a,c.requestMeta),L.isDev&&(0,h.addRequestMeta)(a,"devRequestTimingInternalsEnd",process.hrtime.bigint());let d="/api/models/route";"/index"===d&&(d="/");let e=await L.prepare(a,b,{srcPage:d,multiZoneDraftMode:!1});if(!e)return b.statusCode=400,b.end("Bad Request"),null==c.waitUntil||c.waitUntil.call(c,Promise.resolve()),null;let{buildId:g,deploymentId:v,params:w,nextConfig:x,parsedUrl:y,isDraftMode:z,prerenderManifest:A,routerServerContext:B,isOnDemandRevalidate:C,revalidateOnlyGenerated:D,resolvedPathname:E,clientReferenceManifest:F,serverActionsManifest:G}=e,H=(0,k.normalizeAppPath)(d),I=!!(A.dynamicRoutes[H]||A.routes[E]),J=async()=>((null==B?void 0:B.render404)?await B.render404(a,b,y,!1):b.end("This page could not be found"),null);if(I&&!z){let a=!!A.routes[E],b=A.dynamicRoutes[H];if(b&&!1===b.fallback&&!a){if(x.adapterPath)return await J();throw new t.NoFallbackError}}let K=null;!I||L.isDev||z||(K="/index"===(K=E)?"/":K);let M=!0===L.isDev||!I,N=I&&!M;G&&F&&(0,j.setManifestsSingleton)({page:d,clientReferenceManifest:F,serverActionsManifest:G});let O=a.method||"GET",P=(0,i.getTracer)(),Q=P.getActiveScopeSpan(),R=!!(null==B?void 0:B.isWrappedByNextServer),S=!!(0,h.getRequestMeta)(a,"minimalMode"),T=(0,h.getRequestMeta)(a,"incrementalCache")||await L.getIncrementalCache(a,x,A,S);null==T||T.resetRequestCache(),globalThis.__incrementalCache=T;let U={params:w,previewProps:A.preview,renderOpts:{experimental:{authInterrupts:!!x.experimental.authInterrupts},cacheComponents:!!x.cacheComponents,supportsDynamicResponse:M,incrementalCache:T,cacheLifeProfiles:x.cacheLife,waitUntil:c.waitUntil,onClose:a=>{b.on("close",a)},onAfterTaskError:void 0,onInstrumentationRequestError:(b,c,d,e)=>L.onRequestError(a,b,d,e,B)},sharedContext:{buildId:g,deploymentId:v}},V=new l.NodeNextRequest(a),W=new l.NodeNextResponse(b),X=m.NextRequestAdapter.fromNodeNextRequest(V,(0,m.signalFromNodeResponse)(b));try{let e,g=async a=>L.handle(X,U).finally(()=>{if(!a)return;a.setAttributes({"http.status_code":b.statusCode,"next.rsc":!1});let c=P.getRootSpanAttributes();if(!c)return;if(c.get("next.span_type")!==n.BaseServerSpan.handleRequest)return void console.warn(`Unexpected root span type '${c.get("next.span_type")}'. Please report this Next.js issue https://github.com/vercel/next.js`);let f=c.get("next.route");if(f){let b=`${O} ${f}`;a.setAttributes({"next.route":f,"http.route":f,"next.span_name":b}),a.updateName(b),e&&e!==a&&(e.setAttribute("http.route",f),e.updateName(b))}else a.updateName(`${O} ${d}`)}),h=async e=>{var h,i;let j=async({previousCacheEntry:f})=>{try{if(!S&&C&&D&&!f)return b.statusCode=404,b.setHeader("x-nextjs-cache","REVALIDATED"),b.end("This page could not be found"),null;let d=await g(e);a.fetchMetrics=U.renderOpts.fetchMetrics;let h=U.renderOpts.pendingWaitUntil;h&&c.waitUntil&&(c.waitUntil(h),h=void 0);let i=U.renderOpts.collectedTags;if(!I)return await (0,p.I)(V,W,d,U.renderOpts.pendingWaitUntil),null;{let a=await d.blob(),b=(0,q.toNodeOutgoingHttpHeaders)(d.headers);i&&(b[s.NEXT_CACHE_TAGS_HEADER]=i),!b["content-type"]&&a.type&&(b["content-type"]=a.type);let c=void 0!==U.renderOpts.collectedRevalidate&&!(U.renderOpts.collectedRevalidate>=s.INFINITE_CACHE)&&U.renderOpts.collectedRevalidate,e=void 0===U.renderOpts.collectedExpire||U.renderOpts.collectedExpire>=s.INFINITE_CACHE?void 0:U.renderOpts.collectedExpire;return{value:{kind:u.CachedRouteKind.APP_ROUTE,status:d.status,body:Buffer.from(await a.arrayBuffer()),headers:b},cacheControl:{revalidate:c,expire:e}}}}catch(b){throw(null==f?void 0:f.isStale)&&await L.onRequestError(a,b,{routerKind:"App Router",routePath:d,routeType:"route",revalidateReason:(0,o.c)({isStaticGeneration:N,isOnDemandRevalidate:C})},!1,B),b}},k=await L.handleResponse({req:a,nextConfig:x,cacheKey:K,routeKind:f.RouteKind.APP_ROUTE,isFallback:!1,prerenderManifest:A,isRoutePPREnabled:!1,isOnDemandRevalidate:C,revalidateOnlyGenerated:D,responseGenerator:j,waitUntil:c.waitUntil,isMinimalMode:S});if(!I)return null;if((null==k||null==(h=k.value)?void 0:h.kind)!==u.CachedRouteKind.APP_ROUTE)throw Object.defineProperty(Error(`Invariant: app-route received invalid cache entry ${null==k||null==(i=k.value)?void 0:i.kind}`),"__NEXT_ERROR_CODE",{value:"E701",enumerable:!1,configurable:!0});S||b.setHeader("x-nextjs-cache",C?"REVALIDATED":k.isMiss?"MISS":k.isStale?"STALE":"HIT"),z&&b.setHeader("Cache-Control","private, no-cache, no-store, max-age=0, must-revalidate");let l=(0,q.fromNodeOutgoingHttpHeaders)(k.value.headers);return S&&I||l.delete(s.NEXT_CACHE_TAGS_HEADER),!k.cacheControl||b.getHeader("Cache-Control")||l.get("Cache-Control")||l.set("Cache-Control",(0,r.getCacheControlHeader)(k.cacheControl)),await (0,p.I)(V,W,new Response(k.value.body,{headers:l,status:k.value.status||200})),null};R&&Q?await h(Q):(e=P.getActiveScopeSpan(),await P.withPropagatedContext(a.headers,()=>P.trace(n.BaseServerSpan.handleRequest,{spanName:`${O} ${d}`,kind:i.SpanKind.SERVER,attributes:{"http.method":O,"http.target":a.url}},h),void 0,!R))}catch(b){if(b instanceof t.NoFallbackError||await L.onRequestError(a,b,{routerKind:"App Router",routePath:H,routeType:"route",revalidateReason:(0,o.c)({isStaticGeneration:N,isOnDemandRevalidate:C})},!1,B),I)throw b;return await (0,p.I)(V,W,new Response(null,{status:500})),null}}},19225:(a,b,c)=>{"use strict";a.exports=c(44870)},21182:(a,b,c)=>{"use strict";c.d(b,{v1:()=>i});var d=c(89477),e=c(86697),f=c(73127);let g=null,h=null;async function i(){return g||h||(h=(async()=>{try{let a=function(a=process.cwd()){let b=a;for(let a=0;a<10;a++){for(let a of[(0,e.join)(b,"node_modules","@earendil-works","pi-coding-agent","node_modules","@earendil-works","pi-ai","dist","providers","all.js"),(0,e.join)(b,"node_modules","@earendil-works","pi-ai","dist","providers","all.js")])if((0,d.existsSync)(a))return a;let a=(0,e.dirname)(b);if(a===b)break;b=a}return null}();if(!a)return g=[];let b=(0,f.pathToFileURL)(a).href,h=null;try{h=await c(98279)(b)}catch{h=null}if(!h||"function"!=typeof h.builtinProviders&&"function"!=typeof h.getBuiltinProviders){let a=Function("u","return import(u)");h=await a(b)}return g=function(a){let b=("function"==typeof a.builtinProviders?a.builtinProviders():null)??("function"==typeof a.getBuiltinProviders?a.getBuiltinProviders():null)??[],c=[];for(let a of b)if(a&&"string"==typeof a.id&&a.id)for(let b of("function"==typeof a.getModels?a.getModels():[])??[]){let d=function(a,b){var c;let d="string"==typeof a.id?a.id:"";if(!d)return null;let e="string"==typeof a.name&&a.name?a.name:d,f="string"==typeof a.provider&&a.provider?a.provider:b,g="object"!=typeof(c=a.thinkingLevelMap)||null===c||Array.isArray(c)?void 0:a.thinkingLevelMap;return{id:d,name:e,provider:f,reasoning:!0===a.reasoning,...g?{thinkingLevelMap:g}:{},..."number"==typeof a.contextWindow&&Number.isFinite(a.contextWindow)?{contextWindow:a.contextWindow}:{},..."number"==typeof a.maxTokens&&Number.isFinite(a.maxTokens)?{maxTokens:a.maxTokens}:{}}}(b,a.id);d&&c.push(d)}return c}(h)}catch{return g=[]}finally{h=null}})())}},28967:(a,b,c)=>{"use strict";function d(){return globalThis.__piModelsCacheState||(globalThis.__piModelsCacheState={entries:new Map,inFlight:new Map,generation:0}),globalThis.__piModelsCacheState}function e(){let a=d();a.generation+=1,a.entries.clear(),a.inFlight.clear(),globalThis.__piModelRuntimeCache?.runtimes.clear()}function f(a,b){let c=d(),e=c.entries.get(a);if(e){if(e.expiresAt>Date.now())return Promise.resolve(e.data);c.entries.delete(a)}let f=c.inFlight.get(a);if(f)return f;let g=c.generation,h=Promise.resolve().then(b).then(b=>{if(c.generation===g&&c.inFlight.get(a)===h){let d=Date.now();for(let[a,b]of c.entries)b.expiresAt<=d&&c.entries.delete(a);for(;c.entries.size>=32;){let a=c.entries.keys().next().value;if(void 0===a)break;c.entries.delete(a)}c.entries.set(a,{data:b,expiresAt:d+6e4})}return b}).finally(()=>{c.inFlight.get(a)===h&&c.inFlight.delete(a)});return c.inFlight.set(a,h),h}c.d(b,{kn:()=>e,rC:()=>f})},29021:a=>{"use strict";a.exports=require("fs")},29294:a=>{"use strict";a.exports=require("next/dist/server/app-render/work-async-storage.external.js")},33873:a=>{"use strict";a.exports=require("path")},44870:a=>{"use strict";a.exports=require("next/dist/compiled/next-server/app-route.runtime.prod.js")},55511:a=>{"use strict";a.exports=require("crypto")},62228:a=>{"use strict";a.exports=require("node:os")},63033:a=>{"use strict";a.exports=require("next/dist/server/app-render/work-unit-async-storage.external.js")},73127:a=>{"use strict";a.exports=require("node:url")},79748:a=>{"use strict";a.exports=require("fs/promises")},86439:a=>{"use strict";a.exports=require("next/dist/shared/lib/no-fallback-error.external")},86697:a=>{"use strict";a.exports=require("node:path")},89477:a=>{"use strict";a.exports=require("node:fs")},92280:(a,b,c)=>{"use strict";Object.defineProperty(b,"I",{enumerable:!0,get:function(){return g}});let d=c(28208),e=c(47617),f=c(62018);async function g(a,b,c,g){if((0,d.isNodeNextResponse)(b)){var h;b.statusCode=c.status,b.statusMessage=c.statusText;let d=["set-cookie","www-authenticate","proxy-authenticate","vary"];null==(h=c.headers)||h.forEach((a,c)=>{if("x-middleware-set-cookie"!==c.toLowerCase())if("set-cookie"===c.toLowerCase())for(let d of(0,f.splitCookiesString)(a))b.appendHeader(c,d);else{let e=void 0!==b.getHeader(c);(d.includes(c.toLowerCase())||!e)&&b.appendHeader(c,a)}});let{originalResponse:i}=b;c.body&&"HEAD"!==a.method?await (0,e.pipeToNodeResponse)(c.body,i,g):i.end()}}},98279:a=>{function b(a){return Promise.resolve().then(()=>{var b=Error("Cannot find module '"+a+"'");throw b.code="MODULE_NOT_FOUND",b})}b.keys=()=>[],b.resolve=b,b.id=98279,a.exports=b}};var b=require("../../../webpack-runtime.js");b.C(a);var c=b.X(0,[4741,981],()=>b(b.s=15770));module.exports=c})();
1
+ (()=>{var a={};a.id=552,a.ids=[552],a.modules={261:a=>{"use strict";a.exports=require("next/dist/shared/lib/router/utils/app-paths")},10846:a=>{"use strict";a.exports=require("next/dist/compiled/next-server/app-page.runtime.prod.js")},15770:(a,b,c)=>{"use strict";c.r(b),c.d(b,{handler:()=>P,patchFetch:()=>O,routeModule:()=>K,serverHooks:()=>N,workAsyncStorage:()=>L,workUnitAsyncStorage:()=>M});var d={};c.r(d),c.d(d,{GET:()=>J,dynamic:()=>C});var e=c(19225),f=c(84006),g=c(8317),h=c(99373),i=c(34775),j=c(24235),k=c(261),l=c(54365),m=c(90771),n=c(73461),o=c(67798),p=c(92280),q=c(62018),r=c(45696),s=c(47929),t=c(86439),u=c(37527),v=c(33873),w=c(60396),x=c(17924),y=c(28967),z=c(8106),A=c(21182),B=c(92395);let C="force-dynamic",D=new Intl.Collator(void 0,{numeric:!0,sensitivity:"base"});function E(a,b){return D.compare(a.name||a.id,b.name||b.id)||D.compare(a.provider,b.provider)||D.compare(a.id,b.id)}let F=new Set(["off","minimal","low","medium","high","xhigh","max"]);function G(a){let b=a.trim(),c=b.lastIndexOf(":");if(-1===c)return b;let d=b.substring(c+1);return F.has(d)?b.substring(0,c):b}async function H(a){let b=(0,w.Mc)(),c=(0,w.pA)(),d=(0,w.CZ)(),e=(0,B.wq)(c),f=Array.isArray(e.enabledModels)?e.enabledModels:void 0,g=(0,z.js)(b),h={};for(let a of(0,x.yN)(d))h[a]=(0,x.gb)(a,{authPath:d,modelsPath:b});for(let a of g)void 0===h[a.provider]&&(h[a.provider]=(0,x.gb)(a.provider,{authPath:d,modelsPath:b}));let i=await (0,A.v1)(),j=(0,z.kp)(g,i,h),k=(0,z.cJ)(j,{settingsPath:c,authConfigured:h}),l=function(a,b){if(!b||0===b.length)return a;let c=new Set(b.map(G).filter(Boolean)),d=a.filter(a=>c.has(`${a.provider}/${a.id}`)||c.has(a.id));return d.length>0?d:a}(k.modelList,f),m=new Set(l.map(a=>`${a.provider}:${a.id}`)),n={},o={},p={};for(let a of l){let b=`${a.provider}:${a.id}`;n[b]=k.models[b]??a.name,k.thinkingLevels[b]&&(o[b]=k.thinkingLevels[b]),k.thinkingLevelMaps[b]&&(p[b]=k.thinkingLevelMaps[b])}let q=k.defaultModel;return q&&!m.has(`${q.provider}:${q.modelId}`)&&(q=null),{models:n,modelList:[...l].sort(E),defaultModel:q,thinkingLevels:o,thinkingLevelMaps:p,authConfigured:k.authConfigured}}let I={models:{},modelList:[],defaultModel:null,thinkingLevels:{},thinkingLevelMaps:{},authConfigured:{}};async function J(a){let b=new URL(a.url).searchParams.get("cwd")||process.cwd(),c=(0,v.resolve)(b);try{return Response.json(await (0,y.rC)(c,()=>H(c)))}catch{return Response.json(I)}}let K=new e.AppRouteRouteModule({definition:{kind:f.RouteKind.APP_ROUTE,page:"/api/models/route",pathname:"/api/models",filename:"route",bundlePath:"app/api/models/route"},distDir:".next",relativeProjectDir:"",resolvedPagePath:"/tmp/pidance-release-build/app/api/models/route.ts",nextConfigOutput:"",userland:d,...{}}),{workAsyncStorage:L,workUnitAsyncStorage:M,serverHooks:N}=K;function O(){return(0,g.patchFetch)({workAsyncStorage:L,workUnitAsyncStorage:M})}async function P(a,b,c){c.requestMeta&&(0,h.setRequestMeta)(a,c.requestMeta),K.isDev&&(0,h.addRequestMeta)(a,"devRequestTimingInternalsEnd",process.hrtime.bigint());let d="/api/models/route";"/index"===d&&(d="/");let e=await K.prepare(a,b,{srcPage:d,multiZoneDraftMode:!1});if(!e)return b.statusCode=400,b.end("Bad Request"),null==c.waitUntil||c.waitUntil.call(c,Promise.resolve()),null;let{buildId:g,deploymentId:v,params:w,nextConfig:x,parsedUrl:y,isDraftMode:z,prerenderManifest:A,routerServerContext:B,isOnDemandRevalidate:C,revalidateOnlyGenerated:D,resolvedPathname:E,clientReferenceManifest:F,serverActionsManifest:G}=e,H=(0,k.normalizeAppPath)(d),I=!!(A.dynamicRoutes[H]||A.routes[E]),J=async()=>((null==B?void 0:B.render404)?await B.render404(a,b,y,!1):b.end("This page could not be found"),null);if(I&&!z){let a=!!A.routes[E],b=A.dynamicRoutes[H];if(b&&!1===b.fallback&&!a){if(x.adapterPath)return await J();throw new t.NoFallbackError}}let L=null;!I||K.isDev||z||(L="/index"===(L=E)?"/":L);let M=!0===K.isDev||!I,N=I&&!M;G&&F&&(0,j.setManifestsSingleton)({page:d,clientReferenceManifest:F,serverActionsManifest:G});let O=a.method||"GET",P=(0,i.getTracer)(),Q=P.getActiveScopeSpan(),R=!!(null==B?void 0:B.isWrappedByNextServer),S=!!(0,h.getRequestMeta)(a,"minimalMode"),T=(0,h.getRequestMeta)(a,"incrementalCache")||await K.getIncrementalCache(a,x,A,S);null==T||T.resetRequestCache(),globalThis.__incrementalCache=T;let U={params:w,previewProps:A.preview,renderOpts:{experimental:{authInterrupts:!!x.experimental.authInterrupts},cacheComponents:!!x.cacheComponents,supportsDynamicResponse:M,incrementalCache:T,cacheLifeProfiles:x.cacheLife,waitUntil:c.waitUntil,onClose:a=>{b.on("close",a)},onAfterTaskError:void 0,onInstrumentationRequestError:(b,c,d,e)=>K.onRequestError(a,b,d,e,B)},sharedContext:{buildId:g,deploymentId:v}},V=new l.NodeNextRequest(a),W=new l.NodeNextResponse(b),X=m.NextRequestAdapter.fromNodeNextRequest(V,(0,m.signalFromNodeResponse)(b));try{let e,g=async a=>K.handle(X,U).finally(()=>{if(!a)return;a.setAttributes({"http.status_code":b.statusCode,"next.rsc":!1});let c=P.getRootSpanAttributes();if(!c)return;if(c.get("next.span_type")!==n.BaseServerSpan.handleRequest)return void console.warn(`Unexpected root span type '${c.get("next.span_type")}'. Please report this Next.js issue https://github.com/vercel/next.js`);let f=c.get("next.route");if(f){let b=`${O} ${f}`;a.setAttributes({"next.route":f,"http.route":f,"next.span_name":b}),a.updateName(b),e&&e!==a&&(e.setAttribute("http.route",f),e.updateName(b))}else a.updateName(`${O} ${d}`)}),h=async e=>{var h,i;let j=async({previousCacheEntry:f})=>{try{if(!S&&C&&D&&!f)return b.statusCode=404,b.setHeader("x-nextjs-cache","REVALIDATED"),b.end("This page could not be found"),null;let d=await g(e);a.fetchMetrics=U.renderOpts.fetchMetrics;let h=U.renderOpts.pendingWaitUntil;h&&c.waitUntil&&(c.waitUntil(h),h=void 0);let i=U.renderOpts.collectedTags;if(!I)return await (0,p.I)(V,W,d,U.renderOpts.pendingWaitUntil),null;{let a=await d.blob(),b=(0,q.toNodeOutgoingHttpHeaders)(d.headers);i&&(b[s.NEXT_CACHE_TAGS_HEADER]=i),!b["content-type"]&&a.type&&(b["content-type"]=a.type);let c=void 0!==U.renderOpts.collectedRevalidate&&!(U.renderOpts.collectedRevalidate>=s.INFINITE_CACHE)&&U.renderOpts.collectedRevalidate,e=void 0===U.renderOpts.collectedExpire||U.renderOpts.collectedExpire>=s.INFINITE_CACHE?void 0:U.renderOpts.collectedExpire;return{value:{kind:u.CachedRouteKind.APP_ROUTE,status:d.status,body:Buffer.from(await a.arrayBuffer()),headers:b},cacheControl:{revalidate:c,expire:e}}}}catch(b){throw(null==f?void 0:f.isStale)&&await K.onRequestError(a,b,{routerKind:"App Router",routePath:d,routeType:"route",revalidateReason:(0,o.c)({isStaticGeneration:N,isOnDemandRevalidate:C})},!1,B),b}},k=await K.handleResponse({req:a,nextConfig:x,cacheKey:L,routeKind:f.RouteKind.APP_ROUTE,isFallback:!1,prerenderManifest:A,isRoutePPREnabled:!1,isOnDemandRevalidate:C,revalidateOnlyGenerated:D,responseGenerator:j,waitUntil:c.waitUntil,isMinimalMode:S});if(!I)return null;if((null==k||null==(h=k.value)?void 0:h.kind)!==u.CachedRouteKind.APP_ROUTE)throw Object.defineProperty(Error(`Invariant: app-route received invalid cache entry ${null==k||null==(i=k.value)?void 0:i.kind}`),"__NEXT_ERROR_CODE",{value:"E701",enumerable:!1,configurable:!0});S||b.setHeader("x-nextjs-cache",C?"REVALIDATED":k.isMiss?"MISS":k.isStale?"STALE":"HIT"),z&&b.setHeader("Cache-Control","private, no-cache, no-store, max-age=0, must-revalidate");let l=(0,q.fromNodeOutgoingHttpHeaders)(k.value.headers);return S&&I||l.delete(s.NEXT_CACHE_TAGS_HEADER),!k.cacheControl||b.getHeader("Cache-Control")||l.get("Cache-Control")||l.set("Cache-Control",(0,r.getCacheControlHeader)(k.cacheControl)),await (0,p.I)(V,W,new Response(k.value.body,{headers:l,status:k.value.status||200})),null};R&&Q?await h(Q):(e=P.getActiveScopeSpan(),await P.withPropagatedContext(a.headers,()=>P.trace(n.BaseServerSpan.handleRequest,{spanName:`${O} ${d}`,kind:i.SpanKind.SERVER,attributes:{"http.method":O,"http.target":a.url}},h),void 0,!R))}catch(b){if(b instanceof t.NoFallbackError||await K.onRequestError(a,b,{routerKind:"App Router",routePath:H,routeType:"route",revalidateReason:(0,o.c)({isStaticGeneration:N,isOnDemandRevalidate:C})},!1,B),I)throw b;return await (0,p.I)(V,W,new Response(null,{status:500})),null}}},19225:(a,b,c)=>{"use strict";a.exports=c(44870)},21182:(a,b,c)=>{"use strict";c.d(b,{v1:()=>i});var d=c(89477),e=c(86697),f=c(73127);let g=null,h=null;async function i(){return g||h||(h=(async()=>{try{let a=function(a=process.cwd()){let b=a;for(let a=0;a<10;a++){for(let a of[(0,e.join)(b,"node_modules","@earendil-works","pi-coding-agent","node_modules","@earendil-works","pi-ai","dist","providers","all.js"),(0,e.join)(b,"node_modules","@earendil-works","pi-ai","dist","providers","all.js")])if((0,d.existsSync)(a))return a;let a=(0,e.dirname)(b);if(a===b)break;b=a}return null}();if(!a)return g=[];let b=(0,f.pathToFileURL)(a).href,h=null;try{h=await c(98279)(b)}catch{h=null}if(!h||"function"!=typeof h.builtinProviders&&"function"!=typeof h.getBuiltinProviders){let a=Function("u","return import(u)");h=await a(b)}return g=function(a){let b=("function"==typeof a.builtinProviders?a.builtinProviders():null)??("function"==typeof a.getBuiltinProviders?a.getBuiltinProviders():null)??[],c=[];for(let a of b)if(a&&"string"==typeof a.id&&a.id)for(let b of("function"==typeof a.getModels?a.getModels():[])??[]){let d=function(a,b){var c;let d="string"==typeof a.id?a.id:"";if(!d)return null;let e="string"==typeof a.name&&a.name?a.name:d,f="string"==typeof a.provider&&a.provider?a.provider:b,g="object"!=typeof(c=a.thinkingLevelMap)||null===c||Array.isArray(c)?void 0:a.thinkingLevelMap;return{id:d,name:e,provider:f,reasoning:!0===a.reasoning,...g?{thinkingLevelMap:g}:{},..."number"==typeof a.contextWindow&&Number.isFinite(a.contextWindow)?{contextWindow:a.contextWindow}:{},..."number"==typeof a.maxTokens&&Number.isFinite(a.maxTokens)?{maxTokens:a.maxTokens}:{}}}(b,a.id);d&&c.push(d)}return c}(h)}catch{return g=[]}finally{h=null}})())}},28967:(a,b,c)=>{"use strict";function d(){return globalThis.__piModelsCacheState||(globalThis.__piModelsCacheState={entries:new Map,inFlight:new Map,generation:0}),globalThis.__piModelsCacheState}function e(){let a=d();a.generation+=1,a.entries.clear(),a.inFlight.clear(),globalThis.__piModelRuntimeCache?.runtimes.clear()}function f(a,b){let c=d(),e=c.entries.get(a);if(e){if(e.expiresAt>Date.now())return Promise.resolve(e.data);c.entries.delete(a)}let f=c.inFlight.get(a);if(f)return f;let g=c.generation,h=Promise.resolve().then(b).then(b=>{if(c.generation===g&&c.inFlight.get(a)===h){let d=Date.now();for(let[a,b]of c.entries)b.expiresAt<=d&&c.entries.delete(a);for(;c.entries.size>=32;){let a=c.entries.keys().next().value;if(void 0===a)break;c.entries.delete(a)}c.entries.set(a,{data:b,expiresAt:d+6e4})}return b}).finally(()=>{c.inFlight.get(a)===h&&c.inFlight.delete(a)});return c.inFlight.set(a,h),h}c.d(b,{kn:()=>e,rC:()=>f})},29021:a=>{"use strict";a.exports=require("fs")},29294:a=>{"use strict";a.exports=require("next/dist/server/app-render/work-async-storage.external.js")},33873:a=>{"use strict";a.exports=require("path")},44870:a=>{"use strict";a.exports=require("next/dist/compiled/next-server/app-route.runtime.prod.js")},55511:a=>{"use strict";a.exports=require("crypto")},62228:a=>{"use strict";a.exports=require("node:os")},63033:a=>{"use strict";a.exports=require("next/dist/server/app-render/work-unit-async-storage.external.js")},73127:a=>{"use strict";a.exports=require("node:url")},86439:a=>{"use strict";a.exports=require("next/dist/shared/lib/no-fallback-error.external")},86697:a=>{"use strict";a.exports=require("node:path")},89477:a=>{"use strict";a.exports=require("node:fs")},92280:(a,b,c)=>{"use strict";Object.defineProperty(b,"I",{enumerable:!0,get:function(){return g}});let d=c(28208),e=c(47617),f=c(62018);async function g(a,b,c,g){if((0,d.isNodeNextResponse)(b)){var h;b.statusCode=c.status,b.statusMessage=c.statusText;let d=["set-cookie","www-authenticate","proxy-authenticate","vary"];null==(h=c.headers)||h.forEach((a,c)=>{if("x-middleware-set-cookie"!==c.toLowerCase())if("set-cookie"===c.toLowerCase())for(let d of(0,f.splitCookiesString)(a))b.appendHeader(c,d);else{let e=void 0!==b.getHeader(c);(d.includes(c.toLowerCase())||!e)&&b.appendHeader(c,a)}});let{originalResponse:i}=b;c.body&&"HEAD"!==a.method?await (0,e.pipeToNodeResponse)(c.body,i,g):i.end()}}},98279:a=>{function b(a){return Promise.resolve().then(()=>{var b=Error("Cannot find module '"+a+"'");throw b.code="MODULE_NOT_FOUND",b})}b.keys=()=>[],b.resolve=b,b.id=98279,a.exports=b}};var b=require("../../../webpack-runtime.js");b.C(a);var c=b.X(0,[4741,981],()=>b(b.s=15770));module.exports=c})();
@@ -1 +1 @@
1
- (()=>{var a={};a.id=9560,a.ids=[9560],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")},10846:a=>{"use strict";a.exports=require("next/dist/compiled/next-server/app-page.runtime.prod.js")},29294:a=>{"use strict";a.exports=require("next/dist/server/app-render/work-async-storage.external.js")},44870:a=>{"use strict";a.exports=require("next/dist/compiled/next-server/app-route.runtime.prod.js")},60396:(a,b,c)=>{"use strict";c.d(b,{$M:()=>f,CZ:()=>h,Mc:()=>g,pA:()=>i});var d=c(62228),e=c(86697);function f(a=process.env){let b=a.PI_CODING_AGENT_DIR?.trim();if(b)return"~"===b?(0,d.homedir)():b.startsWith("~/")||b.startsWith("~\\")?(0,e.join)((0,d.homedir)(),b.slice(2)):b;return(0,e.join)((0,d.homedir)(),".pi","agent")}function g(a=process.env){return(0,e.join)(f(a),"models.json")}function h(a=process.env){return(0,e.join)(f(a),"auth.json")}function i(a=process.env){return(0,e.join)(f(a),"settings.json")}},62228:a=>{"use strict";a.exports=require("node:os")},63033:a=>{"use strict";a.exports=require("next/dist/server/app-render/work-unit-async-storage.external.js")},78335:()=>{},86439:a=>{"use strict";a.exports=require("next/dist/shared/lib/no-fallback-error.external")},86697:a=>{"use strict";a.exports=require("node:path")},88586:(a,b,c)=>{"use strict";c.r(b),c.d(b,{handler:()=>K,patchFetch:()=>J,routeModule:()=>F,serverHooks:()=>I,workAsyncStorage:()=>G,workUnitAsyncStorage:()=>H});var d={};c.r(d),c.d(d,{GET:()=>D,PUT:()=>E,dynamic:()=>z});var e=c(19225),f=c(84006),g=c(8317),h=c(99373),i=c(34775),j=c(24235),k=c(261),l=c(54365),m=c(90771),n=c(73461),o=c(67798),p=c(92280),q=c(62018),r=c(45696),s=c(47929),t=c(86439),u=c(37527),v=c(23211),w=c(89477),x=c(86697),y=c(60396);let z="force-dynamic";function A(){return(0,x.join)((0,y.$M)(),"pidance-preferences.json")}function B(a){return"object"==typeof a&&null!==a&&!Array.isArray(a)}function C(){let a=A();if(!(0,w.existsSync)(a))return{};try{let b=JSON.parse((0,w.readFileSync)(a,"utf8"));return B(b)?b:{}}catch{return{}}}async function D(){try{return v.NextResponse.json({prefs:C()},{headers:{"Cache-Control":"no-store"}})}catch(a){return v.NextResponse.json({error:a instanceof Error?a.message:String(a)},{status:500})}}async function E(a){try{let b=await a.json().catch(()=>({}));if(!B(b.prefs))return v.NextResponse.json({error:"prefs must be a JSON object"},{status:400});let c=JSON.stringify(b.prefs);if(Buffer.byteLength(c,"utf8")>1e6)return v.NextResponse.json({error:"preferences exceed 1000000 bytes"},{status:413});let d=C();return!function(a){let b=A(),c=(0,x.dirname)(b);(0,w.existsSync)(c)||(0,w.mkdirSync)(c,{recursive:!0,mode:448});let d=`${b}.${process.pid}.${Date.now()}.tmp`;try{(0,w.writeFileSync)(d,JSON.stringify(a,null,2),{flag:"wx",mode:384}),(0,w.renameSync)(d,b)}catch(a){try{(0,w.unlinkSync)(d)}catch{}throw a}}(function(a,b){let c={...a};for(let[a,d]of Object.entries(b))B(d)&&B(c[a])?c[a]={...c[a],...d}:c[a]=d;return c}(d,b.prefs)),v.NextResponse.json({ok:!0})}catch(a){return v.NextResponse.json({error:a instanceof Error?a.message:String(a)},{status:500})}}let F=new e.AppRouteRouteModule({definition:{kind:f.RouteKind.APP_ROUTE,page:"/api/preferences/route",pathname:"/api/preferences",filename:"route",bundlePath:"app/api/preferences/route"},distDir:".next",relativeProjectDir:"",resolvedPagePath:"/tmp/pidance-release-build/app/api/preferences/route.ts",nextConfigOutput:"",userland:d,...{}}),{workAsyncStorage:G,workUnitAsyncStorage:H,serverHooks:I}=F;function J(){return(0,g.patchFetch)({workAsyncStorage:G,workUnitAsyncStorage:H})}async function K(a,b,c){c.requestMeta&&(0,h.setRequestMeta)(a,c.requestMeta),F.isDev&&(0,h.addRequestMeta)(a,"devRequestTimingInternalsEnd",process.hrtime.bigint());let d="/api/preferences/route";"/index"===d&&(d="/");let e=await F.prepare(a,b,{srcPage:d,multiZoneDraftMode:!1});if(!e)return b.statusCode=400,b.end("Bad Request"),null==c.waitUntil||c.waitUntil.call(c,Promise.resolve()),null;let{buildId:g,deploymentId:v,params:w,nextConfig:x,parsedUrl:y,isDraftMode:z,prerenderManifest:A,routerServerContext:B,isOnDemandRevalidate:C,revalidateOnlyGenerated:D,resolvedPathname:E,clientReferenceManifest:G,serverActionsManifest:H}=e,I=(0,k.normalizeAppPath)(d),J=!!(A.dynamicRoutes[I]||A.routes[E]),K=async()=>((null==B?void 0:B.render404)?await B.render404(a,b,y,!1):b.end("This page could not be found"),null);if(J&&!z){let a=!!A.routes[E],b=A.dynamicRoutes[I];if(b&&!1===b.fallback&&!a){if(x.adapterPath)return await K();throw new t.NoFallbackError}}let L=null;!J||F.isDev||z||(L="/index"===(L=E)?"/":L);let M=!0===F.isDev||!J,N=J&&!M;H&&G&&(0,j.setManifestsSingleton)({page:d,clientReferenceManifest:G,serverActionsManifest:H});let O=a.method||"GET",P=(0,i.getTracer)(),Q=P.getActiveScopeSpan(),R=!!(null==B?void 0:B.isWrappedByNextServer),S=!!(0,h.getRequestMeta)(a,"minimalMode"),T=(0,h.getRequestMeta)(a,"incrementalCache")||await F.getIncrementalCache(a,x,A,S);null==T||T.resetRequestCache(),globalThis.__incrementalCache=T;let U={params:w,previewProps:A.preview,renderOpts:{experimental:{authInterrupts:!!x.experimental.authInterrupts},cacheComponents:!!x.cacheComponents,supportsDynamicResponse:M,incrementalCache:T,cacheLifeProfiles:x.cacheLife,waitUntil:c.waitUntil,onClose:a=>{b.on("close",a)},onAfterTaskError:void 0,onInstrumentationRequestError:(b,c,d,e)=>F.onRequestError(a,b,d,e,B)},sharedContext:{buildId:g,deploymentId:v}},V=new l.NodeNextRequest(a),W=new l.NodeNextResponse(b),X=m.NextRequestAdapter.fromNodeNextRequest(V,(0,m.signalFromNodeResponse)(b));try{let e,g=async a=>F.handle(X,U).finally(()=>{if(!a)return;a.setAttributes({"http.status_code":b.statusCode,"next.rsc":!1});let c=P.getRootSpanAttributes();if(!c)return;if(c.get("next.span_type")!==n.BaseServerSpan.handleRequest)return void console.warn(`Unexpected root span type '${c.get("next.span_type")}'. Please report this Next.js issue https://github.com/vercel/next.js`);let f=c.get("next.route");if(f){let b=`${O} ${f}`;a.setAttributes({"next.route":f,"http.route":f,"next.span_name":b}),a.updateName(b),e&&e!==a&&(e.setAttribute("http.route",f),e.updateName(b))}else a.updateName(`${O} ${d}`)}),h=async e=>{var h,i;let j=async({previousCacheEntry:f})=>{try{if(!S&&C&&D&&!f)return b.statusCode=404,b.setHeader("x-nextjs-cache","REVALIDATED"),b.end("This page could not be found"),null;let d=await g(e);a.fetchMetrics=U.renderOpts.fetchMetrics;let h=U.renderOpts.pendingWaitUntil;h&&c.waitUntil&&(c.waitUntil(h),h=void 0);let i=U.renderOpts.collectedTags;if(!J)return await (0,p.I)(V,W,d,U.renderOpts.pendingWaitUntil),null;{let a=await d.blob(),b=(0,q.toNodeOutgoingHttpHeaders)(d.headers);i&&(b[s.NEXT_CACHE_TAGS_HEADER]=i),!b["content-type"]&&a.type&&(b["content-type"]=a.type);let c=void 0!==U.renderOpts.collectedRevalidate&&!(U.renderOpts.collectedRevalidate>=s.INFINITE_CACHE)&&U.renderOpts.collectedRevalidate,e=void 0===U.renderOpts.collectedExpire||U.renderOpts.collectedExpire>=s.INFINITE_CACHE?void 0:U.renderOpts.collectedExpire;return{value:{kind:u.CachedRouteKind.APP_ROUTE,status:d.status,body:Buffer.from(await a.arrayBuffer()),headers:b},cacheControl:{revalidate:c,expire:e}}}}catch(b){throw(null==f?void 0:f.isStale)&&await F.onRequestError(a,b,{routerKind:"App Router",routePath:d,routeType:"route",revalidateReason:(0,o.c)({isStaticGeneration:N,isOnDemandRevalidate:C})},!1,B),b}},k=await F.handleResponse({req:a,nextConfig:x,cacheKey:L,routeKind:f.RouteKind.APP_ROUTE,isFallback:!1,prerenderManifest:A,isRoutePPREnabled:!1,isOnDemandRevalidate:C,revalidateOnlyGenerated:D,responseGenerator:j,waitUntil:c.waitUntil,isMinimalMode:S});if(!J)return null;if((null==k||null==(h=k.value)?void 0:h.kind)!==u.CachedRouteKind.APP_ROUTE)throw Object.defineProperty(Error(`Invariant: app-route received invalid cache entry ${null==k||null==(i=k.value)?void 0:i.kind}`),"__NEXT_ERROR_CODE",{value:"E701",enumerable:!1,configurable:!0});S||b.setHeader("x-nextjs-cache",C?"REVALIDATED":k.isMiss?"MISS":k.isStale?"STALE":"HIT"),z&&b.setHeader("Cache-Control","private, no-cache, no-store, max-age=0, must-revalidate");let l=(0,q.fromNodeOutgoingHttpHeaders)(k.value.headers);return S&&J||l.delete(s.NEXT_CACHE_TAGS_HEADER),!k.cacheControl||b.getHeader("Cache-Control")||l.get("Cache-Control")||l.set("Cache-Control",(0,r.getCacheControlHeader)(k.cacheControl)),await (0,p.I)(V,W,new Response(k.value.body,{headers:l,status:k.value.status||200})),null};R&&Q?await h(Q):(e=P.getActiveScopeSpan(),await P.withPropagatedContext(a.headers,()=>P.trace(n.BaseServerSpan.handleRequest,{spanName:`${O} ${d}`,kind:i.SpanKind.SERVER,attributes:{"http.method":O,"http.target":a.url}},h),void 0,!R))}catch(b){if(b instanceof t.NoFallbackError||await F.onRequestError(a,b,{routerKind:"App Router",routePath:I,routeType:"route",revalidateReason:(0,o.c)({isStaticGeneration:N,isOnDemandRevalidate:C})},!1,B),J)throw b;return await (0,p.I)(V,W,new Response(null,{status:500})),null}}},89477:a=>{"use strict";a.exports=require("node:fs")},96487:()=>{}};var b=require("../../../webpack-runtime.js");b.C(a);var c=b.X(0,[4741,1813],()=>b(b.s=88586));module.exports=c})();
1
+ (()=>{var a={};a.id=9560,a.ids=[9560],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")},10846:a=>{"use strict";a.exports=require("next/dist/compiled/next-server/app-page.runtime.prod.js")},29294:a=>{"use strict";a.exports=require("next/dist/server/app-render/work-async-storage.external.js")},44870:a=>{"use strict";a.exports=require("next/dist/compiled/next-server/app-route.runtime.prod.js")},60396:(a,b,c)=>{"use strict";c.d(b,{$M:()=>f,CZ:()=>h,Mc:()=>g,pA:()=>i});var d=c(62228),e=c(86697);function f(a=process.env){let b=a.PI_CODING_AGENT_DIR?.trim();if(b)return"~"===b?(0,d.homedir)():b.startsWith("~/")||b.startsWith("~\\")?(0,e.join)((0,d.homedir)(),b.slice(2)):b;return(0,e.join)((0,d.homedir)(),".pi","agent")}function g(a=process.env){return(0,e.join)(f(a),"models.json")}function h(a=process.env){return(0,e.join)(f(a),"auth.json")}function i(a=process.env){return(0,e.join)(f(a),"settings.json")}},62228:a=>{"use strict";a.exports=require("node:os")},63033:a=>{"use strict";a.exports=require("next/dist/server/app-render/work-unit-async-storage.external.js")},68524:(a,b,c)=>{"use strict";c.d(b,{IB:()=>j,fu:()=>k,ql:()=>l,rV:()=>i,xP:()=>m});var d=c(89477),e=c(86697),f=c(60396);function g(a=(0,f.$M)()){return(0,e.join)(a,"pidance-preferences.json")}function h(a){return"object"==typeof a&&null!==a&&!Array.isArray(a)}function i(a=(0,f.$M)()){let b=g(a);if(!(0,d.existsSync)(b))return{};try{let a=JSON.parse((0,d.readFileSync)(b,"utf8"));return h(a)?a:{}}catch{return{}}}function j(a,b=(0,f.$M)()){let c=g(b),h=(0,e.dirname)(c);(0,d.existsSync)(h)||(0,d.mkdirSync)(h,{recursive:!0,mode:448});let i=`${c}.${process.pid}.${Date.now()}.tmp`;try{(0,d.writeFileSync)(i,JSON.stringify(a,null,2),{flag:"wx",mode:384}),(0,d.renameSync)(i,c)}catch(a){try{(0,d.unlinkSync)(i)}catch{}throw a}}function k(a,b){let c={...a};for(let[a,d]of Object.entries(b))h(d)&&h(c[a])?c[a]={...c[a],...d}:c[a]=d;return c}function l(a,b){let c=b.split("."),d=a;for(let a of c){if("object"!=typeof d||null===d)return;d=d[a]}return d}function m(a,b,c=(0,f.$M)()){let d=i(c);!function(a,b,c){let d=b.split("."),e=a;for(let a=0;a<d.length-1;a++){let b=d[a],c=e[b];("object"!=typeof c||null===c||Array.isArray(c))&&(e[b]={}),e=e[b]}let f=d[d.length-1];null==c?delete e[f]:e[f]=c}(d,a,b),j(d,c)}},78335:()=>{},86439:a=>{"use strict";a.exports=require("next/dist/shared/lib/no-fallback-error.external")},86697:a=>{"use strict";a.exports=require("node:path")},88586:(a,b,c)=>{"use strict";c.r(b),c.d(b,{handler:()=>F,patchFetch:()=>E,routeModule:()=>A,serverHooks:()=>D,workAsyncStorage:()=>B,workUnitAsyncStorage:()=>C});var d={};c.r(d),c.d(d,{GET:()=>y,PUT:()=>z,dynamic:()=>x});var e=c(19225),f=c(84006),g=c(8317),h=c(99373),i=c(34775),j=c(24235),k=c(261),l=c(54365),m=c(90771),n=c(73461),o=c(67798),p=c(92280),q=c(62018),r=c(45696),s=c(47929),t=c(86439),u=c(37527),v=c(23211),w=c(68524);let x="force-dynamic";async function y(){try{return v.NextResponse.json({prefs:(0,w.rV)()},{headers:{"Cache-Control":"no-store"}})}catch(a){return v.NextResponse.json({error:a instanceof Error?a.message:String(a)},{status:500})}}async function z(a){try{let b=(await a.json().catch(()=>({}))).prefs;if("object"!=typeof b||null===b||Array.isArray(b))return v.NextResponse.json({error:"prefs must be a JSON object"},{status:400});let c=JSON.stringify(b);if(Buffer.byteLength(c,"utf8")>1e6)return v.NextResponse.json({error:"preferences exceed 1000000 bytes"},{status:413});let d=(0,w.rV)();return(0,w.IB)((0,w.fu)(d,b)),v.NextResponse.json({ok:!0})}catch(a){return v.NextResponse.json({error:a instanceof Error?a.message:String(a)},{status:500})}}let A=new e.AppRouteRouteModule({definition:{kind:f.RouteKind.APP_ROUTE,page:"/api/preferences/route",pathname:"/api/preferences",filename:"route",bundlePath:"app/api/preferences/route"},distDir:".next",relativeProjectDir:"",resolvedPagePath:"/tmp/pidance-release-build/app/api/preferences/route.ts",nextConfigOutput:"",userland:d,...{}}),{workAsyncStorage:B,workUnitAsyncStorage:C,serverHooks:D}=A;function E(){return(0,g.patchFetch)({workAsyncStorage:B,workUnitAsyncStorage:C})}async function F(a,b,c){c.requestMeta&&(0,h.setRequestMeta)(a,c.requestMeta),A.isDev&&(0,h.addRequestMeta)(a,"devRequestTimingInternalsEnd",process.hrtime.bigint());let d="/api/preferences/route";"/index"===d&&(d="/");let e=await A.prepare(a,b,{srcPage:d,multiZoneDraftMode:!1});if(!e)return b.statusCode=400,b.end("Bad Request"),null==c.waitUntil||c.waitUntil.call(c,Promise.resolve()),null;let{buildId:g,deploymentId:v,params:w,nextConfig:x,parsedUrl:y,isDraftMode:z,prerenderManifest:B,routerServerContext:C,isOnDemandRevalidate:D,revalidateOnlyGenerated:E,resolvedPathname:F,clientReferenceManifest:G,serverActionsManifest:H}=e,I=(0,k.normalizeAppPath)(d),J=!!(B.dynamicRoutes[I]||B.routes[F]),K=async()=>((null==C?void 0:C.render404)?await C.render404(a,b,y,!1):b.end("This page could not be found"),null);if(J&&!z){let a=!!B.routes[F],b=B.dynamicRoutes[I];if(b&&!1===b.fallback&&!a){if(x.adapterPath)return await K();throw new t.NoFallbackError}}let L=null;!J||A.isDev||z||(L="/index"===(L=F)?"/":L);let M=!0===A.isDev||!J,N=J&&!M;H&&G&&(0,j.setManifestsSingleton)({page:d,clientReferenceManifest:G,serverActionsManifest:H});let O=a.method||"GET",P=(0,i.getTracer)(),Q=P.getActiveScopeSpan(),R=!!(null==C?void 0:C.isWrappedByNextServer),S=!!(0,h.getRequestMeta)(a,"minimalMode"),T=(0,h.getRequestMeta)(a,"incrementalCache")||await A.getIncrementalCache(a,x,B,S);null==T||T.resetRequestCache(),globalThis.__incrementalCache=T;let U={params:w,previewProps:B.preview,renderOpts:{experimental:{authInterrupts:!!x.experimental.authInterrupts},cacheComponents:!!x.cacheComponents,supportsDynamicResponse:M,incrementalCache:T,cacheLifeProfiles:x.cacheLife,waitUntil:c.waitUntil,onClose:a=>{b.on("close",a)},onAfterTaskError:void 0,onInstrumentationRequestError:(b,c,d,e)=>A.onRequestError(a,b,d,e,C)},sharedContext:{buildId:g,deploymentId:v}},V=new l.NodeNextRequest(a),W=new l.NodeNextResponse(b),X=m.NextRequestAdapter.fromNodeNextRequest(V,(0,m.signalFromNodeResponse)(b));try{let e,g=async a=>A.handle(X,U).finally(()=>{if(!a)return;a.setAttributes({"http.status_code":b.statusCode,"next.rsc":!1});let c=P.getRootSpanAttributes();if(!c)return;if(c.get("next.span_type")!==n.BaseServerSpan.handleRequest)return void console.warn(`Unexpected root span type '${c.get("next.span_type")}'. Please report this Next.js issue https://github.com/vercel/next.js`);let f=c.get("next.route");if(f){let b=`${O} ${f}`;a.setAttributes({"next.route":f,"http.route":f,"next.span_name":b}),a.updateName(b),e&&e!==a&&(e.setAttribute("http.route",f),e.updateName(b))}else a.updateName(`${O} ${d}`)}),h=async e=>{var h,i;let j=async({previousCacheEntry:f})=>{try{if(!S&&D&&E&&!f)return b.statusCode=404,b.setHeader("x-nextjs-cache","REVALIDATED"),b.end("This page could not be found"),null;let d=await g(e);a.fetchMetrics=U.renderOpts.fetchMetrics;let h=U.renderOpts.pendingWaitUntil;h&&c.waitUntil&&(c.waitUntil(h),h=void 0);let i=U.renderOpts.collectedTags;if(!J)return await (0,p.I)(V,W,d,U.renderOpts.pendingWaitUntil),null;{let a=await d.blob(),b=(0,q.toNodeOutgoingHttpHeaders)(d.headers);i&&(b[s.NEXT_CACHE_TAGS_HEADER]=i),!b["content-type"]&&a.type&&(b["content-type"]=a.type);let c=void 0!==U.renderOpts.collectedRevalidate&&!(U.renderOpts.collectedRevalidate>=s.INFINITE_CACHE)&&U.renderOpts.collectedRevalidate,e=void 0===U.renderOpts.collectedExpire||U.renderOpts.collectedExpire>=s.INFINITE_CACHE?void 0:U.renderOpts.collectedExpire;return{value:{kind:u.CachedRouteKind.APP_ROUTE,status:d.status,body:Buffer.from(await a.arrayBuffer()),headers:b},cacheControl:{revalidate:c,expire:e}}}}catch(b){throw(null==f?void 0:f.isStale)&&await A.onRequestError(a,b,{routerKind:"App Router",routePath:d,routeType:"route",revalidateReason:(0,o.c)({isStaticGeneration:N,isOnDemandRevalidate:D})},!1,C),b}},k=await A.handleResponse({req:a,nextConfig:x,cacheKey:L,routeKind:f.RouteKind.APP_ROUTE,isFallback:!1,prerenderManifest:B,isRoutePPREnabled:!1,isOnDemandRevalidate:D,revalidateOnlyGenerated:E,responseGenerator:j,waitUntil:c.waitUntil,isMinimalMode:S});if(!J)return null;if((null==k||null==(h=k.value)?void 0:h.kind)!==u.CachedRouteKind.APP_ROUTE)throw Object.defineProperty(Error(`Invariant: app-route received invalid cache entry ${null==k||null==(i=k.value)?void 0:i.kind}`),"__NEXT_ERROR_CODE",{value:"E701",enumerable:!1,configurable:!0});S||b.setHeader("x-nextjs-cache",D?"REVALIDATED":k.isMiss?"MISS":k.isStale?"STALE":"HIT"),z&&b.setHeader("Cache-Control","private, no-cache, no-store, max-age=0, must-revalidate");let l=(0,q.fromNodeOutgoingHttpHeaders)(k.value.headers);return S&&J||l.delete(s.NEXT_CACHE_TAGS_HEADER),!k.cacheControl||b.getHeader("Cache-Control")||l.get("Cache-Control")||l.set("Cache-Control",(0,r.getCacheControlHeader)(k.cacheControl)),await (0,p.I)(V,W,new Response(k.value.body,{headers:l,status:k.value.status||200})),null};R&&Q?await h(Q):(e=P.getActiveScopeSpan(),await P.withPropagatedContext(a.headers,()=>P.trace(n.BaseServerSpan.handleRequest,{spanName:`${O} ${d}`,kind:i.SpanKind.SERVER,attributes:{"http.method":O,"http.target":a.url}},h),void 0,!R))}catch(b){if(b instanceof t.NoFallbackError||await A.onRequestError(a,b,{routerKind:"App Router",routePath:I,routeType:"route",revalidateReason:(0,o.c)({isStaticGeneration:N,isOnDemandRevalidate:D})},!1,C),J)throw b;return await (0,p.I)(V,W,new Response(null,{status:500})),null}}},89477:a=>{"use strict";a.exports=require("node:fs")},96487:()=>{}};var b=require("../../../webpack-runtime.js");b.C(a);var c=b.X(0,[4741,1813],()=>b(b.s=88586));module.exports=c})();
@@ -1,4 +1,4 @@
1
- "use strict";(()=>{var a={};a.id=4133,a.ids=[4133],a.modules={261:a=>{a.exports=require("next/dist/shared/lib/router/utils/app-paths")},716:a=>{a.exports=require("node:crypto")},3295:a=>{a.exports=require("next/dist/server/app-render/after-task-async-storage.external.js")},4984:a=>{a.exports=require("readline")},10846:a=>{a.exports=require("next/dist/compiled/next-server/app-page.runtime.prod.js")},21820:a=>{a.exports=require("os")},28354:a=>{a.exports=require("util")},29021:a=>{a.exports=require("fs")},29294:a=>{a.exports=require("next/dist/server/app-render/work-async-storage.external.js")},33873:a=>{a.exports=require("path")},43168:(a,b,c)=>{c.a(a,async(a,d)=>{try{c.r(b),c.d(b,{handler:()=>y,patchFetch:()=>x,routeModule:()=>z,serverHooks:()=>C,workAsyncStorage:()=>A,workUnitAsyncStorage:()=>B});var e=c(19225),f=c(84006),g=c(8317),h=c(99373),i=c(34775),j=c(24235),k=c(261),l=c(54365),m=c(90771),n=c(73461),o=c(67798),p=c(92280),q=c(62018),r=c(45696),s=c(47929),t=c(86439),u=c(37527),v=c(89516),w=a([v]);v=(w.then?(await w)():w)[0];let z=new e.AppRouteRouteModule({definition:{kind:f.RouteKind.APP_ROUTE,page:"/api/project-assets/route",pathname:"/api/project-assets",filename:"route",bundlePath:"app/api/project-assets/route"},distDir:".next",relativeProjectDir:"",resolvedPagePath:"/tmp/pidance-release-build/app/api/project-assets/route.ts",nextConfigOutput:"",userland:v,...{}}),{workAsyncStorage:A,workUnitAsyncStorage:B,serverHooks:C}=z;function x(){return(0,g.patchFetch)({workAsyncStorage:A,workUnitAsyncStorage:B})}async function y(a,b,c){c.requestMeta&&(0,h.setRequestMeta)(a,c.requestMeta),z.isDev&&(0,h.addRequestMeta)(a,"devRequestTimingInternalsEnd",process.hrtime.bigint());let d="/api/project-assets/route";"/index"===d&&(d="/");let e=await z.prepare(a,b,{srcPage:d,multiZoneDraftMode:!1});if(!e)return b.statusCode=400,b.end("Bad Request"),null==c.waitUntil||c.waitUntil.call(c,Promise.resolve()),null;let{buildId:g,deploymentId:v,params:w,nextConfig:x,parsedUrl:y,isDraftMode:A,prerenderManifest:B,routerServerContext:C,isOnDemandRevalidate:D,revalidateOnlyGenerated:E,resolvedPathname:F,clientReferenceManifest:G,serverActionsManifest:H}=e,I=(0,k.normalizeAppPath)(d),J=!!(B.dynamicRoutes[I]||B.routes[F]),K=async()=>((null==C?void 0:C.render404)?await C.render404(a,b,y,!1):b.end("This page could not be found"),null);if(J&&!A){let a=!!B.routes[F],b=B.dynamicRoutes[I];if(b&&!1===b.fallback&&!a){if(x.adapterPath)return await K();throw new t.NoFallbackError}}let L=null;!J||z.isDev||A||(L=F,L="/index"===L?"/":L);let M=!0===z.isDev||!J,N=J&&!M;H&&G&&(0,j.setManifestsSingleton)({page:d,clientReferenceManifest:G,serverActionsManifest:H});let O=a.method||"GET",P=(0,i.getTracer)(),Q=P.getActiveScopeSpan(),R=!!(null==C?void 0:C.isWrappedByNextServer),S=!!(0,h.getRequestMeta)(a,"minimalMode"),T=(0,h.getRequestMeta)(a,"incrementalCache")||await z.getIncrementalCache(a,x,B,S);null==T||T.resetRequestCache(),globalThis.__incrementalCache=T;let U={params:w,previewProps:B.preview,renderOpts:{experimental:{authInterrupts:!!x.experimental.authInterrupts},cacheComponents:!!x.cacheComponents,supportsDynamicResponse:M,incrementalCache:T,cacheLifeProfiles:x.cacheLife,waitUntil:c.waitUntil,onClose:a=>{b.on("close",a)},onAfterTaskError:void 0,onInstrumentationRequestError:(b,c,d,e)=>z.onRequestError(a,b,d,e,C)},sharedContext:{buildId:g,deploymentId:v}},V=new l.NodeNextRequest(a),W=new l.NodeNextResponse(b),X=m.NextRequestAdapter.fromNodeNextRequest(V,(0,m.signalFromNodeResponse)(b));try{let e,g=async a=>z.handle(X,U).finally(()=>{if(!a)return;a.setAttributes({"http.status_code":b.statusCode,"next.rsc":!1});let c=P.getRootSpanAttributes();if(!c)return;if(c.get("next.span_type")!==n.BaseServerSpan.handleRequest)return void console.warn(`Unexpected root span type '${c.get("next.span_type")}'. Please report this Next.js issue https://github.com/vercel/next.js`);let f=c.get("next.route");if(f){let b=`${O} ${f}`;a.setAttributes({"next.route":f,"http.route":f,"next.span_name":b}),a.updateName(b),e&&e!==a&&(e.setAttribute("http.route",f),e.updateName(b))}else a.updateName(`${O} ${d}`)}),h=async e=>{var h,i;let j=async({previousCacheEntry:f})=>{try{if(!S&&D&&E&&!f)return b.statusCode=404,b.setHeader("x-nextjs-cache","REVALIDATED"),b.end("This page could not be found"),null;let d=await g(e);a.fetchMetrics=U.renderOpts.fetchMetrics;let h=U.renderOpts.pendingWaitUntil;h&&c.waitUntil&&(c.waitUntil(h),h=void 0);let i=U.renderOpts.collectedTags;if(!J)return await (0,p.I)(V,W,d,U.renderOpts.pendingWaitUntil),null;{let a=await d.blob(),b=(0,q.toNodeOutgoingHttpHeaders)(d.headers);i&&(b[s.NEXT_CACHE_TAGS_HEADER]=i),!b["content-type"]&&a.type&&(b["content-type"]=a.type);let c=void 0!==U.renderOpts.collectedRevalidate&&!(U.renderOpts.collectedRevalidate>=s.INFINITE_CACHE)&&U.renderOpts.collectedRevalidate,e=void 0===U.renderOpts.collectedExpire||U.renderOpts.collectedExpire>=s.INFINITE_CACHE?void 0:U.renderOpts.collectedExpire;return{value:{kind:u.CachedRouteKind.APP_ROUTE,status:d.status,body:Buffer.from(await a.arrayBuffer()),headers:b},cacheControl:{revalidate:c,expire:e}}}}catch(b){throw(null==f?void 0:f.isStale)&&await z.onRequestError(a,b,{routerKind:"App Router",routePath:d,routeType:"route",revalidateReason:(0,o.c)({isStaticGeneration:N,isOnDemandRevalidate:D})},!1,C),b}},k=await z.handleResponse({req:a,nextConfig:x,cacheKey:L,routeKind:f.RouteKind.APP_ROUTE,isFallback:!1,prerenderManifest:B,isRoutePPREnabled:!1,isOnDemandRevalidate:D,revalidateOnlyGenerated:E,responseGenerator:j,waitUntil:c.waitUntil,isMinimalMode:S});if(!J)return null;if((null==k||null==(h=k.value)?void 0:h.kind)!==u.CachedRouteKind.APP_ROUTE)throw Object.defineProperty(Error(`Invariant: app-route received invalid cache entry ${null==k||null==(i=k.value)?void 0:i.kind}`),"__NEXT_ERROR_CODE",{value:"E701",enumerable:!1,configurable:!0});S||b.setHeader("x-nextjs-cache",D?"REVALIDATED":k.isMiss?"MISS":k.isStale?"STALE":"HIT"),A&&b.setHeader("Cache-Control","private, no-cache, no-store, max-age=0, must-revalidate");let l=(0,q.fromNodeOutgoingHttpHeaders)(k.value.headers);return S&&J||l.delete(s.NEXT_CACHE_TAGS_HEADER),!k.cacheControl||b.getHeader("Cache-Control")||l.get("Cache-Control")||l.set("Cache-Control",(0,r.getCacheControlHeader)(k.cacheControl)),await (0,p.I)(V,W,new Response(k.value.body,{headers:l,status:k.value.status||200})),null};R&&Q?await h(Q):(e=P.getActiveScopeSpan(),await P.withPropagatedContext(a.headers,()=>P.trace(n.BaseServerSpan.handleRequest,{spanName:`${O} ${d}`,kind:i.SpanKind.SERVER,attributes:{"http.method":O,"http.target":a.url}},h),void 0,!R))}catch(b){if(b instanceof t.NoFallbackError||await z.onRequestError(a,b,{routerKind:"App Router",routePath:I,routeType:"route",revalidateReason:(0,o.c)({isStaticGeneration:N,isOnDemandRevalidate:D})},!1,C),J)throw b;return await (0,p.I)(V,W,new Response(null,{status:500})),null}}d()}catch(a){d(a)}})},44870:a=>{a.exports=require("next/dist/compiled/next-server/app-route.runtime.prod.js")},55511:a=>{a.exports=require("crypto")},62228:a=>{a.exports=require("node:os")},63033:a=>{a.exports=require("next/dist/server/app-render/work-unit-async-storage.external.js")},69835:(a,b,c)=>{c.a(a,async(a,d)=>{try{c.d(b,{Lj:()=>p,Md:()=>o,eq:()=>l,ki:()=>n,qo:()=>k,uF:()=>m});var e=c(29021),f=c(33873),g=c(55511),h=c(60396),i=c(80547),j=a([i]);i=(j.then?(await j)():j)[0];let o=0x1900000,p=0x6400000;function k(a=(0,h.$M)()){return(0,i.Nw)((0,f.join)(a,"pidance-attachments"))}function l(a=(0,h.$M)()){let b=k(a);return(0,e.existsSync)(b)||(0,e.mkdirSync)(b,{recursive:!0,mode:448}),(0,i.wz)(b),b}function m(a){let b=(a.replace(/\\/g,"/").split("/").pop()??"file").replace(/\0/g,"").replace(/^\.+/,"").trim()||"file";if(b.length<=180)return b;let c=b.lastIndexOf(".");if(c>0&&b.length-c<=20){let a=b.slice(c);return b.slice(0,180-a.length)+a}return b.slice(0,180)}function n(a,b,c=(0,h.$M)()){let d=l(c),j=function(a,b=Date.now()){let c=m(a),d=new Date(b).toISOString().replace(/[:.]/g,"-"),e=(0,g.randomUUID)().slice(0,8);return`${d}_${e}_${c}`}(a),k=(0,f.join)(d,j);return(0,e.writeFileSync)(k,b,{flag:"wx",mode:384}),{path:(0,i.Nw)(k),name:m(a),storedName:j,size:b.length}}d()}catch(a){d(a)}})},75430:a=>{a.exports=import("@earendil-works/pi-coding-agent")},79646:a=>{a.exports=require("child_process")},79748:a=>{a.exports=require("fs/promises")},80547:(a,b,c)=>{c.a(a,async(a,d)=>{try{c.d(b,{A$:()=>q,Nw:()=>j.Nw,mc:()=>p,uK:()=>o,wz:()=>k.wz});var e=c(29021),f=c(21820),g=c(33873),h=c.n(g),i=c(60396),j=c(50593),k=c(25252),l=c(69835),m=c(40402),n=a([l,m]);[l,m]=n.then?(await n)():n;let r=/^[a-zA-Z]:[\\/]/;function o(a){return r.test(a)||a.startsWith("\\\\")||a.startsWith("//")}async function p(){let a=Date.now(),b=globalThis.__piAllowedRootsCache;if(b&&b.expiresAt>a)return b.roots;let c=await (0,m.dQ)(),d=function(a){let b=new Set;for(let c of a)!0!==c.readOnly&&c.cwd&&b.add((0,j.Nw)(c.cwd)),!0!==c.readOnly&&c.projectRoot&&b.add((0,j.Nw)(c.projectRoot));return b}(c);try{for(let a of(0,e.readdirSync)((0,f.homedir)()))/^pi-cwd-\d{8}$/.test(a)&&d.add((0,j.Nw)(h().join((0,f.homedir)(),a)))}catch{}for(let a of(0,k.HM)())d.add(a);try{d.add((0,l.qo)((0,i.$M)()))}catch{}return globalThis.__piAllowedRootsCache={roots:d,expiresAt:a+5e3},d}function q(a,b){for(let c of b){let b=o(a)||o(c),d=b?h().win32:h(),e=b?"\\":h().sep,f=d.resolve(a),g=d.resolve(c),i=b?f.toLowerCase():f,j=b?g.toLowerCase():g,k=j.endsWith(e)?j:j+e;if(i===j||i.startsWith(k))return!0}return!1}d()}catch(a){d(a)}})},86439:a=>{a.exports=require("next/dist/shared/lib/no-fallback-error.external")},86697:a=>{a.exports=require("node:path")},89477:a=>{a.exports=require("node:fs")},89516:(a,b,c)=>{c.a(a,async(a,d)=>{try{c.r(b),c.d(b,{GET:()=>m,POST:()=>n,dynamic:()=>o});var e=c(23211),f=c(89477),g=c(86697),h=c(80547),i=a([h]);h=(i.then?(await i)():i)[0];let o="force-dynamic",p=/^[a-zA-Z0-9][a-zA-Z0-9._-]{0,63}$/;function j(a){return(0,g.join)((0,g.resolve)(a),".agents","skills")}async function k(a){if("string"!=typeof a||!a)return"cwd is required";let b=await (0,h.mc)();return(0,h.A$)(a,b)?null:"cwd is not in allowed roots"}function l(a){try{return(0,f.readFileSync)(a,"utf8")}catch{return""}}async function m(a){try{let b=new URL(a.url).searchParams.get("cwd")??"",c=await k(b);if(c)return e.NextResponse.json({error:c},{status:403});let d=(0,g.join)((0,g.resolve)(b),"AGENTS.md"),h=(0,f.existsSync)(d)?l(d):"",i=function(a){let b,c=j(a);if(!(0,f.existsSync)(c))return[];try{b=(0,f.readdirSync)(c)}catch{return[]}let d=[];for(let a of b){let b=(0,g.join)(c,a);try{if(!(0,f.statSync)(b).isDirectory())continue}catch{continue}let e=(0,g.join)(b,"SKILL.md");if(!(0,f.existsSync)(e))continue;let h=l(e);d.push({name:a,enabled:!/^\s*disable-model-invocation:\s*true\s*$/m.test(h),content:h})}return d.sort((a,b)=>a.name.localeCompare(b.name))}(b);return e.NextResponse.json({rulesPath:d,rulesExists:(0,f.existsSync)(d),rulesContent:h,skills:i},{headers:{"Cache-Control":"no-store"}})}catch(a){return e.NextResponse.json({error:a instanceof Error?a.message:String(a)},{status:500})}}async function n(a){try{let b=await a.json().catch(()=>({})),c="string"==typeof b.cwd?b.cwd:"",d=await k(c);if(d)return e.NextResponse.json({error:d},{status:403});let h=b.kind;if("rules"===h){let a=b.content;if("string"!=typeof a)return e.NextResponse.json({error:"content must be a string"},{status:400});if(Buffer.byteLength(a,"utf8")>524288)return e.NextResponse.json({error:"content too large"},{status:413});let d=(0,g.join)((0,g.resolve)(c),"AGENTS.md");(0,f.mkdirSync)((0,g.dirname)(d),{recursive:!0});let h=`${d}.${process.pid}.${Date.now()}.tmp`;try{(0,f.writeFileSync)(h,a,{flag:"wx",mode:420}),(0,f.renameSync)(h,d)}catch(a){try{(0,f.unlinkSync)(h)}catch{}throw a}return e.NextResponse.json({ok:!0})}if("skill"===h){let a,d,h=b.action,i="string"==typeof b.name?b.name.trim():"";if(!i||!p.test(i))return e.NextResponse.json({error:"invalid skill name"},{status:400});let k=(0,g.join)(j(c),i),m=(0,g.join)(k,"SKILL.md");if(a=(0,g.resolve)(c),d=(0,g.relative)(a,(0,g.resolve)(m)),""===d||d.startsWith("..")||(0,g.resolve)(m).startsWith(`${a}${g.sep}`))return e.NextResponse.json({error:"skill path escapes project"},{status:403});if("create"===h){if((0,f.existsSync)(m))return e.NextResponse.json({error:"skill already exists"},{status:409});(0,f.mkdirSync)(k,{recursive:!0});let a=`---
1
+ "use strict";(()=>{var a={};a.id=4133,a.ids=[4133],a.modules={261:a=>{a.exports=require("next/dist/shared/lib/router/utils/app-paths")},716:a=>{a.exports=require("node:crypto")},3295:a=>{a.exports=require("next/dist/server/app-render/after-task-async-storage.external.js")},4984:a=>{a.exports=require("readline")},10846:a=>{a.exports=require("next/dist/compiled/next-server/app-page.runtime.prod.js")},21820:a=>{a.exports=require("os")},28354:a=>{a.exports=require("util")},29021:a=>{a.exports=require("fs")},29294:a=>{a.exports=require("next/dist/server/app-render/work-async-storage.external.js")},33873:a=>{a.exports=require("path")},43168:(a,b,c)=>{c.a(a,async(a,d)=>{try{c.r(b),c.d(b,{handler:()=>y,patchFetch:()=>x,routeModule:()=>z,serverHooks:()=>C,workAsyncStorage:()=>A,workUnitAsyncStorage:()=>B});var e=c(19225),f=c(84006),g=c(8317),h=c(99373),i=c(34775),j=c(24235),k=c(261),l=c(54365),m=c(90771),n=c(73461),o=c(67798),p=c(92280),q=c(62018),r=c(45696),s=c(47929),t=c(86439),u=c(37527),v=c(89516),w=a([v]);v=(w.then?(await w)():w)[0];let z=new e.AppRouteRouteModule({definition:{kind:f.RouteKind.APP_ROUTE,page:"/api/project-assets/route",pathname:"/api/project-assets",filename:"route",bundlePath:"app/api/project-assets/route"},distDir:".next",relativeProjectDir:"",resolvedPagePath:"/tmp/pidance-release-build/app/api/project-assets/route.ts",nextConfigOutput:"",userland:v,...{}}),{workAsyncStorage:A,workUnitAsyncStorage:B,serverHooks:C}=z;function x(){return(0,g.patchFetch)({workAsyncStorage:A,workUnitAsyncStorage:B})}async function y(a,b,c){c.requestMeta&&(0,h.setRequestMeta)(a,c.requestMeta),z.isDev&&(0,h.addRequestMeta)(a,"devRequestTimingInternalsEnd",process.hrtime.bigint());let d="/api/project-assets/route";"/index"===d&&(d="/");let e=await z.prepare(a,b,{srcPage:d,multiZoneDraftMode:!1});if(!e)return b.statusCode=400,b.end("Bad Request"),null==c.waitUntil||c.waitUntil.call(c,Promise.resolve()),null;let{buildId:g,deploymentId:v,params:w,nextConfig:x,parsedUrl:y,isDraftMode:A,prerenderManifest:B,routerServerContext:C,isOnDemandRevalidate:D,revalidateOnlyGenerated:E,resolvedPathname:F,clientReferenceManifest:G,serverActionsManifest:H}=e,I=(0,k.normalizeAppPath)(d),J=!!(B.dynamicRoutes[I]||B.routes[F]),K=async()=>((null==C?void 0:C.render404)?await C.render404(a,b,y,!1):b.end("This page could not be found"),null);if(J&&!A){let a=!!B.routes[F],b=B.dynamicRoutes[I];if(b&&!1===b.fallback&&!a){if(x.adapterPath)return await K();throw new t.NoFallbackError}}let L=null;!J||z.isDev||A||(L=F,L="/index"===L?"/":L);let M=!0===z.isDev||!J,N=J&&!M;H&&G&&(0,j.setManifestsSingleton)({page:d,clientReferenceManifest:G,serverActionsManifest:H});let O=a.method||"GET",P=(0,i.getTracer)(),Q=P.getActiveScopeSpan(),R=!!(null==C?void 0:C.isWrappedByNextServer),S=!!(0,h.getRequestMeta)(a,"minimalMode"),T=(0,h.getRequestMeta)(a,"incrementalCache")||await z.getIncrementalCache(a,x,B,S);null==T||T.resetRequestCache(),globalThis.__incrementalCache=T;let U={params:w,previewProps:B.preview,renderOpts:{experimental:{authInterrupts:!!x.experimental.authInterrupts},cacheComponents:!!x.cacheComponents,supportsDynamicResponse:M,incrementalCache:T,cacheLifeProfiles:x.cacheLife,waitUntil:c.waitUntil,onClose:a=>{b.on("close",a)},onAfterTaskError:void 0,onInstrumentationRequestError:(b,c,d,e)=>z.onRequestError(a,b,d,e,C)},sharedContext:{buildId:g,deploymentId:v}},V=new l.NodeNextRequest(a),W=new l.NodeNextResponse(b),X=m.NextRequestAdapter.fromNodeNextRequest(V,(0,m.signalFromNodeResponse)(b));try{let e,g=async a=>z.handle(X,U).finally(()=>{if(!a)return;a.setAttributes({"http.status_code":b.statusCode,"next.rsc":!1});let c=P.getRootSpanAttributes();if(!c)return;if(c.get("next.span_type")!==n.BaseServerSpan.handleRequest)return void console.warn(`Unexpected root span type '${c.get("next.span_type")}'. Please report this Next.js issue https://github.com/vercel/next.js`);let f=c.get("next.route");if(f){let b=`${O} ${f}`;a.setAttributes({"next.route":f,"http.route":f,"next.span_name":b}),a.updateName(b),e&&e!==a&&(e.setAttribute("http.route",f),e.updateName(b))}else a.updateName(`${O} ${d}`)}),h=async e=>{var h,i;let j=async({previousCacheEntry:f})=>{try{if(!S&&D&&E&&!f)return b.statusCode=404,b.setHeader("x-nextjs-cache","REVALIDATED"),b.end("This page could not be found"),null;let d=await g(e);a.fetchMetrics=U.renderOpts.fetchMetrics;let h=U.renderOpts.pendingWaitUntil;h&&c.waitUntil&&(c.waitUntil(h),h=void 0);let i=U.renderOpts.collectedTags;if(!J)return await (0,p.I)(V,W,d,U.renderOpts.pendingWaitUntil),null;{let a=await d.blob(),b=(0,q.toNodeOutgoingHttpHeaders)(d.headers);i&&(b[s.NEXT_CACHE_TAGS_HEADER]=i),!b["content-type"]&&a.type&&(b["content-type"]=a.type);let c=void 0!==U.renderOpts.collectedRevalidate&&!(U.renderOpts.collectedRevalidate>=s.INFINITE_CACHE)&&U.renderOpts.collectedRevalidate,e=void 0===U.renderOpts.collectedExpire||U.renderOpts.collectedExpire>=s.INFINITE_CACHE?void 0:U.renderOpts.collectedExpire;return{value:{kind:u.CachedRouteKind.APP_ROUTE,status:d.status,body:Buffer.from(await a.arrayBuffer()),headers:b},cacheControl:{revalidate:c,expire:e}}}}catch(b){throw(null==f?void 0:f.isStale)&&await z.onRequestError(a,b,{routerKind:"App Router",routePath:d,routeType:"route",revalidateReason:(0,o.c)({isStaticGeneration:N,isOnDemandRevalidate:D})},!1,C),b}},k=await z.handleResponse({req:a,nextConfig:x,cacheKey:L,routeKind:f.RouteKind.APP_ROUTE,isFallback:!1,prerenderManifest:B,isRoutePPREnabled:!1,isOnDemandRevalidate:D,revalidateOnlyGenerated:E,responseGenerator:j,waitUntil:c.waitUntil,isMinimalMode:S});if(!J)return null;if((null==k||null==(h=k.value)?void 0:h.kind)!==u.CachedRouteKind.APP_ROUTE)throw Object.defineProperty(Error(`Invariant: app-route received invalid cache entry ${null==k||null==(i=k.value)?void 0:i.kind}`),"__NEXT_ERROR_CODE",{value:"E701",enumerable:!1,configurable:!0});S||b.setHeader("x-nextjs-cache",D?"REVALIDATED":k.isMiss?"MISS":k.isStale?"STALE":"HIT"),A&&b.setHeader("Cache-Control","private, no-cache, no-store, max-age=0, must-revalidate");let l=(0,q.fromNodeOutgoingHttpHeaders)(k.value.headers);return S&&J||l.delete(s.NEXT_CACHE_TAGS_HEADER),!k.cacheControl||b.getHeader("Cache-Control")||l.get("Cache-Control")||l.set("Cache-Control",(0,r.getCacheControlHeader)(k.cacheControl)),await (0,p.I)(V,W,new Response(k.value.body,{headers:l,status:k.value.status||200})),null};R&&Q?await h(Q):(e=P.getActiveScopeSpan(),await P.withPropagatedContext(a.headers,()=>P.trace(n.BaseServerSpan.handleRequest,{spanName:`${O} ${d}`,kind:i.SpanKind.SERVER,attributes:{"http.method":O,"http.target":a.url}},h),void 0,!R))}catch(b){if(b instanceof t.NoFallbackError||await z.onRequestError(a,b,{routerKind:"App Router",routePath:I,routeType:"route",revalidateReason:(0,o.c)({isStaticGeneration:N,isOnDemandRevalidate:D})},!1,C),J)throw b;return await (0,p.I)(V,W,new Response(null,{status:500})),null}}d()}catch(a){d(a)}})},44870:a=>{a.exports=require("next/dist/compiled/next-server/app-route.runtime.prod.js")},55511:a=>{a.exports=require("crypto")},62228:a=>{a.exports=require("node:os")},63033:a=>{a.exports=require("next/dist/server/app-render/work-unit-async-storage.external.js")},69835:(a,b,c)=>{c.a(a,async(a,d)=>{try{c.d(b,{Lj:()=>p,Md:()=>o,eq:()=>l,ki:()=>n,qo:()=>k,uF:()=>m});var e=c(29021),f=c(33873),g=c(55511),h=c(60396),i=c(80547),j=a([i]);i=(j.then?(await j)():j)[0];let o=0x1900000,p=0x6400000;function k(a=(0,h.$M)()){return(0,i.Nw)((0,f.join)(a,"pidance-attachments"))}function l(a=(0,h.$M)()){let b=k(a);return(0,e.existsSync)(b)||(0,e.mkdirSync)(b,{recursive:!0,mode:448}),(0,i.wz)(b),b}function m(a){let b=(a.replace(/\\/g,"/").split("/").pop()??"file").replace(/\0/g,"").replace(/^\.+/,"").trim()||"file";if(b.length<=180)return b;let c=b.lastIndexOf(".");if(c>0&&b.length-c<=20){let a=b.slice(c);return b.slice(0,180-a.length)+a}return b.slice(0,180)}function n(a,b,c=(0,h.$M)()){let d=l(c),j=function(a,b=Date.now()){let c=m(a),d=new Date(b).toISOString().replace(/[:.]/g,"-"),e=(0,g.randomUUID)().slice(0,8);return`${d}_${e}_${c}`}(a),k=(0,f.join)(d,j);return(0,e.writeFileSync)(k,b,{flag:"wx",mode:384}),{path:(0,i.Nw)(k),name:m(a),storedName:j,size:b.length}}d()}catch(a){d(a)}})},75430:a=>{a.exports=import("@earendil-works/pi-coding-agent")},79646:a=>{a.exports=require("child_process")},79748:a=>{a.exports=require("fs/promises")},80547:(a,b,c)=>{c.a(a,async(a,d)=>{try{c.d(b,{A$:()=>r,Nw:()=>j.Nw,bk:()=>q,mc:()=>p,uK:()=>o,wz:()=>k.wz});var e=c(29021),f=c(21820),g=c(33873),h=c.n(g),i=c(60396),j=c(50593),k=c(25252),l=c(69835),m=c(40402),n=a([l,m]);[l,m]=n.then?(await n)():n;let s=/^[a-zA-Z]:[\\/]/;function o(a){return s.test(a)||a.startsWith("\\\\")||a.startsWith("//")}async function p(){let a=Date.now(),b=globalThis.__piAllowedRootsCache;if(b&&b.expiresAt>a)return b.roots;let c=await (0,m.dQ)(),d=function(a){let b=new Set;for(let c of a)!0!==c.readOnly&&c.cwd&&b.add((0,j.Nw)(c.cwd)),!0!==c.readOnly&&c.projectRoot&&b.add((0,j.Nw)(c.projectRoot));return b}(c);try{for(let a of(0,e.readdirSync)((0,f.homedir)()))/^pi-cwd-\d{8}$/.test(a)&&d.add((0,j.Nw)(h().join((0,f.homedir)(),a)))}catch{}for(let a of(0,k.HM)())d.add(a);try{d.add((0,l.qo)((0,i.$M)()))}catch{}return globalThis.__piAllowedRootsCache={roots:d,expiresAt:a+5e3},d}function q(){return!0}function r(a,b){return!0}d()}catch(a){d(a)}})},86439:a=>{a.exports=require("next/dist/shared/lib/no-fallback-error.external")},86697:a=>{a.exports=require("node:path")},89477:a=>{a.exports=require("node:fs")},89516:(a,b,c)=>{c.a(a,async(a,d)=>{try{c.r(b),c.d(b,{GET:()=>m,POST:()=>n,dynamic:()=>o});var e=c(23211),f=c(89477),g=c(86697),h=c(80547),i=a([h]);h=(i.then?(await i)():i)[0];let o="force-dynamic",p=/^[a-zA-Z0-9][a-zA-Z0-9._-]{0,63}$/;function j(a){return(0,g.join)((0,g.resolve)(a),".agents","skills")}async function k(a){if("string"!=typeof a||!a)return"cwd is required";let b=await (0,h.mc)();return(0,h.A$)(a,b)?null:"cwd is not in allowed roots"}function l(a){try{return(0,f.readFileSync)(a,"utf8")}catch{return""}}async function m(a){try{let b=new URL(a.url).searchParams.get("cwd")??"",c=await k(b);if(c)return e.NextResponse.json({error:c},{status:403});let d=(0,g.join)((0,g.resolve)(b),"AGENTS.md"),h=(0,f.existsSync)(d)?l(d):"",i=function(a){let b,c=j(a);if(!(0,f.existsSync)(c))return[];try{b=(0,f.readdirSync)(c)}catch{return[]}let d=[];for(let a of b){let b=(0,g.join)(c,a);try{if(!(0,f.statSync)(b).isDirectory())continue}catch{continue}let e=(0,g.join)(b,"SKILL.md");if(!(0,f.existsSync)(e))continue;let h=l(e);d.push({name:a,enabled:!/^\s*disable-model-invocation:\s*true\s*$/m.test(h),content:h})}return d.sort((a,b)=>a.name.localeCompare(b.name))}(b);return e.NextResponse.json({rulesPath:d,rulesExists:(0,f.existsSync)(d),rulesContent:h,skills:i},{headers:{"Cache-Control":"no-store"}})}catch(a){return e.NextResponse.json({error:a instanceof Error?a.message:String(a)},{status:500})}}async function n(a){try{let b=await a.json().catch(()=>({})),c="string"==typeof b.cwd?b.cwd:"",d=await k(c);if(d)return e.NextResponse.json({error:d},{status:403});let h=b.kind;if("rules"===h){let a=b.content;if("string"!=typeof a)return e.NextResponse.json({error:"content must be a string"},{status:400});if(Buffer.byteLength(a,"utf8")>524288)return e.NextResponse.json({error:"content too large"},{status:413});let d=(0,g.join)((0,g.resolve)(c),"AGENTS.md");(0,f.mkdirSync)((0,g.dirname)(d),{recursive:!0});let h=`${d}.${process.pid}.${Date.now()}.tmp`;try{(0,f.writeFileSync)(h,a,{flag:"wx",mode:420}),(0,f.renameSync)(h,d)}catch(a){try{(0,f.unlinkSync)(h)}catch{}throw a}return e.NextResponse.json({ok:!0})}if("skill"===h){let a,d,h=b.action,i="string"==typeof b.name?b.name.trim():"";if(!i||!p.test(i))return e.NextResponse.json({error:"invalid skill name"},{status:400});let k=(0,g.join)(j(c),i),m=(0,g.join)(k,"SKILL.md");if(a=(0,g.resolve)(c),d=(0,g.relative)(a,(0,g.resolve)(m)),""===d||d.startsWith("..")||(0,g.resolve)(m).startsWith(`${a}${g.sep}`))return e.NextResponse.json({error:"skill path escapes project"},{status:403});if("create"===h){if((0,f.existsSync)(m))return e.NextResponse.json({error:"skill already exists"},{status:409});(0,f.mkdirSync)(k,{recursive:!0});let a=`---
2
2
  name: ${i}
3
3
  description: ${i} skill
4
4
  ---
@@ -1 +1 @@
1
- "use strict";(()=>{var a={};a.id=6849,a.ids=[6849],a.modules={261:a=>{a.exports=require("next/dist/shared/lib/router/utils/app-paths")},716:a=>{a.exports=require("node:crypto")},3295:a=>{a.exports=require("next/dist/server/app-render/after-task-async-storage.external.js")},4984:a=>{a.exports=require("readline")},10846:a=>{a.exports=require("next/dist/compiled/next-server/app-page.runtime.prod.js")},21820:a=>{a.exports=require("os")},28354:a=>{a.exports=require("util")},29021:a=>{a.exports=require("fs")},29294:a=>{a.exports=require("next/dist/server/app-render/work-async-storage.external.js")},33873:a=>{a.exports=require("path")},44870:a=>{a.exports=require("next/dist/compiled/next-server/app-route.runtime.prod.js")},46935:(a,b,c)=>{c.d(b,{G1:()=>h,NN:()=>g,Uf:()=>d,_w:()=>e,tr:()=>i});let d=80,e=80;function f(a,b){return"number"==typeof a&&Number.isFinite(a)?Math.max(1,Math.min(Math.floor(a),500)):b}function g(a,b=d){let c=a.get("limit")??a.get("tail");if(null===c||""===c)return null;let e=Number(c);return!Number.isFinite(e)||e<=0?b:f(e,b)}function h(a,b=d){let c=a.messages.length,e=f(b,d);if(c<=e)return{...a,hasMoreBefore:!1,totalMessageCount:c};let g=c-e;return{messages:a.messages.slice(g),entryIds:a.entryIds.slice(g),thinkingLevel:a.thinkingLevel,model:a.model,hasMoreBefore:!0,totalMessageCount:c}}function i(a,b,c=e){let d=a.messages.length,g=a.entryIds.indexOf(b);if(g<=0)return{messages:[],entryIds:[],thinkingLevel:a.thinkingLevel,model:a.model,hasMoreBefore:!1,totalMessageCount:d};let h=Math.max(0,g-f(c,e));return{messages:a.messages.slice(h,g),entryIds:a.entryIds.slice(h,g),thinkingLevel:a.thinkingLevel,model:a.model,hasMoreBefore:h>0,totalMessageCount:d}}},55511:a=>{a.exports=require("crypto")},62228:a=>{a.exports=require("node:os")},63033:a=>{a.exports=require("next/dist/server/app-render/work-unit-async-storage.external.js")},75430:a=>{a.exports=import("@earendil-works/pi-coding-agent")},79646:a=>{a.exports=require("child_process")},79748:a=>{a.exports=require("fs/promises")},84870:(a,b,c)=>{c.a(a,async(a,d)=>{try{c.r(b),c.d(b,{handler:()=>y,patchFetch:()=>x,routeModule:()=>z,serverHooks:()=>C,workAsyncStorage:()=>A,workUnitAsyncStorage:()=>B});var e=c(19225),f=c(84006),g=c(8317),h=c(99373),i=c(34775),j=c(24235),k=c(261),l=c(54365),m=c(90771),n=c(73461),o=c(67798),p=c(92280),q=c(62018),r=c(45696),s=c(47929),t=c(86439),u=c(37527),v=c(98192),w=a([v]);v=(w.then?(await w)():w)[0];let z=new e.AppRouteRouteModule({definition:{kind:f.RouteKind.APP_ROUTE,page:"/api/sessions/[id]/route",pathname:"/api/sessions/[id]",filename:"route",bundlePath:"app/api/sessions/[id]/route"},distDir:".next",relativeProjectDir:"",resolvedPagePath:"/tmp/pidance-release-build/app/api/sessions/[id]/route.ts",nextConfigOutput:"",userland:v,...{}}),{workAsyncStorage:A,workUnitAsyncStorage:B,serverHooks:C}=z;function x(){return(0,g.patchFetch)({workAsyncStorage:A,workUnitAsyncStorage:B})}async function y(a,b,c){c.requestMeta&&(0,h.setRequestMeta)(a,c.requestMeta),z.isDev&&(0,h.addRequestMeta)(a,"devRequestTimingInternalsEnd",process.hrtime.bigint());let d="/api/sessions/[id]/route";"/index"===d&&(d="/");let e=await z.prepare(a,b,{srcPage:d,multiZoneDraftMode:!1});if(!e)return b.statusCode=400,b.end("Bad Request"),null==c.waitUntil||c.waitUntil.call(c,Promise.resolve()),null;let{buildId:g,deploymentId:v,params:w,nextConfig:x,parsedUrl:y,isDraftMode:A,prerenderManifest:B,routerServerContext:C,isOnDemandRevalidate:D,revalidateOnlyGenerated:E,resolvedPathname:F,clientReferenceManifest:G,serverActionsManifest:H}=e,I=(0,k.normalizeAppPath)(d),J=!!(B.dynamicRoutes[I]||B.routes[F]),K=async()=>((null==C?void 0:C.render404)?await C.render404(a,b,y,!1):b.end("This page could not be found"),null);if(J&&!A){let a=!!B.routes[F],b=B.dynamicRoutes[I];if(b&&!1===b.fallback&&!a){if(x.adapterPath)return await K();throw new t.NoFallbackError}}let L=null;!J||z.isDev||A||(L=F,L="/index"===L?"/":L);let M=!0===z.isDev||!J,N=J&&!M;H&&G&&(0,j.setManifestsSingleton)({page:d,clientReferenceManifest:G,serverActionsManifest:H});let O=a.method||"GET",P=(0,i.getTracer)(),Q=P.getActiveScopeSpan(),R=!!(null==C?void 0:C.isWrappedByNextServer),S=!!(0,h.getRequestMeta)(a,"minimalMode"),T=(0,h.getRequestMeta)(a,"incrementalCache")||await z.getIncrementalCache(a,x,B,S);null==T||T.resetRequestCache(),globalThis.__incrementalCache=T;let U={params:w,previewProps:B.preview,renderOpts:{experimental:{authInterrupts:!!x.experimental.authInterrupts},cacheComponents:!!x.cacheComponents,supportsDynamicResponse:M,incrementalCache:T,cacheLifeProfiles:x.cacheLife,waitUntil:c.waitUntil,onClose:a=>{b.on("close",a)},onAfterTaskError:void 0,onInstrumentationRequestError:(b,c,d,e)=>z.onRequestError(a,b,d,e,C)},sharedContext:{buildId:g,deploymentId:v}},V=new l.NodeNextRequest(a),W=new l.NodeNextResponse(b),X=m.NextRequestAdapter.fromNodeNextRequest(V,(0,m.signalFromNodeResponse)(b));try{let e,g=async a=>z.handle(X,U).finally(()=>{if(!a)return;a.setAttributes({"http.status_code":b.statusCode,"next.rsc":!1});let c=P.getRootSpanAttributes();if(!c)return;if(c.get("next.span_type")!==n.BaseServerSpan.handleRequest)return void console.warn(`Unexpected root span type '${c.get("next.span_type")}'. Please report this Next.js issue https://github.com/vercel/next.js`);let f=c.get("next.route");if(f){let b=`${O} ${f}`;a.setAttributes({"next.route":f,"http.route":f,"next.span_name":b}),a.updateName(b),e&&e!==a&&(e.setAttribute("http.route",f),e.updateName(b))}else a.updateName(`${O} ${d}`)}),h=async e=>{var h,i;let j=async({previousCacheEntry:f})=>{try{if(!S&&D&&E&&!f)return b.statusCode=404,b.setHeader("x-nextjs-cache","REVALIDATED"),b.end("This page could not be found"),null;let d=await g(e);a.fetchMetrics=U.renderOpts.fetchMetrics;let h=U.renderOpts.pendingWaitUntil;h&&c.waitUntil&&(c.waitUntil(h),h=void 0);let i=U.renderOpts.collectedTags;if(!J)return await (0,p.I)(V,W,d,U.renderOpts.pendingWaitUntil),null;{let a=await d.blob(),b=(0,q.toNodeOutgoingHttpHeaders)(d.headers);i&&(b[s.NEXT_CACHE_TAGS_HEADER]=i),!b["content-type"]&&a.type&&(b["content-type"]=a.type);let c=void 0!==U.renderOpts.collectedRevalidate&&!(U.renderOpts.collectedRevalidate>=s.INFINITE_CACHE)&&U.renderOpts.collectedRevalidate,e=void 0===U.renderOpts.collectedExpire||U.renderOpts.collectedExpire>=s.INFINITE_CACHE?void 0:U.renderOpts.collectedExpire;return{value:{kind:u.CachedRouteKind.APP_ROUTE,status:d.status,body:Buffer.from(await a.arrayBuffer()),headers:b},cacheControl:{revalidate:c,expire:e}}}}catch(b){throw(null==f?void 0:f.isStale)&&await z.onRequestError(a,b,{routerKind:"App Router",routePath:d,routeType:"route",revalidateReason:(0,o.c)({isStaticGeneration:N,isOnDemandRevalidate:D})},!1,C),b}},k=await z.handleResponse({req:a,nextConfig:x,cacheKey:L,routeKind:f.RouteKind.APP_ROUTE,isFallback:!1,prerenderManifest:B,isRoutePPREnabled:!1,isOnDemandRevalidate:D,revalidateOnlyGenerated:E,responseGenerator:j,waitUntil:c.waitUntil,isMinimalMode:S});if(!J)return null;if((null==k||null==(h=k.value)?void 0:h.kind)!==u.CachedRouteKind.APP_ROUTE)throw Object.defineProperty(Error(`Invariant: app-route received invalid cache entry ${null==k||null==(i=k.value)?void 0:i.kind}`),"__NEXT_ERROR_CODE",{value:"E701",enumerable:!1,configurable:!0});S||b.setHeader("x-nextjs-cache",D?"REVALIDATED":k.isMiss?"MISS":k.isStale?"STALE":"HIT"),A&&b.setHeader("Cache-Control","private, no-cache, no-store, max-age=0, must-revalidate");let l=(0,q.fromNodeOutgoingHttpHeaders)(k.value.headers);return S&&J||l.delete(s.NEXT_CACHE_TAGS_HEADER),!k.cacheControl||b.getHeader("Cache-Control")||l.get("Cache-Control")||l.set("Cache-Control",(0,r.getCacheControlHeader)(k.cacheControl)),await (0,p.I)(V,W,new Response(k.value.body,{headers:l,status:k.value.status||200})),null};R&&Q?await h(Q):(e=P.getActiveScopeSpan(),await P.withPropagatedContext(a.headers,()=>P.trace(n.BaseServerSpan.handleRequest,{spanName:`${O} ${d}`,kind:i.SpanKind.SERVER,attributes:{"http.method":O,"http.target":a.url}},h),void 0,!R))}catch(b){if(b instanceof t.NoFallbackError||await z.onRequestError(a,b,{routerKind:"App Router",routePath:I,routeType:"route",revalidateReason:(0,o.c)({isStaticGeneration:N,isOnDemandRevalidate:D})},!1,C),J)throw b;return await (0,p.I)(V,W,new Response(null,{status:500})),null}}d()}catch(a){d(a)}})},86439:a=>{a.exports=require("next/dist/shared/lib/no-fallback-error.external")},86697:a=>{a.exports=require("node:path")},89477:a=>{a.exports=require("node:fs")},98192:(a,b,c)=>{c.a(a,async(a,d)=>{try{c.r(b),c.d(b,{DELETE:()=>q,GET:()=>o,PATCH:()=>p});var e=c(23211),f=c(29021),g=c(33873),h=c(40402),i=c(95237),j=c(65107),k=c(46935),l=c(37594),m=c(50955),n=a([h,i,l]);async function o(a,{params:b}){let{id:c}=await b;try{let b,d=await l.mB.getReadView(c);if(!d)return e.NextResponse.json({error:"Session not found"},{status:404});let{filePath:g,manager:i}=d,j=new URL(a.url).searchParams,{leafId:m,tree:n,context:o,header:p,sessionName:q}=(0,h.jK)(i,{deferThinking:j.has("deferThinking"),deferToolResultImages:j.has("deferMedia")}),r=(0,k.NN)(j,k.Uf),s=null!==r?(0,k.G1)(o,r):{...o,hasMoreBefore:!1,totalMessageCount:o.messages.length},t=p?.timestamp??new Date().toISOString();try{t=(0,f.statSync)(g).mtime.toISOString()}catch{}let u=p?.parentSession?await (0,h.u1)(p.parentSession):void 0,v=(await (0,h.dQ)()).find(a=>a.id===c),w=p?{path:g,id:p.id,cwd:p.cwd??"",name:q,created:p.timestamp,modified:t,messageCount:s.totalMessageCount??s.messages.length,firstMessage:s.messages.find(a=>"user"===a.role)?(b=s.messages.find(a=>"user"===a.role).content,"string"==typeof b?b:(Array.isArray(b)?b.find(a=>"text"===a.type)?.text??"":"")||"(no messages)"):"(no messages)",parentSessionId:u,...v?.subagent?{subagent:v.subagent,readOnly:!0}:{}}:null;return e.NextResponse.json({sessionId:c,filePath:g,info:w,leafId:m,tree:n,context:s})}catch(a){if(String(a)===l.DQ)return e.NextResponse.json({error:l.DQ},{status:403});return e.NextResponse.json({error:String(a)},{status:500})}}async function p(a,{params:b}){let{id:c}=await b;try{await (0,l.Yz)(c,l.mB.isReadOnly);let{name:b}=await a.json();if("string"!=typeof b)return e.NextResponse.json({error:"name is required"},{status:400});let d=await (0,h.os)(c);if(!d)return e.NextResponse.json({error:"Session not found"},{status:404});let f=l.mB.getLive(c);return f?.isAlive()?await f.send({type:"set_session_name",name:b.trim()}):(0,i.kW)(d).appendSessionInfo(b.trim()),(0,h.mD)(),e.NextResponse.json({ok:!0})}catch(a){if(String(a)===l.DQ)return e.NextResponse.json({error:l.DQ},{status:403});return e.NextResponse.json({error:String(a)},{status:500})}}async function q(a,{params:b}){let{id:c}=await b;try{await (0,l.Yz)(c,l.mB.isReadOnly);let a=await (0,h.os)(c);if(!a)return e.NextResponse.json({error:"Session not found"},{status:404});let b=(0,h.eP)(a)?.parentSession,d=(0,h.eP)(a)?.id===c?(0,m.ku)(a,c):[],i=a.replace(/\\/g,"/").split("/").slice(0,-1).join("/");try{for(let c of(0,f.readdirSync)(i).filter(b=>b.endsWith(".jsonl")&&(0,g.join)(i,b)!==a)){let d=(0,g.join)(i,c);try{let c=(0,f.readFileSync)(d,"utf8").split("\n"),e=JSON.parse(c[0]);"session"===e.type&&e.parentSession===a&&(e.parentSession=b,c[0]=JSON.stringify(e),(0,f.writeFileSync)(d,c.join("\n")))}catch{}}}catch{}l.mB.destroy(c),(0,f.unlinkSync)(a),(0,j.$9)(a);let k=(0,g.resolve)(a.slice(0,-6)),n=(0,m.uq)(d,k,h.BR);return(0,h.BR)(c),l.mB.removeArchiveRecordAfterPermanentDelete(c),(0,h.mD)(),e.NextResponse.json({ok:!0,skippedSubagents:n})}catch(a){if(String(a)===l.DQ)return e.NextResponse.json({error:l.DQ},{status:403});return e.NextResponse.json({error:String(a)},{status:500})}}[h,i,l]=n.then?(await n)():n,d()}catch(a){d(a)}})}};var b=require("../../../../webpack-runtime.js");b.C(a);var c=b.X(0,[4741,1813,5582,7594],()=>b(b.s=84870));module.exports=c})();
1
+ "use strict";(()=>{var a={};a.id=6849,a.ids=[6849],a.modules={261:a=>{a.exports=require("next/dist/shared/lib/router/utils/app-paths")},716:a=>{a.exports=require("node:crypto")},3295:a=>{a.exports=require("next/dist/server/app-render/after-task-async-storage.external.js")},4984:a=>{a.exports=require("readline")},10846:a=>{a.exports=require("next/dist/compiled/next-server/app-page.runtime.prod.js")},21820:a=>{a.exports=require("os")},28354:a=>{a.exports=require("util")},29021:a=>{a.exports=require("fs")},29294:a=>{a.exports=require("next/dist/server/app-render/work-async-storage.external.js")},33873:a=>{a.exports=require("path")},44870:a=>{a.exports=require("next/dist/compiled/next-server/app-route.runtime.prod.js")},46935:(a,b,c)=>{c.d(b,{G1:()=>h,NN:()=>g,Uf:()=>d,_w:()=>e,tr:()=>i});let d=80,e=80;function f(a,b){return"number"==typeof a&&Number.isFinite(a)?Math.max(1,Math.min(Math.floor(a),500)):b}function g(a,b=d){let c=a.get("limit")??a.get("tail");if(null===c||""===c)return null;let e=Number(c);return!Number.isFinite(e)||e<=0?b:f(e,b)}function h(a,b=d){let c=a.messages.length,e=f(b,d);if(c<=e)return{...a,hasMoreBefore:!1,totalMessageCount:c};let g=c-e;return{messages:a.messages.slice(g),entryIds:a.entryIds.slice(g),thinkingLevel:a.thinkingLevel,model:a.model,hasMoreBefore:!0,totalMessageCount:c}}function i(a,b,c=e){let d=a.messages.length,g=a.entryIds.indexOf(b);if(g<=0)return{messages:[],entryIds:[],thinkingLevel:a.thinkingLevel,model:a.model,hasMoreBefore:!1,totalMessageCount:d};let h=Math.max(0,g-f(c,e));return{messages:a.messages.slice(h,g),entryIds:a.entryIds.slice(h,g),thinkingLevel:a.thinkingLevel,model:a.model,hasMoreBefore:h>0,totalMessageCount:d}}},55511:a=>{a.exports=require("crypto")},62228:a=>{a.exports=require("node:os")},63033:a=>{a.exports=require("next/dist/server/app-render/work-unit-async-storage.external.js")},75430:a=>{a.exports=import("@earendil-works/pi-coding-agent")},79646:a=>{a.exports=require("child_process")},79748:a=>{a.exports=require("fs/promises")},84870:(a,b,c)=>{c.a(a,async(a,d)=>{try{c.r(b),c.d(b,{handler:()=>y,patchFetch:()=>x,routeModule:()=>z,serverHooks:()=>C,workAsyncStorage:()=>A,workUnitAsyncStorage:()=>B});var e=c(19225),f=c(84006),g=c(8317),h=c(99373),i=c(34775),j=c(24235),k=c(261),l=c(54365),m=c(90771),n=c(73461),o=c(67798),p=c(92280),q=c(62018),r=c(45696),s=c(47929),t=c(86439),u=c(37527),v=c(98192),w=a([v]);v=(w.then?(await w)():w)[0];let z=new e.AppRouteRouteModule({definition:{kind:f.RouteKind.APP_ROUTE,page:"/api/sessions/[id]/route",pathname:"/api/sessions/[id]",filename:"route",bundlePath:"app/api/sessions/[id]/route"},distDir:".next",relativeProjectDir:"",resolvedPagePath:"/tmp/pidance-release-build/app/api/sessions/[id]/route.ts",nextConfigOutput:"",userland:v,...{}}),{workAsyncStorage:A,workUnitAsyncStorage:B,serverHooks:C}=z;function x(){return(0,g.patchFetch)({workAsyncStorage:A,workUnitAsyncStorage:B})}async function y(a,b,c){c.requestMeta&&(0,h.setRequestMeta)(a,c.requestMeta),z.isDev&&(0,h.addRequestMeta)(a,"devRequestTimingInternalsEnd",process.hrtime.bigint());let d="/api/sessions/[id]/route";"/index"===d&&(d="/");let e=await z.prepare(a,b,{srcPage:d,multiZoneDraftMode:!1});if(!e)return b.statusCode=400,b.end("Bad Request"),null==c.waitUntil||c.waitUntil.call(c,Promise.resolve()),null;let{buildId:g,deploymentId:v,params:w,nextConfig:x,parsedUrl:y,isDraftMode:A,prerenderManifest:B,routerServerContext:C,isOnDemandRevalidate:D,revalidateOnlyGenerated:E,resolvedPathname:F,clientReferenceManifest:G,serverActionsManifest:H}=e,I=(0,k.normalizeAppPath)(d),J=!!(B.dynamicRoutes[I]||B.routes[F]),K=async()=>((null==C?void 0:C.render404)?await C.render404(a,b,y,!1):b.end("This page could not be found"),null);if(J&&!A){let a=!!B.routes[F],b=B.dynamicRoutes[I];if(b&&!1===b.fallback&&!a){if(x.adapterPath)return await K();throw new t.NoFallbackError}}let L=null;!J||z.isDev||A||(L=F,L="/index"===L?"/":L);let M=!0===z.isDev||!J,N=J&&!M;H&&G&&(0,j.setManifestsSingleton)({page:d,clientReferenceManifest:G,serverActionsManifest:H});let O=a.method||"GET",P=(0,i.getTracer)(),Q=P.getActiveScopeSpan(),R=!!(null==C?void 0:C.isWrappedByNextServer),S=!!(0,h.getRequestMeta)(a,"minimalMode"),T=(0,h.getRequestMeta)(a,"incrementalCache")||await z.getIncrementalCache(a,x,B,S);null==T||T.resetRequestCache(),globalThis.__incrementalCache=T;let U={params:w,previewProps:B.preview,renderOpts:{experimental:{authInterrupts:!!x.experimental.authInterrupts},cacheComponents:!!x.cacheComponents,supportsDynamicResponse:M,incrementalCache:T,cacheLifeProfiles:x.cacheLife,waitUntil:c.waitUntil,onClose:a=>{b.on("close",a)},onAfterTaskError:void 0,onInstrumentationRequestError:(b,c,d,e)=>z.onRequestError(a,b,d,e,C)},sharedContext:{buildId:g,deploymentId:v}},V=new l.NodeNextRequest(a),W=new l.NodeNextResponse(b),X=m.NextRequestAdapter.fromNodeNextRequest(V,(0,m.signalFromNodeResponse)(b));try{let e,g=async a=>z.handle(X,U).finally(()=>{if(!a)return;a.setAttributes({"http.status_code":b.statusCode,"next.rsc":!1});let c=P.getRootSpanAttributes();if(!c)return;if(c.get("next.span_type")!==n.BaseServerSpan.handleRequest)return void console.warn(`Unexpected root span type '${c.get("next.span_type")}'. Please report this Next.js issue https://github.com/vercel/next.js`);let f=c.get("next.route");if(f){let b=`${O} ${f}`;a.setAttributes({"next.route":f,"http.route":f,"next.span_name":b}),a.updateName(b),e&&e!==a&&(e.setAttribute("http.route",f),e.updateName(b))}else a.updateName(`${O} ${d}`)}),h=async e=>{var h,i;let j=async({previousCacheEntry:f})=>{try{if(!S&&D&&E&&!f)return b.statusCode=404,b.setHeader("x-nextjs-cache","REVALIDATED"),b.end("This page could not be found"),null;let d=await g(e);a.fetchMetrics=U.renderOpts.fetchMetrics;let h=U.renderOpts.pendingWaitUntil;h&&c.waitUntil&&(c.waitUntil(h),h=void 0);let i=U.renderOpts.collectedTags;if(!J)return await (0,p.I)(V,W,d,U.renderOpts.pendingWaitUntil),null;{let a=await d.blob(),b=(0,q.toNodeOutgoingHttpHeaders)(d.headers);i&&(b[s.NEXT_CACHE_TAGS_HEADER]=i),!b["content-type"]&&a.type&&(b["content-type"]=a.type);let c=void 0!==U.renderOpts.collectedRevalidate&&!(U.renderOpts.collectedRevalidate>=s.INFINITE_CACHE)&&U.renderOpts.collectedRevalidate,e=void 0===U.renderOpts.collectedExpire||U.renderOpts.collectedExpire>=s.INFINITE_CACHE?void 0:U.renderOpts.collectedExpire;return{value:{kind:u.CachedRouteKind.APP_ROUTE,status:d.status,body:Buffer.from(await a.arrayBuffer()),headers:b},cacheControl:{revalidate:c,expire:e}}}}catch(b){throw(null==f?void 0:f.isStale)&&await z.onRequestError(a,b,{routerKind:"App Router",routePath:d,routeType:"route",revalidateReason:(0,o.c)({isStaticGeneration:N,isOnDemandRevalidate:D})},!1,C),b}},k=await z.handleResponse({req:a,nextConfig:x,cacheKey:L,routeKind:f.RouteKind.APP_ROUTE,isFallback:!1,prerenderManifest:B,isRoutePPREnabled:!1,isOnDemandRevalidate:D,revalidateOnlyGenerated:E,responseGenerator:j,waitUntil:c.waitUntil,isMinimalMode:S});if(!J)return null;if((null==k||null==(h=k.value)?void 0:h.kind)!==u.CachedRouteKind.APP_ROUTE)throw Object.defineProperty(Error(`Invariant: app-route received invalid cache entry ${null==k||null==(i=k.value)?void 0:i.kind}`),"__NEXT_ERROR_CODE",{value:"E701",enumerable:!1,configurable:!0});S||b.setHeader("x-nextjs-cache",D?"REVALIDATED":k.isMiss?"MISS":k.isStale?"STALE":"HIT"),A&&b.setHeader("Cache-Control","private, no-cache, no-store, max-age=0, must-revalidate");let l=(0,q.fromNodeOutgoingHttpHeaders)(k.value.headers);return S&&J||l.delete(s.NEXT_CACHE_TAGS_HEADER),!k.cacheControl||b.getHeader("Cache-Control")||l.get("Cache-Control")||l.set("Cache-Control",(0,r.getCacheControlHeader)(k.cacheControl)),await (0,p.I)(V,W,new Response(k.value.body,{headers:l,status:k.value.status||200})),null};R&&Q?await h(Q):(e=P.getActiveScopeSpan(),await P.withPropagatedContext(a.headers,()=>P.trace(n.BaseServerSpan.handleRequest,{spanName:`${O} ${d}`,kind:i.SpanKind.SERVER,attributes:{"http.method":O,"http.target":a.url}},h),void 0,!R))}catch(b){if(b instanceof t.NoFallbackError||await z.onRequestError(a,b,{routerKind:"App Router",routePath:I,routeType:"route",revalidateReason:(0,o.c)({isStaticGeneration:N,isOnDemandRevalidate:D})},!1,C),J)throw b;return await (0,p.I)(V,W,new Response(null,{status:500})),null}}d()}catch(a){d(a)}})},86439:a=>{a.exports=require("next/dist/shared/lib/no-fallback-error.external")},86697:a=>{a.exports=require("node:path")},89477:a=>{a.exports=require("node:fs")},98192:(a,b,c)=>{c.a(a,async(a,d)=>{try{c.r(b),c.d(b,{DELETE:()=>n,GET:()=>l,PATCH:()=>m});var e=c(23211),f=c(29021),g=c(40402),h=c(95237),i=c(46935),j=c(37594),k=a([g,h,j]);async function l(a,{params:b}){let{id:c}=await b;try{let b,d=await j.mB.getReadView(c);if(!d)return e.NextResponse.json({error:"Session not found"},{status:404});let{filePath:h,manager:k}=d,l=new URL(a.url).searchParams,{leafId:m,tree:n,context:o,header:p,sessionName:q}=(0,g.jK)(k,{deferThinking:l.has("deferThinking"),deferToolResultImages:l.has("deferMedia")}),r=(0,i.NN)(l,i.Uf),s=null!==r?(0,i.G1)(o,r):{...o,hasMoreBefore:!1,totalMessageCount:o.messages.length},t=p?.timestamp??new Date().toISOString();try{t=(0,f.statSync)(h).mtime.toISOString()}catch{}let u=p?.parentSession?await (0,g.u1)(p.parentSession):void 0,v=(await (0,g.dQ)()).find(a=>a.id===c),w=p?{path:h,id:p.id,cwd:p.cwd??"",name:q,created:p.timestamp,modified:t,messageCount:s.totalMessageCount??s.messages.length,firstMessage:s.messages.find(a=>"user"===a.role)?(b=s.messages.find(a=>"user"===a.role).content,"string"==typeof b?b:(Array.isArray(b)?b.find(a=>"text"===a.type)?.text??"":"")||"(no messages)"):"(no messages)",parentSessionId:u,...v?.subagent?{subagent:v.subagent,readOnly:!0}:{}}:null;return e.NextResponse.json({sessionId:c,filePath:h,info:w,leafId:m,tree:n,context:s})}catch(a){if(String(a)===j.DQ)return e.NextResponse.json({error:j.DQ},{status:403});return e.NextResponse.json({error:String(a)},{status:500})}}async function m(a,{params:b}){let{id:c}=await b;try{await (0,j.Yz)(c,j.mB.isReadOnly);let{name:b}=await a.json();if("string"!=typeof b)return e.NextResponse.json({error:"name is required"},{status:400});let d=await (0,g.os)(c);if(!d)return e.NextResponse.json({error:"Session not found"},{status:404});let f=j.mB.getLive(c);return f?.isAlive()?await f.send({type:"set_session_name",name:b.trim()}):(0,h.kW)(d).appendSessionInfo(b.trim()),(0,g.mD)(),e.NextResponse.json({ok:!0})}catch(a){if(String(a)===j.DQ)return e.NextResponse.json({error:j.DQ},{status:403});return e.NextResponse.json({error:String(a)},{status:500})}}async function n(a,{params:b}){let{id:c}=await b;try{let a=await j.mB.deleteSession(c);return e.NextResponse.json({ok:!0,skippedSubagents:a.skippedSubagents})}catch(a){if(String(a)===j.DQ)return e.NextResponse.json({error:j.DQ},{status:403});return e.NextResponse.json({error:String(a)},{status:500})}}[g,h,j]=k.then?(await k)():k,d()}catch(a){d(a)}})}};var b=require("../../../../webpack-runtime.js");b.C(a);var c=b.X(0,[4741,1813,5582,7594],()=>b(b.s=84870));module.exports=c})();