openpond 0.2.13 → 0.2.15
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/app-server.d.ts +26 -0
- package/dist/app-server.js +1 -1
- package/dist/chunks/{actions-command-Q5HXY5XD.js → actions-command-33SJXJKC.js} +1 -1
- package/dist/chunks/{app-layer-S6H572UM.js → app-layer-SSLVAUNI.js} +1 -1
- package/dist/chunks/app-server-runtime-QUC4HPQU.js +2 -0
- package/dist/chunks/{apps-K5HMFAPI.js → apps-JEKTEGSW.js} +1 -1
- package/dist/chunks/{chunk-XK77GSBL.js → chunk-4E5ETWKU.js} +333 -328
- package/dist/chunks/chunk-6C2EXO4H.js +5 -0
- package/dist/chunks/{chunk-NHBCFMAC.js → chunk-7I73OREC.js} +1 -1
- package/dist/chunks/{chunk-I4FOBNHQ.js → chunk-A2PIGBPD.js} +15 -15
- package/dist/chunks/chunk-DWROB2J6.js +19 -0
- package/dist/chunks/chunk-FHBQ6OWG.js +26 -0
- package/dist/chunks/{chunk-NYPLOXEP.js → chunk-JTQDNX2J.js} +1 -1
- package/dist/chunks/{chunk-ECH6PXVK.js → chunk-K4ZKAHLG.js} +1 -1
- package/dist/chunks/{chunk-3GLSX322.js → chunk-QLZ67Y6C.js} +2 -2
- package/dist/chunks/{chunk-OW4KET6I.js → chunk-TWA56GFU.js} +1 -1
- package/dist/chunks/{chunk-R33VLNFY.js → chunk-UN3A7GEU.js} +1 -1
- package/dist/chunks/{chunk-3V5FPSOK.js → chunk-UOQHYTCK.js} +1 -1
- package/dist/chunks/{chunk-ZMRT4B4H.js → chunk-VRXXKDF2.js} +9 -9
- package/dist/chunks/{chunk-OHGSESPN.js → chunk-YNXFXNQM.js} +1 -1
- package/dist/chunks/{chunk-MSF7ZBFG.js → chunk-ZYG2PXY2.js} +1 -1
- package/dist/chunks/{cli-XJJYXKXM.js → cli-7YSRAC4Y.js} +1 -1
- package/dist/chunks/{configuration-command-Q7XVBZ2E.js → configuration-command-DH4ZZUKL.js} +1 -1
- package/dist/chunks/{core-commands-6GZ7T4SK.js → core-commands-TUUSA6WB.js} +1 -1
- package/dist/chunks/{desktop-test-EKPOPWTL.js → desktop-test-S3RME4QT.js} +1 -1
- package/dist/chunks/extension-D64BYPFY.js +6 -0
- package/dist/chunks/{help-MTWG7AXZ.js → help-AOVE3SSY.js} +1 -1
- package/dist/chunks/{opchat-4QGK6MRL.js → opchat-KC2FL5TT.js} +1 -1
- package/dist/chunks/{organizations-TTUM577J.js → organizations-AAES2P7W.js} +1 -1
- package/dist/chunks/{profile-C33CIJOV.js → profile-FRYWK2IE.js} +1 -1
- package/dist/chunks/{project-agent-5P3ALPRY.js → project-agent-WPW6DWK7.js} +1 -1
- package/dist/chunks/{sandbox-command-CEIXSDW2.js → sandbox-command-ZHKJZ3FJ.js} +1 -1
- package/dist/chunks/{sandbox-template-KTKWVKZ7.js → sandbox-template-SPVQIMG5.js} +1 -1
- package/dist/chunks/{src-7NWHHROY.js → src-AADCZ2JW.js} +108 -108
- package/dist/chunks/{src-ZAF6VEWJ.js → src-LYFCDA5G.js} +1 -1
- package/dist/chunks/{teams-bot-O7IFQ3L6.js → teams-bot-LD3QORJI.js} +1 -1
- package/dist/chunks/{workspaces-I5BVMFVY.js → workspaces-P2WNCMXC.js} +1 -1
- package/dist/cli.js +1 -1
- package/dist/index.js +1 -1
- package/dist/web/assets/{App-BqgpZNh-.js → App-kwt-UxX_.js} +30 -30
- package/dist/web/assets/{AppDialog-BCzsyF8y.js → AppDialog-LXQo_7oW.js} +1 -1
- package/dist/web/assets/{AppTerminalPanel-Cqtaoc93.js → AppTerminalPanel-CUqrUrkA.js} +2 -2
- package/dist/web/assets/{AppsView-BHz8ruGV.js → AppsView-5J2RX301.js} +1 -1
- package/dist/web/assets/{BrowserSidebar-vrHh2y_s.js → BrowserSidebar-mZ8RjUOr.js} +1 -1
- package/dist/web/assets/{CartesianChart-C5PgQkxh.js → CartesianChart-7x3SO8Hj.js} +1 -1
- package/dist/web/assets/{CollaborationTabs-OSqxEZgD.js → CollaborationTabs-ByC9WJqu.js} +1 -1
- package/dist/web/assets/{CommandMenu-XMeH3T6m.js → CommandMenu-CqDb2Kb2.js} +1 -1
- package/dist/web/assets/{CommunityView-BPsy_BnG.js → CommunityView-BmxYkWqC.js} +1 -1
- package/dist/web/assets/{ComposerCreateImproveStrip-Bsh9eyj1.js → ComposerCreateImproveStrip-2Tyj9KOQ.js} +1 -1
- package/dist/web/assets/{GetStartedView-Ay67q9mX.js → GetStartedView-1WYkmevY.js} +1 -1
- package/dist/web/assets/HostedModelLearningReview-DHahsQJH.js +1 -0
- package/dist/web/assets/{HostedModelLearningSettings-MG_1VD7H.js → HostedModelLearningSettings-Brza5hSD.js} +1 -1
- package/dist/web/assets/{LabModelVersionDetailPage-CPkCZhBg.js → LabModelVersionDetailPage-C4WtQKER.js} +1 -1
- package/dist/web/assets/{LabSkillSidebar-Y06Ghxe7.js → LabSkillSidebar-D3g6E0Ap.js} +1 -1
- package/dist/web/assets/{LabsRoute-CBy4evwc.js → LabsRoute-BO0yEsCR.js} +4 -4
- package/dist/web/assets/{MainChatThread-CqG9WewR.js → MainChatThread-CKPR_rY0.js} +2 -2
- package/dist/web/assets/{MainPane-CQVCd0hz.js → MainPane-B8mDzSqi.js} +4 -4
- package/dist/web/assets/{MarkdownText-BSXFJB5s.js → MarkdownText-D6_UI4Ly.js} +1 -1
- package/dist/web/assets/{Messages-CcKLreir.js → Messages-DptbENmQ.js} +1 -1
- package/dist/web/assets/{NativeSkillSidebar-BF4T1Tuy.js → NativeSkillSidebar-CF1NTAR6.js} +1 -1
- package/dist/web/assets/{NewExperienceSwitcher-BH2-_iQt.js → NewExperienceSwitcher-CwlpLsXW.js} +1 -1
- package/dist/web/assets/{NewProjectDialog-BSkPgqLX.js → NewProjectDialog-Ls4K9a5S.js} +1 -1
- package/dist/web/assets/{OutputsPage-DBAfj1e_.js → OutputsPage-ClNuidPW.js} +1 -1
- package/dist/web/assets/{ProjectsPage-DOTViI5-.js → ProjectsPage-Sj83NsdP.js} +1 -1
- package/dist/web/assets/{RightChatPanelStack-D3wuMm3F.js → RightChatPanelStack-m5-cI0NL.js} +1 -1
- package/dist/web/assets/{RightSidebarHomePanel-DLP1LFoX.js → RightSidebarHomePanel-B--t--OJ.js} +1 -1
- package/dist/web/assets/{ScheduledWorkPage-BETU42Pi.js → ScheduledWorkPage-JVfMtGMs.js} +1 -1
- package/dist/web/assets/{SettingsView-D2eKwMH6.js → SettingsView-B7FnZ-b0.js} +6 -6
- package/dist/web/assets/{TeamChatView-ytGArG3p.js → TeamChatView-D8ilbncz.js} +1 -1
- package/dist/web/assets/{TerminalOverlay-FV-T6Vk6.js → TerminalOverlay-A6nSxm5C.js} +1 -1
- package/dist/web/assets/{TrainingCreationPanel-D7UhsNpa.js → TrainingCreationPanel-CwpnBbuN.js} +1 -1
- package/dist/web/assets/{TrainingDraftPanel-BZ4ZhYbm.js → TrainingDraftPanel-B_Gh_0yq.js} +1 -1
- package/dist/web/assets/{UsageSettingsSection-Ml9cMCUi.js → UsageSettingsSection-qTX3k9-f.js} +1 -1
- package/dist/web/assets/{WorkSidebarPanel-DZZK0_vI.js → WorkSidebarPanel-B-fDRRRs.js} +1 -1
- package/dist/web/assets/{WorkspaceDiffPanel-CSLiV2LC.js → WorkspaceDiffPanel-CfvvifJg.js} +3 -3
- package/dist/web/assets/{WorkspaceEnvironmentMenu-dqDA6sik.js → WorkspaceEnvironmentMenu-BL6WHWLO.js} +1 -1
- package/dist/web/assets/{WorkspaceGitDialogs-C9ptN_7-.js → WorkspaceGitDialogs-pyZQJL_2.js} +1 -1
- package/dist/web/assets/{WorkspaceMonacoEditor-BOa6xAaO.js → WorkspaceMonacoEditor-C2cNf0UO.js} +3 -3
- package/dist/web/assets/{arrow-up-right-Qq_YNPUt.js → arrow-up-right-BQv8RCGD.js} +1 -1
- package/dist/web/assets/{chat-file-links-z54bmvhH.js → chat-file-links-C3erG0P2.js} +1 -1
- package/dist/web/assets/chevron-up-D9MMQKU3.js +1 -0
- package/dist/web/assets/{clipboard-C_cLfHiu.js → clipboard-BSPYX7yq.js} +1 -1
- package/dist/web/assets/{cloud-upload-B1A_725d.js → cloud-upload-CJVhhG6P.js} +1 -1
- package/dist/web/assets/{cssMode-DKjB86V7.js → cssMode-RCJXPUO-.js} +1 -1
- package/dist/web/assets/{folder-open-BAqrqIkA.js → folder-open-2a5riVSG.js} +1 -1
- package/dist/web/assets/{folder-plus-Aw6rEy1D.js → folder-plus-DuVvIFve.js} +1 -1
- package/dist/web/assets/{git-commit-horizontal-75RSWQ3Q.js → git-commit-horizontal-BifoV1dR.js} +1 -1
- package/dist/web/assets/{htmlMode-CH03ACqd.js → htmlMode-DnEOXzjT.js} +1 -1
- package/dist/web/assets/{index-C0gdp_hv.js → index-B5RqBp_p.js} +2 -2
- package/dist/web/assets/{info-CXzXdZ1o.js → info-BWvLCbJ2.js} +1 -1
- package/dist/web/assets/{jsonMode-Bvmzl5ln.js → jsonMode-DQfml7E4.js} +1 -1
- package/dist/web/assets/{lspLanguageFeatures-BKXLyuIE.js → lspLanguageFeatures-WKs-7xHz.js} +1 -1
- package/dist/web/assets/{minimize-2-C-6SC3Bs.js → minimize-2-C-_iqAbt.js} +1 -1
- package/dist/web/assets/{monaco.contribution-BwSCuTR3.js → monaco.contribution-B29c98Aa.js} +2 -2
- package/dist/web/assets/{monaco.contribution-BON5T_eJ.js → monaco.contribution-B5y78DUP.js} +2 -2
- package/dist/web/assets/{monaco.contribution-Cv_QTWVQ.js → monaco.contribution-DCekL-SI.js} +2 -2
- package/dist/web/assets/{monaco.contribution-rtAnmt_x.js → monaco.contribution-Qc1u700n.js} +2 -2
- package/dist/web/assets/{play-BnkiBq8x.js → play-DsP3gpGK.js} +1 -1
- package/dist/web/assets/{python-Rd5MxRAN.js → python-CJ1QdM8L.js} +1 -1
- package/dist/web/assets/{refresh-cw-BISaiIBt.js → refresh-cw-DaASy_i0.js} +1 -1
- package/dist/web/assets/{save-BcVbYiGU.js → save-BBQ7L8VS.js} +1 -1
- package/dist/web/assets/{square-Bn32OIid.js → square-DTl9YrMp.js} +1 -1
- package/dist/web/assets/{toggleHighContrast-DDw4wPS9.js → toggleHighContrast-D-DNRZ-D.js} +1 -1
- package/dist/web/assets/{tsMode-Dt73U5ww.js → tsMode-CmWbxnjM.js} +1 -1
- package/dist/web/assets/{upload-AB1N3bCZ.js → upload-juEp2zRQ.js} +1 -1
- package/dist/web/assets/{useLocalAgentSchedules-D7QTyYKj.js → useLocalAgentSchedules-DF_bIseW.js} +1 -1
- package/dist/web/assets/{wifi-off-BAX1UWLx.js → wifi-off-DrkIaS1O.js} +1 -1
- package/dist/web/assets/{workers-DE3-vPyS.js → workers-LygfviY3.js} +1 -1
- package/dist/web/assets/{yaml-C0JBPZbg.js → yaml-BIpimtDQ.js} +1 -1
- package/dist/web/index.html +1 -1
- package/package.json +1 -1
- package/dist/chunks/app-server-runtime-GIFUDGYZ.js +0 -2
- package/dist/chunks/chunk-3YH3S5U2.js +0 -26
- package/dist/chunks/chunk-BB6DJKXX.js +0 -19
- package/dist/chunks/chunk-MPQWFPGA.js +0 -5
- package/dist/chunks/extension-A2BWJMRQ.js +0 -6
- package/dist/web/assets/HostedModelLearningReview-C8PfSxcz.js +0 -1
- package/dist/web/assets/chevron-up-CIrVx_eP.js +0 -1
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
import { createRequire as __openpondCreateRequire } from "node:module"; var require = __openpondCreateRequire(import.meta.url);
|
|
2
|
+
import{c as j,e as E,f as z,g as H,i as N,kb as O}from"./chunk-NNLI4OWY.js";import{b as a}from"./chunk-ES2ISFJC.js";import{a as R,c as P,f as A,h as d}from"./chunk-H7IWJN7L.js";import{a as s}from"./chunk-FTQLQJQV.js";import b from"node:path";import{AsyncLocalStorage as V}from"node:async_hooks";import{promises as M}from"node:fs";var B=new V;function pe(e,t=!1){let n=B.getStore();n&&(t&&(n.length=0),n.push(e))}s(pe,"onStartupFailure");async function me(e,t){await O(e);let n;try{n=await H(b.join(d(e).runtime,"server-owner"),100)}catch(i){if(i instanceof P&&i.issue.code==="STORAGE_BUSY"){let o=await N(b.join(d(e).runtime,"endpoint.json"),()=>null);throw new P({code:"RUNTIME_ALREADY_RUNNING",path:e,message:"An OpenPond runtime already owns this home.",action:o?.url?`Connect to the existing runtime at ${o.url}, or stop it before starting another.`:"Stop the existing runtime before starting another with this home."})}throw i}let r=[];try{let i=await R(e,()=>B.run(r,t)),o=i.close.bind(i);r.length=0;let l;return{...i,close:s(()=>l??=(async()=>{try{await R(e,o)}finally{await M.rm(b.join(d(e).runtime,"endpoint.json"),{force:!0}),await n()}})(),"close")}}catch(i){try{for(let o of r.reverse())await Promise.resolve().then(()=>R(e,o)).catch(()=>{});await M.rm(b.join(d(e).runtime,"endpoint.json"),{force:!0})}finally{await n()}throw i}}s(me,"ownHomeRuntime");async function fe(e,t,n){await E(b.join(d(e).runtime,"endpoint.json"),JSON.stringify({schemaVersion:"openpond.runtimeEndpoint.v1",pid:process.pid,url:t,serverId:n}))}s(fe,"publishRuntimeEndpoint");function ge(e){if(!e.maxContextTokens||!e.usableContextTokens)return{shouldCompact:!1,projectedTokens:e.projectedTokens,thresholdTokens:Number.MAX_SAFE_INTEGER,usableContextTokens:0,maxContextTokens:0,tokenSource:"heuristic"};let t=Math.max(.01,Math.min(1,(e.triggerPercent??85)/100)),n=Math.max(1,Math.floor(e.usableContextTokens*t));return{shouldCompact:e.projectedTokens>=n,projectedTokens:e.projectedTokens,thresholdTokens:n,usableContextTokens:e.usableContextTokens,maxContextTokens:e.maxContextTokens,tokenSource:"heuristic"}}s(ge,"agentCompactionDecision");async function be(e){await e.started();try{return await e.compact()}catch(t){throw await e.failed(t),t}}s(be,"runAgentCompaction");async function xe(e){let t=e.host.projectEvents(e.events),n=e.host.selectEvents(t,e.maxContextTokens),{summaryEvents:r,preservedEvents:i,preservedEventIds:o}=n;if(r.length===0)throw new Error("There is not enough prior context to compact.");let l=e.host.normalizeRecords(r),u=e.host.normalizeRecords(i),h=e.host.buildFileLedger(e.host.normalizeRecords(t)),c=e.host.serializeRecords(l,e.host.inputCharBudget(e.maxContextTokens));if(!c.text.trim())throw new Error("There is not enough prior context to compact.");let p=e.host.buildSummaryMessages({serializedHistory:c.text,fileLedger:h}),v=Date.now(),w=(await e.host.streamSummary({model:e.model,messages:p,signal:e.signal})).trim(),k=Date.now()-v;if(!w)throw new Error("Compaction summary was empty.");let I=e.host.estimateProjection({events:t,preservedEvents:i,summary:w}),_=e.host.createMetrics({sourceEvents:t.length,summarizedEvents:r.length,preservedEvents:i.length,sourceRecords:c.sourceRecordCount,includedRecords:c.includedRecordCount,omittedRecords:c.omittedRecordCount,preservedRecords:u.length,truncatedRecords:c.truncatedRecordCount,summaryInputTruncated:c.inputTruncated,sourceSelectionStrategy:c.selectionStrategy,summaryInputChars:c.inputChars,retainedTailTokens:n.retainedTailTokens,retainedTailBudgetTokens:n.retainedTailBudgetTokens,finalProviderContextTokens:I.inputTokensAfter,durationMs:k,fileLedgerEntries:h.length,splitTurnId:n.splitTurnId});return{summary:w,model:e.model,compactedThroughEventId:t[t.length-1]?.id??null,compactedThroughTurnId:e.host.lastTurnId(t),preservedFromEventId:i[0]?.id??null,preservedEventIds:o,preservedResourceRefs:e.host.durableResourceRefs(e.events),sourceEventCount:r.length,preservedEventCount:i.length,fileLedger:h,inputTokensBefore:I.inputTokensBefore,inputTokensAfter:I.inputTokensAfter,maxContextTokens:e.maxContextTokens,tokenSource:"heuristic",metrics:_}}s(xe,"runAgentCompactionProgram");var y="2026-09-20",ye=["initialize","initialized","runtime/capabilities","thread/start","thread/resume","thread/read","turn/start","turn/steer","task/inbox","task/queue","task/inputUpdate","turn/interrupt","approval/resolve","userInput/resolve","profile/workflows","profile/evaluations","profile/evaluations/prepare","profile/evaluations/run","profile/evaluations/executeCase","profile/evaluations/executeRun","profile/evaluations/compare","harness/inspect","harness/proposalReview","harness/review","harness/acceptEvaluationReview","harness/materializeEvaluationTaskset","harness/runEvaluationBaseline","harness/validate","harness/backgroundReview","harness/diff","harness/rollback","refiner/inspect","refiner/update","refiner/activate","refiner/rollback"],U=a.object({jsonrpc:a.literal("2.0"),id:a.union([a.string(),a.number()]),method:a.string().trim().min(1),params:a.unknown().optional()}).strict(),$=a.object({jsonrpc:a.literal("2.0"),method:a.string().trim().min(1),params:a.unknown().optional()}).strict(),G=a.object({jsonrpc:a.literal("2.0"),id:a.union([a.string(),a.number()]),result:a.unknown()}).strict(),W=a.object({jsonrpc:a.literal("2.0"),id:a.union([a.string(),a.number(),a.null()]),error:a.object({code:a.number().int(),message:a.string(),data:a.unknown().optional()}).strict()}).strict(),Te=a.union([U,$,G,W]),K=a.object({protocolVersion:a.string().trim().min(1),client:a.object({name:a.string().trim().min(1),version:a.string().trim().min(1)}).strict(),capabilities:a.record(a.string(),a.unknown()).default({})}).strict(),T=class{static{s(this,"AgentJsonRpcDispatcher")}#e;#r=null;#t=!1;constructor(t){this.#e=t}get initialized(){return this.#t}async handle(t){let n=$.safeParse(t);if(n.success&&!("id"in t)){if(n.data.method==="initialized"){if(!this.#r)throw new m(-32002,"initialize must be called first");this.#t=!0}return null}let r=U.safeParse(t);if(!r.success)return q(null,-32600,"Invalid Request",r.error.flatten());let i=r.data;try{let o=await this.#n(i.method,i.params);return{jsonrpc:"2.0",id:i.id,result:o}}catch(o){let l=o instanceof m?o:new m(-32603,o instanceof Error?o.message:String(o));return q(i.id,l.code,l.message,l.data)}}async#n(t,n){if(t==="initialize"){let r=K.parse(n);if(r.protocolVersion!==y)throw new m(-32001,"Incompatible agent protocol version",{requested:r.protocolVersion,supported:y});return this.#r=r,{protocolVersion:y,server:{name:"openpond-app-server",version:"1"},capabilities:await this.#e.capabilities()}}if(!this.#t)throw new m(-32002,"initialized notification is required");switch(t){case"runtime/capabilities":return this.#e.capabilities(n);case"thread/start":return this.#e.threadStart(n);case"thread/resume":return this.#e.threadResume(n);case"thread/read":return this.#e.threadRead(n);case"turn/start":return this.#e.turnStart(n);case"turn/steer":return this.#e.turnSteer(n);case"task/inbox":return this.#e.taskInbox(n);case"task/queue":return this.#e.taskQueue(n);case"task/inputUpdate":return this.#e.taskInputUpdate(n);case"turn/interrupt":return this.#e.turnInterrupt(n);case"approval/resolve":return this.#e.approvalResolve(n);case"userInput/resolve":return this.#e.userInputResolve(n);case"profile/workflows":return this.#e.profileWorkflows(n);case"profile/evaluations":return this.#e.profileEvaluations(n);case"profile/evaluations/prepare":return this.#e.profileEvaluationPrepare(n);case"profile/evaluations/run":return this.#e.profileEvaluationRun(n);case"profile/evaluations/executeCase":return this.#e.profileEvaluationExecuteCase(n);case"profile/evaluations/executeRun":return this.#e.profileEvaluationExecuteRun(n);case"profile/evaluations/compare":return this.#e.profileEvaluationCompare(n);case"harness/inspect":return this.#e.harnessInspect(n);case"harness/proposalReview":return this.#e.harnessProposalReview(n);case"harness/review":return this.#e.harnessReview(n);case"harness/acceptEvaluationReview":return this.#e.harnessAcceptEvaluationReview(n);case"harness/materializeEvaluationTaskset":return this.#e.harnessMaterializeEvaluationTaskset(n);case"harness/runEvaluationBaseline":return this.#e.harnessRunEvaluationBaseline(n);case"harness/validate":return this.#e.harnessValidate(n);case"harness/backgroundReview":return this.#e.harnessBackgroundReview(n);case"harness/diff":return this.#e.harnessDiff(n);case"harness/rollback":return this.#e.harnessRollback(n);case"refiner/inspect":return this.#e.refinerInspect(n);case"refiner/update":return this.#e.refinerUpdate(n);case"refiner/activate":return this.#e.refinerActivate(n);case"refiner/rollback":return this.#e.refinerRollback(n);default:throw new m(-32601,`Method not found: ${t}`)}}},m=class extends Error{static{s(this,"JsonRpcDispatchError")}code;data;constructor(t,n,r){super(n),this.code=t,this.data=r}};function q(e,t,n,r){return{jsonrpc:"2.0",id:e,error:{code:t,message:n,...r===void 0?{}:{data:r}}}}s(q,"jsonRpcError");import{createHash as Q}from"node:crypto";function C(e){if(e===null||typeof e=="boolean"||typeof e=="string")return e;if(typeof e=="number"){if(!Number.isFinite(e))throw new Error("Canonical JSON cannot encode a non-finite number.");return e}if(Array.isArray(e))return e.map(C);if(typeof e=="object"){let t={};for(let n of Object.keys(e).sort()){let r=e[n];r!==void 0&&(t[n]=C(r))}return t}throw new Error(`Canonical JSON cannot encode ${typeof e}.`)}s(C,"canonicalJson");function g(e){return Q("sha256").update(JSON.stringify(C(e)),"utf8").digest("hex")}s(g,"canonicalHash");var Y=a.enum(["thread.started","thread.resumed","turn.started","turn.steered","turn.interrupted","turn.completed","turn.failed","item.started","item.delta","item.completed","assistant.reasoning.delta","assistant.delta","tool.started","tool.completed","approval.requested","approval.resolved","user_input.requested","user_input.resolved","compaction.started","compaction.completed","harness.admitted","harness.refiner.queued","harness.refiner.started","harness.refiner.completed","harness.refiner.failed","diagnostic"]),X=a.object({sequence:a.number().int().nonnegative(),name:Y,source:a.enum(["runtime","provider","tool","host","refiner"]),status:a.string().trim().min(1).nullable().default(null),threadId:a.string().trim().min(1),turnId:a.string().trim().min(1).nullable().default(null),callId:a.string().trim().min(1).nullable().default(null),output:a.string().nullable().default(null),error:a.string().nullable().default(null),data:a.record(a.string(),a.unknown()).default({})}).strict();function He(e){return g(X.parse(e))}s(He,"canonicalEventHash");import{once as Z}from"node:events";import{createInterface as ee}from"node:readline";async function D(e){let t=new T(e.host),n=Promise.resolve(),r=[],i=s(c=>(n=n.then(async()=>{e.writable.write(`${JSON.stringify(c)}
|
|
3
|
+
`)||await Z(e.writable,"drain")}),n),"write"),o=s(()=>{if(!(!t.initialized||r.length===0))for(let c of r.splice(0))i(c)},"flushPendingNotifications"),l=e.host.subscribe?.(c=>{if(!t.initialized){r.push(c);return}i(c)}),u=new Set,h=ee({input:e.readable,crlfDelay:1/0});try{for await(let c of h){if(!c.trim())continue;let p;try{p=JSON.parse(c)}catch{await i({jsonrpc:"2.0",id:null,error:{code:-32700,message:"Parse error"}});continue}let v=(async()=>{let k=await t.handle(p);k&&await i(k),o()})(),w=p&&typeof p=="object"&&"method"in p?p.method:null;if(w==="initialize"||w==="initialized"){await v;continue}u.add(v),v.finally(()=>u.delete(v))}await Promise.all(u),await n}finally{l?.()}}s(D,"runAgentJsonlServer");var S=a.object({threadId:a.string().trim().min(1)}).passthrough(),te=a.object({session:a.unknown()}).strict(),x=S.extend({input:a.unknown()}),re=x.extend({idempotencyKey:a.string().trim().min(1).max(200)}),ne=x.extend({inputId:a.string().trim().min(1)}),ae=S.extend({reason:a.string().trim().min(1).optional()}),se=a.object({approvalId:a.string().trim().min(1),input:a.unknown()}).strict();function L(e){let t=s(async(r,i,o)=>{let l=performance.now();e.telemetry?.({method:r,phase:"started",threadId:i,durationMs:null,errorClass:null});try{let u=await o();return e.telemetry?.({method:r,phase:"completed",threadId:i,durationMs:performance.now()-l,errorClass:null}),u}catch(u){throw e.telemetry?.({method:r,phase:"failed",threadId:i,durationMs:performance.now()-l,errorClass:u instanceof Error?u.name:"UnknownError"}),u}},"run"),n=s(async(r,i="thread/read")=>{let{threadId:o}=S.parse(r);return t(i,o,async()=>{let[l,u,h]=await Promise.all([e.readThread(o),e.listTurns(o),e.listEvents(o)]);return{thread:l,turns:u,events:h}})},"threadRead");return{capabilities:s(r=>t("runtime/capabilities",null,()=>e.capabilities(r)),"capabilities"),threadStart:s(async r=>t("thread/start",null,async()=>({thread:await e.createThread(te.parse(r).session)})),"threadStart"),threadResume:s(r=>n(r,"thread/resume"),"threadResume"),threadRead:n,turnStart:s(async r=>{let i=x.parse(r);return t("turn/start",i.threadId,async()=>({turn:await e.startTurn(i.threadId,i.input)}))},"turnStart"),turnSteer:s(async r=>{let i=x.parse(r);return t("turn/steer",i.threadId,async()=>({receipt:await e.steerTurn(i.threadId,i.input)}))},"turnSteer"),taskInbox:s(async r=>{let{threadId:i}=S.parse(r);return t("task/inbox",i,()=>e.readTaskInbox(i))},"taskInbox"),taskQueue:s(async r=>{let i=re.parse(r);return t("task/queue",i.threadId,()=>e.queueTaskInput(i.threadId,i.input,i.idempotencyKey))},"taskQueue"),taskInputUpdate:s(async r=>{let i=ne.parse(r);return t("task/inputUpdate",i.threadId,()=>e.updateTaskInput(i.threadId,i.inputId,i.input))},"taskInputUpdate"),turnInterrupt:s(async r=>{let i=ae.parse(r);return t("turn/interrupt",i.threadId,async()=>({turn:await e.interruptTurn(i.threadId,i.reason)}))},"turnInterrupt"),approvalResolve:s(async r=>{let i=se.parse(r);return t("approval/resolve",null,async()=>({approval:await e.resolveApproval(i.approvalId,i.input)}))},"approvalResolve"),userInputResolve:s(async r=>{let i=x.parse(r);return t("userInput/resolve",i.threadId,async()=>(e.isTurnActive(i.threadId)&&await e.waitForTurnSettlement(i.threadId),{turn:await e.startTurn(i.threadId,i.input)}))},"userInputResolve"),profileWorkflows:s(()=>t("profile/workflows",null,()=>e.listProfileWorkflows()),"profileWorkflows"),profileEvaluations:s(()=>t("profile/evaluations",null,()=>e.listProfileEvaluations()),"profileEvaluations"),profileEvaluationPrepare:s(r=>t("profile/evaluations/prepare",null,()=>e.prepareProfileEvaluationRun(r)),"profileEvaluationPrepare"),profileEvaluationRun:s(r=>t("profile/evaluations/run",null,()=>e.runPreparedProfileEvaluation(r)),"profileEvaluationRun"),profileEvaluationExecuteCase:s(r=>t("profile/evaluations/executeCase",null,()=>e.executeProfileEvaluationCase(r)),"profileEvaluationExecuteCase"),profileEvaluationExecuteRun:s(r=>t("profile/evaluations/executeRun",null,()=>e.executeProfileEvaluationRun(r)),"profileEvaluationExecuteRun"),profileEvaluationCompare:s(r=>t("profile/evaluations/compare",null,()=>e.compareProfileEvaluationRuns(r)),"profileEvaluationCompare"),harnessInspect:s(()=>t("harness/inspect",null,()=>e.inspectHarness()),"harnessInspect"),harnessProposalReview:s(r=>t("harness/proposalReview",null,()=>e.reviewHarnessProposal(r)),"harnessProposalReview"),harnessReview:s(r=>t("harness/review",null,()=>e.reviewHarness(r)),"harnessReview"),harnessAcceptEvaluationReview:s(r=>t("harness/acceptEvaluationReview",null,()=>e.acceptHarnessEvaluationReview(r)),"harnessAcceptEvaluationReview"),harnessMaterializeEvaluationTaskset:s(r=>t("harness/materializeEvaluationTaskset",null,()=>e.materializeHarnessEvaluationTaskset(r)),"harnessMaterializeEvaluationTaskset"),harnessRunEvaluationBaseline:s(r=>t("harness/runEvaluationBaseline",null,()=>e.runHarnessEvaluationBaseline(r)),"harnessRunEvaluationBaseline"),harnessValidate:s(()=>t("harness/validate",null,()=>e.validateHarness()),"harnessValidate"),harnessBackgroundReview:s(r=>t("harness/backgroundReview",null,()=>e.updateHarnessBackgroundReview(r)),"harnessBackgroundReview"),harnessDiff:s(r=>t("harness/diff",null,()=>e.diffHarness(r)),"harnessDiff"),harnessRollback:s(r=>t("harness/rollback",null,()=>e.rollbackHarness(r)),"harnessRollback"),refinerInspect:s(()=>t("refiner/inspect",null,()=>e.inspectRefiner()),"refinerInspect"),refinerUpdate:s(r=>t("refiner/update",null,()=>e.updateRefiner(r)),"refinerUpdate"),refinerActivate:s(r=>t("refiner/activate",null,()=>e.activateRefiner(r)),"refinerActivate"),refinerRollback:s(r=>t("refiner/rollback",null,()=>e.rollbackRefiner(r)),"refinerRollback"),subscribe:e.subscribeEvents&&e.eventNotification?r=>e.subscribeEvents(i=>r(e.eventNotification(i))):void 0}}s(L,"createAgentRuntimeService");var f=a.string().regex(/^[a-f0-9]{64}$/),et=a.object({harnessReleaseHash:f,instructionsHash:f,skillHashes:a.record(a.string(),f),agentAssetHashes:a.record(a.string(),f),toolCatalogHash:f,memoryRevision:a.number().int().nonnegative().nullable()}).strict(),ie=a.object({protocolVersion:a.string().trim().min(1),threadId:a.string().trim().min(1),turnId:a.string().trim().min(1),harnessReleaseHash:f,toolCatalogHash:f,context:a.record(a.string(),a.unknown()),pendingInteraction:a.record(a.string(),a.unknown()).nullable(),usage:a.record(a.string(),a.unknown())}).strict();function tt(e){return g(ie.parse(e))}s(tt,"checkpointHash");function rt(e){return[e.system,...e.harnessInstructions,...e.skillInstructions,...e.hostInstructions??[]].map(t=>t.trim()).filter(Boolean).join(`
|
|
4
|
+
|
|
5
|
+
`)}s(rt,"materializeAgentPrompt");function it(e){let t=new Set,n=[...e].map(o=>{let l=o.name.trim();if(!l)throw new Error("Agent tool names cannot be empty.");if(t.has(l))throw new Error(`Duplicate agent tool: ${l}.`);if(t.add(l),!o.unavailableReason&&!o.executorAvailable)throw new Error(`Agent tool ${l} is declared as available without an executor.`);return{...o,name:l}}).sort((o,l)=>o.name.localeCompare(l.name)),r=n.filter(o=>!o.unavailableReason).map(o=>({name:o.name,description:o.description,inputSchema:o.inputSchema})),i=n.map(o=>({name:o.name,displayLabel:o.displayLabel??o.name,placement:o.placement,available:!o.unavailableReason,unavailableReason:o.unavailableReason??null}));return{byName:new Map(n.map(o=>[o.name,o])),tools:n,modelTools:r,capabilities:i,hash:g({modelTools:r,capabilities:i})}}s(it,"createAgentToolCatalogProjection");async function ot(e,t){let n=e.byName.get(t.name);if(!n)throw new Error(`Unknown agent tool: ${t.name}.`);if(n.unavailableReason)throw new Error(`Agent tool ${t.name} is unavailable: ${n.unavailableReason}`);if(!n.execute)throw new Error(`Agent tool ${t.name} has no executor.`);let r=n.validateArguments?n.validateArguments(t.arguments):t.arguments;return n.execute(r,t.context)}s(ot,"executeProjectedAgentTool");var F=class{static{s(this,"TaskSignals")}#e=new Map;notify(t){for(let n of[...this.#e.get(t)??[]])n()}subscribe(t,n){let r=this.#e.get(t);return r||this.#e.set(t,r=new Set),r.add(n),()=>{r.delete(n),r.size===0&&this.#e.delete(t)}}async wait(t){let n=s(()=>{},"wake"),r=0,i=s(()=>{r+=1,n()},"changed"),o=[...new Set(t.taskIds)].map(u=>this.subscribe(u,i)),l=setTimeout(i,Math.max(0,t.deadline-Date.now()));t.signal.addEventListener("abort",i);try{for(;;){t.signal.throwIfAborted();let u=r,h=await t.read();if(h!==null)return h;if(Date.now()>=t.deadline)return null;r===u&&await new Promise(c=>{n=c,(r!==u||t.signal.aborted)&&c()})}}finally{clearTimeout(l),t.signal.removeEventListener("abort",i);for(let u of o)u()}}},J=class{static{s(this,"TaskSerialExecutor")}#e=new Map;async run(t,n){let i=(this.#e.get(t)??Promise.resolve()).then(n),o=i.then(()=>{},()=>{});this.#e.set(t,o);try{return await i}finally{this.#e.get(t)===o&&this.#e.delete(t)}}};function Tt(e){return oe({runtime:L(e.ports),close:e.close})}s(Tt,"createAppServer");function oe(e){let t=!1;return{runtime:e.runtime,close:s(async()=>{t||(t=!0,await e.close?.())},"close")}}s(oe,"attachAppServer");async function St(e){try{await D({host:e.appServer.runtime,readable:e.readable,writable:e.writable})}finally{await e.appServer.close()}}s(St,"runAppServerJsonl");import{randomBytes as le}from"node:crypto";function jt(){return A()}s(jt,"appDataDir");function zt(e){return d(e).config}s(zt,"providersConfigPath");function Ht(e){return d(e).credentials}s(Ht,"providerSecretsConfigPath");function Nt(e){return d(e).key}s(Nt,"providerSecretsKeyPath");async function Ot(e){let t=d(e).token;return z(t,async()=>{let n=(await j(t))?.trim(),r=process.env.OPENPOND_APP_TOKEN||n||le(32).toString("base64url");return r!==n&&await E(t,r),{token:r,tokenFile:t}})}s(Ot,"ensureCapabilityToken");export{pe as a,me as b,fe as c,g as d,ge as e,be as f,xe as g,X as h,He as i,y as j,ye as k,ie as l,tt as m,rt as n,it as o,ot as p,F as q,J as r,Tt as s,St as t,jt as u,zt as v,Ht as w,Nt as x,Ot as y};
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { createRequire as __openpondCreateRequire } from "node:module"; var require = __openpondCreateRequire(import.meta.url);
|
|
2
|
-
import{d as F}from"./chunk-
|
|
2
|
+
import{d as F}from"./chunk-YNXFXNQM.js";import{a as o}from"./chunk-FTQLQJQV.js";import{spawn as nt,spawnSync as At}from"node:child_process";import{accessSync as vt,constants as Rt,existsSync as _t,promises as Bt}from"node:fs";import et from"node:path";var rt="Git is required for OpenPond app workspaces, but macOS reports Apple Command Line Tools are not installed. OpenPond skipped /usr/bin/git to avoid opening the Xcode installer prompt. Install Command Line Tools with `xcode-select --install`, install Git from Homebrew, or put a non-Apple git binary earlier on PATH.",T;function Lt(e){try{return _t(e)?(vt(e,Rt.X_OK),!0):!1}catch{return!1}}o(Lt,"isExecutable");function Ot(){let e=(process.env.PATH??"").split(et.delimiter).map(t=>t.trim()).filter(Boolean);for(let t of e){let n=et.join(t,"git");if(!(n==="/usr/bin/git"||n==="/bin/git")&&Lt(n))return n}return null}o(Ot,"firstNonAppleGitOnPath");function it(){let e=At("/usr/bin/xcode-select",["-p"],{encoding:"utf8",stdio:["ignore","pipe","pipe"]});return e.status===0&&!!e.stdout.trim()}o(it,"appleDeveloperToolsAvailable");function Dt(e){if(e!=="git"||process.platform!=="darwin")return{command:e};if(T!==void 0)return{command:T};let t=Ot();return t?(T=t,{command:t}):it()?(T="git",{command:"git"}):{error:rt}}o(Dt,"resolveWorkspaceCommand");function u(e,t,n,r={},i){return new Promise(s=>{let a=Dt(e);if("error"in a){s({code:1,stdout:"",stderr:a.error});return}let c=nt(a.command,t,{cwd:n,env:{...process.env,...r,GIT_TERMINAL_PROMPT:"0"},stdio:[i===void 0?"ignore":"pipe","pipe","pipe"]}),d=[],p=[];i!==void 0&&c.stdin?.end(i),c.stdout?.on("data",h=>d.push(h)),c.stderr?.on("data",h=>p.push(h)),c.on("error",h=>{s({code:1,stdout:"",stderr:h.message})}),c.on("close",h=>{s({code:h??1,stdout:Buffer.concat(d).toString("utf8"),stderr:Buffer.concat(p).toString("utf8")})})})}o(u,"runCommand");function Gt(e){return!!(e&&e.includes(rt.slice(0,80)))}o(Gt,"isMacOSGitDeveloperToolsMissing");async function Se(e){await Bt.mkdir(e,{recursive:!0});let t=await u("git",["--version"],e);if(t.code===0)return{ok:!0,command:T??"git",version:(t.stdout||t.stderr).trim()};let n=t.stderr.trim()||t.stdout.trim()||"Git is required for OpenPond app workspaces.";return{ok:!1,error:n,installAction:process.platform==="darwin"&&Gt(n)?"macos_command_line_tools":"manual_git_install"}}o(Se,"checkWorkspaceGitAvailability");function ye(){if(process.platform!=="darwin")return{ok:!1,error:"Apple Command Line Tools installation is only available on macOS."};if(it())return{ok:!0,message:"Apple Command Line Tools already appear to be installed."};try{return nt("/usr/bin/xcode-select",["--install"],{detached:!0,stdio:"ignore"}).unref(),{ok:!0,message:"Opened the Apple Command Line Tools installer."}}catch(e){return{ok:!1,error:e instanceof Error?e.message:String(e)}}}o(ye,"startMacOSCommandLineToolsInstall");import{promises as k}from"node:fs";import m from"node:path";var st=24e3,ot=8e4,It=512*1024,ct=15*1024*1024,Tt=20*1024*1024,Mt=new Set([".cache",".eggs",".git",".ipynb_checkpoints",".mypy_cache",".next",".nox",".nuxt",".openpond",".output",".parcel-cache",".pytest_cache",".pyre",".ruff_cache",".svelte-kit",".tox",".turbo",".venv","__pycache__","artifacts","build","coverage","dist","env","node_modules","out","site-packages","target","venv","volumes"]),zt=new Set([".7z",".avif",".db",".doc",".docx",".gif",".gz",".ico",".jpeg",".jpg",".mov",".mp4",".pdf",".png",".sqlite",".tar",".webp",".xls",".xlsm",".xlsx",".zip"]),$t=new Map([[".avif","image/avif"],[".gif","image/gif"],[".jpeg","image/jpeg"],[".jpg","image/jpeg"],[".png","image/png"],[".webp","image/webp"]]),Nt=new Map([[".m4v","video/x-m4v"],[".mov","video/quicktime"],[".mp4","video/mp4"],[".webm","video/webm"]]),Ht=new Set([".doc",".docx",".pdf"]);function Ut(e){return e.replace(/[^a-zA-Z0-9._-]/g,"-").slice(0,120)||"app"}o(Ut,"safeAppSegment");function N(e){if(!e)return"unknown";try{let t=new URL(e).hostname.toLowerCase();if(t==="github.com"||t.endsWith(".github.com"))return"github";if(t==="openpond.ai"||t.endsWith(".openpond.ai"))return"openpond"}catch{return"unknown"}return"local_git"}o(N,"sourceFromRemote");function $(e){return e.replace(/x-access-token:[^@]+@/g,"x-access-token:***@").replace(/Authorization:\s*Basic\s+[A-Za-z0-9+/=]+/gi,"Authorization: Basic ***")}o($,"redactRemoteUrl");async function G(e){try{return await k.access(e),!0}catch{return!1}}o(G,"pathExists");async function O(e){return await G(e)?(await u("git",["rev-parse","--git-dir"],e)).code===0:!1}o(O,"isGitRepo");function X(e){return e.length<=st?e:`${e.slice(0,st)}
|
|
3
3
|
|
|
4
4
|
[diff truncated]`}o(X,"truncatePatch");function jt(e){return e.length<=ot?e:`${e.slice(0,ot)}
|
|
5
5
|
|