@zhivex-ai/harness 1.4.0 → 1.4.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.
Files changed (117) hide show
  1. package/CHANGELOG.md +29 -10
  2. package/README.md +7 -5
  3. package/SUPPORT.md +2 -2
  4. package/contracts/client-protocol-v1.schema.json +593 -0
  5. package/contracts/engine-api.json +156 -0
  6. package/contracts/public-api.json +12 -0
  7. package/contracts/stable-api-signatures.json +33 -33
  8. package/dist/acp-cli.js +54 -20
  9. package/dist/audit/index.d.ts +3 -0
  10. package/dist/audit/index.js +482 -0
  11. package/dist/audit/pack.d.ts +72 -0
  12. package/dist/audit-pack-e4vaq7np.js +532 -0
  13. package/dist/cli/arguments.d.ts +3 -1
  14. package/dist/cli/audit-pack.d.ts +24 -0
  15. package/dist/cli/cli-credentials.d.ts +6 -0
  16. package/dist/cli/cli-profiles.d.ts +4 -2
  17. package/dist/cli/node-engine.d.ts +2 -0
  18. package/dist/{cli-2h37qyvg.js → cli-1cf4dcnj.js} +245 -642
  19. package/dist/{cli-entry-w0hterjs.js → cli-entry-3s63zn4w.js} +40 -13
  20. package/dist/cli-entry-7f0cen32.js +9990 -0
  21. package/dist/cli-entry-a890x3kq.js +10348 -0
  22. package/dist/{cli-entry-20w6nh0k.js → cli-entry-hdtfef27.js} +439 -19
  23. package/dist/cli-entry-rgs6bxmy.js +484 -0
  24. package/dist/cli.js +27 -2
  25. package/dist/client/json-contracts.d.ts +4 -0
  26. package/dist/client/protocol.d.ts +133 -0
  27. package/dist/client/task-control-host.d.ts +400 -0
  28. package/dist/client/task-projection-host.d.ts +12 -0
  29. package/dist/client/task-projection.d.ts +168 -0
  30. package/dist/compat/code-support.js +28 -22
  31. package/dist/{config-qt69hkqj.js → config-r9fdhce6.js} +3 -3
  32. package/dist/{config-j9624t6t.js → config-vyajmksy.js} +1 -1
  33. package/dist/engine/acp.js +15 -11
  34. package/dist/engine/client.js +14 -10
  35. package/dist/engine/desktop-providers-v1.d.ts +2 -0
  36. package/dist/engine/desktop-providers-v1.js +23 -3
  37. package/dist/engine/desktop-state-v1.js +11 -8
  38. package/dist/engine/index.d.ts +3 -0
  39. package/dist/engine/index.js +101 -554
  40. package/dist/engine/mcp-stdio-v1.js +8 -6
  41. package/dist/engine/models.js +76 -4
  42. package/dist/engine/protocol.d.ts +2 -0
  43. package/dist/engine/protocol.js +110 -0
  44. package/dist/engine/service.js +15 -11
  45. package/dist/hostile-repository-demo.js +1095 -505
  46. package/dist/{index-937cb7y8.js → index-02pqtbbg.js} +559 -33
  47. package/dist/{index-pp474137.js → index-0zs2dz26.js} +766 -931
  48. package/dist/{index-8zjmnyw5.js → index-1265j7t2.js} +73 -6
  49. package/dist/index-4fx5f3k5.js +269 -0
  50. package/dist/{index-nmjdwd4p.js → index-4gt045j0.js} +109 -1
  51. package/dist/{index-6dft2vev.js → index-6599mpmy.js} +5 -3
  52. package/dist/{index-tfzta544.js → index-74kkpyqk.js} +9 -7
  53. package/dist/{index-61gthdz6.js → index-8sm2a1wa.js} +1 -1
  54. package/dist/index-c39197wq.js +552 -0
  55. package/dist/{index-5jhgatga.js → index-crta5wzv.js} +7 -6
  56. package/dist/{index-m34q25jj.js → index-d9zkmhz3.js} +143 -824
  57. package/dist/{index-pdmevfxv.js → index-dtb2c6ds.js} +5 -259
  58. package/dist/index-f6mqa5gk.js +1535 -0
  59. package/dist/index-j6zxnc8m.js +490 -0
  60. package/dist/{index-rkbf7dqg.js → index-mv8sb1ns.js} +5 -3
  61. package/dist/{index-xqxeypt5.js → index-mzydbzp8.js} +76 -4
  62. package/dist/{index-wg1sd3at.js → index-qfsrrnz6.js} +1 -1
  63. package/dist/{index-m82cfspw.js → index-sk3cap35.js} +877 -963
  64. package/dist/index-sstgcsr0.js +511 -0
  65. package/dist/index-wm9xeq1n.js +329 -0
  66. package/dist/index-xdbkcccf.js +719 -0
  67. package/dist/{index-s2k2edts.js → index-zxg4ve4j.js} +41 -1548
  68. package/dist/index.d.ts +3 -0
  69. package/dist/index.js +93 -77
  70. package/dist/internal/desktop/providers.d.ts +2 -0
  71. package/dist/models/catalog.d.ts +2 -0
  72. package/dist/persistence/sqlite-database.d.ts +1 -0
  73. package/dist/providers/azure-openai.d.ts +14 -0
  74. package/dist/providers/bedrock.d.ts +23 -0
  75. package/dist/providers/providers.d.ts +1 -1
  76. package/dist/runtime/durable-review-group.d.ts +33 -0
  77. package/dist/runtime/harness.d.ts +11 -0
  78. package/dist/runtime/run-interruption.d.ts +7 -0
  79. package/dist/runtime/shared-budget.d.ts +30 -0
  80. package/dist/runtime/task-continuity.d.ts +300 -77
  81. package/dist/service-cli.js +15 -11
  82. package/dist/{service-client-cli-fn54ev6w.js → service-client-cli-eqrdc9zq.js} +400 -305
  83. package/dist/verify-historical-migrations.js +1095 -505
  84. package/dist/zhx.js +27 -2
  85. package/docs/AUDIT_PACK.md +99 -0
  86. package/docs/AZURE_OPENAI.md +53 -0
  87. package/docs/BEDROCK.md +56 -0
  88. package/docs/CLI.md +15 -0
  89. package/docs/CLIENT_PROTOCOL.md +178 -0
  90. package/docs/CODE_RELEASE.md +31 -1
  91. package/docs/CODE_WEB_TASKS.md +116 -0
  92. package/docs/CONTEXT_ENGINEERING.md +59 -0
  93. package/docs/CREDENTIALS.md +21 -0
  94. package/docs/DURABLE_OPERATIONS.md +93 -1
  95. package/docs/ENGINE_API.md +5 -2
  96. package/docs/EXTENSIBILITY.md +2 -2
  97. package/docs/FIRST_USE.md +6 -6
  98. package/docs/MINIMUM_TASK_AUTHORITY.md +3 -3
  99. package/docs/PROJECT_MEMORY.md +1 -1
  100. package/docs/README.md +6 -1
  101. package/docs/STABILITY.md +3 -1
  102. package/docs/SUPPORT_MATRIX.md +1 -1
  103. package/docs/SUPPORT_MATRIX_1_1.md +1 -1
  104. package/docs/USAGE.md +3 -1
  105. package/docs/VERTEX.md +2 -2
  106. package/docs/WEB_LIMITS.md +4 -3
  107. package/docs/adr/0002-isolated-mcp-stdio.md +6 -3
  108. package/docs/support-matrix-1.1.json +3 -1
  109. package/docs/support-matrix.json +6 -4
  110. package/evaluations/code-task-ui.json +20 -0
  111. package/evaluations/representative-assembly-matrix.json +10 -1
  112. package/evaluations/task-projection.json +10 -0
  113. package/evaluations/task-recovery-lab.json +60 -0
  114. package/examples/README.md +3 -3
  115. package/package.json +23 -13
  116. package/dist/cli-entry-4ngptr62.js +0 -19900
  117. package/dist/index-m49jx72n.js +0 -220
