@zhivex-ai/harness 1.6.2 → 1.6.3
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/CHANGELOG.md +7 -0
- package/README.md +3 -1
- package/SUPPORT.md +1 -1
- package/dist/acp-cli.js +4 -4
- package/dist/audit/index.js +2 -2
- package/dist/{audit-pack-fckpqfsb.js → audit-pack-s9n693by.js} +3 -3
- package/dist/{cli-entry-z1pbjrg4.js → cli-entry-1epvek01.js} +2 -2
- package/dist/{cli-entry-10th5awp.js → cli-entry-mbcq96nx.js} +7 -7
- package/dist/{cli-entry-6amx4mcc.js → cli-entry-nyzyvf24.js} +1 -1
- package/dist/{cli-entry-4g2ewcnw.js → cli-entry-rsx0wpvs.js} +2 -2
- package/dist/{cli-84en174d.js → cli-yxvq8qf1.js} +6 -6
- package/dist/cli.js +2 -2
- package/dist/compat/code-support.js +3 -3
- package/dist/engine/acp.js +5 -5
- package/dist/engine/client.js +4 -4
- package/dist/engine/index.js +6 -6
- package/dist/engine/mcp-stdio-v1.js +3 -3
- package/dist/engine/service.js +5 -5
- package/dist/hostile-repository-demo.js +7 -7
- package/dist/{index-74f9yhfh.js → index-2yyfg69h.js} +1 -1
- package/dist/{index-rz7wmp71.js → index-3wwfn5n6.js} +7 -7
- package/dist/{index-zrz4rs7p.js → index-5nmm0642.js} +1 -1
- package/dist/{index-2r4f0p4n.js → index-hhrnrqfc.js} +1 -1
- package/dist/{index-paf7z8kn.js → index-j466sekf.js} +1 -1
- package/dist/{index-1pn0ecs4.js → index-nxmk6re7.js} +1 -1
- package/dist/{index-pf73y4gt.js → index-vn91b9z1.js} +2 -2
- package/dist/index.js +5 -5
- package/dist/service-cli.js +5 -5
- package/dist/{service-client-cli-pp5z4dmf.js → service-client-cli-xbj7j5kj.js} +3 -3
- package/dist/verify-historical-migrations.js +7 -7
- package/dist/zhx.js +2 -2
- package/docs/AZURE_OPENAI.md +1 -1
- package/docs/BEDROCK.md +1 -1
- package/docs/CODE_RELEASE.md +19 -6
- package/docs/DURABLE_OPERATIONS.md +1 -1
- package/docs/ENGINE_API.md +1 -1
- package/docs/EXTENSIBILITY.md +1 -1
- package/docs/FIRST_USE.md +6 -6
- package/docs/MINIMUM_TASK_AUTHORITY.md +1 -1
- package/docs/PROJECT_MEMORY.md +1 -1
- package/docs/VERTEX.md +1 -1
- package/docs/WEB_LIMITS.md +1 -1
- package/docs/adr/0002-isolated-mcp-stdio.md +1 -1
- package/evaluations/representative-assembly-matrix.json +10 -1
- package/examples/README.md +3 -3
- package/package.json +7 -7
package/CHANGELOG.md
CHANGED
|
@@ -6,6 +6,13 @@ The project follows Semantic Versioning. During `0.x`, minor releases may change
|
|
|
6
6
|
|
|
7
7
|
## Unreleased
|
|
8
8
|
|
|
9
|
+
## 1.6.3 - 2026-11-10
|
|
10
|
+
|
|
11
|
+
- Prepare a maintenance patch for npm `latest`, paired with Code 0.4.2 and the private Desktop engine binding. Existing public APIs, storage formats, model defaults and provider tiers are unchanged. Publication and release-bound live certification are pending.
|
|
12
|
+
- Include the keyring 2.1.2 update and dependency security maintenance for the private Web/Desktop clients.
|
|
13
|
+
- Update the development dependency `@agentclientprotocol/sdk` from 1.8.0 to 2.1.0. SDK 2.1 removes `ClientSideConnection`; the Docker interoperability client now uses `client().connect(...)` and the same ACP v1 methods. `@modelcontextprotocol/server` stays at 2.3.1 because that peer is optional and this client does not import it. The Harness ACP server is unchanged.
|
|
14
|
+
- Pin `@zhivex-ai/core` 1.37.0, including the root override, the Code and web package pins, and a web override so the published Harness dependency uses that same runtime, and `@zhivex-ai/qwen` 0.18.1. Qwen 0.18.1 depends on Core `^1.37.0`. Harness and CLI defaults are unchanged. The Qwen adapter rejects non-string portable-decision instructions and adds PixVerse V6 request shaping; Harness does not expose that video surface.
|
|
15
|
+
|
|
9
16
|
## 1.6.2 - 2026-10-24
|
|
10
17
|
|
|
11
18
|
- Allow one continuity retry per provider in the release gate. Live certification of `v1.6.0` and `v1.6.1` (twice) failed only the multi-process continuity gate, each time on a different provider. A provider whose continuity run fails now gets one fresh retry of all phases and passes only if the retry passes. Every selected provider stays mandatory, and no other gate retries. The continuity evidence records which provider retried, the first attempt's sanitized cause, and the retry outcome. Runtime and CLI behavior and defaults are unchanged (#250).
|
package/README.md
CHANGED
|
@@ -159,6 +159,8 @@ Contracts, stability tiers, and the experimental ACP and MCP entry points are in
|
|
|
159
159
|
|
|
160
160
|
## Releases
|
|
161
161
|
|
|
162
|
-
Version `1.
|
|
162
|
+
Version `1.6.3` is the prepared source candidate, paired with Code `0.4.2`; publication and release-bound live certification are pending.
|
|
163
|
+
|
|
164
|
+
Version `1.6.2` is the current public npm release. The Code package on npm `latest` is `0.4.1`, pinned exactly to Harness `1.6.2`. The quick start above follows the published `latest` tag. npm `next` is Harness `1.4.0-rc.8` and Code `0.3.0-rc.8`. Confirm dist-tags on the [Code versions](https://www.npmjs.com/package/@zhivex-ai/code?activeTab=versions) and [Harness versions](https://www.npmjs.com/package/@zhivex-ai/harness?activeTab=versions) pages before you install a prerelease.
|
|
163
165
|
|
|
164
166
|
Release channels, publication, and certification records are in the [release procedure](https://github.com/Zhivex/zhivex-harness/blob/main/docs/RELEASE.md). Releases are verified with npm provenance. Source in this checkout can be newer than the public package. See the [changelog](CHANGELOG.md) and the [repository release status](https://raw.githubusercontent.com/Zhivex/zhivex-harness/main/release-status.json).
|
package/SUPPORT.md
CHANGED
|
@@ -13,7 +13,7 @@ The 1.1 support scope is tracked in the [machine-readable support matrix](./docs
|
|
|
13
13
|
- the provider/model combinations marked certified in the package documentation; and
|
|
14
14
|
- HTTPS or explicitly allowed loopback-HTTP MCP endpoints using the documented bounded JSON-RPC subset.
|
|
15
15
|
|
|
16
|
-
Only the most recent published stable minor receives routine fixes. The exact `v1.3.0` tag passed the protected artifact, six-provider live and 42-case representative release jobs. Harness 1.5.0 and Code 0.4.0 are the published stable packages. Code
|
|
16
|
+
Only the most recent published stable minor receives routine fixes. The exact `v1.3.0` tag passed the protected artifact, six-provider live and 42-case representative release jobs. Harness 1.5.0 and Code 0.4.0 are the published stable packages. Code 0.4.1, pinned exactly to Harness 1.6.2, is published on `latest`. Gemini, Anthropic and Vertex remain provisional despite the release-bound live gates; the representative repository matrix covers only Meta, Qwen and OpenAI. Live provider evidence is account-, model-, endpoint-, artifact-, and date-dependent; see [docs/LIVE_CERTIFICATION.md](https://github.com/Zhivex/zhivex-harness/blob/main/docs/LIVE_CERTIFICATION.md).
|
|
17
17
|
|
|
18
18
|
## Installation diagnostics
|
|
19
19
|
|
package/dist/acp-cli.js
CHANGED
|
@@ -11,13 +11,13 @@ import {
|
|
|
11
11
|
} from "./index-3ah1f369.js";
|
|
12
12
|
import {
|
|
13
13
|
createHarnessClientAdapter
|
|
14
|
-
} from "./index-
|
|
14
|
+
} from "./index-j466sekf.js";
|
|
15
15
|
import"./index-4mn6m3bq.js";
|
|
16
16
|
import {
|
|
17
17
|
createHarness
|
|
18
|
-
} from "./index-
|
|
18
|
+
} from "./index-vn91b9z1.js";
|
|
19
19
|
import"./index-amjttjaj.js";
|
|
20
|
-
import"./index-
|
|
20
|
+
import"./index-hhrnrqfc.js";
|
|
21
21
|
import"./index-w0m1nckc.js";
|
|
22
22
|
import {
|
|
23
23
|
HARNESS_REQUIRED_CAPABILITIES,
|
|
@@ -35,7 +35,7 @@ import"./index-bt2p8x7r.js";
|
|
|
35
35
|
import {
|
|
36
36
|
usagePricingSchema
|
|
37
37
|
} from "./index-fqqz1yt8.js";
|
|
38
|
-
import"./index-
|
|
38
|
+
import"./index-3wwfn5n6.js";
|
|
39
39
|
import {
|
|
40
40
|
FileChangedWhileReadingError,
|
|
41
41
|
FileSizeLimitError,
|
package/dist/audit/index.js
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import {
|
|
2
2
|
exportHarnessGovernanceReport,
|
|
3
3
|
harnessGovernanceReportSchema
|
|
4
|
-
} from "../index-
|
|
4
|
+
} from "../index-5nmm0642.js";
|
|
5
5
|
import"../index-yx52bt4a.js";
|
|
6
6
|
import {
|
|
7
7
|
APPROVAL_HISTORY_KEY,
|
|
@@ -17,7 +17,7 @@ import {
|
|
|
17
17
|
} from "../index-fqqz1yt8.js";
|
|
18
18
|
import {
|
|
19
19
|
HARNESS_VERSION
|
|
20
|
-
} from "../index-
|
|
20
|
+
} from "../index-3wwfn5n6.js";
|
|
21
21
|
import {
|
|
22
22
|
readRegularFileNoFollow
|
|
23
23
|
} from "../index-6dxrbnxm.js";
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import {
|
|
2
2
|
exportHarnessGovernanceReport,
|
|
3
3
|
harnessGovernanceReportSchema
|
|
4
|
-
} from "./cli-entry-
|
|
4
|
+
} from "./cli-entry-1epvek01.js";
|
|
5
5
|
import {
|
|
6
6
|
APPROVAL_HISTORY_KEY,
|
|
7
7
|
CliUsageError,
|
|
@@ -17,10 +17,10 @@ import {
|
|
|
17
17
|
openHarnessPersistence,
|
|
18
18
|
readRegularFileNoFollow,
|
|
19
19
|
validateStateDirectory
|
|
20
|
-
} from "./cli-entry-
|
|
20
|
+
} from "./cli-entry-nyzyvf24.js";
|
|
21
21
|
import {
|
|
22
22
|
HARNESS_VERSION
|
|
23
|
-
} from "./cli-entry-
|
|
23
|
+
} from "./cli-entry-mbcq96nx.js";
|
|
24
24
|
import {
|
|
25
25
|
resolveHarnessConfig
|
|
26
26
|
} from "./cli-entry-hdtfef27.js";
|
|
@@ -10,10 +10,10 @@ import {
|
|
|
10
10
|
readTaskAcceptanceLedger,
|
|
11
11
|
taskCheckReceiptSchema,
|
|
12
12
|
verifyChangeEnvelope
|
|
13
|
-
} from "./cli-entry-
|
|
13
|
+
} from "./cli-entry-nyzyvf24.js";
|
|
14
14
|
import {
|
|
15
15
|
HARNESS_VERSION
|
|
16
|
-
} from "./cli-entry-
|
|
16
|
+
} from "./cli-entry-mbcq96nx.js";
|
|
17
17
|
|
|
18
18
|
// src/persistence/governance-report.ts
|
|
19
19
|
import { createHash as createHash2 } from "node:crypto";
|
|
@@ -444,7 +444,7 @@ Use zhx help all for the full reference and exit codes.`;
|
|
|
444
444
|
// package.json
|
|
445
445
|
var package_default = {
|
|
446
446
|
name: "@zhivex-ai/harness",
|
|
447
|
-
version: "1.6.
|
|
447
|
+
version: "1.6.3",
|
|
448
448
|
description: "Governed, provider-portable runtime for coding agents with durable approvals and isolated repository execution.",
|
|
449
449
|
type: "module",
|
|
450
450
|
license: "MIT",
|
|
@@ -665,22 +665,22 @@ var package_default = {
|
|
|
665
665
|
"@zhivex-ai/anthropic": "0.15.0",
|
|
666
666
|
"@zhivex-ai/azure-openai": "0.8.0",
|
|
667
667
|
"@zhivex-ai/bedrock": "2.1.0",
|
|
668
|
-
"@zhivex-ai/core": "1.
|
|
668
|
+
"@zhivex-ai/core": "1.37.0",
|
|
669
669
|
"@zhivex-ai/gemini": "0.14.0",
|
|
670
670
|
"@zhivex-ai/meta": "0.3.0",
|
|
671
671
|
"@zhivex-ai/openai": "0.17.0",
|
|
672
|
-
"@zhivex-ai/qwen": "0.18.
|
|
672
|
+
"@zhivex-ai/qwen": "0.18.1",
|
|
673
673
|
"@zhivex-ai/vertex": "1.3.0",
|
|
674
674
|
"google-auth-library": "11.3.1",
|
|
675
675
|
zod: "4.6.7"
|
|
676
676
|
},
|
|
677
677
|
overrides: {
|
|
678
|
-
"@zhivex-ai/core": "1.
|
|
678
|
+
"@zhivex-ai/core": "1.37.0"
|
|
679
679
|
},
|
|
680
680
|
devDependencies: {
|
|
681
|
-
"@agentclientprotocol/sdk": "1.
|
|
681
|
+
"@agentclientprotocol/sdk": "2.1.0",
|
|
682
682
|
"@modelcontextprotocol/server": "2.3.1",
|
|
683
|
-
"@types/bun": "1.4.
|
|
683
|
+
"@types/bun": "1.4.4",
|
|
684
684
|
"@types/node": "^26.6.5",
|
|
685
685
|
typescript: "7.0.2",
|
|
686
686
|
"typescript-compiler-api": "npm:typescript@6.0.3"
|
|
@@ -691,7 +691,7 @@ var package_default = {
|
|
|
691
691
|
},
|
|
692
692
|
packageManager: "bun@1.4.0",
|
|
693
693
|
optionalDependencies: {
|
|
694
|
-
"@napi-rs/keyring": "2.1.
|
|
694
|
+
"@napi-rs/keyring": "2.1.2"
|
|
695
695
|
}
|
|
696
696
|
};
|
|
697
697
|
|
|
@@ -97,10 +97,10 @@ import {
|
|
|
97
97
|
withWorkspaceMutation,
|
|
98
98
|
workBudgetReached,
|
|
99
99
|
workspaceFilePathSchema
|
|
100
|
-
} from "./cli-entry-
|
|
100
|
+
} from "./cli-entry-nyzyvf24.js";
|
|
101
101
|
import {
|
|
102
102
|
HARNESS_VERSION
|
|
103
|
-
} from "./cli-entry-
|
|
103
|
+
} from "./cli-entry-mbcq96nx.js";
|
|
104
104
|
import {
|
|
105
105
|
DEFAULT_PROVIDER_REGISTRY,
|
|
106
106
|
HARNESS_CONFIG_SCHEMA_VERSION,
|
|
@@ -61,11 +61,11 @@ import {
|
|
|
61
61
|
withTemporaryHarnessProfiles,
|
|
62
62
|
workspaceCheckpointSchema,
|
|
63
63
|
workspaceRestoreOperationSchema
|
|
64
|
-
} from "./cli-entry-
|
|
64
|
+
} from "./cli-entry-rsx0wpvs.js";
|
|
65
65
|
import {
|
|
66
66
|
exportHarnessGovernanceReport,
|
|
67
67
|
renderHarnessGovernanceMarkdown
|
|
68
|
-
} from "./cli-entry-
|
|
68
|
+
} from "./cli-entry-1epvek01.js";
|
|
69
69
|
import {
|
|
70
70
|
BUDGET_LEDGER_NAMESPACE,
|
|
71
71
|
BUDGET_OWNER_NAMESPACE_KEY,
|
|
@@ -125,14 +125,14 @@ import {
|
|
|
125
125
|
updateCliProfile,
|
|
126
126
|
validateStateDirectory,
|
|
127
127
|
verifyChangeEnvelope
|
|
128
|
-
} from "./cli-entry-
|
|
128
|
+
} from "./cli-entry-nyzyvf24.js";
|
|
129
129
|
import {
|
|
130
130
|
BUN_ENGINE_RANGE,
|
|
131
131
|
HARNESS_VERSION,
|
|
132
132
|
NODE_ENGINE_RANGE,
|
|
133
133
|
formatCliHelp,
|
|
134
134
|
shortCliHelp
|
|
135
|
-
} from "./cli-entry-
|
|
135
|
+
} from "./cli-entry-mbcq96nx.js";
|
|
136
136
|
import {
|
|
137
137
|
DEFAULT_PROVIDER_REGISTRY,
|
|
138
138
|
HARNESS_SUBAGENT_PROFILES,
|
|
@@ -4091,7 +4091,7 @@ var main = async (argv = process.argv.slice(2)) => {
|
|
|
4091
4091
|
parsedOptions = { ...parsedOptions, prompt: await readStdinTask() };
|
|
4092
4092
|
}
|
|
4093
4093
|
if (parsedOptions.serviceFile) {
|
|
4094
|
-
const { runServiceCli } = await import("./service-client-cli-
|
|
4094
|
+
const { runServiceCli } = await import("./service-client-cli-xbj7j5kj.js");
|
|
4095
4095
|
await runServiceCli(parsedOptions, annotateCliStreamError);
|
|
4096
4096
|
return;
|
|
4097
4097
|
}
|
|
@@ -4156,7 +4156,7 @@ var main = async (argv = process.argv.slice(2)) => {
|
|
|
4156
4156
|
return;
|
|
4157
4157
|
case "export-audit":
|
|
4158
4158
|
case "verify-audit": {
|
|
4159
|
-
const { auditPackCli } = await import("./audit-pack-
|
|
4159
|
+
const { auditPackCli } = await import("./audit-pack-s9n693by.js");
|
|
4160
4160
|
await auditPackCli(options);
|
|
4161
4161
|
return;
|
|
4162
4162
|
}
|
package/dist/cli.js
CHANGED
|
@@ -3,7 +3,7 @@ import {
|
|
|
3
3
|
HARNESS_VERSION,
|
|
4
4
|
NODE_ENGINE_RANGE,
|
|
5
5
|
shortCliHelp
|
|
6
|
-
} from "./cli-entry-
|
|
6
|
+
} from "./cli-entry-mbcq96nx.js";
|
|
7
7
|
import {
|
|
8
8
|
__require
|
|
9
9
|
} from "./cli-entry-1bx83sw4.js";
|
|
@@ -41,6 +41,6 @@ if (argv.length === 1 && ["--version", "-v", "version"].includes(argv[0])) {
|
|
|
41
41
|
process.stdout.write(`${shortCliHelp(HARNESS_VERSION)}
|
|
42
42
|
`);
|
|
43
43
|
} else {
|
|
44
|
-
const { runCli } = await import("./cli-
|
|
44
|
+
const { runCli } = await import("./cli-yxvq8qf1.js");
|
|
45
45
|
await runCli(argv);
|
|
46
46
|
}
|
|
@@ -13,13 +13,13 @@ import {
|
|
|
13
13
|
readHarnessTaskDraft,
|
|
14
14
|
requestHarnessTaskCancellation,
|
|
15
15
|
runHarnessTask
|
|
16
|
-
} from "../index-
|
|
16
|
+
} from "../index-vn91b9z1.js";
|
|
17
17
|
import {
|
|
18
18
|
TASK_SOURCE_KEY,
|
|
19
19
|
harnessToolExecution,
|
|
20
20
|
taskSources
|
|
21
21
|
} from "../index-amjttjaj.js";
|
|
22
|
-
import"../index-
|
|
22
|
+
import"../index-hhrnrqfc.js";
|
|
23
23
|
import {
|
|
24
24
|
resolvePackageCheckCommand,
|
|
25
25
|
resolvePackageManager,
|
|
@@ -47,7 +47,7 @@ import {
|
|
|
47
47
|
inspectUsageLedger,
|
|
48
48
|
usagePricingSchema
|
|
49
49
|
} from "../index-fqqz1yt8.js";
|
|
50
|
-
import"../index-
|
|
50
|
+
import"../index-3wwfn5n6.js";
|
|
51
51
|
import {
|
|
52
52
|
FileChangedWhileReadingError,
|
|
53
53
|
FileSizeLimitError,
|
package/dist/engine/acp.js
CHANGED
|
@@ -2,7 +2,7 @@ import {
|
|
|
2
2
|
discardMcpWorkspaceSnapshot,
|
|
3
3
|
launchDockerMcpGroup,
|
|
4
4
|
prepareMcpWorkspaceSnapshot
|
|
5
|
-
} from "../index-
|
|
5
|
+
} from "../index-nxmk6re7.js";
|
|
6
6
|
import {
|
|
7
7
|
createAcpConnection,
|
|
8
8
|
issueAcpMcpSessionProvider,
|
|
@@ -10,20 +10,20 @@ import {
|
|
|
10
10
|
} from "../index-3ah1f369.js";
|
|
11
11
|
import {
|
|
12
12
|
createHarnessClientAdapter
|
|
13
|
-
} from "../index-
|
|
13
|
+
} from "../index-j466sekf.js";
|
|
14
14
|
import"../index-4mn6m3bq.js";
|
|
15
15
|
import {
|
|
16
16
|
createHarness
|
|
17
|
-
} from "../index-
|
|
17
|
+
} from "../index-vn91b9z1.js";
|
|
18
18
|
import"../index-amjttjaj.js";
|
|
19
|
-
import"../index-
|
|
19
|
+
import"../index-hhrnrqfc.js";
|
|
20
20
|
import"../index-w0m1nckc.js";
|
|
21
21
|
import"../index-1265j7t2.js";
|
|
22
22
|
import"../index-c39197wq.js";
|
|
23
23
|
import"../index-mzydbzp8.js";
|
|
24
24
|
import"../index-bt2p8x7r.js";
|
|
25
25
|
import"../index-fqqz1yt8.js";
|
|
26
|
-
import"../index-
|
|
26
|
+
import"../index-3wwfn5n6.js";
|
|
27
27
|
import"../index-6dxrbnxm.js";
|
|
28
28
|
import"../index-4gt045j0.js";
|
|
29
29
|
import"../index-bpc596v3.js";
|
package/dist/engine/client.js
CHANGED
|
@@ -2,18 +2,18 @@ import {
|
|
|
2
2
|
createHarnessClientAdapter,
|
|
3
3
|
runResultDocument,
|
|
4
4
|
terminalContinuationMessages
|
|
5
|
-
} from "../index-
|
|
5
|
+
} from "../index-j466sekf.js";
|
|
6
6
|
import"../index-4mn6m3bq.js";
|
|
7
|
-
import"../index-
|
|
7
|
+
import"../index-vn91b9z1.js";
|
|
8
8
|
import"../index-amjttjaj.js";
|
|
9
|
-
import"../index-
|
|
9
|
+
import"../index-hhrnrqfc.js";
|
|
10
10
|
import"../index-w0m1nckc.js";
|
|
11
11
|
import"../index-1265j7t2.js";
|
|
12
12
|
import"../index-c39197wq.js";
|
|
13
13
|
import"../index-mzydbzp8.js";
|
|
14
14
|
import"../index-bt2p8x7r.js";
|
|
15
15
|
import"../index-fqqz1yt8.js";
|
|
16
|
-
import"../index-
|
|
16
|
+
import"../index-3wwfn5n6.js";
|
|
17
17
|
import"../index-6dxrbnxm.js";
|
|
18
18
|
import {
|
|
19
19
|
HARNESS_CLIENT_PROTOCOL_VERSION,
|
package/dist/engine/index.js
CHANGED
|
@@ -73,7 +73,7 @@ import {
|
|
|
73
73
|
exportHarnessGovernanceReport,
|
|
74
74
|
harnessGovernanceReportSchema,
|
|
75
75
|
renderHarnessGovernanceMarkdown
|
|
76
|
-
} from "../index-
|
|
76
|
+
} from "../index-5nmm0642.js";
|
|
77
77
|
import {
|
|
78
78
|
CHANGE_ENVELOPE_DIGEST_ALGORITHM,
|
|
79
79
|
CHANGE_ENVELOPE_SCHEMA_VERSION,
|
|
@@ -105,10 +105,10 @@ import {
|
|
|
105
105
|
recoverHarnessLocalService,
|
|
106
106
|
requestHarnessLocalService,
|
|
107
107
|
startHarnessLocalService
|
|
108
|
-
} from "../index-
|
|
108
|
+
} from "../index-2yyfg69h.js";
|
|
109
109
|
import {
|
|
110
110
|
createHarnessClientAdapter
|
|
111
|
-
} from "../index-
|
|
111
|
+
} from "../index-j466sekf.js";
|
|
112
112
|
import {
|
|
113
113
|
openWorkspaceCheckpointStore
|
|
114
114
|
} from "../index-4mn6m3bq.js";
|
|
@@ -152,7 +152,7 @@ import {
|
|
|
152
152
|
runHarness,
|
|
153
153
|
runHarnessReviewGroup,
|
|
154
154
|
selectHarnessModel
|
|
155
|
-
} from "../index-
|
|
155
|
+
} from "../index-vn91b9z1.js";
|
|
156
156
|
import {
|
|
157
157
|
HARNESS_OPERATIONS_SCHEMA_VERSION,
|
|
158
158
|
HARNESS_PROJECT_MEMORY_LIMITS,
|
|
@@ -174,7 +174,7 @@ import {
|
|
|
174
174
|
createHttpMcpClient,
|
|
175
175
|
loadHarnessMcpConfiguration,
|
|
176
176
|
normalizeHarnessMcpConfiguration
|
|
177
|
-
} from "../index-
|
|
177
|
+
} from "../index-hhrnrqfc.js";
|
|
178
178
|
import {
|
|
179
179
|
CliOciRuntimeAdapter,
|
|
180
180
|
HARNESS_EXECUTION_ARTIFACT_SCHEMA_VERSION,
|
|
@@ -235,7 +235,7 @@ import {
|
|
|
235
235
|
BUN_ENGINE_RANGE,
|
|
236
236
|
HARNESS_VERSION,
|
|
237
237
|
NODE_ENGINE_RANGE
|
|
238
|
-
} from "../index-
|
|
238
|
+
} from "../index-3wwfn5n6.js";
|
|
239
239
|
import {
|
|
240
240
|
EDIT_CONTRACT_SCHEMA_VERSION,
|
|
241
241
|
EDIT_DIGEST_ALGORITHM,
|
|
@@ -8,13 +8,13 @@ import {
|
|
|
8
8
|
mcpResourcePlanSchema,
|
|
9
9
|
prepareMcpWorkspaceSnapshot,
|
|
10
10
|
recoverDockerMcpResources
|
|
11
|
-
} from "../index-
|
|
12
|
-
import"../index-
|
|
11
|
+
} from "../index-nxmk6re7.js";
|
|
12
|
+
import"../index-hhrnrqfc.js";
|
|
13
13
|
import"../index-w0m1nckc.js";
|
|
14
14
|
import"../index-1265j7t2.js";
|
|
15
15
|
import"../index-c39197wq.js";
|
|
16
16
|
import"../index-mzydbzp8.js";
|
|
17
|
-
import"../index-
|
|
17
|
+
import"../index-3wwfn5n6.js";
|
|
18
18
|
import"../index-6dxrbnxm.js";
|
|
19
19
|
import"../index-bpc596v3.js";
|
|
20
20
|
import"../index-fm84men1.js";
|
package/dist/engine/service.js
CHANGED
|
@@ -5,19 +5,19 @@ import {
|
|
|
5
5
|
recoverHarnessLocalService,
|
|
6
6
|
requestHarnessLocalService,
|
|
7
7
|
startHarnessLocalService
|
|
8
|
-
} from "../index-
|
|
9
|
-
import"../index-
|
|
8
|
+
} from "../index-2yyfg69h.js";
|
|
9
|
+
import"../index-j466sekf.js";
|
|
10
10
|
import"../index-4mn6m3bq.js";
|
|
11
|
-
import"../index-
|
|
11
|
+
import"../index-vn91b9z1.js";
|
|
12
12
|
import"../index-amjttjaj.js";
|
|
13
|
-
import"../index-
|
|
13
|
+
import"../index-hhrnrqfc.js";
|
|
14
14
|
import"../index-w0m1nckc.js";
|
|
15
15
|
import"../index-1265j7t2.js";
|
|
16
16
|
import"../index-c39197wq.js";
|
|
17
17
|
import"../index-mzydbzp8.js";
|
|
18
18
|
import"../index-bt2p8x7r.js";
|
|
19
19
|
import"../index-fqqz1yt8.js";
|
|
20
|
-
import"../index-
|
|
20
|
+
import"../index-3wwfn5n6.js";
|
|
21
21
|
import"../index-6dxrbnxm.js";
|
|
22
22
|
import"../index-4gt045j0.js";
|
|
23
23
|
import"../index-bpc596v3.js";
|
|
@@ -14947,7 +14947,7 @@ import { z as z32 } from "zod";
|
|
|
14947
14947
|
// package.json
|
|
14948
14948
|
var package_default = {
|
|
14949
14949
|
name: "@zhivex-ai/harness",
|
|
14950
|
-
version: "1.6.
|
|
14950
|
+
version: "1.6.3",
|
|
14951
14951
|
description: "Governed, provider-portable runtime for coding agents with durable approvals and isolated repository execution.",
|
|
14952
14952
|
type: "module",
|
|
14953
14953
|
license: "MIT",
|
|
@@ -15168,22 +15168,22 @@ var package_default = {
|
|
|
15168
15168
|
"@zhivex-ai/anthropic": "0.15.0",
|
|
15169
15169
|
"@zhivex-ai/azure-openai": "0.8.0",
|
|
15170
15170
|
"@zhivex-ai/bedrock": "2.1.0",
|
|
15171
|
-
"@zhivex-ai/core": "1.
|
|
15171
|
+
"@zhivex-ai/core": "1.37.0",
|
|
15172
15172
|
"@zhivex-ai/gemini": "0.14.0",
|
|
15173
15173
|
"@zhivex-ai/meta": "0.3.0",
|
|
15174
15174
|
"@zhivex-ai/openai": "0.17.0",
|
|
15175
|
-
"@zhivex-ai/qwen": "0.18.
|
|
15175
|
+
"@zhivex-ai/qwen": "0.18.1",
|
|
15176
15176
|
"@zhivex-ai/vertex": "1.3.0",
|
|
15177
15177
|
"google-auth-library": "11.3.1",
|
|
15178
15178
|
zod: "4.6.7"
|
|
15179
15179
|
},
|
|
15180
15180
|
overrides: {
|
|
15181
|
-
"@zhivex-ai/core": "1.
|
|
15181
|
+
"@zhivex-ai/core": "1.37.0"
|
|
15182
15182
|
},
|
|
15183
15183
|
devDependencies: {
|
|
15184
|
-
"@agentclientprotocol/sdk": "1.
|
|
15184
|
+
"@agentclientprotocol/sdk": "2.1.0",
|
|
15185
15185
|
"@modelcontextprotocol/server": "2.3.1",
|
|
15186
|
-
"@types/bun": "1.4.
|
|
15186
|
+
"@types/bun": "1.4.4",
|
|
15187
15187
|
"@types/node": "^26.6.5",
|
|
15188
15188
|
typescript: "7.0.2",
|
|
15189
15189
|
"typescript-compiler-api": "npm:typescript@6.0.3"
|
|
@@ -15194,7 +15194,7 @@ var package_default = {
|
|
|
15194
15194
|
},
|
|
15195
15195
|
packageManager: "bun@1.4.0",
|
|
15196
15196
|
optionalDependencies: {
|
|
15197
|
-
"@napi-rs/keyring": "2.1.
|
|
15197
|
+
"@napi-rs/keyring": "2.1.2"
|
|
15198
15198
|
}
|
|
15199
15199
|
};
|
|
15200
15200
|
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
// package.json
|
|
2
2
|
var package_default = {
|
|
3
3
|
name: "@zhivex-ai/harness",
|
|
4
|
-
version: "1.6.
|
|
4
|
+
version: "1.6.3",
|
|
5
5
|
description: "Governed, provider-portable runtime for coding agents with durable approvals and isolated repository execution.",
|
|
6
6
|
type: "module",
|
|
7
7
|
license: "MIT",
|
|
@@ -222,22 +222,22 @@ var package_default = {
|
|
|
222
222
|
"@zhivex-ai/anthropic": "0.15.0",
|
|
223
223
|
"@zhivex-ai/azure-openai": "0.8.0",
|
|
224
224
|
"@zhivex-ai/bedrock": "2.1.0",
|
|
225
|
-
"@zhivex-ai/core": "1.
|
|
225
|
+
"@zhivex-ai/core": "1.37.0",
|
|
226
226
|
"@zhivex-ai/gemini": "0.14.0",
|
|
227
227
|
"@zhivex-ai/meta": "0.3.0",
|
|
228
228
|
"@zhivex-ai/openai": "0.17.0",
|
|
229
|
-
"@zhivex-ai/qwen": "0.18.
|
|
229
|
+
"@zhivex-ai/qwen": "0.18.1",
|
|
230
230
|
"@zhivex-ai/vertex": "1.3.0",
|
|
231
231
|
"google-auth-library": "11.3.1",
|
|
232
232
|
zod: "4.6.7"
|
|
233
233
|
},
|
|
234
234
|
overrides: {
|
|
235
|
-
"@zhivex-ai/core": "1.
|
|
235
|
+
"@zhivex-ai/core": "1.37.0"
|
|
236
236
|
},
|
|
237
237
|
devDependencies: {
|
|
238
|
-
"@agentclientprotocol/sdk": "1.
|
|
238
|
+
"@agentclientprotocol/sdk": "2.1.0",
|
|
239
239
|
"@modelcontextprotocol/server": "2.3.1",
|
|
240
|
-
"@types/bun": "1.4.
|
|
240
|
+
"@types/bun": "1.4.4",
|
|
241
241
|
"@types/node": "^26.6.5",
|
|
242
242
|
typescript: "7.0.2",
|
|
243
243
|
"typescript-compiler-api": "npm:typescript@6.0.3"
|
|
@@ -248,7 +248,7 @@ var package_default = {
|
|
|
248
248
|
},
|
|
249
249
|
packageManager: "bun@1.4.0",
|
|
250
250
|
optionalDependencies: {
|
|
251
|
-
"@napi-rs/keyring": "2.1.
|
|
251
|
+
"@napi-rs/keyring": "2.1.2"
|
|
252
252
|
}
|
|
253
253
|
};
|
|
254
254
|
|
|
@@ -29,7 +29,7 @@ import {
|
|
|
29
29
|
mcpConfigurationFingerprintInput,
|
|
30
30
|
normalizeHarnessMcpConfiguration,
|
|
31
31
|
resolveMcpHostSession
|
|
32
|
-
} from "./index-
|
|
32
|
+
} from "./index-hhrnrqfc.js";
|
|
33
33
|
import {
|
|
34
34
|
EnvironmentPatchDriftError,
|
|
35
35
|
Workspace,
|
|
@@ -88,7 +88,7 @@ import {
|
|
|
88
88
|
} from "./index-fqqz1yt8.js";
|
|
89
89
|
import {
|
|
90
90
|
HARNESS_VERSION
|
|
91
|
-
} from "./index-
|
|
91
|
+
} from "./index-3wwfn5n6.js";
|
|
92
92
|
import {
|
|
93
93
|
FileSizeLimitError,
|
|
94
94
|
MAX_EDIT_CHANGES,
|
package/dist/index.js
CHANGED
|
@@ -109,10 +109,10 @@ import {
|
|
|
109
109
|
recoverHarnessLocalService,
|
|
110
110
|
requestHarnessLocalService,
|
|
111
111
|
startHarnessLocalService
|
|
112
|
-
} from "./index-
|
|
112
|
+
} from "./index-2yyfg69h.js";
|
|
113
113
|
import {
|
|
114
114
|
createHarnessClientAdapter
|
|
115
|
-
} from "./index-
|
|
115
|
+
} from "./index-j466sekf.js";
|
|
116
116
|
import {
|
|
117
117
|
openWorkspaceCheckpointStore
|
|
118
118
|
} from "./index-4mn6m3bq.js";
|
|
@@ -154,7 +154,7 @@ import {
|
|
|
154
154
|
runHarness,
|
|
155
155
|
runHarnessReviewGroup,
|
|
156
156
|
selectHarnessModel
|
|
157
|
-
} from "./index-
|
|
157
|
+
} from "./index-vn91b9z1.js";
|
|
158
158
|
import {
|
|
159
159
|
HARNESS_OPERATIONS_SCHEMA_VERSION,
|
|
160
160
|
HARNESS_SQLITE_FILE,
|
|
@@ -173,7 +173,7 @@ import {
|
|
|
173
173
|
createHttpMcpClient,
|
|
174
174
|
loadHarnessMcpConfiguration,
|
|
175
175
|
normalizeHarnessMcpConfiguration
|
|
176
|
-
} from "./index-
|
|
176
|
+
} from "./index-hhrnrqfc.js";
|
|
177
177
|
import {
|
|
178
178
|
CliOciRuntimeAdapter,
|
|
179
179
|
HARNESS_EXECUTION_ARTIFACT_SCHEMA_VERSION,
|
|
@@ -231,7 +231,7 @@ import {
|
|
|
231
231
|
BUN_ENGINE_RANGE,
|
|
232
232
|
HARNESS_VERSION,
|
|
233
233
|
NODE_ENGINE_RANGE
|
|
234
|
-
} from "./index-
|
|
234
|
+
} from "./index-3wwfn5n6.js";
|
|
235
235
|
import {
|
|
236
236
|
EDIT_CONTRACT_SCHEMA_VERSION,
|
|
237
237
|
EDIT_DIGEST_ALGORITHM,
|
package/dist/service-cli.js
CHANGED
|
@@ -2,21 +2,21 @@
|
|
|
2
2
|
import {
|
|
3
3
|
recoverHarnessLocalService,
|
|
4
4
|
startHarnessLocalService
|
|
5
|
-
} from "./index-
|
|
6
|
-
import"./index-
|
|
5
|
+
} from "./index-2yyfg69h.js";
|
|
6
|
+
import"./index-j466sekf.js";
|
|
7
7
|
import"./index-4mn6m3bq.js";
|
|
8
8
|
import {
|
|
9
9
|
createHarness
|
|
10
|
-
} from "./index-
|
|
10
|
+
} from "./index-vn91b9z1.js";
|
|
11
11
|
import"./index-amjttjaj.js";
|
|
12
|
-
import"./index-
|
|
12
|
+
import"./index-hhrnrqfc.js";
|
|
13
13
|
import"./index-w0m1nckc.js";
|
|
14
14
|
import"./index-1265j7t2.js";
|
|
15
15
|
import"./index-c39197wq.js";
|
|
16
16
|
import"./index-mzydbzp8.js";
|
|
17
17
|
import"./index-bt2p8x7r.js";
|
|
18
18
|
import"./index-fqqz1yt8.js";
|
|
19
|
-
import"./index-
|
|
19
|
+
import"./index-3wwfn5n6.js";
|
|
20
20
|
import"./index-6dxrbnxm.js";
|
|
21
21
|
import"./index-4gt045j0.js";
|
|
22
22
|
import"./index-bpc596v3.js";
|
|
@@ -9,17 +9,17 @@ import {
|
|
|
9
9
|
navigateConsole,
|
|
10
10
|
printPolicyInspection,
|
|
11
11
|
sanitizeTerminalText
|
|
12
|
-
} from "./cli-entry-
|
|
12
|
+
} from "./cli-entry-rsx0wpvs.js";
|
|
13
13
|
import {
|
|
14
14
|
CLI_EVENT_SCHEMA_VERSION,
|
|
15
15
|
CLI_JSON_SCHEMA_VERSION,
|
|
16
16
|
changeEnvelopeSchema,
|
|
17
17
|
harnessPolicyDecisionEventSchema,
|
|
18
18
|
serializeStreamResult
|
|
19
|
-
} from "./cli-entry-
|
|
19
|
+
} from "./cli-entry-nyzyvf24.js";
|
|
20
20
|
import {
|
|
21
21
|
HARNESS_VERSION
|
|
22
|
-
} from "./cli-entry-
|
|
22
|
+
} from "./cli-entry-mbcq96nx.js";
|
|
23
23
|
import {
|
|
24
24
|
HARNESS_ERROR_CODES,
|
|
25
25
|
HARNESS_ERROR_SCHEMA_VERSION,
|
|
@@ -15427,7 +15427,7 @@ import { z as z34 } from "zod";
|
|
|
15427
15427
|
// package.json
|
|
15428
15428
|
var package_default = {
|
|
15429
15429
|
name: "@zhivex-ai/harness",
|
|
15430
|
-
version: "1.6.
|
|
15430
|
+
version: "1.6.3",
|
|
15431
15431
|
description: "Governed, provider-portable runtime for coding agents with durable approvals and isolated repository execution.",
|
|
15432
15432
|
type: "module",
|
|
15433
15433
|
license: "MIT",
|
|
@@ -15648,22 +15648,22 @@ var package_default = {
|
|
|
15648
15648
|
"@zhivex-ai/anthropic": "0.15.0",
|
|
15649
15649
|
"@zhivex-ai/azure-openai": "0.8.0",
|
|
15650
15650
|
"@zhivex-ai/bedrock": "2.1.0",
|
|
15651
|
-
"@zhivex-ai/core": "1.
|
|
15651
|
+
"@zhivex-ai/core": "1.37.0",
|
|
15652
15652
|
"@zhivex-ai/gemini": "0.14.0",
|
|
15653
15653
|
"@zhivex-ai/meta": "0.3.0",
|
|
15654
15654
|
"@zhivex-ai/openai": "0.17.0",
|
|
15655
|
-
"@zhivex-ai/qwen": "0.18.
|
|
15655
|
+
"@zhivex-ai/qwen": "0.18.1",
|
|
15656
15656
|
"@zhivex-ai/vertex": "1.3.0",
|
|
15657
15657
|
"google-auth-library": "11.3.1",
|
|
15658
15658
|
zod: "4.6.7"
|
|
15659
15659
|
},
|
|
15660
15660
|
overrides: {
|
|
15661
|
-
"@zhivex-ai/core": "1.
|
|
15661
|
+
"@zhivex-ai/core": "1.37.0"
|
|
15662
15662
|
},
|
|
15663
15663
|
devDependencies: {
|
|
15664
|
-
"@agentclientprotocol/sdk": "1.
|
|
15664
|
+
"@agentclientprotocol/sdk": "2.1.0",
|
|
15665
15665
|
"@modelcontextprotocol/server": "2.3.1",
|
|
15666
|
-
"@types/bun": "1.4.
|
|
15666
|
+
"@types/bun": "1.4.4",
|
|
15667
15667
|
"@types/node": "^26.6.5",
|
|
15668
15668
|
typescript: "7.0.2",
|
|
15669
15669
|
"typescript-compiler-api": "npm:typescript@6.0.3"
|
|
@@ -15674,7 +15674,7 @@ var package_default = {
|
|
|
15674
15674
|
},
|
|
15675
15675
|
packageManager: "bun@1.4.0",
|
|
15676
15676
|
optionalDependencies: {
|
|
15677
|
-
"@napi-rs/keyring": "2.1.
|
|
15677
|
+
"@napi-rs/keyring": "2.1.2"
|
|
15678
15678
|
}
|
|
15679
15679
|
};
|
|
15680
15680
|
|
package/dist/zhx.js
CHANGED
|
@@ -3,7 +3,7 @@ import {
|
|
|
3
3
|
HARNESS_VERSION,
|
|
4
4
|
NODE_ENGINE_RANGE,
|
|
5
5
|
shortCliHelp
|
|
6
|
-
} from "./cli-entry-
|
|
6
|
+
} from "./cli-entry-mbcq96nx.js";
|
|
7
7
|
import {
|
|
8
8
|
__require
|
|
9
9
|
} from "./cli-entry-1bx83sw4.js";
|
|
@@ -41,6 +41,6 @@ if (argv.length === 1 && ["--version", "-v", "version"].includes(argv[0])) {
|
|
|
41
41
|
process.stdout.write(`${shortCliHelp(HARNESS_VERSION)}
|
|
42
42
|
`);
|
|
43
43
|
} else {
|
|
44
|
-
const { runCli } = await import("./cli-
|
|
44
|
+
const { runCli } = await import("./cli-yxvq8qf1.js");
|
|
45
45
|
await runCli(argv);
|
|
46
46
|
}
|
package/docs/AZURE_OPENAI.md
CHANGED
|
@@ -5,7 +5,7 @@ Azure OpenAI is a separate provider (`azure-openai`). It does not reuse
|
|
|
5
5
|
run for this route. Prices are not copied from the public OpenAI catalog.
|
|
6
6
|
|
|
7
7
|
Published `@zhivex-ai/azure-openai@0.8.0` is the adapter pinned by this tree.
|
|
8
|
-
It requires Core `^1.36.0`, and this checkout pins `@zhivex-ai/core@1.
|
|
8
|
+
It requires Core `^1.36.0`, and this checkout pins `@zhivex-ai/core@1.37.0`.
|
|
9
9
|
Language models report Tier A. Hosted tool gates such as tool search follow
|
|
10
10
|
the model id (`gpt-5.4` and `gpt-6-astra` in this adapter). An opaque
|
|
11
11
|
deployment name does not receive those gates unless a deployment map names
|
package/docs/BEDROCK.md
CHANGED
|
@@ -5,7 +5,7 @@ direct API route. No live Harness certification has been run for this route.
|
|
|
5
5
|
Pricing and context limits are not inferred.
|
|
6
6
|
|
|
7
7
|
Published `@zhivex-ai/bedrock@2.1.0` is the adapter pinned by this tree. It
|
|
8
|
-
requires Core `^1.36.0`, and this checkout pins `@zhivex-ai/core@1.
|
|
8
|
+
requires Core `^1.36.0`, and this checkout pins `@zhivex-ai/core@1.37.0`.
|
|
9
9
|
This integration reports the installed adapter's labels and does not relabel
|
|
10
10
|
them.
|
|
11
11
|
|
package/docs/CODE_RELEASE.md
CHANGED
|
@@ -1,12 +1,25 @@
|
|
|
1
1
|
# Code release procedure
|
|
2
2
|
|
|
3
|
-
##
|
|
3
|
+
## Prepared patch: Code 0.4.2
|
|
4
4
|
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
5
|
+
Code `0.4.2` pins Harness `1.6.3` exactly and is pending publication to `latest`. Published Code `0.4.1` and Harness `1.6.2` remain unchanged. The private Web development dependency stays on the published Harness `1.6.2` so clean CI can install its frozen lockfile before the candidate exists in the registry; offline tests explicitly link the built `1.6.3` candidate.
|
|
6
|
+
|
|
7
|
+
After Harness publication and registry/provenance verification, use annotated `code-v0.4.2` on the same reviewed main SHA, `channel=latest`, `mode=oidc`, and the protected `release-code.yml` workflow. The final Code gate must resolve the real published Harness dependency without candidate overrides, then verify retained-artifact installation and provenance. Local paired-artifact tests do not substitute for that registry gate. See [the preparation report](https://github.com/Zhivex/zhivex-harness/blob/main/docs/reports/RELEASE_1_6_3_CODE_0_4_2.md).
|
|
8
|
+
|
|
9
|
+
## Published patch: Code 0.4.1
|
|
10
|
+
|
|
11
|
+
Harness `1.6.2` is published on npm `latest`. `@zhivex-ai/code` `0.4.1` is
|
|
12
|
+
published on `latest`, pinned exactly to Harness `1.6.2`. The engine bump is
|
|
13
|
+
its only change. Published npm Code `0.4.0` remains pinned to
|
|
14
|
+
Harness `1.5.0` and is not republished. Annotated `code-v0.4.1` on the reviewed
|
|
15
|
+
main SHA, `channel=latest`, ran through the protected workflow and its
|
|
16
|
+
environment approval.
|
|
17
|
+
|
|
18
|
+
## Previous preparation: Harness 1.6.2 did not release Code
|
|
19
|
+
|
|
20
|
+
Harness `1.6.2` was prepared while `@zhivex-ai/code` stayed version `0.4.0`,
|
|
21
|
+
with its source pin on `1.6.2` for installed acceptance. No `code-v*` tag was
|
|
22
|
+
created for that engine bump.
|
|
10
23
|
|
|
11
24
|
## Pending patch: 2026-10-16
|
|
12
25
|
|
|
@@ -70,7 +70,7 @@ Loading a run reconstructs its complete state for compatibility with approvals,
|
|
|
70
70
|
|
|
71
71
|
Logical backups contain hydrated history rather than database references, so restoration does not require the original artifact tables. Exports up to 64 MiB retain the legacy JSON format; larger exports use the versioned `ZHIVEX-STATE-SEGMENTS-1` transport with bounded frames, including split strings. RC13 reads both formats and verifies the same logical checksum before import. Older versions cannot read segmented exports. File I/O and checksum serialization are incremental; the public backup/import APIs still hydrate the complete logical bundle in memory. Segmented files have no aggregate 64 MiB ceiling. A state-limit failure records a bounded terminal diagnostic on the last durable checkpoint; the unsaved payload is not claimed as preserved. Use `/status` to inspect the failed run before `/continue`. Recovery retains tool journal receipts and never re-executes an operation itself.
|
|
72
72
|
|
|
73
|
-
The current source pins Core 1.
|
|
73
|
+
The current source pins Core 1.37.0 and Agents 1.12.0. New stores require no
|
|
74
74
|
conversion. Before upgrading an existing shared SDK store, stop its workers and
|
|
75
75
|
upgrade them together with a complete backup. Verified legacy runs retain their
|
|
76
76
|
physical keys and remain readable; new runs use canonical keys that distinguish
|
package/docs/ENGINE_API.md
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
# Engine API and Code integration
|
|
2
2
|
|
|
3
3
|
The terminal-independent package entrypoints shipped in Harness 1.3.0 and remain
|
|
4
|
-
in
|
|
4
|
+
in Harness 1.6.2, published on npm `latest`. They are not present in Harness 1.2.0.
|
|
5
5
|
The protected workflow validated the exact stable tarball, live gates and
|
|
6
6
|
registry integrity/provenance; local candidate smoke remains contributor evidence. Do not install registry 1.2.0 and
|
|
7
7
|
expect the new entrypoints to exist.
|
package/docs/EXTENSIBILITY.md
CHANGED
|
@@ -8,7 +8,7 @@ Built-in registrations are Meta, Qwen, OpenAI, Gemini, Anthropic, Vertex, Amazon
|
|
|
8
8
|
|
|
9
9
|
Library callers can use `DEFAULT_PROVIDER_REGISTRY`, `BUILTIN_PROVIDER_REGISTRATIONS`, `createProviderRegistry`, or `DEFAULT_PROVIDER_REGISTRY.extend(...)`, then pass the registry to `resolveHarnessConfig`, `createProviderModel`, provider diagnostics, or `createHarness({ providerRegistry })`. Registration IDs, environment-variable names, defaults, diagnostics, and factories are validated before they become selectable.
|
|
10
10
|
|
|
11
|
-
The coordinated stable SDK batch pins `@zhivex-ai/agents@1.12.0`, `@zhivex-ai/core@1.
|
|
11
|
+
The coordinated stable SDK batch pins `@zhivex-ai/agents@1.12.0`, `@zhivex-ai/core@1.37.0`, `@zhivex-ai/meta@0.3.0`, `@zhivex-ai/qwen@0.18.1`, `@zhivex-ai/openai@0.17.0`, `@zhivex-ai/gemini@0.14.0`, `@zhivex-ai/anthropic@0.15.0`, `@zhivex-ai/vertex@1.3.0`, `@zhivex-ai/bedrock@2.1.0`, and `@zhivex-ai/azure-openai@0.8.0`. Qwen 0.18.1 depends on Core `^1.37.0` and rejects non-string portable-decision instructions. Qwen 0.16.2 types malformed Responses tool arguments and malformed SSE events; Core 1.37.0 satisfies Agents `^1.34.0` and the provider adapters' `^1.36.0` floors. Vertex 1.3.0 requires OpenAI `^0.17.0`, Anthropic `^0.15.0`, and Gemini `^0.14.0`. These exact versions are pinned in the lockfile. Stable SDK publication does not replace Harness release-bound certification. Qwen `0.11.x` normalizes missing, placeholder, and continuation tool-call identifiers inside the adapter; Harness retains its deterministic provider-boundary normalizer as defense in depth until the exact candidate passes the complete release-bound representative matrix. A Core override keeps one runtime contract identity across every adapter, while Core `1.13.0` corrects compaction usage accounting and interaction-group retention. OpenAI `0.11.2` preserves synthetic assistant history in Responses, so the harness no longer requires its compaction transport or accounting workarounds.
|
|
12
12
|
|
|
13
13
|
OpenAI is based on the GPT-5.6 family: `gpt-5.6-luna` is the default, with `gpt-5.6-terra` and `gpt-5.6-sol` available through `--model`. Availability remains organization-dependent while the upstream family is in limited preview, and the adapter uses the Responses API by default.
|
|
14
14
|
|
package/docs/FIRST_USE.md
CHANGED
|
@@ -1,13 +1,13 @@
|
|
|
1
1
|
# First use
|
|
2
2
|
|
|
3
|
-
This guide targets
|
|
3
|
+
This guide targets source candidate `1.6.3`, pending publication. Registry commands below apply after publication; current npm `latest` remains `1.6.2`.
|
|
4
4
|
|
|
5
5
|
## Install and start
|
|
6
6
|
|
|
7
7
|
Install Node.js 22.13.0 or newer and Git. Then:
|
|
8
8
|
|
|
9
9
|
```sh
|
|
10
|
-
npm install -g @zhivex-ai/harness@1.6.
|
|
10
|
+
npm install -g @zhivex-ai/harness@1.6.3
|
|
11
11
|
cd /path/to/your/project
|
|
12
12
|
zhx
|
|
13
13
|
```
|
|
@@ -82,16 +82,16 @@ For command execution, configure [OCI isolation](EXECUTION_ENVIRONMENTS.md).
|
|
|
82
82
|
With Bun 1.4.0 or newer and a supported Node runtime:
|
|
83
83
|
|
|
84
84
|
```sh
|
|
85
|
-
bun add --global @zhivex-ai/harness@1.6.
|
|
85
|
+
bun add --global @zhivex-ai/harness@1.6.3
|
|
86
86
|
zhx
|
|
87
87
|
```
|
|
88
88
|
|
|
89
89
|
For a disposable version/help/environment check without a global installation:
|
|
90
90
|
|
|
91
91
|
```sh
|
|
92
|
-
bunx @zhivex-ai/harness@1.6.
|
|
93
|
-
bunx @zhivex-ai/harness@1.6.
|
|
94
|
-
bunx @zhivex-ai/harness@1.6.
|
|
92
|
+
bunx @zhivex-ai/harness@1.6.3 --version
|
|
93
|
+
bunx @zhivex-ai/harness@1.6.3 --help
|
|
94
|
+
bunx @zhivex-ai/harness@1.6.3 doctor
|
|
95
95
|
```
|
|
96
96
|
|
|
97
97
|
For source development, use the [contributor guide](https://github.com/Zhivex/zhivex-harness/blob/main/CONTRIBUTING.md).
|
|
@@ -56,7 +56,7 @@ dispatch/cap behavior, not provider billing guarantees or model quality.
|
|
|
56
56
|
| Built-in Anthropic API key (`@zhivex-ai/anthropic` 0.15.0) | Supported | Messages `max_tokens`; non-refreshable built-in credentials; `maxRetries=0` |
|
|
57
57
|
| Built-in Gemini (`@zhivex-ai/gemini` 0.14.0) | Supported | `generationConfig.maxOutputTokens`; `maxRetries=0` |
|
|
58
58
|
| Built-in Vertex (`@zhivex-ai/vertex` 1.3.0) | Supported | `generationConfig.maxOutputTokens`; real ADC callback, synthetic credential source in tests; `maxRetries=0` |
|
|
59
|
-
| Qwen (`@zhivex-ai/qwen` 0.18.
|
|
59
|
+
| Qwen (`@zhivex-ai/qwen` 0.18.1) | Blocked as Code primary | Explicit Chat-mode middleware tested with capped `max_tokens`; Code has no explicit mode selector and Responses rejects `maxTokens` |
|
|
60
60
|
| Meta | Blocked | Harness continuation fetch can replay a 400 response outside SDK retry admission |
|
|
61
61
|
| Injected/custom adapters, refreshable Anthropic OAuth | Blocked | No vetted transport provenance; OAuth transport can replay a 401 after refresh outside ordinary retry admission |
|
|
62
62
|
| Mock | Offline tests only | Synthetic usage is never billing evidence |
|
package/docs/PROJECT_MEMORY.md
CHANGED
|
@@ -7,7 +7,7 @@ generated automatically; hosts may submit a suggestion for operator review.
|
|
|
7
7
|
|
|
8
8
|
## CLI
|
|
9
9
|
|
|
10
|
-
Use `zhx` with Harness 1.6.2,
|
|
10
|
+
Use `zhx` with Harness 1.6.2, published on `latest`. `zhivex-code` is Code 0.4.1, published on `latest` and pinned exactly to Harness 1.6.2. Commands
|
|
11
11
|
print bounded JSON, including the selected workspace/scope hashes. Quote content
|
|
12
12
|
as one argument. Memory commands do not start a model or read credentials.
|
|
13
13
|
|
package/docs/VERTEX.md
CHANGED
|
@@ -44,7 +44,7 @@ Errors expose bounded categories for authentication, permission, unavailable
|
|
|
44
44
|
model/route, rate limit and server failures. Raw Google payloads, token values,
|
|
45
45
|
credential paths and service-account identities are not retained in errors.
|
|
46
46
|
|
|
47
|
-
The integration pins `@zhivex-ai/vertex@1.3.0` with Core 1.
|
|
47
|
+
The integration pins `@zhivex-ai/vertex@1.3.0` with Core 1.37.0 and
|
|
48
48
|
`google-auth-library@11.3.1`. Deterministic tests exercise the installed SDK's
|
|
49
49
|
transport, streaming, signed continuation, approval/reopen and route mismatch.
|
|
50
50
|
They are not evidence of a live project, renewable ADC or IAM authorization.
|
package/docs/WEB_LIMITS.md
CHANGED
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
New interactive Web/terminal tasks have no accumulated spend, token, step,
|
|
4
4
|
tool-call or duration cap unless configured. This change uses the published SDK contract from
|
|
5
5
|
Zhivex/zhivex-ai-sdk PR 142 (Core/SDK 1.31.0, Agents 1.11.0). Direct Harness, Code
|
|
6
|
-
and the root Core override now pin Core 1.
|
|
6
|
+
and the root Core override now pin Core 1.37.0; Agents is 1.12.0.
|
|
7
7
|
Provider package pins are Anthropic 0.15.0, OpenAI 0.17.0 and Vertex 1.3.0.
|
|
8
8
|
Headless policies and release gates remain unchanged.
|
|
9
9
|
|
|
@@ -20,7 +20,7 @@ activate stdio, change configuration schema 1, or claim isolated execution passe
|
|
|
20
20
|
options with abort, timeout/idempotency key, and an HTTP transport; no executable
|
|
21
21
|
stdio factory was found in that dependency. The control-plane transport enum is
|
|
22
22
|
not an executor.
|
|
23
|
-
- The current pin is `@zhivex-ai/core` 1.
|
|
23
|
+
- The current pin is `@zhivex-ai/core` 1.37.0, which includes an experimental
|
|
24
24
|
stdio client. Harness still does not treat that factory as the OCI boundary.
|
|
25
25
|
|
|
26
26
|
MCP stdio uses UTF-8 newline-delimited JSON-RPC on stdin/stdout; stderr is a
|
|
@@ -67,7 +67,8 @@
|
|
|
67
67
|
"v1.5.0",
|
|
68
68
|
"v1.6.0",
|
|
69
69
|
"v1.6.1",
|
|
70
|
-
"v1.6.2"
|
|
70
|
+
"v1.6.2",
|
|
71
|
+
"v1.6.3"
|
|
71
72
|
],
|
|
72
73
|
"expectedModels": [
|
|
73
74
|
{
|
|
@@ -597,6 +598,14 @@
|
|
|
597
598
|
"qwen": "qwen3.8-flash",
|
|
598
599
|
"openai": "gpt-6-luna"
|
|
599
600
|
}
|
|
601
|
+
},
|
|
602
|
+
{
|
|
603
|
+
"releaseTag": "v1.6.3",
|
|
604
|
+
"models": {
|
|
605
|
+
"meta": "muse-spark-1.3-contributor",
|
|
606
|
+
"qwen": "qwen3.8-flash",
|
|
607
|
+
"openai": "gpt-6-luna"
|
|
608
|
+
}
|
|
600
609
|
}
|
|
601
610
|
],
|
|
602
611
|
"expectedCases": [
|
package/examples/README.md
CHANGED
|
@@ -2,19 +2,19 @@
|
|
|
2
2
|
|
|
3
3
|
## Isolated Bun installation
|
|
4
4
|
|
|
5
|
-
Requirements: Bun 1.4.0+, Node.js 22.13.0+, and Git on macOS or Linux. After
|
|
5
|
+
Requirements: Bun 1.4.0+, Node.js 22.13.0+, and Git on macOS or Linux. After publication, this installs the 1.6.3 artifact in a temporary consumer, without building the source checkout or changing global tools:
|
|
6
6
|
|
|
7
7
|
```bash
|
|
8
8
|
harness_demo_dir=$(mktemp -d)
|
|
9
9
|
cd "$harness_demo_dir"
|
|
10
10
|
printf '{"name":"harness-first-run","private":true}\n' > package.json
|
|
11
|
-
bun add --exact --ignore-scripts @zhivex-ai/harness@1.6.
|
|
11
|
+
bun add --exact --ignore-scripts @zhivex-ai/harness@1.6.3
|
|
12
12
|
./node_modules/.bin/zhx --version
|
|
13
13
|
./node_modules/.bin/zhx --help
|
|
14
14
|
./node_modules/.bin/zhx doctor --provider openai --json
|
|
15
15
|
```
|
|
16
16
|
|
|
17
|
-
Version must print `1.6.
|
|
17
|
+
Version must print `1.6.3`; help lists commands. Doctor does not contact a provider. Without `OPENAI_API_KEY`, it reports the missing credential and exits with code `3`; inspect the JSON checks before proceeding. A directory without Git initialization can also produce a diagnostic warning. No paid model call is required for these checks. Both `zhx` and `zhivex-harness` are installed aliases; Bun manages installation, and their shebang runs Node.
|
|
18
18
|
|
|
19
19
|
To continue in your actual project, use the [global installation and credential setup](../README.md#quick-start), then `zhx init --profile daily --provider openai` and `zhx doctor --profile daily`. Real tasks require the selected provider credential in the process environment. Profiles store provider/model choices, never credentials. See [CLI](../docs/CLI.md) and [support](../SUPPORT.md).
|
|
20
20
|
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@zhivex-ai/harness",
|
|
3
|
-
"version": "1.6.
|
|
3
|
+
"version": "1.6.3",
|
|
4
4
|
"description": "Governed, provider-portable runtime for coding agents with durable approvals and isolated repository execution.",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"license": "MIT",
|
|
@@ -221,22 +221,22 @@
|
|
|
221
221
|
"@zhivex-ai/anthropic": "0.15.0",
|
|
222
222
|
"@zhivex-ai/azure-openai": "0.8.0",
|
|
223
223
|
"@zhivex-ai/bedrock": "2.1.0",
|
|
224
|
-
"@zhivex-ai/core": "1.
|
|
224
|
+
"@zhivex-ai/core": "1.37.0",
|
|
225
225
|
"@zhivex-ai/gemini": "0.14.0",
|
|
226
226
|
"@zhivex-ai/meta": "0.3.0",
|
|
227
227
|
"@zhivex-ai/openai": "0.17.0",
|
|
228
|
-
"@zhivex-ai/qwen": "0.18.
|
|
228
|
+
"@zhivex-ai/qwen": "0.18.1",
|
|
229
229
|
"@zhivex-ai/vertex": "1.3.0",
|
|
230
230
|
"google-auth-library": "11.3.1",
|
|
231
231
|
"zod": "4.6.7"
|
|
232
232
|
},
|
|
233
233
|
"overrides": {
|
|
234
|
-
"@zhivex-ai/core": "1.
|
|
234
|
+
"@zhivex-ai/core": "1.37.0"
|
|
235
235
|
},
|
|
236
236
|
"devDependencies": {
|
|
237
|
-
"@agentclientprotocol/sdk": "1.
|
|
237
|
+
"@agentclientprotocol/sdk": "2.1.0",
|
|
238
238
|
"@modelcontextprotocol/server": "2.3.1",
|
|
239
|
-
"@types/bun": "1.4.
|
|
239
|
+
"@types/bun": "1.4.4",
|
|
240
240
|
"@types/node": "^26.6.5",
|
|
241
241
|
"typescript": "7.0.2",
|
|
242
242
|
"typescript-compiler-api": "npm:typescript@6.0.3"
|
|
@@ -247,6 +247,6 @@
|
|
|
247
247
|
},
|
|
248
248
|
"packageManager": "bun@1.4.0",
|
|
249
249
|
"optionalDependencies": {
|
|
250
|
-
"@napi-rs/keyring": "2.1.
|
|
250
|
+
"@napi-rs/keyring": "2.1.2"
|
|
251
251
|
}
|
|
252
252
|
}
|