@zhivex-ai/harness 1.4.0-rc.6 → 1.4.0

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 (92) hide show
  1. package/CHANGELOG.md +31 -0
  2. package/README.md +124 -71
  3. package/SECURITY.md +1 -1
  4. package/SUPPORT.md +2 -2
  5. package/contracts/engine-api.json +55 -0
  6. package/contracts/stable-api-signatures.json +33 -33
  7. package/dist/acp-cli.js +18 -15
  8. package/dist/cli/arguments.d.ts +3 -0
  9. package/dist/cli/console/console-budget.d.ts +8 -2
  10. package/dist/{cli-s1rs15vv.js → cli-2h37qyvg.js} +34 -15
  11. package/dist/{cli-entry-d5788aay.js → cli-entry-20w6nh0k.js} +359 -21
  12. package/dist/{cli-entry-9c2k0zwz.js → cli-entry-4ngptr62.js} +2902 -1482
  13. package/dist/{cli-entry-4k1cf0m3.js → cli-entry-w0hterjs.js} +8 -5
  14. package/dist/cli.js +2 -2
  15. package/dist/client/json-contracts.d.ts +95 -2
  16. package/dist/client/local-service.d.ts +2 -2
  17. package/dist/client/protocol.d.ts +3 -0
  18. package/dist/client/stream.d.ts +2 -1
  19. package/dist/compat/code-support.d.ts +6 -0
  20. package/dist/compat/code-support.js +29 -6
  21. package/dist/{config-c002f06f.js → config-j9624t6t.js} +1 -1
  22. package/dist/{config-j3jga5wh.js → config-qt69hkqj.js} +4 -2
  23. package/dist/engine/acp.js +14 -12
  24. package/dist/engine/client.js +11 -10
  25. package/dist/engine/desktop-providers-v1.js +2 -1
  26. package/dist/engine/desktop-state-v1.js +9 -9
  27. package/dist/engine/index.js +48 -46
  28. package/dist/engine/mcp-stdio-v1.js +7 -6
  29. package/dist/engine/protocol.js +30 -2
  30. package/dist/engine/service.js +12 -11
  31. package/dist/hostile-repository-demo.js +4773 -3027
  32. package/dist/{index-49ys3s4q.js → index-5jhgatga.js} +35 -16
  33. package/dist/{index-wq2tax80.js → index-61gthdz6.js} +1 -1
  34. package/dist/index-6dft2vev.js +343 -0
  35. package/dist/{index-gq9xagx2.js → index-8zjmnyw5.js} +25 -138
  36. package/dist/index-937cb7y8.js +705 -0
  37. package/dist/index-bpc596v3.js +154 -0
  38. package/dist/index-fm84men1.js +239 -0
  39. package/dist/{index-e6r04a18.js → index-m34q25jj.js} +1127 -170
  40. package/dist/index-m49jx72n.js +220 -0
  41. package/dist/{index-dj5z774k.js → index-m82cfspw.js} +35 -16
  42. package/dist/{index-qfpz5y2v.js → index-nmjdwd4p.js} +8 -2
  43. package/dist/{index-0g939pfs.js → index-pdmevfxv.js} +10 -7
  44. package/dist/{index-4j1h4j8c.js → index-pp474137.js} +1598 -973
  45. package/dist/{index-2tgb2b4e.js → index-rkbf7dqg.js} +3 -5
  46. package/dist/index-s2k2edts.js +3778 -0
  47. package/dist/{index-z6br6qdn.js → index-tfzta544.js} +28 -11
  48. package/dist/index.js +44 -42
  49. package/dist/persistence/operations.d.ts +3 -0
  50. package/dist/providers/vertex-auth.d.ts +5 -1
  51. package/dist/runtime/config.d.ts +8 -0
  52. package/dist/runtime/context-runtime.d.ts +1 -0
  53. package/dist/runtime/error-diagnostics.d.ts +8 -0
  54. package/dist/runtime/errors.d.ts +10 -0
  55. package/dist/runtime/harness.d.ts +9 -0
  56. package/dist/runtime/policy-inspection.d.ts +1 -0
  57. package/dist/runtime/provider-transient.d.ts +33 -0
  58. package/dist/runtime/runtime-diagnostics.d.ts +3 -0
  59. package/dist/runtime/runtime-policy.d.ts +8 -10
  60. package/dist/runtime/task-acceptance-host.d.ts +1 -1
  61. package/dist/runtime/task-budget-host.d.ts +217 -0
  62. package/dist/runtime/task-budget.d.ts +147 -0
  63. package/dist/runtime/task-continuity.d.ts +434 -0
  64. package/dist/runtime/task-telemetry.d.ts +63 -0
  65. package/dist/runtime/task-transport.d.ts +3 -0
  66. package/dist/runtime/task-usage-context.d.ts +13 -0
  67. package/dist/runtime/time-to-safe-fix.d.ts +8 -0
  68. package/dist/runtime/usage-ledger.d.ts +17 -0
  69. package/dist/service-cli.js +12 -11
  70. package/dist/{service-client-cli-b52c67hx.js → service-client-cli-fn54ev6w.js} +18 -7
  71. package/dist/verify-historical-migrations.js +2426 -652
  72. package/dist/zhx.js +2 -2
  73. package/docs/CLI.md +38 -8
  74. package/docs/CLIENT_PROTOCOL.md +9 -1
  75. package/docs/CODE_RELEASE.md +118 -1
  76. package/docs/DURABLE_OPERATIONS.md +1 -1
  77. package/docs/EXTENSIBILITY.md +1 -1
  78. package/docs/FIRST_USE.md +6 -6
  79. package/docs/MINIMUM_OFFLINE_EVALS.md +31 -0
  80. package/docs/MINIMUM_TASK_AUTHORITY.md +395 -0
  81. package/docs/PROJECT_MEMORY.md +1 -1
  82. package/docs/README.md +2 -0
  83. package/docs/STABILITY.md +1 -1
  84. package/docs/WEB_LIMITS.md +117 -0
  85. package/evaluations/representative-assembly-matrix.json +28 -1
  86. package/examples/README.md +5 -5
  87. package/package.json +8 -5
  88. package/dist/index-8705zxpr.js +0 -145
  89. package/dist/index-a1q355va.js +0 -600
  90. package/dist/index-r0tdj04h.js +0 -976
  91. package/dist/index-rd0s3gqj.js +0 -1669
  92. package/dist/index-vtqfjnab.js +0 -1626