@@ -2250,6 +2250,31 @@
2250
2250
  "name": "GovernanceSessionSource",
2251
2251
  "kind": "type",
2252
2252
  "tier": "experimental"
2253
+ },
2254
+ {
2255
+ "name": "runHarnessDurableReviewGroup",
2256
+ "kind": "runtime",
2257
+ "tier": "beta"
2258
+ },
2259
+ {
2260
+ "name": "inspectHarnessReviewGroup",
2261
+ "kind": "runtime",
2262
+ "tier": "beta"
2263
+ },
2264
+ {
2265
+ "name": "cancelHarnessReviewGroup",
2266
+ "kind": "runtime",
2267
+ "tier": "beta"
2268
+ },
2269
+ {
2270
+ "name": "HarnessDurableReviewGroupResult",
2271
+ "kind": "type",
2272
+ "tier": "beta"
2273
+ },
2274
+ {
2275
+ "name": "HarnessSharedBudgetOptions",
2276
+ "kind": "type",
2277
+ "tier": "beta"
2253
2278
  }
2254
2279
  ]
2255
2280
  },
@@ -2381,6 +2406,31 @@
2381
2406
  "name": "ApprovalDecisionView",
2382
2407
  "kind": "type",
2383
2408
  "tier": "beta"
2409
+ },
2410
+ {
2411
+ "name": "HARNESS_TASK_PROJECTION_VERSION",
2412
+ "kind": "runtime",
2413
+ "tier": "experimental"
2414
+ },
2415
+ {
2416
+ "name": "harnessTaskProjectionSchema",
2417
+ "kind": "runtime",
2418
+ "tier": "experimental"
2419
+ },
2420
+ {
2421
+ "name": "reduceHarnessTaskProjection",
2422
+ "kind": "runtime",
2423
+ "tier": "experimental"
2424
+ },
2425
+ {
2426
+ "name": "HarnessTaskProjection",
2427
+ "kind": "type",
2428
+ "tier": "experimental"
2429
+ },
2430
+ {
2431
+ "name": "HarnessTaskProjectionScope",
2432
+ "kind": "type",
2433
+ "tier": "experimental"
2384
2434
  }
