openpond 0.0.51 → 0.0.52

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (95) hide show
  1. package/dist/chunks/{app-layer-DCUTQ4TM.js → app-layer-T26MAAGI.js} +2 -2
  2. package/dist/chunks/{app-server-runtime-Q3IGU5YB.js → app-server-runtime-2P2727X6.js} +6 -6
  3. package/dist/chunks/{apps-JDRCDAPE.js → apps-7KLTYKHN.js} +2 -2
  4. package/dist/chunks/{chunk-LYEXNSCO.js → chunk-3UPQUD6Y.js} +2 -2
  5. package/dist/chunks/{chunk-3PYU3XCS.js → chunk-55KT7K5P.js} +1 -2
  6. package/dist/chunks/{chunk-PFNX5XOT.js → chunk-6QWTEC2D.js} +1 -1
  7. package/dist/chunks/{chunk-J4LLKY6E.js → chunk-C4DAHPVI.js} +1 -1
  8. package/dist/chunks/{chunk-IGSEFSMA.js → chunk-EIRW6Z6S.js} +1 -1
  9. package/dist/chunks/{chunk-V3HADQL5.js → chunk-FFD2YSZR.js} +1 -1
  10. package/dist/chunks/{chunk-R4PRXXTC.js → chunk-JSRCXDIL.js} +32 -32
  11. package/dist/chunks/{chunk-UDTHREHB.js → chunk-KNKZSVGO.js} +81 -8
  12. package/dist/chunks/{chunk-CSN3DLWJ.js → chunk-M2OSF2YN.js} +1 -1
  13. package/dist/chunks/{chunk-35OYRVVH.js → chunk-US7DOPAH.js} +19 -4
  14. package/dist/chunks/{cli-2FTM4SXH.js → cli-Z2CULBCU.js} +5 -5
  15. package/dist/chunks/{core-commands-5BRR7TU4.js → core-commands-SND555SC.js} +3 -3
  16. package/dist/chunks/{desktop-test-EQ2BGZOM.js → desktop-test-WSWXNSFS.js} +2 -2
  17. package/dist/chunks/{extension-V3NZ7MU7.js → extension-3IKF6YQE.js} +1 -1
  18. package/dist/chunks/{help-WJBMX37U.js → help-DHGNXUA4.js} +1 -1
  19. package/dist/chunks/{opchat-W7DSKNNB.js → opchat-XYKT5KKO.js} +2 -2
  20. package/dist/chunks/{organizations-RHOF5H4Z.js → organizations-HKVC4CSA.js} +4 -4
  21. package/dist/chunks/{profile-B62ZWPTQ.js → profile-PLWXQHKF.js} +2 -2
  22. package/dist/chunks/{project-agent-QA25HHDV.js → project-agent-JNSP56KG.js} +2 -2
  23. package/dist/chunks/{sandbox-command-JFEVPU4X.js → sandbox-command-Z6LNNSSL.js} +2 -2
  24. package/dist/chunks/{sandbox-template-GEWTAWAR.js → sandbox-template-FVW2UTI4.js} +3 -3
  25. package/dist/chunks/{src-P2BL3KCV.js → src-2TP42H76.js} +3 -3
  26. package/dist/chunks/{src-JOTV67WO.js → src-R5VKB33T.js} +387 -599
  27. package/dist/chunks/{teams-bot-ODSMRNE4.js → teams-bot-FNPT4Q2B.js} +2 -2
  28. package/dist/chunks/{workspaces-7YHBJG5P.js → workspaces-YLNB6DS7.js} +2 -2
  29. package/dist/cli.js +13 -13
  30. package/dist/web/assets/{AppDialog-DylZeiI-.js → AppDialog-BEKS_Ixr.js} +1 -1
  31. package/dist/web/assets/{AppsView-Bz6C0a1u.js → AppsView-CbuT2sT2.js} +1 -1
  32. package/dist/web/assets/{BrowserSidebar-xXFxZP2-.js → BrowserSidebar-DgqVeW5u.js} +1 -1
  33. package/dist/web/assets/{CommandMenu-C9k5VdaR.js → CommandMenu-CQcaEB76.js} +1 -1
  34. package/dist/web/assets/{CommunityView-DcJlUNgd.js → CommunityView-CYX6iFcg.js} +1 -1
  35. package/dist/web/assets/{ComposerCreateImproveStrip-Yt3irJVo.js → ComposerCreateImproveStrip-DY4SQbL4.js} +1 -1
  36. package/dist/web/assets/{GetStartedView-BhD0Ij7c.js → GetStartedView-DnxeZaBB.js} +1 -1
  37. package/dist/web/assets/{LabModelVersionDetailPage-B-OoSJYT.js → LabModelVersionDetailPage-DYTfYGWv.js} +1 -1
  38. package/dist/web/assets/{LabSkillSidebar-dqdSTmHG.js → LabSkillSidebar-BpD-kjP_.js} +1 -1
  39. package/dist/web/assets/{LabsRoute-BMPI4vB8.js → LabsRoute-DVC7eZCs.js} +3 -3
  40. package/dist/web/assets/{MainChatThread-B0ajKiNL.js → MainChatThread-DTiX_8MC.js} +2 -2
  41. package/dist/web/assets/{MainPane-COs4xUGo.js → MainPane-CNoHJkXy.js} +3 -3
  42. package/dist/web/assets/{MarkdownText-CzZ60aWs.js → MarkdownText-_JhfBcQL.js} +1 -1
  43. package/dist/web/assets/{Messages-DGrK4iIj.js → Messages-Bo0-Uvcz.js} +1 -1
  44. package/dist/web/assets/{NativeSkillSidebar-BkpgGLSO.js → NativeSkillSidebar-CHQ87FW2.js} +1 -1
  45. package/dist/web/assets/{NewProjectDialog-BOdCdNcG.js → NewProjectDialog-B-1KuU5u.js} +1 -1
  46. package/dist/web/assets/{OutputsPage-CSBWIFdi.js → OutputsPage-BSimpEpA.js} +1 -1
  47. package/dist/web/assets/{RightChatPanelStack-PZR6NYJj.js → RightChatPanelStack-B8ZOyuFO.js} +1 -1
  48. package/dist/web/assets/{ScheduledWorkPage-WXLnwju_.js → ScheduledWorkPage-Blwy1G8r.js} +1 -1
  49. package/dist/web/assets/{SettingsView-CQJoEx-y.js → SettingsView-CTLTakyn.js} +3 -3
  50. package/dist/web/assets/{TeamChatView-BRnuD-lV.js → TeamChatView-dN3fUCbZ.js} +1 -1
  51. package/dist/web/assets/{TerminalOverlay-B5m8j4_C.js → TerminalOverlay-CPVGeO7U.js} +1 -1
  52. package/dist/web/assets/{TrainingCreationPanel-CA1rt7XZ.js → TrainingCreationPanel-ettNNJBP.js} +1 -1
  53. package/dist/web/assets/{TrainingDraftPanel-C0p3GP1n.js → TrainingDraftPanel-DUJBuII1.js} +1 -1
  54. package/dist/web/assets/{UsageSettingsSection-CpIKj4p-.js → UsageSettingsSection-BOZR3JE_.js} +1 -1
  55. package/dist/web/assets/{WorkspaceDiffPanel-BXk8mdZB.js → WorkspaceDiffPanel-99MjzMkW.js} +3 -3
  56. package/dist/web/assets/{WorkspaceEnvironmentMenu-BO60uNVj.js → WorkspaceEnvironmentMenu-C3s3mTyu.js} +1 -1
  57. package/dist/web/assets/{WorkspaceGitDialogs-hWBfhgaP.js → WorkspaceGitDialogs-BvurXjNP.js} +1 -1
  58. package/dist/web/assets/{WorkspaceMonacoEditor-ULPyacH8.js → WorkspaceMonacoEditor-BCXg9mBQ.js} +3 -3
  59. package/dist/web/assets/{arrow-up-right-CkfCgokz.js → arrow-up-right-DRIT5z3q.js} +1 -1
  60. package/dist/web/assets/{chevron-up-B5URpgIH.js → chevron-up-Hglu-Zx3.js} +1 -1
  61. package/dist/web/assets/{circle-alert-CAvjRdlQ.js → circle-alert-Crh3Zr2m.js} +1 -1
  62. package/dist/web/assets/{cloud-upload-DeQEwz1o.js → cloud-upload-mSm9KIL4.js} +1 -1
  63. package/dist/web/assets/{cssMode-B4V5a3OX.js → cssMode-CkQ4x6JA.js} +1 -1
  64. package/dist/web/assets/{folder-DgS_U9Lq.js → folder-DMeODEQJ.js} +1 -1
  65. package/dist/web/assets/{folder-git-2-BTtbxKWf.js → folder-git-2-B8TV5i0V.js} +1 -1
  66. package/dist/web/assets/{folder-open-CqjIkaDK.js → folder-open-DXaun_C3.js} +1 -1
  67. package/dist/web/assets/{folder-plus-CsS0KPW5.js → folder-plus-CUbTwu82.js} +1 -1
  68. package/dist/web/assets/{git-branch-BN2ijBYt.js → git-branch-CUlgF0kK.js} +1 -1
  69. package/dist/web/assets/{git-commit-horizontal-CVsl4u1O.js → git-commit-horizontal-DAQfyhbS.js} +1 -1
  70. package/dist/web/assets/{htmlMode-DRksGWJA.js → htmlMode-BfyAplZo.js} +1 -1
  71. package/dist/web/assets/index-Blindd8c.js +1 -0
  72. package/dist/web/assets/{index-Cxq5q-6B.js → index-CDJX5ZxL.js} +3 -3
  73. package/dist/web/assets/{info-DwVXRQli.js → info-Ll3PkeGE.js} +1 -1
  74. package/dist/web/assets/{jsonMode-eJvgtAy-.js → jsonMode-C9Vibh0P.js} +1 -1
  75. package/dist/web/assets/{lspLanguageFeatures-DCk7zUI-.js → lspLanguageFeatures-CFoA9--Z.js} +1 -1
  76. package/dist/web/assets/{monaco.contribution-B02C5mDa.js → monaco.contribution-C2q-tDuk.js} +2 -2
  77. package/dist/web/assets/{monaco.contribution-DWVguH46.js → monaco.contribution-C8tRjUqy.js} +2 -2
  78. package/dist/web/assets/{monaco.contribution-WGT1eYvk.js → monaco.contribution-Co4ZPnCC.js} +2 -2
  79. package/dist/web/assets/{monaco.contribution-CPnN-lZN.js → monaco.contribution-vWDjhuCI.js} +2 -2
  80. package/dist/web/assets/{play-DGCzapdE.js → play-lC5KpmRD.js} +1 -1
  81. package/dist/web/assets/{python-DRPzruv8.js → python-I5xkyvMs.js} +1 -1
  82. package/dist/web/assets/{refresh-cw-BKF4NhDI.js → refresh-cw-8a_wz4tX.js} +1 -1
  83. package/dist/web/assets/{save-DQXtfx_4.js → save-Dj9ex3Ce.js} +1 -1
  84. package/dist/web/assets/{square-Dp5eGICS.js → square-DfEM9XgY.js} +1 -1
  85. package/dist/web/assets/{square-pen-j-mZ_UkO.js → square-pen-CgX3HoJ6.js} +1 -1
  86. package/dist/web/assets/{toggleHighContrast-wDmA5YPb.js → toggleHighContrast-BkNzz1Bg.js} +1 -1
  87. package/dist/web/assets/{tsMode-DELTv39m.js → tsMode-CNwaV0ZJ.js} +1 -1
  88. package/dist/web/assets/{upload-_rNli8wK.js → upload-Co5zYY9Z.js} +1 -1
  89. package/dist/web/assets/{useLocalAgentSchedules-DRVUfTbv.js → useLocalAgentSchedules-QY4_XS2F.js} +1 -1
  90. package/dist/web/assets/{wifi-off-uKPwd8A7.js → wifi-off-CFzyn7Tf.js} +1 -1
  91. package/dist/web/assets/{workers-CXbluSB3.js → workers-DqFxl1zu.js} +1 -1
  92. package/dist/web/assets/{yaml-BMqi-3ui.js → yaml-Bbm66uDK.js} +1 -1
  93. package/dist/web/index.html +1 -1
  94. package/package.json +1 -1
  95. package/dist/web/assets/index-SKvMOpII.js +0 -1