@@ -62,7 +62,7 @@ import {
62
62
  timeToSafeFixLatencyStatistics,
63
63
  timeToSafeFixTaskSchema,
64
64
  verifyChangeEnvelope
65
- } from "../index-dj5z774k.js";
65
+ } from "../index-m82cfspw.js";
66
66
  import {
67
67
  HARNESS_STATE_BACKUP_MAX_BYTES,
68
68
  HARNESS_STATE_BACKUP_SCHEMA_VERSION,
@@ -73,7 +73,7 @@ import {
73
73
  inspectHarnessState,
74
74
  readHarnessStateBackup,
75
75
  stateBackupBundleSchema
76
- } from "../index-z6br6qdn.js";
76
+ } from "../index-tfzta544.js";
77
77
  import {
78
78
  CLI_COMMAND_OPTION_CONTRACTS,
79
79
  CLI_OPTION_DEFINITIONS,
@@ -83,7 +83,7 @@ import {
83
83
  resolveHarnessModelRoutes,
84
84
  serializeHarnessModelRoutes,
85
85
  validateCliCommandOptions
86
- } from "../index-wq2tax80.js";
86
+ } from "../index-61gthdz6.js";
87
87
  import {
88
88
  harnessLocalCredentialsSchema,
89
89
  openHarnessActivityStore,
@@ -91,11 +91,17 @@ import {
91
91
  recoverHarnessLocalService,
92
92
  requestHarnessLocalService,
93
93
  startHarnessLocalService
94
- } from "../index-49ys3s4q.js";
94
+ } from "../index-5jhgatga.js";
95
95
  import {
96
96
  createAcpConnection,
97
97
  serveAcpStdio
98
98
  } from "../index-3ah1f369.js";