2385
2435
  ]
2386
2436
  },
@@ -2963,6 +3013,56 @@
2963
3013
  "name": "vertexRoute",
2964
3014
  "kind": "runtime",
2965
3015
  "tier": "experimental"
3016
+ },
3017
+ {
3018
+ "name": "bedrockConfigured",
3019
+ "kind": "runtime",
3020
+ "tier": "experimental"
3021
+ },
3022
+ {
3023
+ "name": "bedrockEnvironment",
3024
+ "kind": "runtime",
3025
+ "tier": "experimental"
3026
+ },
3027
+ {
3028
+ "name": "bedrockOpenAIBaseURL",
3029
+ "kind": "runtime",
3030
+ "tier": "experimental"
3031
+ },
3032
+ {
3033
+ "name": "bedrockRegion",
3034
+ "kind": "runtime",
3035
+ "tier": "experimental"
3036
+ },
3037
+ {
3038
+ "name": "bedrockRuntime",
3039
+ "kind": "runtime",
3040
+ "tier": "experimental"
3041
+ },
3042
+ {
3043
+ "name": "azureOpenAIConfigured",
3044
+ "kind": "runtime",
3045
+ "tier": "experimental"
3046
+ },
3047
+ {
3048
+ "name": "azureOpenAIEnvironment",
3049
+ "kind": "runtime",
3050
+ "tier": "experimental"
3051
+ },
3052
+ {
3053
+ "name": "azureOpenAIEndpoint",
3054
+ "kind": "runtime",
3055
+ "tier": "experimental"
3056
+ },
3057
+ {
3058
+ "name": "azureOpenAIApiVersion",
3059
+ "kind": "runtime",
3060
+ "tier": "experimental"
3061
+ },
3062
+ {
3063
+ "name": "azureOpenAIDeployments",
3064
+ "kind": "runtime",
3065
+ "tier": "experimental"
2966
3066
  }
2967
3067
  ]
2968
3068
  },
@@ -3041,6 +3141,62 @@
3041
3141
  "tier": "experimental"
3042
3142
  }
3043
3143
  ]
3144
+ },
3145
+ "./audit": {
3146
+ "source": "src/audit/index.ts",
3147
+ "environment": "node",
3148
+ "exports": [
3149
+ {
3150
+ "name": "AUDIT_PACK_SCHEMA_VERSION",
3151
+ "kind": "runtime",
3152
+ "tier": "experimental"
3153
+ },
3154
+ {
3155
+ "name": "auditPackManifestSchema",
3156
+ "kind": "runtime",
3157
+ "tier": "experimental"
3158
+ },
3159
+ {
3160
+ "name": "canonicalizeAuditPackManifest",
3161
+ "kind": "runtime",
3162
+ "tier": "experimental"
3163
+ },
3164
+ {
3165
+ "name": "exportHarnessAuditPack",
3166
+ "kind": "runtime",
3167
+ "tier": "experimental"
3168
+ },
3169
+ {
3170
+ "name": "loadAuditSigningKey",
3171
+ "kind": "runtime",
3172
+ "tier": "experimental"
3173
+ },
3174
+ {
3175
+ "name": "verifyHarnessAuditPack",
3176
+ "kind": "runtime",
3177
+ "tier": "experimental"
3178
+ },
3179
+ {
3180
+ "name": "AuditPackExportOptions",
3181
+ "kind": "type",
3182
+ "tier": "experimental"
3183
+ },
3184
+ {
3185
+ "name": "AuditPackManifest",
3186
+ "kind": "type",
3187
+ "tier": "experimental"
3188
+ },
3189
+ {
3190
+ "name": "AuditPackVerification",
3191
+ "kind": "type",
3192
+ "tier": "experimental"
3193
+ },
3194
+ {
3195
+ "name": "AuditPackVerifyOptions",
3196
+ "kind": "type",
3197
+ "tier": "experimental"
3198
+ }
3199
+ ]
3044
3200
  }
3045
3201
  }
3046
3202
  }
@@ -91,6 +91,7 @@
91
91
  "applyEditProposalInputSchema",
92
92
  "applyHarnessToolPolicy",
93
93
  "assertHarnessModelCapabilities",
94
+ "cancelHarnessReviewGroup",
94
95
  "cancelHarnessRun",
95
96
  "canonicalizeChangeEnvelope",
96
97
  "changeEnvelopeApprovalSchema",
@@ -183,6 +184,7 @@
183
184
  "importHarnessStateBackupFile",
184
185
  "injectTimeToSafeFixAttack",
185
186
  "inspectHarnessModelCapabilities",
187
+ "inspectHarnessReviewGroup",
186
188
  "inspectHarnessRun",
187
189
  "inspectHarnessState",
188
190
  "isHarnessContextDigest",
@@ -220,6 +222,7 @@
220
222
  "resolveTerminalApprovals",
221
223
  "restoreFileInputSchema",
222
224
  "runHarness",
225
+ "runHarnessDurableReviewGroup",
223
226
  "runHarnessReviewGroup",
224
227
  "sanitizeTerminalText",
225
228
  "selectHarnessModel",
