@inkeep/open-knowledge 0.62.1 → 0.63.0-beta.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/acp-harness-probe-BLxtOeJP.mjs +7 -0
- package/dist/cli.mjs +61 -61
- package/dist/constants-CXrNCX02.mjs +2 -0
- package/dist/git-handle-Bp1KC5ON.mjs +1 -0
- package/dist/{git-handle-B1_kHwxU.mjs → git-handle-DBSBLTQr.mjs} +3 -3
- package/dist/index.d.mts +84 -25
- package/dist/index.mjs +210 -209
- package/dist/init-B-JC6toB.mjs +1 -0
- package/dist/{init-BBNz5uLM.mjs → init-CFBWWVL6.mjs} +16 -16
- package/dist/{launch-json-removal-IEs1IGNc.mjs → launch-json-removal-BiR8TkdA.mjs} +2 -2
- package/dist/{loader-DMkVDmiG.mjs → loader-BTqWazXb.mjs} +2 -2
- package/dist/loader-CpTJ3qxR.mjs +1 -0
- package/dist/md-manager-YCnEcytX.mjs +2 -0
- package/dist/{open-browser-Bjj7OZGh.mjs → open-browser-ycZBGuNV.mjs} +2 -2
- package/dist/parse-worker.mjs +1 -1
- package/dist/preview-D6sAAZcw.mjs +1 -0
- package/dist/{preview-BmIvw6sE.mjs → preview-bcFQvR8X.mjs} +2 -2
- package/dist/public/assets/{ActivityModeContent-UgHvlRfm.js → ActivityModeContent-DKNTU3xF.js} +1 -1
- package/dist/public/assets/{AddPropertiesButton-BDADcHDL.js → AddPropertiesButton-DqpU3aSu.js} +1 -1
- package/dist/public/assets/{AgentDiffPane-ilX8XDNa.js → AgentDiffPane-9yWEGSlA.js} +1 -1
- package/dist/public/assets/{AgentThreadClientBinder-sEhhcDlu.js → AgentThreadClientBinder-B7GHdT50.js} +1 -1
- package/dist/public/assets/{BugReportHistory-C-CVBV3l.js → BugReportHistory-CDjs-UvS.js} +1 -1
- package/dist/public/assets/{BugReportHistoryDialog-DHt-VFrA.js → BugReportHistoryDialog-gMqpgd_4.js} +1 -1
- package/dist/public/assets/{CodeMirrorPropInput-7DWVEyfk.js → CodeMirrorPropInput-BkPz1S4U.js} +1 -1
- package/dist/public/assets/{DocumentContext-BIdKuiG7.js → DocumentContext-uEkPWsfu.js} +1 -1
- package/dist/public/assets/{EditorModeToggle-D6QnlYh6.js → EditorModeToggle-BdGWhpIY.js} +1 -1
- package/dist/public/assets/{EnableSyncConfirmDialog-AO57yzbd.js → EnableSyncConfirmDialog-BI3oSfND.js} +1 -1
- package/dist/public/assets/{ExcalidrawDocEditor-Bam5rV4w.js → ExcalidrawDocEditor-DBz9XgPR.js} +1 -1
- package/dist/public/assets/FeedbackForm-jEEgxvE6.js +1 -0
- package/dist/public/assets/{GraphPanel-Dx93IooL.js → GraphPanel-fAs0m1k4.js} +1 -1
- package/dist/public/assets/{ImportSkillDialog-DW6Z89kM.js → ImportSkillDialog-DoECJCyD.js} +1 -1
- package/dist/public/assets/{LintConfigEditor-BeI-xPUE.js → LintConfigEditor-BbQC5XBO.js} +1 -1
- package/dist/public/assets/ManagedArtifactProperties-BPM5-upl.js +1 -0
- package/dist/public/assets/{ManagedArtifactProperties-BZO9kI8m.js → ManagedArtifactProperties-gZ33ParZ.js} +1 -1
- package/dist/public/assets/{MermaidDocEditor-Cd89HPoy.js → MermaidDocEditor-BLuA0Zbi.js} +1 -1
- package/dist/public/assets/{PropertyDisplayRow-CG8-hCCj.js → PropertyDisplayRow-CQC5Z0n6.js} +1 -1
- package/dist/public/assets/{ReportBugDialogBody-DBA0DIqE.js → ReportBugDialogBody-7G3gDx90.js} +1 -1
- package/dist/public/assets/{SchemaConfigEditor-DpFGHtSP.js → SchemaConfigEditor-DJdskJ7F.js} +1 -1
- package/dist/public/assets/{SessionsHost-DlaikM-O.js → SessionsHost-zVHqq9cr.js} +2 -2
- package/dist/public/assets/SettingsDialogBody-CHR0gEF6.js +12 -0
- package/dist/public/assets/ShareBranchSwitchDialog-BVSorWIl.js +1 -0
- package/dist/public/assets/{ShareReceiveDialog-8IdsRTvy.js → ShareReceiveDialog-MMs7AIMS.js} +1 -1
- package/dist/public/assets/{ShareReceiveMissDialog-Mz-t9oAA.js → ShareReceiveMissDialog-Brs6R8I6.js} +1 -1
- package/dist/public/assets/{SkillCostValue-Cku3M1db.js → SkillCostValue-_Y5l2XwJ.js} +1 -1
- package/dist/public/assets/{SkillEditBanner-BCy7jpzl.js → SkillEditBanner-D7_vEL-Q.js} +1 -1
- package/dist/public/assets/{SkillInstallMenu-BCHCe8z8.js → SkillInstallMenu-B06AbDvI.js} +1 -1
- package/dist/public/assets/{SkillOriginInline-C1xgG8JC.js → SkillOriginInline-CPhIPMvZ.js} +1 -1
- package/dist/public/assets/{SkillToolbarControls-JpHel_UB.js → SkillToolbarControls-D53zgCnN.js} +1 -1
- package/dist/public/assets/{SlidesToolbarControls-BB3yJWH1.js → SlidesToolbarControls-BMDuGCKO.js} +1 -1
- package/dist/public/assets/{SourceEditor-DNieshsS.js → SourceEditor--mA47noe.js} +1 -1
- package/dist/public/assets/{TerminalPanel-D9R7DZt8.js → TerminalPanel-CyBB22vO.js} +1 -1
- package/dist/public/assets/{TerminalWindowApp-BxE3Ym8E.js → TerminalWindowApp-DuCRqNRC.js} +1 -1
- package/dist/public/assets/{TextDocEditor-D8XWlX40.js → TextDocEditor-Bll9nONn.js} +1 -1
- package/dist/public/assets/{ThreadView-69VZaOlR.js → ThreadView-CZ-jRmGS.js} +1 -1
- package/dist/public/assets/{TimelineDiffPane-C3vnfLo5.js → TimelineDiffPane-BQAeLDdZ.js} +1 -1
- package/dist/public/assets/{agent-diff-store-BhRxu1mZ.js → agent-diff-store-BqTBnCD3.js} +1 -1
- package/dist/public/assets/auth-state-cache-CFoMX9IK.js +11 -0
- package/dist/public/assets/{bug-report-send-manager-Bh0TzGvX.js → bug-report-send-manager-BVeLqplu.js} +1 -1
- package/dist/public/assets/client-version-D29tmSfy.js +1 -0
- package/dist/public/assets/{comment-chips-C2rVq4II.js → comment-chips-vycRkjQG.js} +1 -1
- package/dist/public/assets/{config-provider-D-IaOGA6.js → config-provider-Cn54Nsso.js} +3 -3
- package/dist/public/assets/{dist-DvxceSuh2.js → dist-D3fPY7nj2.js} +1 -1
- package/dist/public/assets/{doc-paths-Ci9V3GJP.js → doc-paths-82OyHgqG.js} +1 -1
- package/dist/public/assets/{documents-events-KFNF8M1t.js → documents-events-DuT0NGpP.js} +1 -1
- package/dist/public/assets/{file-tree-adapter-BsjkSG-e.js → file-tree-adapter-QHHr7v_y.js} +1 -1
- package/dist/public/assets/{file-tree-utils-Ds7HkJwf.js → file-tree-utils-dEjn4DTA.js} +1 -1
- package/dist/public/assets/{folder-config-api-BWqau0tQ.js → folder-config-api-CCs-JTL1.js} +1 -1
- package/dist/public/assets/globals-CgRBo3fB.css +1 -0
- package/dist/public/assets/i18n-CrTwsN89.js +1 -0
- package/dist/public/assets/{index-CSzWQRes.js → index-uWwSanPO.js} +8 -8
- package/dist/public/assets/{lint-config-client-Dv_IZf02.js → lint-config-client-sUKnaDfE.js} +1 -1
- package/dist/public/assets/{markdownlint-rule-browser-B8m3JJ8Y.js → markdownlint-rule-browser-DoSn8IJz.js} +1 -1
- package/dist/public/assets/messages-B8yzAqdX.js +1 -0
- package/dist/public/assets/messages-B_leGMuj.js +1 -0
- package/dist/public/assets/messages-BjsESsFx.js +1 -0
- package/dist/public/assets/messages-CgRQxqOr.js +1 -0
- package/dist/public/assets/messages-ClYIPasG.js +1 -0
- package/dist/public/assets/messages-DKj1XaXP.js +1 -0
- package/dist/public/assets/messages-DoiuiDAc.js +1 -0
- package/dist/public/assets/messages-WY-HJ7CG.js +1 -0
- package/dist/public/assets/messages-XTC09BUs.js +1 -0
- package/dist/public/assets/messages-rsgDLMpR.js +1 -0
- package/dist/public/assets/messages-rvWZA8Dv.js +1 -0
- package/dist/public/assets/messages-su76b0h7.js +1 -0
- package/dist/public/assets/{page-list-cache-DeM2R6LV.js → page-list-cache-SxA5m5if.js} +1 -1
- package/dist/public/assets/{pending-receive-nav-store-BVpMc8JM.js → pending-receive-nav-store-DY4RHmGg.js} +1 -1
- package/dist/public/assets/{progress-BA2juWmV.js → progress-Cfh7jhIR.js} +1 -1
- package/dist/public/assets/{prop-types-CCaA1wTK.js → prop-types-CPMCR1bB.js} +1 -1
- package/dist/public/assets/{receive-store-8SCgMS8t.js → receive-store-DXkS-6fp.js} +1 -1
- package/dist/public/assets/{selection-context-zszi1QFC.js → selection-context-C2jhGMgO.js} +1 -1
- package/dist/public/assets/{skill-scope-BuVzIUXk.js → skill-scope-CSgNqFEM.js} +1 -1
- package/dist/public/assets/{skills-api-Dep6MiKT.js → skills-api-Bk-f3oIn.js} +1 -1
- package/dist/public/assets/{src-BSLRefUx.js → src-COmrouI5.js} +1 -1
- package/dist/public/assets/{tag-pill-input-CQS5NOhF.js → tag-pill-input-vXWkMHt_.js} +1 -1
- package/dist/public/assets/{target-navigation-intent-pKpCjs2S.js → target-navigation-intent-B6pF65mo.js} +1 -1
- package/dist/public/assets/{telemetry-impl-Cj_q40Ol.js → telemetry-impl-DKudPu9V.js} +1 -1
- package/dist/public/assets/{telemetry-startup-DPx9iYCc.js → telemetry-startup-wvejDKve.js} +1 -1
- package/dist/public/assets/{terminal-cli-display-HlY8wnKB.js → terminal-cli-display-D8ya3OyM.js} +1 -1
- package/dist/public/assets/{terminal-launch-events-DF6gr1Aw.js → terminal-launch-events-CEw1ZoL3.js} +1 -1
- package/dist/public/assets/{terminal-telemetry-DIQemiSP.js → terminal-telemetry-BkPbxfR9.js} +1 -1
- package/dist/public/assets/{typing-burst-detector-DIEPcqLu.js → typing-burst-detector-D8opQPVA.js} +1 -1
- package/dist/public/assets/{uninstall-hrTOWrpH.js → uninstall-D6ZjikLo.js} +1 -1
- package/dist/public/assets/{use-activity-panel-DmQb6ftt.js → use-activity-panel-Cob7wbER.js} +1 -1
- package/dist/public/assets/{use-apply-config-color-theme-CgQvQTC8.js → use-apply-config-color-theme-Chbv5kIz.js} +1 -1
- package/dist/public/assets/{use-collab-url-D-KUuG97.js → use-collab-url-CLES09HL.js} +1 -1
- package/dist/public/assets/{use-live-xterm-theme-9u7r8aAP.js → use-live-xterm-theme-BeGlZWUx.js} +1 -1
- package/dist/public/assets/{use-open-skill-DPLvxchh.js → use-open-skill-DggswBlG.js} +1 -1
- package/dist/public/assets/{use-settings-route-DVQFDRof.js → use-settings-route-1RDLdzh1.js} +1 -1
- package/dist/public/assets/{use-skill-origin-R1sRvauo.js → use-skill-origin-BPSEVtzI.js} +1 -1
- package/dist/public/assets/{use-skills-DAq8jAZe.js → use-skills-X0D5g-_u.js} +1 -1
- package/dist/public/assets/{use-terminal-enabled-Dr8J6UFC.js → use-terminal-enabled-FDOP0Dht.js} +1 -1
- package/dist/public/assets/{use-timeline-entry-diff--6rU6lJA.js → use-timeline-entry-diff-CDYxwT8Z.js} +1 -1
- package/dist/public/assets/{use-workspace-CmQoGWbG.js → use-workspace-BuKQ4WE6.js} +1 -1
- package/dist/public/index.html +48 -48
- package/dist/public/uninstall.html +6 -6
- package/dist/{repair-launch-json-CuGClx3V.mjs → repair-launch-json-DAAbCvvm.mjs} +2 -2
- package/dist/{repair-mcp-configs-BLjx-rrv.mjs → repair-mcp-configs-BN-aQmcz.mjs} +2 -2
- package/dist/repair-skills-DnJVC8BQ.mjs +1 -0
- package/dist/{repair-skills-Dem7BC1X.mjs → repair-skills-Dye90u_k.mjs} +2 -2
- package/dist/{resolve-project-root-D42xTuDS.mjs → resolve-project-root-Bc1ADd86.mjs} +3 -3
- package/dist/server-lock-0Z4DgFB6.mjs +1 -0
- package/dist/{server-lock-DgBmHnv3.mjs → server-lock-DmHwX0B4.mjs} +2 -2
- package/dist/{skill-teardown-R_4ZT4ie.mjs → skill-teardown-D6lPMY6n.mjs} +2 -2
- package/dist/{src-CWk71iRz.mjs → src-BOzh5nAU.mjs} +127 -127
- package/dist/{src-B51qQNNF.mjs → src-BqTdx7nf.mjs} +395 -394
- package/dist/src-CEwAgAUS.mjs +1 -0
- package/dist/src-CzJVDa-w.mjs +1 -0
- package/dist/src-DYGvbcXO.mjs +20 -0
- package/dist/start-CXzNBszs.mjs +5 -0
- package/dist/start-DCYQqoBl.mjs +1 -0
- package/package.json +5 -5
- package/dist/acp-harness-probe-BJlYDk3f.mjs +0 -6
- package/dist/constants-mSr6wUwB.mjs +0 -2
- package/dist/git-handle-Bzo9zPMA.mjs +0 -1
- package/dist/init-CHjsSRDX.mjs +0 -1
- package/dist/loader-DpcqK3Ja.mjs +0 -1
- package/dist/md-manager-BmiopEw3.mjs +0 -2
- package/dist/preview-BS5kzZtr.mjs +0 -1
- package/dist/public/assets/FeedbackForm-CdHrYizt.js +0 -1
- package/dist/public/assets/ManagedArtifactProperties-B5LwwYXJ.js +0 -1
- package/dist/public/assets/SettingsDialogBody-De-5QcmZ.js +0 -12
- package/dist/public/assets/ShareBranchSwitchDialog-7Edp8Hzf.js +0 -1
- package/dist/public/assets/auth-state-cache-DBv0mprN.js +0 -11
- package/dist/public/assets/client-version-Qo8hmlER.js +0 -1
- package/dist/public/assets/globals-CicL60No.css +0 -1
- package/dist/public/assets/i18n-k3aI0GNV.js +0 -1
- package/dist/public/assets/messages-B0BMmqnn.js +0 -1
- package/dist/public/assets/messages-B5c6YyNP.js +0 -1
- package/dist/public/assets/messages-BzE-c_Uj.js +0 -1
- package/dist/public/assets/messages-CNojGJ24.js +0 -1
- package/dist/public/assets/messages-CPhl6p5K.js +0 -1
- package/dist/public/assets/messages-CUIoZBqe.js +0 -1
- package/dist/public/assets/messages-Cw1qxDcG.js +0 -1
- package/dist/public/assets/messages-D2PtImxe.js +0 -1
- package/dist/public/assets/messages-DEYBrYWV.js +0 -1
- package/dist/public/assets/messages-DPi-3ors.js +0 -1
- package/dist/public/assets/messages-FV0LJygj.js +0 -1
- package/dist/public/assets/messages-bf96uLMn.js +0 -1
- package/dist/repair-skills-T5QwtV-L.mjs +0 -1
- package/dist/server-lock-BIFxlKM5.mjs +0 -1
- package/dist/src-0PkIjmrm.mjs +0 -20
- package/dist/src-C7zPHrjN.mjs +0 -1
- package/dist/src-DYP_-J_-.mjs +0 -1
- package/dist/start-BFWqfEiC.mjs +0 -1
- package/dist/start-CMhe7yh7.mjs +0 -5
- /package/dist/public/assets/{globals-BuKzWnho.js → globals-4Lwslben.js} +0 -0
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import"./src-
|
|
2
|
-
//# sourceMappingURL=server-lock-
|
|
1
|
+
import"./src-BOzh5nAU.mjs";import{r as e}from"./logger-Dq-cRhcP.mjs";import{dirname as t,join as n,resolve as r}from"node:path";import{fileURLToPath as i}from"node:url";import{closeSync as a,existsSync as o,mkdirSync as s,openSync as c,readFileSync as l,unlinkSync as u,writeFileSync as d,writeSync as f}from"node:fs";import{homedir as p,hostname as m}from"node:os";import{randomUUID as h}from"node:crypto";function g(e){try{return process.kill(e,0),!0}catch(e){return!!(e&&typeof e==`object`&&`code`in e&&e.code===`EPERM`)}}function _(e){return!(typeof e!=`number`||!Number.isInteger(e)||e<2||e>2147483647)}function v(){try{let e=r(t(i(import.meta.url)),`..`,`package.json`),n=JSON.parse(l(e,`utf-8`));if(typeof n.version==`string`&&n.version.length>0)return n.version}catch{}return`0.0.0-unknown`}const y=v(),b=1;function x(e){return new URL(e.url??``,`http://localhost`).searchParams}function S(e){let t=e?.code;return typeof t==`string`?t:void 0}const C=/^[A-Za-z0-9-]{8,64}$/;let w=null;function T(e){return n(e??p(),`.ok`,`machine-id`)}function E(n){if(n===void 0&&w!==null)return w;let r=T(n),i=null;try{let e=l(r,`utf-8`).trim();C.test(e)&&(i=e)}catch{}if(i===null){i=h();try{s(t(r),{recursive:!0}),d(r,`${i}\n`,{encoding:`utf-8`,mode:384})}catch(t){e(`machine-id`).warn({path:r,err:t},`Failed to persist ${r} — using an ephemeral per-process id; lock ownership checks will fail closed (collision) instead of recognizing this machine: ${t instanceof Error?t.message:String(t)}`)}}return n===void 0&&(w=i),i}const D=e(`process-lock`);var O=class extends Error{existing;lockPath;lockName;constructor(e,t,n){super(`OpenKnowledge ${n} already running at ${e.url??`port ${e.port}`} (pid ${e.pid}, started ${e.startedAt}). Stop it first or use a different directory. Lock: ${t}`),this.name=`ProcessLockCollisionError`,this.existing=e,this.lockPath=t,this.lockName=n}};function k(e,t){return r(e,`${t}.lock`)}const A=new Map;function j(e){A.set(e,(A.get(e)??0)+1)}function M(e){let t=A.get(e);return t===void 0||t<=1?(A.delete(e),!0):(A.set(e,t-1),!1)}function N(e){return typeof e.machineId==`string`?e.machineId===E():e.hostname===m()}const P=new Set;let F=!1;function I(e){P.add(e),!F&&(F=!0,process.on(`exit`,()=>{for(let e of P)try{let t=JSON.parse(l(e,`utf-8`));if(t?.pid!==process.pid||typeof t.machineId==`string`&&t.machineId!==E()||t.machineId===void 0&&typeof t.hostname==`string`&&t.hostname!==m())continue;u(e)}catch{}}))}function L(e,t){try{let n=JSON.parse(l(e,`utf-8`));return n&&typeof n==`object`&&_(n.pid)?n:(D.warn({lockPath:e},`${t} Corrupt lock file at ${e} — replacing`),null)}catch{return D.warn({lockPath:e},`${t} Corrupt lock file at ${e} — replacing`),null}}function R(e){let{lockName:t,lockDir:n,metadata:r}=e,i=`[${t}-lock]`;s(n,{recursive:!0});let l=k(n,t),p={pid:process.pid,hostname:m(),port:r.port,...r.url!==void 0&&{url:r.url},startedAt:new Date().toISOString(),worktreeRoot:r.worktreeRoot,machineId:E(),...r.kind!==void 0&&{kind:r.kind},...r.parentPid!==void 0&&{parentPid:r.parentPid},...r.capabilities!==void 0&&{capabilities:r.capabilities},protocolVersion:r.protocolVersion??2,runtimeVersion:r.runtimeVersion??y},h=JSON.stringify(p,null,2);for(let e=0;e<3;e++){if(!o(l))try{let e=c(l,`wx`,384);try{f(e,h)}finally{a(e)}return j(l),I(l),z({lockName:t,lockDir:n,lockPath:l})}catch(e){if(S(e)!==`EEXIST`)throw e}let e=L(l,i);if(e){if(N(e)&&e.pid===process.pid)return d(l,h,{encoding:`utf-8`,mode:384}),j(l),I(l),z({lockName:t,lockDir:n,lockPath:l});if(g(e.pid))throw new O(e,l,t);D.warn({pid:e.pid,host:e.hostname},`${i} Stale lock detected (pid=${e.pid}, host=${e.hostname}) — replacing`)}try{u(l)}catch{}}throw Error(`${i} Failed to acquire ${l} after 3 attempts (concurrent acquire contention).`)}function z(e){let{lockName:t,lockDir:n,lockPath:r}=e;return{lockPath:r,release:()=>q({lockName:t,lockDir:n}),updatePort:(e,r)=>H({lockName:t,lockDir:n,port:e,url:r})}}function B(e){let t;try{t=new URL(e)}catch{return null}if(t.protocol!==`http:`&&t.protocol!==`https:`)return null;let n=t.hostname;return n===`localhost`||n===`[::1]`||/^127\.\d{1,3}\.\d{1,3}\.\d{1,3}$/.test(n)?t.origin:null}function V(e,t){if(typeof e.url==`string`&&e.url.length>0){let t=B(e.url);if(t!==null)return t}if(e.port>0){let n=t?.fallbackHost??`localhost`;return`http://${n===`0.0.0.0`||n===`::`?`localhost`:n.includes(`:`)&&!n.startsWith(`[`)?`[${n}]`:n}:${e.port}`}return null}function H(e){let{lockName:t,lockDir:n,port:r,url:i}=e,a=`[${t}-lock]`,s=k(n,t);if(!o(s)){D.warn({lockPath:s},`${a} Lock file missing at ${s} during port update — skipping`);return}let c;try{let e=JSON.parse(l(s,`utf-8`));if(!e||typeof e!=`object`||!_(e.pid)){D.warn({lockPath:s},`${a} Corrupt lock at ${s} during port update — skipping`);return}c=e}catch{D.warn({lockPath:s},`${a} Unreadable lock at ${s} during port update — skipping`);return}if(c.pid===process.pid&&N(c)){c.port=r,i===void 0?delete c.url:c.url=i;try{d(s,JSON.stringify(c,null,2),{encoding:`utf-8`,mode:384})}catch(e){D.warn({lockPath:s,err:e},`${a} Failed to update port in ${s}: ${e instanceof Error?e.message:String(e)}`)}}}function U(e){let{lockName:t,lockDir:n}=e,r=`[${t}-lock]`,i=k(n,t);if((A.get(i)??0)>1)return;let a;try{let e=JSON.parse(l(i,`utf-8`));if(!e||typeof e!=`object`||!_(e.pid)){D.warn({lockPath:i},`${r} Corrupt lock at ${i} during draining mark — skipping`);return}a=e}catch(e){S(e)!==`ENOENT`&&D.warn({lockPath:i,err:e},`${r} Unreadable lock at ${i} during draining mark — skipping: ${e instanceof Error?e.message:String(e)}`);return}if(a.pid===process.pid&&N(a)&&a.draining!==!0){a.draining=!0;try{d(i,JSON.stringify(a,null,2),{encoding:`utf-8`,mode:384})}catch(e){D.warn({lockPath:i,err:e},`${r} Failed to mark ${i} draining: ${e instanceof Error?e.message:String(e)}`)}}}function W(e){let{lockName:t,lockDir:n}=e,r=k(n,t);if(!o(r))return null;let i;try{let e=JSON.parse(l(r,`utf-8`));if(!e||typeof e!=`object`||!_(e.pid))return null;i=e}catch{return null}if(!N(i))return null;if(!g(i.pid)){try{u(r)}catch{}return null}return i}function G(e){let{lockName:t,lockDir:n}=e,r=k(n,t);if(!o(r))return{status:`absent`};let i;try{i=JSON.parse(l(r,`utf-8`))}catch{return{status:`incompatible`,reason:`corrupt`,raw:void 0}}if(!i||typeof i!=`object`)return{status:`incompatible`,reason:`corrupt`,raw:i};let a=i;if(!_(a.pid)||typeof a.hostname!=`string`||typeof a.port!=`number`||typeof a.startedAt!=`string`||typeof a.worktreeRoot!=`string`)return{status:`incompatible`,reason:`corrupt`,raw:i};let s={pid:a.pid,hostname:a.hostname,port:a.port,url:typeof a.url==`string`?a.url:void 0,startedAt:a.startedAt,worktreeRoot:a.worktreeRoot,machineId:typeof a.machineId==`string`?a.machineId:void 0,draining:a.draining===!0?!0:void 0,capabilities:Array.isArray(a.capabilities)&&a.capabilities.every(e=>typeof e==`string`)?a.capabilities:void 0,protocolVersion:typeof a.protocolVersion==`number`?a.protocolVersion:void 0,runtimeVersion:typeof a.runtimeVersion==`string`?a.runtimeVersion:void 0};if(!N(s))return{status:`stale`,lock:s};if(!g(s.pid)){try{u(r)}catch{}return{status:`stale`,lock:s}}return s.protocolVersion===void 0||s.runtimeVersion===void 0?{status:`incompatible`,reason:`missing-fields`,raw:i}:{status:`live`,lock:s}}async function K(e){let{lockName:t,lockDir:n}=e,r=e.timeoutMs??1e4,i=e.pollIntervalMs??100,a=e.readLock??(()=>W({lockName:t,lockDir:n})),o=e.sleep??(e=>new Promise(t=>setTimeout(t,e))),s=a();if(s===null||s.draining!==!0)return`no-drain`;let c=Date.now()+r;for(;Date.now()<c;){await o(i);let e=a();if(e===null)return`released`;if(e.draining!==!0)return`no-drain`}return`timeout`}function q(e){let{lockName:t,lockDir:n,deferUnlinkToExit:r=!1}=e,i=`[${t}-lock]`,a=k(n,t);if(M(a)){if(r){U({lockName:t,lockDir:n});return}if(o(a))try{let e=JSON.parse(l(a,`utf-8`));if(!e||typeof e!=`object`||typeof e.pid!=`number`||e.pid!==process.pid||!N(e))return;u(a),P.delete(a)}catch(e){D.warn({lockPath:a,err:e},`${i} Failed to release ${a}: ${e instanceof Error?e.message:String(e)}`)}}}var J=class extends O{constructor(e,t){super(e,t,`server`),this.name=`ServerLockCollisionError`}};function Y(e,t){try{return R({lockName:`server`,lockDir:e,metadata:t}).lockPath}catch(e){throw e instanceof O&&e.lockName===`server`?new J(e.existing,e.lockPath):e}}function X(e,t,n){H({lockName:`server`,lockDir:e,port:t,url:n})}function Z(e){return W({lockName:`server`,lockDir:e})}function Q(e){return!Array.isArray(e.capabilities)||e.capabilities.includes(`ui`)}function $(e,t){q({lockName:`server`,lockDir:e,...t})}function ee(e){U({lockName:`server`,lockDir:e})}function te(e,t){return K({lockName:`server`,lockDir:e,...t})}export{_ as C,g as S,E as _,Z as a,y as b,te as c,V as d,k as f,H as g,q as h,ee as i,O as l,G as m,Y as n,$ as o,W as p,Q as r,X as s,J as t,R as u,S as v,b as x,x as y};
|
|
2
|
+
//# sourceMappingURL=server-lock-DmHwX0B4.mjs.map
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{Us as e}from"./src-
|
|
2
|
-
//# sourceMappingURL=skill-teardown-
|
|
1
|
+
import{Us as e}from"./src-BOzh5nAU.mjs";import{_i as t,yi as n}from"./src-BqTdx7nf.mjs";import{dirname as r,isAbsolute as i,join as a,relative as o,resolve as s,sep as c}from"node:path";import{existsSync as l,lstatSync as u,readdirSync as d,rmSync as f,rmdirSync as p}from"node:fs";const m=[{hostDir:`.adal`,pruneRoot:`.adal`},{hostDir:`.aider-desk`,pruneRoot:`.aider-desk`},{hostDir:`.astrbot/data`,pruneRoot:`.astrbot`},{hostDir:`.augment`,pruneRoot:`.augment`},{hostDir:`.autohand`,pruneRoot:`.autohand`},{hostDir:`.bob`,pruneRoot:`.bob`},{hostDir:`.codeartsdoer`,pruneRoot:`.codeartsdoer`},{hostDir:`.codebuddy`,pruneRoot:`.codebuddy`},{hostDir:`.codeium/windsurf`,pruneRoot:`.codeium`},{hostDir:`.codemaker`,pruneRoot:`.codemaker`},{hostDir:`.codestudio`,pruneRoot:`.codestudio`},{hostDir:`.commandcode`,pruneRoot:`.commandcode`},{hostDir:`.config/crush`,pruneRoot:`.config/crush`},{hostDir:`.config/devin`,pruneRoot:`.config/devin`},{hostDir:`.config/goose`,pruneRoot:`.config/goose`},{hostDir:`.config/kimchi/harness`,pruneRoot:`.config/kimchi`},{hostDir:`.continue`,pruneRoot:`.continue`},{hostDir:`.factory`,pruneRoot:`.factory`},{hostDir:`.forge`,pruneRoot:`.forge`},{hostDir:`.grok`,pruneRoot:`.grok`},{hostDir:`.iflow`,pruneRoot:`.iflow`},{hostDir:`.inferencesh`,pruneRoot:`.inferencesh`},{hostDir:`.jazz`,pruneRoot:`.jazz`},{hostDir:`.junie`,pruneRoot:`.junie`},{hostDir:`.kilocode`,pruneRoot:`.kilocode`},{hostDir:`.kiro`,pruneRoot:`.kiro`},{hostDir:`.kode`,pruneRoot:`.kode`},{hostDir:`.lingma`,pruneRoot:`.lingma`},{hostDir:`.mcpjam`,pruneRoot:`.mcpjam`},{hostDir:`.moxby`,pruneRoot:`.moxby`},{hostDir:`.mux`,pruneRoot:`.mux`},{hostDir:`.neovate`,pruneRoot:`.neovate`},{hostDir:`.ona`,pruneRoot:`.ona`},{hostDir:`.openhands`,pruneRoot:`.openhands`},{hostDir:`.pochi`,pruneRoot:`.pochi`},{hostDir:`.qoder`,pruneRoot:`.qoder`},{hostDir:`.qoder-cn`,pruneRoot:`.qoder-cn`},{hostDir:`.qwen`,pruneRoot:`.qwen`},{hostDir:`.reasonix`,pruneRoot:`.reasonix`},{hostDir:`.roo`,pruneRoot:`.roo`},{hostDir:`.rovodev`,pruneRoot:`.rovodev`},{hostDir:`.snowflake/cortex`,pruneRoot:`.snowflake`},{hostDir:`.tabnine/agent`,pruneRoot:`.tabnine`},{hostDir:`.terramind`,pruneRoot:`.terramind`},{hostDir:`.tinycloud`,pruneRoot:`.tinycloud`},{hostDir:`.trae`,pruneRoot:`.trae`},{hostDir:`.trae-cn`,pruneRoot:`.trae-cn`},{hostDir:`.vibe`,pruneRoot:`.vibe`},{hostDir:`.zcode`,pruneRoot:`.zcode`},{hostDir:`.zencoder`,pruneRoot:`.zencoder`}],h=[...n.map(e=>t[e]),`open-knowledge`];function g(e){if(!i(e))throw Error(`skill cleanup requires an absolute home directory; got ${JSON.stringify(e)}`);let t=s(e);if(t===c||r(t)===t)throw Error(`skill cleanup refuses to operate on the filesystem root (${t})`);return t}function _(e,t){let n=o(e,t);if(n.startsWith(`..`)||i(n))return!1;let r=e;for(let e of n.split(c)){r=a(r,e);try{if(!u(r).isDirectory())return!1}catch{return!1}}return!0}function v(e,t){try{return d(e).every(n=>t.has(a(e,n)))}catch{return!1}}function y(e){let t=g(e),n=[],i=[],o=new Set;for(let e of m){let s=a(t,e.hostDir,`skills`);if(!_(t,s))continue;let u=h.map(e=>a(s,e)).filter(e=>l(e));n.push(...u);for(let e of u)o.add(e);let d=a(t,e.pruneRoot),f=s;for(;v(f,o)&&(i.push(f),o.add(f),f!==d);){let e=r(f);if(e===f||e===t||!e.startsWith(t+c))break;f=e}}return{skillDirs:n,emptyDirs:i}}function b(e){try{if(!u(e).isDirectory())return!1;let t=d(e);return t.length===0||t.includes(`SKILL.md`)}catch{return!1}}function x(e){let t=new Set,n=new Set;for(let i of m){let o=a(e,i.hostDir,`skills`);for(let e of h)t.add(a(o,e));let s=a(e,i.pruneRoot),l=o;for(;n.add(l),l!==s;){let t=r(l);if(t===l||t===e||!t.startsWith(e+c))break;l=t}}return{skillDirs:t,emptyDirs:n}}function S(e,t){let n=g(e),r=x(n),i=[...t.skillDirs.filter(e=>!r.skillDirs.has(e)),...t.emptyDirs.filter(e=>!r.emptyDirs.has(e))];if(i.length>0)throw Error(`refusing skill cleanup — ${i.length} path(s) outside the known legacy set: ${i.join(`, `)}`);let a=[];for(let e of t.skillDirs)if(_(n,e)&&b(e))try{f(e,{recursive:!0,force:!0}),a.push(e)}catch{}for(let e of t.emptyDirs)if(_(n,e))try{p(e),a.push(e)}catch{}return a}function C(r){let i=g(r),o=[];for(let r of n){let n=t[r];o.push({path:a(i,`.agents`,`skills`,n),bundleId:r,scope:`central`});for(let t of e)o.push({path:a(i,t.skillsRoot,n),bundleId:r,scope:`host`,hostDir:t.hostDir})}return o}function w(e,t){let n=[];for(let r of C(e))if(r.bundleId===t)try{f(r.path,{recursive:!0,force:!0})}catch(e){n.push(e instanceof Error?e:Error(String(e)))}if(n.length>0)throw AggregateError(n,`Failed to remove ${n.length} path(s) for ${t}`)}export{C as i,y as n,w as r,S as t};
|
|
2
|
+
//# sourceMappingURL=skill-teardown-D6lPMY6n.mjs.map
|