99
+ import {
100
+ createHarnessClientAdapter
101
+ } from "../index-937cb7y8.js";
102
+ import {
103
+ openWorkspaceCheckpointStore
104
+ } from "../index-6dft2vev.js";
99
105
  import {
100
106
  APPROVAL_HISTORY_KEY,
101
107
  DEFAULT_HARNESS_CONTEXT_MANIFEST,
@@ -120,7 +126,6 @@ import {
120
126
  createEmptyHarnessContextBundle,
121
127
  createExecutionEnvironmentTools,
122
128
  createHarness,
123
- createHarnessClientAdapter,
124
129
  createHarnessLifecycleDispatcher,
125
130
  createHarnessSubagents,
126
131
  createHarnessToolPolicy,
@@ -144,39 +149,35 @@ import {
144
149
  runHarness,
145
150
  runHarnessReviewGroup,
146
151
  selectHarnessModel
147
- } from "../index-4j1h4j8c.js";
152
+ } from "../index-pp474137.js";
148
153
  import {
149
154
  HARNESS_OPERATIONS_SCHEMA_VERSION,
150
155
  HARNESS_PROJECT_MEMORY_LIMITS,
151
156
  HARNESS_PROJECT_MEMORY_SCHEMA_VERSION,
152
- HARNESS_SQLITE_FILE,
153
- TERMINAL_RUN_STATUSES,
154
- cancelHarnessRun,
155
- cleanupHarnessRuns,
156
- inspectHarnessRun,
157
- listHarnessRuns,
158
- migrateLegacyFileRuns,
159
- openHarnessPersistence,
160
- openHarnessProjectMemory,
161
- openWorkspaceCheckpointStore
162
- } from "../index-rd0s3gqj.js";
163
- import"../index-a1q355va.js";
164
- import {
165
157
  HARNESS_SESSION_INDEX_FILE,
166
158
  HARNESS_SESSION_SCHEMA_VERSION,
159
+ HARNESS_SQLITE_FILE,
167
160
  SESSION_RUN_STATUSES,
168
161
  TASK_ACCEPTANCE_EVIDENCE_KEY,
162
+ TERMINAL_RUN_STATUSES,
169
163
  TERMINAL_SESSION_RUN_STATUSES,
170
164
  USAGE_LEDGER_KEY,
165
+ cancelHarnessRun,
166
+ cleanupHarnessRuns,
171
167
  compileTaskAcceptanceContract,
168
+ inspectHarnessRun,
172
169
  inspectRuntimeManifest,
173
170
  inspectUsageLedger,
171
+ listHarnessRuns,
172
+ migrateLegacyFileRuns,
174
173
  openCliSessionStore,
174
+ openHarnessPersistence,
175
+ openHarnessProjectMemory,
175
176
  openSessionStore,
176
177
  readTaskAcceptanceLedger,
177
178
  taskAcceptanceContractSchema,
178
179
  validateStateDirectory
179
- } from "../index-vtqfjnab.js";
180
+ } from "../index-s2k2edts.js";
180
181
  import {
181
182
  BUN_ENGINE_RANGE,
182
183
  HARNESS_MCP_CONFIG_SCHEMA_VERSION,
@@ -187,34 +188,32 @@ import {
187
188
  createHttpMcpClient,
188
189
  loadHarnessMcpConfiguration,
189
190
  normalizeHarnessMcpConfiguration
190
- } from "../index-0g939pfs.js";
191
+ } from "../index-pdmevfxv.js";
191
192
  import {
192
193
  CliOciRuntimeAdapter,
194
+ EDIT_CONTRACT_SCHEMA_VERSION,
195
+ EDIT_DIGEST_ALGORITHM,
193
196
  HARNESS_EXECUTION_ARTIFACT_SCHEMA_VERSION,
194
197
  HARNESS_OCI_LABEL,
195
198
  HARNESS_OCI_LABEL_VALUE,
196
- Workspace,
197
- cleanupHarnessExecutionArtifacts,
198
- createHarnessOciExecutionEnvironment,
199
- describeOciCommand,
200
- executionFingerprintInput,
201
- harnessExecutionSession
202
- } from "../index-e6r04a18.js";
203
- import {
204
- EDIT_CONTRACT_SCHEMA_VERSION,
205
- EDIT_DIGEST_ALGORITHM,
206
199
  MAX_EDIT_CHANGES,
207
200
  MAX_EDIT_FILE_BYTES,
208
201
  MAX_EDIT_PROPOSAL_BYTES,
202
+ Workspace,
209
203
  applyEditProposalInputSchema,
204
+ cleanupHarnessExecutionArtifacts,
210
205
  createEditProposal,
206
+ createHarnessOciExecutionEnvironment,
207
+ describeOciCommand,
211
208
  editChangeSchema,
212
209
  editChangesSchema,
213
210
  editContractDocument,
214
211
  editProposalChangeSchema,
215
212
  editProposalInputSchema,
216
213
  editProposalSchema,
214
+ executionFingerprintInput,
217
215
  fileDigestSchema,
216
+ harnessExecutionSession,
218
217
  moveFileInputSchema,
219
218
  mutationAuditEntrySchema,
220
219
  mutationOperationSchema,
@@ -223,7 +222,7 @@ import {
223
222
  taskCheckReceiptSchema,
224
223
  validateEditProposal,
225
224
  workspaceFilePathSchema
226
- } from "../index-r0tdj04h.js";
225
+ } from "../index-m34q25jj.js";
227
226
  import {
228
227
  BUILTIN_PROVIDER_REGISTRATIONS,
229
228
  DEFAULT_ALLOWED_CHECKS,
@@ -232,35 +231,24 @@ import {
232
231
  DEFAULT_SUBAGENT_BUDGET,
233
232
  HARNESS_CONFIG_MIGRATABLE_SCHEMA_VERSIONS,
234
233
  HARNESS_CONFIG_SCHEMA_VERSION,
235
- HARNESS_ERROR_CODES,
236
- HARNESS_ERROR_SCHEMA_VERSION,
237
234
  HARNESS_EXECUTION_BACKENDS,
238
235
  HARNESS_EXECUTION_POLICY_VERSION,
239
236
  HARNESS_OCI_RUNTIMES,
240
237
  HARNESS_OCI_SHELL_MODES,
241
238
  HARNESS_REQUIRED_CAPABILITIES,
242
239
  HARNESS_SUBAGENT_PROFILES,
243
- HarnessApprovalError,
244
- HarnessConfigError,
245
- HarnessError,
246
- HarnessExecutionError,
247
- HarnessProviderError,
248
- HarnessStateConflictError,
249
- HarnessWorkspaceError,
250
240
  PROVIDERS,
251
241
  PROVIDER_DESCRIPTORS,
252
242
  createProviderModel,
253
243
  createProviderRegistry,
254
244
  defaultHarnessNamespace,
255
- harnessErrorDocument,
256
245
  migrateHarnessConfigInput,
257
- normalizeHarnessError,
258
246
  parseProvider,
259
247
  providerAvailability,
260
248
  providerDescriptor,
261
249
  resolveHarnessConfig
262
- } from "../index-gq9xagx2.js";
263
- import"../index-8705zxpr.js";
250
+ } from "../index-8zjmnyw5.js";
251
+ import"../index-m49jx72n.js";
264
252
  import"../index-xqxeypt5.js";