@@ -399,6 +402,7 @@
399
402
  "TERMINAL_SESSION_RUN_STATUSES",
400
403
  "applyEditProposalInputSchema",
401
404
  "assertHarnessModelCapabilities",
405
+ "cancelHarnessReviewGroup",
402
406
  "changeEnvelopeApprovalSchema",
403
407
  "changeEnvelopeBaseSchema",
404
408
  "changeEnvelopeCheckSchema",
@@ -458,6 +462,7 @@
458
462
  "harnessLifecycleFingerprintInput",
459
463
  "harnessSkillLoadInputSchema",
460
464
  "inspectHarnessModelCapabilities",
465
+ "inspectHarnessReviewGroup",
461
466
  "isHarnessContextDigest",
462
467
  "loadHarnessProjectContext",
463
468
  "loadHarnessSkill",
@@ -472,6 +477,7 @@
472
477
  "resolveHarnessModelRoutes",
473
478
  "resolveTerminalApprovals",
474
479
  "restoreFileInputSchema",
480
+ "runHarnessDurableReviewGroup",
475
481
  "runHarnessReviewGroup",
476
482
  "sanitizeTerminalText",
477
483
  "selectHarnessModel",
@@ -564,6 +570,7 @@
564
570
  "HarnessContextSource",
565
571
  "HarnessCostBudget",
566
572
  "HarnessDelegationContract",
573
+ "HarnessDurableReviewGroupResult",
567
574
  "HarnessEnvironmentStatus",
568
575
  "HarnessErrorCategory",
569
576
  "HarnessErrorCode",
@@ -606,6 +613,7 @@
606
613
  "HarnessRunDiagnostics",
607
614
  "HarnessRunOptions",
608
615
  "HarnessRunQuery",
616
+ "HarnessSharedBudgetOptions",
609
617
  "HarnessSkillIndexEntry",
610
618
  "HarnessStateBackupBundle",
611
619
  "HarnessStateImportOptions",
@@ -771,6 +779,7 @@
771
779
  "HarnessContextManifestIdentity",
772
780
  "HarnessContextSource",
773
781
  "HarnessDelegationContract",
782
+ "HarnessDurableReviewGroupResult",
774
783
  "HarnessEnvironmentStatus",
775
784
  "HarnessErrorOptions",
776
785
  "HarnessExecutionIoMetrics",
@@ -796,6 +805,7 @@
796
805
  "HarnessReviewGroupResult",
797
806
  "HarnessRunDiagnostics",
798
807
  "HarnessRunQuery",
808
+ "HarnessSharedBudgetOptions",
799
809
  "HarnessSkillIndexEntry",
800
810
  "HarnessSubagentProfileDescriptor",
801
811
  "HarnessSubagentRuntime",
@@ -907,6 +917,8 @@
907
917
  "changes",
908
918
  "state",
909
919
  "memory",
920
+ "export-audit",
921
+ "verify-audit",
910
922
  "help",
911
923
  "version"
912
924
  ],
@@ -41,7 +41,7 @@
41
41
  },
42
42
  {
43
43
  "name": "DEFAULT_PROVIDER_REGISTRY",
44
- "sha256": "sha256:6aafd74c65a8f6ba4e02803f548d305d9fdaeb6dc98c4220ef05b920608f7103"
44
+ "sha256": "sha256:d0b6671d5c211abd1aae66a8565feaf69cde5adb3707e6debfd74c1f1f70e920"
45
45
  },
46
46
  {
47
47
  "name": "HARNESS_CONFIG_MIGRATABLE_SCHEMA_VERSIONS",
@@ -121,7 +121,7 @@
121
121
  },
122
122
  {
123
123
  "name": "PROVIDERS",
124
- "sha256": "sha256:dddafb1704dc5feb1101ea49ae3127c168433a3d85b8167ab63fe4a34945a0e0"
124
+ "sha256": "sha256:aa3399f44ac33bbee89a2e82744e16c03df8e657efe5a20f4e8c0ba05d567528"
125
125
  },
126
126
  {
127
127
  "name": "Workspace",
@@ -133,7 +133,7 @@
133
133
  },
134
134
  {
135
135
  "name": "cancelHarnessRun",
136
- "sha256": "sha256:209632058366e3993cc22c7bdadde31dd00a3f533dcfb4d61c8f5124de9c3aed"
136
+ "sha256": "sha256:cca1615f3b3e3bf714046aecfdff527c31b8bfece6066b1e1bd7754b300f10ee"
137
137
  },
138
138
  {
139
139
  "name": "canonicalizeChangeEnvelope",
@@ -141,11 +141,11 @@
141
141
  },
142
142
  {
143
143
  "name": "cleanupHarnessRuns",
144
- "sha256": "sha256:0d91a941627459e31098d8f7b0f5abbde1ec518705c61e8eb4cd54ac1a2da4f8"
144
+ "sha256": "sha256:16bdddde7e5156794d2d9a75fd35acef8cdad21cabf1096f489244985560c196"
145
145
  },