@@ -5,9 +5,9 @@ import {
5
5
  import "./chunk-KHNHUA2H.js";
6
6
  import {
7
7
  CliUsageError
8
- } from "./chunk-PFNX5XOT.js";
8
+ } from "./chunk-6QWTEC2D.js";
9
9
  import "./chunk-SMNFI2FU.js";
10
- import "./chunk-R4PRXXTC.js";
10
+ import "./chunk-JSRCXDIL.js";
11
11
  import "./chunk-DBHSOTYZ.js";
12
12
  import "./chunk-KSRWKXRB.js";
13
13
  import "./chunk-MUMPWI4O.js";
@@ -2,13 +2,13 @@ import { createRequire as __openpondCreateRequire } from "node:module"; var requ
2
2
  import {
3
3
  APP_SERVER_COMPOSITION,
4
4
  createOpenPondAppServer
5
- } from "./chunk-UDTHREHB.js";
5
+ } from "./chunk-KNKZSVGO.js";
6
6
  import "./chunk-NFNEENNR.js";
7
- import "./chunk-IGSEFSMA.js";
8
- import "./chunk-V3HADQL5.js";
9
- import "./chunk-J4LLKY6E.js";
10
- import "./chunk-3PYU3XCS.js";
11
- import "./chunk-35OYRVVH.js";
7
+ import "./chunk-EIRW6Z6S.js";
8
+ import "./chunk-FFD2YSZR.js";
9
+ import "./chunk-C4DAHPVI.js";
10
+ import "./chunk-55KT7K5P.js";
11
+ import "./chunk-US7DOPAH.js";
12
12
  import "./chunk-WYDVQOBL.js";