265
253
  import {
266
254
  CLI_EVENT_SCHEMA_VERSION,
@@ -272,7 +260,21 @@ import {
272
260
  serializeStreamResult,
273
261
  streamEventDocument,
274
262
  streamResultDocument
275
- } from "../index-qfpz5y2v.js";
263
+ } from "../index-nmjdwd4p.js";
264
+ import {
265
+ HARNESS_ERROR_CODES,
266
+ HARNESS_ERROR_SCHEMA_VERSION,
267
+ HarnessApprovalError,
268
+ HarnessConfigError,
269
+ HarnessError,
270
+ HarnessExecutionError,
271
+ HarnessProviderError,
272
+ HarnessStateConflictError,
273
+ HarnessWorkspaceError,
274
+ harnessErrorDocument,
275
+ normalizeHarnessError
276
+ } from "../index-bpc596v3.js";
277
+ import"../index-fm84men1.js";
276
278
  import"../index-1bx83sw4.js";
277
279
  // src/persistence/project-memory-command.ts
278
280
  var HARNESS_MEMORY_COMMANDS = ["remember", "list", "read", "update", "forget", "suggest", "accept", "clear", "enable", "disable", "context"];
@@ -8,13 +8,14 @@ import {
8
8
  mcpResourcePlanSchema,
9
9
  prepareMcpWorkspaceSnapshot,
10
10
  recoverDockerMcpResources
11
- } from "../index-2tgb2b4e.js";
12
- import"../index-0g939pfs.js";
13
- import"../index-e6r04a18.js";
14
- import"../index-r0tdj04h.js";
15
- import"../index-gq9xagx2.js";
16
- import"../index-8705zxpr.js";
11
+ } from "../index-rkbf7dqg.js";
12
+ import"../index-pdmevfxv.js";
13
+ import"../index-m34q25jj.js";
14
+ import"../index-8zjmnyw5.js";
15
+ import"../index-m49jx72n.js";
17
16
  import"../index-xqxeypt5.js";
17
+ import"../index-bpc596v3.js";
18
+ import"../index-fm84men1.js";
18
19
  import"../index-1bx83sw4.js";
19
20
  // src/persistence/mcp-reconciliation.ts
20
21
  import { z } from "zod";
@@ -54,6 +54,32 @@ var harnessClientRequestSchema = z.object({
54
54
  connectionId: id,
55
55
  command: harnessClientCommandSchema
56
56
  }).strict();
