@kodax-ai/kodax 0.7.97-beta.2 → 0.7.97-beta.3

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 (161) hide show
  1. package/CHANGELOG.md +96 -0
  2. package/README.md +55 -2
  3. package/README_CN.md +37 -1
  4. package/dist/artifacts/dist/contract.js +1 -1
  5. package/dist/artifacts/dist/contract.js.map +1 -1
  6. package/dist/artifacts/dist/document-render.d.ts +1 -1
  7. package/dist/artifacts/dist/document-render.js +41 -10
  8. package/dist/artifacts/dist/document-render.js.map +1 -1
  9. package/dist/artifacts/dist/kodax.js +1 -1
  10. package/dist/artifacts/dist/kodax.js.map +1 -1
  11. package/dist/artifacts/dist/libreoffice.d.ts +6 -1
  12. package/dist/artifacts/dist/libreoffice.js +37 -13
  13. package/dist/artifacts/dist/libreoffice.js.map +1 -1
  14. package/dist/artifacts/dist/runtime.js +13 -6
  15. package/dist/artifacts/dist/runtime.js.map +1 -1
  16. package/dist/artifacts/skills/artifact-review/SKILL.md +5 -1
  17. package/dist/chunks/agent-NWQPMZ7B.js +2 -0
  18. package/dist/chunks/agent-adapter-V3IPADCX.js +2 -0
  19. package/dist/chunks/argument-completer-VNKHT4X4.js +2 -0
  20. package/dist/chunks/{bedrock-native-Z5VNWF5U.js → bedrock-native-OEPOBW6W.js} +1 -1
  21. package/dist/chunks/{chunk-NSR4RW2F.js → chunk-3I2MIS4D.js} +1 -1
  22. package/dist/chunks/{chunk-RYBUYHDL.js → chunk-3Y5PBEOD.js} +1 -1
  23. package/dist/chunks/chunk-4FVCMKG2.js +20 -0
  24. package/dist/chunks/{chunk-F6GJXQNA.js → chunk-4GYXZTOD.js} +7 -7
  25. package/dist/chunks/{chunk-EISRVOBJ.js → chunk-4Z7ZHL6V.js} +2 -2
  26. package/dist/chunks/{chunk-W2CWO4PQ.js → chunk-576AAIQM.js} +1 -1
  27. package/dist/chunks/chunk-5E2P4RYS.js +4 -0
  28. package/dist/chunks/{chunk-X5M7TLJV.js → chunk-5LFQ5FVY.js} +1 -1
  29. package/dist/chunks/{chunk-WMMESRP3.js → chunk-6RDMSU4B.js} +1 -1
  30. package/dist/chunks/{chunk-3CP7AUWY.js → chunk-7BA4TSKC.js} +1 -1
  31. package/dist/chunks/{chunk-I325ER7D.js → chunk-AUU3N4V4.js} +1 -1
  32. package/dist/chunks/{chunk-DCE7XQUG.js → chunk-AYDLX2UK.js} +1 -1
  33. package/dist/chunks/{chunk-D36OIMV7.js → chunk-BP3NAYKY.js} +64 -64
  34. package/dist/chunks/{chunk-6TITQQAI.js → chunk-BSCSKJNC.js} +230 -229
  35. package/dist/chunks/{chunk-2HH5AS7E.js → chunk-DAQGOWKD.js} +88 -462
  36. package/dist/chunks/{chunk-UF3GZ5PO.js → chunk-EZF6ZRCO.js} +1 -1
  37. package/dist/chunks/chunk-F2TFWNVZ.js +2 -0
  38. package/dist/chunks/{chunk-53CJDQS2.js → chunk-FVXZ5L33.js} +1 -1
  39. package/dist/chunks/{chunk-MCDZNQWD.js → chunk-G32BMSHH.js} +75 -71
  40. package/dist/chunks/chunk-HJLYZ5AX.js +361 -0
  41. package/dist/chunks/{chunk-P55RJIOG.js → chunk-IOIFCU46.js} +1 -1
  42. package/dist/chunks/{chunk-DV5YPYLW.js → chunk-IR46ZHXU.js} +1 -1
  43. package/dist/chunks/chunk-NJDR5EEF.js +6 -0
  44. package/dist/chunks/{chunk-KDSO7V4O.js → chunk-OC3DQXN6.js} +1 -1
  45. package/dist/chunks/{chunk-J2L2NK6E.js → chunk-OMVAPRQI.js} +90 -57
  46. package/dist/chunks/chunk-OXCB2TRF.js +42 -0
  47. package/dist/chunks/{chunk-C6JGLEYD.js → chunk-P6R6V7EW.js} +1 -1
  48. package/dist/chunks/{chunk-SK3RRGHJ.js → chunk-PFBZ4ZXO.js} +28 -28
  49. package/dist/chunks/{chunk-V2XJSFFE.js → chunk-QDE6THC5.js} +1 -1
  50. package/dist/chunks/{chunk-EPK6EWRI.js → chunk-QRYEP34M.js} +1 -1
  51. package/dist/chunks/chunk-ROWYE472.js +460 -0
  52. package/dist/chunks/{chunk-R42S4BLA.js → chunk-SQGESMNC.js} +1 -1
  53. package/dist/chunks/{chunk-XZSFUGPN.js → chunk-U73VEVMP.js} +1 -1
  54. package/dist/chunks/{chunk-D425EZGC.js → chunk-V2TG7GNW.js} +1 -1
  55. package/dist/chunks/{chunk-QSZCR5GC.js → chunk-VRO2CDBY.js} +97 -97
  56. package/dist/chunks/{chunk-BBZWF2EA.js → chunk-WMQQQY3D.js} +1 -1
  57. package/dist/chunks/{chunk-JAF2YLZO.js → chunk-X3YYJJTF.js} +2 -2
  58. package/dist/chunks/{chunk-UL6YIT4M.js → chunk-XYRI6ER5.js} +1 -1
  59. package/dist/chunks/chunk-YRPB3LID.js +3 -0
  60. package/dist/chunks/{chunk-5MUVRFMU.js → chunk-ZDAU3LZ2.js} +1 -1
  61. package/dist/chunks/{chunk-WWPVEK6B.js → chunk-ZP3YSYWM.js} +10 -10
  62. package/dist/chunks/{client-LTIFNED5.js → client-NJ32JBC3.js} +1 -1
  63. package/dist/chunks/compaction-config-JBQGU3NO.js +2 -0
  64. package/dist/chunks/{construction-bootstrap-OAZKGI5Y.js → construction-bootstrap-CM47ZXG7.js} +1 -1
  65. package/dist/chunks/dist-O6BHIQEP.js +2 -0
  66. package/dist/chunks/{google-native-WLL27OV7.js → google-native-BV5GKT5B.js} +1 -1
  67. package/dist/chunks/host-PI5NL4W4.js +2 -0
  68. package/dist/chunks/{mistral-native-JXPIDDYZ.js → mistral-native-X42JCFZH.js} +1 -1
  69. package/dist/chunks/{model-DZF6URW3.js → model-MT3WJX76.js} +1 -1
  70. package/dist/chunks/{permission-YVVMLQ5I.js → permission-YVDVSE6H.js} +1 -1
  71. package/dist/chunks/{pi-messages-5LLOZH57.js → pi-messages-DVJANXV5.js} +1 -1
  72. package/dist/chunks/readline-helpers-5JS7UGTE.js +2 -0
  73. package/dist/chunks/run-manager-Y6VYEWSJ.js +2 -0
  74. package/dist/chunks/running-session-ANMBA5XV.js +2 -0
  75. package/dist/chunks/skills-XL2XIBWV.js +2 -0
  76. package/dist/chunks/{tool-dispatch-MLM3QTSU.js → tool-dispatch-2FOG65FC.js} +1 -1
  77. package/dist/chunks/{utils-2QNMYRGA.js → utils-XZ22R6VB.js} +1 -1
  78. package/dist/client-history.js +2 -0
  79. package/dist/history-turn.js +3 -0
  80. package/dist/index.d.ts +19 -19
  81. package/dist/index.js +2 -2
  82. package/dist/kodax_bootstrap.js +1 -1
  83. package/dist/kodax_cli.js +1472 -1810
  84. package/dist/kodax_doctor.js +1 -1
  85. package/dist/maintenance-scheduler.js +2 -0
  86. package/dist/manual-topics.json +32 -3
  87. package/dist/native/win32-x64/kodax-windows-sandbox.exe +0 -0
  88. package/dist/native/win32-x64/kodax-windows-text-transaction.node +0 -0
  89. package/dist/native/win32-x64/manifest.json +2 -2
  90. package/dist/one-shot-task.js +1 -1
  91. package/dist/provider-auth-cli.js +1 -1
  92. package/dist/runtime-daemon-schema.json +1 -1
  93. package/dist/sandbox-network-broker.js +93 -441
  94. package/dist/sdk-a2a.d.ts +13 -13
  95. package/dist/sdk-a2a.js +1 -1
  96. package/dist/sdk-agent.d.ts +17 -12
  97. package/dist/sdk-agent.js +1 -1
  98. package/dist/sdk-client.d.ts +6 -6
  99. package/dist/sdk-client.js +1 -1
  100. package/dist/sdk-coding.d.ts +17 -17
  101. package/dist/sdk-coding.js +1 -1
  102. package/dist/sdk-experimental-memory.d.ts +2 -2
  103. package/dist/sdk-experimental-memory.js +1 -1
  104. package/dist/sdk-llm.d.ts +4 -2
  105. package/dist/sdk-llm.js +1 -1
  106. package/dist/sdk-mcp.js +1 -1
  107. package/dist/sdk-media.d.ts +13 -13
  108. package/dist/sdk-media.js +1 -1
  109. package/dist/sdk-repl.d.ts +16 -16
  110. package/dist/sdk-repl.js +1 -1
  111. package/dist/sdk-runtime.d.ts +46 -46
  112. package/dist/sdk-runtime.js +1 -1
  113. package/dist/sdk-sandbox.js +1 -1
  114. package/dist/sdk-session.d.ts +7 -7
  115. package/dist/sdk-session.js +1 -1
  116. package/dist/sdk-skills.js +1 -1
  117. package/dist/semantic-worker.js +87 -435
  118. package/dist/storage-repair-cli.js +1 -1
  119. package/dist/types-chunks/{bash-prefix-extractor.d-CJliu5-D.d.ts → bash-prefix-extractor.d-BghXa_md.d.ts} +9 -3
  120. package/dist/types-chunks/{capsule.d-EMwSALqK.d.ts → capsule.d-BTlvC5qq.d.ts} +4 -4
  121. package/dist/types-chunks/{client-contract-B7q69yMA.d.ts → client-contract-B7ZSFKTv.d.ts} +52 -4
  122. package/dist/types-chunks/{controller.d-C0SAuNKu.d.ts → controller.d-Btu5FDdw.d.ts} +1 -1
  123. package/dist/types-chunks/{controller.d-D-hPLKaA.d.ts → controller.d-D6rEz5LS.d.ts} +3 -3
  124. package/dist/types-chunks/{history-retrieval.d-BwEUR9cb.d.ts → history-retrieval.d-B_AriUJp.d.ts} +1 -1
  125. package/dist/types-chunks/{manifest.d-YE3-AIeO.d.ts → manifest.d-Yyce-hHj.d.ts} +1 -1
  126. package/dist/types-chunks/{public-api.d-BhDU643p.d.ts → public-api.d-BLv3lFmw.d.ts} +9 -4
  127. package/dist/types-chunks/{review-inbox.d-Bgt46S7L.d.ts → review-inbox.d-yREk25Vf.d.ts} +2 -0
  128. package/dist/types-chunks/{review-packet.d-ChOfJaNI.d.ts → review-packet.d-xwXxHmML.d.ts} +1 -1
  129. package/dist/types-chunks/{run-manager.d-ChzguipG.d.ts → run-manager.d-D4sa9JYz.d.ts} +26 -12
  130. package/dist/types-chunks/{runtime-client-info-P_mRDG7j.d.ts → runtime-client-info-oRMrkHmb.d.ts} +2 -2
  131. package/dist/types-chunks/{runtime-event-BW5Pla7a.d.ts → runtime-event-BOyaILWg.d.ts} +3 -1
  132. package/dist/types-chunks/{sdk-runtime-cDe7qmN3.d.ts → sdk-runtime-CYyXmQok.d.ts} +27 -13
  133. package/dist/types-chunks/{sdk-session-D3pcSbnA.d.ts → sdk-session-D6mS5qgO.d.ts} +6 -3
  134. package/dist/types-chunks/{skill-invocation-error.d-gsNNDnnt.d.ts → skill-invocation-error.d-Be3qg4JQ.d.ts} +3 -3
  135. package/dist/types-chunks/{trusted-repl-entry-Bbkd2HlO.d.ts → trusted-repl-entry-YWNc4m-Z.d.ts} +7 -7
  136. package/dist/types-chunks/{types.d-BlXTogOo.d.ts → types.d-BQ-hbni4.d.ts} +1 -1
  137. package/dist/types-chunks/{utils.d-CxHyBvO6.d.ts → utils.d-C0F3Uf2X.d.ts} +6 -6
  138. package/dist/windows-effect-job-programs.json +4 -0
  139. package/docs/ARTIFACT_SDK.md +3 -3
  140. package/docs/CLIENT_CONTRACT.md +4 -2
  141. package/docs/SDK_MIGRATION.md +9 -5
  142. package/docs/SPACE_SDK_SEAMS.md +12 -1
  143. package/package.json +4 -3
  144. package/public_docs/README.md +10 -3
  145. package/public_docs/sdk/embedder-guide.md +1 -1
  146. package/dist/chunks/agent-DS7M57WD.js +0 -2
  147. package/dist/chunks/agent-adapter-TLWGGK3V.js +0 -2
  148. package/dist/chunks/argument-completer-OGCXKTRQ.js +0 -2
  149. package/dist/chunks/chunk-GJXOTOZB.js +0 -465
  150. package/dist/chunks/chunk-KE2NBMAP.js +0 -20
  151. package/dist/chunks/chunk-OGTRDK4Q.js +0 -359
  152. package/dist/chunks/chunk-R2HTPDI7.js +0 -2
  153. package/dist/chunks/chunk-SDPZFH6M.js +0 -4
  154. package/dist/chunks/chunk-XDMNJW6J.js +0 -42
  155. package/dist/chunks/compaction-config-ECMOFP5H.js +0 -2
  156. package/dist/chunks/dist-5J53DGAO.js +0 -2
  157. package/dist/chunks/host-65E5NM5P.js +0 -2
  158. package/dist/chunks/readline-helpers-UZXWBRXQ.js +0 -2
  159. package/dist/chunks/run-manager-ZFACIZM2.js +0 -2
  160. package/dist/chunks/running-session-Q5Y6A2QV.js +0 -2
  161. package/dist/chunks/skills-TJP6BLZJ.js +0 -2