13
13
  import "./chunk-KHNHUA2H.js";
14
14
  import "./chunk-UACZUFIA.js";
@@ -12,12 +12,12 @@ import {
12
12
  resolveAppTarget
13
13
  } from "./chunk-FCVVOMIP.js";
14
14
  import "./chunk-KHNHUA2H.js";
15
- import "./chunk-PFNX5XOT.js";
15
+ import "./chunk-6QWTEC2D.js";
16
16
  import {
17
17
  resolveBaseUrl,
18
18
  resolvePublicApiBaseUrl
19
19
  } from "./chunk-SMNFI2FU.js";
20
- import "./chunk-R4PRXXTC.js";
20
+ import "./chunk-JSRCXDIL.js";
21
21
  import {
22
22
  createAgentFromPrompt,
23
23
  deployApp,
@@ -5,12 +5,12 @@ import {
5
5
  import {
6
6
  getBundledRuntimeVersion,
7
7
  openUrlWithSystemBrowser
8
- } from "./chunk-IGSEFSMA.js";
8
+ } from "./chunk-EIRW6Z6S.js";
9
9
  import {
10
10
  DEFAULT_HOST,
11
11
  DEFAULT_PORT,
12
12
  parseListen
13
- } from "./chunk-J4LLKY6E.js";
13
+ } from "./chunk-C4DAHPVI.js";
14
14
 
15
15
  // ../server/src/cli.ts
16
16
  import { existsSync } from "node:fs";
@@ -14,7 +14,7 @@ import {
14
14
  ToolDeclarationSchema,
15
15
  createHarnessAdvanceReceipt,
16
16
  validateConnectedAppToolCallRequest
17
- } from "./chunk-35OYRVVH.js";
17
+ } from "./chunk-US7DOPAH.js";
18
18
  import {
19
19
  external_exports,
20
20
  yaml
@@ -12965,7 +12965,6 @@ export {
12965
12965
  ApproveDatasetImportMappingRequestSchema,
12966
12966
  ModelVersionSchema,
12967
12967
  ModelEvaluationReceiptSchema,
12968
- ModelEvaluationStopReceiptSchema,
12969
12968
  ModelRunSchema,
12970
12969
  summarizeModelEvaluationTaskEfficiency,
12971
12970
  LocalModelChatConfigurationSchema,
@@ -4,7 +4,7 @@ import {
4
4
  getAnyCliOptionKind,
5
5
  getCliCommandDefinition,
6
6
  getCliOptionKind
7
- } from "./chunk-R4PRXXTC.js";
7
+ } from "./chunk-JSRCXDIL.js";
8
8
  import {
9
9
  parseJsonOption
10
10
  } from "./chunk-MUMPWI4O.js";
@@ -3,7 +3,7 @@ import { createRequire as __openpondCreateRequire } from "node:module"; var requ
3
3
  // ../server/src/constants.ts
4
4
  var DEFAULT_HOST = "127.0.0.1";
5
5
  var DEFAULT_PORT = 17874;
6
- var VERSION = "0.0.51";
6
+ var VERSION = "0.0.52";
7
7
  var HOSTED_CHAT_SYSTEM_PROMPT = "You are OpenPond Chat. Respond in the user's language. If the user's latest message is language-neutral, ambiguous, or only a short test, respond in English. Be concise and directly answer the latest request. Do not use emojis. Use Markdown when it improves scanability. If you emit reasoning or thinking content, keep it sparse and user-readable: at most one short sentence for major progress, decisions, or blockers. Omit reasoning for routine searches, reads, tool calls, and obvious next steps. Do not restate the user request, narrate every action, or include code blocks, code excerpts, diffs, raw tool payloads, or markdown examples in reasoning. Put necessary code or exact snippets only in the final assistant answer. When the user asks to show or preview an image that is available as a workspace path or signed image URL, use Markdown image syntax like ![description](path-or-url) instead of a bare path or raw HTML. For workspace-backed answers, use a Codex-style shape: brief outcome first, then Changed Files if files changed, then Verification if checks ran. End with a concise final answer that summarizes the result and verification when relevant. Do not mention raw tool JSON, internal repo paths, or origin/remote URLs unless the user explicitly asks for them or they are necessary to explain a git/deploy failure.";
8
8
  var APP_PREFERENCES_CACHE_TYPE = "app_preferences";
9
9
  var APP_PREFERENCES_CACHE_KEY = "global";
@@ -12,7 +12,7 @@ import {
12
12
  saveConfig,
13
13
  saveProfileApiKey,
14
14
  setActiveProfile
15
- } from "./chunk-3PYU3XCS.js";
15
+ } from "./chunk-55KT7K5P.js";
16
16
  import {
17
17
  DEFAULT_OPENPOND_API_BASE_URL,
18
18
  DEFAULT_OPENPOND_WEB_BASE_URL,
@@ -1,7 +1,7 @@
1
1
  import { createRequire as __openpondCreateRequire } from "node:module"; var require = __openpondCreateRequire(import.meta.url);
2
2
  import {
3
3
  now
4
- } from "./chunk-J4LLKY6E.js";
4
+ } from "./chunk-C4DAHPVI.js";
5
5
 
6
6
  // ../server/src/workspace/workspace-command.ts
7
7
  import { spawn, spawnSync } from "node:child_process";
@@ -397,7 +397,7 @@ var CLI_COMMAND_REGISTRY = [
397
397
  name: "help",
398
398
  usage: "openpond help",
399
399
  optionSchema: {},
400
- handler: async () => (await import("./help-WJBMX37U.js")).printHelp()
400
+ handler: async () => (await import("./help-DHGNXUA4.js")).printHelp()
401
401
  },