146
146
  {
147
147
  "name": "cliJsonDocumentSchema",
148
- "sha256": "sha256:7e7a254c88c40eb537981b8e28cc9abeb1196e75d8ee025c12551cb8cfeab580"
148
+ "sha256": "sha256:9d2bcd4c882926b02bd96527b83f29328fb7434a34640bdf5b14db941438b691"
149
149
  },
150
150
  {
151
151
  "name": "cliJsonLineDocumentSchema",
@@ -165,7 +165,7 @@
165
165
  },
166
166
  {
167
167
  "name": "createHarness",
168
- "sha256": "sha256:8b682f88b2c92a5581a68f92dbd886b5dc6c8b49b04ca8e1214bed164708b9ea"
168
+ "sha256": "sha256:e93ba19038466b7ba57cdb6db2c8f0342e659473d09d522c019d3a631c575904"
169
169
  },
170
170
  {
171
171
  "name": "createHarnessMcpTools",
@@ -177,7 +177,7 @@
177
177
  },
178
178
  {
179
179
  "name": "createHarnessStateBackup",
180
- "sha256": "sha256:f1fa095f7b2db71d64f07ff23d8823fc1ba57729d3cfdb1188969c5ab2172332"
180
+ "sha256": "sha256:66676201fd0483a4416d89acc398c3152e3cf95353c6a54becfd5699c276022e"
181
181
  },
182
182
  {
183
183
  "name": "createHttpMcpClient",
@@ -185,7 +185,7 @@
185
185
  },
186
186
  {
187
187
  "name": "createProviderModel",
188
- "sha256": "sha256:482f0414ff0315198c7b1deaabf024ffdbb64b6c06e5e7d7832652931ec540bb"
188
+ "sha256": "sha256:1ea43c2cff1af3b42be7ff830275bed2bb18aa5975b892fc7a5581eebd681db1"
189
189
  },
190
190
  {
191
191
  "name": "digestChangeEnvelopeArtifact",
@@ -193,7 +193,7 @@
193
193
  },
194
194
  {
195
195
  "name": "exportHarnessStateBackup",
196
- "sha256": "sha256:f6a581444669735dcc3998ec24b4e6f9f389d18f4680e9c956f6287738076a12"
196
+ "sha256": "sha256:4ba9b42cecf3fdb0f3812ffcfd47ef5dc372bf29525f11a64d5ebf2d672efa33"
197
197
  },
198
198
  {
199
199
  "name": "harnessErrorDocument",
@@ -201,23 +201,23 @@
201
201
  },
202
202
  {
203
203
  "name": "importHarnessStateBackup",
204
- "sha256": "sha256:1929d2a2ba7de06801dc7b6b961b74e92e7fb871ac4f01e0ba9d79d9dfb97d0f"
204
+ "sha256": "sha256:e5f9df697e842da768620595eb82b9113e7b3001899f8e1ba81b0b553ef259fe"
205
205
  },
206
206
  {
207
207
  "name": "importHarnessStateBackupFile",
208
- "sha256": "sha256:07b707e8e8495a87972a075894c4ecf59161be6ac2cdce8f9a66bf71d1b51d40"
208
+ "sha256": "sha256:d21726b17a4f2c3e932c4961ac8acf6573828aa8658cd5d3fc8e20a8f1e1291a"
209
209
  },
210
210
  {
211
211
  "name": "inspectHarnessRun",
212
- "sha256": "sha256:68e13aabfcd8974e92cebb7b06afdb5643c76d86b3473c2afeb127245329d4e5"
212
+ "sha256": "sha256:ca84ce9f4b49278965c39fe6e8b7f65be45bf9af250144718fcb1ea80f0dd75e"
213
213
  },
214
214
  {
215
215
  "name": "inspectHarnessState",
216
- "sha256": "sha256:529d9bf8c0528942793786c345030a98e88d219c34f41ea2c3e31724cca66837"
216
+ "sha256": "sha256:b13ec0d5a7cf04e453171438bd6f807a4a593954b0bf527ae2989b43c8feb3c8"
217
217
  },
218
218
  {
219
219
  "name": "listHarnessRuns",
220
- "sha256": "sha256:2085baf7b5c69e79939dd8d13d6dbccb8166d163659823d93bd2eb10d6080acc"
220
+ "sha256": "sha256:5097244a4bc2ff960c3277dfcb99b2b3b1b0a89cf25069b6fc620a0827d17477"
221
221
  },
222
222
  {
223
223
  "name": "loadHarnessMcpConfiguration",
@@ -241,11 +241,11 @@
241
241
  },
242
242
  {
243
243
  "name": "openHarnessPersistence",
244
- "sha256": "sha256:91a4d79eb2c7a4e82cb1aa6ad199492538bd2d9599bd320eb603765fb6fca934"
244
+ "sha256": "sha256:3e59925782e59f5b81199974958b291dc1954c5526f0c39568ef93e62042acd9"
245
245
  },
246
246
  {
247
247
  "name": "parseCliJsonDocument",
248
- "sha256": "sha256:8d94b80ef3160b12119ce8b083937ef6beed2a1b068f46f94b5077e36d54a931"
248
+ "sha256": "sha256:c197b3e8882201c80d19fe258724a7ba799b2c67a9797680e3527211c88aa872"
249
249
  },
