openpond 0.1.1 → 0.2.1
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/README.md +4 -4
- package/dist/cache.d.ts +7 -10
- package/dist/chunks/actions-command-QP3NMDK4.js +2 -0
- package/dist/chunks/app-layer-N7VFRVJ2.js +3 -0
- package/dist/chunks/app-server-runtime-OCLPUI7F.js +2 -0
- package/dist/chunks/apps-AMG75TI4.js +2 -0
- package/dist/chunks/chunk-22UARBPW.js +3 -0
- package/dist/chunks/chunk-3A7HZJNE.js +1 -0
- package/dist/chunks/chunk-3M53YXEI.js +2 -0
- package/dist/chunks/chunk-3NDRIQTI.js +2 -0
- package/dist/chunks/chunk-5BBVEWG3.js +2 -0
- package/dist/chunks/chunk-5O7ZVCMV.js +6 -0
- package/dist/chunks/chunk-6FA3GG5B.js +33 -0
- package/dist/chunks/chunk-6MI4KKWF.js +2 -0
- package/dist/chunks/chunk-BBG546O6.js +6 -0
- package/dist/chunks/chunk-BX4J2VDU.js +2 -0
- package/dist/chunks/chunk-BZMVB3GS.js +2 -0
- package/dist/chunks/chunk-C5LOZSVS.js +2 -0
- package/dist/chunks/chunk-CWQWV2T3.js +2 -0
- package/dist/chunks/chunk-DUA3QP6Y.js +19 -0
- package/dist/chunks/chunk-EAPFMACH.js +10 -0
- package/dist/chunks/chunk-ES2ISFJC.js +66 -0
- package/dist/chunks/chunk-F65NIZLM.js +2199 -0
- package/dist/chunks/chunk-FGJ5LFPL.js +5 -0
- package/dist/chunks/chunk-FTQLQJQV.js +2 -0
- package/dist/chunks/chunk-FY7OQ5RK.js +24 -0
- package/dist/chunks/chunk-FYCJSUFV.js +53 -0
- package/dist/chunks/chunk-GLUWATL5.js +2 -0
- package/dist/chunks/chunk-H7IWJN7L.js +17 -0
- package/dist/chunks/chunk-HZP5U2AA.js +3 -0
- package/dist/chunks/chunk-I5K74TOH.js +3 -0
- package/dist/chunks/chunk-IR3YJWPW.js +7 -0
- package/dist/chunks/chunk-KU7QOHFT.js +2872 -0
- package/dist/chunks/chunk-KV553EWX.js +16 -0
- package/dist/chunks/chunk-MGN6GLNZ.js +2 -0
- package/dist/chunks/chunk-OG5Q6NXK.js +28 -0
- package/dist/chunks/chunk-OGPHXXCD.js +1 -0
- package/dist/chunks/chunk-PI36UHRA.js +18 -0
- package/dist/chunks/chunk-RWSAGQTP.js +2 -0
- package/dist/chunks/chunk-SAE4OIPC.js +2 -0
- package/dist/chunks/chunk-SDO4FC4Q.js +2 -0
- package/dist/chunks/chunk-UKUVMXOW.js +12 -0
- package/dist/chunks/chunk-VCLCFK3O.js +36 -0
- package/dist/chunks/chunk-VYUMTRB3.js +5 -0
- package/dist/chunks/chunk-X37KMV27.js +1 -0
- package/dist/chunks/chunk-XDHAGACI.js +3 -0
- package/dist/chunks/chunk-XEOEKFG6.js +71 -0
- package/dist/chunks/chunk-ZF7TEGY5.js +5 -0
- package/dist/chunks/chunk-ZVOO7FKM.js +2 -0
- package/dist/chunks/cli-M2FG7SSI.js +2 -0
- package/dist/chunks/configuration-command-XBKBIZBO.js +2 -0
- package/dist/chunks/continual-D75WA7E7.js +7 -0
- package/dist/chunks/core-commands-LUZVWXQR.js +2 -0
- package/dist/chunks/database-X2CUV732.js +2 -0
- package/dist/chunks/desktop-test-KGC4JVJ7.js +3 -0
- package/dist/chunks/dist-NKLXFA37.js +2 -0
- package/dist/chunks/extension-NQ7N5LEY.js +5 -0
- package/dist/chunks/help-MWK66XZK.js +8 -0
- package/dist/chunks/module-ES6BEMUI-ZVL3F6NW.js +2 -0
- package/dist/chunks/module-asyncify-2EFITU5U-R7TVXNAE.js +2 -0
- package/dist/chunks/opchat-XJZA3QKZ.js +3 -0
- package/dist/chunks/organizations-UECDFEYE.js +2 -0
- package/dist/chunks/profile-KUMIZURM.js +3 -0
- package/dist/chunks/project-agent-NILMJHLV.js +2 -0
- package/dist/chunks/sandbox-command-QHH65OSE.js +2 -0
- package/dist/chunks/sandbox-template-N7I63PNU.js +10 -0
- package/dist/chunks/src-724HF43W.js +82 -0
- package/dist/chunks/src-VTKTTKQO.js +319 -0
- package/dist/chunks/taskset-PISBOILQ.js +2 -0
- package/dist/chunks/teams-bot-UV4RU53M.js +3 -0
- package/dist/chunks/training-2NDOWH5S.js +2 -0
- package/dist/chunks/workspaces-XXT4KUD3.js +2 -0
- package/dist/cli.js +3 -101
- package/dist/client.d.ts +1 -1
- package/dist/config.d.ts +1 -0
- package/dist/index.js +1 -26305
- package/dist/private-json-file.d.ts +1 -2
- package/dist/sandbox-template/manifest.js +1 -18380
- package/dist/web/assets/App-DxecRQUL.js +176 -0
- package/dist/web/assets/AppDialog-B65Eo3gp.js +1 -0
- package/dist/web/assets/AppTerminalPanel-B2EKQM7W.js +2 -0
- package/dist/web/assets/{AppsView-Ck_OzQWf.js → AppsView-BBoVe7s2.js} +1 -1
- package/dist/web/assets/{BrowserSidebar-CqciX8aL.js → BrowserSidebar-CSM1atSJ.js} +1 -1
- package/dist/web/assets/{CartesianChart-Y0lsL4vC.js → CartesianChart-CJKfXiEG.js} +1 -1
- package/dist/web/assets/{CollaborationTabs-BOb9PjvS.js → CollaborationTabs-BMZamWFC.js} +1 -1
- package/dist/web/assets/{CommandMenu-Co6JnmTu.js → CommandMenu-B3U1z2eo.js} +1 -1
- package/dist/web/assets/{CommunityView-BbTSeL7h.js → CommunityView-CTyRUcfy.js} +1 -1
- package/dist/web/assets/{ComposerCreateImproveStrip-BGzCWVFp.js → ComposerCreateImproveStrip-D7usvRtK.js} +1 -1
- package/dist/web/assets/GetStartedView-Ibu7oKWJ.js +1 -0
- package/dist/web/assets/HostedModelLearningReview-qnzIkT70.js +1 -0
- package/dist/web/assets/HostedModelLearningSettings--PKjpYsy.js +1 -0
- package/dist/web/assets/LabModelVersionDetailPage-s9uUN6fV.js +1 -0
- package/dist/web/assets/{LabSkillSidebar-C5oS6UmH.js → LabSkillSidebar-BKYseMiJ.js} +1 -1
- package/dist/web/assets/LabsRoute-C1FWCoYb.css +1 -0
- package/dist/web/assets/LabsRoute-DoRs0K6v.js +32 -0
- package/dist/web/assets/MainChatThread-DvuyMcMB.js +2 -0
- package/dist/web/assets/MainPane-BWwcxgHD.js +8 -0
- package/dist/web/assets/{MarkdownText-DqJarmTh.js → MarkdownText-D8XC5UT_.js} +1 -1
- package/dist/web/assets/{Messages-BaT7HOzB.js → Messages-e4A8JUjD.js} +6 -6
- package/dist/web/assets/{NativeSkillSidebar-DXp8snN5.js → NativeSkillSidebar-D2Joh8XB.js} +1 -1
- package/dist/web/assets/{NewExperienceSwitcher-CLHuGUN5.js → NewExperienceSwitcher-CzGebt2E.js} +1 -1
- package/dist/web/assets/{NewProjectDialog-CzpHCAaC.js → NewProjectDialog-CdMTSxUE.js} +1 -1
- package/dist/web/assets/{OutputsPage-DIzx-Ge6.js → OutputsPage-m7cSb8dW.js} +1 -1
- package/dist/web/assets/{ProjectsPage-DojwrhOy.js → ProjectsPage-C9mz8W1g.js} +1 -1
- package/dist/web/assets/RightChatPanelStack-B4LEqKEj.js +1 -0
- package/dist/web/assets/{RightSidebarHomePanel-DTzfuEX3.js → RightSidebarHomePanel-DOeUsH7h.js} +1 -1
- package/dist/web/assets/ScheduledWorkPage-UXZSSWgA.js +1 -0
- package/dist/web/assets/SettingsView-CAH0vreE.css +1 -0
- package/dist/web/assets/SettingsView-CQm1ai73.js +9 -0
- package/dist/web/assets/TeamChatView-C4haojB7.js +3 -0
- package/dist/web/assets/{TerminalOverlay-DnNVrCtu.js → TerminalOverlay-p2GZsuyQ.js} +3 -3
- package/dist/web/assets/{TrainingCreationPanel-CDwwyucO.js → TrainingCreationPanel-BYJSlO8X.js} +1 -1
- package/dist/web/assets/{TrainingDraftPanel-BijDnV_0.js → TrainingDraftPanel-DR5KlayH.js} +1 -1
- package/dist/web/assets/{UsageSettingsSection-Y5BFAu1p.js → UsageSettingsSection-BQToNXE4.js} +5 -5
- package/dist/web/assets/{WorkSidebarPanel-CkJlvZKm.js → WorkSidebarPanel--EeytWeg.js} +1 -1
- package/dist/web/assets/WorkspaceDiffPanel-BrovSYhn.js +14 -0
- package/dist/web/assets/{WorkspaceEnvironmentMenu-D8knAy1q.js → WorkspaceEnvironmentMenu-l-keRgvj.js} +3 -3
- package/dist/web/assets/{WorkspaceGitDialogs-_LHTrvh6.js → WorkspaceGitDialogs-aicWzaZu.js} +1 -1
- package/dist/web/assets/{WorkspaceMonacoEditor-B2B7OM_L.js → WorkspaceMonacoEditor-CO_E74jM.js} +36 -36
- package/dist/web/assets/{arrow-up-right-4nAzMtjW.js → arrow-up-right-rwPXNfVn.js} +1 -1
- package/dist/web/assets/chat-file-links-B3jDstSC.js +1 -0
- package/dist/web/assets/chevron-up-D089nvYQ.js +1 -0
- package/dist/web/assets/{clipboard-BzjUoZFo.js → clipboard-DwEExyU4.js} +1 -1
- package/dist/web/assets/{cloud-upload-CsrrwS-b.js → cloud-upload-D2he0-vQ.js} +1 -1
- package/dist/web/assets/{cssMode-CIbSSHKJ.js → cssMode-DS4k0NcI.js} +1 -1
- package/dist/web/assets/{folder-open-vRTuLzpS.js → folder-open-CAOLduKD.js} +1 -1
- package/dist/web/assets/{folder-plus-hyqwgUnx.js → folder-plus-D56MrxVT.js} +1 -1
- package/dist/web/assets/{git-commit-horizontal-CaxKfeYa.js → git-commit-horizontal-CeNM0oKJ.js} +1 -1
- package/dist/web/assets/{htmlMode-C3MGQGam.js → htmlMode-Xkni5erh.js} +1 -1
- package/dist/web/assets/{index-ByQIHpc9.css → index-BGMzUaup.css} +1 -1
- package/dist/web/assets/{index-Dvq7bpBG.js → index-KwyAyscP.js} +1 -1
- package/dist/web/assets/{info-aYWeE1Iw.js → info-CcrBaEE_.js} +1 -1
- package/dist/web/assets/{jsonMode-CpD6UkT7.js → jsonMode-C4YPbQB7.js} +1 -1
- package/dist/web/assets/{lspLanguageFeatures-DpcK8ZI6.js → lspLanguageFeatures-CF5oMTz6.js} +1 -1
- package/dist/web/assets/{minimize-2-DeYg7XqB.js → minimize-2-DzHQnInk.js} +1 -1
- package/dist/web/assets/{monaco.contribution-CrrdDQgP.js → monaco.contribution-0EN4mGCC.js} +2 -2
- package/dist/web/assets/{monaco.contribution-JWFq0HzV.js → monaco.contribution-B4qcTP0w.js} +2 -2
- package/dist/web/assets/{monaco.contribution-BDTM0ZJq.js → monaco.contribution-CJK_NrBm.js} +2 -2
- package/dist/web/assets/{monaco.contribution-C-_ekTxy.js → monaco.contribution-CkPGKNd-.js} +2 -2
- package/dist/web/assets/{play-BqgRTddV.js → play-p3-AMTPL.js} +1 -1
- package/dist/web/assets/{python-B67wope9.js → python-B0kpTxAZ.js} +1 -1
- package/dist/web/assets/{refresh-cw-DwMA_2On.js → refresh-cw-_jbTIzzr.js} +1 -1
- package/dist/web/assets/{save-B0BKh5oQ.js → save-Cy6hEotx.js} +1 -1
- package/dist/web/assets/{square-LY3oz82L.js → square-DKQkcrOH.js} +1 -1
- package/dist/web/assets/{toggleHighContrast-B2jka5B1.js → toggleHighContrast-Bnk1VVVq.js} +1 -1
- package/dist/web/assets/{tsMode-1MUwluYD.js → tsMode-BDrSVy7V.js} +1 -1
- package/dist/web/assets/{upload-bSKSkFVa.js → upload-COn0my_O.js} +1 -1
- package/dist/web/assets/{useLocalAgentSchedules--jnnM4Fz.js → useLocalAgentSchedules-iZNB4Oee.js} +1 -1
- package/dist/web/assets/{wifi-off-DA34iPmr.js → wifi-off-Cqt-ZLXY.js} +1 -1
- package/dist/web/assets/{workers-CczIcRcl.js → workers-hu0Ym93h.js} +1 -1
- package/dist/web/assets/{yaml-DwEGoHA9.js → yaml-D-JLDGL6.js} +1 -1
- package/dist/web/index.html +2 -2
- package/docs/command-reference.md +28 -2
- package/package.json +10 -7
- package/dist/chunks/actions-command-6N5XWMR6.js +0 -185
- package/dist/chunks/app-layer-XEYHFJHI.js +0 -214
- package/dist/chunks/app-server-runtime-FJM2EQPH.js +0 -21
- package/dist/chunks/apps-GSXUDK6V.js +0 -427
- package/dist/chunks/chunk-2JABRRNR.js +0 -183
- package/dist/chunks/chunk-47EIAYI7.js +0 -2162
- package/dist/chunks/chunk-4L3ZJS2T.js +0 -1207
- package/dist/chunks/chunk-5TKZBMQM.js +0 -731
- package/dist/chunks/chunk-6G6MDZLM.js +0 -14509
- package/dist/chunks/chunk-BVY5JYM6.js +0 -512
- package/dist/chunks/chunk-C5TKGE5Y.js +0 -1275
- package/dist/chunks/chunk-CNTM26OW.js +0 -602
- package/dist/chunks/chunk-D7BO5Y5J.js +0 -1531
- package/dist/chunks/chunk-DJL4TJYG.js +0 -70
- package/dist/chunks/chunk-DLQQIWN2.js +0 -648
- package/dist/chunks/chunk-DNXBJZAU.js +0 -630
- package/dist/chunks/chunk-EFET7LB7.js +0 -1331
- package/dist/chunks/chunk-FQS2QL5F.js +0 -14522
- package/dist/chunks/chunk-HFPUR4CQ.js +0 -669
- package/dist/chunks/chunk-J3YDKJFD.js +0 -88
- package/dist/chunks/chunk-J7PYGDRY.js +0 -634
- package/dist/chunks/chunk-JTHL5XJ2.js +0 -1838
- package/dist/chunks/chunk-KSRWKXRB.js +0 -12
- package/dist/chunks/chunk-KWDOAJJI.js +0 -238
- package/dist/chunks/chunk-MUMPWI4O.js +0 -92
- package/dist/chunks/chunk-N3TGCM7J.js +0 -1135
- package/dist/chunks/chunk-NTK22KJD.js +0 -10707
- package/dist/chunks/chunk-O6B6YCMI.js +0 -57688
- package/dist/chunks/chunk-R3C3MNSI.js +0 -140
- package/dist/chunks/chunk-SMNFI2FU.js +0 -113
- package/dist/chunks/chunk-UACZUFIA.js +0 -47
- package/dist/chunks/chunk-W5GKHH77.js +0 -168
- package/dist/chunks/chunk-WBAZFKC7.js +0 -1643
- package/dist/chunks/chunk-X7ZG4TSW.js +0 -3063
- package/dist/chunks/chunk-YVCYVDNP.js +0 -746
- package/dist/chunks/cli-6PFRZ2WV.js +0 -21
- package/dist/chunks/continual-FYDKLCO7.js +0 -803
- package/dist/chunks/core-commands-MAN3CSJQ.js +0 -48
- package/dist/chunks/desktop-test-OE5SST2W.js +0 -146
- package/dist/chunks/extension-J3CIEDP4.js +0 -10041
- package/dist/chunks/help-JNGJJFU5.js +0 -67
- package/dist/chunks/opchat-6HEQJFLL.js +0 -167
- package/dist/chunks/organizations-MWAPNOCK.js +0 -804
- package/dist/chunks/profile-P7HMONTZ.js +0 -1134
- package/dist/chunks/project-agent-2RAK7GAZ.js +0 -514
- package/dist/chunks/sandbox-command-G22CPFNK.js +0 -1659
- package/dist/chunks/sandbox-template-S4WRUWJ6.js +0 -1653
- package/dist/chunks/src-BKBZ7WLO.js +0 -3624
- package/dist/chunks/src-RTGN2O4H.js +0 -65745
- package/dist/chunks/taskset-BMI7KOWP.js +0 -66
- package/dist/chunks/teams-bot-5VBYEN7M.js +0 -144
- package/dist/chunks/training-UPVSGDTB.js +0 -17
- package/dist/chunks/workspaces-IJQPWX3H.js +0 -99
- package/dist/web/assets/App-BOkhmdHu.js +0 -173
- package/dist/web/assets/AppDialog-BCjKFUBn.js +0 -1
- package/dist/web/assets/AppTerminalPanel-DRU8GIfy.js +0 -2
- package/dist/web/assets/GetStartedView-jEogFjxP.js +0 -1
- package/dist/web/assets/LabModelVersionDetailPage-CrudId_1.js +0 -1
- package/dist/web/assets/LabsRoute-9v8qwEBc.js +0 -2
- package/dist/web/assets/LabsRoute-CGFgymTX.css +0 -1
- package/dist/web/assets/MainChatThread-VtMpAxlP.js +0 -2
- package/dist/web/assets/MainPane-BbknUzp3.js +0 -8
- package/dist/web/assets/RightChatPanelStack-CIE5bgmO.js +0 -1
- package/dist/web/assets/ScheduledWorkPage-DdbcQGSv.js +0 -1
- package/dist/web/assets/SettingsView-CC5GXaE1.css +0 -1
- package/dist/web/assets/SettingsView-QT_OLmDh.js +0 -6
- package/dist/web/assets/TeamChatView-C4-nG1tC.js +0 -3
- package/dist/web/assets/WorkspaceDiffPanel-CBgzmBk8.js +0 -14
- package/dist/web/assets/chat-file-links-Bned0MT7.js +0 -1
- package/dist/web/assets/chevron-up-DK7ejCfk.js +0 -1
- package/dist/web/assets/index-66-ohHD5.js +0 -1
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{r as s,j as w}from"./index-Dvq7bpBG.js";const d=[],v=["button:not([disabled])","[href]","input:not([disabled])","select:not([disabled])","textarea:not([disabled])","[tabindex]:not([tabindex='-1'])","[contenteditable='true']"].join(",");function T({ariaLabel:r,backdropClassName:o="training-dialog-backdrop",children:a,className:i,contained:t=!1,dismissDisabled:e=!1,initialFocusKey:u,inertExclusionSelector:p,onClose:m}){const f=s.useRef(null),A=s.useRef(Symbol("app-dialog")),b=s.useRef(null),h=s.useRef(e),g=s.useRef(m);h.current=e,g.current=m,s.useEffect(()=>{const n=A.current;b.current=document.activeElement instanceof HTMLElement?document.activeElement:null,d.push(n);const l=t?f.current?.closest(".main-pane")??null:null,E=I(f.current,l,p);function y(c){if(d.at(-1)===n){if(c.key==="Escape"){c.preventDefault(),c.stopPropagation(),h.current||g.current();return}c.key!=="Tab"||t||F(c,f.current)}}return document.addEventListener("keydown",y,!0),()=>{document.removeEventListener("keydown",y,!0);const c=d.lastIndexOf(n);c>=0&&d.splice(c,1),E();const x=b.current;x?.isConnected&&x.focus()}},[t,p]),s.useEffect(()=>{const n=window.requestAnimationFrame(()=>{const l=f.current;(l?.querySelector("[data-autofocus]")??l)?.focus()});return()=>window.cancelAnimationFrame(n)},[u]);function R(n){n.target===n.currentTarget&&!e&&m()}function k(n){n.key==="Escape"&&n.stopPropagation()}return w.jsx("div",{className:o,role:"presentation",onMouseDown:R,children:w.jsx("section",{ref:f,"aria-busy":e||void 0,"aria-label":r,"aria-modal":t?void 0:"true",className:i,role:"dialog",tabIndex:-1,onKeyDown:k,onMouseDown:n=>n.stopPropagation(),children:a})})}function D(r){return r?Array.from(r.querySelectorAll(v)).filter(o=>!o.hidden&&o.getAttribute("aria-hidden")!=="true"):[]}function F(r,o){if(!o)return;const a=D(o);if(a.length===0){r.preventDefault(),o.focus();return}const i=a.indexOf(document.activeElement),t=r.shiftKey?i<=0?a.length-1:i-1:i<0||i===a.length-1?0:i+1;r.preventDefault(),a[t]?.focus()}function I(r,o=null,a){if(!r)return()=>{};const i=[];let t=r.parentElement??r;for(;t.parentElement&&t!==document.body;){const e=t.parentElement;for(const u of Array.from(e.children))u===t||!(u instanceof HTMLElement)||a&&u.matches(a)||(i.push({element:u,ariaHidden:u.getAttribute("aria-hidden"),inert:u.inert}),u.inert=!0,u.setAttribute("aria-hidden","true"));if(t=e,o&&t===o)break}return()=>{for(const e of i.reverse())e.element.inert=e.inert,e.ariaHidden===null?e.element.removeAttribute("aria-hidden"):e.element.setAttribute("aria-hidden",e.ariaHidden)}}export{T as A};
|
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["./TerminalOverlay-DnNVrCtu.js","./index-Dvq7bpBG.js","./index-ByQIHpc9.css","./App-BOkhmdHu.js","./chat-file-links-Bned0MT7.js","./TerminalOverlay-DwBiZLwk.css"])))=>i.map(i=>d[i]);
|
|
2
|
-
import{r,j as t,_ as c}from"./index-Dvq7bpBG.js";const p=r.lazy(()=>c(()=>import("./TerminalOverlay-DnNVrCtu.js"),__vite__mapDeps([0,1,2,3,4,5]),import.meta.url).then(e=>({default:e.TerminalOverlay})));function E({open:e,connection:a,scope:l,tabs:s,onTabsChange:n,cwd:i,appId:u,workspaceName:o,queuedCommand:f,onClose:m}){const[d,_]=r.useState(!1);return r.useEffect(()=>{e&&_(!0)},[e]),d?t.jsx(r.Suspense,{fallback:null,children:t.jsx(p,{open:e,connection:a,scope:l,tabs:s,onTabsChange:n,cwd:i,appId:u,workspaceName:o,queuedCommand:f,onClose:m})}):null}export{E as AppTerminalPanel};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{r as x,j as t}from"./index-Dvq7bpBG.js";import{P as k}from"./play-BqgRTddV.js";import{r as te}from"./index-66-ohHD5.js";import{A as ae}from"./AppDialog-BCjKFUBn.js";import{A as ne,X as se,by as I,bz as ie,bA as re,bB as oe,bC as de,bD as le,bE as ce}from"./App-BOkhmdHu.js";import{b as ue}from"./chat-file-links-Bned0MT7.js";function pe({badge:e,onPlay:a,titleElement:i="h3",video:n}){const[d,s]=x.useState(!1),r=x.useRef(null),u=i,l=`${n.id}-title`;function p(){if(a){a();return}te.flushSync(()=>s(!0));const c=r.current;c&&(c.load(),c.play().catch(()=>{}))}return t.jsxs(t.Fragment,{children:[t.jsxs("article",{className:"get-started-course-card","aria-labelledby":l,children:[t.jsx("button",{"aria-haspopup":"dialog","aria-label":`Play ${n.title}`,className:"get-started-course-open",onClick:p,type:"button"}),t.jsxs("div",{className:"get-started-course-media",children:[t.jsx("img",{alt:"",className:"get-started-course-poster",decoding:"async",src:n.posterUrl}),t.jsx("span",{className:"get-started-course-play-icon","aria-hidden":"true",children:t.jsx(k,{fill:"currentColor",size:19})}),e?t.jsx("span",{className:"get-started-course-badge","aria-hidden":"true",children:e}):null]}),t.jsxs("div",{className:"get-started-course-copy",children:[t.jsx(u,{id:l,children:n.title}),t.jsxs("div",{className:"get-started-course-meta","aria-label":`${n.title} details`,children:[t.jsx("span",{children:n.eyebrow}),t.jsx("span",{"aria-hidden":"true",children:"·"}),t.jsx("span",{children:n.duration})]}),n.description?t.jsx("p",{children:n.description}):null]})]}),d&&!a?t.jsx(L,{onClose:()=>s(!1),video:n,videoRef:r}):null]})}function L({autoAdvance:e=!1,contained:a=!1,inertExclusionSelector:i,navigation:n,onEnded:d,onClose:s,onPause:r,onTimeUpdate:u,video:l,videoRef:p}){return t.jsxs(ae,{ariaLabel:`${l.title} player`,backdropClassName:"get-started-course-player-backdrop",className:"get-started-course-player",contained:a,inertExclusionSelector:i,onClose:s,children:[t.jsxs("header",{className:"get-started-course-player-header",children:[t.jsxs("div",{className:"get-started-course-player-copy",children:[t.jsx("strong",{children:l.title}),t.jsxs("span",{children:[n?`Lesson ${n.currentIndex+1} of ${n.total}`:l.eyebrow," · ",l.duration]})]}),t.jsxs("div",{className:"get-started-course-player-actions",children:[n?t.jsxs(t.Fragment,{children:[t.jsx("button",{"aria-label":"Previous lesson",disabled:!n.onPrevious,onClick:n.onPrevious,title:"Previous lesson",type:"button",children:t.jsx(ne,{size:17})}),t.jsx("button",{"aria-label":"Next lesson",disabled:!n.onNext,onClick:n.onNext,title:"Next lesson",type:"button",children:t.jsx(ue,{size:17})})]}):null,t.jsx("button",{"aria-label":"Close video player","data-autofocus":!0,onClick:s,title:"Close",type:"button",children:t.jsx(se,{size:18})})]})]}),t.jsx("div",{className:"get-started-course-player-body",children:t.jsx("div",{className:"get-started-course-player-media",children:t.jsx("div",{className:"get-started-course-player-stage",children:t.jsx("video",{"aria-label":`${l.title} video`,className:"get-started-course-player-video",controls:!0,"data-auto-advance":e?"true":void 0,onEnded:c=>d?.(c.currentTarget),onPause:c=>r?.(c.currentTarget),onTimeUpdate:c=>u?.(c.currentTarget),playsInline:!0,poster:l.posterUrl,preload:"metadata",ref:p,src:l.videoUrl,children:l.captionsUrl?t.jsx("track",{kind:"captions",label:"English",src:l.captionsUrl,srcLang:"en"}):null},l.id)})})})]})}const fe=[{id:"post-training-from-first-principles",fullVideoId:"post-training-full-course",status:"draft",title:"Post-training from first principles",videoIds:["post-training-01-how-post-training-works","post-training-02-definitions","post-training-03-on-policy-off-policy","post-training-04-rewards-credit-assignment","post-training-05-verifiable-rewards-rlvr","post-training-06-ppo-grpo","post-training-07-distillation","post-training-08-opsd-sdft-sdpo","post-training-09-credible-experiments","post-training-10-technical-appendix"]},{id:"how-to-make-an-agent",status:"published",title:"Agents",playAllVideoId:"make-agent-tutorial",videoIds:["make-agent-tutorial-create","make-agent-tutorial-use","make-agent-tutorial-improve"]}],ge=[{id:"post-training-01-how-post-training-works",localPath:"courses/post-training/01-how-post-training-works.mp4",objectKey:"media/videos/aeb54dfb42eb940672df6e41bae075ffa5e45e1609e173a91e485c808b61fd4a.mp4",sha256:"aeb54dfb42eb940672df6e41bae075ffa5e45e1609e173a91e485c808b61fd4a",sizeBytes:2114638,durationSeconds:64.967},{id:"post-training-02-definitions",localPath:"courses/post-training/02-definitions.mp4",objectKey:"media/videos/c57d021989cdf058c683b9d017eb91bd23075e6bd00d0cc055e1285b3ea119fc.mp4",sha256:"c57d021989cdf058c683b9d017eb91bd23075e6bd00d0cc055e1285b3ea119fc",sizeBytes:11956956,durationSeconds:374.367},{id:"post-training-03-on-policy-off-policy",localPath:"courses/post-training/03-on-policy-off-policy.mp4",objectKey:"media/videos/a807bd7d704f8603addc875623a3cfcc938e60e0170d555d47569394a1c31762.mp4",sha256:"a807bd7d704f8603addc875623a3cfcc938e60e0170d555d47569394a1c31762",sizeBytes:2291518,durationSeconds:66.367},{id:"post-training-04-rewards-credit-assignment",localPath:"courses/post-training/04-rewards-credit-assignment.mp4",objectKey:"media/videos/685f7ecff7fcea262dd2cf60568079633816e9116efd80c069d0e20a4959a87f.mp4",sha256:"685f7ecff7fcea262dd2cf60568079633816e9116efd80c069d0e20a4959a87f",sizeBytes:5677418,durationSeconds:179.834},{id:"post-training-05-verifiable-rewards-rlvr",localPath:"courses/post-training/05-verifiable-rewards-rlvr.mp4",objectKey:"media/videos/0633584b2036843edd1ff9c63f0858db4272ddf55b10b160ec2ef6f7650c7d3a.mp4",sha256:"0633584b2036843edd1ff9c63f0858db4272ddf55b10b160ec2ef6f7650c7d3a",sizeBytes:5666892,durationSeconds:172.534},{id:"post-training-06-ppo-grpo",localPath:"courses/post-training/06-ppo-grpo.mp4",objectKey:"media/videos/66760fec7508c413844adb06c3f3920c5f7e3a874b18dc244ba090c55f452ff3.mp4",sha256:"66760fec7508c413844adb06c3f3920c5f7e3a874b18dc244ba090c55f452ff3",sizeBytes:5519257,durationSeconds:173.6},{id:"post-training-07-distillation",localPath:"courses/post-training/07-distillation.mp4",objectKey:"media/videos/3590f94325c1986f2025b42d182f04957e9eff6d5c06b1effc28dc369651c466.mp4",sha256:"3590f94325c1986f2025b42d182f04957e9eff6d5c06b1effc28dc369651c466",sizeBytes:4687640,durationSeconds:161.667},{id:"post-training-08-opsd-sdft-sdpo",localPath:"courses/post-training/08-opsd-sdft-sdpo.mp4",objectKey:"media/videos/3c45d8c1df0a24132ec425762dc6a4274b1e5cac6dfd220a2994f8754f431031.mp4",sha256:"3c45d8c1df0a24132ec425762dc6a4274b1e5cac6dfd220a2994f8754f431031",sizeBytes:5439835,durationSeconds:163.134},{id:"post-training-09-credible-experiments",localPath:"courses/post-training/09-credible-experiments.mp4",objectKey:"media/videos/fc701a8ba4b42de53bcaec3dcf191e6ec66f1dc0c48480f0aff01c3849aff023.mp4",sha256:"fc701a8ba4b42de53bcaec3dcf191e6ec66f1dc0c48480f0aff01c3849aff023",sizeBytes:6909405,durationSeconds:211.934},{id:"post-training-10-technical-appendix",localPath:"courses/post-training/10-technical-appendix.mp4",objectKey:"media/videos/17e6b5ef161fcdc97678e5b63650bffdb4b4b0d510ba75725a2af8a5db0d7e21.mp4",sha256:"17e6b5ef161fcdc97678e5b63650bffdb4b4b0d510ba75725a2af8a5db0d7e21",sizeBytes:5481950,durationSeconds:191.767},{id:"post-training-full-course",localPath:"courses/post-training/full-course.mp4",objectKey:"media/videos/d3df6a3b2ffe6c696b9dc0774ceaec19a2b8a92b170476cacb9df8dbdb2a526f.mp4",sha256:"d3df6a3b2ffe6c696b9dc0774ceaec19a2b8a92b170476cacb9df8dbdb2a526f",sizeBytes:55740426,durationSeconds:1760.192},{id:"openpond-agent-overview",localPath:"tutorials/what-is-an-openpond-agent.mp4",objectKey:"media/videos/421160f56d82abd6515df0d5ccf144591749e0ab1d58d630805c4807913812c7.mp4",sha256:"421160f56d82abd6515df0d5ccf144591749e0ab1d58d630805c4807913812c7",sizeBytes:5259848,durationSeconds:77.467},{id:"make-agent-tutorial",localPath:"tutorials/how-to-make-an-agent.mp4",objectKey:"media/videos/252d2f27076c904d85c9854c2f4c494fe9e92b3cea7d2c58ffbaa0323c17f255.mp4",sha256:"252d2f27076c904d85c9854c2f4c494fe9e92b3cea7d2c58ffbaa0323c17f255",sizeBytes:17339101,durationSeconds:273.067},{id:"make-agent-tutorial-create",localPath:"tutorials/how-to-make-an-agent-create.mp4",objectKey:"media/videos/322c999225d4759c34334eee22edee25a737fb06c5c6d66ee1f84485bb586c44.mp4",sha256:"322c999225d4759c34334eee22edee25a737fb06c5c6d66ee1f84485bb586c44",sizeBytes:6050301,durationSeconds:100.4},{id:"make-agent-tutorial-use",localPath:"tutorials/how-to-make-an-agent-use.mp4",objectKey:"media/videos/6e28bb710f90de8968fa18f996973b869e6748797739dd93cce49d8fbba564c1.mp4",sha256:"6e28bb710f90de8968fa18f996973b869e6748797739dd93cce49d8fbba564c1",sizeBytes:5084394,durationSeconds:75.1},{id:"make-agent-tutorial-improve",localPath:"tutorials/how-to-make-an-agent-improve.mp4",objectKey:"media/videos/fe8b62bf6ed5f5b933b0023dfdd9a06e69b5b352d4c702b671ec7677b395d58d.mp4",sha256:"fe8b62bf6ed5f5b933b0023dfdd9a06e69b5b352d4c702b671ec7677b395d58d",sizeBytes:6255324,durationSeconds:108.634}],me={playlists:fe,videos:ge},be="https://media.openpond.ai",K=me,he=new Map(K.playlists.map(e=>[e.id,e])),ye=new Map(K.videos.map(e=>[e.id,e]));function z(e){const a=he.get(e);if(!a)throw new Error(`Public video manifest is missing playlist ${e}`);return a}function Te(e,a){return a?`${be}/${e.objectKey}`:I(e.localPath)}function E(e){const a=ye.get(e);if(!a)throw new Error(`Public video manifest is missing ${e}`);return Te(a,!0)}const xe=E("make-agent-tutorial"),Ae=E("openpond-agent-overview");function ve(e){return E(`make-agent-tutorial-${e}`)}const Pe={title:"How to make an agent"},je=[{id:"create",label:"Create",title:"Create an Agent",subtitle:"Turn a plain-language purpose into a working Account Health Agent.",outroTitle:"Account Health Agent created",outroSubtitle:"The agent is ready to use. · AI-generated narration",cardDuration:1.5},{id:"use",label:"Use",title:"Use the Agent",subtitle:"Chat with the Account Health Agent and run its actions with approval.",outroTitle:"First agent run complete",outroSubtitle:"The result and supporting evidence are ready to review. · AI-generated narration",cardDuration:1.5},{id:"improve",label:"Improve",title:"Improve the Agent",subtitle:"Use real run evidence and Evals to make the Account Health Agent better.",outroTitle:"Account Health Agent improved",outroSubtitle:"The updated agent passed its Evals. · AI-generated narration",cardDuration:1.5}],$={tutorial:Pe,chapters:je},Ne=z("how-to-make-an-agent"),B=$.chapters,Ie={create:"1:24",use:"1:05",improve:"1:10"},S=Ne.title,Ee=$.tutorial.title,F="4:33",H={captionsUrl:re,chapterIds:B.map(e=>e.id),description:"Create, use, and improve an Account Health Agent in one continuous walkthrough.",duration:F,eyebrow:"Play all",id:"make-agent-tutorial",lessonNumber:null,posterUrl:ie,title:Ee,videoId:"play-all",videoUrl:xe},T=B.map((e,a)=>({captionsUrl:de(e.id),chapterIds:[e.id],description:e.subtitle,duration:Ie[e.id],eyebrow:`Lesson ${a+1}`,id:`make-agent-tutorial-${e.id}`,lessonNumber:a+1,posterUrl:oe(e.id),title:e.title,videoId:e.id,videoUrl:ve(e.id)})),we=[H,...T];function W(e){return we.find(a=>a.videoId===e)??H}function Se(e){const a=T.findIndex(i=>i.videoId===e);return a<0?null:T[a+1]?.videoId??null}const Re=[2,1,0];function _e({activeVideoId:e="play-all",autoplay:a=!0,onClose:i,onOpen:n,onSelectVideo:d,open:s=!1,playRequestId:r=0}={}){const u=x.useRef(null),l=W(e);x.useEffect(()=>{if(!s)return;const c=u.current;c&&(c.load(),r>0&&c.play().catch(()=>{}))},[l.id,s,r]);function p(){if(!a||!d)return;const c=Se(e);c&&d(c)}return t.jsxs("section",{className:"get-started-series","aria-label":S,children:[t.jsxs("article",{className:"get-started-playlist-card","aria-labelledby":"make-agent-series-title",children:[t.jsx("button",{"aria-haspopup":"dialog","aria-label":`Open ${S} playlist`,className:"get-started-playlist-open",onClick:n,type:"button"}),t.jsxs("div",{className:"get-started-playlist-stack","aria-hidden":"true",children:[Re.map((c,f)=>{const m=T[c];return t.jsx("div",{className:`get-started-playlist-poster layer-${f+1}`,children:t.jsx("img",{alt:"",decoding:"async",src:m.posterUrl})},m.id)}),t.jsx("span",{className:"get-started-course-play-icon",children:t.jsx(k,{fill:"currentColor",size:19})}),t.jsxs("span",{className:"get-started-playlist-count",children:[T.length," lessons"]})]}),t.jsxs("div",{className:"get-started-playlist-copy",children:[t.jsx("h1",{id:"make-agent-series-title",children:S}),t.jsxs("div",{className:"get-started-course-meta",children:[t.jsx("span",{children:"Walkthrough playlist"}),t.jsx("span",{"aria-hidden":"true",children:"·"}),t.jsx("span",{children:F})]}),t.jsx("p",{children:"Create, use, and improve an Account Health Agent, or play the full walkthrough."})]})]}),s&&i&&d?t.jsx(Oe,{activeVideoId:e,autoplay:a,contained:!0,inertExclusionSelector:".get-started-learning-panel",onClose:i,onEnded:p,onSelectVideo:d,videoRef:u}):null]})}function Oe({activeVideoId:e="play-all",autoplay:a=!0,contained:i=!1,inertExclusionSelector:n,onClose:d,onEnded:s,onSelectVideo:r=()=>{},videoRef:u}){const l=W(e),p=T.findIndex(m=>m.videoId===e),c=p>=0?T[p+1]?.videoId:void 0,f=p>0?T[p-1]?.videoId:void 0;return t.jsx(L,{autoAdvance:a&&p>=0,contained:i,inertExclusionSelector:n,navigation:p>=0?{currentIndex:p,onNext:c?()=>r(c):void 0,onPrevious:f?()=>r(f):void 0,total:T.length}:void 0,onClose:d,onEnded:s?()=>s():void 0,video:l,videoRef:u})}const U=z("post-training-from-first-principles"),q=U.title,ke=U.status;function h(e,a,i,n,d,s){const r=`courses/post-training/${a}`,u=`post-training-${a}`;return{captionsUrl:I(`${r}.vtt`),description:s,duration:d,eyebrow:n,id:u,lessonNumber:e,posterUrl:I(`${r}-poster.webp`),slug:a,title:i,videoUrl:E(u)}}const A=[h(1,"01-how-post-training-works","How post-training works","Start here","1:05","The choose, judge, and update loop behind every method in this series."),h(2,"02-definitions","Definitions","Reference","6:14","Policy notation, softmax, rollouts, advantages, gradients, GRPO, and the acronyms used throughout the series."),h(3,"03-on-policy-off-policy","On-policy and off-policy data","Data source","1:06","Why learner rollouts and teacher or stored data support different updates."),h(4,"04-rewards-credit-assignment","Rewards and credit assignment","RL foundation","3:00","Follow a code-repair trajectory from actions and observations to advantage."),h(5,"05-verifiable-rewards-rlvr","Verifiable rewards","RLVR","2:53","See how tests create scalable rewards—and how a model can exploit the checker."),h(6,"06-ppo-grpo","PPO and GRPO","Policy updates","2:54","Compare PPO's learned critic with GRPO's sibling-response baseline."),h(7,"07-distillation","Distillation","Teacher targets","2:42","Transfer a teacher's token distribution instead of copying one final answer."),h(8,"08-opsd-sdft-sdpo","OPSD, SDFT, and SDPO","Teacher evidence","2:43","Compare trusted solutions, demonstrations, and failure feedback at one prefix."),h(9,"09-credible-experiments","Credible experiments","Research design","3:32","Build versioned datasets, fair baselines, and claims that survive scrutiny."),h(10,"10-technical-appendix","Technical appendix","Advanced details","3:12","Inspect GRPO normalization, compressed teacher logits, reported method results, and sample routing.")],Le="29 min",O=U.fullVideoId;if(!O)throw new Error("Post-training playlist is missing its full video");const Y={captionsUrl:I("courses/post-training/full-course.vtt"),description:"All ten lessons in one continuous video for watching, sharing, or uploading.",duration:"29:20",eyebrow:"Full course",id:O,posterUrl:I("courses/post-training/full-course-poster.webp"),title:q,videoUrl:E(O)};function J(e){const a=e+1;return a<A.length?a:null}const V="Subject to change, lesson work in progress";function Ue(){const e=ke==="draft"?"Draft":"Published";return t.jsx("span",{"aria-label":`${e}: ${V}`,className:"get-started-playlist-status app-tooltip","data-tooltip":V,tabIndex:0,children:e})}const C="openpond.post-training-progress.v1",j=Object.freeze({}),Ce=1e3,X=new Set;let P=null,N=null,G=!1;function R(e){return typeof e=="number"&&Number.isFinite(e)?e:null}function Me(e){if(!e||typeof e!="object"||Array.isArray(e))return j;const a={};for(const[i,n]of Object.entries(e)){if(!i||!n||typeof n!="object"||Array.isArray(n))continue;const d=n,s=R(d.duration),r=R(d.currentTime),u=R(d.updatedAt);if(s===null||s<=0||r===null)continue;const l=d.completed===!0;a[i]={completed:l,currentTime:l?s:Math.min(s,Math.max(0,r)),duration:s,updatedAt:u===null?0:Math.max(0,u)}}return Object.keys(a).length>0?a:j}function Q(e){if(!e)return j;try{return Me(JSON.parse(e))}catch{return j}}function Ve(){if(typeof window>"u")return j;try{return Q(window.localStorage.getItem(C))}catch{return j}}function Z(){if(typeof window<"u"&&N!==null&&window.clearTimeout(N),N=null,!(typeof window>"u"||P===null))try{window.localStorage.setItem(C,JSON.stringify(P))}catch{}}function Ge(){typeof window>"u"||N!==null||(N=window.setTimeout(Z,Ce))}function De(){typeof window>"u"||G||(G=!0,window.addEventListener("pagehide",Z),window.addEventListener("storage",e=>{e.key===C&&(P=Q(e.newValue),X.forEach(a=>a()))}))}function ee(){return P===null&&(P=Ve()),De(),P}function D({completed:e=!1,currentTime:a,duration:i,lessonId:n}){if(!n||!Number.isFinite(i)||i<=0||!Number.isFinite(a))return;const d=ee(),s=d[n],r=!!(s?.completed||e),u=r?i:Math.min(i,Math.max(0,a));s&&s.completed===r&&Math.abs(s.currentTime-u)<.25&&Math.abs(s.duration-i)<.25||(P={...d,[n]:{completed:r,currentTime:u,duration:i,updatedAt:Date.now()}},Ge(),X.forEach(l=>l()))}function Ke(e){return!e||e.completed||e.currentTime<1?0:e.currentTime<e.duration-2?e.currentTime:0}const _=q,ze=[2,1,0];function $e({activeLessonIndex:e,fullCourseSelected:a=!1,autoplay:i=!0,open:n,onClose:d,onOpen:s,onSelectLesson:r,playRequestId:u=0}){const l=x.useRef(null),p=x.useRef(null),c=A[e]??A[0],f=a?Y:c;x.useEffect(()=>{if(!n)return;const o=l.current;if(!o)return;let b=!1;p.current=null,o.load();const y=()=>{if(b)return;const M=Ke(ee()[f.id]);M>0&&(o.currentTime=M),u>0&&o.play().catch(()=>{})};return o.readyState>=HTMLMediaElement.HAVE_METADATA?y():o.addEventListener("loadedmetadata",y,{once:!0}),()=>{b=!0,o.removeEventListener("loadedmetadata",y),Number.isFinite(o.duration)&&o.duration>0&&o.currentTime>0&&D({completed:o.ended,currentTime:o.currentTime,duration:o.duration,lessonId:f.id})}},[f.id,n,u]);function m(o,b=!1){!Number.isFinite(o.duration)||o.duration<=0||D({completed:b,currentTime:b?o.duration:o.currentTime,duration:o.duration,lessonId:f.id})}function w(o){if(!Number.isFinite(o.duration)||o.duration<=0)return;const b=Math.min(99,Math.floor(o.currentTime/o.duration*100)),y=p.current;y?.lessonId===f.id&&y.percent===b||(p.current={lessonId:f.id,percent:b},m(o))}function v(o){m(o,!0),i&&!a&&g()}function g(){const o=J(e);o!==null&&r(o)}return t.jsxs("section",{className:"get-started-series","aria-label":_,children:[t.jsxs("article",{className:"get-started-playlist-card","aria-labelledby":"post-training-series-title",children:[t.jsx("button",{"aria-haspopup":"dialog","aria-label":`Open ${_} playlist`,className:"get-started-playlist-open",onClick:s,type:"button"}),t.jsxs("div",{className:"get-started-playlist-stack","aria-hidden":"true",children:[ze.map((o,b)=>{const y=A[o];return t.jsx("div",{className:`get-started-playlist-poster layer-${b+1}`,children:t.jsx("img",{alt:"",decoding:"async",src:y.posterUrl})},y.id)}),t.jsx("span",{className:"get-started-course-play-icon",children:t.jsx(k,{fill:"currentColor",size:19})}),t.jsxs("span",{className:"get-started-playlist-count",children:[A.length," lessons"]})]}),t.jsxs("div",{className:"get-started-playlist-copy",children:[t.jsxs("div",{className:"get-started-playlist-title",children:[t.jsx("h1",{id:"post-training-series-title",children:_}),t.jsx(Ue,{})]}),t.jsxs("div",{className:"get-started-course-meta",children:[t.jsx("span",{children:"Learning series"}),t.jsx("span",{"aria-hidden":"true",children:"·"}),t.jsx("span",{children:Le})]}),t.jsx("p",{children:"Rewards, GRPO, RLVR, distillation, experiments, and a technical appendix."})]})]}),n?t.jsx(Be,{activeLessonIndex:e,autoplay:i,fullCourseSelected:a,onClose:d,onEnded:v,onPause:m,onSelectLesson:r,onTimeUpdate:w,videoRef:l}):null]})}function Be({activeLessonIndex:e,autoplay:a,fullCourseSelected:i,onClose:n,onEnded:d,onPause:s,onSelectLesson:r,onTimeUpdate:u,videoRef:l}){const p=A[e]??A[0],c=J(e),f=i?Y:p;return t.jsx(L,{autoAdvance:a&&!i,contained:!0,inertExclusionSelector:".get-started-learning-panel",navigation:i?void 0:{currentIndex:e,onNext:c!==null?()=>r(c):void 0,onPrevious:e>0?()=>r(e-1):void 0,total:A.length},onClose:n,onEnded:d,onPause:s,onTimeUpdate:u,video:f,videoRef:l})}const Fe={captionsUrl:ce,description:"See how Profile Agents combine chat, direct actions, shared runtime surfaces, and Evals.",duration:"1:16",eyebrow:"Agent overview",id:"openpond-agent-overview",posterUrl:le,title:"What is an OpenPond Agent?",videoUrl:Ae};function Qe(e={}){const[a,i]=x.useState(null),[n,d]=x.useState(null),s=e.makeAgentTutorial===void 0?a:e.makeAgentTutorial,r=e.postTrainingCourse===void 0?n:e.postTrainingCourse,u=!!(r||s);function l(){if(e.onOpenMakeAgentTutorial){e.onOpenMakeAgentTutorial();return}d(null),i({autoplay:!0,playRequestId:0,videoId:"create"})}function p(){if(e.onCloseMakeAgentTutorial){e.onCloseMakeAgentTutorial();return}i(null)}function c(v){if(e.onSelectMakeAgentTutorialVideo){e.onSelectMakeAgentTutorialVideo(v);return}i(g=>g&&{...g,playRequestId:g.playRequestId+1,videoId:v})}function f(){if(e.onOpenPostTrainingCourse){e.onOpenPostTrainingCourse();return}i(null),d({autoplay:!0,fullCourseSelected:!1,lessonIndex:0,playRequestId:0})}function m(){if(e.onClosePostTrainingCourse){e.onClosePostTrainingCourse();return}d(null)}function w(v){if(e.onSelectPostTrainingLesson){e.onSelectPostTrainingLesson(v);return}d(g=>g&&{...g,fullCourseSelected:!1,lessonIndex:v,playRequestId:g.playRequestId+1})}return t.jsx("section",{className:`get-started-view ${u?"course-player-open":""}`,"aria-label":"Walkthroughs",children:t.jsxs("div",{className:"get-started-shell",children:[t.jsxs("section",{className:"get-started-start-here","aria-labelledby":"get-started-start-here-title",children:[t.jsx("header",{className:"get-started-section-heading",children:t.jsx("h2",{id:"get-started-start-here-title",children:"Start here"})}),t.jsx("div",{className:"get-started-learning-grid",children:t.jsx(pe,{titleElement:"h1",video:Fe})})]}),t.jsxs("section",{className:"get-started-walkthroughs","aria-labelledby":"get-started-walkthroughs-title",children:[t.jsx("header",{className:"get-started-section-heading",children:t.jsx("h2",{id:"get-started-walkthroughs-title",children:"Walkthroughs"})}),t.jsx("div",{className:"get-started-learning-grid",children:t.jsx(_e,{activeVideoId:s?.videoId??"create",autoplay:s?.autoplay??!0,onClose:p,onOpen:l,onSelectVideo:c,open:!!s,playRequestId:s?.playRequestId??0})})]}),t.jsxs("section",{className:"get-started-learn","aria-labelledby":"get-started-learn-title",children:[t.jsx("header",{className:"get-started-section-heading",children:t.jsx("h2",{id:"get-started-learn-title",children:"Learn deeper"})}),t.jsx("div",{className:"get-started-learning-grid",children:t.jsx($e,{activeLessonIndex:r?.lessonIndex??0,autoplay:r?.autoplay??!0,fullCourseSelected:r?.fullCourseSelected??!1,open:!!r,onClose:m,onOpen:f,onSelectLesson:w,playRequestId:r?.playRequestId??0})})]})]})})}export{Qe as GetStartedView};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{r as p,j as n}from"./index-Dvq7bpBG.js";import{ap as Ot,o as Mt,a as zt,c0 as Dt,C as Ft,d as De,aL as Bt}from"./App-BOkhmdHu.js";import{a as Ne,i as me,aw as it,al as lt,ax as st,ay as _t,a1 as Pe,X as we,W as Se,d as ot,af as Vt,az as Ut,y as be,ag as ct,aA as Kt,aB as Wt,E as Te,H as dt,aC as Gt,J as ut,K as pt,M as qt,aD as Ht,L as Fe,p as Jt,r as mt,aE as Xt,Z as ht,_ as Yt,$ as Zt,a0 as Qt,a2 as Z,a3 as ft,a4 as ea,a5 as ta,a6 as aa,aF as na,a7 as ra,ab as ia,a9 as la,aa as gt,aG as Be,ah as sa,ai as oa,aj as ca,ak as da,s as ua,D as pa,ap as ma,aq as ha,ar as fa,as as ga,at as va,au as ba,av as xa}from"./CartesianChart-Y0lsL4vC.js";import{s as K,f as xe,c as Q,b as ee,g as _e,d as he}from"./training-model-data-CKOkpBBL.js";import{L as Ce,b as Ae,a as ya,l as ja,c as ka,d as Na,e as Pa,m as wa,f as Sa,g as Ta,h as Ca,r as Aa,i as Ia,M as vt,j as Ea,k as Ra,E as Ve}from"./LabsRoute-9v8qwEBc.js";import"./index-66-ohHD5.js";import"./cloud-upload-CsrrwS-b.js";import"./MainPane-BbknUzp3.js";import"./chat-file-links-Bned0MT7.js";import"./arrow-up-right-4nAzMtjW.js";import"./square-LY3oz82L.js";import"./AppDialog-BCjKFUBn.js";import"./ComposerCreateImproveStrip-BGzCWVFp.js";import"./play-BqgRTddV.js";import"./refresh-cw-DwMA_2On.js";/* empty css */import"./info-aYWeE1Iw.js";function ye(){return ye=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var a=arguments[t];for(var r in a)({}).hasOwnProperty.call(a,r)&&(e[r]=a[r])}return e},ye.apply(null,arguments)}var bt=e=>{var t=e.cx,a=e.cy,r=e.r,l=e.className,i=Ne("recharts-dot",l);return me(t)&&me(a)&&me(r)?p.createElement("circle",ye({},lt(e),it(e),{className:i,cx:t,cy:a,r})):null},$a=["points"];function Ue(e,t){var a=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(l){return Object.getOwnPropertyDescriptor(e,l).enumerable})),a.push.apply(a,r)}return a}function fe(e){for(var t=1;t<arguments.length;t++){var a=arguments[t]!=null?arguments[t]:{};t%2?Ue(Object(a),!0).forEach(function(r){La(e,r,a[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(a)):Ue(Object(a)).forEach(function(r){Object.defineProperty(e,r,Object.getOwnPropertyDescriptor(a,r))})}return e}function La(e,t,a){return(t=Oa(t))in e?Object.defineProperty(e,t,{value:a,enumerable:!0,configurable:!0,writable:!0}):e[t]=a,e}function Oa(e){var t=Ma(e,"string");return typeof t=="symbol"?t:t+""}function Ma(e,t){if(typeof e!="object"||!e)return e;var a=e[Symbol.toPrimitive];if(a!==void 0){var r=a.call(e,t);if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(t==="string"?String:Number)(e)}function ie(){return ie=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var a=arguments[t];for(var r in a)({}).hasOwnProperty.call(a,r)&&(e[r]=a[r])}return e},ie.apply(null,arguments)}function za(e,t){if(e==null)return{};var a,r,l=Da(e,t);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);for(r=0;r<i.length;r++)a=i[r],t.indexOf(a)===-1&&{}.propertyIsEnumerable.call(e,a)&&(l[a]=e[a])}return l}function Da(e,t){if(e==null)return{};var a={};for(var r in e)if({}.hasOwnProperty.call(e,r)){if(t.indexOf(r)!==-1)continue;a[r]=e[r]}return a}function Fa(e){var t=e.option,a=e.dotProps,r=e.className;if(p.isValidElement(t))return p.cloneElement(t,a);if(typeof t=="function")return t(a);var l=Ne(r,typeof t!="boolean"?t.className:""),i=a??{};i.points;var c=za(i,$a);return p.createElement(bt,ie({},c,{className:l}))}function Ba(e,t){return e==null?!1:t?!0:e.length===1}function _a(e){var t=e.points,a=e.dot,r=e.className,l=e.dotClassName,i=e.dataKey,c=e.baseProps,s=e.needClip,d=e.clipPathId,o=e.zIndex,h=o===void 0?we.scatter:o;if(!Ba(t,a))return null;var u=st(a),m=_t(a),f=t.map((j,k)=>{var N,x,g=fe(fe(fe({r:3},c),m),{},{index:k,cx:(N=j.x)!==null&&N!==void 0?N:void 0,cy:(x=j.y)!==null&&x!==void 0?x:void 0,dataKey:i,value:j.value,payload:j.payload,points:t});return p.createElement(Fa,{key:"dot-".concat(k),option:a,dotProps:g,className:l})}),y={};return s&&d!=null&&(y.clipPath="url(#clipPath-".concat(u?"":"dots-").concat(d,")")),p.createElement(Pe,{zIndex:h},p.createElement(Se,ie({className:r},y),f))}function Ke(e,t){var a=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(l){return Object.getOwnPropertyDescriptor(e,l).enumerable})),a.push.apply(a,r)}return a}function ge(e){for(var t=1;t<arguments.length;t++){var a=arguments[t]!=null?arguments[t]:{};t%2?Ke(Object(a),!0).forEach(function(r){Va(e,r,a[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(a)):Ke(Object(a)).forEach(function(r){Object.defineProperty(e,r,Object.getOwnPropertyDescriptor(a,r))})}return e}function Va(e,t,a){return(t=Ua(t))in e?Object.defineProperty(e,t,{value:a,enumerable:!0,configurable:!0,writable:!0}):e[t]=a,e}function Ua(e){var t=Ka(e,"string");return typeof t=="symbol"?t:t+""}function Ka(e,t){if(typeof e!="object"||!e)return e;var a=e[Symbol.toPrimitive];if(a!==void 0){var r=a.call(e,t);if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(t==="string"?String:Number)(e)}var Wa=e=>{var t=e.point,a=e.childIndex,r=e.mainColor,l=e.activeDot,i=e.dataKey,c=e.clipPath;if(l===!1||t.x==null||t.y==null)return null;var s={index:a,dataKey:i,cx:t.x,cy:t.y,r:4,fill:r??"none",strokeWidth:2,stroke:"#fff",payload:t.payload,value:t.value},d=ge(ge(ge({},s),ct(l)),it(l)),o;return p.isValidElement(l)?o=p.cloneElement(l,d):typeof l=="function"?o=l(d):o=p.createElement(bt,d),p.createElement(Se,{className:"recharts-active-dot",clipPath:c},o)};function Ga(e){var t=e.points,a=e.mainColor,r=e.activeDot,l=e.itemDataKey,i=e.clipPath,c=e.zIndex,s=c===void 0?we.activeDot:c,d=ot(Vt),o=Ut();if(t==null||o==null)return null;var h=t.find(u=>o.includes(u.payload));return be(h)?null:p.createElement(Pe,{zIndex:s},p.createElement(Wa,{point:h,childIndex:Number(d),mainColor:a,dataKey:l,activeDot:r,clipPath:i}))}var qa=["animationElapsedTime","isAnimating","isEntrance","visibleLength","strokeDasharray","connectNulls"];function je(){return je=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var a=arguments[t];for(var r in a)({}).hasOwnProperty.call(a,r)&&(e[r]=a[r])}return e},je.apply(null,arguments)}function Ha(e,t){if(e==null)return{};var a,r,l=Ja(e,t);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);for(r=0;r<i.length;r++)a=i[r],t.indexOf(a)===-1&&{}.propertyIsEnumerable.call(e,a)&&(l[a]=e[a])}return l}function Ja(e,t){if(e==null)return{};var a={};for(var r in e)if({}.hasOwnProperty.call(e,r)){if(t.indexOf(r)!==-1)continue;a[r]=e[r]}return a}function Xa(e){try{return e&&e.getTotalLength&&e.getTotalLength()||0}catch{return 0}}function xt(e,t){return"".concat(t,"px ").concat(e,"px")}function Ya(e){return e.length%2!==0?[...e,...e]:e}function Za(e,t){for(var a=[],r=0;r<t;++r)a.push(...e);return a}function Qa(e,t,a){var r=Ya(a),l=r.reduce((f,y)=>f+y,0);if(!l)return xt(t,e);for(var i=Math.floor(e/l),c=e%l,s=[],d=0,o=0;d<r.length;o+=(h=r[d])!==null&&h!==void 0?h:0,++d){var h,u=r[d];if(u!=null&&o+u>c){s=[...r.slice(0,d),c-o];break}}var m=s.length%2===0?[0,t]:[t];return[...Za(r,i),...s,...m].map(f=>"".concat(f,"px")).join(", ")}function en(e,t,a){if(e){var r="".concat(e).split(/[,\s]+/gim).map(l=>parseFloat(l));return Qa(a,t,r)}return xt(t,a)}function tn(e){e.animationElapsedTime,e.isAnimating,e.isEntrance;var t=e.visibleLength,a=e.strokeDasharray,r=e.connectNulls,l=Ha(e,qa),i=r??!1,c;if(t!=null){var s,d=l.pathRef,o=Xa((s=d?.current)!==null&&s!==void 0?s:null);c=en(a,o,t)}else a!=null&&(c=String(a));return p.createElement(Kt,je({},l,{connectNulls:i,strokeDasharray:c}))}function an(e){var t=p.useRef(0),a=p.useRef(0),r=p.useRef(!1),l=p.useRef(e);return l.current!==e&&(t.current=a.current,l.current=e),p.useCallback((i,c)=>{if(r.current)return null;var s=Math.min(Wt(t.current+i*c),c);return i>0&&c>0&&(a.current=Math.max(a.current,s),s>=c)?(r.current=!0,null):s},[])}var yt=(e,t,a,r)=>ut(e,"xAxis",t,r),jt=(e,t,a,r)=>pt(e,"xAxis",t,r),kt=(e,t,a,r)=>ut(e,"yAxis",a,r),Nt=(e,t,a,r)=>pt(e,"yAxis",a,r),nn=Te([dt,yt,kt,jt,Nt],(e,t,a,r,l)=>Ht(e,"xAxis")?Fe(t,r,!1):Fe(a,l,!1)),rn=(e,t,a,r,l)=>l;function ln(e){return e.type==="line"}var sn=Te([qt,rn],(e,t)=>e.filter(ln).find(a=>a.id===t)),on=Te([dt,yt,kt,jt,Nt,sn,nn,Gt],(e,t,a,r,l,i,c,s)=>{var d=s.chartData,o=s.dataStartIndex,h=s.dataEndIndex;if(!(i==null||t==null||a==null||r==null||l==null||r.length===0||l.length===0||c==null||e!=="horizontal"&&e!=="vertical")){var u=i.dataKey,m=i.data,f;if(m!=null&&m.length>0?f=m:f=d?.slice(o,h+1),f!=null)return In({layout:e,xAxis:t,yAxis:a,xAxisTicks:r,yAxisTicks:l,dataKey:u,bandSize:c,displayedData:f})}});function cn(e){var t=ct(e),a=3,r=2;if(t!=null){var l=t.r,i=t.strokeWidth,c=Number(l),s=Number(i);return(Number.isNaN(c)||c<0)&&(c=a),(Number.isNaN(s)||s<0)&&(s=r),{r:c,strokeWidth:s}}return{r:a,strokeWidth:r}}var dn=["id"],un=["type","layout","connectNulls","needClip","shape","strokeDasharray"],pn=["activeDot","animateNewValues","animationBegin","animationDuration","animationEasing","connectNulls","dot","hide","isAnimationActive","label","legendType","xAxisId","yAxisId","id"];function le(){return le=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var a=arguments[t];for(var r in a)({}).hasOwnProperty.call(a,r)&&(e[r]=a[r])}return e},le.apply(null,arguments)}function Ie(e,t){if(e==null)return{};var a,r,l=mn(e,t);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);for(r=0;r<i.length;r++)a=i[r],t.indexOf(a)===-1&&{}.propertyIsEnumerable.call(e,a)&&(l[a]=e[a])}return l}function mn(e,t){if(e==null)return{};var a={};for(var r in e)if({}.hasOwnProperty.call(e,r)){if(t.indexOf(r)!==-1)continue;a[r]=e[r]}return a}function We(e,t){var a=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(l){return Object.getOwnPropertyDescriptor(e,l).enumerable})),a.push.apply(a,r)}return a}function D(e){for(var t=1;t<arguments.length;t++){var a=arguments[t]!=null?arguments[t]:{};t%2?We(Object(a),!0).forEach(function(r){hn(e,r,a[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(a)):We(Object(a)).forEach(function(r){Object.defineProperty(e,r,Object.getOwnPropertyDescriptor(a,r))})}return e}function hn(e,t,a){return(t=fn(t))in e?Object.defineProperty(e,t,{value:a,enumerable:!0,configurable:!0,writable:!0}):e[t]=a,e}function fn(e){var t=gn(e,"string");return typeof t=="symbol"?t:t+""}function gn(e,t){if(typeof e!="object"||!e)return e;var a=e[Symbol.toPrimitive];if(a!==void 0){var r=a.call(e,t);if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(t==="string"?String:Number)(e)}function vn(e){try{return e&&e.getTotalLength&&e.getTotalLength()||0}catch{return 0}}function bn(e){var t=0,a=0;for(var r of e)r.status==="matched"&&r.prev.x!=null&&r.next.x!=null&&(t+=r.next.x-r.prev.x,a++);return a>0?t/a:0}var xn=(e,t)=>{if(e==null)return[];if(t===1)return e.flatMap(s=>s.status==="removed"?[]:[s.next]);var a=bn(e),r=[];for(var l of e)if(l.status==="matched")r.push(D(D({},l.next),{},{x:Z(l.prev.x,l.next.x,t),y:Z(l.prev.y,l.next.y,t)}));else if(l.status==="added")if(l.next.x!=null){var i=l.next.x-a;r.push(D(D({},l.next),{},{x:Z(i,l.next.x,t),y:l.next.y}))}else r.push(l.next);else if(l.status==="removed"&&l.prev.x!=null){var c=l.prev.x+a;r.push(D(D({},l.prev),{},{x:Z(l.prev.x,c,t),y:l.prev.y}))}return r},Ee={activeDot:!0,animateNewValues:!0,animationBegin:0,animationDuration:1500,animationEasing:"ease",animationInterpolateFn:xn,animationMatchBy:Xt,connectNulls:!1,dot:!0,fill:"#fff",hide:!1,isAnimationActive:"auto",label:!1,legendType:"line",shape:tn,stroke:"#3182bd",strokeWidth:1,xAxisId:0,yAxisId:0,zIndex:we.line,type:"linear"},yn=e=>{var t=e.dataKey,a=e.name,r=e.stroke,l=e.legendType,i=e.hide;return[{inactive:i,dataKey:t,type:l,color:r,value:ft(a,t),payload:e}]},jn=p.memo(e=>{var t=e.dataKey,a=e.data,r=e.stroke,l=e.strokeWidth,i=e.fill,c=e.name,s=e.hide,d=e.unit,o=e.formatter,h=e.tooltipType,u=e.id,m={dataDefinedOnItem:a,getPosition:ta,settings:{stroke:r,strokeWidth:l,fill:i,dataKey:t,nameKey:void 0,name:ft(c,t),hide:s,type:h,color:r,unit:d,formatter:o,graphicalItemId:u}};return p.createElement(ea,{tooltipEntrySettings:m})});function kn(e){var t=e.clipPathId,a=e.points,r=e.props,l=r.dot,i=r.dataKey,c=r.needClip;r.id;var s=Ie(r,dn),d=lt(s);return p.createElement(_a,{points:a,dot:l,className:"recharts-line-dots",dotClassName:"recharts-line-dot",dataKey:i,baseProps:d,needClip:c,clipPathId:t})}function Nn(e){var t=e.showLabels,a=e.children,r=e.points,l=p.useMemo(()=>r?.map(i=>{var c,s,d={x:(c=i.x)!==null&&c!==void 0?c:0,y:(s=i.y)!==null&&s!==void 0?s:0,width:0,lowerWidth:0,upperWidth:0,height:0};return D(D({},d),{},{value:i.value,payload:i.payload,viewBox:d,parentViewBox:void 0,fill:void 0})}),[r]);return p.createElement(da,{value:t?l:void 0},a)}function Pn(e){var t=e.clipPathId,a=e.pathRef,r=e.points,l=e.props,i=e.animationElapsedTime,c=e.isAnimating,s=e.isEntrance,d=e.visibleLength,o=l.type,h=l.layout,u=l.connectNulls,m=l.needClip,f=l.shape,y=l.strokeDasharray,j=Ie(l,un),k=D(D({},ua(j)),{},{fill:"none",className:"recharts-line-curve",clipPath:m?"url(#clipPath-".concat(t,")"):void 0,points:r,type:o,layout:h,connectNulls:u,strokeDasharray:y??l.strokeDasharray,pathRef:a,animationElapsedTime:i,isAnimating:c,isEntrance:l.animateNewValues?s:!1,visibleLength:d});return p.createElement(p.Fragment,null,r?.length>1&&p.createElement(pa,{option:f,DefaultShape:Ee.shape,shapeProps:k}),p.createElement(kn,{points:r,clipPathId:t,props:l}))}function wn(e){var t=e.clipPathId,a=e.props,r=e.pathRef,l=e.previousPointsRef,i=a.points,c=a.isAnimationActive,s=a.animationBegin,d=a.animationDuration,o=a.animationEasing,h=a.animationMatchBy,u=a.animationInterpolateFn,m=a.layout,f=vn(r.current),y=sa(a.onAnimationStart,a.onAnimationEnd),j=y.isAnimating,k=y.handleAnimationStart,N=y.handleAnimationEnd,x=!j,g=an(i),v=p.useCallback(C=>C>0&&f>0,[f]);return p.createElement(Nn,{points:i,showLabels:x},a.children,p.createElement(oa,{animationInput:i,animationIdPrefix:"recharts-line-",items:i,previousItemsRef:l,isAnimationActive:c,animationBegin:s,animationDuration:d,animationEasing:o,onAnimationStart:k,onAnimationEnd:N,animationInterpolateFn:u,animationMatchBy:h,shouldUpdatePreviousRef:v,layout:m},(C,O,V)=>{var _=j||O<1,F=_?g(O,f):null;return p.createElement(Pn,{props:a,points:C,clipPathId:t,pathRef:r,animationElapsedTime:O,isAnimating:_,isEntrance:V,visibleLength:F})}),p.createElement(ca,{label:a.label}))}function Sn(e){var t=e.clipPathId,a=e.props,r=p.useRef(null),l=p.useRef(null);return p.createElement(wn,{props:a,clipPathId:t,previousPointsRef:r,pathRef:l})}var Tn=(e,t)=>{var a,r;return{x:(a=e.x)!==null&&a!==void 0?a:void 0,y:(r=e.y)!==null&&r!==void 0?r:void 0,value:e.value,errorVal:gt(e.payload,t)}};class Cn extends p.Component{render(){var t=this.props,a=t.hide,r=t.dot,l=t.points,i=t.className,c=t.xAxisId,s=t.yAxisId,d=t.top,o=t.left,h=t.width,u=t.height,m=t.id,f=t.needClip,y=t.zIndex;if(a)return null;var j=Ne("recharts-line",i),k=m,N=cn(r),x=N.r,g=N.strokeWidth,v=st(r),C=x*2+g,O=f?"url(#clipPath-".concat(v?"":"dots-").concat(k,")"):void 0;return p.createElement(Pe,{zIndex:y},p.createElement(Se,{className:j},f&&p.createElement("defs",null,p.createElement(ia,{clipPathId:k,xAxisId:c,yAxisId:s}),!v&&p.createElement("clipPath",{id:"clipPath-dots-".concat(k)},p.createElement("rect",{x:o-C/2,y:d-C/2,width:h+C,height:u+C}))),p.createElement(la,{xAxisId:c,yAxisId:s,data:l,dataPointFormatter:Tn,errorBarOffset:0},p.createElement(Sn,{props:this.props,clipPathId:k}))),p.createElement(Ga,{activeDot:this.props.activeDot,points:l,mainColor:this.props.stroke,itemDataKey:this.props.dataKey,clipPath:O}))}}function An(e){var t=mt(e,Ee),a=t.activeDot,r=t.animateNewValues,l=t.animationBegin,i=t.animationDuration,c=t.animationEasing,s=t.connectNulls,d=t.dot,o=t.hide,h=t.isAnimationActive,u=t.label,m=t.legendType,f=t.xAxisId,y=t.yAxisId,j=t.id,k=Ie(t,pn),N=aa(f,y),x=N.needClip,g=na(),v=ra(),C=ht(),O=ot(Y=>on(Y,f,y,C,j));if(v!=="horizontal"&&v!=="vertical"||O==null||g==null)return null;var V=g.height,_=g.width,F=g.x,S=g.y;return p.createElement(Cn,le({},k,{id:j,connectNulls:s,dot:d,activeDot:a,animateNewValues:r,animationBegin:l,animationDuration:i,animationEasing:c,isAnimationActive:h,hide:o,label:u,legendType:m,xAxisId:f,yAxisId:y,points:O,layout:v,height:V,width:_,left:F,top:S,needClip:x}))}function In(e){var t=e.layout,a=e.xAxis,r=e.yAxis,l=e.xAxisTicks,i=e.yAxisTicks,c=e.dataKey,s=e.bandSize,d=e.displayedData;return d.map((o,h)=>{var u=gt(o,c);if(t==="horizontal"){var m=Be({axis:a,ticks:l,bandSize:s,entry:o,index:h}),f=be(u)?null:r.scale.map(u);return{x:m,y:f??null,value:u,payload:o}}var y=be(u)?null:a.scale.map(u),j=Be({axis:r,ticks:i,bandSize:s,entry:o,index:h});return y==null||j==null?null:{x:y,y:j,value:u,payload:o}}).filter(Boolean)}function En(e){var t=mt(e,Ee),a=ht();return p.createElement(Yt,{id:t.id,type:"line"},r=>p.createElement(p.Fragment,null,p.createElement(Zt,{legendPayload:yn(t)}),p.createElement(jn,{dataKey:t.dataKey,data:t.data,stroke:t.stroke,strokeWidth:t.strokeWidth,fill:t.fill,name:t.name,hide:t.hide,unit:t.unit,formatter:t.formatter,tooltipType:t.tooltipType,id:r}),p.createElement(Qt,{type:"line",id:r,data:t.data,xAxisId:t.xAxisId,yAxisId:t.yAxisId,zAxisId:0,dataKey:t.dataKey,hide:t.hide,isPanorama:a}),p.createElement(An,le({},t,{id:r}))))}var Pt=p.memo(En,Jt);Pt.displayName="Line";var Rn=["axis"],$n=p.forwardRef((e,t)=>p.createElement(ma,{chartName:"LineChart",defaultTooltipEventType:"axis",validateTooltipEventTypes:Rn,tooltipPayloadSearcher:ha,categoricalChartProps:e,ref:t}));function Ln({events:e}){const t=e.filter(a=>a.type==="metric"&&a.payload.metricKind==="rollout_trajectory");return t.length?n.jsx("div",{className:"training-rollout-receipts",children:t.map((a,r)=>{const l=a.payload.rewardEligible===!0,i=q(a.payload.reward),c=typeof a.payload.failureClass=="string"?a.payload.failureClass:null,s=typeof a.payload.failureCode=="string"?a.payload.failureCode:null;return n.jsxs("details",{children:[n.jsxs("summary",{children:[n.jsxs("span",{children:["Attempt ",r+1]}),n.jsx("strong",{children:l?"eligible":"ineligible"}),n.jsx("em",{children:l&&i!=null?i.toFixed(3):s??c??"not reward eligible"})]}),n.jsxs("dl",{className:"training-configuration-list",children:[n.jsx(P,{label:"Rollout",value:Ge(a.payload.rolloutId)}),n.jsx(P,{label:"Group",value:Ge(a.payload.rolloutGroupId)}),n.jsx(P,{label:"Policy",value:`v${q(a.payload.policyVersion)??0}`}),n.jsx(P,{label:"Worker",value:String((q(a.payload.workerSlot)??0)+1)}),n.jsx(P,{label:"Reward",value:i==null?"Not eligible":String(i)}),n.jsx(P,{label:"Failure class",value:c??"None"}),n.jsx(P,{label:"Failure code",value:s??"None"}),n.jsx(P,{label:"Components",value:JSON.stringify(a.payload.rewardComponents??{})}),n.jsx(P,{label:"Tokens",value:`${q(a.payload.inputTokens)??0} input · ${q(a.payload.outputTokens)??0} output`})]})]},a.id)})}):n.jsx("div",{className:"training-run-placeholder",children:"No managed attempts were recorded for this run."})}function On({receipts:e}){const[t,a]=p.useState(!1);if(!e.length)return n.jsx("div",{className:"training-run-placeholder",children:"No on-policy rollout receipts were recorded for this run."});const r=[...e].sort((i,c)=>c.updatedAt.localeCompare(i.updatedAt)),l=t?r:r.slice(0,24);return n.jsxs("div",{className:"training-rollout-receipts",children:[e.length>24?n.jsxs("div",{className:"training-rollout-receipt-controls",children:[n.jsx("span",{children:t?`Showing all ${e.length} receipts`:`Showing latest ${l.length} of ${e.length} receipts`}),n.jsx("button",{className:"training-text-button",type:"button",onClick:()=>a(i=>!i),children:t?"Show latest 24":`Show all ${e.length}`})]}):null,l.map(i=>n.jsxs("details",{children:[n.jsxs("summary",{children:[n.jsx("span",{children:Mn(i.providerTrace.rolloutId)}),n.jsx("strong",{children:i.status}),n.jsx("em",{children:i.reward.eligible&&i.reward.raw!=null?i.reward.raw.toFixed(3):i.failureClass??"not reward eligible"})]}),n.jsxs("dl",{className:"training-configuration-list",children:[n.jsx(P,{label:"Correlation",value:i.correlationId}),n.jsx(P,{label:"Task",value:i.taskId}),n.jsx(P,{label:"Policy",value:i.policy.modelId}),n.jsx(P,{label:"Checkpoint",value:i.policy.checkpointId??"Provider initial policy"}),n.jsx(P,{label:"Environment",value:`${i.environment.id}@${i.environment.version}`}),n.jsx(P,{label:"World",value:`${i.environment.worldId} · ${i.environment.worldHash}`}),n.jsx(P,{label:"Raw reward",value:i.reward.raw==null?"Not eligible":String(i.reward.raw)}),n.jsx(P,{label:"Components",value:JSON.stringify(i.reward.components)}),n.jsx(P,{label:"Outcome",value:i.verifier?.outcome??i.failureClass??"Pending"}),n.jsx(P,{label:"Trace",value:`${i.providerTrace.experimentId}/${i.providerTrace.rolloutId}`})]})]},i.id))]})}function P({label:e,value:t}){return n.jsxs("div",{children:[n.jsx("dt",{children:e}),n.jsx("dd",{children:t})]})}function q(e){return typeof e=="number"&&Number.isFinite(e)?e:null}function Ge(e){return typeof e=="string"&&e?e:"Not recorded"}function Mn(e){return e.replace(/^lineage_/,"").slice(0,18)}function zn({detail:e,loading:t,pending:a=!1}){if(t&&!e)return n.jsx("div",{className:"training-run-placeholder",children:"Loading evaluation results…"});const r=e?.evaluation;return r?n.jsxs("div",{className:"training-run-evaluation",children:[n.jsxs("div",{className:"training-metric-summary",children:[n.jsx(te,{label:"Base score",value:qe(r.base.meanScore)}),n.jsx(te,{label:"Trained score",value:qe(r.trained.meanScore)}),n.jsx(te,{label:"Score change",value:Bn(r.meanScoreDelta)}),n.jsx(te,{label:"Trained pass rate",value:Fn(r.trained.passRate)})]}),r.base.count===0?n.jsx("p",{className:"training-muted",children:"Base-model scoring was not imported for this earlier run. New runs retain both base and trained evaluations."}):null,r.trained.count>0&&r.trained.scoredCount===0?n.jsx("p",{className:"training-muted",children:"Outputs were captured, but the grader was unavailable, so this run has no evaluation score."}):null,n.jsx("div",{className:"training-table-wrap",children:n.jsxs("table",{className:"training-data-table training-evaluation-table",children:[n.jsx("thead",{children:n.jsxs("tr",{children:[n.jsx("th",{children:"Test example"}),n.jsx("th",{children:"Base"}),n.jsx("th",{children:"Trained"}),n.jsx("th",{children:"Result"})]})}),n.jsx("tbody",{children:r.examples.map(l=>n.jsxs("tr",{children:[n.jsx("td",{children:n.jsxs("details",{children:[n.jsx("summary",{children:l.taskId}),n.jsx(Dn,{input:l.input,baseOutput:l.baseOutput,trainedOutput:l.trainedOutput,baseGrade:l.baseGrade,trainedGrade:l.trainedGrade})]})}),n.jsx("td",{children:He(l.baseGrade)}),n.jsx("td",{children:He(l.trainedGrade)}),n.jsx("td",{children:_n(l.baseGrade,l.trainedGrade)})]},l.taskId))})]})})]}):n.jsx("div",{className:"training-run-placeholder",children:a?"Evaluation will appear here after the first eligible checkpoint is scored.":"No scored evaluation results are available for this run."})}function Dn({input:e,baseOutput:t,trainedOutput:a,baseGrade:r,trainedGrade:l}){const i=[...new Set([...r?.feedback??[],...l?.feedback??[]])];return n.jsxs("div",{className:"training-evaluation-output",children:[n.jsxs("div",{children:[n.jsx("span",{children:"Input"}),n.jsx("pre",{children:JSON.stringify(e,null,2)})]}),t?n.jsxs("div",{children:[n.jsx("span",{children:"Base output"}),n.jsx("pre",{children:JSON.stringify(t,null,2)})]}):null,a?n.jsxs("div",{children:[n.jsx("span",{children:"Trained output"}),n.jsx("pre",{children:JSON.stringify(a,null,2)})]}):null,i.length?n.jsxs("div",{children:[n.jsx("span",{children:"Grader feedback"}),n.jsx("p",{children:i.join(" ")})]}):null]})}function te({label:e,value:t}){return n.jsxs("div",{children:[n.jsx("span",{children:e}),n.jsx("strong",{children:t})]})}function qe(e){return e==null?"Not recorded":e.toFixed(3)}function Fn(e){return e==null?"Not recorded":`${Math.round(e*100)}%`}function Bn(e){return e==null?"Not comparable":`${e>=0?"+":""}${e.toFixed(3)}`}function He(e){return e?.status==="unavailable"?"Unavailable":e?.score==null?"Not scored":e.score.toFixed(3)}function _n(e,t){if(!t)return"Not evaluated";if(t.status==="unavailable")return"Unavailable";if(!e||e.score==null||t.score==null)return t.passed?"Passed":"Failed";const a=t.score-e.score;return Math.abs(a)<5e-4?"No change":a>0?`Improved ${a.toFixed(3)}`:`Regressed ${Math.abs(a).toFixed(3)}`}const Vn=[{id:"optimizer.reward",label:"Mean reward",points:[]},{id:"reward.variance",label:"Reward variance",points:[]},{id:"optimizer.kl",label:"Policy update KL",points:[]},{id:"optimizer.policy_loss",label:"Policy loss",points:[]},{id:"optimizer.learning_rate",label:"Learning rate",points:[],format:"scientific"}];function Un({series:e,loading:t=!1,live:a=!1}){const[r,l]=p.useState("raw"),i=p.useMemo(()=>{const s=e.filter(o=>o.points.length);if(!t&&!a)return s;const d=new Map(s.map(o=>[o.id,o]));for(const o of Vn)d.has(o.id)||d.set(o.id,o);return[...d.values()]},[a,t,e]),c=i.some(s=>s.points.length>1);return i.length?n.jsxs("section",{className:"training-metric-workbench","aria-label":"Training metrics",children:[c?n.jsx("div",{className:"training-metric-workbench-controls",children:n.jsxs("label",{children:[n.jsx("span",{children:"Display"}),n.jsxs("select",{"aria-label":"Metric display",onChange:s=>l(s.currentTarget.value),value:r,children:[n.jsx("option",{value:"raw",children:"Raw values"}),n.jsx("option",{value:"smoothed",children:"Smoothed trend"})]})]})}):null,n.jsx("div",{className:"training-metric-chart-grid",children:i.map(s=>n.jsx(Kn,{display:r,loading:t&&!s.points.length,metric:s,pending:a&&!s.points.length},s.id))})]}):n.jsx("div",{className:"training-run-placeholder",children:"This run did not report chartable metrics."})}const Kn=p.memo(function({metric:t,display:a,loading:r,pending:l}){const i=p.useMemo(()=>a==="smoothed"?qn(t.points,3):t.points,[a,t.points]),c=p.useMemo(()=>t.points.length?Hn(t.points.map(o=>o.value)):null,[t.points]),s=o=>Jn(o,t.format),d=t.xLabel??"training step";return n.jsxs("article",{className:"training-metric-chart-card",children:[n.jsxs("header",{children:[n.jsxs("div",{className:"training-metric-chart-title",children:[n.jsx("h4",{children:t.label}),n.jsx("span",{children:t.points.length?`${t.points.length} ${t.points.length===1?"point":"points"}`:l?"Live":"No data"})]}),n.jsx("div",{className:"training-metric-chart-header-actions",children:c?n.jsx("strong",{children:s(c.latest)}):null})]}),t.points.length?n.jsx("div",{className:"training-metric-card-chart","aria-label":`${t.label} by ${d}`,children:n.jsx(fa,{height:"100%",width:"100%",children:n.jsxs($n,{data:i,margin:{top:18,right:18,bottom:4,left:0},children:[n.jsx(ga,{stroke:"var(--border)",strokeDasharray:"3 4",vertical:!1}),n.jsx(va,{axisLine:!1,dataKey:"step",fontSize:10,stroke:"var(--muted)",tickLine:!1}),n.jsx(ba,{axisLine:!1,dataKey:"value",domain:t.format==="percent"?[0,1]:["auto","auto"],fontSize:10,stroke:"var(--muted)",tickFormatter:s,tickLine:!1,width:66}),n.jsx(xa,{content:o=>n.jsx(Wn,{active:o.active,format:s,label:t.label,payload:o.payload,xLabel:d}),isAnimationActive:!1}),n.jsx(Pt,{activeDot:{fill:"var(--cyan, #06b6d4)",r:5},dataKey:"value",dot:{fill:"var(--cyan, #06b6d4)",r:2.5},isAnimationActive:!1,stroke:"var(--cyan, #06b6d4)",strokeWidth:2,type:"monotone"})]})})}):n.jsxs("div",{className:r?"training-metric-chart-empty is-loading":"training-metric-chart-empty",children:[r?n.jsxs("span",{className:"sr-only",children:["Loading ",t.label]}):null,r?null:n.jsx("span",{children:l?"Waiting for rollout…":"No data reported"})]}),c?n.jsxs("dl",{className:"training-metric-card-stats",children:[n.jsx(ae,{label:"Mean",value:s(c.mean)}),n.jsx(ae,{label:"Min",value:s(c.min)}),n.jsx(ae,{label:"Max",value:s(c.max)}),n.jsx(ae,{label:"Std. dev.",value:s(c.standardDeviation)})]}):null]})});function Wn({active:e,payload:t,label:a,format:r,xLabel:l}){if(!e||!t.length)return null;const i=t[0]?.payload;return typeof i?.value!="number"?null:n.jsxs("div",{className:"training-chart-tooltip",children:[n.jsxs("strong",{children:[Gn(l)," ",String(i.step??"—")]}),n.jsx("dl",{children:n.jsxs("div",{children:[n.jsx("dt",{children:a}),n.jsx("dd",{children:r(i.value)})]})})]})}function Gn(e){return e.replace(/^./,t=>t.toUpperCase())}function ae({label:e,value:t}){return n.jsxs("div",{children:[n.jsx("dt",{children:e}),n.jsx("dd",{children:t})]})}function qn(e,t){return e.map((a,r)=>{const l=e.slice(Math.max(0,r-t+1),r+1);return{step:a.step,value:l.reduce((i,c)=>i+c.value,0)/l.length}})}function Hn(e){const t=[...e].sort((l,i)=>l-i),a=e.reduce((l,i)=>l+i,0)/e.length,r=e.reduce((l,i)=>l+(i-a)**2,0)/e.length;return{latest:e.at(-1),mean:a,min:t[0],max:t.at(-1),standardDeviation:Math.sqrt(r)}}function Jn(e,t="number"){return t==="percent"?`${(e*100).toFixed(2)}%`:t==="scientific"?e.toExponential(2):Math.abs(e)>=1e3?e.toLocaleString(void 0,{maximumFractionDigits:2}):e.toFixed(4)}function Xn(e,t=[]){const a=t.filter(d=>d.split==="train"),r=new Map(a.map(d=>[d.id,d])),l=new Map,i=new Set,c=new Map,s=new Set;for(const d of e){if(d.type!=="metric")continue;const o=d.payload;if(o.metricKind==="rollout_trajectory"){const h=T(o.rolloutGroupId)??"group-0",u=l.get(h),m=z(o.rolloutGroupIndex)??u?.groupIndex??l.size,f=T(o.taskId),y=(f?r.get(f):null)??(a.length?a[m%a.length]??null:null),j=wt(y?.metadata),k={id:d.id,rolloutIndex:z(o.rolloutIndex),workerSlot:z(o.workerSlot),attempt:z(o.attempt)??1,policyVersion:z(o.policyVersion),reward:Re(o.reward),rewardEligible:o.rewardEligible===!0,terminalClass:T(o.terminalClass),failure:T(o.failureCode)??T(o.failureClass),inputTokens:z(o.inputTokens)??0,outputTokens:z(o.outputTokens)??0,components:Yn(o)};l.set(h,{id:h,groupIndex:m,taskId:f??y?.id??u?.taskId??null,taskLabel:Qn(y)??u?.taskLabel??null,taskFamily:T(o.taskFamily)??T(o.scenarioFamily)??y?.clusterKey??T(j.scenarioFamily)??u?.taskFamily??null,policyVersion:z(o.policyVersion)??u?.policyVersion??null,trajectories:[...u?.trajectories??[],k]});continue}if(o.metricKind==="optimizer_disposition"){const h=T(o.rolloutGroupId);if(!h)continue;const u=T(o.optimizerDisposition)??T(o.disposition)??T(o.remotePhase);u?.includes("skipped")&&i.add(h),u==="applied"&&c.set(h,z(o.step));continue}if(o.metricKind==="policy_optimization"){const h=z(o.step),u=T(o.rolloutGroupId);h!==null&&s.add(h),u&&c.set(u,h)}}return[...l.values()].sort((d,o)=>d.groupIndex-o.groupIndex).map(d=>{const o=d.trajectories.flatMap(m=>m.rewardEligible&&m.reward!==null?[m.reward]:[]),h=c.get(d.id);let u=h===void 0?null:h;if(u===null&&!i.has(d.id)){const m=d.groupIndex+1;s.has(m)&&(u=m)}return{...d,optimizerDisposition:i.has(d.id)?"skipped":u!==null?"applied":"pending",optimizerStep:u,mean:Zn(o),minimum:o.length?Math.min(...o):null,maximum:o.length?Math.max(...o):null}})}function Yn(e){const t=[e.rewardComponents,e.rubricComponents,e.components].find(ke);return t?Object.entries(t).flatMap(([a,r])=>{if(typeof r=="number"&&Number.isFinite(r))return[{id:a,label:Je(a),score:r,passed:null,feedback:null}];if(!ke(r))return[];const l=[r.score,r.reward,r.value,r.rewardContribution].map(Re).find(i=>i!==null);return l===void 0?[]:[{id:a,label:T(r.label)??T(r.name)??Je(a),score:l,passed:typeof r.passed=="boolean"?r.passed:null,feedback:T(r.feedback)}]}):[]}function Zn(e){return e.length?e.reduce((t,a)=>t+a,0)/e.length:null}function Re(e){return typeof e=="number"&&Number.isFinite(e)?e:null}function z(e){const t=Re(e);return t!==null&&Number.isInteger(t)?t:null}function T(e){return typeof e=="string"&&e.trim()?e.trim():null}function ke(e){return!!e&&typeof e=="object"&&!Array.isArray(e)}function wt(e){return ke(e)?e:{}}function Je(e){return e.replaceAll(/[._-]+/g," ").replace(/^./,t=>t.toUpperCase())}function Qn(e){if(!e)return null;const t=wt(e.input),a=[t.title,t.name,t.prompt,t.instruction,t.question,t.query].find(l=>typeof l=="string"&&!!l.trim());if(!a)return null;const r=a.trim().split(/\n\s*\n/,1)[0].replaceAll(/\s+/g," ");return r.length>110?`${r.slice(0,107).trimEnd()}…`:r}const er=new Set(["optimizer.reward","rollout.reward"]),tr=[{key:"meanReward",id:"optimizer.reward",label:"Mean reward"},{key:"meanReturn",id:"optimizer.return",label:"Mean return"},{key:"learningRate",id:"optimizer.learning_rate",label:"Learning rate",format:"scientific"},{key:"policyLoss",id:"optimizer.policy_loss",label:"Policy loss"},{key:"valueLoss",id:"optimizer.value_loss",label:"Value loss"},{key:"gradientNorm",id:"optimizer.gradient_norm",label:"Gradient norm"},{key:"kl",id:"optimizer.kl",label:"Policy update KL"},{key:"behaviorPolicyKlPreUpdate",id:"optimizer.behavior_policy_kl",label:"Behavior-policy KL (pre-update)"},{key:"entropy",id:"optimizer.entropy",label:"Entropy"},{key:"policyClipFraction",id:"optimizer.policy_clip_fraction",label:"Post-update clip fraction",format:"percent"},{key:"behaviorPolicyClipFractionPreUpdate",id:"optimizer.behavior_policy_clip_fraction",label:"Behavior-policy clip fraction (pre-update)",format:"percent"},{key:"valueClipFraction",id:"optimizer.value_clip_fraction",label:"Value clip fraction",format:"percent"},{key:"explainedVariance",id:"optimizer.explained_variance",label:"Explained variance"}],ar=[{key:"loss",id:"optimizer.loss",label:"Loss"},{key:"reward",id:"optimizer.reward",label:"Reward"},{key:"policyLoss",id:"optimizer.policy_loss",label:"Policy loss"},{key:"advantageLoss",id:"optimizer.advantage_loss",label:"Advantage loss"},{key:"learningRate",id:"optimizer.learning_rate",label:"Learning rate",format:"scientific"},{key:"gradientNorm",id:"optimizer.gradient_norm",label:"Gradient norm"},{key:"meanTokenAccuracy",id:"train.token_accuracy",label:"Token accuracy",format:"percent"},{key:"preferenceAccuracy",id:"train.preference_accuracy",label:"Preference accuracy",format:"percent"},{key:"preferenceMargin",id:"train.preference_margin",label:"Preference margin"},{key:"chosenReward",id:"train.chosen_reward",label:"Chosen reward"},{key:"rejectedReward",id:"train.rejected_reward",label:"Rejected reward"},{key:"entropy",id:"optimizer.entropy",label:"Entropy"}];function nr({detail:e,loading:t,error:a,taskset:r=null}){Ot(a,{prefix:"Training metrics"});const l=p.useMemo(()=>e?Xn(e.events,r?.tasks):[],[e,r]),i=p.useMemo(()=>e?ir(lr(e),l):[],[e,l]);if(a&&!e)return n.jsx("div",{className:"training-run-placeholder",children:"Training metrics are unavailable."});if(!e&&!t)return n.jsx("div",{className:"training-run-placeholder",children:"Select a training run to inspect its metrics."});const c=e?["queued","starting","running","reconciling"].includes(e.job.status):!1;return n.jsx(Un,{live:c,loading:t&&!e,series:i})}function rr(e){const t=e.flatMap((a,r)=>a.mean===null?[]:[{step:r+1,value:a.mean}]);return t.length?{id:"optimizer.reward",label:"Mean reward",points:t,xLabel:"rollout group"}:null}function ir(e,t){const a=rr(t);return a?[a,...e.filter(r=>!er.has(r.id))]:e}function lr(e){const t=St(e.job.metadata.rolloutProgress),a=B(e.job.metadata.optimizerUpdatesObserved)??B(t.optimizerUpdatesApplied),r=or(e)==="grpo"&&a!==null?Math.max(0,a):null,l=Ze(e.stepMetrics).filter(d=>r===null||d.step<=r),i=[...Ye(Ze(e.policyMetrics),tr),...Ye(l,ar),...sr(e.events)],c=new Map;for(const d of i){const o=c.get(d.id);(!o||d.points.length>o.points.length)&&c.set(d.id,d)}const s=["optimizer.reward","rollout.reward","optimizer.kl","optimizer.loss","optimizer.learning_rate"];return[...c.values()].sort((d,o)=>Xe(d.id,s)-Xe(o.id,s)||d.label.localeCompare(o.label))}function Xe(e,t){const a=t.indexOf(e);return a<0?999:a}function Ye(e,t){return t.flatMap(a=>{const r=e.flatMap(l=>{const i=l[a.key];return typeof i=="number"&&Number.isFinite(i)?[{step:l.step,value:i}]:[]});return r.length?[{id:a.id,label:a.label,points:r,format:a.format}]:[]})}function Ze(e){const t=new Map;for(const a of e)t.set(a.step,a);return[...t.values()].sort((a,r)=>a.step-r.step)}function sr(e){const t=new Map,a=new Map,r=(i,c,s,d)=>{t.set(i,[...t.get(i)??[],{step:s,value:d}]),a.set(i,c)},l=new Map;for(const i of e)if(i.type==="metric"){if(i.payload.metricKind==="managed_telemetry"){const c=typeof i.payload.metricId=="string"?i.payload.metricId:null,s=B(i.payload.value),d=B(i.payload.step)??i.sequence;c&&s!==null&&r(c,Qe(c),d,s)}if(i.payload.metricKind==="rollout_trajectory"){const c=B(i.payload.rolloutIndex)??i.sequence,s=B(i.payload.reward);s!==null&&r("rollout.reward","Rollout reward",c,s);const d=typeof i.payload.rolloutGroupId=="string"?i.payload.rolloutGroupId:"group-0",o=i.payload.rewardEligible===!1||typeof i.payload.failureClass=="string"||typeof i.payload.failureCode=="string";l.set(d,[...l.get(d)??[],{reward:s,eligible:i.payload.rewardEligible===!0,resolved:s!==null||o,attempt:B(i.payload.attempt)??1,input:B(i.payload.inputTokens)??0,output:B(i.payload.outputTokens)??0}])}}return[...l.values()].forEach((i,c)=>{const s=i.filter(m=>m.resolved);if(!s.length)return;const d=s.flatMap(m=>m.eligible&&m.reward!==null?[m.reward]:[]),o=d.length?d.reduce((m,f)=>m+f,0)/d.length:0,h=d.length?d.reduce((m,f)=>m+(f-o)**2,0)/d.length:0,u=d.length?Math.max(...d):0;r("attempt.valid_rate","Valid attempt rate",c,d.length/s.length),r("attempt.failure_count","Attempt failures",c,s.length-d.length),r("attempt.retry_count","Attempt retries",c,s.reduce((m,f)=>m+Math.max(0,f.attempt-1),0)),r("reward.variance","Reward variance",c,h),r("reward.best","Best reward",c,u),r("tokens.input","Input tokens",c,i.reduce((m,f)=>m+f.input,0)),r("tokens.output","Output tokens",c,i.reduce((m,f)=>m+f.output,0))}),[...t].map(([i,c])=>({id:i,label:a.get(i)??Qe(i),points:c,format:i.endsWith("rate")||i.includes("fraction")?"percent":"number"}))}function B(e){return typeof e=="number"&&Number.isFinite(e)?e:null}function Qe(e){return e.replaceAll(/[._]/g," ").replace(/^./,t=>t.toUpperCase())}function or(e){const t=e.job.metadata.trainingMethod;if(typeof t=="string")return t;const a=St(e.job.metadata.sourceSnapshot);return typeof a.method=="string"?a.method:null}function St(e){return e&&typeof e=="object"&&!Array.isArray(e)?e:{}}const cr=new Set(["queued","starting","running","cancelling","reconciling"]),et=new WeakMap;function dr(e,t,a,r=!1){const[l,i]=p.useState(null),[c,s]=p.useState(!1),[d,o]=p.useState(null),h=p.useRef(t),u=p.useRef(null);h.current=t;const m=p.useCallback((f=r)=>{if(!e||!t)return Promise.resolve(null);const y=`${t}:${f?"full":"live"}`;if(u.current?.key===y)return u.current.request;s(!0);const j=Mt.trainingRunDetail(e,t,{includeEvaluation:f}).then(k=>{const N=tt(e),x=N.get(t),g=!f&&x?.includesEvaluation?{...k,evaluation:x.detail.evaluation}:k;return N.set(t,{detail:g,includesEvaluation:f||x?.includesEvaluation===!0}),h.current===t&&(i(g),o(null)),g}).catch(k=>(h.current===t&&o(k instanceof Error?k.message:String(k)),null)).finally(()=>{u.current?.request===j&&(u.current=null,s(!1))});return u.current={key:y,request:j},j},[e,r,t]);return p.useEffect(()=>{if(o(null),!e||!t){i(null);return}const f=tt(e).get(t);i(f?.detail??null),m(r)},[e,r,t,m]),p.useEffect(()=>{if(!e||!t||!a||!cr.has(a))return;const f=window.setInterval(()=>{m(!1)},2e3);return()=>window.clearInterval(f)},[e,t,a,m]),{detail:l,error:d,loading:c,refresh:m}}function tt(e){const t=et.get(e);if(t)return t;const a=new Map;return et.set(e,a),a}function ur({title:e,status:t,statusValue:a,versionStatus:r,method:l,baseModel:i,taskset:c,compute:s,duration:d,output:o,reward:h,telemetry:u,evidence:m,configuration:f,children:y,failure:j,onOpenTaskset:k,showHeader:N=!0}){const x=u?.cost.providerReportedUsd??u?.cost.estimatedUsd??m?.cost.totalUsd??null;return n.jsxs("div",{className:"labs-model-run-summary",children:[N?n.jsx("section",{className:"labs-run-outcome-card",children:n.jsx("header",{children:n.jsxs("div",{children:[n.jsxs("div",{className:"labs-run-title-row",children:[n.jsx("h2",{children:e}),n.jsx(Ce,{label:t,value:a})]}),n.jsxs("p",{children:[mr(l)," on ",i]})]})})}):null,y,n.jsxs("section",{className:"labs-run-summary-card",children:[n.jsx("header",{children:n.jsx("h3",{children:"Run setup"})}),n.jsxs("dl",{className:"labs-run-detail-list",children:[n.jsx(L,{label:"Training method",value:l}),n.jsx(L,{label:"Base model",value:i}),n.jsx(L,{label:"Compute",value:s}),n.jsx(L,{label:"Output",value:o}),r?n.jsx(L,{label:"Version status",value:r}):null,n.jsx(L,{label:"Duration",value:d}),n.jsx(L,{label:"Run cost",value:x===null?"Not reported":`$${x.toFixed(4)}`}),n.jsx(L,{label:"Final reward",value:h===null?"Not reported":h.toFixed(4)}),f.map(g=>n.jsx(L,{label:g.label,value:g.value},g.label)),u||m?n.jsxs(n.Fragment,{children:[n.jsx(H,{label:"GPU",value:pr(u,m)}),n.jsx(H,{label:"Tokens",value:`${J(u?.usage.promptTokens??m?.usage.inputTokens??null)} prompt · ${J(u?.usage.generatedTokens??m?.usage.outputTokens??null)} generated`}),n.jsx(H,{label:"Trajectories",value:`${J(u?.usage.successfulTrajectories??m?.reward.eligibleTrajectoryCount??null)} succeeded · ${J(u?.usage.failedTrajectories??(m?m.reward.trajectoryCount-m.reward.eligibleTrajectoryCount:null))} failed`}),n.jsx(H,{label:"Optimizer updates",value:J(u?.usage.optimizerSteps??m?.progress.committedOptimizerSteps??null)}),n.jsx(H,{label:"GPU time",value:u?.usage.gpuSeconds==null?"Not reported":`${u.usage.gpuSeconds.toFixed(1)} seconds`})]}):n.jsx(L,{label:"Resource usage",value:"Not retained for this run"}),n.jsxs("div",{children:[n.jsx("dt",{children:"Taskset"}),n.jsx("dd",{children:k?n.jsxs("button",{className:"labs-run-taskset-link",type:"button",onClick:k,children:[n.jsx("span",{children:c}),n.jsx(zt,{"aria-hidden":"true",size:14})]}):c})]})]})]}),j?n.jsx("p",{className:"labs-training-error",children:j}):null]})}function L({label:e,value:t}){return n.jsxs("div",{children:[n.jsx("dt",{children:e}),n.jsx("dd",{children:t})]})}function H({label:e,value:t}){return n.jsx(L,{label:e,value:t})}function pr(e,t){const a=e?.resource.gpuCount??t?.resource.gpuCount??null,r=e?.resource.gpuType??t?.resource.gpuType??null;return a===null&&r===null?"Not reported":`${a??"Unknown"} × ${r?hr(r):"Unreported"}`}function J(e){return e===null?"Not reported":e.toLocaleString()}function mr(e){return e==="RFT"?"Reinforcement fine-tuning":`${e} training`}function hr(e){return e.split(" · ").map(t=>t.replaceAll("_"," ").replace(/\b[a-z]/g,a=>a.toUpperCase())).join(" · ")}function fr({receipt:e,onOpenConversation:t}){return n.jsxs(n.Fragment,{children:[n.jsxs("section",{className:"labs-run-summary-card",children:[n.jsx("header",{children:n.jsx("h3",{children:"Inconclusive benchmark"})}),n.jsx("p",{className:"training-run-placeholder",children:e.reason}),n.jsxs("dl",{className:"labs-run-detail-list",children:[n.jsx(w,{label:"Held-out baseline tokens",value:e.usage.baseline.totalTokens.toLocaleString()}),n.jsx(w,{label:"Adaptation baseline tokens",value:e.usage.adaptation.totalTokens.toLocaleString()}),n.jsx(w,{label:"Refiner tokens",value:e.usage.refiner.totalTokens.toLocaleString()}),n.jsx(w,{label:"Grader tokens",value:e.usage.grader.totalTokens.toLocaleString()}),n.jsx(w,{label:"Observed / maximum spend",value:`$${e.budget.observedSpendUsd.toFixed(4)} / $${e.budget.maximumSpendUsd.toFixed(2)}`}),n.jsx(w,{label:"Harness candidate",value:e.stopReason==="candidate_harness_unchanged"?"Unchanged":"Lineage invalid"}),n.jsx(w,{label:"Completed attempts",value:e.attempts.length.toLocaleString()}),n.jsx(w,{label:"Candidate attempts",value:"Skipped"})]})]}),e.attempts.length?n.jsx(Tt,{receipt:e,onOpenConversation:t}):null]})}function gr({run:e}){const t=["baseline","adaptation","refiner","candidate_adaptation","candidate","comparison"],a={baseline:"Baseline",adaptation:"Adaptation",refiner:"Refiner",candidate_adaptation:"Sequential adaptation",candidate:"Candidate",comparison:"Comparison"},r=Math.max(0,t.indexOf(e.evaluationProgress?.stage??"baseline")),l=e.evaluationProgress?.completedAttempts??0,i=e.evaluationProgress?.totalAttempts??1;return n.jsxs("div",{className:"labs-benchmark-progress",children:[n.jsxs("header",{children:[n.jsx("h3",{children:"Benchmark progress"}),n.jsxs("strong",{children:[l," of ",i," attempts"]})]}),n.jsx("div",{className:"labs-benchmark-progress-track","aria-hidden":"true",children:n.jsx("span",{style:{width:`${Math.min(100,l/i*100)}%`}})}),n.jsx("ol",{children:t.map((c,s)=>n.jsxs("li",{className:s<r?"complete":s===r?"active":void 0,children:[n.jsx("span",{}),a[c]]},c))})]})}function vr({receipt:e}){const t=Ae(e),a=t.pairs.filter(i=>i.cohort==="held_out"),r=t.pairs.filter(i=>i.cohort==="adaptation"),l=i=>i.length?i.reduce((c,s)=>c+s,0)/i.length:0;return n.jsxs("div",{className:"labs-benchmark-attempt-charts",children:[n.jsx(ne,{title:"Held-out tokens by task",baseline:a.map(i=>i.baseline.totalTokens),candidate:a.map(i=>i.refined.totalTokens),format:i=>Math.round(i).toLocaleString()}),n.jsx(ne,{title:"Adaptation tokens by task",baseline:r.map(i=>i.baseline.totalTokens),candidate:r.map(i=>i.refined.totalTokens),format:i=>Math.round(i).toLocaleString()}),n.jsx(ne,{title:"Held-out quality by task",baseline:a.map(i=>i.baseline.score),candidate:a.map(i=>i.refined.score),format:i=>i.toFixed(2),summarize:l}),n.jsx(ne,{title:"Adaptation quality by task",baseline:r.map(i=>i.baseline.score),candidate:r.map(i=>i.refined.score),format:i=>i.toFixed(2),summarize:l})]})}function br({receipt:e,run:t,tasksetName:a,onOpenTaskset:r}){const l=Ae(e),i=l.comparedTaskCount>0,c=l.passed,s=l.tokenDeltaPercent===null?"—":`${l.tokenDeltaPercent>0?"+":""}${l.tokenDeltaPercent.toFixed(2)}%`,d=o=>{const h=l.cohorts[o];return`${h.passedTaskCount}/${h.comparedTaskCount} passed`};return n.jsxs("section",{className:"labs-run-summary-card",children:[n.jsx("header",{children:n.jsx("h3",{children:"Token efficiency"})}),i?n.jsxs("div",{className:"labs-benchmark-efficiency-summary",children:[n.jsxs("strong",{children:[l.passedTaskCount," of ",l.comparedTaskCount," tasks passed"]}),n.jsxs("p",{children:["A task passes only when its refined token count is strictly lower than its own baseline. ",l.failedTaskCount," failed this token-efficiency test; aggregate usage changed by ",s,"."]})]}):n.jsx("p",{className:"training-run-placeholder",children:"Paired task-level token evidence is unavailable for this run."}),n.jsxs("dl",{className:"labs-run-detail-list",children:[n.jsx(w,{label:"Execution",value:K(t.status)}),n.jsx(w,{label:"Token-efficiency result",value:c?"Passed":"Failed"}),n.jsx(w,{label:"Efficiency passes",value:`${l.passedTaskCount}/${l.comparedTaskCount}`}),n.jsx(w,{label:"Efficiency failures",value:`${l.failedTaskCount}/${l.comparedTaskCount}`}),n.jsx(w,{label:"All-task foreground tokens",value:`${l.baselineTokens.toLocaleString()} → ${l.refinedTokens.toLocaleString()}`}),n.jsx(w,{label:"Aggregate token change",value:s}),n.jsx(w,{label:"Adaptation replay",value:d("adaptation")}),n.jsx(w,{label:"Held-out replay",value:d("held_out")}),n.jsx(w,{label:"Task quality",value:`${l.baselinePassedCount}/${l.comparedTaskCount} → ${l.refinedPassedCount}/${l.comparedTaskCount}`}),n.jsx(w,{label:"Result lineage",value:e.lineage.valid?"Valid":"Invalid"}),n.jsxs("div",{children:[n.jsx("dt",{children:"Taskset"}),n.jsx("dd",{children:r?n.jsx("button",{className:"labs-run-taskset-link",type:"button",onClick:r,children:a}):a})]})]})]})}function ne({title:e,baseline:t,candidate:a,format:r,summarize:l=i=>i.reduce((c,s)=>c+s,0)}){const i=t.filter(u=>u!==null),c=a.filter(u=>u!==null),s=Math.max(1,...i,...c),d=Math.max(2,t.length,a.length),o=u=>{const m=[];let f=[];return u.forEach((y,j)=>{if(y===null){f.length&&m.push(f.join(" ")),f=[];return}const k=6+j/(d-1)*88,N=44-y/s*36;f.push(`${k},${N}`)}),f.length&&m.push(f.join(" ")),m},h=u=>u.flatMap((m,f)=>m===null?[]:[{x:6+f/(d-1)*88,y:44-m/s*36}]);return n.jsxs("section",{className:"labs-benchmark-line-chart",children:[n.jsxs("header",{children:[n.jsx("h4",{children:e}),n.jsxs("div",{children:[n.jsxs("span",{children:["Baseline ",r(l(i))]}),n.jsxs("span",{children:["Refined ",r(l(c))]})]})]}),n.jsxs("svg",{"aria-label":e,role:"img",viewBox:"0 0 100 50",preserveAspectRatio:"none",children:[n.jsx("line",{x1:"6",x2:"94",y1:"44",y2:"44"}),o(t).map((u,m)=>n.jsx("polyline",{className:"baseline",points:u},`baseline-${m}`)),o(a).map((u,m)=>n.jsx("polyline",{className:"candidate",points:u},`candidate-${m}`)),h(t).map((u,m)=>n.jsx("circle",{className:"baseline",cx:u.x,cy:u.y,r:"1"},`baseline-point-${m}`)),h(a).map((u,m)=>n.jsx("circle",{className:"candidate",cx:u.x,cy:u.y,r:"1"},`candidate-point-${m}`))]})]})}function Tt({receipt:e,onOpenConversation:t}){const a=e.schemaVersion==="openpond.modelEvaluationReceipt.v1"?ya(e.attempts??[]):e.attempts??[];return n.jsxs("section",{className:"labs-run-summary-card",children:[n.jsx("header",{children:n.jsx("h3",{children:e.schemaVersion==="openpond.modelEvaluationReceipt.v1"?"Selected task results":"Completed attempts"})}),n.jsx("div",{className:"training-table-wrap",children:n.jsxs("table",{className:"training-data-table labs-benchmark-attempt-table",children:[n.jsx("thead",{children:n.jsxs("tr",{children:[n.jsx("th",{children:"Task"}),n.jsx("th",{children:"Phase"}),n.jsx("th",{children:"Result"}),n.jsx("th",{children:"Score"}),n.jsx("th",{children:"Tokens"}),n.jsx("th",{children:"Work chat"})]})}),n.jsx("tbody",{children:a.map(r=>n.jsxs("tr",{children:[n.jsx("td",{children:xr(r.taskId)}),n.jsx("td",{children:r.phase}),n.jsx("td",{children:n.jsx(Ce,{label:r.passed?"Passed":"Failed",value:r.passed?"succeeded":"failed"})}),n.jsx("td",{children:r.score===null?"—":r.score.toFixed(2)}),n.jsx("td",{children:r.totalTokens.toLocaleString()}),n.jsx("td",{children:r.sessionId?n.jsx("button",{className:"labs-run-taskset-link",type:"button",onClick:()=>t(r.sessionId),children:"Open chat"}):"Not retained"})]},`${r.phase}:${r.attemptId}`))})]})})]})}function xr(e){return e.replace(/^(?:adaptation|frozen)-/,"").replaceAll("-"," ").replace(/^./,t=>t.toUpperCase())}function w({label:e,value:t}){return n.jsxs("div",{children:[n.jsx("dt",{children:e}),n.jsx("dd",{children:t})]})}function Ct(e){const t=["B","KB","MB","GB","TB"];let a=e,r=0;for(;a>=1024&&r<t.length-1;)a/=1024,r+=1;return`${a.toFixed(r===0?0:2)} ${t[r]}`}function yr({error:e,events:t,loading:a,pending:r}){const[l,i]=p.useState(!1),[c,s]=p.useState({}),[d,o]=p.useState(!0),h=p.useRef(null),u=p.useRef(null),m=p.useRef(null),f=p.useMemo(()=>jr(t),[t]),y=p.useMemo(()=>t.filter(x=>c[re(x)]??ve(re(x))),[t,c]),j=f.filter(x=>c[x.id]??ve(x.id)).length,k=f.length>0&&j===f.length,N=j>0&&!k;return p.useEffect(()=>{m.current&&(m.current.indeterminate=N)},[N]),p.useEffect(()=>{if(!l)return;const x=v=>{u.current?.contains(v.target)||i(!1)},g=v=>{v.key==="Escape"&&i(!1)};return document.addEventListener("pointerdown",x),document.addEventListener("keydown",g),()=>{document.removeEventListener("pointerdown",x),document.removeEventListener("keydown",g)}},[l]),p.useLayoutEffect(()=>{const x=h.current;!x||!d||(x.scrollTop=x.scrollHeight)},[e,d,r,y]),a&&!t.length?n.jsx("div",{className:"training-run-placeholder",children:"Loading run events…"}):t.length?n.jsxs("div",{className:"training-event-log-shell",children:[n.jsxs("div",{className:"training-event-log-toolbar",children:[n.jsx("div",{children:n.jsx("strong",{children:"Activity log"})}),n.jsxs("div",{className:"training-event-filter",ref:u,children:[n.jsxs("button",{"aria-expanded":l,"aria-haspopup":"menu",className:"training-event-filter-trigger",type:"button",onClick:()=>i(x=>!x),children:[n.jsx(Dt,{"aria-hidden":"true",size:14}),"Event types",n.jsxs("span",{children:[j,"/",f.length]}),n.jsx(Ft,{"aria-hidden":"true",size:13})]}),l?n.jsxs("div",{"aria-label":"Filter training activity by event type",className:"training-event-filter-menu",role:"menu",children:[n.jsxs("label",{className:"training-event-filter-option select-all",children:[n.jsx("input",{checked:k,ref:m,type:"checkbox",onChange:x=>{const g=x.currentTarget.checked;s(Object.fromEntries(f.map(v=>[v.id,g])))}}),n.jsx("span",{className:"training-event-filter-check",children:n.jsx(De,{"aria-hidden":"true",size:12})}),"Select all"]}),n.jsx("div",{className:"training-event-filter-options",children:f.map(x=>{const g=c[x.id]??ve(x.id);return n.jsxs("label",{className:"training-event-filter-option",children:[n.jsx("input",{checked:g,type:"checkbox",onChange:v=>s(C=>({...C,[x.id]:v.currentTarget.checked}))}),n.jsx("span",{className:"training-event-filter-check",children:n.jsx(De,{"aria-hidden":"true",size:12})}),n.jsx("span",{children:x.label}),n.jsx("small",{children:x.count.toLocaleString()})]},x.id)})})]}):null]})]}),n.jsxs("div",{"aria-label":"Training activity log","aria-live":"polite",className:"training-event-log",ref:h,role:"log",onScroll:x=>{const g=x.currentTarget,v=g.scrollHeight-g.scrollTop-g.clientHeight;o(v<=6)},children:[n.jsxs("div",{"aria-hidden":"true",className:"training-event-log-header",children:[n.jsx("span",{children:"Time"}),n.jsx("span",{children:"Event type"}),n.jsx("span",{children:"Details"})]}),y.map(x=>n.jsxs("div",{className:`training-event-log-line ${x.type}`,children:[n.jsx("time",{dateTime:x.timestamp,children:xe(x.timestamp)}),n.jsx("span",{children:At(re(x))}),n.jsx("code",{children:kr(x)})]},x.id)),r&&!e?n.jsxs("div",{className:"training-event-log-loading",role:"status",children:[n.jsx(Bt,{"aria-hidden":"true",className:"spin",size:14}),n.jsx("span",{className:"sr-only",children:"Waiting for new activity"})]}):null,y.length?null:n.jsx("div",{className:"training-event-log-empty",children:"No events match the selected event types."}),e?n.jsxs("div",{className:"training-event-log-line failure",children:[n.jsx("time",{children:"—"}),n.jsx("span",{children:"Failure"}),n.jsx("code",{children:e})]}):null]})]}):n.jsx("div",{className:"training-run-placeholder",children:e??"No normalized run events were recorded."})}function re(e){return typeof e.payload.remoteEventType=="string"&&e.payload.remoteEventType.trim()?e.payload.remoteEventType:typeof e.payload.telemetryType=="string"&&e.payload.telemetryType.trim()?e.payload.telemetryType:e.type}function jr(e){const t=new Map;for(const a of e){const r=re(a);t.set(r,(t.get(r)??0)+1)}return[...t.entries()].map(([a,r])=>({id:a,count:r,label:At(a)})).sort((a,r)=>a.label.localeCompare(r.label))}function ve(e){return e!=="metric"&&!e.endsWith("_metric")}function At(e){return e.replaceAll("_"," ").replace(/^./,t=>t.toUpperCase())}function kr(e){const t=e.payload,a=U(t.step),r=U(t.maxSteps);if(typeof t.telemetryType=="string"){const l=typeof t.message=="string"?t.message:null,i=typeof t.errorCode=="string"?t.errorCode:null,c=typeof t.telemetrySource=="string"?` · ${t.telemetrySource}`:"";return`${l??t.telemetryType.replaceAll("_"," ")}${a==null?"":` · step ${a}`}${c}${i?` · ${i}`:""}`}if(typeof t.remoteEventType=="string"){const l=Nr(t.remoteEventType),i=typeof t.remotePhase=="string"?Pr(t.remotePhase):null,c=typeof t.errorCode=="string"&&t.errorCode.trim()?t.errorCode.trim():null;return[l,i,a==null?null:`step ${a}`,c?`error ${c}`:null].filter(s=>!!s).join(" · ")}if(e.type==="start")return typeof t.device=="string"?`Worker started on ${t.device}.`:"Worker started.";if(e.type==="progress"&&a!=null)return r==null?`Step ${a}.`:`Step ${a} of ${r}.`;if(e.type==="metric"){const l=typeof t.metricKind=="string"?t.metricKind.replaceAll("_"," "):"metric",i=[X("loss",t.loss),X("reward",t.meanReward??t.reward),X("policy loss",t.policyLoss),X("value loss",t.valueLoss),X("preference accuracy",t.preferenceAccuracy,wr)].filter(o=>!!o),c=typeof t.failureClass=="string"?t.failureClass:null,s=typeof t.failureCode=="string"?t.failureCode:null,d=typeof t.metricId=="string"&&typeof t.value=="number"?` · ${t.metricId}: ${t.value.toPrecision(4)}`:"";return`${l}${a==null?"":` · step ${a}`}${d}${c?` · ${c}`:""}${s?` · ${s}`:""}${i.length?` · ${i.join(" · ")}`:""}`}if(e.type==="checkpoint"){const l=U(t.policyVersion),i=U(t.sizeBytes),c=[l==null?null:`policy ${l}`,i==null?null:Ct(i),t.final===!0?"final":null].filter(s=>!!s);return c.length?`Checkpoint committed · ${c.join(" · ")}.`:"Checkpoint committed."}if(e.type==="complete"){const l=U(t.artifactCount);return l==null?"Worker completed.":`Worker completed with ${l} artifacts.`}return e.type==="failure"&&typeof t.message=="string"?t.message:Object.keys(t).length?JSON.stringify(t):"Recorded."}function Nr(e){return{drain:"Rollout drain",infer:"Model inference",materialize_checkpoint:"Checkpoint materialization",optimizer_metric:"Optimizer metric",provision_gpu:"GPU provisioning",rollout_metric:"Rollout trajectory",score_reward_model:"Reward scoring",start_inference:"Policy server",train_step:"Optimizer update",upload_checkpoint:"Checkpoint upload"}[e]??It(e)}function Pr(e){return{committed:"committed",completed:"completed",eligible:"recorded",failed:"failed",running:"running",succeeded:"succeeded"}[e]??It(e).toLocaleLowerCase()}function It(e){return e.replaceAll("_"," ").replace(/^./,t=>t.toUpperCase())}function X(e,t,a=r=>new Intl.NumberFormat(void 0,{maximumFractionDigits:4}).format(r)){const r=U(t);return r==null?null:`${e} ${a(r)}`}function U(e){return typeof e=="number"&&Number.isFinite(e)?e:null}function wr(e){return`${(e*100).toFixed(1)}%`}function Zr({connection:e,detailTab:t,onDetailTabChange:a,selectedEntryKey:r,workproduct:l,runs:i,training:c,onOpenDataset:s,onOpenConversation:d,detailKind:o}){const h=c.payload,u=p.useMemo(()=>ja(l,i,h),[i,h,l]),m=p.useMemo(()=>ka(l,i,h),[i,h,l]),f=p.useMemo(()=>Na(l,h),[h,l]),y=p.useMemo(()=>Pa(l,i,h),[i,h,l]),j=p.useMemo(()=>new Map(y.map(b=>[b.id,b])),[y]),N=p.useMemo(()=>wa(u,m),[u,m]).find(b=>b.key===r)??null,x=r.startsWith("model-run:")?r.slice(10):null,g=x?f.find(b=>b.id===x)??null:N?.job?f.find(b=>b.id===N.job?.metadata.modelRunId)??null:null,v=N?.job??(g?h?.jobs.find(b=>b.id===g.id||b.metadata.modelRunId===g.id)??null:null),C=h?.comparisonSeriesEntries.find(b=>b.modelRunId===g?.id||b.modelRunId===v?.metadata.modelRunId)??null,O=typeof v?.metadata.parentHostedArtifactId=="string"?"Prior hosted run":$r(h,C),V=p.useMemo(()=>{const b=Sa(u,m,f);return Ta(b,g?.kind==="evaluation"?"evals":"training")},[u,f,g?.kind,m]),_=V.findIndex(b=>b.key===r||v!==null&&b.job?.id===v.id||g!==null&&b.lifecycleRun?.id===g.id),F=_<0?null:V.length-_,S=N?.version??(g?.adapterArtifactLineageId?m.find(b=>b.lineage.id===g.adapterArtifactLineageId)??null:null),Y=(g?h?.modelVersions.find(b=>b.id===g.modelVersionId)?.baseModel.modelId:null)??h?.modelVersions.filter(b=>b.modelId===l.id&&b.kind==="base_reference").sort((b,G)=>G.version-b.version)[0]?.baseModel.modelId??(typeof v?.metadata.baseModelId=="string"?v.metadata.baseModelId:null),$e=S?.lineage.frozenEvaluationArtifactId??null,R=S?.plan??(v?j.get(v.planId)??null:null),$=S?.taskset??Ca(h).find(b=>b.id===(g?.taskset.id??R?.tasksetId))??null,se=$?.name??(typeof v?.metadata.tasksetId=="string"?v.metadata.tasksetId:"Unavailable"),oe=g?.method??R?.recipe.method??Ar(v?.metadata),A=dr(e,v?.id??null,v?.status??null,t==="evaluation"),ce=v?h?.rolloutReceipts.filter(b=>b.jobId===v.id)??[]:[],I=A.detail?.managedEvidence??null,Et=A.detail?.events.some(b=>b.type==="metric"&&b.payload.metricKind==="rollout_trajectory")??!1,Le=Aa({lifecycleRun:g,job:A.detail?.job??v}),Oe=Ia(Le),de=oe==="grpo",W=Tr(v?.metadata),ue=(R&&(R.recipe.method==="sft"||R.recipe.method==="dpo"||R.recipe.method==="grpo")?R.recipe.optimizer.maxSteps:null)??I?.progress.targetOptimizerSteps??null,Rt=ue!==null&&typeof v?.metadata.progress=="number"&&Number.isFinite(v.metadata.progress)?Math.floor(Math.max(0,v.metadata.progress)*ue):0,$t=Math.max(0,W?.optimizerUpdatesApplied??0,Rt,A.detail?.policyMetrics.reduce((b,G)=>Math.max(b,G.step),0)??0,A.detail?.stepMetrics.reduce((b,G)=>Math.max(b,G.step),0)??0,I?.progress.committedOptimizerSteps??0),Lt=Sr(de&&W?W.groupsCompleted:$t,de&&W?W.groupsTarget:ue),Me=o==="run"?{id:"details",label:"Details"}:{id:"overview",label:"Overview"},pe=[...o==="run"&&v?[{id:"metrics",label:"Metrics"}]:[],Me,...o==="version"&&v?[{id:"metrics",label:"Metrics"}]:[],{id:"evaluation",label:"Evaluation"},...ce.length||Et?[{id:"rollouts",label:"Rollouts"}]:[],{id:"artifacts",label:"Artifacts"},...v?[{id:"activity",label:"Activity"}]:[]],ze=t,M=pe.some(b=>b.id===ze)?ze:pe[0].id;return!N&&!g?n.jsx("div",{className:"labs-model-version-detail",children:n.jsx("div",{className:"training-run-placeholder",children:"This training attempt is no longer available."})}):g?.kind==="evaluation"?n.jsx(Cr,{run:g,runNumber:F,tasksetName:$?.name??"Unavailable",onOpenTaskset:$?()=>s($.id):void 0,onOpenConversation:d}):n.jsxs("div",{className:"labs-model-version-detail",children:[n.jsx(vt,{title:g||v?F?`Run ${F}`:"Run details":S?`Version ${S.number}`:"Run details",description:`${_e(oe)} on ${at(R,Y)}`,status:n.jsx(Ea,{status:Le}),metrics:[{label:de?"Training tasks":"Training steps",value:Lt.value},{label:"Final reward",value:Ir(g?.reward?.raw??I?.reward.finalMean??null)},{label:"Duration",value:g?Q(g.startedAt,ee(g.status,g.completedAt,g.updatedAt)):v?Q(v.startedAt,ee(v.status,v.completedAt,v.updatedAt)):"Not recorded"},{label:"Output",value:S?`Version ${S.number}`:"No version"},{label:"Based on",value:O},{label:"Taskset",value:se,onSelect:$?()=>s($.id):void 0,ariaLabel:$?`Open Taskset ${$.name}`:void 0}]}),n.jsxs("section",{className:"labs-run-detail-tabs",children:[n.jsx("div",{className:"training-detail-tabs",role:"tablist","aria-label":"Run details",children:pe.map(b=>n.jsx("button",{"aria-controls":`run-detail-panel-${b.id}`,"aria-selected":M===b.id,className:M===b.id?"active":void 0,id:`run-detail-tab-${b.id}`,role:"tab",type:"button",onClick:()=>a(b.id),children:b.label},b.id))}),n.jsxs("div",{"aria-labelledby":`run-detail-tab-${M}`,className:"labs-run-detail-tab-panel",id:`run-detail-panel-${M}`,role:"tabpanel",children:[M===Me.id?n.jsx(ur,{baseModel:at(R,Y),compute:g?he(g.destinationId??""):R?he(R.destinationId):v?he(v.destinationId):"Not recorded",duration:g?Q(g.startedAt,ee(g.status,g.completedAt,g.updatedAt)):v?Q(v.startedAt,ee(v.status,v.completedAt,v.updatedAt)):"Not recorded",failure:v?.error??g?.failure??null,configuration:[...Rr(h,C),...Er(R)],evidence:I,method:_e(oe),output:S?`Version ${S.number}`:"No version created",reward:g?.reward?.raw??I?.reward.finalMean??null,status:g?K(g.status):v?K(v.status):"Imported",statusValue:g?.status??v?.status??"imported",taskset:se,telemetry:g?.receipt?.schemaVersion==="openpond.modelRunReceipt.v1"?g.receipt.telemetry:null,title:g||v?F?`Run ${F}`:"Run details":S?`Version ${S.number}`:"Run details",versionStatus:S?S.current?"Active":"Available":null,onOpenTaskset:$?()=>s($.id):void 0,showHeader:!1}):null,M==="metrics"&&v?n.jsx(nr,{detail:A.detail,error:A.error,loading:A.loading,taskset:$}):null,M==="artifacts"?n.jsxs("dl",{className:"training-configuration-list",children:[n.jsx(E,{label:"Training attempt",value:v?.id??"Provider import"}),n.jsx(E,{label:"Taskset",value:se}),n.jsx(E,{label:"Prepared data",value:v?.bundleHash??"Provider managed"}),n.jsx(E,{label:"Version ID",value:S?.lineage.id??"No version created"}),I?.checkpoint?n.jsxs(n.Fragment,{children:[n.jsx(E,{label:"Checkpoint",value:I.checkpoint.id}),n.jsx(E,{label:"Checkpoint size",value:I.checkpoint.sizeBytes==null?"Not reported":Ct(I.checkpoint.sizeBytes)}),n.jsx(E,{label:"Checkpoint hash",value:I.checkpoint.sha256??"Not reported"})]}):null,I?.canonicalPublication.state?n.jsx(E,{label:"Registry publication",value:Lr(I.canonicalPublication.state)}):null]}):null,M==="evaluation"?n.jsxs("div",{className:"training-run-evaluation",children:[n.jsx(zn,{detail:A.detail,loading:A.loading,pending:Oe}),!A.detail?.evaluation&&I?.evaluations.length?n.jsx("dl",{className:"labs-inline-facts",children:I.evaluations.map(b=>n.jsx(E,{label:b.kind==="baseline"?"Baseline score":"Candidate score",value:b.score==null?"Not reported":b.score.toFixed(6)},`${b.kind}:${b.policyVersion}`))}):null,$e?n.jsx("button",{className:"training-button secondary",type:"button",onClick:()=>{c.actions.downloadArtifact($e)},children:"Download evaluation receipt"}):null]}):null,M==="rollouts"?ce.length?n.jsx(On,{receipts:ce}):n.jsx(Ln,{events:A.detail?.events??[]}):null,M==="activity"&&v?n.jsx(yr,{error:v.error??A.error,events:A.detail?.events??[],loading:A.loading,pending:Oe}):null]})]})]})}function Sr(e,t){const a=Math.max(0,Math.floor(e));if(t===null||!Number.isFinite(t)||t<=0)return{value:a.toLocaleString(),hint:a===1?"completed update":"completed updates"};const r=Math.max(1,Math.floor(t));return{value:`${a.toLocaleString()} / ${r.toLocaleString()}`,hint:"completed / planned"}}function Tr(e){const t=e?.rolloutProgress;if(!t||typeof t!="object"||Array.isArray(t))return null;const a=t;return["groupsCompleted","groupsTarget","optimizerUpdatesApplied","optimizerUpdatesSkipped"].some(l=>typeof a[l]!="number"||!Number.isInteger(a[l])||a[l]<0)?null:{groupsCompleted:a.groupsCompleted,groupsTarget:a.groupsTarget,optimizerUpdatesApplied:a.optimizerUpdatesApplied,optimizerUpdatesSkipped:a.optimizerUpdatesSkipped}}function Cr({run:e,runNumber:t,tasksetName:a,onOpenTaskset:r,onOpenConversation:l}){const[i,c]=p.useState("results"),s=e.receipt?.schemaVersion==="openpond.modelEvaluationReceipt.v1"?e.receipt:null,d=e.receipt?.schemaVersion==="openpond.modelEvaluationStopReceipt.v1"?e.receipt:null,o=s?Ra(s):null,h=s?Ae(s):null;return n.jsxs("div",{className:"labs-model-version-detail labs-model-evaluation-detail",children:[n.jsx(vt,{title:t?`Eval ${t}`:"Evaluation run",description:`Harness Refiner benchmark · ${a}`,status:n.jsx(Ce,{label:s?h?.comparedTaskCount?`${h.passedTaskCount}/${h.comparedTaskCount} passed`:"No paired result":d?"Inconclusive":K(e.status),value:s?h?.comparedTaskCount&&h.passed?"succeeded":"neutral":d?.terminalClassification??e.status}),metrics:[{label:"Baseline pass rate",value:s?`${(s.quality.baselinePassRate*100).toFixed(1)}%`:"—"},{label:"Candidate pass rate",value:s?`${(s.quality.candidatePassRate*100).toFixed(1)}%`:"—"},{label:"Scenarios",value:s?.attempts?.length??0},{label:"Execution",value:K(e.status)}]}),n.jsx("div",{className:"training-detail-tabs",role:"tablist","aria-label":"Evaluation details",children:["results","scenarios","activity"].map(u=>n.jsx("button",{className:i===u?"active":void 0,"aria-selected":i===u,role:"tab",type:"button",onClick:()=>c(u),children:u==="results"?"Results":u==="scenarios"?"Scenarios":"Activity"},u))}),i==="results"&&s?n.jsxs(n.Fragment,{children:[n.jsx(Ve,{series:[{id:"baseline",label:"Held-out baseline",inputTokens:o.baseline.inputTokens,outputTokens:o.baseline.outputTokens,tokens:o.baseline.totalTokens,passRate:s.quality.baselinePassRate,costUsd:o.baseline.costUsd},{id:"candidate",label:"Held-out refined",inputTokens:o.candidate.inputTokens,outputTokens:o.candidate.outputTokens,tokens:o.candidate.totalTokens,passRate:s.quality.candidatePassRate,costUsd:o.candidate.costUsd}]}),n.jsx(Ve,{series:[{id:"adaptation-baseline",label:"Adaptation baseline",inputTokens:o.adaptation.inputTokens,outputTokens:o.adaptation.outputTokens,tokens:o.adaptation.totalTokens,passRate:s.quality.adaptationBaselinePassRate,costUsd:o.adaptation.costUsd},{id:"adaptation-candidate",label:"Adaptation replay",inputTokens:o.candidate_adaptation.inputTokens,outputTokens:o.candidate_adaptation.outputTokens,tokens:o.candidate_adaptation.totalTokens,passRate:s.quality.adaptationCandidatePassRate,costUsd:o.candidate_adaptation.costUsd}]}),n.jsx(br,{receipt:s,run:e,tasksetName:a,onOpenTaskset:r})]}):i==="results"&&d?n.jsx(fr,{receipt:d,onOpenConversation:l}):i==="results"?n.jsx("section",{className:"labs-run-summary-card",children:e.failure?n.jsx("p",{className:"training-run-placeholder",children:e.failure}):n.jsx(gr,{run:e})}):null,i==="scenarios"&&s?n.jsxs(n.Fragment,{children:[(s.attempts??[]).length?n.jsx(vr,{receipt:s}):null,(s.attempts??[]).length?n.jsx(Tt,{receipt:s,onOpenConversation:l}):n.jsx("div",{className:"training-run-placeholder",children:"No per-scenario attempts were retained."})]}):null,i==="activity"?n.jsxs("dl",{className:"labs-inline-facts",children:[n.jsx(E,{label:"Run ID",value:e.id}),n.jsx(E,{label:"Status",value:K(e.status)}),n.jsx(E,{label:"Started",value:e.startedAt?xe(e.startedAt):"Not started"}),n.jsx(E,{label:"Completed",value:e.completedAt?xe(e.completedAt):"In progress"})]}):null]})}function at(e,t=null){if(!e)return t?nt(t):"Not recorded";const a=e.recipe.method==="sft"||e.recipe.method==="grpo"?e.recipe.baseModel:e.recipe.method==="dpo"?e.recipe.policyModel:e.recipe.method==="ppo"?e.recipe.policyOptimization.policyModel:null;return a?nt(a.id):"Not recorded"}function Ar(e){const t=e?.trainingMethod;return t==="sft"||t==="dpo"||t==="grpo"||t==="ppo"||t==="sdft"||t==="opd"||t==="opsd"||t==="sdpo"?t:null}function nt(e){return e.split("/").at(-1)??e}function Ir(e){return e===null?"Not reported":e.toFixed(4)}function Er(e){if(!e)return[];const t=e.recipe;return t.method==="grpo"?[{label:"LoRA rank",value:String(t.lora.rank)},{label:"Learning rate",value:rt(t.optimizer.learningRate)},{label:"Optimizer steps",value:String(t.optimizer.maxSteps)},{label:"Rollouts per update",value:String(t.rollout.groupSize)},{label:"Rollout concurrency",value:String(t.rollout.concurrency)},{label:"Max output tokens",value:t.rollout.maxOutputTokens.toLocaleString()},{label:"Temperature",value:String(t.rollout.temperature)},{label:"Top P",value:String(t.rollout.topP)}]:t.method==="sft"||t.method==="dpo"?[{label:"LoRA rank",value:String(t.lora.rank)},{label:"Learning rate",value:rt(t.optimizer.learningRate)},{label:"Optimizer steps",value:String(t.optimizer.maxSteps)}]:[]}function Rr(e,t){if(!e||!t)return[];if(t.parent.kind==="base_model")return[{label:"Starting checkpoint",value:`Frozen base · ${t.parent.revision}`},{label:"Optimizer",value:"Fresh"}];const a=e.modelVersions.find(i=>i.id===t.parent.id);return[{label:"Starting checkpoint",value:[e.comparisonSeriesEntries.find(i=>i.seriesId===t.seriesId&&i.modelVersionId===t.parent.id)?.label??null,a?`Version ${a.version}`:t.parent.id].filter(i=>!!i).join(" · ")},{label:"Optimizer",value:"Fresh"}]}function $r(e,t){if(!e||!t||t.parent.kind==="base_model")return"Frozen base";const a=e.comparisonSeriesEntries.find(l=>l.seriesId===t.seriesId&&l.modelVersionId===t.parent.id),r=e.modelVersions.find(l=>l.id===t.parent.id);return[a?.label??"Prior checkpoint",r?`Version ${r.version}`:null].filter(l=>!!l).join(" · ")}function rt(e){return e===0?"0":e.toExponential(2)}function E({label:e,value:t}){return n.jsxs("div",{children:[n.jsx("dt",{children:e}),n.jsx("dd",{children:t})]})}function Lr(e){return e?e.replaceAll("_"," ").replace(/^./,t=>t.toUpperCase()):"Pending"}export{Zr as LabModelVersionDetailPage,kr as eventSummary,Sr as formatTrainingProgress,Tr as managedRolloutProgress};
|