402
402
  {
403
403
  name: "version",
@@ -409,19 +409,19 @@ var CLI_COMMAND_REGISTRY = [
409
409
  name: "check-update",
410
410
  usage: "openpond check-update",
411
411
  optionSchema: {},
412
- handler: async () => (await import("./core-commands-5BRR7TU4.js")).runCheckUpdate()
412
+ handler: async () => (await import("./core-commands-SND555SC.js")).runCheckUpdate()
413
413
  },
414
414
  {
415
415
  name: "login",
416
416
  usage: "openpond login [--base-url <url>]",
417
417
  optionSchema: CLI_GLOBAL_OPTION_SCHEMA,
418
- handler: async ({ options }) => (await import("./core-commands-5BRR7TU4.js")).runLogin(options)
418
+ handler: async ({ options }) => (await import("./core-commands-SND555SC.js")).runLogin(options)
419
419
  },
420
420
  {
421
421
  name: "init",
422
422
  usage: "openpond init [--path <dir>]",
423
423
  optionSchema: { path: "string" },
424
- handler: async ({ options }) => (await import("./profile-B62ZWPTQ.js")).runOpenPondInitCommand(options)
424
+ handler: async ({ options }) => (await import("./profile-PLWXQHKF.js")).runOpenPondInitCommand(options)
425
425
  },
426
426
  {
427
427
  name: "profile",
@@ -449,13 +449,13 @@ var CLI_COMMAND_REGISTRY = [
449
449
  publishHostedSource: "boolean",
450
450
  teamId: "string"
451
451
  },
452
- handler: async ({ options, rest }) => (await import("./profile-B62ZWPTQ.js")).runOpenPondProfileCommand(options, rest)
452
+ handler: async ({ options, rest }) => (await import("./profile-PLWXQHKF.js")).runOpenPondProfileCommand(options, rest)
453
453
  },
454
454
  {
455
455
  name: "agents",
456
456
  usage: "openpond agents [--json]",
457
457
  optionSchema: { json: "boolean" },
458
- handler: async ({ options, rest }) => (await import("./profile-B62ZWPTQ.js")).runOpenPondAgentsCommand(options, rest)
458
+ handler: async ({ options, rest }) => (await import("./profile-PLWXQHKF.js")).runOpenPondAgentsCommand(options, rest)
459
459
  },
460
460
  ...profileSdkAliasDefinitions(),
461
461
  {
@@ -468,25 +468,25 @@ var CLI_COMMAND_REGISTRY = [
468
468
  "openpond extension remove <owner/repo> [--json]"
469
469
  ],
470
470
  optionSchema: { all: "boolean", json: "boolean", ref: "string" },
471
- handler: async ({ options, rest }) => (await import("./extension-V3NZ7MU7.js")).runOpenPondExtensionCommand(options, rest)
471
+ handler: async ({ options, rest }) => (await import("./extension-3IKF6YQE.js")).runOpenPondExtensionCommand(options, rest)
472
472
  },
473
473
  {
474
474
  name: "profiles",
475
475
  usage: "openpond profiles [args]",
476
476
  optionSchema: { json: "boolean" },
477
- handler: async ({ options, rest }) => (await import("./core-commands-5BRR7TU4.js")).runProfiles(options, rest)
477
+ handler: async ({ options, rest }) => (await import("./core-commands-SND555SC.js")).runProfiles(options, rest)
478
478
  },
479
479
  {
480
480
  name: "account",
481
481
  usage: "openpond account",
482
482
  optionSchema: { json: "boolean" },
483
- handler: async () => (await import("./core-commands-5BRR7TU4.js")).runAccount()
483
+ handler: async () => (await import("./core-commands-SND555SC.js")).runAccount()
484
484
  },
485
485
  {
486
486
  name: "health",
487
487
  usage: "openpond health",
488
488
  optionSchema: { json: "boolean" },
489
- handler: async ({ options }) => (await import("./core-commands-5BRR7TU4.js")).runHealth(options)
489
+ handler: async ({ options }) => (await import("./core-commands-SND555SC.js")).runHealth(options)
490
490
  },
491
491
  {
492
492
  name: "app-server",
@@ -494,7 +494,7 @@ var CLI_COMMAND_REGISTRY = [
494
494
  optionSchema: {
495
495
  storeDir: "string"
496
496
  },
497
- handler: async ({ options, rest }) => (await import("./app-layer-DCUTQ4TM.js")).runOpenPondServerCommand("app-server", options, rest)
497
+ handler: async ({ options, rest }) => (await import("./app-layer-T26MAAGI.js")).runOpenPondServerCommand("app-server", options, rest)
498
498
  },
499
499
  {
500
500
  name: "serve",
@@ -505,7 +505,7 @@ var CLI_COMMAND_REGISTRY = [
505
505
  listen: "string",
506
506
  port: "integer"
507
507
  },
508
- handler: async ({ options, rest }) => (await import("./app-layer-DCUTQ4TM.js")).runOpenPondServerCommand("serve", options, rest)
508
+ handler: async ({ options, rest }) => (await import("./app-layer-T26MAAGI.js")).runOpenPondServerCommand("serve", options, rest)
509
509
  },
510
510
  {
511
511
  name: "ui",
@@ -518,7 +518,7 @@ var CLI_COMMAND_REGISTRY = [
518
518
  port: "integer",
519
519
  webRoot: "string"
520
520
  },
521
- handler: async ({ options, rest }) => (await import("./app-layer-DCUTQ4TM.js")).runOpenPondServerCommand("web", options, rest)
521
+ handler: async ({ options, rest }) => (await import("./app-layer-T26MAAGI.js")).runOpenPondServerCommand("web", options, rest)
522
522
  },
523
523
  {
524
524
  name: "tui",
@@ -532,13 +532,13 @@ var CLI_COMMAND_REGISTRY = [
532
532
  provider: "string",
533
533
  server: "string"
534
534
  },
535
- handler: async ({ options, rest }) => (await import("./app-layer-DCUTQ4TM.js")).runOpenPondTerminalCommand(options, rest)
535
+ handler: async ({ options, rest }) => (await import("./app-layer-T26MAAGI.js")).runOpenPondTerminalCommand(options, rest)
536
536
  },
537
537
  {
538
538
  name: "chat",
539
539
  usage: "openpond chat (--message-file <path>|--message <text>|--stdin) --non-interactive [--provider <id>] [--model <id>] [--agent <id>] [--project <id>] [--resume <session-id>] [--yes] [--approval-policy <policy>] [--json] [--timeout-sec <n>] [--max-output-bytes <n>] [--sandbox <mode>]",
540
540
  optionSchema: CHAT_OPTION_SCHEMA,
541
- handler: async ({ options, rest }) => (await import("./app-layer-DCUTQ4TM.js")).runOpenPondTerminalCommand(options, rest)
541
+ handler: async ({ options, rest }) => (await import("./app-layer-T26MAAGI.js")).runOpenPondTerminalCommand(options, rest)
542
542
  },
543
543
  {
544
544
  name: "tool",
@@ -574,7 +574,7 @@ var CLI_COMMAND_REGISTRY = [
574
574
  name: "sandbox-template",
575
575
  usage: "openpond sandbox-template <command> [args]",
576
576
  optionSchema: SANDBOX_TEMPLATE_OPTION_SCHEMA,
577
- handler: async ({ options, rest }) => (await import("./sandbox-template-GEWTAWAR.js")).runSandboxTemplateCommand(options, rest)
577
+ handler: async ({ options, rest }) => (await import("./sandbox-template-FVW2UTI4.js")).runSandboxTemplateCommand(options, rest)
578
578
  },
579
579
  {
580
580
  name: "repo",
@@ -619,13 +619,13 @@ var CLI_COMMAND_REGISTRY = [
619
619
  toolset: "string",
620
620
  url: "string"
621
621
  },
622
- handler: async ({ options, rest }) => (await import("./organizations-RHOF5H4Z.js")).runOrganizationsCommand(options, rest)
622
+ handler: async ({ options, rest }) => (await import("./organizations-HKVC4CSA.js")).runOrganizationsCommand(options, rest)
623
623
  },
624
624
  {
625
625
  name: "project",
626
626
  usage: "openpond project <list|create|upsert|get|update|sync|source-upload|archive> [args]",
627
627
  optionSchema: PROJECT_OPTION_SCHEMA,
628
- handler: async ({ options, rest }) => (await import("./project-agent-QA25HHDV.js")).runProjectCommand(options, rest)
628
+ handler: async ({ options, rest }) => (await import("./project-agent-JNSP56KG.js")).runProjectCommand(options, rest)
629
629
  },
630
630
  {
631
631
  name: "agent",
@@ -637,7 +637,7 @@ var CLI_COMMAND_REGISTRY = [
637
637
  "openpond agent source publish <agentId> --team-id <id> [--expected-manifest-hash <hash>]"
638
638
  ],
639
639
  optionSchema: AGENT_OPTION_SCHEMA,
640
- handler: async ({ options, rest }) => (await import("./project-agent-QA25HHDV.js")).runAgentCommand(options, rest)
640
+ handler: async ({ options, rest }) => (await import("./project-agent-JNSP56KG.js")).runAgentCommand(options, rest)
641
641
  },
642
642
  {
643
643
  name: "desktop-test",
@@ -658,13 +658,13 @@ var CLI_COMMAND_REGISTRY = [
658
658
  token: "string",
659
659
  tokenFile: "string"
660
660
  },
661
- handler: async ({ options, rest }) => (await import("./desktop-test-EQ2BGZOM.js")).runDesktopTestCommand(options, rest)
661
+ handler: async ({ options, rest }) => (await import("./desktop-test-WSWXNSFS.js")).runDesktopTestCommand(options, rest)
662
662
  },
663
663
  {
664
664
  name: "sandbox",
665
665
  usage: "openpond sandbox <command> [args]",
666
666
  optionSchema: SANDBOX_OPTION_SCHEMA,
667
- handler: async ({ options, rest }) => (await import("./sandbox-command-JFEVPU4X.js")).runSandboxCommand(options, rest)
667
+ handler: async ({ options, rest }) => (await import("./sandbox-command-Z6LNNSSL.js")).runSandboxCommand(options, rest)
668
668
  },
669
669
  {
670
670
  name: "training",
@@ -712,7 +712,7 @@ var CLI_COMMAND_REGISTRY = [
712
712
  skipTool: "boolean",
713
713
  stream: "boolean"
714
714
  },
715
- handler: async ({ options, rest }) => (await import("./opchat-W7DSKNNB.js")).runOpChatCommand(options, rest)
715
+ handler: async ({ options, rest }) => (await import("./opchat-XYKT5KKO.js")).runOpChatCommand(options, rest)
716
716
  },
717
717
  {
718
718
  name: "teams-bot",
@@ -721,7 +721,7 @@ var CLI_COMMAND_REGISTRY = [
721
721
  json: "boolean",
722
722
  teamId: "string"
723
723
  },
724
- handler: async ({ options, rest }) => (await import("./teams-bot-ODSMRNE4.js")).runTeamsBotCommand(options, rest)
724
+ handler: async ({ options, rest }) => (await import("./teams-bot-FNPT4Q2B.js")).runTeamsBotCommand(options, rest)
725
725
  },
726
726
  {
727
727
  name: "apps",
@@ -742,7 +742,7 @@ var CLI_COMMAND_REGISTRY = [
742
742
  name: "opentool",
743
743
  usage: "openpond opentool <init|validate|build> [args]",
744
744
  optionSchema: {},
745
- handler: async ({ rest }) => (await import("./core-commands-5BRR7TU4.js")).runOpentool(rest)
745
+ handler: async ({ rest }) => (await import("./core-commands-SND555SC.js")).runOpentool(rest)
746
746
  }
747
747
  ];
748
748
  var CLI_COMMAND_BY_NAME = /* @__PURE__ */ new Map();
@@ -814,11 +814,11 @@ function profileSdkAliasDefinitions() {
814
814
  name,
815
815
  usage: `openpond ${name} [args]`,
816
816
  optionSchema: PROFILE_SDK_OPTION_SCHEMA,
817
- handler: async ({ options, rest }) => (await import("./profile-B62ZWPTQ.js")).runOpenPondProfileSdkAlias(name, options, rest)
817
+ handler: async ({ options, rest }) => (await import("./profile-PLWXQHKF.js")).runOpenPondProfileSdkAlias(name, options, rest)
818
818
  }));
819
819
  }