@@ -1,5 +1,5 @@
1
1
  // @kodax-ai/kodax — bundled distribution. See docs/ADR.md ADR-022 + ADR-024.
2
- import{I as P,O as G}from"./chunk-JAF2YLZO.js";import{c as C,d as q,e as D,f as F}from"./chunk-XDMNJW6J.js";import{wa as j}from"./chunk-OGTRDK4Q.js";import{a as h}from"./chunk-65652LR4.js";import{Ce as I,De as y,Ee as x,Oe as N,Pe as b,Qe as S}from"./chunk-2HH5AS7E.js";import{qb as $,rb as M,wb as _}from"./chunk-J2L2NK6E.js";import{Ca as O,ga as W,m as E,n as v}from"./chunk-SK3RRGHJ.js";import{a as s}from"./chunk-V4WSBIXB.js";import{join as Be}from"node:path";var fe=[h("t12i.workflows/generator.block.0")].join(`
2
+ import{I as P,O as G}from"./chunk-X3YYJJTF.js";import{c as C,d as q,e as D,f as F}from"./chunk-OXCB2TRF.js";import{xa as j}from"./chunk-HJLYZ5AX.js";import{a as h}from"./chunk-65652LR4.js";import{Ce as I,De as y,Ee as x,Oe as N,Pe as b,Qe as S}from"./chunk-DAQGOWKD.js";import{rb as $,sb as M,xb as _}from"./chunk-OMVAPRQI.js";import{Ca as O,ga as W,m as E,n as v}from"./chunk-PFBZ4ZXO.js";import{a as s}from"./chunk-V4WSBIXB.js";import{join as Be}from"node:path";var fe=[h("t12i.workflows/generator.block.0")].join(`
3
3
  `),L=12e4,ce="KODAX_WORKFLOW_GENERATION_TIMEOUT_SEC",le="KODAX_WORKFLOW_GENERATION_TIMEOUT_MS",ue=64,de=2,me=2e3,we=[{name:"default"},{name:"variant-results",finalText:s((e,n)=>`Variant smoke child report from ${e} (${n}).`,"finalText"),synthesizeText:"Variant smoke synthesis report."},{name:"unverified-success",status:s(()=>"completed_unverified","status"),finalText:s(e=>`Smoke result for ${e}: completed with verification warnings.`,"finalText"),synthesizeText:"Smoke synthesis: completed with verification warnings."},{name:"empty-args-rerun",args:s(()=>({}),"args")}],pe=[{id:"import",pattern:/\bimport\s*(?:\(|['"*{]|\w+\s+from\b)/},{id:"require",pattern:/\brequire\s*\(/},{id:"process",pattern:/\bprocess\s*(?:\.|\[)/},{id:"fs",pattern:/\b(?:node:)?fs\b/},{id:"child_process",pattern:/\bchild_process\b/},{id:"shell",pattern:/\b(?:exec|spawn|execFile)\s*\(/},{id:"fetch",pattern:/\bfetch\s*\(/},{id:"Deno",pattern:/\bDeno\s*(?:\.|\[)/},{id:"Bun",pattern:/\bBun\s*(?:\.|\[)/},{id:"globalThis-index",pattern:/\bglobalThis\s*\[/}];function he(e=process.env,n){let t=E(n?.workflow?.generationTimeoutSec,"timeouts.workflow.generationTimeoutSec");if(t!==void 0)return t;let r=v(e[ce]);if(r!==void 0)return r;let o=e[le];if(o===void 0||o.trim().length===0)return L;let i=Number(o);return!Number.isFinite(i)||i<=0?L:Math.floor(i)}s(he,"resolveWorkflowGenerationTimeoutMs");function ge(e,n){if(typeof e!="object"||e===null)throw new Error(`${n} must be an object`);return e}s(ge,"readRecord");function K(e,n){let t=e[n];if(typeof t!="string"||t.trim().length===0)throw new Error(`workflow generation ${n} must be a non-empty string`);return t}s(K,"readNonEmptyString");function ke(e){let n=e.trim(),t=/^```(?:json)?\s*([\s\S]*?)\s*```$/i.exec(n);if(t?.[1])return t[1].trim();let r=n.indexOf("{"),o=n.lastIndexOf("}");if(r>=0&&o>r)return n.slice(r,o+1);throw new Error("workflow generation output did not contain a JSON object")}s(ke,"extractJsonText");function ye(e){let n=ke(e);return ge(JSON.parse(n),"workflow generation output")}s(ye,"parseGenerationJson");function xe(e){if(typeof e=="string"){let t=e.trim();return t.length>0?t:void 0}if(typeof e!="object"||e===null)return;let n=e;for(let t of["name","id","title","phase"]){let r=n[t];if(typeof r=="string"&&r.trim().length>0)return r.trim()}}s(xe,"normalizePhaseEntry");function be(e){return e.split(/(?:->|\u2192|,|\n)/).map(n=>n.trim()).filter(n=>n.length>0)}s(be,"splitPhaseString");function Se(e){if(typeof e!="object"||e===null)return e;let n=e,t=n.phases,r;if(Array.isArray(t)){let o=t.map(xe);o.every(i=>i!==void 0)&&(r=o)}else if(typeof t=="string"){let o=be(t);o.length>0&&(r=o)}return r?{...n,phases:r}:e}s(Se,"normalizeGeneratedManifestCandidate");function Ee(e){return e.match(/\bwf\.(?:runAgent|spawnAgent|synthesize)\s*\(/g)?.length??0}s(Ee,"estimateDirectAgentCalls");function Re(e,n){let t=e.maxConcurrency*Math.max(1,e.phases.length)+2,r=Ee(n)+2,o=Math.min(ue,Math.max(e.maxAgents,t,r));return o>e.maxAgents?{...e,maxAgents:o}:e}s(Re,"reserveGeneratedWorkflowAgentCapacity");function p(e){let n="",t=0,r=["code"],o=[0];for(;t<e.length;){let i=e[t],a=e[t+1];if(r[r.length-1]==="template"){if(i==="\\"){n+=" ",t+=2;continue}if(i==="`"){n+=" ",t+=1,r.pop(),o.pop();continue}if(i==="$"&&a==="{"){n+=" ",t+=2,r.push("code"),o.push(0);continue}n+=i===`
4
4
  `?`
5
5
  `:" ",t+=1;continue}if(i==="/"&&a==="/"){for(n+=" ",t+=2;t<e.length&&e[t]!==`
@@ -1,5 +1,5 @@
1
1
  // @kodax-ai/kodax — bundled distribution. See docs/ADR.md ADR-022 + ADR-024.
2
- import{f as Ee}from"./chunk-ISLK6R2P.js";import{Aa as ue,Ba as le,Ec as U,Fa as B,Fc as xe,Ga as fe,Gc as ge,Id as G,Jd as he,Ma as k,Mb as Te,Sa as me,Td as M,Ud as H,a as F,b as de,ke as q,p as ce,q as v,vc as K,wc as pe,xa as P,xc as j,ya as I,za as W}from"./chunk-OGTRDK4Q.js";import{c as ae}from"./chunk-GZUWQZJD.js";import{a as ne}from"./chunk-65652LR4.js";import{r as y,wa as re,xa as ie}from"./chunk-2HH5AS7E.js";import{h as D}from"./chunk-J2L2NK6E.js";import{b as se}from"./chunk-KDSO7V4O.js";import{a as i}from"./chunk-V4WSBIXB.js";import X from"node:path";function S(e){let t=k(e);return/^\[(?:Tool Error|Cancelled|Blocked|Error)\]/.test(t)||ye(t)!==void 0}i(S,"isToolResultErrorContent");function V(e){return k(e).startsWith(ce)}i(V,"isCancelledToolResultContent");function ke(e){let t=k(e).trim();return/^\[Tool Error\]\s+[^:]+:\s+([A-Z_]+):/.exec(t)?.[1]??ye(t)}i(ke,"extractStructuredToolErrorCode");function ye(e){if(!e.trimStart().startsWith("{"))return;let t;try{t=JSON.parse(e)}catch{return}if(!(t===null||typeof t!="object")){if("ok"in t&&t.ok===!1&&"reason"in t&&typeof t.reason=="string"&&"code"in t&&typeof t.code=="string"&&["todo_invalid_input","todo_unavailable","todo_hook_veto","todo_state_conflict"].includes(t.code))return t.code;if(!(!("retryable"in t)||t.retryable!==!1||!("denialSource"in t)||!("code"in t))&&["explicit_rule","builtin_fallback","policy_configuration"].includes(String(t.denialSource)))return typeof t.code=="string"&&["exec_policy_forbidden","exec_policy_prompt_unavailable","exec_policy_invalid"].includes(t.code)?t.code:void 0}}i(ye,"structuredJsonErrorCode");function je(e,t,o){if(!Array.isArray(e.outputs))return[];let s=new Set(e.outputs.flatMap(r=>!r||typeof r!="object"||!("target"in r)||typeof r.target!="string"?[]:r.target.trim()?[X.resolve(o,r.target.trim())]:[])),n;try{n=JSON.parse(k(t))}catch{return[]}return!n||typeof n!="object"||!("outputs"in n)||!Array.isArray(n.outputs)?[]:n.outputs.flatMap(r=>{if(typeof r!="string"||!r.trim())return[];let a=X.resolve(o,r);return s.has(a)?[a]:[]})}i(je,"skillOutputPaths");function z(e,t,o,s){if(!e||!t.input||S(o))return;let n=t.name;if(n==="run_skill_script"){for(let a of je(t.input,o,s))e.set(a,{path:a,sourceTool:n});return}if(n!=="write"&&n!=="edit"&&n!=="multi_edit"&&n!=="insert_after_anchor"||typeof t.input.path!="string"||!t.input.path.trim())return;let r=X.resolve(s,t.input.path);e.get(r)?.sourceTool!=="run_skill_script"&&e.set(r,{path:r,sourceTool:n})}i(z,"recordWrittenFile");import{randomUUID as L}from"node:crypto";import{randomUUID as Ie}from"node:crypto";function gt(e,t,o,s){let n=Math.min(o,t.capacity.contextWindow??o),r=t.capacity.inputTokens,a=Math.max(0,t.requestInputReliefTokens);return{currentTokens:t.capacity.inputTokensKind==="exact"&&r!==void 0?r+a:Math.max(n+a,(r??0)+a,Re(e,s)),baselineEstimatedTokens:y(e),source:"estimate",capacityWindow:n}}i(gt,"createOverflowContextTokenSnapshot");function R(e){return typeof e=="number"&&Number.isFinite(e)&&e>=0}i(R,"isFiniteNonNegative");function ve(e){return!(!e||!R(e.inputTokens)||!R(e.outputTokens)||!R(e.totalTokens)||e.totalTokens<e.inputTokens||e.totalTokens<e.outputTokens||e.cachedReadTokens!==void 0&&!R(e.cachedReadTokens)||e.cachedWriteTokens!==void 0&&!R(e.cachedWriteTokens)||e.thoughtTokens!==void 0&&!R(e.thoughtTokens))}i(ve,"hasValidTokenUsage");function Se(e){let t=y(e);return{currentTokens:t,baselineEstimatedTokens:t,source:"estimate"}}i(Se,"createEstimatedContextTokenSnapshot");function Ge(e,t){let o=y(e);return{currentTokens:t.inputTokens,baselineEstimatedTokens:o,source:"api",usage:t}}i(Ge,"createApiContextTokenSnapshot");function ht(e,t){return ve(t)?{currentTokens:t.totalTokens,baselineEstimatedTokens:y(e),source:"api",usage:t}:Se(e)}i(ht,"createCompletedTurnTokenSnapshot");function Et(e,t){return ve(t)?Ge(e,t):Se(e)}i(Et,"createContextTokenSnapshot");function Re(e,t){let o=y(e);if(!t||!R(t.currentTokens)||!R(t.baselineEstimatedTokens))return o;let s=t.currentTokens+(o-t.baselineEstimatedTokens);return!Number.isFinite(s)||s<0?o:Math.round(s)}i(Re,"resolveContextTokenCount");function be(e,t){return{currentTokens:Re(e,t),baselineEstimatedTokens:y(e),source:t?.source??"estimate",usage:t?.usage}}i(be,"rebaseContextTokenSnapshot");function kt(e,t){let o=y(e);return{currentTokens:o,baselineEstimatedTokens:o,source:t?.source??"estimate"}}i(kt,"recomputeContextTokenSnapshot");var Me=Symbol("KodaXLiveTurnAttributed"),_e=Symbol("KodaXLiveTurnBaseEvents"),we=16,Ce=new Map,b=new Map;function _t(e){let t=e.turnId??`turn_${Ie().replace(/-/g,"").slice(0,we)}`,o=e.deliveryId??`delivery_${Ie().replace(/-/g,"").slice(0,we)}`,s=e.contextId??e.sessionId,n=e.contextKind??"root";return b.has(s)||b.set(s,0),{sessionId:e.sessionId,turnId:t,contextId:s,contextKind:n,parentContextId:e.parentContextId,agentId:e.agentId,deliveryId:o,deliveryKind:e.deliveryKind??"initial",promptId:e.promptId,ownsContextRevision:e.ownsContextRevision??!0,nextMeta(){let r=(Ce.get(e.sessionId)??0)+1;return Ce.set(e.sessionId,r),{sessionId:e.sessionId,seq:r,turnId:t,deliveryId:o,contextId:s,contextKind:n,...e.parentContextId!==void 0?{parentContextId:e.parentContextId}:{},...e.agentId!==void 0?{agentId:e.agentId}:{},contextRevision:b.get(s)??0,timestamp:new Date().toISOString()}},advanceContextRevision(){if(e.ownsContextRevision===!1)return b.get(s)??0;let r=(b.get(s)??0)+1;return b.set(s,r),r}}}i(_t,"createLiveTurnScope");function He(e){return e[Me]===!0}i(He,"isAttributedEvents");function J(e){return"current"in e?e.current:e}i(J,"resolveLiveTurnScope");function f(e,t){let o=t?.contextId===void 0||t.contextKind===void 0||t.contextRevision===void 0?{}:{contextId:t.contextId,contextKind:t.contextKind,parentContextId:t.parentContextId,agentId:t.agentId,contextRevision:t.contextRevision,...t.contextKind==="child"&&t.turnId!==void 0?{turnId:t.turnId,deliveryId:t.deliveryId}:{}};return{...t??{},...J(e).nextMeta(),...o}}i(f,"withActivityMeta");function x(e,t){let o=t,s=o.contextId===void 0||o.contextKind===void 0||o.contextRevision===void 0?{}:{contextId:o.contextId,contextKind:o.contextKind,parentContextId:o.parentContextId,agentId:o.agentId,contextRevision:o.contextRevision,...o.contextKind==="child"&&o.turnId!==void 0?{turnId:o.turnId,deliveryId:o.deliveryId}:{}};return{...t,...J(e).nextMeta(),...s}}i(x,"withLiveMeta");function wt(e,t){let o=He(e)?e[_e]:e,s={...o,onSessionStart:i(n=>{o.onSessionStart?.(x(t,n))},"onSessionStart"),onOutputSegmentStart:i((n,r)=>{o.onOutputSegmentStart?.(n,f(t,r))},"onOutputSegmentStart"),onTextDelta:i((n,r)=>{o.onTextDelta?.(n,f(t,r))},"onTextDelta"),onOutputNotice:i((n,r)=>{o.onOutputNotice?.(n,f(t,r))},"onOutputNotice"),onThinkingDelta:i((n,r)=>{o.onThinkingDelta?.(n,f(t,r))},"onThinkingDelta"),onThinkingEnd:i((n,r)=>{o.onThinkingEnd?.(n,f(t,r))},"onThinkingEnd"),onToolUseStart:i((n,r)=>{o.onToolUseStart?.(n,f(t,r))},"onToolUseStart"),onToolInputDelta:i((n,r,a)=>{o.onToolInputDelta?.(n,r,f(t,a))},"onToolInputDelta"),onToolProgress:i((n,r)=>{o.onToolProgress?.(n,f(t,r))},"onToolProgress"),onToolSandboxObservation:i((n,r)=>{o.onToolSandboxObservation?.(n,f(t,r))},"onToolSandboxObservation"),onToolResult:i((n,r)=>{o.onToolResult?.(n,f(t,r))},"onToolResult"),onToolExecutionStart:i((n,r)=>{o.onToolExecutionStart?.(n,f(t,r))},"onToolExecutionStart"),onToolExecutionEnd:i((n,r)=>{o.onToolExecutionEnd?.(n,f(t,r))},"onToolExecutionEnd"),onChildActivityEnd:i(n=>{o.onChildActivityEnd?.(f(t,n))},"onChildActivityEnd"),onStreamEnd:i(n=>{o.onStreamEnd?.(f(t,n))},"onStreamEnd"),onIterationStart:i((n,r,a)=>{o.onIterationStart?.(n,r,f(t,a))},"onIterationStart"),onIterationEnd:i(n=>{o.onIterationEnd?.(x(t,n))},"onIterationEnd"),onCompactStart:i(n=>{o.onCompactStart?.(f(t,n))},"onCompactStart"),onCompact:i((n,r)=>{o.onCompact?.(n,f(t,r))},"onCompact"),onCompactStats:i(n=>{o.onCompactStats?.(x(t,n))},"onCompactStats"),onCompactedMessages:i(async(n,r,a)=>{let c=J(t),u=c.advanceContextRevision();try{await o.onCompactedMessages?.(n,r,f(t,a))}catch(m){throw c.ownsContextRevision&&b.get(c.contextId)===u&&b.set(c.contextId,u-1),m}},"onCompactedMessages"),onContextCompactionFinished:i(n=>{o.onContextCompactionFinished?.(x(t,n))},"onContextCompactionFinished"),onCompactEnd:i((n,r)=>{o.onCompactEnd?.(f(t,n),r)},"onCompactEnd"),onMidTurnUserMessages:i((n,r)=>{o.onMidTurnUserMessages?.(n,f(t,r))},"onMidTurnUserMessages"),onRetry:i((n,r,a,c)=>{o.onRetry?.(n,r,a,f(t,c))},"onRetry"),onProviderRateLimit:i((n,r,a,c)=>{o.onProviderRateLimit?.(n,r,a,f(t,c))},"onProviderRateLimit"),onRetryAfter:i((n,r)=>{o.onRetryAfter?.(n,f(t,r))},"onRetryAfter"),onProviderRecovery:i((n,r)=>{o.onProviderRecovery?.(n,f(t,r))},"onProviderRecovery"),onReasoningEffortRejected:i(n=>{o.onReasoningEffortRejected?.(x(t,n))},"onReasoningEffortRejected"),onReasoningResolved:i(n=>{o.onReasoningResolved?.(x(t,n))},"onReasoningResolved"),onRepoIntelligenceTrace:i(n=>{o.onRepoIntelligenceTrace?.(x(t,n))},"onRepoIntelligenceTrace"),onContextBudgetSnapshot:i(n=>{o.onContextBudgetSnapshot?.(x(t,n))},"onContextBudgetSnapshot"),onPromptCacheDiagnostics:i(n=>{o.onPromptCacheDiagnostics?.(x(t,n))},"onPromptCacheDiagnostics"),onToolExposurePlanned:i(n=>{o.onToolExposurePlanned?.(x(t,n))},"onToolExposurePlanned"),onContextCompactionSkipped:i(n=>{o.onContextCompactionSkipped?.(x(t,n))},"onContextCompactionSkipped"),onTodoUpdate:i((n,r)=>{o.onTodoUpdate?.(n,f(t,r))},"onTodoUpdate"),onTodoDriftWarning:i(n=>{o.onTodoDriftWarning?.(x(t,n))},"onTodoDriftWarning"),onManagedTaskStatus:i(n=>{o.onManagedTaskStatus?.(x(t,n))},"onManagedTaskStatus"),onEffectiveConfig:i(n=>{o.onEffectiveConfig?.(x(t,n))},"onEffectiveConfig"),onWorkflowProcessEvent:i(n=>{o.onWorkflowProcessEvent?.(x(t,n))},"onWorkflowProcessEvent"),onWorkflowAgentDigest:i(n=>{o.onWorkflowAgentDigest?.(x(t,n))},"onWorkflowAgentDigest"),onScoutSuspiciousCompletion:i(n=>{o.onScoutSuspiciousCompletion?.(x(t,n))},"onScoutSuspiciousCompletion"),onComplete:i(n=>{o.onComplete?.(f(t,n))},"onComplete"),onError:i((n,r)=>{o.onError?.(n,f(t,r))},"onError")};return Object.defineProperty(s,Me,{value:!0,enumerable:!1}),Object.defineProperty(s,_e,{value:o,enumerable:!1}),s}i(wt,"withLiveTurnAttribution");function Ct(e,t){let o={...t.nextMeta(),deliveryKind:t.deliveryKind,...t.promptId!==void 0?{promptId:t.promptId}:{}};e.onTurnStarted?.(o)}i(Ct,"emitTurnStarted");function Mt(e,t,o){e.onTurnCompleted?.({...t.nextMeta(),status:o})}i(Mt,"emitTurnCompleted");function At(e,t,o){let s={...t.nextMeta(),error:{name:o.name,message:o.message,...o.stack!==void 0?{stack:o.stack}:{}}};e.onTurnFailed?.(s)}i(At,"emitTurnFailed");var qe=new Set(["todo_update","todo_list","todo_create","todo_get"]);function A(e){return!Ee(e)&&!qe.has(e)}i(A,"isVisibleToolName");function Ot(e,t){return e.hasPendingInputs?.()===!0?!0:se().has({agentId:t,maxPriority:"user",mode:"prompt"})}i(Ot,"hasQueuedFollowUp");function Lt(e,t){e.onSessionStart?.(t)}i(Lt,"emitSessionStart");function Dt(e,t){t===void 0?e.onStreamEnd?.():e.onStreamEnd?.(t)}i(Dt,"emitStreamEnd");function Pt(e){e.onComplete?.()}i(Pt,"emitComplete");function Bt(e,t){e.onError?.(t)}i(Bt,"emitError");function Kt(e,t,o,s,n){if(n!==void 0){e.onProviderRateLimit?.(t,o,s,n);return}e.onProviderRateLimit?.(t,o,s)}i(Kt,"emitProviderRateLimit");function Ut(e,t,o){e.onIterationStart?.(t+1,o)}i(Ut,"emitIterationStart");function Nt(e,t){let o=be(t.messages,t.snapshotOverride??t.currentSnapshot);return e.onIterationEnd?.({iter:t.iter,maxIter:t.maxIter,tokenCount:o.currentTokens,tokenSource:o.source,usage:o.usage,contextTokenSnapshot:o}),o}i(Nt,"emitIterationEnd");async function Q(e,t,o,s,n,r,a){if(e.beforeToolExecute){let u=await e.beforeToolExecute(t,o,{toolId:s});if(u===!1)return a?.denyRead(t,o),v;if(typeof u=="string")return a?.denyRead(t,o),u}let c=await he("tool:before",{name:t,input:o,toolId:s,executionCwd:n,gitRoot:r});return c===!1?(a?.denyRead(t,o),v):(typeof c=="string"&&a?.denyRead(t,o),typeof c=="string"?c:void 0)}i(Q,"getToolExecutionOverride");import Xe from"fs";function Ve(){return process.env.KODAX_DEBUG_STREAM==="1"||process.env.KODAX_DEBUG_RESILIENCE==="1"}i(Ve,"shouldDebugResilience");function N(e,t){Ve()&&D({source:"coding:resilience",level:"debug",message:e,detail:t})}i(N,"emitResilienceDebug");function $(e,t){let o=e.input?.path;if(!(typeof o!="string"||o.trim().length===0))return de(o,t)}i($,"resolveToolTargetPath");function Y(e,t){t&&(e.editRecoveryAttempts.delete(t),e.blockedEditWrites.delete(t))}i(Y,"clearEditRecoveryStateForPath");function Z(e,t,o){if(e.name!=="write")return;let s=$(e,t);if(!(!s||!o.blockedEditWrites.has(s))){if(!Xe.existsSync(s)){o.blockedEditWrites.delete(s);return}return`[Tool Error] write: BLOCKED_AFTER_EDIT_FAILURE: Refusing to rewrite existing file ${s} while edit anchor recovery is in progress. Retry with edit using unique existing text; use an edits array for multiple replacements.`}}i(Z,"maybeBlockExistingFileWrite");async function Ae(e,t,o,s){let n=B(t);if(!n)return;let r=typeof e.input?.path=="string"?e.input.path:void 0,a=$(e,s);if(!r||!a)return;o.blockedEditWrites.add(a);let c=(o.editRecoveryAttempts.get(a)??0)+1;if(o.editRecoveryAttempts.set(a,c),o.lastToolErrorCode=n,n==="EDIT_TOO_LARGE")return N("[edit:recovery]",{code:n,path:a,attempt:c,action:"split-edit"}),[`The previous edit for ${a} failed with ${n}.`,"Do not use write to replace the existing file.","Split the change into smaller replacements in the edits array of one edit call; later anchors must match the result of earlier edits."].join(`
2
+ import{f as Ee}from"./chunk-ISLK6R2P.js";import{Aa as W,Ba as ue,Ca as le,Fc as U,Ga as B,Gc as xe,Ha as fe,Hc as ge,Jd as G,Kd as he,Na as k,Nb as Te,Ta as me,Ud as M,Vd as H,a as F,b as de,le as q,p as ce,q as v,wc as K,xc as pe,ya as P,yc as j,za as I}from"./chunk-HJLYZ5AX.js";import{c as ae}from"./chunk-GZUWQZJD.js";import{a as ne}from"./chunk-65652LR4.js";import{r as y,wa as re,xa as ie}from"./chunk-DAQGOWKD.js";import{h as D}from"./chunk-OMVAPRQI.js";import{b as se}from"./chunk-OC3DQXN6.js";import{a as i}from"./chunk-V4WSBIXB.js";import X from"node:path";function S(e){let t=k(e);return/^\[(?:Tool Error|Cancelled|Blocked|Error)\]/.test(t)||ye(t)!==void 0}i(S,"isToolResultErrorContent");function V(e){return k(e).startsWith(ce)}i(V,"isCancelledToolResultContent");function ke(e){let t=k(e).trim();return/^\[Tool Error\]\s+[^:]+:\s+([A-Z_]+):/.exec(t)?.[1]??ye(t)}i(ke,"extractStructuredToolErrorCode");function ye(e){if(!e.trimStart().startsWith("{"))return;let t;try{t=JSON.parse(e)}catch{return}if(!(t===null||typeof t!="object")){if("ok"in t&&t.ok===!1&&"reason"in t&&typeof t.reason=="string"&&"code"in t&&typeof t.code=="string"&&["todo_invalid_input","todo_unavailable","todo_hook_veto","todo_state_conflict"].includes(t.code))return t.code;if(!(!("retryable"in t)||t.retryable!==!1||!("denialSource"in t)||!("code"in t))&&["explicit_rule","builtin_fallback","policy_configuration"].includes(String(t.denialSource)))return typeof t.code=="string"&&["exec_policy_forbidden","exec_policy_prompt_unavailable","exec_policy_invalid"].includes(t.code)?t.code:void 0}}i(ye,"structuredJsonErrorCode");function je(e,t,o){if(!Array.isArray(e.outputs))return[];let s=new Set(e.outputs.flatMap(r=>!r||typeof r!="object"||!("target"in r)||typeof r.target!="string"?[]:r.target.trim()?[X.resolve(o,r.target.trim())]:[])),n;try{n=JSON.parse(k(t))}catch{return[]}return!n||typeof n!="object"||!("outputs"in n)||!Array.isArray(n.outputs)?[]:n.outputs.flatMap(r=>{if(typeof r!="string"||!r.trim())return[];let a=X.resolve(o,r);return s.has(a)?[a]:[]})}i(je,"skillOutputPaths");function z(e,t,o,s){if(!e||!t.input||S(o))return;let n=t.name;if(n==="run_skill_script"){for(let a of je(t.input,o,s))e.set(a,{path:a,sourceTool:n});return}if(n!=="write"&&n!=="edit"&&n!=="multi_edit"&&n!=="insert_after_anchor"||typeof t.input.path!="string"||!t.input.path.trim())return;let r=X.resolve(s,t.input.path);e.get(r)?.sourceTool!=="run_skill_script"&&e.set(r,{path:r,sourceTool:n})}i(z,"recordWrittenFile");import{randomUUID as L}from"node:crypto";import{randomUUID as Ie}from"node:crypto";function gt(e,t,o,s){let n=Math.min(o,t.capacity.contextWindow??o),r=t.capacity.inputTokens,a=Math.max(0,t.requestInputReliefTokens);return{currentTokens:t.capacity.inputTokensKind==="exact"&&r!==void 0?r+a:Math.max(n+a,(r??0)+a,Re(e,s)),baselineEstimatedTokens:y(e),source:"estimate",capacityWindow:n}}i(gt,"createOverflowContextTokenSnapshot");function R(e){return typeof e=="number"&&Number.isFinite(e)&&e>=0}i(R,"isFiniteNonNegative");function ve(e){return!(!e||!R(e.inputTokens)||!R(e.outputTokens)||!R(e.totalTokens)||e.totalTokens<e.inputTokens||e.totalTokens<e.outputTokens||e.cachedReadTokens!==void 0&&!R(e.cachedReadTokens)||e.cachedWriteTokens!==void 0&&!R(e.cachedWriteTokens)||e.thoughtTokens!==void 0&&!R(e.thoughtTokens))}i(ve,"hasValidTokenUsage");function Se(e){let t=y(e);return{currentTokens:t,baselineEstimatedTokens:t,source:"estimate"}}i(Se,"createEstimatedContextTokenSnapshot");function Ge(e,t){let o=y(e);return{currentTokens:t.inputTokens,baselineEstimatedTokens:o,source:"api",usage:t}}i(Ge,"createApiContextTokenSnapshot");function ht(e,t){return ve(t)?{currentTokens:t.totalTokens,baselineEstimatedTokens:y(e),source:"api",usage:t}:Se(e)}i(ht,"createCompletedTurnTokenSnapshot");function Et(e,t){return ve(t)?Ge(e,t):Se(e)}i(Et,"createContextTokenSnapshot");function Re(e,t){let o=y(e);if(!t||!R(t.currentTokens)||!R(t.baselineEstimatedTokens))return o;let s=t.currentTokens+(o-t.baselineEstimatedTokens);return!Number.isFinite(s)||s<0?o:Math.round(s)}i(Re,"resolveContextTokenCount");function be(e,t){return{currentTokens:Re(e,t),baselineEstimatedTokens:y(e),source:t?.source??"estimate",usage:t?.usage}}i(be,"rebaseContextTokenSnapshot");function kt(e,t){let o=y(e);return{currentTokens:o,baselineEstimatedTokens:o,source:t?.source??"estimate"}}i(kt,"recomputeContextTokenSnapshot");var Me=Symbol("KodaXLiveTurnAttributed"),_e=Symbol("KodaXLiveTurnBaseEvents"),we=16,Ce=new Map,b=new Map;function _t(e){let t=e.turnId??`turn_${Ie().replace(/-/g,"").slice(0,we)}`,o=e.deliveryId??`delivery_${Ie().replace(/-/g,"").slice(0,we)}`,s=e.contextId??e.sessionId,n=e.contextKind??"root";return b.has(s)||b.set(s,0),{sessionId:e.sessionId,turnId:t,contextId:s,contextKind:n,parentContextId:e.parentContextId,agentId:e.agentId,deliveryId:o,deliveryKind:e.deliveryKind??"initial",promptId:e.promptId,ownsContextRevision:e.ownsContextRevision??!0,nextMeta(){let r=(Ce.get(e.sessionId)??0)+1;return Ce.set(e.sessionId,r),{sessionId:e.sessionId,seq:r,turnId:t,deliveryId:o,contextId:s,contextKind:n,...e.parentContextId!==void 0?{parentContextId:e.parentContextId}:{},...e.agentId!==void 0?{agentId:e.agentId}:{},contextRevision:b.get(s)??0,timestamp:new Date().toISOString()}},advanceContextRevision(){if(e.ownsContextRevision===!1)return b.get(s)??0;let r=(b.get(s)??0)+1;return b.set(s,r),r}}}i(_t,"createLiveTurnScope");function He(e){return e[Me]===!0}i(He,"isAttributedEvents");function J(e){return"current"in e?e.current:e}i(J,"resolveLiveTurnScope");function f(e,t){let o=t?.contextId===void 0||t.contextKind===void 0||t.contextRevision===void 0?{}:{contextId:t.contextId,contextKind:t.contextKind,parentContextId:t.parentContextId,agentId:t.agentId,contextRevision:t.contextRevision,...t.contextKind==="child"&&t.turnId!==void 0?{turnId:t.turnId,deliveryId:t.deliveryId}:{}};return{...t??{},...J(e).nextMeta(),...o}}i(f,"withActivityMeta");function x(e,t){let o=t,s=o.contextId===void 0||o.contextKind===void 0||o.contextRevision===void 0?{}:{contextId:o.contextId,contextKind:o.contextKind,parentContextId:o.parentContextId,agentId:o.agentId,contextRevision:o.contextRevision,...o.contextKind==="child"&&o.turnId!==void 0?{turnId:o.turnId,deliveryId:o.deliveryId}:{}};return{...t,...J(e).nextMeta(),...s}}i(x,"withLiveMeta");function wt(e,t){let o=He(e)?e[_e]:e,s={...o,onSessionStart:i(n=>{o.onSessionStart?.(x(t,n))},"onSessionStart"),onOutputSegmentStart:i((n,r)=>{o.onOutputSegmentStart?.(n,f(t,r))},"onOutputSegmentStart"),onTextDelta:i((n,r)=>{o.onTextDelta?.(n,f(t,r))},"onTextDelta"),onOutputNotice:i((n,r)=>{o.onOutputNotice?.(n,f(t,r))},"onOutputNotice"),onThinkingDelta:i((n,r)=>{o.onThinkingDelta?.(n,f(t,r))},"onThinkingDelta"),onThinkingEnd:i((n,r)=>{o.onThinkingEnd?.(n,f(t,r))},"onThinkingEnd"),onToolUseStart:i((n,r)=>{o.onToolUseStart?.(n,f(t,r))},"onToolUseStart"),onToolInputDelta:i((n,r,a)=>{o.onToolInputDelta?.(n,r,f(t,a))},"onToolInputDelta"),onToolProgress:i((n,r)=>{o.onToolProgress?.(n,f(t,r))},"onToolProgress"),onToolSandboxObservation:i((n,r)=>{o.onToolSandboxObservation?.(n,f(t,r))},"onToolSandboxObservation"),onToolResult:i((n,r)=>{o.onToolResult?.(n,f(t,r))},"onToolResult"),onToolExecutionStart:i((n,r)=>{o.onToolExecutionStart?.(n,f(t,r))},"onToolExecutionStart"),onToolExecutionEnd:i((n,r)=>{o.onToolExecutionEnd?.(n,f(t,r))},"onToolExecutionEnd"),onChildActivityEnd:i(n=>{o.onChildActivityEnd?.(f(t,n))},"onChildActivityEnd"),onStreamEnd:i(n=>{o.onStreamEnd?.(f(t,n))},"onStreamEnd"),onIterationStart:i((n,r,a)=>{o.onIterationStart?.(n,r,f(t,a))},"onIterationStart"),onIterationEnd:i(n=>{o.onIterationEnd?.(x(t,n))},"onIterationEnd"),onCompactStart:i(n=>{o.onCompactStart?.(f(t,n))},"onCompactStart"),onCompact:i((n,r)=>{o.onCompact?.(n,f(t,r))},"onCompact"),onCompactStats:i(n=>{o.onCompactStats?.(x(t,n))},"onCompactStats"),onCompactedMessages:i(async(n,r,a)=>{let c=J(t),u=c.advanceContextRevision();try{await o.onCompactedMessages?.(n,r,f(t,a))}catch(m){throw c.ownsContextRevision&&b.get(c.contextId)===u&&b.set(c.contextId,u-1),m}},"onCompactedMessages"),onContextCompactionFinished:i(n=>{o.onContextCompactionFinished?.(x(t,n))},"onContextCompactionFinished"),onCompactEnd:i((n,r)=>{o.onCompactEnd?.(f(t,n),r)},"onCompactEnd"),onMidTurnUserMessages:i((n,r)=>{o.onMidTurnUserMessages?.(n,f(t,r))},"onMidTurnUserMessages"),onRetry:i((n,r,a,c)=>{o.onRetry?.(n,r,a,f(t,c))},"onRetry"),onProviderRateLimit:i((n,r,a,c)=>{o.onProviderRateLimit?.(n,r,a,f(t,c))},"onProviderRateLimit"),onRetryAfter:i((n,r)=>{o.onRetryAfter?.(n,f(t,r))},"onRetryAfter"),onProviderRecovery:i((n,r)=>{o.onProviderRecovery?.(n,f(t,r))},"onProviderRecovery"),onReasoningEffortRejected:i(n=>{o.onReasoningEffortRejected?.(x(t,n))},"onReasoningEffortRejected"),onReasoningResolved:i(n=>{o.onReasoningResolved?.(x(t,n))},"onReasoningResolved"),onRepoIntelligenceTrace:i(n=>{o.onRepoIntelligenceTrace?.(x(t,n))},"onRepoIntelligenceTrace"),onContextBudgetSnapshot:i(n=>{o.onContextBudgetSnapshot?.(x(t,n))},"onContextBudgetSnapshot"),onPromptCacheDiagnostics:i(n=>{o.onPromptCacheDiagnostics?.(x(t,n))},"onPromptCacheDiagnostics"),onToolExposurePlanned:i(n=>{o.onToolExposurePlanned?.(x(t,n))},"onToolExposurePlanned"),onContextCompactionSkipped:i(n=>{o.onContextCompactionSkipped?.(x(t,n))},"onContextCompactionSkipped"),onTodoUpdate:i((n,r)=>{o.onTodoUpdate?.(n,f(t,r))},"onTodoUpdate"),onTodoDriftWarning:i(n=>{o.onTodoDriftWarning?.(x(t,n))},"onTodoDriftWarning"),onManagedTaskStatus:i(n=>{o.onManagedTaskStatus?.(x(t,n))},"onManagedTaskStatus"),onEffectiveConfig:i(n=>{o.onEffectiveConfig?.(x(t,n))},"onEffectiveConfig"),onWorkflowProcessEvent:i(n=>{o.onWorkflowProcessEvent?.(x(t,n))},"onWorkflowProcessEvent"),onWorkflowAgentDigest:i(n=>{o.onWorkflowAgentDigest?.(x(t,n))},"onWorkflowAgentDigest"),onScoutSuspiciousCompletion:i(n=>{o.onScoutSuspiciousCompletion?.(x(t,n))},"onScoutSuspiciousCompletion"),onComplete:i(n=>{o.onComplete?.(f(t,n))},"onComplete"),onError:i((n,r)=>{o.onError?.(n,f(t,r))},"onError")};return Object.defineProperty(s,Me,{value:!0,enumerable:!1}),Object.defineProperty(s,_e,{value:o,enumerable:!1}),s}i(wt,"withLiveTurnAttribution");function Ct(e,t){let o={...t.nextMeta(),deliveryKind:t.deliveryKind,...t.promptId!==void 0?{promptId:t.promptId}:{}};e.onTurnStarted?.(o)}i(Ct,"emitTurnStarted");function Mt(e,t,o){e.onTurnCompleted?.({...t.nextMeta(),status:o})}i(Mt,"emitTurnCompleted");function At(e,t,o){let s={...t.nextMeta(),error:{name:o.name,message:o.message,...o.stack!==void 0?{stack:o.stack}:{}}};e.onTurnFailed?.(s)}i(At,"emitTurnFailed");var qe=new Set(["todo_update","todo_list","todo_create","todo_get"]);function A(e){return!Ee(e)&&!qe.has(e)}i(A,"isVisibleToolName");function Ot(e,t){return e.hasPendingInputs?.()===!0?!0:se().has({agentId:t,maxPriority:"user",mode:"prompt"})}i(Ot,"hasQueuedFollowUp");function Lt(e,t){e.onSessionStart?.(t)}i(Lt,"emitSessionStart");function Dt(e,t){t===void 0?e.onStreamEnd?.():e.onStreamEnd?.(t)}i(Dt,"emitStreamEnd");function Pt(e){e.onComplete?.()}i(Pt,"emitComplete");function Bt(e,t){e.onError?.(t)}i(Bt,"emitError");function Kt(e,t,o,s,n){if(n!==void 0){e.onProviderRateLimit?.(t,o,s,n);return}e.onProviderRateLimit?.(t,o,s)}i(Kt,"emitProviderRateLimit");function Ut(e,t,o){e.onIterationStart?.(t+1,o)}i(Ut,"emitIterationStart");function Nt(e,t){let o=be(t.messages,t.snapshotOverride??t.currentSnapshot);return e.onIterationEnd?.({iter:t.iter,maxIter:t.maxIter,tokenCount:o.currentTokens,tokenSource:o.source,usage:o.usage,contextTokenSnapshot:o}),o}i(Nt,"emitIterationEnd");async function Q(e,t,o,s,n,r,a){if(e.beforeToolExecute){let u=await e.beforeToolExecute(t,o,{toolId:s});if(u===!1)return a?.denyRead(t,o),v;if(typeof u=="string")return a?.denyRead(t,o),u}let c=await he("tool:before",{name:t,input:o,toolId:s,executionCwd:n,gitRoot:r});return c===!1?(a?.denyRead(t,o),v):(typeof c=="string"&&a?.denyRead(t,o),typeof c=="string"?c:void 0)}i(Q,"getToolExecutionOverride");import Xe from"fs";function Ve(){return process.env.KODAX_DEBUG_STREAM==="1"||process.env.KODAX_DEBUG_RESILIENCE==="1"}i(Ve,"shouldDebugResilience");function N(e,t){Ve()&&D({source:"coding:resilience",level:"debug",message:e,detail:t})}i(N,"emitResilienceDebug");function $(e,t){let o=e.input?.path;if(!(typeof o!="string"||o.trim().length===0))return de(o,t)}i($,"resolveToolTargetPath");function Y(e,t){t&&(e.editRecoveryAttempts.delete(t),e.blockedEditWrites.delete(t))}i(Y,"clearEditRecoveryStateForPath");function Z(e,t,o){if(e.name!=="write")return;let s=$(e,t);if(!(!s||!o.blockedEditWrites.has(s))){if(!Xe.existsSync(s)){o.blockedEditWrites.delete(s);return}return`[Tool Error] write: BLOCKED_AFTER_EDIT_FAILURE: Refusing to rewrite existing file ${s} while edit anchor recovery is in progress. Retry with edit using unique existing text; use an edits array for multiple replacements.`}}i(Z,"maybeBlockExistingFileWrite");async function Ae(e,t,o,s){let n=B(t);if(!n)return;let r=typeof e.input?.path=="string"?e.input.path:void 0,a=$(e,s);if(!r||!a)return;o.blockedEditWrites.add(a);let c=(o.editRecoveryAttempts.get(a)??0)+1;if(o.editRecoveryAttempts.set(a,c),o.lastToolErrorCode=n,n==="EDIT_TOO_LARGE")return N("[edit:recovery]",{code:n,path:a,attempt:c,action:"split-edit"}),[`The previous edit for ${a} failed with ${n}.`,"Do not use write to replace the existing file.","Split the change into smaller replacements in the edits array of one edit call; later anchors must match the result of earlier edits."].join(`
3
3
  `);if(c>2)return N("[edit:recovery]",{code:n,path:a,attempt:c,action:"stop-auto-recovery"}),[`The previous edit for ${a} failed with ${n}, and automatic anchor recovery is exhausted.`,"Do not escalate to a whole-file write.","Choose a unique old_string from current file content and retry with edit; preserve the full anchor text when appending."].join(`
4
4
  `);let u=c===1?120:400,m=e.input?.edits,d=Array.isArray(m)&&m.length===1?m[0]:void 0,l=e.input?.old_string??(d&&typeof d=="object"&&"old_string"in d?d.old_string:""),T=await fe(r,String(l??""),s,u),g=T.candidates[0],h=T.candidates.slice(1,3);N("[edit:recovery]",{code:n,path:a,attempt:c,windowLines:u,candidateCount:T.candidates.length});let E=[`The previous edit for ${a} failed with ${n}.`,"Do not use write to rewrite the existing file.","Retry with edit using a smaller unique old_string.","For a section append, replace the complete unique heading line with that line plus the new content, preserving line breaks."];if(g&&(E.push(""),E.push(`Best nearby anchor window (${g.startLine}-${g.endLine}):`),E.push("```text"),E.push(g.excerpt),E.push("```")),h.length>0){E.push(""),E.push("Other nearby candidate anchors:");for(let _ of h)E.push(`- lines ${_.startLine}-${_.endLine}: ${_.preview}`)}return E.join(`
5
5
  `)}i(Ae,"buildEditRecoveryUserMessage");var ze=new Set(["edit","write","multi_edit","apply_patch","delete","remove","rename"]),Je=3,Qe=100;function Oe(e){return ze.has(e.toLowerCase())}i(Oe,"isMutationTool");function Le(e){return e.files.size>=Je?!0:[...e.files.values()].reduce((o,s)=>o+s,0)>=Qe}i(Le,"isMutationScopeSignificant");function Ye(e){let t=[...e.files.values()].reduce((s,n)=>s+n,0),o=[...e.files.entries()].map(([s,n])=>` - ${s} (~${n} lines)`).join(`