@zhivex-ai/harness 1.4.0 → 1.5.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 (128) hide show
  1. package/CHANGELOG.md +32 -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 +36 -36
  8. package/dist/acp-cli.js +54 -20
  9. package/dist/approvals/approval-diff.d.ts +2 -1
  10. package/dist/approvals/approval-preview.d.ts +1 -1
  11. package/dist/audit/index.d.ts +3 -0
  12. package/dist/audit/index.js +482 -0
  13. package/dist/audit/pack.d.ts +72 -0
  14. package/dist/audit-pack-kvw7ng34.js +532 -0
  15. package/dist/cli/arguments.d.ts +3 -1
  16. package/dist/cli/audit-pack.d.ts +24 -0
  17. package/dist/cli/cli-credentials.d.ts +6 -0
  18. package/dist/cli/cli-profiles.d.ts +4 -2
  19. package/dist/cli/node-engine.d.ts +2 -0
  20. package/dist/cli-entry-75j3r49b.js +484 -0
  21. package/dist/cli-entry-928p8h41.js +10067 -0
  22. package/dist/cli-entry-h2yc9x37.js +10350 -0
  23. package/dist/{cli-entry-20w6nh0k.js → cli-entry-hdtfef27.js} +439 -19
  24. package/dist/{cli-entry-w0hterjs.js → cli-entry-q8bgkn9m.js} +40 -13
  25. package/dist/{cli-2h37qyvg.js → cli-vyrytn3m.js} +253 -644
  26. package/dist/cli.js +27 -2
  27. package/dist/client/json-contracts.d.ts +4 -0
  28. package/dist/client/protocol.d.ts +133 -0
  29. package/dist/client/task-control-host.d.ts +400 -0
  30. package/dist/client/task-projection-host.d.ts +12 -0
  31. package/dist/client/task-projection.d.ts +168 -0
  32. package/dist/compat/code-support.js +28 -22
  33. package/dist/{config-qt69hkqj.js → config-r9fdhce6.js} +3 -3
  34. package/dist/{config-j9624t6t.js → config-vyajmksy.js} +1 -1
  35. package/dist/engine/acp.js +15 -11
  36. package/dist/engine/client.js +14 -10
  37. package/dist/engine/desktop-providers-v1.d.ts +2 -0
  38. package/dist/engine/desktop-providers-v1.js +23 -3
  39. package/dist/engine/desktop-state-v1.js +11 -8
  40. package/dist/engine/index.d.ts +3 -0
  41. package/dist/engine/index.js +101 -554
  42. package/dist/engine/mcp-stdio-v1.js +8 -6
  43. package/dist/engine/models.js +76 -4
  44. package/dist/engine/protocol.d.ts +2 -0
  45. package/dist/engine/protocol.js +110 -0
  46. package/dist/engine/service.js +15 -11
  47. package/dist/hostile-repository-demo.js +1232 -564
  48. package/dist/{index-8zjmnyw5.js → index-1265j7t2.js} +73 -6
  49. package/dist/{index-nmjdwd4p.js → index-4gt045j0.js} +109 -1
  50. package/dist/{index-pdmevfxv.js → index-5zbq9ztj.js} +5 -259
  51. package/dist/{index-6dft2vev.js → index-63gbp0cz.js} +5 -3
  52. package/dist/index-6dxrbnxm.js +719 -0
  53. package/dist/{index-pp474137.js → index-6fp7kdpx.js} +769 -933
  54. package/dist/{index-61gthdz6.js → index-8sm2a1wa.js} +1 -1
  55. package/dist/{index-rkbf7dqg.js → index-96ezrvg2.js} +57 -13
  56. package/dist/index-bt2p8x7r.js +329 -0
  57. package/dist/index-c39197wq.js +552 -0
  58. package/dist/{index-m82cfspw.js → index-eps3c3g6.js} +877 -963
  59. package/dist/{index-s2k2edts.js → index-fqqz1yt8.js} +110 -1544
  60. package/dist/{index-m34q25jj.js → index-ggstwr0v.js} +192 -838
  61. package/dist/index-jpdvn09j.js +490 -0
  62. package/dist/{index-xqxeypt5.js → index-mzydbzp8.js} +76 -4
  63. package/dist/index-pq3kz1r8.js +269 -0
  64. package/dist/{index-wg1sd3at.js → index-qfsrrnz6.js} +1 -1
  65. package/dist/{index-937cb7y8.js → index-vc7yxz50.js} +561 -35
  66. package/dist/{index-5jhgatga.js → index-vvzc5ezz.js} +7 -6
  67. package/dist/index-wwthv10a.js +1507 -0
  68. package/dist/{index-tfzta544.js → index-xfedewpt.js} +17 -9
  69. package/dist/index-yx52bt4a.js +511 -0
  70. package/dist/index.d.ts +3 -0
  71. package/dist/index.js +93 -77
  72. package/dist/integrations/mcp-stdio-tools.d.ts +4 -1
  73. package/dist/internal/desktop/providers.d.ts +2 -0
  74. package/dist/models/catalog.d.ts +2 -0
  75. package/dist/persistence/sqlite-database.d.ts +1 -0
  76. package/dist/providers/azure-openai.d.ts +14 -0
  77. package/dist/providers/bedrock.d.ts +23 -0
  78. package/dist/providers/providers.d.ts +1 -1
  79. package/dist/runtime/budget-ledger-scope.d.ts +14 -0
  80. package/dist/runtime/durable-review-group.d.ts +33 -0
  81. package/dist/runtime/harness.d.ts +11 -0
  82. package/dist/runtime/run-interruption.d.ts +7 -0
  83. package/dist/runtime/shared-budget.d.ts +30 -0
  84. package/dist/runtime/task-continuity.d.ts +300 -77
  85. package/dist/service-cli.js +15 -11
  86. package/dist/{service-client-cli-fn54ev6w.js → service-client-cli-v6qptg9x.js} +400 -305
  87. package/dist/tools/workspace.d.ts +2 -2
  88. package/dist/verify-historical-migrations.js +1237 -566
  89. package/dist/workspace/edit-contracts.d.ts +2 -2
  90. package/dist/workspace/path-policy.d.ts +2 -1
  91. package/dist/workspace/workspace.d.ts +13 -0
  92. package/dist/zhx.js +27 -2
  93. package/docs/AUDIT_PACK.md +99 -0
  94. package/docs/AZURE_OPENAI.md +53 -0
  95. package/docs/BEDROCK.md +56 -0
  96. package/docs/CLI.md +15 -0
  97. package/docs/CLIENT_PROTOCOL.md +178 -0
  98. package/docs/CODE_RELEASE.md +59 -7
  99. package/docs/CODE_WEB_TASKS.md +116 -0
  100. package/docs/CONTEXT_ENGINEERING.md +59 -0
  101. package/docs/CREDENTIALS.md +21 -0
  102. package/docs/DURABLE_OPERATIONS.md +93 -1
  103. package/docs/ENGINE_API.md +5 -2
  104. package/docs/EXTENSIBILITY.md +8 -4
  105. package/docs/FIRST_USE.md +6 -6
  106. package/docs/MINIMUM_TASK_AUTHORITY.md +3 -3
  107. package/docs/PROJECT_MEMORY.md +1 -1
  108. package/docs/PUBLIC_SECURITY.md +14 -1
  109. package/docs/README.md +6 -1
  110. package/docs/REPOSITORY_EDITING.md +1 -1
  111. package/docs/STABILITY.md +3 -1
  112. package/docs/SUPPORT_MATRIX.md +1 -1
  113. package/docs/SUPPORT_MATRIX_1_1.md +1 -1
  114. package/docs/TOOL_POLICY.md +4 -1
  115. package/docs/USAGE.md +3 -1
  116. package/docs/VERTEX.md +2 -2
  117. package/docs/WEB_LIMITS.md +4 -3
  118. package/docs/adr/0002-isolated-mcp-stdio.md +7 -4
  119. package/docs/support-matrix-1.1.json +3 -1
  120. package/docs/support-matrix.json +6 -4
  121. package/evaluations/code-task-ui.json +20 -0
  122. package/evaluations/representative-assembly-matrix.json +19 -1
  123. package/evaluations/task-projection.json +10 -0
  124. package/evaluations/task-recovery-lab.json +60 -0
  125. package/examples/README.md +3 -3
  126. package/package.json +23 -13
  127. package/dist/cli-entry-4ngptr62.js +0 -19900
  128. package/dist/index-m49jx72n.js +0 -220