820
820
  async function runToolCommand({ options, rest }) {
821
- const { runToolList, runToolRun } = await import("./core-commands-5BRR7TU4.js");
821
+ const { runToolList, runToolRun } = await import("./core-commands-SND555SC.js");
822
822
  const subcommand = rest[0];
823
823
  if (subcommand === "list") {
824
824
  const target = rest[1];
@@ -842,8 +842,8 @@ async function runToolCommand({ options, rest }) {
842
842
  throw new Error("usage: tool <list|run> <handle>/<repo> [args]");
843
843
  }
844
844
  async function runBacktestCommand({ options, rest }) {
845
- const { runBacktestRun } = await import("./core-commands-5BRR7TU4.js");
846
- const { runBacktestEvents, runBacktestGet } = await import("./apps-JDRCDAPE.js");
845
+ const { runBacktestRun } = await import("./core-commands-SND555SC.js");
846
+ const { runBacktestEvents, runBacktestGet } = await import("./apps-7KLTYKHN.js");
847
847
  const subcommand = rest[0] || "run";
848
848
  if (subcommand === "run") {
849
849
  const target = rest[1];
@@ -877,7 +877,7 @@ async function runBacktestCommand({ options, rest }) {
877
877
  throw new Error("usage: backtest <run|events|get> <handle>/<repo> [args]");
878
878
  }
879
879
  async function runDeployCommand({ options, rest }) {
880
- const { runDeployWatch } = await import("./core-commands-5BRR7TU4.js");
880
+ const { runDeployWatch } = await import("./core-commands-SND555SC.js");
881
881
  const subcommand = rest[0] || "watch";
882
882
  if (subcommand !== "watch") {
883
883
  throw new Error(
@@ -893,7 +893,7 @@ async function runDeployCommand({ options, rest }) {
893
893
  await runDeployWatch(options, target);
894
894
  }
895
895
  async function runTemplateCommand({ options, rest }) {
896
- const { runTemplateBranches, runTemplateStatus, runTemplateUpdate } = await import("./core-commands-5BRR7TU4.js");
896
+ const { runTemplateBranches, runTemplateStatus, runTemplateUpdate } = await import("./core-commands-SND555SC.js");
897
897
  const subcommand = rest[0] || "status";
898
898
  const target = rest[1];
899
899
  if (!target) {
@@ -918,7 +918,7 @@ async function runTemplateCommand({ options, rest }) {
918
918
  );
919
919
  }
920
920
  async function runRepoCommand({ options, rest }) {
921
- const { runRepoCreate, runRepoPush } = await import("./core-commands-5BRR7TU4.js");
921
+ const { runRepoCreate, runRepoPush } = await import("./core-commands-SND555SC.js");
922
922
  const subcommand = rest[0] || "create";
923
923
  if (subcommand === "create") {
924
924
  await runRepoCreate(options, rest.slice(1));
@@ -945,7 +945,7 @@ async function runAppsCommand({ options, rest }) {
945
945
  runAppsSummary,
946
946
  runAppsTools,
947
947
  runAppsToolsExecute
948
- } = await import("./apps-JDRCDAPE.js");
948
+ } = await import("./apps-7KLTYKHN.js");
949
949
  const subcommand = rest[0];
950
950
  if (subcommand === "list") {
951
951
  await runAppsList(options);
@@ -21,7 +21,7 @@ import {
21
21
  loadOpenPondAccountContext,
22
22
  loadOpenPondHostedModels,
23
23
  streamOpenPondHostedChatTurn
24
- } from "./chunk-IGSEFSMA.js";
24
+ } from "./chunk-EIRW6Z6S.js";
25
25
  import {
26
26
  assertSafeBranchName,
27
27
  isGeneratedWorkspacePath,
@@ -34,14 +34,14 @@ import {
34
34
  truncatePatch,
35
35
  uniqueSortedPaths,
36
36
  workspaceImageContentType
37
- } from "./chunk-V3HADQL5.js";
37
+ } from "./chunk-FFD2YSZR.js";
38
38
  import {
39
39
  HOSTED_CHAT_SYSTEM_PROMPT,
40
40
  VERSION,
41
41
  event,
42
42
  now,
43
43
  textFromUnknown
44
- } from "./chunk-J4LLKY6E.js";
44
+ } from "./chunk-C4DAHPVI.js";
45
45
  import {
46
46
  AppPreferencesSchema,
47
47
  ApplyCreateImproveRunActionRequestSchema,
@@ -158,7 +158,7 @@ import {
158
158
  runAgentSdkProjectCommand,
159
159
  runProfileSkillCommand,
160
160
  sidebarFileBookmarkId
161
- } from "./chunk-3PYU3XCS.js";
161
+ } from "./chunk-55KT7K5P.js";
162
162
  import {
163
163
  AgentSnapshotSchema,
164
164
  AttemptReceiptSchema,
@@ -236,7 +236,7 @@ import {
236
236
  stableId,
237
237
  uniqueEventRefs,
238
238
  validateConnectedAppProviderOperationRequest
239
- } from "./chunk-35OYRVVH.js";
239
+ } from "./chunk-US7DOPAH.js";
240
240
  import {
241
241
  external_exports
242
242
  } from "./chunk-WYDVQOBL.js";
@@ -7869,11 +7869,12 @@ var MAX_PDF_ARTIFACTS = 10;
7869
7869
  var MAX_PDF_BYTES = 20 * 1024 * 1024;
7870
7870
  var execFileAsync = promisify(execFile);
7871
7871
  async function loadBoundedRefinerContext(store, trigger, observations) {
7872
- const [session, turn, events, turns] = await Promise.all([
7872
+ const [session, turn, events, turns, usageRecords] = await Promise.all([
7873
7873
  store.getSession(trigger.runRef),
7874
7874
  store.getTurn(trigger.turnId),
7875
7875
  store.runtimeEventsForSession(trigger.runRef, { limit: 1e3 }),
7876
- store.turnsForSession(trigger.runRef, 1e3)
7876
+ store.turnsForSession(trigger.runRef, 1e3),
7877
+ store.listModelUsageRecords({ turnId: trigger.turnId, limit: 1e4 })
7877
7878
  ]);
7878
7879
  const orderedTurns = [...turns].sort(
7879
7880
  (left, right) => left.startedAt.localeCompare(right.startedAt)
@@ -7900,6 +7901,23 @@ async function loadBoundedRefinerContext(store, trigger, observations) {
7900
7901
  limit: trigger.policy.maxEvidenceEvents
7901
7902
  });
7902
7903
  const assistantOutput = assistantOutputForTurn(events, trigger.turnId);
7904
+ const observationKinds = observations.map((observation) => observation.kind);
7905
+ const receiptProfile = tasksetGradeExecutionProfile(events, trigger.turnId);
7906
+ const durableUsage = {
7907
+ modelRequestCount: usageRecords.length || receiptProfile.modelRequestCount,
7908
+ promptTokens: usageRecords.reduce(
7909
+ (total, record9) => total + (record9.promptTokens ?? 0),
7910
+ 0
7911
+ ) || receiptProfile.promptTokens,
7912
+ completionTokens: usageRecords.reduce(
7913
+ (total, record9) => total + (record9.completionTokens ?? 0),
7914
+ 0
7915
+ ) || receiptProfile.completionTokens,
7916
+ totalTokens: usageRecords.reduce(
7917
+ (total, record9) => total + (record9.totalTokens ?? 0),
7918
+ 0
7919
+ ) || receiptProfile.totalTokens
7920
+ };
7903
7921
  return {
7904
7922
  task: {
7905
7923
  prompt: turn?.prompt ? redactAndBoundRefinerText(turn.prompt, 8e3) : null,
@@ -7908,6 +7926,18 @@ async function loadBoundedRefinerContext(store, trigger, observations) {
7908
7926
  previousAssistantOutput: previousTurn ? assistantOutputForTurn(events, previousTurn.id) : null
7909
7927
  },
7910
7928
  artifactDiagnostics: await inspectBoundedPdfArtifactDiagnostics(session?.cwd),
7929
+ executionProfile: {
7930
+ modelRequestCount: durableUsage.modelRequestCount,
7931
+ failedModelRequestCount: usageRecords.filter(
7932
+ (record9) => record9.status === "failed" || record9.status === "interrupted"
7933
+ ).length,
7934
+ promptTokens: durableUsage.promptTokens,
7935
+ completionTokens: durableUsage.completionTokens,
7936
+ totalTokens: durableUsage.totalTokens,
7937
+ toolFailureCount: observationKinds.filter((kind) => kind === "tool_failure").length,
7938
+ retryCount: observationKinds.filter((kind) => kind === "retry").length,
7939
+ recoveryCount: observationKinds.filter((kind) => kind === "recovery").length
7940
+ },
7911
7941
  eventExcerpts: evidenceEvents.map((runtimeEvent) => {
7912
7942
  const data = asRecord(runtimeEvent.data);
7913
7943
  const result = asRecord(data.result);
@@ -7927,6 +7957,34 @@ async function loadBoundedRefinerContext(store, trigger, observations) {
7927
7957
  })
7928
7958
  };
7929
7959
  }
7960
+ function tasksetGradeExecutionProfile(events, turnId) {
7961
+ const fallback = {
7962
+ modelRequestCount: 0,
7963
+ promptTokens: 0,
7964
+ completionTokens: 0,
7965
+ totalTokens: 0
7966
+ };
7967
+ const diagnostic = [...events].reverse().find(
7968
+ (runtimeEvent) => runtimeEvent.turnId === turnId && runtimeEvent.name === "diagnostic" && runtimeEvent.action === "taskset_grade" && typeof runtimeEvent.output === "string"
7969
+ );
7970
+ if (!diagnostic?.output) return fallback;
7971
+ try {
7972
+ const payload = asRecord(JSON.parse(diagnostic.output));
7973
+ const attempt = asRecord(payload.attempt);
7974
+ const usage = asRecord(attempt.usage);
7975
+ return {
7976
+ modelRequestCount: nonnegativeInteger(attempt.modelRequestCount),
7977
+ promptTokens: nonnegativeInteger(usage.promptTokens),
7978
+ completionTokens: nonnegativeInteger(usage.completionTokens),
7979
+ totalTokens: nonnegativeInteger(usage.totalTokens)
7980
+ };
7981
+ } catch {
7982
+ return fallback;
7983
+ }
7984
+ }
7985
+ function nonnegativeInteger(value) {
7986
+ return typeof value === "number" && Number.isFinite(value) && value >= 0 ? Math.trunc(value) : 0;
7987
+ }
7930
7988
  async function inspectBoundedPdfArtifactDiagnostics(cwd) {
7931
7989
  if (!cwd) return [];
7932
7990
  const pdfs = [];
@@ -11022,6 +11080,19 @@ async function runLocalHarnessRefinerWorker(input) {
11022
11080
  trigger,
11023
11081
  observations
11024
11082
  );
11083
+ const currentObservationHashes = new Set(
11084
+ observations.map((observation) => observation.contentHash)
11085
+ );
11086
+ const recentObservations = (await input.store.listHarnessImprovementArtifacts(
11087
+ workspace.id,
11088
+ "observation",
11089
+ 100
11090
+ )).filter((observation) => !currentObservationHashes.has(observation.contentHash)).sort((left, right) => right.createdAt.localeCompare(left.createdAt)).slice(0, 20).map((observation) => ({
11091
+ ...boundedObservationEvidence(observation),
11092
+ runRef: observation.runRef,
11093
+ turnId: observation.turnId,
11094
+ createdAt: observation.createdAt
11095
+ }));
11025
11096
  const recentOutcomes = (await input.store.listHarnessImprovementArtifacts(
11026
11097
  workspace.id,
11027
11098
  "refiner_outcome",
@@ -11039,6 +11110,8 @@ async function runLocalHarnessRefinerWorker(input) {
11039
11110
  task: boundedContext.task,
11040
11111
  eventExcerpts: boundedContext.eventExcerpts,
11041
11112
  artifactDiagnostics: boundedContext.artifactDiagnostics,
11113
+ executionProfile: boundedContext.executionProfile,
11114
+ recentObservations,
11042
11115
  recentOutcomes,
11043
11116
  sourceFiles: source.files,
11044
11117
  sourceCatalog: source.catalog,
@@ -41835,7 +41908,7 @@ function uniqueEvidence(run, evidence) {
41835
41908
  }
41836
41909
  async function verifyAppliedProfileCommit(input) {
41837
41910
  const command = input.command ?? (async (name, args, cwd, env) => {
41838
- const { runWorkspaceCommand } = await import("./workspaces-7YHBJG5P.js");
41911
+ const { runWorkspaceCommand } = await import("./workspaces-YLNB6DS7.js");
41839
41912
  return runWorkspaceCommand(name, args, cwd, env);
41840
41913
  });
41841
41914
  const result = await command("git", ["rev-parse", "HEAD"], input.repoPath);
@@ -28,7 +28,7 @@ import {
28
28
  compareSemver,
29
29
  fetchLatestNpmVersion,
30
30
  getInstalledCliVersion
31
- } from "./chunk-R4PRXXTC.js";
31
+ } from "./chunk-JSRCXDIL.js";
32
32
  import {
33
33
  checkOpenPondApiHealth,
34
34
  createHeadlessApps,
@@ -2770,6 +2770,17 @@ var LocalHarnessRefinerEvidenceSchema = external_exports.object({
2770
2770
  }).strict(),
2771
2771
  eventExcerpts: external_exports.array(external_exports.record(external_exports.string(), external_exports.unknown())).max(20),
2772
2772
  artifactDiagnostics: external_exports.array(external_exports.record(external_exports.string(), external_exports.unknown())).max(20),
2773
+ executionProfile: external_exports.object({
2774
+ modelRequestCount: external_exports.number().int().nonnegative(),
2775
+ failedModelRequestCount: external_exports.number().int().nonnegative(),
2776
+ promptTokens: external_exports.number().int().nonnegative(),
2777
+ completionTokens: external_exports.number().int().nonnegative(),
2778
+ totalTokens: external_exports.number().int().nonnegative(),
2779
+ toolFailureCount: external_exports.number().int().nonnegative(),
2780
+ retryCount: external_exports.number().int().nonnegative(),
2781
+ recoveryCount: external_exports.number().int().nonnegative()
2782
+ }).strict(),
2783
+ recentObservations: external_exports.array(external_exports.record(external_exports.string(), external_exports.unknown())).max(20),
2773
2784
  recentOutcomes: external_exports.array(external_exports.object({
2774
2785
  id: external_exports.string().trim().min(1).max(2e3),
2775
2786
  decision: external_exports.enum(["no_action", "proposed"]),
@@ -2882,7 +2893,10 @@ function refinerMessages(evidence2) {
2882
2893
  "The task's assistantOutputLinkCount and artifactDiagnostics are objective observations, not decision rules. Failed artifact diagnostics can contradict a claimed successful visual check; decide whether the evidence supports a reusable Harness correction, an external route, or no action. When a user requests linked evidence, named sources without clickable links do not satisfy the request; an explicit request for links authorizes including them and must not be excused as a generic URL-formatting constraint.",
2883
2894
  "For claims presented as current web verification, consider whether user-visible citations let the user inspect the supporting evidence even when the request did not literally say 'include links'. Source names and hidden retrieval metadata alone do not make a current factual claim verifiable.",
2884
2895
  "A recovered error can still justify improvement when the same avoidable first attempt is likely to recur. Ordinary successful work, one-off artifact details, and continuation of the current task usually require no_action.",
2896
+ "executionProfile is bounded cost evidence for the completed turn. Use request, token, tool-failure, retry, and recovery counts to distinguish a cheap recovery from a material recurring tax. High cost alone is not a reason to edit the Harness, but repeated repair loops supported by recentObservations can justify removing the failed first strategy for future related work.",
2897
+ "recentObservations is a bounded window of earlier raw improvement observations from this Harness workspace. Use it to detect recurrence across distinct real turns even when an earlier Refiner outcome was no_action. Match the reusable root behavior, not merely a shared tool name, topic, artifact type, or benchmark family.",
2885
2898
  "recentOutcomes is a small bounded window of earlier Refiner decisions from this Harness workspace. Use it as recurrence evidence only when you judge the underlying behavior to be related; repeated no_action decisions do not force a proposal, and differently worded incidents may still share one root behavior.",
2899
+ "Optimize future related work, not the already completed turn. Prefer a small instruction or workflow correction that removes the repeated failed attempt, redundant search, full rewrite, or unnecessary output while preserving the requested result. Do not prescribe a library, command, file format, or subject-specific workaround unless the durable Harness already standardizes that workflow.",
2886
2900
  "Propose only the reusable root behavior. Do not encode the task's subject, named entities, business facts, requested artifact outline, benchmark wording, or transient paths. A durable proposal must plausibly help materially different future tasks with the same failure class; otherwise choose no_action or route the underlying runtime/product concern.",
2887
2901
  "Choose the smallest correct layer. Use memory for durable user facts or preferences, prompt for broad behavior, skill for a reusable workflow, and agent for a reusable role. Use route for runtime, product, taskset, or training concerns that this step must not mutate.",
2888
2902
  "Do not confuse 'no safe Harness edit' with no_action. If the evidence exposes a durable defect owned by runtime, product, evaluation, or training, return route even when the agent recovered and completed the task.",
@@ -3823,7 +3837,7 @@ var harnessRefinerBenchmarkRelease = TasksetReleaseSchema.parse({
3823
3837
  ]
3824
3838
  }
3825
3839
  ],
3826
- "contentHash": "05dbf9058c09b75bc950ca5cdf4ac03650dba7bb0cb74a3d9e152b16c110a2f7",
3840
+ "contentHash": "4cef91a9c92df39d16f741b4d901dbde6b62e72bd8a48647a4a81c0d517d9634",
3827
3841
  "environment": {
3828
3842
  "defaultTimeoutMs": 9e5,
3829
3843
  "deterministicSeeds": false,
@@ -3879,14 +3893,15 @@ var harnessRefinerBenchmarkRelease = TasksetReleaseSchema.parse({
3879
3893
  "weight": 1
3880
3894
  }
3881
3895
  ],
3882
- "id": "harness-refiner-public-v1",
3896
+ "id": "harness-refiner-08112026",
3883
3897
  "metadata": {
3884
3898
  "adaptationSplit": "validation",
3885
3899
  "benchmark": "harness-refiner",
3886
3900
  "frozenEvaluationSplit": "frozen_eval",
3887
3901
  "primaryMetric": "paired_foreground_provider_tokens",
3888
- "protocolVersion": "1",
3902
+ "protocolVersion": "2",
3889
3903
  "qualityPolicy": "hard_non_regression",
3904
+ "refinementMode": "sequential_product_lifecycle",
3890
3905
  "toolDeclarationSource": "openpond-production-model-tool-definitions",
3891
3906
  "trainingSideEffect": false
3892
3907
  },
@@ -3903,7 +3918,7 @@ var harnessRefinerBenchmarkRelease = TasksetReleaseSchema.parse({
3903
3918
  "expectedOutput"
3904
3919
  ]
3905
3920
  },
3906
- "revision": 3,
3921
+ "revision": 1,
3907
3922
  "schemaVersion": "openpond.tasksetRelease.v2",
3908
3923
  "tasks": [
3909
3924
  {
@@ -3,12 +3,12 @@ import {
3
3
  resolveWebLaunchMessages,
4
4
  runOpenPondAppServerCli,
5
5
  runOpenPondServerCli
6
- } from "./chunk-LYEXNSCO.js";
6
+ } from "./chunk-3UPQUD6Y.js";
7
7
  import "./chunk-NFNEENNR.js";
8
- import "./chunk-IGSEFSMA.js";
9
- import "./chunk-J4LLKY6E.js";
10
- import "./chunk-3PYU3XCS.js";
11
- import "./chunk-35OYRVVH.js";
8
+ import "./chunk-EIRW6Z6S.js";
9
+ import "./chunk-C4DAHPVI.js";
10
+ import "./chunk-55KT7K5P.js";
11
+ import "./chunk-US7DOPAH.js";
12
12
  import "./chunk-WYDVQOBL.js";
13
13
  import "./chunk-KHNHUA2H.js";
14
14
  import "./chunk-UACZUFIA.js";