250
250
  {
251
251
  "name": "parseCliJsonLineDocument",
@@ -253,15 +253,15 @@
253
253
  },
254
254
  {
255
255
  "name": "parseHarnessModelRoute",
256
- "sha256": "sha256:415ec0d691ee3d15453f2fd5118cb53d7929e2760e35d17856ce05f06e0dbc6f"
256
+ "sha256": "sha256:20dc027eab9b6733626452cb2c33ea0f44466a30fc265686d3f6771a5cbeab17"
257
257
  },
258
258
  {
259
259
  "name": "parseProvider",
260
- "sha256": "sha256:6aa7c4dc416d0f8ba0836ac50cd2e5511e0f6465e9446d8e4059b044231514e6"
260
+ "sha256": "sha256:6b5acad2fa72ff88f70d0bece4e4910fb8619cf9ba1a5aabbf9b63a966aa560e"
261
261
  },
262
262
  {
263
263
  "name": "providerAvailability",
264
- "sha256": "sha256:4f65996c8abae61922511a81ba0fb06c288d14165535770607ad2ee1ec7c9035"
264
+ "sha256": "sha256:dcdcdd826519296c50fb66890c2184b303729a1d5e079ed6122dcbedd878917a"
265
265
  },
266
266
  {
267
267
  "name": "readHarnessStateBackup",
@@ -269,11 +269,11 @@
269
269
  },
270
270
  {
271
271
  "name": "resolveHarnessConfig",
272
- "sha256": "sha256:92dd51056d4745eea346f9163f29b9748ac6e1b9f9d0e28a3191111093703804"
272
+ "sha256": "sha256:2663330f0b80e9a3c5a62d410b865f96ab5e34391b78abd22de7a0ffb8e8b088"
273
273
  },
274
274
  {
275
275
  "name": "runHarness",
276
- "sha256": "sha256:aeed30705c782cb7af884a8d51abf9d47bf4a9b7010650c842209c5f608b6019"
276
+ "sha256": "sha256:d7bb7f4e0ebd6a3b1ad88bc60ec02847a13a6839c37abb2a0602d6b4250859fb"
277
277
  },
278
278
  {
279
279
  "name": "serializeStreamEvent",
@@ -315,11 +315,11 @@
315
315
  },
316
316
  {
317
317
  "name": "CliInitDocument",
318
- "sha256": "sha256:8b3f940cebbcbbd6877a672012d8eef992a5a54991827dcbb2c43f70b8e3e961"
318
+ "sha256": "sha256:8a6e8eef3234f63cb524578141a8aa99fe018e128c518b572d97bc53adaf0c86"
319
319
  },
320
320
  {
321
321
  "name": "CliJsonDocument",
322
- "sha256": "sha256:613a0da81316ffd657d18427c28804a8f7dc51017aec2e6893d7b2d64a5ff96e"
322
+ "sha256": "sha256:69e15602e8b6e7ca87ebc197f49286deda2bc3f38fcb1e4269a3f748098400e4"
323
323
  },
324
324
  {
325
325
  "name": "CliJsonLineDocument",
@@ -375,7 +375,7 @@
375
375
  },
376
376
  {
377
377
  "name": "CreateHarnessOptions",
378
- "sha256": "sha256:bf02d5a2b5cc10dfbc59a2dcceebe91d2a56add94f9912e8d73c61da4bb64a12"
378
+ "sha256": "sha256:e9408054cff01bb19c5a85369278a20739d87ebec0297db3aed2dec876c6e8f3"
379
379
  },
380
380
  {
381
381
  "name": "HarnessBudget",
@@ -383,7 +383,7 @@
383
383
  },
384
384
  {
385
385
  "name": "HarnessConfig",
386
- "sha256": "sha256:afd78cedcbe664b7decf1d11dd70a5bb7ad997ea090c9afaa894398f408cbd3d"
386
+ "sha256": "sha256:d4e6ff0b4218f0d5ce2f410b29bf68b04bf1576c9e41ebf19368c6ef1dad6ffb"
387
387
  },
388
388
  {
389
389
  "name": "HarnessConfigInput",
@@ -439,11 +439,11 @@
439
439
  },
440
440
  {
441
441
  "name": "HarnessProvider",
442
- "sha256": "sha256:d1b6ebe920a62c1f90c69ebab3bf4e9e7a5530c4db139e809089e315b700ba00"
442
+ "sha256": "sha256:74a968ae03fbef794eda2e4ee8664febf17f4b162bb9388e18862027abdac1a2"
443
443
  },
444
444
  {
445
445
  "name": "HarnessProviderRegistry",
446
- "sha256": "sha256:28b20505d035046e92e4984f4ee48f7132893433a9aa85c2607dd211d0ebc9f4"
446
+ "sha256": "sha256:2dff8686a8375f6f30603037e8ae84988f04f13b326a35951b093b10da16bcd1"
447
447
  },
448
448
  {
449
449
  "name": "HarnessRequiredCapability",
@@ -451,7 +451,7 @@
451
451
  },