package/CHANGELOG.md CHANGED
@@ -4,16 +4,38 @@ All notable changes to Zhivex Harness are documented in this file.
4
4
 
5
5
  The project follows Semantic Versioning. During `0.x`, minor releases may change user-facing contracts when the change is documented with a migration note. Patch releases remain backwards compatible bug fixes.
6
6
 
7
- ## 1.4.1 - 2026-10-14
8
-
9
- - Classify Vertex and Google transient failures as retryable `PROVIDER_UNAVAILABLE` instead of a generic `EXECUTION_FAILED`. The covered cases are HTTP 409 ABORTED, 429 RESOURCE_EXHAUSTED, 500/502/503/504, UNAVAILABLE, DEADLINE_EXCEEDED, and stream resets. Sanitized diagnostics keep the HTTP status and the closed provider status category, and still omit provider messages, resource names, and credentials.
10
- - Retry that class, and an empty model turn with no text and no tool call, up to three times with jittered backoff in the Vertex driver. The live continuity and approval-compaction gates use the same classification and do not accept a phase that fails its assertions.
11
- - Keep the package version at `1.4.0`. This note does not tag, publish, or dispatch a release.
12
-
13
- ## 1.4.0 - 2026-10-09
14
-
15
- - Prepare stable Harness 1.4.0 and Code 0.3.0 for npm `latest`, with the exact Code engine pin, private Desktop binding and an additive representative mapping for `v1.4.0` using the unchanged Meta, Qwen and OpenAI models. Retain the SDK pins already on main (Core 1.31.0, Agents 1.11.0 and the existing provider packages). Published `latest` stays Harness 1.3.0 and Code 0.2.0. Published `next` is Harness 1.4.0-rc.8 and Code 0.3.0-rc.8. `release-status.json` keeps the verified 1.3.0 record until this stable publication has its own registry evidence.
16
- - Engine runtime source under `src/` is identical to annotated `v1.4.0-rc.8` and `code-v0.3.0-rc.8` (`5bba06c86fc82b34b67cec607053948f8e00d0d1`). Root `scripts/`, root `tests/` and `evaluations/` were also unchanged before this preparation's representative-mapping row. Code (`packages/code`), web (`packages/web`) and desktop (`desktop`) are not identical to that tag.
7
+ ## Unreleased
8
+
9
+ ## 1.5.0 - 2026-10-16
10
+
11
+ - Prepare minor Harness 1.5.0 and Code 0.4.0 for npm `latest`. The minor covers the new experimental audit pack, provisional Bedrock and Azure OpenAI routes, and Code web task control; stable root exports and command contracts are unchanged. It ships with the exact Code engine pin, private Desktop binding and an additive representative mapping for `v1.5.0` using the unchanged Meta, Qwen and OpenAI models. Published `latest` is Harness 1.4.1 and Code 0.3.2. Tags and publication follow only through the protected release workflows.
12
+ - Add provisional Amazon Bedrock and Azure OpenAI routes. Bedrock pins `@zhivex-ai/bedrock@2.0.7` (Converse uses the AWS credential chain and region and reports Tier B; `BEDROCK_RUNTIME=openai` is the Tier A path). Azure OpenAI pins `@zhivex-ai/azure-openai@0.7.8` (https endpoint, API key, optional API version and deployments map). Core is `@zhivex-ai/core@1.34.0`, which those adapters require. An incomplete Bedrock or Azure environment stays out of the durable transport fingerprint. Desktop forwards the selected route's environment credentials through the worker bootstrap. These routes are uncertified: no live calls, no default certification cohort, and no publish or tags.
13
+ - Add an experimental audit pack on `@zhivex-ai/harness/audit`. `zhx export-audit <task-id> --out <directory>` writes one directory per run, or one directory containing every run on a guided task account. The pack reuses the governance report, every approval decision page up to 512 records, the durable redacted activity journal as JSONL, and the usage ledger projection plus transport summary. Approvals, usage, and the governance report come from one captured run snapshot. A change to that run, its journal, or the task account before signing fails with `AUDIT_PACK_STATE_CHANGED` and writes nothing. The 32 MiB limit includes `manifest.json`. `zhx verify-audit --out <directory>` checks the manifest hashes and an HMAC-SHA256 seal without resolving provider, store, or budget configuration. The signing key is `ZHIVEX_AUDIT_SIGNING_KEY` or `--signing-key-file` and is not stored in the pack. Stable root exports, stable declaration signatures, and existing command option contracts are unchanged. This note does not publish a release.
14
+ - Add experimental Code web task definition, bounded exact delivery review, explicit human acceptance, requirement correction, and budgeted continuation through additive host-owned client commands. Keep check verification, human decisions, and provider usage uncertainty distinct. Failed pre-admission continuations retain scoped previous evidence without inventing budget admissions; ordinary chat cannot bypass a governed task's budget.
15
+ - Migration: negotiate `task.control.v1`; existing chat and task projection v1 remain supported. Use matched Code and Harness builds. Native governed tasks require a clean Git baseline, existing bounded tracked files, declared package checks, and explicit token limits. Human acceptance records operator acknowledgement, not measured semantic quality. No store migration, default cap, automatic retry, or release is introduced. See [Code web tasks](docs/CODE_WEB_TASKS.md).
16
+ - Add experimental versioned `task.get` snapshots over the existing client/service protocol. Project deterministic contract, byte, and check evidence separately from semantic and human acceptance, retain authoritative budget uncertainty, and prohibit automatic effect replay. Negotiate `task.projection.v1`; legacy commands and opt-in budget behavior remain compatible. No new store.
17
+
18
+ ## 1.4.1 - 2026-10-15
19
+
20
+ - Retry a local web reconnect when a command finishes during the durable read, so reconciliation can enable the next session.
21
+ - Keep the Code composer footer readable below 48 columns: model, approval mode and status stay separate clauses and wrap on words.
22
+ - Show a rejected operation as "rejected by you" instead of "operation failed", without echoing the tool name.
23
+ - Show the local web limits dialog, its load and save failures, and the run summary in English, including singular step, tool-call and token counts.
24
+ - Hide the Node 22 ExperimentalWarning for built-in SQLite before the first product line. Other warnings still print.
25
+ - Refuse to start the Harness and Code CLIs when Node is older than engines.node (>=22.13.0), including --help and --version. Bun keeps its own engine check.
26
+ - Describe command reviews as a command that does not run, in the Code terminal and the local web review scope.
27
+ - Pin @zhivex-ai/core 1.33.0 so provider base URLs use the private-host and metadata SSRF checks.
28
+ - Update Anthropic 0.13.2 to 0.14.0, OpenAI 0.14.1 to 0.16.0, and Vertex 1.2.4 to 1.2.7. Vertex 1.2.7 requires those OpenAI and Anthropic ranges. Harness does not call the new experimental Decisions or GPT-Live entrypoints, and provider/API tiers stay unchanged. The development MCP server package moves from 2.2.0 to 2.3.1. Optional `@napi-rs/keyring` moves from 2.1.0 to 2.1.1 in Harness and Code; a missing entry still reads as absent.
29
+ - Prepare Harness 1.4.1 and Code 0.3.1 for npm `latest`, with the exact Code engine pin, private Desktop binding and an additive representative mapping for `v1.4.1` using the unchanged Meta, Qwen and OpenAI models. Retain Agents 1.11.0, Qwen 0.16.4, Meta 0.2.9 and Gemini 0.13.0. Update the ACP development SDK to 1.8.0 and `@types/node` to 26.6.5, and refresh the CodeQL, setup-node, upload-artifact and download-artifact workflow pins. Pause Dependabot updates for private Desktop. Published `latest` is Harness 1.4.0 and Code 0.3.0. Published `next` is Harness 1.4.0-rc.8 and Code 0.3.0-rc.8. `release-status.json` records the verified 1.4.0 publication. The Vertex transient-failure retry and explicit output caps above 2,048 shipped in 1.4.0. This patch does not add them.
30
+ - This preparation creates no tags and dispatches no release.
31
+
32
+ ## 1.4.0 - 2026-10-14
33
+
34
+ - Published to npm `latest` from annotated `v1.4.0` (`53cdfd338cd33f4786629a30ca7f7a8782ba0ac8`), with Code `0.3.0`. Registry integrity is `sha512-kK8m2jcjwXzbvOQOkf1Uvca/ywJVGsc4dSesGZAui1kskQuTsQg3428RHgHdW9q0ZcQtotMHEsuDp3HucLx8bw==`. The protected release workflow [38633520032](https://github.com/Zhivex/zhivex-harness/actions/runs/38633520032) passed exact-artifact validation and live certification.
35
+ - Classify Vertex and Google transient failures as retryable `PROVIDER_UNAVAILABLE` instead of a generic `EXECUTION_FAILED`. The covered cases are HTTP 409 ABORTED, 429 RESOURCE_EXHAUSTED, 500/502/503/504, UNAVAILABLE, DEADLINE_EXCEEDED, and stream resets. Sanitized diagnostics keep the HTTP status and the closed provider status category, and still omit provider messages, resource names, and credentials. That class, and an empty model turn with no text and no tool call, retries up to three times with jittered backoff in the Vertex driver.
36
+ - Explicit positive integer output caps under a monetary limit, including caps above 2,048, were already in 1.4.0-rc.7 and remain in this release. The ledger reserves 2,048 only when the request omits a cap.
37
+ - Prepare stable Harness 1.4.0 and Code 0.3.0 for npm `latest`, with the exact Code engine pin, private Desktop binding and an additive representative mapping for `v1.4.0` using the unchanged Meta, Qwen and OpenAI models. At preparation time the SDK pins were Core 1.31.0 and Agents 1.11.0. Published `next` stays Harness 1.4.0-rc.8 and Code 0.3.0-rc.8.
38
+ - The published tag is not identical to annotated `v1.4.0-rc.8` (`5bba06c86fc82b34b67cec607053948f8e00d0d1`): `src/` includes the Vertex retry above. Before that retry, engine runtime source matched the rc.8 tag. Code (`packages/code`), web (`packages/web`) and desktop (`desktop`) were already not identical to that tag.
17
39
  - Carry the reviewed product changes on main after that tag: the same Code review screen for shell `--continue` and `/pending` ([PR201](https://github.com/Zhivex/zhivex-harness/pull/201)); removal of the desktop fixture waiting button ([PR203](https://github.com/Zhivex/zhivex-harness/pull/203)); B-lite review scope on web and desktop ([PR211](https://github.com/Zhivex/zhivex-harness/pull/211)); the Code status line, one-line summary and 48×24 first-welcome logo ([PR210](https://github.com/Zhivex/zhivex-harness/pull/210)); and the public README ([PR200](https://github.com/Zhivex/zhivex-harness/pull/200)). Packaged Harness docs `README.md` and `docs/CLI.md` differ from the rc.8 tag. `docs/CLI_UX.md` and `docs/images/approval-survives-restart.gif` also differ and are outside the Harness `files` list.
18
40
  - Require fresh exact-source/artifact validation and separate explicit approval before any paid campaign, annotated tag or publication. Provider/API tiers remain unchanged. This preparation creates no tags and dispatches no release.
19
41
 
package/README.md CHANGED
@@ -23,7 +23,7 @@ An open-source coding agent for your terminal. It asks before it edits or runs a
23
23
 
24
24
  - **You approve the exact change.** Edits and checks wait for an explicit decision bound to that diff. A conversational summary leaves the change unapproved. If the file changed on your side, import fails closed.
25
25
  - **The pending decision survives a restart.** Conversations and approvals are stored in SQLite. Quit the terminal, or reboot, and the same approval is waiting.
26
- - **Your keys, your provider.** OpenAI, Qwen, and Meta pass the release gate. Gemini, Anthropic, and Vertex are provisional. The same CLI talks to each of them.
26
+ - **Your keys, your provider.** OpenAI, Qwen, and Meta pass the release gate. Gemini, Anthropic, Vertex, Amazon Bedrock, and Azure OpenAI are provisional. The same CLI talks to each of them.
27
27
 
28
28
  ## Quick start
29
29
 
@@ -94,6 +94,8 @@ The script prints the guided sequence and a command to reopen the same temporary
94
94
  | Gemini (provisional) | `GEMINI_API_KEY` or `GOOGLE_GENERATIVE_AI_API_KEY` |
95
95
  | Anthropic (provisional) | `ANTHROPIC_API_KEY` |
96
96
  | Vertex (provisional) | Application Default Credentials, plus `GOOGLE_CLOUD_PROJECT` and `VERTEX_LOCATION`. Code does not ask for a Vertex API key. |
97
+ | Amazon Bedrock (provisional) | AWS credential chain plus `AWS_REGION` or `AWS_DEFAULT_REGION`. `BEDROCK_RUNTIME=openai` also needs `BEDROCK_OPENAI_BASE_URL` and `BEDROCK_API_KEY` or `AWS_BEARER_TOKEN_BEDROCK`. |
98
+ | Azure OpenAI (provisional) | `AZURE_OPENAI_API_KEY` and https `AZURE_OPENAI_ENDPOINT`. Optional `AZURE_OPENAI_API_VERSION` and `AZURE_OPENAI_DEPLOYMENTS`. |
97
99
 
98
100
  Use `/credentials` later to replace or remove a saved key. `zhivex-code doctor` reports whether a credential is present. It does not call the provider.
99
101
 
@@ -111,7 +113,7 @@ From a source checkout, `bun run demo:hostile` runs a reproducible hostile-repos
111
113
 
112
114
  ## Providers and platforms
113
115
 
114
- Release-gated providers are OpenAI, Qwen, and Meta. **Gemini, Anthropic, and Vertex are provisional**: the integrations exist, and they do not yet have the same end-to-end release evidence. Details: [support matrix](docs/SUPPORT_MATRIX.md), [Anthropic](docs/ANTHROPIC.md), [Vertex](docs/VERTEX.md).
116
+ Release-gated providers are OpenAI, Qwen, and Meta. **Gemini, Anthropic, Vertex, Amazon Bedrock, and Azure OpenAI are provisional**: the integrations exist, and they do not yet have the same end-to-end release evidence. Details: [support matrix](docs/SUPPORT_MATRIX.md), [Anthropic](docs/ANTHROPIC.md), [Vertex](docs/VERTEX.md), [Bedrock](docs/BEDROCK.md), [Azure OpenAI](docs/AZURE_OPENAI.md).
115
117
 
116
118
  | Area | Status |
117
119
  | --- | --- |
@@ -148,8 +150,8 @@ Contracts, stability tiers, and the experimental ACP and MCP entry points are in
148
150
 
149
151
  ## Documentation
150
152
 
151
- - **Using Code:** [Code package notes](https://github.com/Zhivex/zhivex-harness/blob/main/packages/code/README.md), [first use](docs/FIRST_USE.md), [daily workflow](docs/CLI.md#interactive-daily-workflow), [usage reference](docs/USAGE.md).
152
- - **Integrating Harness:** [engine API](docs/ENGINE_API.md), [CLI contracts](docs/CLI.md), [extensibility](docs/EXTENSIBILITY.md), [API stability](docs/STABILITY.md).
153
+ - **Using Code:** [Code package notes](https://github.com/Zhivex/zhivex-harness/blob/main/packages/code/README.md), [first use](docs/FIRST_USE.md), [daily workflow](docs/CLI.md#interactive-daily-workflow), [usage reference](docs/USAGE.md), [Code web tasks](docs/CODE_WEB_TASKS.md).
154
+ - **Integrating Harness:** [engine API](docs/ENGINE_API.md), [CLI contracts](docs/CLI.md), [experimental task projection](docs/CLIENT_PROTOCOL.md#task-projection-v1-har-hu-73), [extensibility](docs/EXTENSIBILITY.md), [API stability](docs/STABILITY.md).
153
155
  - **Limits:** [support matrix](docs/SUPPORT_MATRIX.md), [security policy](SECURITY.md).
154
156
  - **Contributing:** [development](https://github.com/Zhivex/zhivex-harness/blob/main/CONTRIBUTING.md) and [maintenance](https://github.com/Zhivex/zhivex-harness/blob/main/docs/MAINTENANCE.md).
155
157
 
@@ -157,6 +159,6 @@ Contracts, stability tiers, and the experimental ACP and MCP entry points are in
157
159
 
158
160
  ## Releases
159
161
 
160
- Version `1.3.0` is the current public npm release. The paired Code package on npm `latest` is `0.2.0`. This checkout prepares Version `1.4.0` and Code `0.3.0` for `latest`. That publication is pending, so 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.
162
+ Version `1.4.1` is the current public npm release. The paired Code package on npm `latest` is `0.3.2`. This checkout prepares Version `1.5.0` and Code `0.4.0` for `latest`. That publication is pending, so 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.
161
163
 
162
164
  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
@@ -1,6 +1,6 @@
1
1
  # Support
2
2
 
3
- Zhivex Harness `1.3.x` is the latest supported Node-first CLI and TypeScript library. Stable 1.x contracts follow [the stability policy](./docs/STABILITY.md); incompatible changes require a major release except documented urgent security corrections. Beta and experimental surfaces retain their declared policies. The mutable machine-readable `release-status.json` record records the verified 1.3.0 publication. Harness 1.4.0 and Code 0.3.0 are prepared for latest but remain pending their protected workflows. Harness 1.3.0 and Code 0.2.0 stay the published latest packages.
3
+ Zhivex Harness `1.3.x` is the latest supported Node-first CLI and TypeScript library. Stable 1.x contracts follow [the stability policy](./docs/STABILITY.md); incompatible changes require a major release except documented urgent security corrections. Beta and experimental surfaces retain their declared policies. The mutable machine-readable `release-status.json` record records the verified 1.3.0 publication. Harness 1.4.1 and Code 0.3.1 are prepared for latest but remain pending their protected workflows. Harness 1.3.0 and Code 0.2.0 stay the published latest packages.
4
4
 
5
5
  The 1.1 support scope is tracked in the [machine-readable support matrix](./docs/support-matrix-1.1.json) and its [human-readable view](./docs/SUPPORT_MATRIX_1_1.md). The [1.0 matrix](./docs/SUPPORT_MATRIX.md) remains historical. Compatibility and removals follow [DEPRECATIONS.md](./docs/DEPRECATIONS.md) for the published 1.x line.
6
6
 
@@ -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.3.x and Code 0.2.x are the supported stable lines until 1.4.0 and Code 0.3.0 complete verified publication. 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).
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.3.x and Code 0.2.x are the supported stable lines until 1.5.0 and Code 0.4.0 complete verified publication. 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