57
+ // src/runtime/provider-diagnostics.ts
58
+ import { z as z2 } from "zod";
59
+ var providerDiagnosticSchema = z2.strictObject({
60
+ reason: z2.enum(["previous_response_unavailable", "context_length_exceeded", "authentication", "payment_required", "permission", "rate_limit", "model_unavailable", "invalid_request", "server_error", "unknown"]),
61
+ parameter: z2.enum(["previous_response_id", "input", "messages", "tools", "model", "max_output_tokens", "max_tokens", "temperature", "other", "none"]),
62
+ bodyState: z2.enum(["parsed", "malformed", "too_large", "unavailable", "read_timeout"])
63
+ });
64
+
65
+ // src/runtime/provider-transient.ts
66
+ var SYMBOLIC = new Set(["ABORTED", "RESOURCE_EXHAUSTED", "UNAVAILABLE", "DEADLINE_EXCEEDED", "INTERNAL"]);
67
+ var STREAM_RESET_CODES = new Set(["ECONNRESET", "ECONNABORTED", "EPIPE", "ETIMEDOUT", "UND_ERR_SOCKET", "ERR_STREAM_PREMATURE_CLOSE"]);
68
+
69
+ // src/runtime/errors.ts
70
+ var providerStreamDiagnostic = (error) => {
71
+ const seen = new Set;
72
+ for (let depth = 0;depth < 5 && error && typeof error === "object" && !seen.has(error); depth++) {
73
+ seen.add(error);
74
+ const value = error;
75
+ if (value.provider === "qwen" && value.diagnosticCode === "QWEN_SSE_EVENT_INVALID" && (value.name === "QwenStreamEventError" || value.category === "provider-stream") && (value.transport === "chat" || value.transport === "responses") && (value.reason === "invalid_json" || value.reason === "invalid_event") && value.retryable === false) {
76
+ return { provider: "qwen", transport: value.transport, diagnosticCode: "QWEN_SSE_EVENT_INVALID", reason: value.reason, retryable: false };
77
+ }
78
+ error = value.cause;
79
+ }
80
+ return;
81
+ };
82
+
57
83
  // src/client/stream.ts
58
84
  var CLI_JSON_SCHEMA_VERSION = 1;
59
85
  var CLI_EVENT_SCHEMA_VERSION = 1;
@@ -109,8 +135,10 @@ var streamEventDocument = (event, sequence = 0) => {
109
135
  ...event.finishReason ? { finishReason: event.finishReason } : {},
110
136
  ...event.usage ? { usage: event.usage } : {}
111
137
  };
112
- case "error":
113
- return { ...base, error: "Provider stream failed." };
138
+ case "error": {
139
+ const diagnostic = providerStreamDiagnostic(event.error);
140
+ return { ...base, error: "Provider stream failed.", ...diagnostic ? { providerDiagnostic: diagnostic } : {} };
141
+ }
114
142
  case "agent-run-start":
115
143
  return { ...base, currentStep: event.currentStep, maxSteps: event.maxSteps };
116
144
  case "agent-step-start":
@@ -5,18 +5,19 @@ import {
5
5
  recoverHarnessLocalService,
6
6
  requestHarnessLocalService,
7
7
  startHarnessLocalService
8
- } from "../index-49ys3s4q.js";
9
- import"../index-4j1h4j8c.js";
10
- import"../index-rd0s3gqj.js";
11
- import"../index-a1q355va.js";
12
- import"../index-vtqfjnab.js";
13
- import"../index-0g939pfs.js";
14
- import"../index-e6r04a18.js";
15
- import"../index-r0tdj04h.js";
16
- import"../index-gq9xagx2.js";
17
- import"../index-8705zxpr.js";
8
+ } from "../index-5jhgatga.js";
9
+ import"../index-937cb7y8.js";
10
+ import"../index-6dft2vev.js";
11
+ import"../index-pp474137.js";
12
+ import"../index-s2k2edts.js";
13
+ import"../index-pdmevfxv.js";
14
+ import"../index-m34q25jj.js";
15
+ import"../index-8zjmnyw5.js";
16
+ import"../index-m49jx72n.js";
18
17
  import"../index-xqxeypt5.js";
19
- import"../index-qfpz5y2v.js";
18
+ import"../index-nmjdwd4p.js";
19
+ import"../index-bpc596v3.js";
20
+ import"../index-fm84men1.js";
20
21
  import"../index-1bx83sw4.js";
21
22
  export {
22
23
  harnessLocalCredentialsSchema,