452
452
  {
453
453
  "name": "HarnessRunOptions",
454
- "sha256": "sha256:3a8ce5bc9e279e4f9e6c5c324064ddba86c28d98b6af23518101e3ff7eb41df4"
454
+ "sha256": "sha256:6c66fae48572e03ae2430450e3a639e1144dae81db80b941d217302a883b3cef"
455
455
  },
456
456
  {
457
457
  "name": "HarnessStateBackupBundle",
@@ -471,15 +471,15 @@
471
471
  },
472
472
  {
473
473
  "name": "ProviderAvailability",
474
- "sha256": "sha256:f14e8ebf9e4c9d8aaab66e17bba85697ac3cd099490753e497bbb585f14ce67c"
474
+ "sha256": "sha256:5eb50e58e40a5c40bc5ca60e04c1ab166c38f67d9c5172ce522381a2cc925c21"
475
475
  },
476
476
  {
477
477
  "name": "ProviderDescriptor",
478
- "sha256": "sha256:d8c8bfc6a352930c3360c9d280d102300a05ec2da408e2d9e1c6f9996871c7a3"
478
+ "sha256": "sha256:797f645f9cc7ba54b51e50e7d978425a6eedba8a79b55c887e215036825766f3"
479
479
  },
480
480
  {
481
481
  "name": "ProviderRegistration",
482
- "sha256": "sha256:1eaf69a2808293d4d4f59e0e172ff2145cd315688bd5236d31aa6dc3f4e2886e"
482
+ "sha256": "sha256:88305204c86049f964be350001b5bb1780fe0fff44869cf1bc10e22a511addbc"
483
483
  },
484
484
  {
485
485
  "name": "SessionRunStatus",
@@ -487,8 +487,8 @@
487
487
  },
488
488
  {
489
489
  "name": "ZhivexHarness",
490
- "sha256": "sha256:4275565d750dbfd7d6dcaa7182f05d74136db32b057744446de24d6b69fe2061"
490
+ "sha256": "sha256:c4af70e955997b69b0f48f52f52efca6f2374e13f9bc536760078a4ee08e984e"
491
491
  }
492
492
  ],
493
- "digest": "sha256:e2ef392ba67e8a07f5d511c0274f8b4171888a1469205f541350fafb0b74f8cb"
493
+ "digest": "sha256:044531ba474a2576fadb3e9a091094daa81e9c8495b697d7ff6c69205b37d5e4"
494
494
  }
package/dist/acp-cli.js CHANGED
@@ -5,27 +5,20 @@ import {
5
5
  parseHarnessModelRoute,
6
6
  resolveHarnessModelRoutes,
7
7
  validateCliCommandOptions
8
- } from "./index-61gthdz6.js";
8
+ } from "./index-8sm2a1wa.js";
9
9
  import {
10
10
  serveAcpStdio
11
11
  } from "./index-3ah1f369.js";
