openpond 0.2.4 → 0.2.6
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/chunks/{actions-command-F55CBR2K.js → actions-command-R5R3KR5Q.js} +1 -1
- package/dist/chunks/{app-layer-GNYLOBCX.js → app-layer-JNSKATX7.js} +1 -1
- package/dist/chunks/{app-server-runtime-HUJLAGR5.js → app-server-runtime-FV4KHBTY.js} +1 -1
- package/dist/chunks/{apps-HZ5JGBDR.js → apps-3TXUNF65.js} +1 -1
- package/dist/chunks/{chunk-KV2IXO2T.js → chunk-2LADHICK.js} +1 -1
- package/dist/chunks/{chunk-V5CGBGTX.js → chunk-37V5TT45.js} +1 -1
- package/dist/chunks/{chunk-SE4J5XAW.js → chunk-3ZEV5UKA.js} +1 -1
- package/dist/chunks/{chunk-GPZYIVFV.js → chunk-4HIHSG5M.js} +11 -11
- package/dist/chunks/{chunk-SFCXYOXL.js → chunk-EESJULVS.js} +1 -1
- package/dist/chunks/{chunk-WJVRQDHW.js → chunk-FESS4IR4.js} +245 -245
- package/dist/chunks/{chunk-EG3XB6M6.js → chunk-K4QLUFGX.js} +1 -1
- package/dist/chunks/{chunk-XAYIETBO.js → chunk-LYWUCJTV.js} +12 -12
- package/dist/chunks/{chunk-T5XCPX4P.js → chunk-NWI7H753.js} +2 -2
- package/dist/chunks/{chunk-GEANXBLX.js → chunk-OD6AGGH6.js} +1 -1
- package/dist/chunks/{chunk-AF57BF75.js → chunk-QUW7WK32.js} +1 -1
- package/dist/chunks/chunk-U6HOHOOI.js +2 -0
- package/dist/chunks/{chunk-I7G35U7K.js → chunk-ZKA3XSM7.js} +1 -1
- package/dist/chunks/{cli-OXPCJL6M.js → cli-ZZTJVJRT.js} +1 -1
- package/dist/chunks/{configuration-command-HAPIYG25.js → configuration-command-54D6TOEV.js} +1 -1
- package/dist/chunks/{core-commands-N37UZEVE.js → core-commands-F35UFIXE.js} +1 -1
- package/dist/chunks/{desktop-test-V7FBEG7U.js → desktop-test-U2MMP2NE.js} +1 -1
- package/dist/chunks/{extension-NEPOQ44P.js → extension-WY2RL5ZH.js} +1 -1
- package/dist/chunks/{help-HC4N5ZQC.js → help-VGDW6SBX.js} +1 -1
- package/dist/chunks/{opchat-C7XRN4ZW.js → opchat-QK2KIHN3.js} +1 -1
- package/dist/chunks/{organizations-LQGRZJ2V.js → organizations-MUDOF6VM.js} +1 -1
- package/dist/chunks/{profile-UWM24A7R.js → profile-FW5COIFH.js} +1 -1
- package/dist/chunks/{project-agent-2ME52ZJW.js → project-agent-G6GJOIVI.js} +1 -1
- package/dist/chunks/{sandbox-command-53L3ZICT.js → sandbox-command-H7INTQJZ.js} +1 -1
- package/dist/chunks/{sandbox-template-55HUM5H7.js → sandbox-template-7MXJQ3X4.js} +1 -1
- package/dist/chunks/{src-W6QOW5JR.js → src-4QYE5G3N.js} +3 -3
- package/dist/chunks/{src-VGW2UEMV.js → src-E7WA3OPU.js} +1 -1
- package/dist/chunks/{teams-bot-FHD2HCHN.js → teams-bot-ZDTMGPCU.js} +1 -1
- package/dist/chunks/{workspaces-UQ2GPN5U.js → workspaces-UB2HJGNE.js} +1 -1
- package/dist/cli.js +1 -1
- package/dist/index.js +1 -1
- package/dist/web/assets/{App-BoJQRfeu.js → App-DNZ5VhFd.js} +29 -29
- package/dist/web/assets/{AppDialog-rdfmJsGF.js → AppDialog-CtqbY289.js} +1 -1
- package/dist/web/assets/{AppTerminalPanel-CLW0kxtg.js → AppTerminalPanel-C1U1RKU6.js} +2 -2
- package/dist/web/assets/{AppsView-DxMXadnp.js → AppsView-BeGbrJkU.js} +1 -1
- package/dist/web/assets/{BrowserSidebar-BH_jl0JS.js → BrowserSidebar-XgQLeXw1.js} +1 -1
- package/dist/web/assets/{CartesianChart-oT_rMYpf.js → CartesianChart-Cp_-LaJY.js} +1 -1
- package/dist/web/assets/{CollaborationTabs-CukgFGE0.js → CollaborationTabs-BL6guh-3.js} +1 -1
- package/dist/web/assets/{CommandMenu-2btBTgOF.js → CommandMenu-B-DEtpTp.js} +1 -1
- package/dist/web/assets/{CommunityView-DMTREmN5.js → CommunityView-DcEhEMm_.js} +1 -1
- package/dist/web/assets/{ComposerCreateImproveStrip-3tN55cg9.js → ComposerCreateImproveStrip-C4mCZcKl.js} +1 -1
- package/dist/web/assets/{GetStartedView-CMHL24_w.js → GetStartedView-BUlaCO6a.js} +1 -1
- package/dist/web/assets/HostedModelLearningReview-CZyb95R_.js +1 -0
- package/dist/web/assets/{HostedModelLearningSettings-xqd2lSW3.js → HostedModelLearningSettings-D2o7rh0w.js} +1 -1
- package/dist/web/assets/{LabModelVersionDetailPage-Bpnya5DM.js → LabModelVersionDetailPage-Bb1XRvo_.js} +1 -1
- package/dist/web/assets/{LabSkillSidebar-BKZjScr8.js → LabSkillSidebar-CPucMztm.js} +1 -1
- package/dist/web/assets/LabsRoute-C_HDADl0.js +32 -0
- package/dist/web/assets/{MainChatThread-Bosxokt-.js → MainChatThread-CnXHxCy3.js} +2 -2
- package/dist/web/assets/{MainPane-Di-Rwe7x.js → MainPane-DjnT-kvm.js} +4 -4
- package/dist/web/assets/{MarkdownText-dK4SBPp_.js → MarkdownText-_zVYW4pN.js} +1 -1
- package/dist/web/assets/{Messages-ftYRMKYa.js → Messages-DxctstDI.js} +1 -1
- package/dist/web/assets/{NativeSkillSidebar-Cwo7JdB2.js → NativeSkillSidebar-DV4AGiCD.js} +1 -1
- package/dist/web/assets/{NewExperienceSwitcher-C1_JzTq2.js → NewExperienceSwitcher-CZCLJj99.js} +1 -1
- package/dist/web/assets/{NewProjectDialog-CxP6v6YW.js → NewProjectDialog-CQSipZ5d.js} +1 -1
- package/dist/web/assets/{OutputsPage-DL21_Alp.js → OutputsPage-aPJP4mTV.js} +1 -1
- package/dist/web/assets/{ProjectsPage-BO9VyvMA.js → ProjectsPage-CyThuXQv.js} +1 -1
- package/dist/web/assets/{RightChatPanelStack-DaqAnzdR.js → RightChatPanelStack-jsP9CukH.js} +1 -1
- package/dist/web/assets/{RightSidebarHomePanel-PbUG12AO.js → RightSidebarHomePanel-CtH0vZ36.js} +1 -1
- package/dist/web/assets/{ScheduledWorkPage-BhL-cXML.js → ScheduledWorkPage-BY_4jFm7.js} +1 -1
- package/dist/web/assets/{SettingsView-D6-s7G88.js → SettingsView-ZPnupcpg.js} +3 -3
- package/dist/web/assets/{TeamChatView-DbS1N-fo.js → TeamChatView-DWjwVxMp.js} +1 -1
- package/dist/web/assets/{TerminalOverlay-CphyBXJR.js → TerminalOverlay-DxuUGKYH.js} +1 -1
- package/dist/web/assets/{TrainingCreationPanel-Czsdraix.js → TrainingCreationPanel-CjIPEoTX.js} +1 -1
- package/dist/web/assets/{TrainingDraftPanel-Bq3B5pUk.js → TrainingDraftPanel-CxevAlkr.js} +1 -1
- package/dist/web/assets/{UsageSettingsSection-B74FNwaP.js → UsageSettingsSection-CY1lQB_g.js} +1 -1
- package/dist/web/assets/{WorkSidebarPanel-BgaK4XSg.js → WorkSidebarPanel-DMsiwOSi.js} +1 -1
- package/dist/web/assets/{WorkspaceDiffPanel-C3seHnVY.js → WorkspaceDiffPanel-HdfItqu2.js} +3 -3
- package/dist/web/assets/{WorkspaceEnvironmentMenu-DPghQUdv.js → WorkspaceEnvironmentMenu-7DSF_BpI.js} +1 -1
- package/dist/web/assets/{WorkspaceGitDialogs-D8c6Okb_.js → WorkspaceGitDialogs-Ck8BzH11.js} +1 -1
- package/dist/web/assets/{WorkspaceMonacoEditor-2kjRFf4l.js → WorkspaceMonacoEditor-gsEP4W37.js} +3 -3
- package/dist/web/assets/{arrow-up-right-C5X-29oa.js → arrow-up-right-BK6EpHpC.js} +1 -1
- package/dist/web/assets/{chat-file-links-Bmz9kVct.js → chat-file-links-BQe708gU.js} +1 -1
- package/dist/web/assets/chevron-up-CHxYR4AX.js +1 -0
- package/dist/web/assets/{clipboard-fvHMXPWa.js → clipboard-DOmCP7eR.js} +1 -1
- package/dist/web/assets/{cloud-upload-BAycsdHL.js → cloud-upload-DLtawDYW.js} +1 -1
- package/dist/web/assets/{cssMode-Yis679a5.js → cssMode-C0Qw8i_8.js} +1 -1
- package/dist/web/assets/{folder-open-bii4KUCv.js → folder-open-B_Ayxxo8.js} +1 -1
- package/dist/web/assets/{folder-plus-B0B7mUCx.js → folder-plus-CPgtt3pN.js} +1 -1
- package/dist/web/assets/{git-commit-horizontal-B6yTdtnB.js → git-commit-horizontal-23xCJjd8.js} +1 -1
- package/dist/web/assets/{htmlMode-DHeBSKVF.js → htmlMode-DuQ7zaau.js} +1 -1
- package/dist/web/assets/{index-667pXXsu.js → index-BoaTQ0Rb.js} +1 -1
- package/dist/web/assets/{info-NCOESX3I.js → info-CQ2kJJ5E.js} +1 -1
- package/dist/web/assets/{jsonMode-C4oxy1cU.js → jsonMode-DVQSEPUy.js} +1 -1
- package/dist/web/assets/{lspLanguageFeatures-CLj3WGZW.js → lspLanguageFeatures-DWKH3min.js} +1 -1
- package/dist/web/assets/{minimize-2-DtI1vgd7.js → minimize-2-1M-fFBeP.js} +1 -1
- package/dist/web/assets/{monaco.contribution-DZPgekIQ.js → monaco.contribution-B5Jz7f4W.js} +2 -2
- package/dist/web/assets/{monaco.contribution-DhVPJ-oY.js → monaco.contribution-DB7pp5Y-.js} +2 -2
- package/dist/web/assets/{monaco.contribution-Ddw-TznO.js → monaco.contribution-jXX7-l5p.js} +2 -2
- package/dist/web/assets/{monaco.contribution-DrW6DjWP.js → monaco.contribution-ytVV-s22.js} +2 -2
- package/dist/web/assets/{play-DB3XFAnG.js → play-D9jaK5MP.js} +1 -1
- package/dist/web/assets/{python-DLyUeEeL.js → python-_yRitN2I.js} +1 -1
- package/dist/web/assets/{refresh-cw-0zSLZtfp.js → refresh-cw-DZHqZGos.js} +1 -1
- package/dist/web/assets/{save-BCZlshOA.js → save-DOT3oYfU.js} +1 -1
- package/dist/web/assets/{square-CRytZWR_.js → square-D_1V6onE.js} +1 -1
- package/dist/web/assets/{toggleHighContrast-TXg0rI_R.js → toggleHighContrast-C06C-luq.js} +1 -1
- package/dist/web/assets/{tsMode-Bj1019AY.js → tsMode-CTMYvh-R.js} +1 -1
- package/dist/web/assets/{upload-CnE9u7GB.js → upload-EAAHd0Nx.js} +1 -1
- package/dist/web/assets/{useLocalAgentSchedules-qI87RHVI.js → useLocalAgentSchedules-DBsx4aIY.js} +1 -1
- package/dist/web/assets/{wifi-off-CfuwRBx7.js → wifi-off-DYRTrfYa.js} +1 -1
- package/dist/web/assets/{workers-CXdUI7wU.js → workers-DAytqxd3.js} +1 -1
- package/dist/web/assets/{yaml-AP8aiwLm.js → yaml-iZnWWABr.js} +1 -1
- package/dist/web/index.html +1 -1
- package/package.json +1 -1
- package/dist/chunks/chunk-NVGMZ2IN.js +0 -2
- package/dist/web/assets/HostedModelLearningReview-CqkSelkC.js +0 -1
- package/dist/web/assets/LabsRoute-BhPFmA_Z.js +0 -32
- package/dist/web/assets/chevron-up-NbP9vY4E.js +0 -1
package/dist/web/assets/{useLocalAgentSchedules-qI87RHVI.js → useLocalAgentSchedules-DBsx4aIY.js}
RENAMED
|
@@ -1 +1 @@
|
|
|
1
|
-
import{c as v,o as s}from"./App-
|
|
1
|
+
import{c as v,o as s}from"./App-DNZ5VhFd.js";import{r as c}from"./index-BoaTQ0Rb.js";const m=[["path",{d:"M3 12a9 9 0 1 0 9-9 9.75 9.75 0 0 0-6.74 2.74L3 8",key:"1357e3"}],["path",{d:"M3 3v5h5",key:"1xhq8a"}]],x=v("rotate-ccw",m),I=5e3;function C(t){const[S,n]=c.useState([]),[y,r]=c.useState(!1),[p,l]=c.useState(null),[o,w]=c.useState(()=>new Set);c.useEffect(()=>{if(!t){n([]),l(null),r(!1);return}const e=t;let a=!1;async function d(g){if(!a){g&&r(!0);try{const h=await s.localAgentSchedules(e);if(a)return;n(h.schedules),l(null)}catch(h){a||l(f(h))}finally{!a&&g&&r(!1)}}}d(!0);const u=window.setInterval(()=>{d(!1)},I);return()=>{a=!0,window.clearInterval(u)}},[t]);async function L(){if(t){r(!0);try{const e=await s.syncLocalAgentSchedules(t);n(e.schedules),l(null)}catch(e){l(f(e))}finally{r(!1)}}}async function A(e){if(!(!t||o.has(e.id))){i(e.id,!0);try{await s.runLocalAgentSchedule(t,e.id);const a=await s.localAgentSchedules(t);n(a.schedules),l(null)}catch(a){l(f(a))}finally{i(e.id,!1)}}}async function E(e){if(!(!t||o.has(e.id))){i(e.id,!0);try{await s.patchLocalAgentSchedule(t,e.id,{enabled:!e.enabled});const a=await s.localAgentSchedules(t);n(a.schedules),l(null)}catch(a){l(f(a))}finally{i(e.id,!1)}}}function i(e,a){w(d=>{const u=new Set(d);return a?u.add(e):u.delete(e),u})}return{error:p,loading:y,pendingScheduleIds:o,refresh:L,run:A,schedules:S,toggle:E}}function f(t){return t instanceof Error?t.message:String(t)}export{x as R,C as u};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{c as a}from"./App-
|
|
1
|
+
import{c as a}from"./App-DNZ5VhFd.js";const e=[["path",{d:"M10.268 21a2 2 0 0 0 3.464 0",key:"vwvbt9"}],["path",{d:"M3.262 15.326A1 1 0 0 0 4 17h16a1 1 0 0 0 .74-1.673C19.41 13.956 18 12.499 18 8A6 6 0 0 0 6 8c0 4.499-1.411 5.956-2.738 7.326",key:"11g9vi"}]],y=a("bell",e);const t=[["path",{d:"M10.268 21a2 2 0 0 0 3.464 0",key:"vwvbt9"}],["path",{d:"M17 17H4a1 1 0 0 1-.74-1.673C4.59 13.956 6 12.499 6 8a6 6 0 0 1 .258-1.742",key:"178tsu"}],["path",{d:"m2 2 20 20",key:"1ooewy"}],["path",{d:"M8.668 3.01A6 6 0 0 1 18 8c0 2.687.77 4.653 1.707 6.05",key:"1hqiys"}]],c=a("bell-off",t);const o=[["path",{d:"M15 12h-5",key:"r7krc0"}],["path",{d:"M15 8h-5",key:"1khuty"}],["path",{d:"M19 17V5a2 2 0 0 0-2-2H4",key:"zz82l3"}],["path",{d:"M8 21h12a2 2 0 0 0 2-2v-1a1 1 0 0 0-1-1H11a1 1 0 0 0-1 1v1a2 2 0 1 1-4 0V5a2 2 0 1 0-4 0v2a1 1 0 0 0 1 1h3",key:"1ph1d7"}]],k=a("scroll-text",o);const h=[["path",{d:"M12 20h.01",key:"zekei9"}],["path",{d:"M8.5 16.429a5 5 0 0 1 7 0",key:"1bycff"}],["path",{d:"M5 12.859a10 10 0 0 1 5.17-2.69",key:"1dl1wf"}],["path",{d:"M19 12.859a10 10 0 0 0-2.007-1.523",key:"4k23kn"}],["path",{d:"M2 8.82a15 15 0 0 1 4.177-2.643",key:"1grhjp"}],["path",{d:"M22 8.82a15 15 0 0 0-11.288-3.764",key:"z3jwby"}],["path",{d:"m2 2 20 20",key:"1ooewy"}]],p=a("wifi-off",h);export{c as B,k as S,p as W,y as a};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{j7 as c}from"./WorkspaceMonacoEditor-
|
|
1
|
+
import{j7 as c}from"./WorkspaceMonacoEditor-gsEP4W37.js";import"./toggleHighContrast-C06C-luq.js";function a(e,o){const r=globalThis.MonacoEnvironment;if(r?.createTrustedTypesPolicy)try{return r.createTrustedTypesPolicy(e,o)}catch(t){console.error(t);return}try{return globalThis.trustedTypes?.createPolicy(e,o)}catch(t){console.error(t);return}}let n;typeof self=="object"&&self.constructor&&self.constructor.name==="DedicatedWorkerGlobalScope"&&globalThis.workerttPolicy!==void 0?n=globalThis.workerttPolicy:n=a("defaultWorkerFactory",{createScriptURL:e=>e});function l(e){const o=e.label,r=globalThis.MonacoEnvironment;if(r){if(typeof r.getWorker=="function")return r.getWorker("workerMain.js",o);if(typeof r.getWorkerUrl=="function"){const t=r.getWorkerUrl("workerMain.js",o);return new Worker(n?n.createScriptURL(t):t,{name:o,type:"module"})}}if(e.createWorker)return e.createWorker();throw new Error("You must define a function MonacoEnvironment.getWorkerUrl or MonacoEnvironment.getWorker")}function u(e){const o=Promise.resolve(l({label:e.label??"monaco-editor-worker",moduleId:e.moduleId,createWorker:e.createWorker})).then(r=>(r.postMessage("ignore"),r.postMessage(e.createData),r));return c.createWebWorker({worker:o,host:e.host,keepIdleModels:e.keepIdleModels})}export{u as c};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{l as e}from"./WorkspaceMonacoEditor-
|
|
1
|
+
import{l as e}from"./WorkspaceMonacoEditor-gsEP4W37.js";import"./toggleHighContrast-C06C-luq.js";import"./index-BoaTQ0Rb.js";const r={comments:{lineComment:"#"},brackets:[["{","}"],["[","]"],["(",")"]],autoClosingPairs:[{open:"{",close:"}"},{open:"[",close:"]"},{open:"(",close:")"},{open:'"',close:'"'},{open:"'",close:"'"}],surroundingPairs:[{open:"{",close:"}"},{open:"[",close:"]"},{open:"(",close:")"},{open:'"',close:'"'},{open:"'",close:"'"}],folding:{offSide:!0},onEnterRules:[{beforeText:/:\s*$/,action:{indentAction:e.IndentAction.Indent}}]},l={tokenPostfix:".yaml",brackets:[{token:"delimiter.bracket",open:"{",close:"}"},{token:"delimiter.square",open:"[",close:"]"}],keywords:["true","True","TRUE","false","False","FALSE","null","Null","Null","~"],numberInteger:/(?:0|[+-]?[0-9]+)/,numberFloat:/(?:0|[+-]?[0-9]+)(?:\.[0-9]+)?(?:e[-+][1-9][0-9]*)?/,numberOctal:/0o[0-7]+/,numberHex:/0x[0-9a-fA-F]+/,numberInfinity:/[+-]?\.(?:inf|Inf|INF)/,numberNaN:/\.(?:nan|Nan|NAN)/,numberDate:/\d{4}-\d\d-\d\d([Tt ]\d\d:\d\d:\d\d(\.\d+)?(( ?[+-]\d\d?(:\d\d)?)|Z)?)?/,escapes:/\\(?:[btnfr\\"']|[0-7][0-7]?|[0-3][0-7]{2})/,tokenizer:{root:[{include:"@whitespace"},{include:"@comment"},[/%[^ ]+.*$/,"meta.directive"],[/---/,"operators.directivesEnd"],[/\.{3}/,"operators.documentEnd"],[/[-?:](?= )/,"operators"],{include:"@anchor"},{include:"@tagHandle"},{include:"@flowCollections"},{include:"@blockStyle"},[/@numberInteger(?![ \t]*\S+)/,"number"],[/@numberFloat(?![ \t]*\S+)/,"number.float"],[/@numberOctal(?![ \t]*\S+)/,"number.octal"],[/@numberHex(?![ \t]*\S+)/,"number.hex"],[/@numberInfinity(?![ \t]*\S+)/,"number.infinity"],[/@numberNaN(?![ \t]*\S+)/,"number.nan"],[/@numberDate(?![ \t]*\S+)/,"number.date"],[/(".*?"|'.*?'|[^#'"]*?)([ \t]*)(:)( |$)/,["type","white","operators","white"]],{include:"@flowScalars"},[/.+?(?=(\s+#|$))/,{cases:{"@keywords":"keyword","@default":"string"}}]],object:[{include:"@whitespace"},{include:"@comment"},[/\}/,"@brackets","@pop"],[/,/,"delimiter.comma"],[/:(?= )/,"operators"],[/(?:".*?"|'.*?'|[^,\{\[]+?)(?=: )/,"type"],{include:"@flowCollections"},{include:"@flowScalars"},{include:"@tagHandle"},{include:"@anchor"},{include:"@flowNumber"},[/[^\},]+/,{cases:{"@keywords":"keyword","@default":"string"}}]],array:[{include:"@whitespace"},{include:"@comment"},[/\]/,"@brackets","@pop"],[/,/,"delimiter.comma"],{include:"@flowCollections"},{include:"@flowScalars"},{include:"@tagHandle"},{include:"@anchor"},{include:"@flowNumber"},[/[^\],]+/,{cases:{"@keywords":"keyword","@default":"string"}}]],multiString:[[/^( +).+$/,"string","@multiStringContinued.$1"]],multiStringContinued:[[/^( *).+$/,{cases:{"$1==$S2":"string","@default":{token:"@rematch",next:"@popall"}}}]],whitespace:[[/[ \t\r\n]+/,"white"]],comment:[[/#.*$/,"comment"]],flowCollections:[[/\[/,"@brackets","@array"],[/\{/,"@brackets","@object"]],flowScalars:[[/"([^"\\]|\\.)*$/,"string.invalid"],[/'([^'\\]|\\.)*$/,"string.invalid"],[/'[^']*'/,"string"],[/"/,"string","@doubleQuotedString"]],doubleQuotedString:[[/[^\\"]+/,"string"],[/@escapes/,"string.escape"],[/\\./,"string.escape.invalid"],[/"/,"string","@pop"]],blockStyle:[[/[>|][0-9]*[+-]?$/,"operators","@multiString"]],flowNumber:[[/@numberInteger(?=[ \t]*[,\]\}])/,"number"],[/@numberFloat(?=[ \t]*[,\]\}])/,"number.float"],[/@numberOctal(?=[ \t]*[,\]\}])/,"number.octal"],[/@numberHex(?=[ \t]*[,\]\}])/,"number.hex"],[/@numberInfinity(?=[ \t]*[,\]\}])/,"number.infinity"],[/@numberNaN(?=[ \t]*[,\]\}])/,"number.nan"],[/@numberDate(?=[ \t]*[,\]\}])/,"number.date"]],tagHandle:[[/\![^ ]*/,"tag"]],anchor:[[/[&*][^ ]+/,"namespace"]]}};export{r as conf,l as language};
|
package/dist/web/index.html
CHANGED
|
@@ -7,7 +7,7 @@
|
|
|
7
7
|
<link rel="icon" type="image/png" sizes="16x16" href="./favicon-16x16.png" />
|
|
8
8
|
<link rel="apple-touch-icon" href="./openpond-icon.png" />
|
|
9
9
|
<title>OpenPond App</title>
|
|
10
|
-
<script type="module" crossorigin src="./assets/index-
|
|
10
|
+
<script type="module" crossorigin src="./assets/index-BoaTQ0Rb.js"></script>
|
|
11
11
|
<link rel="stylesheet" crossorigin href="./assets/index-BGMzUaup.css">
|
|
12
12
|
</head>
|
|
13
13
|
<body>
|
package/package.json
CHANGED
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
import { createRequire as __openpondCreateRequire } from "node:module"; var require = __openpondCreateRequire(import.meta.url);
|
|
2
|
-
import{Ab as Ie,Bb as F,Hb as ye,Jb as B,Ka as X,Kb as Ae,Ma as Y,Mb as Le,Oa as Z,Pa as V,Pb as Ce,Qa as ee,Qb as je,Ra as ie,Rb as Ee,Sa as te,Sb as N,Ua as ne,Ub as Te,Va as re,Vb as De,Wa as ae,Ya as oe,_a as se,a as m,ab as ce,cb as y,db as u,eb as de,fb as me,gb as le,hb as ue,ib as pe,kb as ge,lb as he,mb as fe,ob as be,pb as xe,qb as ve,rb as we,sb as P,tb as Se,ub as Re,vb as _,wa as H,wb as I,yb as _e,zb as ke}from"./chunk-XAYIETBO.js";import{a,b as E,c as l,e as C,l as k}from"./chunk-HZP5U2AA.js";import{b as e}from"./chunk-ES2ISFJC.js";import{a as c}from"./chunk-FTQLQJQV.js";var M=e.discriminatedUnion("kind",[e.object({kind:e.literal("manual"),identity:a}).strict(),e.object({kind:e.literal("schedule"),scheduledAt:l}).strict(),e.object({kind:e.literal("approved_count"),checkedAt:l}).strict()]),$=e.object({schemaVersion:e.literal("openpond.learningChain.v1"),id:a,revision:e.number().int().positive(),modelProjectId:a,activeIterationId:a.nullable(),acceptedParent:P.nullable().optional(),latestIterationId:a,lastReservedAt:l.nullable(),updatedAt:l}).strict(),G=e.object({eligible:e.number().int().nonnegative(),awaitingReview:e.number().int().nonnegative(),excluded:e.number().int().nonnegative(),consumed:e.number().int().nonnegative()}).strict(),qe=e.object({schemaVersion:e.literal("openpond.learningConsumption.v1"),id:a,revision:e.literal(1),chainId:a,iterationId:a,evidence:u,decision:u,reservedAt:l}).strict(),Pe=e.object({schemaVersion:e.literal("openpond.learningIterationReservation.v1"),id:a,revision:e.number().int().positive(),chainId:a,iterationId:a,policy:u,trigger:M,requestHash:E,outcome:e.enum(["reserved","waiting_for_data","waiting_for_review"]),counts:G,budget:e.object({maximumSpendUsd:e.number().nonnegative(),reservedSpendUsd:e.number().nonnegative(),settledSpendUsd:e.number().nonnegative(),settledAt:l.nullable()}).strict(),createdAt:l,updatedAt:l}).strict();var v=e.object({operationId:a}),Xe=v.extend({action:e.literal("import_intake"),format:Te,files:e.array(De).min(1).max(100),expectedPreviewHash:e.string().length(64),name:e.string().trim().min(1).max(500),recordIds:e.array(e.string().min(1).max(200)).min(1).max(90)}).strict(),O=v.extend({action:e.literal("publish"),expectedRevision:e.number().int().nonnegative(),finalizeDraft:N.optional()}),Oe=e.discriminatedUnion("kind",[O.extend({kind:e.literal("asset"),content:ke}).strict(),O.extend({kind:e.literal("definition"),content:de}).strict(),O.extend({kind:e.literal("reward"),content:Z}).strict(),O.extend({kind:e.literal("binding"),content:ee}).strict(),O.extend({kind:e.literal("source"),content:le}).strict(),O.extend({kind:e.literal("policy"),content:ve}).strict()]),Ye=v.extend({action:e.literal("publish_resources"),finalizeDraft:N.optional(),resources:e.array(e.union(Oe.options.map(t=>t.omit({operationId:!0,action:!0,finalizeDraft:!0})))).min(1).max(20)}).strict(),Ze=v.extend({action:e.literal("submit_example"),example:pe}).strict(),ei=v.extend({action:e.literal("submit_feedback"),feedback:he}).strict(),ii=v.extend({action:e.literal("apply_correction"),feedbackId:a,evidence:u}).strict(),ti=v.extend({action:e.literal("resolve_feedback"),feedbackId:a,expectedRevision:e.number().int().positive(),disposition:e.enum(["applied","rejected","superseded"]),decision:u.nullable(),note:e.string().max(2e4)}).strict(),ni=v.extend({action:e.literal("queue_grade"),evidence:u,target:e.enum(["observed","proposed_target"]),proposedTarget:y.nullable(),timeoutMs:e.number().int().min(100).max(3e5).default(3e4),maximumSpendUsd:e.number().nonnegative().max(1e3).default(0)}).strict(),ri=v.extend({action:e.literal("review"),evidence:u,expectedRevision:e.number().int().nonnegative(),disposition:e.enum(["approved","rejected","pending"]),targetApproval:e.enum(["approved","rejected","pending","not_required"]),approvedTarget:y.nullable(),observedGradeId:a.nullable(),targetGradeId:a.nullable(),note:e.string().max(2e4)}).strict(),ai=v.extend({action:e.literal("seal_batch"),batchId:a,taskDefinition:u,purpose:e.enum(["supervised_training","reward_training","evaluation"]),evidence:e.array(u).min(1).max(1e4),decisions:e.array(u).min(1).max(1e4)}).strict(),oi=v.extend({action:e.literal("cancel_grade"),gradeId:a,expectedRevision:e.number().int().positive()}).strict(),si=v.extend({action:e.literal("save_draft"),expectedRevision:e.number().int().nonnegative(),draft:je}).strict(),ci=v.extend({action:e.literal("archive_draft"),draft:u}).strict(),di=v.extend({action:e.literal("queue_reward_check"),draft:u,timeoutMs:e.number().int().min(100).max(3e5).default(3e4),maximumSpendUsd:e.number().nonnegative().max(1e3).default(0)}).strict(),mi=v.extend({action:e.literal("cancel_reward_check"),checkId:a,expectedRevision:e.number().int().positive()}).strict(),li=v.extend({action:e.literal("publish_checked_reward"),draft:u,checkId:a,checkRevision:e.number().int().positive()}).strict(),ui=v.extend({action:e.literal("reserve_iteration"),policy:u,trigger:M}).strict(),pi=v.extend({action:e.literal("cancel_iteration_reservation"),iterationId:a,expectedRevision:e.number().int().positive()}).strict(),gi=v.extend({action:e.literal("cancel_iteration"),iterationId:a,expectedRevision:e.number().int().positive()}).strict(),hi=v.extend({action:e.literal("retry_iteration_dispatch"),iterationId:a,expectedRevision:e.number().int().positive()}).strict(),He=e.union([li,Xe,gi,hi,pi,ui,di,mi,si,ci,Oe,Ye,Ze,ei,ii,ti,ni,ri,ai,oi]);var fi=e.object({provider:a,protocol:a,payload:y}).strict(),Fe=e.object({schemaVersion:e.literal("openpond.learningIterationDispatch.v1"),id:a,revision:e.number().int().positive(),iterationId:a,chainId:a,policy:u,batch:u,state:e.enum(["preparing","prepared","submitted","settled","blocked"]),submission:fi.nullable(),submissionHash:e.string().regex(/^[a-f0-9]{64}$/).nullable(),submissionStartedAt:l.nullable(),execution:C.nullable(),terminalReceipt:C.nullable(),cancelRequestedAt:l.nullable(),leaseOwner:a.nullable(),leaseGeneration:e.number().int().nonnegative(),leaseExpiresAt:l.nullable(),consecutiveFailures:e.number().int().nonnegative(),nextAttemptAt:l.nullable(),lastError:e.string().max(2e4).nullable(),createdAt:l,updatedAt:l}).strict().superRefine((t,i)=>{(!!t.submission!=!!t.submissionHash||t.submission&&k(t.submission)!==t.submissionHash)&&i.addIssue({code:"custom",path:["submissionHash"],message:"Dispatch submission identity changed."}),t.submissionStartedAt&&!t.submission&&i.addIssue({code:"custom",path:["submission"],message:"A started dispatch requires its persisted submission."}),t.execution&&!t.submissionStartedAt&&i.addIssue({code:"custom",path:["execution"],message:"An execution requires a started dispatch."}),["prepared","submitted"].includes(t.state)&&!t.submission&&i.addIssue({code:"custom",path:["state"],message:"A prepared dispatch requires its immutable submission."}),t.state==="submitted"&&!t.execution&&i.addIssue({code:"custom",path:["execution"],message:"A submitted dispatch requires an observed execution."}),t.state==="settled"&&t.submissionStartedAt&&!t.terminalReceipt&&i.addIssue({code:"custom",path:["terminalReceipt"],message:"A started dispatch requires terminal receipt evidence before settlement."}),!!t.leaseOwner!=!!t.leaseExpiresAt&&i.addIssue({code:"custom",path:["leaseOwner"],message:"Dispatch lease owner and expiration must be recorded together."})}),Bi=e.object({scope:a,dispatchId:a,submissionHash:e.string().regex(/^[a-f0-9]{64}$/),execution:C.nullable(),status:e.enum(["running","evaluating","succeeded","failed","cancelled"]),spendUsd:e.number().nonnegative(),cleanupComplete:e.boolean(),receipt:C.nullable(),evaluation:C.nullable(),candidate:C.nullable(),failure:e.string().max(2e4).nullable()}).strict().superRefine((t,i)=>{["succeeded","failed","cancelled"].includes(t.status)&&(!t.cleanupComplete||!t.receipt)&&i.addIssue({code:"custom",path:["receipt"],message:"Terminal execution requires an authoritative cleanup receipt."}),t.status!=="cancelled"&&!t.execution&&i.addIssue({code:"custom",path:["execution"],message:"The execution identity is required."}),t.candidate&&(t.status!=="succeeded"||!t.evaluation)&&i.addIssue({code:"custom",path:["candidate"],message:"A candidate requires successful retained evaluation."})});var Be=e.object({schemaVersion:e.literal("openpond.learningSchedule.v1"),id:a,revision:e.number().int().positive(),policy:u,modelProjectId:a,executionOwner:e.enum(["local","hosted"]),state:e.enum(["scheduled","disabled","blocked"]),intervalSeconds:e.number().int().min(60).max(31536e3).nullable(),calendar:ce.nullable().default(null),nextRunAt:l.nullable(),lastFire:u.nullable(),consecutiveFailures:e.number().int().nonnegative(),nextAttemptAt:l.nullable(),lastError:e.string().max(2e4).nullable(),createdAt:l,updatedAt:l}).strict().superRefine((t,i)=>{t.state!=="disabled"&&(!t.intervalSeconds&&!t.calendar||!t.nextRunAt)&&i.addIssue({code:"custom",path:["nextRunAt"],message:"An active timer must retain its cadence and due time."}),t.state==="disabled"&&t.nextRunAt&&i.addIssue({code:"custom",path:["nextRunAt"],message:"A disabled timer cannot have a pending occurrence."}),t.intervalSeconds&&t.calendar&&i.addIssue({code:"custom",path:["calendar"],message:"A timer uses either an interval or a nightly calendar."})}),Ue=e.object({schemaVersion:e.literal("openpond.learningScheduleFire.v1"),id:a,revision:e.literal(1),scheduleId:a,policy:u,scheduledAt:l,coalescedThroughAt:l,coalescedCount:e.number().int().nonnegative(),outcome:e.enum(["reserved","waiting_for_data","waiting_for_review","skipped"]),reason:e.enum(["active_iteration","cooldown","daily_budget"]).nullable(),iteration:e.object({id:a,revision:e.number().int().positive()}).strict().nullable(),createdAt:l,contentHash:E}).strict().superRefine((t,i)=>{(t.outcome==="skipped"!=!!t.reason||t.outcome!=="skipped"!=!!t.iteration)&&i.addIssue({code:"custom",path:["outcome"],message:"A fire retains either its reservation or its explicit skip reason."})});function $e(t){H(t,262144);let i=Ce.parse(t.fields),r=t.base?V.parse(t.base):null;if(r&&r.id!==t.id)throw new m("reward_authoring_base_mismatch",422);let o=i.fixtures?.length?F({text:JSON.stringify(i.fixtures),path:"reward-fixtures.json",mediaType:"application/json",visibility:"verifier"}):null,n=null,s,d;if(i.kind==="custom_verifier")n=F({text:i.code,path:"verifier.mjs",mediaType:"application/javascript",visibility:"verifier"}),s={kind:i.kind,verifierRef:n.asset,exportName:i.exportName,timeoutMs:T(i.timeout,"Time limit"),networkPolicy:"none"};else if(i.kind==="model_judge"||i.kind==="human"){if(!i.rubric.trim())throw new m("reward_rubric_required",422,"Write the rubric before checking or publishing this Reward.");if(n=F({text:i.rubric,path:"rubric.md",mediaType:"text/markdown",visibility:"verifier"}),i.kind==="human")s={kind:i.kind,rubricRef:n.asset,reviewerRole:i.reviewerRole};else{let h={providerId:i.providerId,modelId:i.modelId,revision:i.modelRevision.trim()||null},x=T(i.temperature,"Temperature"),w=r?.implementation,b=w?.kind==="model_judge"&&w.rubricRef.contentHash===n.asset.contentHash&&w.model?.providerId===h.providerId&&w.model?.modelId===h.modelId&&w.model?.revision===h.revision&&(w.temperature??0)===x&&r?.fixtureSetRef?.contentHash===o?.asset.contentHash;s={kind:i.kind,rubricRef:n.asset,model:h,temperature:x,calibrationStatus:b?w.calibrationStatus:"pending"},b&&(d=r?.calibrationCheckRef)}}else i.kind==="learned_model"?(D(i.inputContract,"Model input contract"),n=F({text:i.inputContract,path:"input-contract.json",mediaType:"application/json",visibility:"verifier"}),s={kind:i.kind,modelVersion:{id:i.learnedId,contentHash:i.learnedHash},inputContract:n.asset}):i.kind==="state"?s={kind:i.kind,config:{fields:Ve(i.fields)}}:i.kind==="content"?s={kind:i.kind,config:{outputField:i.outputField,expectedField:i.expectedField,...i.expectedValue?{expectedValue:i.expectedValue}:{}}}:i.kind==="schema"?s={kind:i.kind,config:{jsonSchema:D(i.schema,"Output schema")}}:i.kind==="artifact"?s={kind:i.kind,config:{refIncludes:i.reference}}:s={kind:i.kind,config:{requiredEvents:Ve(i.events)}};let g=[...n?[n]:[],...o?[o]:[]];return{reward:ne({schemaVersion:"openpond.rewardRelease.v1",id:t.id,revision:(r?.revision??0)+1,name:i.name,description:i.description,implementation:s,rawScore:i.kind==="learned_model"?{minimum:T(i.minimum,"Minimum score"),maximum:T(i.maximum,"Maximum score")}:{minimum:0,maximum:1},assets:g.map(h=>h.asset),...o?{fixtureSetRef:o.asset}:{},...d?{calibrationCheckRef:d}:{}}),assets:g}}c($e,"compileRewardAuthoring");function D(t,i){try{let r=JSON.parse(t);return H(r,131072),y.parse(r)}catch{throw new m("reward_authoring_json_invalid",422,`${i} must be a JSON object.`)}}c(D,"parseRewardAuthoringObject");function T(t,i){let r=Number(t);if(!t.trim()||!Number.isFinite(r))throw new m("reward_authoring_number_invalid",422,`${i} must be a finite number.`);return r}c(T,"authoringNumber");function Ve(t){return t.split(",").map(i=>i.trim()).filter(Boolean)}c(Ve,"split");var Je=e.object({id:a,name:e.string().trim().min(1).max(500),input:y,output:y,expectedOutput:y.nullable(),evaluatorContext:y.nullable(),artifactRefs:e.array(a).max(100),runtimeEventRefs:e.array(a).max(100),infrastructureError:e.string().max(2e4).nullable(),expected:e.discriminatedUnion("status",[e.object({status:e.literal("scored"),minimum:e.number().finite(),maximum:e.number().finite(),passed:e.boolean().nullable()}).strict(),e.object({status:e.enum(["pending","unavailable","failed"])}).strict()])}).strict().superRefine((t,i)=>{t.expected.status==="scored"&&t.expected.minimum>t.expected.maximum&&i.addIssue({code:"custom",path:["expected"],message:"Expected score minimum must not exceed maximum."})}),bi=e.object({id:a,packageVersion:e.string().min(1).max(100),engine:e.string().min(1).max(200)}).strict(),ze=e.object({fixture:e.object({id:a,contentHash:E}).strict(),result:te,matchesExpectation:e.boolean()}).strict(),Ne=e.object({schemaVersion:e.literal("openpond.rewardCheckRun.v1"),id:a,revision:e.number().int().positive(),draft:u,reward:u,snapshotHash:E,fixtureRefs:e.array(e.object({id:a,contentHash:E}).strict()).min(1).max(50),status:e.enum(["queued","running","completed","failed","cancelling","cancelled"]),runtime:bi.nullable(),results:e.array(ze).max(50),matchesExpectations:e.boolean().nullable(),failure:e.string().max(2e4).nullable(),timeoutMs:e.number().int().min(100).max(3e5),maximumSpendUsd:e.number().nonnegative().max(1e3),judgeCalls:e.array(se).max(1e3).optional(),requestedBy:a.optional(),leaseOwner:a.nullable(),leaseExpiresAt:l.nullable(),attemptCount:e.number().int().nonnegative(),createdAt:l,updatedAt:l}).strict();function xi(t){if(!t.length||t.length>50)throw new m("reward_check_fixtures_required",422,"Add between one and 50 fixtures before checking this Reward.");if(new Set(t.map(i=>i.id)).size!==t.length)throw new m("reward_fixture_id_duplicate",422);return t.map(i=>Je.parse({id:i.id,name:i.name,input:D(i.input,`${i.name}: input`),output:D(i.output,`${i.name}: output`),expectedOutput:i.expectedOutput.trim()?D(i.expectedOutput,`${i.name}: expected answer`):null,evaluatorContext:i.evaluatorContext.trim()?D(i.evaluatorContext,`${i.name}: evaluator context`):null,artifactRefs:i.artifactRefs.map(r=>r.trim()).filter(Boolean),runtimeEventRefs:i.runtimeEventRefs.map(r=>r.trim()).filter(Boolean),infrastructureError:i.infrastructureError||null,expected:i.expectedStatus==="scored"?{status:i.expectedStatus,minimum:T(i.minimumScore,`${i.name}: minimum score`),maximum:T(i.maximumScore,`${i.name}: maximum score`),passed:i.expectedPassed==="any"?null:i.expectedPassed==="true"}:{status:i.expectedStatus}}))}c(xi,"compileRewardFixtures");function mt(t,i){let r=$e({id:t.targetId,fields:t.fields,base:i}),o=xi(t.fields.fixtures??[]),n=o.map(s=>({id:s.id,contentHash:k(s)}));return{...r,fixtures:o,fixtureRefs:n,snapshotHash:k({reward:r.reward,fixtures:o})}}c(mt,"compileRewardCheck");async function lt(t){let i=Je.parse(t.fixture),r=X.parse({id:i.id,clusterKey:i.id,split:"validation",input:i.input,expectedOutput:i.expectedOutput,privilegedContextRef:null}),o=re({schemaVersion:"openpond.rewardBinding.v1",id:`fixture-binding-${k(_(t.reward))}`,revision:1,sources:[{graderId:t.reward.id,reward:_(t.reward),role:"evaluation",normalization:t.reward.rawScore.minimum===0&&t.reward.rawScore.maximum===1?{kind:"identity"}:{kind:"linear",minimum:t.reward.rawScore.minimum,maximum:t.reward.rawScore.maximum,direction:"higher"},weight:1,required:!0,hardGate:!1,privileged:!0,fixtureRefs:[]}],aggregation:"weighted_mean",unscorable:"exclude_optional_require_all_required"},[t.reward]);return(await oe({binding:o,rewards:[t.reward],task:r,evidence:{output:i.output,artifactRefs:i.artifactRefs,runtimeEventRefs:i.runtimeEventRefs,infrastructureError:i.infrastructureError},signal:t.signal,customVerifier:t.customVerifier,modelJudge:t.modelJudge,purpose:"fixture_calibration"})).results[0]}c(lt,"executeRewardFixture");function ut(t,i){let r=t.expected,o=i.status===r.status&&(r.status!=="scored"||i.rawScore!==null&&i.rawScore>=r.minimum&&i.rawScore<=r.maximum&&(r.passed===null||r.passed===i.passed));return ze.parse({fixture:{id:t.id,contentHash:k(t)},result:i,matchesExpectation:o})}c(ut,"matchRewardFixture");var J={draft:Ee,reward_check:Ne,asset:Ie,definition:me,reward:V,binding:ie,source:ue,evidence:ge,feedback:fe,decision:be,batch:xe,policy:we,chain:$,consumption:qe,reservation:Pe,dispatch:Fe,schedule:Be,schedule_fire:Ue,iteration:Se,grade:Re,package:Y},Q=e.enum(Object.keys(J)),Me=class extends m{static{c(this,"LearningConflictError")}kind;id;expectedRevision;currentRevision;constructor(i,r,o,n){super("learning_revision_conflict",409,`Revision conflict for ${i} ${r}: expected ${o}, current ${n}.`),this.kind=i,this.id=r,this.expectedRevision=o,this.currentRevision=n,this.name="LearningConflictError"}};async function L(t,i,r,o){let n=await t.get(i,r,o);if(!n)throw new m("learning_resource_not_found",404,`${i}:${r}`);return J[i].parse(n)}c(L,"requireLearningResource");async function S(t,i,r){let o=await L(t,i,r.id,r.revision);if(!("contentHash"in o)||o.contentHash!==r.contentHash)throw new m("learning_release_hash_mismatch",409,`${i}:${r.id}`);return _e(o),o}c(S,"requireLearningRelease");function At(t,i,r){return`evidence-${k([t,i,r])}`}c(At,"learningEvidenceId");function Lt(t,i){return k([t,i])}c(Lt,"learningOperationId");async function Ot(t,i,r,o){let{batch:n,release:s,evidence:d,definition:g}=await K(t,i,r,o);for(let f of d)for(let h of B(f,g))await t.reserveFamilySplit(h.namespace,h.kind,h.key,h.split);return await t.put("batch",n,0,{parentId:g.id}),await t.put("package",s,0,{parentId:n.id}),[Ge("batch",n),Ge("package",s)]}c(Ot,"sealLearningBatch");async function K(t,i,r,o){let n=await S(t,"definition",i.taskDefinition),s=await S(t,"binding",n.rewardBinding),d=await Promise.all(s.sources.map(b=>S(t,"reward",b.reward)));ae(s,d);let g=await Promise.all(i.evidence.map(b=>vi(t,b))),f=await Promise.all(i.decisions.map(async b=>{let R=await S(t,"decision",b),p=await L(t,"decision",b.id);if(!I(_(p),b))throw new m("task_admission_revision_stale",409);return R})),h=[];for(let b of g)for(let R of B(b,n)){let p=await t.familySplit(R.namespace,R.kind,R.key);p!==null&&h.push({...R,split:p})}let x=Ae({id:i.batchId,definition:n,binding:s,rewards:d,purpose:i.purpose,evidence:g,decisions:f,priorSplits:h,actorId:r,now:o}),w=Le({batch:x,definition:n,binding:s,rewards:d,evidence:g,decisions:f});return{batch:x,release:w,evidence:g,definition:n}}c(K,"prepareLearningBatch");async function vi(t,i){let r=await S(t,"evidence",i),o=await L(t,"evidence",i.id);if(!I(_(o),i))throw new m("task_evidence_revision_stale",409);return r}c(vi,"requireCurrentLearningEvidence");function Ge(t,i){return{kind:t,id:i.id,revision:i.revision}}c(Ge,"pointer");async function Qe(t,i,r){let o=new Date(r).toISOString().slice(0,10),n=0,s=0,d;do{let g=await t.list("reservation",{parentId:i,limit:100,...d?{afterId:d}:{}});for(let{budget:f}of g.items)n+=f.reservedSpendUsd,f.settledAt&&new Date(f.settledAt).toISOString().slice(0,10)===o&&(s+=f.settledSpendUsd);d=g.nextCursor??void 0}while(d);return{reservedSpendUsd:n,settledSpendUsd:s,committedSpendUsd:n+s}}c(Qe,"readLearningIterationBudget");function W(t){return`chain-${k(t)}`}c(W,"learningChainId");function wi(t,i){return`consumption-${k([t,i.id,i.revision])}`}c(wi,"learningConsumptionId");async function z(t,i,r={}){let o=i.training.method==="sft"?"supervised_training":"reward_training";if(!["sft","grpo","ppo"].includes(i.training.method))throw new m("learning_batch_method_unsupported",422);if(i.admission.mode!=="human")throw new m("learning_automatic_admission_not_available",422);let n=await S(t,"definition",i.taskDefinition);if(!I(n.rewardBinding,i.rewardBinding))throw new m("learning_policy_binding_mismatch",422);let s={eligible:0,awaitingReview:0,excluded:0,consumed:0},d=[],g=[],f=W(i.modelProjectId),h=new Set,x=0;for(let w of i.sources){let b=await S(t,"source",w),R=await L(t,"source",b.id);if(!b.enabled||!R.enabled)throw new m("learning_source_disabled",409);if(!I(b.taskDefinition,i.taskDefinition))throw new m("learning_policy_source_definition_mismatch",422);let p;do{let j=await t.list("evidence",{parentId:b.id,limit:100,...p?{afterId:p}:{}});for(let A of j.items){if(h.has(A.id))continue;if(h.add(A.id),!i.sources.some(U=>I(A.source,U))||!I(A.submission.taskDefinition,i.taskDefinition)||A.submission.split!=="train"){s.excluded+=1;continue}if(await t.get("consumption",wi(f,A))){s.consumed+=1;continue}if(++x>i.limits.maxBacklogExamples)throw new m("learning_backlog_limit_exceeded",409);let q=await t.get("decision",`decision-${A.id}`);if(!q||!I(q.evidence,_(A))||q.taskAdmissibility==="pending"||q.actor.kind!=="human"){s.awaitingReview+=1;continue}try{ye({decision:q,evidence:A,definition:n,purpose:o})}catch(U){if(!(U instanceof m))throw U;s.excluded+=1;continue}s.eligible+=1,r.collectEligible&&g.push(_(A)),d.length<i.limits.maxBatchExamples&&d.push({evidence:A,decision:q})}p=j.nextCursor??void 0}while(p)}return{counts:s,selected:d,purpose:o,eligibleEvidence:g}}c(z,"inspectIterationEligibility");async function Ke(t,i,r=!1){let o=null,n;do{let s=await t.list("iteration",{parentId:i,status:"accepted",limit:100,...n?{afterId:n}:{}});for(let d of s.items){if(!d.candidateVersion||!d.candidateDecision||!d.candidateDecisionAt||!d.trainingJob){if(r)throw new m("learning_accepted_parent_evidence_missing",409);continue}let g=P.parse({iterationId:d.id,iterationRevision:d.revision,candidate:d.candidateVersion,decision:d.candidateDecision,decidedAt:d.candidateDecisionAt}),f=[Date.parse(g.decidedAt),g.decision.id,g.decision.revision],h=o?[Date.parse(o.decidedAt),o.decision.id,o.decision.revision]:null;(!h||f[0]>h[0]||f[0]===h[0]&&(f[1]>h[1]||f[1]===h[1]&&f[2]>h[2]))&&(o=g)}n=s.nextCursor??void 0}while(n);return o}c(Ke,"latestAcceptedLearningParent");async function We(t,i,r){if(!r)return{trainingParent:i.trainingParent,trainingParentSelection:null};let o=await L(t,"iteration",r.iterationId,r.iterationRevision),n=await S(t,"policy",o.policy);if(o.status!=="accepted"||!o.candidateVersion||!o.candidateDecision||!o.trainingJob||o.candidateVersion.id!==r.candidate.id||o.candidateVersion.contentHash!==r.candidate.contentHash||!I(o.candidateDecision,r.decision)||o.candidateDecisionAt!==r.decidedAt||n.modelProjectId!==i.modelProjectId||n.executionOwner!==i.executionOwner)throw new m("learning_accepted_parent_evidence_mismatch",409);if(n.trainingParent.id!==i.trainingParent.id||n.trainingParent.contentHash!==i.trainingParent.contentHash||n.training.method!==i.training.method)throw new m("learning_accepted_parent_configuration_mismatch",409,"The accepted checkpoint belongs to a different starting model or training method.");return{trainingParent:r.candidate,trainingParentSelection:r}}c(We,"resolveLearningTrainingParent");var Si=e.object({policy:u,modelProjectId:a,inspectedAt:l,chain:$.nullable(),trainingParent:e.object({reference:C,selection:P.nullable()}).strict().nullable().default(null),counts:G.nullable(),minimumApprovedExamples:e.number().int().positive(),canReserve:e.boolean(),blockers:e.array(e.object({code:e.string().min(1).max(200),message:e.string().min(1).max(2e4)}).strict()).max(20),cooldownUntil:l.nullable(),budget:e.object({reservedSpendUsd:e.number().nonnegative(),settledSpendUsd:e.number().nonnegative(),committedSpendUsd:e.number().nonnegative(),maximumIterationSpendUsd:e.number().nonnegative(),maximumDailySpendUsd:e.number().nonnegative()}).strict()}).strict();async function mn(t,i,r,o){let n=await S(t,"policy",i),s=await L(t,"policy",n.id);if(!I(_(s),i))throw new m("learning_policy_revision_stale",409);let d=W(n.modelProjectId),g=await t.get("chain",d),f=await Qe(t,d,o),h=[],x=c((p,j)=>{h.push({code:p,message:j})},"block");n.enabled||x("learning_policy_paused","Learning is paused."),(n.automation.accept||n.automation.serve)&&x("learning_automatic_acceptance_not_available","Candidates require explicit acceptance and serving selection."),g?.activeIterationId&&x("learning_iteration_active","An iteration is already active.");let w=g?.lastReservedAt&&Date.parse(o)-Date.parse(g.lastReservedAt)<n.limits.cooldownSeconds*1e3?new Date(Date.parse(g.lastReservedAt)+n.limits.cooldownSeconds*1e3).toISOString():null;w&&x("learning_iteration_cooldown","The training cooldown has not elapsed."),f.committedSpendUsd+n.limits.maxIterationSpendUsd>n.limits.maxDailySpendUsd&&x("learning_daily_budget_exhausted","The daily budget cannot cover another iteration's maximum spend.");let b=null;try{let p=await z(t,n);b=p.counts,b.eligible<n.admission.minimumApprovedExamples?b.awaitingReview>0?x("learning_waiting_for_review","More approved tasks are required before training."):x("learning_waiting_for_data","More eligible new tasks are required before training."):await K(t,{action:"seal_batch",operationId:"policy-inspection",batchId:"policy-inspection",taskDefinition:n.taskDefinition,purpose:p.purpose,evidence:p.selected.map(j=>_(j.evidence)),decisions:p.selected.map(j=>_(j.decision))},r,o)}catch(p){if(!(p instanceof m))throw p;x(p.code,p.message.slice(0,2e4))}let R=null;try{let p=await We(t,n,await Ke(t,d,!0));R={reference:p.trainingParent,selection:p.trainingParentSelection}}catch(p){if(!(p instanceof m))throw p;x(p.code,p.message.slice(0,2e4))}return Si.parse({policy:_(n),modelProjectId:n.modelProjectId,inspectedAt:o,chain:g,trainingParent:R,counts:b,minimumApprovedExamples:n.admission.minimumApprovedExamples,canReserve:h.length===0,blockers:h,cooldownUntil:w,budget:{...f,maximumIterationSpendUsd:n.limits.maxIterationSpendUsd,maximumDailySpendUsd:n.limits.maxDailySpendUsd}})}c(mn,"inspectLearningPolicy");var Ri=e.object({modelProjectId:a.nullable(),inspectedAt:l,pendingTrainingCount:e.number().int().nonnegative().nullable(),issues:e.array(e.object({policyId:a,code:e.string(),message:e.string()}).strict())}).strict();async function vn(t,i,r){let o=new Set,n=[],s;do{let d=await t.list("policy",{limit:100,...i?{parentId:i}:{},...s?{afterId:s}:{}});for(let g of d.items)try{let f=await z(t,g,{collectEligible:!0}),h=await S(t,"definition",g.taskDefinition);for(let x of f.eligibleEvidence){let w=await S(t,"evidence",x),b=!1;for(let R of B(w,h)){let p=await t.familySplit(R.namespace,R.kind,R.key);if(p!==null&&p!=="train"){b=!0;break}}b||o.add(JSON.stringify([x.id,x.revision,x.contentHash]))}}catch(f){if(!(f instanceof m))throw f;n.push({policyId:g.id,code:f.code,message:f.message})}s=d.nextCursor??void 0}while(s);return Ri.parse({modelProjectId:i,inspectedAt:r,pendingTrainingCount:n.length?null:o.size,issues:n})}c(vn,"inspectLearningTaskQueue");function Cn(t){try{H(t,16777216)}catch(i){throw new m("learning_json_invalid",400,i instanceof Error?i.message:"Expected bounded JSON.")}}c(Cn,"assertLearningRequestJson");var jn=e.object({scope:a,command:He}).strict(),En=e.discriminatedUnion("action",[e.object({action:e.literal("inspect_task_queue"),scope:a,modelProjectId:a.nullable()}).strict(),e.object({action:e.literal("inspect_policy"),scope:a,policy:u}).strict(),e.object({action:e.literal("inspect_evidence"),scope:a,evidence:u}).strict(),e.object({action:e.literal("get"),scope:a,kind:Q,id:a,revision:e.number().int().positive().optional()}).strict(),e.object({action:e.literal("list"),scope:a,kind:Q,parentId:a.optional(),status:e.string().min(1).max(200).optional(),reviewState:e.enum(["inbox","reviewed"]).optional(),afterId:a.optional(),limit:e.number().int().min(1).max(100).default(50)}).strict()]),Tn=e.object({evidence:u,definition:u,inspection:e.object({evidenceValidity:e.enum(["valid","invalid"]),taskReady:e.boolean(),observedOutputValid:e.boolean().nullable(),issues:e.array(e.object({path:e.string(),code:e.string(),message:e.string()}).strict()).max(100)}).strict()}).strict(),Dn=e.object({operationId:a,resources:e.array(e.union(Object.values(J))).max(100)}).strict();export{$ as a,qe as b,Pe as c,He as d,Fe as e,Be as f,bi as g,Ne as h,mt as i,lt as j,ut as k,J as l,Me as m,L as n,S as o,At as p,Lt as q,Ot as r,vi as s,W as t,wi as u,z as v,Qe as w,Ke as x,We as y,Si as z,mn as A,Ri as B,vn as C,Cn as D,jn as E,En as F,Tn as G,Dn as H};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{r as i,j as e}from"./index-667pXXsu.js";import{p as u}from"./LabsRoute-BhPFmA_Z.js";import{d_ as n}from"./App-BoJQRfeu.js";import"./AppDialog-rdfmJsGF.js";import"./cloud-upload-BAycsdHL.js";import"./MainPane-Di-Rwe7x.js";import"./arrow-up-right-C5X-29oa.js";import"./chat-file-links-Bmz9kVct.js";import"./square-CRytZWR_.js";import"./training-model-data-CKOkpBBL.js";import"./refresh-cw-0zSLZtfp.js";import"./info-NCOESX3I.js";/* empty css */import"./ComposerCreateImproveStrip-3tN55cg9.js";import"./play-DB3XFAnG.js";function H({api:o,policyId:r,sourceId:t,onBack:s}){const a=i.useMemo(()=>o.reviewClient(r,t),[o,r,t]),[p,m]=i.useState(null),[l,c]=i.useState(null);return e.jsxs("section",{"aria-label":"Hosted example review",children:[e.jsx("button",{type:"button",className:"training-button secondary",onClick:()=>{n(s)},children:"Back to continual learning"}),e.jsx("p",{children:"Reviewing hosted examples. Approved tasks become eligible for this policy's next training check."}),e.jsx(u,{client:a,selectedId:p,after:l,sourceId:t,onSelect:d=>{n(()=>m(d))},onPage:c})]})}export{H as HostedModelLearningReview};
|