12
12
  import {
13
13
  createHarnessClientAdapter
14
- } from "./index-937cb7y8.js";
15
- import"./index-6dft2vev.js";
14
+ } from "./index-02pqtbbg.js";
15
+ import"./index-6599mpmy.js";
16
16
  import {
17
17
  createHarness
18
- } from "./index-pp474137.js";
19
- import {
20
- usagePricingSchema
21
- } from "./index-s2k2edts.js";
22
- import"./index-pdmevfxv.js";
23
- import {
24
- FileChangedWhileReadingError,
25
- FileSizeLimitError,
26
- UnsafeFileTypeError,
27
- readRegularFileNoFollow
28
- } from "./index-m34q25jj.js";
18
+ } from "./index-0zs2dz26.js";
19
+ import"./index-f6mqa5gk.js";
20
+ import"./index-dtb2c6ds.js";
21
+ import"./index-d9zkmhz3.js";
29
22
  import {
30
23
  HARNESS_REQUIRED_CAPABILITIES,
31
24
  HARNESS_SUBAGENT_PROFILES,
@@ -35,10 +28,21 @@ import {
35
28
  providerDescriptor,
36
29
  reasoningEffortSchema,
37
30
  resolveHarnessConfig
38
- } from "./index-8zjmnyw5.js";
39
- import"./index-m49jx72n.js";
40
- import"./index-xqxeypt5.js";
41
- import"./index-nmjdwd4p.js";
31
+ } from "./index-1265j7t2.js";
32
+ import"./index-c39197wq.js";
33
+ import"./index-mzydbzp8.js";
34
+ import"./index-wm9xeq1n.js";
35
+ import {
36
+ usagePricingSchema
37
+ } from "./index-zxg4ve4j.js";
38
+ import"./index-4fx5f3k5.js";
39
+ import {
40
+ FileChangedWhileReadingError,
41
+ FileSizeLimitError,
42
+ UnsafeFileTypeError,
43
+ readRegularFileNoFollow
44
+ } from "./index-xdbkcccf.js";
45
+ import"./index-4gt045j0.js";
42
46
  import {
43
47
  HarnessConfigError,
44
48
  HarnessError
@@ -99,6 +103,8 @@ var usage = {
99
103
  "state:status": "zhx state status",
100
104
  "state:export": "zhx state export <backup.json>",
101
105
  "state:import": "zhx state import <backup.json> [--apply]",
106
+ "export-audit": "zhx export-audit <task-id> --out <directory> [--session <sessionId>]",
107
+ "verify-audit": "zhx verify-audit --out <directory>",
102
108
  version: "zhx --version"
103
109
  };
104
110
  function resolveHelpTopic(parts, explicit) {
@@ -231,7 +237,7 @@ var applyCliProfile = async (options, context = {}) => {
231
237
  };
232
238
 
233
239
  // src/cli/arguments.ts
234
- var CLI_COMMANDS = ["init", "run", "review", "chat", "providers", "doctor", "policy", "resume", "runs", "sessions", "checkpoints", "changes", "state", "memory", "help", "version"];
240
+ var CLI_COMMANDS = ["init", "run", "review", "chat", "providers", "doctor", "policy", "resume", "runs", "sessions", "checkpoints", "changes", "state", "memory", "export-audit", "verify-audit", "help", "version"];
235
241
  var CLI_RUNS_COMMANDS = ["list", "inspect", "cancel", "cleanup", "export", "report"];
236
242
  var CLI_SESSIONS_COMMANDS = ["list", "inspect", "rename", "fork", "archive"];
237
243
  var CLI_CHANGES_COMMANDS = ["create", "verify"];
@@ -761,6 +767,14 @@ var parseCliArgs = (argv) => {
761
767
  case "-v":
762
768
  options.command = "version";
763
769
  break;
770
+ case "--out":
771
+ options.auditOut = optionValue(argv, index, argument);
772
+ index += 1;
773
+ break;
774
+ case "--signing-key-file":
775
+ options.signingKeyFile = optionValue(argv, index, argument);
776
+ index += 1;
777
+ break;
764
778
  default:
765
779
  if (argument.startsWith("-")) {
766
780
  throw new CliUsageError(`Unknown option: ${argument}`);
@@ -889,6 +903,23 @@ var parseCliArgs = (argv) => {
889
903
  if (positional.length > 0) {
890
904
  throw new CliUsageError(`state ${stateCommand} received unexpected positional arguments.`);
891
905
  }
906
+ } else if (options.command === "export-audit" || options.command === "verify-audit") {
907
+ const allowed = new Set(["--workspace", "--state-dir", "--store", "--tenant", "--user", "--namespace", "--json", ...options.command === "export-audit" ? ["--session"] : []]);
908
+ for (const name of optionCounts.keys()) {
909
+ if (!allowed.has(name))
910
+ throw new CliUsageError(`${name} is not supported by ${options.command}.`);
911
+ }
912
+ if (!options.auditOut)
913
+ throw new CliUsageError(`${options.command} requires --out <path>.`);
914
+ if (options.command === "export-audit") {
915
+ const taskId = positional.shift();
916
+ if (!taskId)
917
+ throw new CliUsageError("export-audit requires a task id.");
918
+ options.runId = taskId;
919
+ }
920
+ if (positional.length > 0)
921
+ throw new CliUsageError(`${options.command} received unexpected positional arguments.`);
922
+ return options;
892
923
  } else if (options.command === "run" || options.command === "review") {
893
924
  if (positional.includes("-") && positional.length !== 1) {
894
925
  throw new CliUsageError("Use - alone to read the task from stdin, or provide a task argument.");
@@ -900,6 +931,9 @@ var parseCliArgs = (argv) => {
900
931
  } else if (positional.length > 0) {
901
932
  throw new CliUsageError(`${options.command} does not accept positional arguments.`);
902
933
  }
934
+ if (options.auditOut || options.signingKeyFile) {
935
+ throw new CliUsageError("--out and --signing-key-file are supported only by export-audit and verify-audit.");
936
+ }
903
937
  if (options.implicitCommand && options.command === "run" && !options.prompt && (options.continueSession || options.sessionId) && !options.json && !options.jsonl)
904
938
  options.command = "chat";
905
939
  if (options.serviceFile) {
@@ -927,7 +961,7 @@ var parseCliArgs = (argv) => {
927
961
 
928
962
  // src/cli/cli-credentials.ts
929
963
  async function credentialModel(config, env, modelFactory) {
930
- const { createProviderModel: createProviderModel2 } = await import("./config-qt69hkqj.js");
964
+ const { createProviderModel: createProviderModel2 } = await import("./config-r9fdhce6.js");
931
965
  const { wrapLanguageModel } = await import("@zhivex-ai/core");
932
966
  const secrets = providerDescriptor(config.provider).credentialNames.map((name) => env[name]).filter((value) => !!value);
933
967
  const safeError = (error) => {
@@ -0,0 +1,3 @@
1
+ /** Experimental operator audit packs. Absent from the stable root entrypoint. */
2
+ export { AUDIT_PACK_SCHEMA_VERSION, auditPackManifestSchema, canonicalizeAuditPackManifest, exportHarnessAuditPack, loadAuditSigningKey, verifyHarnessAuditPack } from "./pack.js";
3
+ export type { AuditPackExportOptions, AuditPackManifest, AuditPackVerification, AuditPackVerifyOptions } from "./pack.js";