@kodax-ai/kodax 0.7.97-alpha.1 → 0.7.97-alpha.11
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 +400 -0
- package/README.md +199 -45
- package/README_CN.md +138 -29
- package/config-templates/config.example.jsonc +2 -4
- package/dist/artifacts/LICENSE +158 -0
- package/dist/artifacts/dist/browser.d.ts +3 -0
- package/dist/artifacts/dist/browser.js +33 -0
- package/dist/artifacts/dist/browser.js.map +1 -0
- package/dist/artifacts/dist/client.d.ts +4 -0
- package/dist/artifacts/dist/client.js +87 -0
- package/dist/artifacts/dist/client.js.map +1 -0
- package/dist/artifacts/dist/contract.d.ts +14 -0
- package/dist/artifacts/dist/contract.js +289 -0
- package/dist/artifacts/dist/contract.js.map +1 -0
- package/dist/artifacts/dist/document-render.d.ts +12 -0
- package/dist/artifacts/dist/document-render.js +109 -0
- package/dist/artifacts/dist/document-render.js.map +1 -0
- package/dist/artifacts/dist/docx.browser.js +77 -0
- package/dist/artifacts/dist/evidence-files.d.ts +5 -0
- package/dist/artifacts/dist/evidence-files.js +54 -0
- package/dist/artifacts/dist/evidence-files.js.map +1 -0
- package/dist/artifacts/dist/evidence.d.ts +6 -0
- package/dist/artifacts/dist/evidence.js +84 -0
- package/dist/artifacts/dist/evidence.js.map +1 -0
- package/dist/artifacts/dist/files.d.ts +9 -0
- package/dist/artifacts/dist/files.js +115 -0
- package/dist/artifacts/dist/files.js.map +1 -0
- package/dist/artifacts/dist/formats.d.ts +2 -0
- package/dist/artifacts/dist/formats.js +29 -0
- package/dist/artifacts/dist/formats.js.map +1 -0
- package/dist/artifacts/dist/identity.d.ts +4 -0
- package/dist/artifacts/dist/identity.js +18 -0
- package/dist/artifacts/dist/identity.js.map +1 -0
- package/dist/artifacts/dist/image-data.d.ts +3 -0
- package/dist/artifacts/dist/image-data.js +18 -0
- package/dist/artifacts/dist/image-data.js.map +1 -0
- package/dist/artifacts/dist/index.d.ts +4 -0
- package/dist/artifacts/dist/index.js +4 -0
- package/dist/artifacts/dist/index.js.map +1 -0
- package/dist/artifacts/dist/kodax.d.ts +9 -0
- package/dist/artifacts/dist/kodax.js +88 -0
- package/dist/artifacts/dist/kodax.js.map +1 -0
- package/dist/artifacts/dist/libreoffice.d.ts +6 -0
- package/dist/artifacts/dist/libreoffice.js +25 -0
- package/dist/artifacts/dist/libreoffice.js.map +1 -0
- package/dist/artifacts/dist/pixels.d.ts +4 -0
- package/dist/artifacts/dist/pixels.js +13 -0
- package/dist/artifacts/dist/pixels.js.map +1 -0
- package/dist/artifacts/dist/prepare.d.ts +4 -0
- package/dist/artifacts/dist/prepare.js +30 -0
- package/dist/artifacts/dist/prepare.js.map +1 -0
- package/dist/artifacts/dist/presentation.d.ts +11 -0
- package/dist/artifacts/dist/presentation.js +222 -0
- package/dist/artifacts/dist/presentation.js.map +1 -0
- package/dist/artifacts/dist/render.d.ts +22 -0
- package/dist/artifacts/dist/render.js +186 -0
- package/dist/artifacts/dist/render.js.map +1 -0
- package/dist/artifacts/dist/runtime-entry.d.ts +1 -0
- package/dist/artifacts/dist/runtime-entry.js +37 -0
- package/dist/artifacts/dist/runtime-entry.js.map +1 -0
- package/dist/artifacts/dist/runtime.d.ts +11 -0
- package/dist/artifacts/dist/runtime.js +143 -0
- package/dist/artifacts/dist/runtime.js.map +1 -0
- package/dist/artifacts/dist/sdk.d.ts +114 -0
- package/dist/artifacts/dist/sdk.js +26 -0
- package/dist/artifacts/dist/sdk.js.map +1 -0
- package/dist/artifacts/dist/types.d.ts +285 -0
- package/dist/artifacts/dist/types.js +2 -0
- package/dist/artifacts/dist/types.js.map +1 -0
- package/dist/artifacts/dist/web-render.d.ts +3 -0
- package/dist/artifacts/dist/web-render.js +143 -0
- package/dist/artifacts/dist/web-render.js.map +1 -0
- package/dist/artifacts/skills/artifact-review/SKILL.md +53 -0
- package/dist/builtin/code-review/SKILL.md +5 -17
- package/dist/builtin/git-workflow/SKILL.md +9 -8
- package/dist/builtin/skill-creator/SKILL.md +38 -108
- package/dist/builtin/skill-creator/references/evaluation.md +50 -0
- package/dist/builtin/skill-creator/scripts/run-eval.js +3 -3
- package/dist/builtin/skill-creator/scripts/run-loop.js +2 -1
- package/dist/builtin/skill-creator/scripts/run-trigger-eval.d.ts +2 -0
- package/dist/builtin/skill-creator/scripts/run-trigger-eval.js +3 -1
- package/dist/builtin/skill-creator/scripts/utils.js +8 -0
- package/dist/builtin/tdd/SKILL.md +24 -40
- package/dist/builtin/visual-review/SKILL.md +84 -0
- package/dist/chunks/agent-C4QJRI2R.js +2 -0
- package/dist/chunks/agent-adapter-ZUBK5QZX.js +2 -0
- package/dist/chunks/argument-completer-VODW2G5C.js +2 -0
- package/dist/chunks/cell-JM7Z7IL4.js +2 -0
- package/dist/chunks/chunk-22UAAJCB.js +259 -0
- package/dist/chunks/{chunk-LGX7WSRT.js → chunk-4MZEUECQ.js} +1 -1
- package/dist/chunks/chunk-6Z63HHR2.js +10 -0
- package/dist/chunks/chunk-76UPX4CI.js +14 -0
- package/dist/chunks/{chunk-NZYG3D5W.js → chunk-7FQJ7PE6.js} +1 -1
- package/dist/chunks/chunk-7PBG4SST.js +137 -0
- package/dist/chunks/chunk-CFGJS457.js +633 -0
- package/dist/chunks/{chunk-O7VU62ZF.js → chunk-CIIPF3TS.js} +1 -1
- package/dist/chunks/chunk-DOKPC4RS.js +5 -0
- package/dist/chunks/{chunk-2OL4I5TF.js → chunk-DOO4VVA5.js} +1 -1
- package/dist/chunks/chunk-E2ZROK4I.js +2 -0
- package/dist/chunks/chunk-EGVAVI6U.js +2 -0
- package/dist/chunks/chunk-EXAZEV56.js +2 -0
- package/dist/chunks/chunk-FPUEDGGU.js +500 -0
- package/dist/chunks/{chunk-KKTVO3ZN.js → chunk-HAGF25HA.js} +11 -11
- package/dist/chunks/chunk-HFJ2KSHV.js +5 -0
- package/dist/chunks/chunk-HKN6ZIXI.js +408 -0
- package/dist/chunks/chunk-IL5AAIGK.js +2 -0
- package/dist/chunks/{chunk-OIJYHVTO.js → chunk-KI3TUCEE.js} +1 -1
- package/dist/chunks/chunk-LXSXL4DB.js +448 -0
- package/dist/chunks/chunk-MZ44IR3J.js +2 -0
- package/dist/chunks/chunk-N2MPJVHA.js +12 -0
- package/dist/chunks/chunk-NBKSCESR.js +29 -0
- package/dist/chunks/{chunk-A26WXO3D.js → chunk-NMRBY4TS.js} +1 -1
- package/dist/chunks/chunk-OXXWTARH.js +351 -0
- package/dist/chunks/{chunk-LIWLDMWE.js → chunk-QRIBGJLE.js} +1 -1
- package/dist/chunks/chunk-QVMFYZOS.js +2 -0
- package/dist/chunks/chunk-UFWK2OOJ.js +1119 -0
- package/dist/chunks/chunk-ULA453FO.js +362 -0
- package/dist/chunks/chunk-USAJGDW3.js +42 -0
- package/dist/chunks/chunk-VA5GQNHW.js +365 -0
- package/dist/chunks/chunk-W5LXBBFR.js +9 -0
- package/dist/chunks/{chunk-JLZUOLEL.js → chunk-XYYFVN3S.js} +1 -1
- package/dist/chunks/client-IRMZJ3B5.js +2 -0
- package/dist/chunks/compaction-config-WWWEV7KG.js +2 -0
- package/dist/chunks/{construction-bootstrap-IOWLYAWA.js → construction-bootstrap-SHGJLW3H.js} +1 -1
- package/dist/chunks/dist-OZQCZUII.js +2 -0
- package/dist/chunks/dist-YNYHK6HX.js +2 -0
- package/dist/chunks/host-Q4CZDQFX.js +2 -0
- package/dist/chunks/model-6WXAASYQ.js +2 -0
- package/dist/chunks/readline-helpers-ACZ24UPE.js +2 -0
- package/dist/chunks/run-manager-2FHS7A5M.js +2 -0
- package/dist/chunks/running-session-JUSIVRWI.js +2 -0
- package/dist/chunks/skills-I4D7CLUH.js +2 -0
- package/dist/chunks/tool-dispatch-AJ7U2PQX.js +2 -0
- package/dist/chunks/utils-B4GWG4UV.js +2 -0
- package/dist/index.d.ts +31 -28
- package/dist/index.js +2 -2
- package/dist/kodax_bootstrap.js +4 -2
- package/dist/kodax_cli.js +1741 -1705
- package/dist/kodax_resume.js +32 -32
- package/dist/native/win32-x64/kodax-windows-sandbox.exe +0 -0
- package/dist/native/win32-x64/kodax-windows-text-transaction.node +0 -0
- package/dist/native/win32-x64/manifest.json +2 -2
- package/dist/provider-capabilities.json +495 -29
- package/dist/sandbox-network-broker.js +236 -227
- package/dist/script-cell.js +8 -0
- package/dist/script-worker.cjs +2166 -0
- package/dist/sdk-a2a.d.ts +22 -19
- package/dist/sdk-a2a.js +2 -2
- package/dist/sdk-agent.d.ts +39 -56
- package/dist/sdk-agent.js +1 -1
- package/dist/sdk-client.d.ts +23 -7
- package/dist/sdk-client.js +1 -1
- package/dist/sdk-coding.d.ts +69 -438
- package/dist/sdk-coding.js +1 -1
- package/dist/sdk-experimental-memory.d.ts +3 -3
- package/dist/sdk-experimental-memory.js +1 -1
- package/dist/sdk-llm.d.ts +11 -9
- package/dist/sdk-llm.js +1 -1
- package/dist/sdk-mcp.d.ts +4 -4
- package/dist/sdk-mcp.js +1 -1
- package/dist/sdk-media.d.ts +1 -1
- package/dist/sdk-media.js +1 -1
- package/dist/sdk-repl.d.ts +28 -35
- package/dist/sdk-repl.js +1 -1
- package/dist/sdk-runtime.d.ts +147 -152
- package/dist/sdk-runtime.js +1 -1
- package/dist/sdk-sandbox.js +1 -1
- package/dist/sdk-session.d.ts +15 -12
- package/dist/sdk-session.js +1 -1
- package/dist/sdk-skills.d.ts +2 -2
- package/dist/sdk-skills.js +1 -1
- package/dist/semantic-worker.js +84 -75
- package/dist/types-chunks/{base.d-Dz_g7CUo.d.ts → base.d-51ikkF5c.d.ts} +2 -1
- package/dist/types-chunks/{bash-prefix-extractor.d-BhFz5sIp.d.ts → bash-prefix-extractor.d-BDunA1bO.d.ts} +138 -202
- package/dist/types-chunks/{capability-learning.d-B4pxKwP4.d.ts → capability-learning.d-BckMZRgz.d.ts} +1 -1
- package/dist/types-chunks/{capability.d-DOF3r0fJ.d.ts → capability.d-N5ulMiTc.d.ts} +1 -1
- package/dist/types-chunks/{capsule.d-DhXy_i0g.d.ts → capsule.d-CWeFKL2e.d.ts} +5 -5
- package/dist/types-chunks/{client-contract-DYkkBxuz.d.ts → client-contract-CenyRbib.d.ts} +305 -45
- package/dist/types-chunks/{controller.d-CA7iiSfI.d.ts → controller.d-BFi6Gc2Q.d.ts} +70 -7
- package/dist/types-chunks/{controller.d-BkUJ_3sl.d.ts → controller.d-Bs6MEu9T.d.ts} +1 -1
- package/dist/types-chunks/{cost-tracker.d-BWI4lFWn.d.ts → cost-tracker.d-BeaenODW.d.ts} +2 -47
- package/dist/types-chunks/{history-retrieval.d-JdFfkeF3.d.ts → history-retrieval.d-nDle7ZMT.d.ts} +2 -2
- package/dist/types-chunks/{manager.d-C_20XqCV.d.ts → manager.d-ByXdsxIK.d.ts} +6 -2
- package/dist/types-chunks/{manifest.d-Bw2i-zQi.d.ts → manifest.d-BM3wjQP3.d.ts} +1 -1
- package/dist/types-chunks/{oauth-login.d-6i-vidxv.d.ts → oauth-login.d-DsvsksTD.d.ts} +2 -0
- package/dist/types-chunks/provider-credential-context.d-BH2OaB1b.d.ts +47 -0
- package/dist/types-chunks/provider-request-observation.d-DCimKZJv.d.ts +38 -0
- package/dist/types-chunks/{public-api.d-CofjXB_K.d.ts → public-api.d-BqfXQREc.d.ts} +31 -13
- package/dist/types-chunks/{resolver.d-BMoO2VPt.d.ts → resolver.d-CBIllMab.d.ts} +4 -2
- package/dist/types-chunks/{review-inbox.d-BeaLRNHx.d.ts → review-inbox.d-CBWZZaKk.d.ts} +12 -1
- package/dist/types-chunks/{review-packet.d-BskpQxDZ.d.ts → review-packet.d-DJ4cvofA.d.ts} +1 -1
- package/dist/types-chunks/{run-manager.d-BrVCxHum.d.ts → run-manager.d-C7orI9Dw.d.ts} +40 -10
- package/dist/types-chunks/runtime-client-info-vWqPfxSv.d.ts +190 -0
- package/dist/types-chunks/{sdk-session-BjZqSlA-.d.ts → sdk-session-B-qxkrFY.d.ts} +13 -12
- package/dist/types-chunks/{sdk-skills-DokfOoJF.d.ts → sdk-skills-C-UA1A6I.d.ts} +3 -1
- package/dist/types-chunks/{side-query.d-DmOU7byC.d.ts → side-query.d-Bx8vNwmM.d.ts} +4 -3
- package/dist/types-chunks/{types.d-mlrvOZT1.d.ts → skill-invocation-error.d-Dr9SQHBj.d.ts} +20 -31
- package/dist/types-chunks/task-results.d-sGVm9DYX.d.ts +15 -0
- package/dist/types-chunks/{trusted-repl-entry-C7tjze05.d.ts → trusted-repl-entry-CSO88d7v.d.ts} +14 -10
- package/dist/types-chunks/{types.d-o7t9dds4.d.ts → types.d-C1Nptcqo.d.ts} +22 -13
- package/dist/types-chunks/{types.d-Cb8RdrjU.d.ts → types.d-D8qQjMeo.d.ts} +5 -1
- package/dist/types-chunks/{types.d-BjOq57-z.d.ts → types.d-zkw4VJ8r.d.ts} +1 -1
- package/dist/types-chunks/{utils.d-Bi-i7O5D.d.ts → utils.d-hrtd99Wk.d.ts} +9 -18
- package/docs/ARTIFACT_SDK.md +261 -0
- package/docs/CLIENT_CONTRACT.md +139 -10
- package/docs/SDK_MIGRATION.md +112 -2
- package/docs/SPACE_SDK_SEAMS.md +364 -0
- package/package.json +32 -4
- package/public_docs/README.md +18 -2
- package/public_docs/configuration/config-files.md +6 -0
- package/public_docs/configuration/providers.md +213 -3
- package/public_docs/configuration/sandbox.md +8 -0
- package/public_docs/getting-started/overview.md +1 -1
- package/public_docs/getting-started/quickstart.md +10 -1
- package/public_docs/sdk/embedder-guide.md +404 -66
- package/dist/chunks/agent-KDEZEKHT.js +0 -2
- package/dist/chunks/argument-completer-S6XK5OQA.js +0 -2
- package/dist/chunks/chunk-27NV62CK.js +0 -2
- package/dist/chunks/chunk-3IXRUVY7.js +0 -5
- package/dist/chunks/chunk-3M5335DB.js +0 -22
- package/dist/chunks/chunk-75IELO25.js +0 -137
- package/dist/chunks/chunk-7TYV3YFX.js +0 -261
- package/dist/chunks/chunk-AWHU6MSJ.js +0 -1478
- package/dist/chunks/chunk-EIWAATQU.js +0 -355
- package/dist/chunks/chunk-H2KGA4NZ.js +0 -641
- package/dist/chunks/chunk-K4Z7DWSV.js +0 -2
- package/dist/chunks/chunk-LDCEV5QA.js +0 -2
- package/dist/chunks/chunk-NNB6AZSC.js +0 -372
- package/dist/chunks/chunk-SKSS6TDQ.js +0 -498
- package/dist/chunks/chunk-W7W2XKJC.js +0 -417
- package/dist/chunks/chunk-YOKMTTLR.js +0 -473
- package/dist/chunks/client-2UJ3ESQU.js +0 -2
- package/dist/chunks/compaction-config-WQ7SKQYF.js +0 -2
- package/dist/chunks/dist-5Z6YN7Z6.js +0 -2
- package/dist/chunks/dist-YWAVSU65.js +0 -2
- package/dist/chunks/host-ELUUZWI4.js +0 -2
- package/dist/chunks/readline-helpers-ONOPF5J5.js +0 -2
- package/dist/chunks/run-manager-7INNATMJ.js +0 -2
- package/dist/chunks/utils-HFKMRP34.js +0 -2
- package/dist/types-chunks/runtime-client-info-DE3G2vWa.d.ts +0 -15
package/CHANGELOG.md
CHANGED
|
@@ -8,6 +8,406 @@ All notable changes to this project will be documented in this file.
|
|
|
8
8
|
|
|
9
9
|
---
|
|
10
10
|
|
|
11
|
+
## [0.7.97-alpha.11] - 2026-10-29
|
|
12
|
+
|
|
13
|
+
### Added
|
|
14
|
+
|
|
15
|
+
- Add explicit Agent, Coding and experimental Script work modes through the
|
|
16
|
+
CLI, interactive `/work-mode` command and managed SDK/Session paths. Coding
|
|
17
|
+
remains the default. Script executes supported leaf tools through the existing
|
|
18
|
+
permission and receipt boundaries; SDK profiles and specialist agents retain
|
|
19
|
+
their declared capabilities.
|
|
20
|
+
|
|
21
|
+
- Refresh Ark, MiMo and MiniMax model catalogs and their reasoning/capacity
|
|
22
|
+
metadata. Provider-specific mappings and validation limits are documented in
|
|
23
|
+
the provider configuration guide.
|
|
24
|
+
|
|
25
|
+
### Fixed
|
|
26
|
+
|
|
27
|
+
- Run release builds alongside full CI while retaining all publication gates;
|
|
28
|
+
move the complete serial Node 20 system suite to its own runner, validate
|
|
29
|
+
archives before lengthy Electron checks, and bound bundle/archive execution
|
|
30
|
+
with retained failure evidence. Ordinary branch pushes still do not trigger CI.
|
|
31
|
+
- Preserve the Windows PowerShell module search path in isolated archive tests,
|
|
32
|
+
avoiding stalled OS containment probes. Reject unverified supervised Hosts
|
|
33
|
+
before publishing incomplete capabilities and a misleading upgrade error.
|
|
34
|
+
|
|
35
|
+
- Align current SDK, Client, design and user documentation with post-alpha.10
|
|
36
|
+
work modes, question deadlines, saved tool originals, structured task reports
|
|
37
|
+
and streaming token estimates; retain historical release/validation limits.
|
|
38
|
+
|
|
39
|
+
- Preserve non-interactive question outcomes through the REPL client and reject
|
|
40
|
+
client-supplied timeout answers before daemon submission; the Host owns deadlines.
|
|
41
|
+
- Constrain Skill `Bash(pattern)` rules to a single parsed command, preventing
|
|
42
|
+
wildcard matches from admitting additional shell statements, pipelines,
|
|
43
|
+
redirects or command substitutions. Bare Bash and absent Skill restrictions
|
|
44
|
+
continue through normal Host authorization.
|
|
45
|
+
- Correct Windows stale-process recovery startup overhead and history browsing
|
|
46
|
+
cursor resynchronization; validate sandbox filesystem capabilities at startup.
|
|
47
|
+
Historical intermittent first-read latency remains under investigation.
|
|
48
|
+
- Display estimated tokens consistently across model streaming progress surfaces.
|
|
49
|
+
|
|
50
|
+
- Project existing task-result metadata into Product live views and recovered
|
|
51
|
+
history with explicit source, task identity, terminal/unknown status and
|
|
52
|
+
Markdown report bodies. Preserve multi-report order, literal report content,
|
|
53
|
+
existing full-body reads and raw canonical envelopes; decode only explicitly
|
|
54
|
+
sourced legacy deliveries and keep child failures separate from root Provider
|
|
55
|
+
errors. Deduplicate only identified task-message mirrors; preserve independent
|
|
56
|
+
same-text notices and ambiguous old UI records during history restoration.
|
|
57
|
+
|
|
58
|
+
- Keep Skill discovery rooted at the repository when the SDK runs from a
|
|
59
|
+
subdirectory, synchronize catalogs with loader availability in SA/AMA, and
|
|
60
|
+
invalidate stale bodies across rediscovery and in-flight reads. Model loads
|
|
61
|
+
now apply the existing Skill action policies, lifecycle hooks and model
|
|
62
|
+
preference, retaining Host authorization and safe multi-Skill composition.
|
|
63
|
+
|
|
64
|
+
- Preserve complete MCP tool output behind explicit SDK `part: 'original'`
|
|
65
|
+
reads, including daemon IPC and Host restart, while retaining existing preview
|
|
66
|
+
offsets. Keep results inline when recovery cannot be read, improve long JSON
|
|
67
|
+
previews, and stop Session-local automatic cleanup from deleting shared output
|
|
68
|
+
artifacts. Add simulated-provider/MCP E2E coverage against the built SDK.
|
|
69
|
+
|
|
70
|
+
---
|
|
71
|
+
|
|
72
|
+
## [0.7.97-alpha.10] - 2026-10-27
|
|
73
|
+
|
|
74
|
+
Tenth alpha of the v0.7.97 line: live context-capacity recovery reaches
|
|
75
|
+
durable generation boundaries — checkpointed Runs and task trees resume
|
|
76
|
+
after Host restart with fresh scoped authority, Kimi K3.1 routes join the
|
|
77
|
+
provider registry with full effort coverage, and AskUser interactions gain
|
|
78
|
+
answer-aware policies with explicit skip semantics. Every v0.7.96 stable
|
|
79
|
+
and v0.7.97-alpha.1 through alpha.9 contract is retained. npm publication
|
|
80
|
+
remains a manual maintainer action.
|
|
81
|
+
|
|
82
|
+
### Added
|
|
83
|
+
|
|
84
|
+
- Forward actual Host initialization phases through the existing SDK startup callback and CLI indicator, including MCP prewarm and task recovery; reuse bounded bootstrap-log observation without extra readiness probes or waits.
|
|
85
|
+
- Kimi K3.1 provider routes: all seven user effort levels map through the Anthropic-compatible endpoint exactly like the official Kimi client (explicit thinking enablement plus output_config effort), with live subscription results, inconclusive high self-reports, and the public account balance limitation documented.
|
|
86
|
+
|
|
87
|
+
### Fixed
|
|
88
|
+
|
|
89
|
+
- Repair bundled Skill shell declarations against the full-command glob contract while retaining Host authorization; make Git/TDD discoverable, separate tests-only and Skill creation/packaging/evaluation flows, and align visual preparation and unverified fallbacks. Skill Creator helpers now resolve public Skill SDK exports in installed tarballs and create fresh description-loop workspaces; semantic-screening output no longer implies observed model selection.
|
|
90
|
+
- Classify trusted Skill loading and policy restoration failures as local execution failures with stable codes and path-safe Skill messages; preserve the facts through Runtime persistence, daemon IPC and Product Client outcomes without weakening trusted reloads or changing Provider error classification.
|
|
91
|
+
- Resume checkpointed Runs and task trees after Host restart: original history, tool receipts, pending input intent and iteration budgets are preserved across independent child and Host recovery; scoped authority rebinds freshly, suspended worktrees stay protected, and bounded verbatim constraint memory retains oversized requests (Issue 322 follow-up).
|
|
92
|
+
- Converge client exit recovery without rewriting unknown outcomes: startup readiness is separated from historical client cleanup acknowledgements, exact Host/process/Job shutdown evidence is reverified, referenced outcomes are retained with late cleanup results preserved, and old exit requests can no longer fence or stop replacement Hosts.
|
|
93
|
+
- Preserve non-interactive question settlement in one-shot CLI: report normal `unanswered/non_interactive` results without default answers or Run interruption, retain MCP protocol cancellation and independent permission rejection, and update the adjacent regression assertions.
|
|
94
|
+
- Close adjacent question/restart regressions: retain checkpoints on unanswered recovery prompts, cancel unanswered MCP confirmation/URL requests, preserve UI callback errors through the SDK MCP bridge for protocol cancellation, surface ordinary prompt callback errors without overriding prior settlements, scope client Stop intent to its exact Run, and persist thread concurrency limits. Expose the existing new-Host question deadline through the Product launcher; repair classic assertions and capacity-test cleanup.
|
|
95
|
+
- Honor a partially delivered durable Session Stop during Root/Actor generation recovery; its original request can finish through verified dead-owner checkpoint Stop takeover, while later Runs remain outside the old frontier.
|
|
96
|
+
|
|
97
|
+
- Preserve prior summary failures when an irreducibly oversized user input
|
|
98
|
+
needs request-only degradation (Issue 322). Single-agent and managed
|
|
99
|
+
compaction no longer reset the breaker on an oversized partial result;
|
|
100
|
+
the single-agent capacity-error branch also retains its prior count.
|
|
101
|
+
Ordinary failures still accumulate, successful relief still rearms the
|
|
102
|
+
breaker, and oversized inputs retain their bounded recovery attempt. String
|
|
103
|
+
and mixed text/image user messages share this behavior; images and tool
|
|
104
|
+
receipts cannot independently qualify as irreducible user text.
|
|
105
|
+
|
|
106
|
+
- Extend live context-capacity recovery with retrievable older assistant history,
|
|
107
|
+
cumulative request-only user-text paging (including mixed image messages),
|
|
108
|
+
budgeted runtime provenance, small-window safety accounting, and emergency
|
|
109
|
+
schema discovery through the existing tool bridge. Preserve protected tools,
|
|
110
|
+
canonical user messages, and completed execution receipts; paging requires an
|
|
111
|
+
authorized read capability and readable saved artifacts.
|
|
112
|
+
- Retry rejected generations only after measured request reduction (at most four
|
|
113
|
+
recovery retries). A Host can save the transcript and wait in `recovering`, then
|
|
114
|
+
continue the same execution when model settings change or corrective input arrives.
|
|
115
|
+
Stop cancels the wait; the independent SDK keeps typed failure semantics unless
|
|
116
|
+
its caller supplies the recovery callback. Automatic continuation after Host death
|
|
117
|
+
or expired credential authority is not included.
|
|
118
|
+
- Retry transient context-history and artifact I/O with cancellable backoff. Read
|
|
119
|
+
back a failed save acknowledgement before retrying, preserving newer metadata
|
|
120
|
+
and avoiding duplicate history transactions; permission failures still surface.
|
|
121
|
+
|
|
122
|
+
- Keep the natural-eval fixture's `npm test` working on staged Node installs by
|
|
123
|
+
allowing reads of an npm CLI installed outside the binary directory, and
|
|
124
|
+
canonicalize the native test fixture root so hosted-runner 8.3 temp paths
|
|
125
|
+
(`RUNNER~1`) are not rejected by the native path policy.
|
|
126
|
+
- Keep eval dump directories and unrelated `kodax-eval-*` directories out of orphan
|
|
127
|
+
worktree cleanup. Require a worktree gitfile and successful Git-owned removal;
|
|
128
|
+
isolate the cleanup regression from the shared system temporary directory.
|
|
129
|
+
- AskUser questions wait indefinitely by default (timeout 0) and support explicit skip; skip and Host timeout return an `unanswered` result with its reason instead of cancelling the Run, defaults are never submitted automatically, and only Stop interrupts. Permission prompts keep their five-minute default; both accept 0 to disable their timer. MCP reverse elicitation and the client plane follow the same policy.
|
|
130
|
+
- Close the A2A server task store when agent-card validation fails during
|
|
131
|
+
construction, so a rejected server no longer leaks its data-dir lock handle;
|
|
132
|
+
on Windows the leaked handle kept the data dir undeletable (`ENOTEMPTY`)
|
|
133
|
+
for the life of the process.
|
|
134
|
+
- Deliver observation handoff events to event-stream observers. Daemon
|
|
135
|
+
`session.observe` subscribers never read the snapshot, so events published
|
|
136
|
+
while the snapshot materialized were silently deduplicated away whenever the
|
|
137
|
+
snapshot's seq raced past them — a late `run.failed` could be lost forever.
|
|
138
|
+
Snapshot consumers keep the existing no-duplicates handoff contract.
|
|
139
|
+
|
|
140
|
+
---
|
|
141
|
+
|
|
142
|
+
## [0.7.97-alpha.9] - 2026-10-19
|
|
143
|
+
|
|
144
|
+
Ninth alpha of the v0.7.97 line: shared Host Run inspection checks Session
|
|
145
|
+
admission through canonical identity metadata instead of loading complete
|
|
146
|
+
historical transcripts, so a readable metadata header with an unreadable
|
|
147
|
+
body (for example a Windows ERROR_CRC surfacing as EIO) no longer blocks
|
|
148
|
+
unrelated Run listing, daemon inspection, or idle-exit inspection; admission
|
|
149
|
+
reuse is fenced to initialized Actor controllers so live persistence,
|
|
150
|
+
trailing saves, and `protected` exit receipts for other clients' work are
|
|
151
|
+
preserved. Every
|
|
152
|
+
v0.7.96 stable and v0.7.97-alpha.1 through alpha.8 contract is retained.
|
|
153
|
+
npm publication remains a manual maintainer action.
|
|
154
|
+
|
|
155
|
+
### Fixed
|
|
156
|
+
|
|
157
|
+
- Shared Host Run inspection now checks Session admission through canonical identity metadata instead of loading complete historical transcripts. A readable metadata header with an unreadable body no longer blocks unrelated Run listing, daemon inspection, or idle-exit inspection. Unreadable metadata still fails closed, active/unknown Runs and Actor turns still block exit, and explicitly opening the affected Session still reports its read error.
|
|
158
|
+
- Shared Host Run listing and inspection reuse Session admission only for initialized Actor controllers that still hold their owner fence, matching Actor preflight. This avoids racing live persistence, including trailing saves after Run completion, preserves `protected` exit receipts for other clients' work, and retains strict canonical metadata checks for unclaimed Sessions and after controller ownership is released.
|
|
159
|
+
|
|
160
|
+
---
|
|
161
|
+
|
|
162
|
+
## [0.7.97-alpha.8] - 2026-10-18
|
|
163
|
+
|
|
164
|
+
Eighth alpha of the v0.7.97 line: the Artifact SDK ships inside the single
|
|
165
|
+
main package — `@kodax-ai/kodax` gains `/artifacts`, `/artifacts/client`,
|
|
166
|
+
`/artifacts/runtime` and `/artifacts/kodax` subpath exports while the
|
|
167
|
+
workspace module turns private, its pinned dependencies declare in the root
|
|
168
|
+
package, and the declared Node floor advances to 20.16. Every v0.7.96
|
|
169
|
+
stable and v0.7.97-alpha.1 through alpha.7 contract is retained. npm
|
|
170
|
+
publication remains a manual maintainer action.
|
|
171
|
+
|
|
172
|
+
### Changed
|
|
173
|
+
|
|
174
|
+
- Single-package Artifact distribution: the main tarball stages the existing module/worker/resource layout under `dist/artifacts/`, the tarball audit validates every export/entry/dependency, the Release workflow runs an installed-package Artifact gate, and `release.mjs` rejects a separate `--artifacts` publication. There is no separate `@kodax-ai/artifacts` npm package. Core startup stays free of renderer loading and probes.
|
|
175
|
+
|
|
176
|
+
---
|
|
177
|
+
|
|
178
|
+
## [0.7.97-alpha.7] - 2026-10-16
|
|
179
|
+
|
|
180
|
+
Seventh alpha of the v0.7.97 line: shared-Session Host ownership resolves
|
|
181
|
+
across daemon profiles — launchers wait for a starting owner's verified
|
|
182
|
+
descriptor within the original startup deadline, reuse compatible Hosts
|
|
183
|
+
without restarting work, and permit only a guarded same-build orphan-exit
|
|
184
|
+
policy refresh — daemon startup and connection timeouts surface as
|
|
185
|
+
structured, retryable failures, idle interactive Hosts retire after a
|
|
186
|
+
bounded 30-second lifetime while explicit daemon/A2A service owners are
|
|
187
|
+
retained, and Windows SDK attachment reads targeted exact identities within
|
|
188
|
+
the original startup controls (Space #222). Every v0.7.96 stable and
|
|
189
|
+
v0.7.97-alpha.1 through alpha.6 contract is retained. npm publication
|
|
190
|
+
remains a manual maintainer action.
|
|
191
|
+
|
|
192
|
+
### Fixed
|
|
193
|
+
|
|
194
|
+
- Space Issue 222 CI regression: use one conservative process-liveness check for shared storage discovery, daemon health and verified exit, recognizing unreaped Linux zombies while retaining PID generation checks. Release temporary attachments and rediscover current ownership on bounded startup-only retries within the original deadline and cancellation signal; never replay accepted input or tool work. Gate the original crash cases and deterministic zombie/owner-handoff regressions on Linux Node 20/22 before release.
|
|
195
|
+
- Bound Windows startup cleanup of unverifiable historical child records: the automatic historical sweep keeps incomplete Run trees `unknown` instead of launching a PowerShell termination helper per unverified record — a helper storm that invalidated the shared process snapshot and made startup cost grow with history (24-record fixture: 11,069ms and 48 helpers before, 10ms and none after). Exact-handle Run recovery and verified live-descendant cleanup are preserved.
|
|
196
|
+
- Bound Windows SDK attachment work: fresh PID identity checks read targeted exact FILETIME identities instead of repeatedly scanning the full process table, initial Job ownership evidence is collected together, and the original startup deadline passes through readiness and attachment — expired startup stays an expired failure instead of misclassifying the launcher's own new Host as a competitor (nine isolated same-CPU callers reproduced the timeout and now pass without budget increases). Readiness keeps verified-owner status fresh after authenticated OS inspection, checks deadline/cancellation after final owner/build validation, and aborts pending socket/supervisor readiness through existing cleanup paths; discovery that has crossed its boundary no longer opens attachment leases, and the idle inspection cancels when clients attach.
|
|
197
|
+
- Recognize a starting daemon as an existing owner: a concurrent CLI start while initial A2A reconciliation holds the fence before `daemon.json` exists now reports `already_running` against the actual PID/runtimeId instead of claiming a second `started: true` Host.
|
|
198
|
+
- Retire idle interactive Hosts after the accepted 30-second CLI idle lifetime while retaining explicit services: daemon `start` and A2A-serving owners stay in place, explicit/service retention is authenticated separately from default SDK persistence, conflicting orphan-exit requirements are rejected before shutdown, persistent intent survives rebuild refresh, and configured services are re-evaluated in the replacement Host. Idle exit is fenced on pending memory/managed-task maintenance and unknown legacy startup intent; tracked background work blocks automatic idle exit (including the final draining check) without breaking cancellable explicit shutdown, review or compaction contracts; startup admission uses authenticated read-only checks off idle preflight scans without scanning Session history before any real client.
|
|
199
|
+
- Drain a Run queued after its predecessor finishes: admission can retain its queued decision across asynchronous journal binding while the active predecessor completes and drains an empty queue; the existing guarded drain now wakes after queue publication so the queued Run starts exactly once instead of stranding.
|
|
200
|
+
- Keep the preceding turn visible when submitting a new query in a restored Session with legacy display checkpoints. The Host retains its bounded 150-item tail instead of advancing to the next query and collapsing the entire view to the new input; canonical history, full-item reads and input/tool identities are preserved.
|
|
201
|
+
- Keep saved history readable when its final tool call has no result yet: reaching the end of a valid cached revision no longer reports a history-change conflict. Preserve canonical tool timestamps across observed and paged history, and show the session banner only at the beginning of saved history while browsing ordinary chat, avoiding banner flashes at intermediate page boundaries.
|
|
202
|
+
- Space Issue 222: resolve the daemon that owns the canonical Session directory across profiles before startup, and recheck ownership if a peer wins during bootstrap. Wait for a starting owner's descriptor within the original startup deadline and cancellation signal. Reuse compatible Hosts without restarting work. Permit guarded same-build orphan-exit policy refresh, retaining active-work preflight, exact owner identity and process-exit verification. Publish structured owner/profile and upgrade blocker diagnostics; mark transient blockers retryable.
|
|
203
|
+
- Add bundled real-process shared-Host recovery to the continuous `test:bundle` gate.
|
|
204
|
+
|
|
205
|
+
---
|
|
206
|
+
|
|
207
|
+
## [0.7.97-alpha.6] - 2026-10-15
|
|
208
|
+
|
|
209
|
+
Sixth alpha of the v0.7.97 line: shared-Host startup runs historical child
|
|
210
|
+
recovery once under the owner fences and projects canonical Actor metadata
|
|
211
|
+
during preflight, and `kodax -r`/Host/SDK Session lists order by genuine
|
|
212
|
+
recent message activity with an optional `lastMessageAt`. New REPL Sessions
|
|
213
|
+
stay Host-local drafts until their first accepted input is saved (Issue 368),
|
|
214
|
+
restored views preserve user image attachments, and concurrent resume
|
|
215
|
+
launchers recover from transient inspection conflicts while refreshing an
|
|
216
|
+
older Host (Issue 369). Every v0.7.96 stable and v0.7.97-alpha.1 through
|
|
217
|
+
alpha.5 contract is retained. npm publication remains a manual maintainer
|
|
218
|
+
action.
|
|
219
|
+
|
|
220
|
+
### Fixed
|
|
221
|
+
|
|
222
|
+
- Retry transient initialization and read-only inspection failures during concurrent CLI/SDK Host refresh after releasing temporary clients. Account for slow preflight duration in contention backoff, retain the original deadline, and never replay shutdown or business requests (Issue 369).
|
|
223
|
+
- Avoid repeated historical process sweeps during shared-Host startup and exit. Recover under the Host/storage owner fences, retain exact local-child final cleanup, batch Windows identity observations, and read canonical Actor metadata for preflight without materializing Session transcripts.
|
|
224
|
+
- Order `kodax -r`, Host and SDK Session lists by genuine recent message activity. Preserve creation time, compaction/fork provenance and metadata-only writes; expose optional `lastMessageAt`, retain creation-based `before`, and continue new cursors after anchor deletion or activity changes.
|
|
225
|
+
- Keep new REPL Sessions as Host-local drafts until the first accepted user input is saved. Preserve draft settings and Actor CAS in memory, avoid empty history records after exit or rejected input, and persist settings on admission. CLI requires `sessionDrafts:1`; explicit durable SDK creation keeps its existing semantics.
|
|
226
|
+
- Save initial draft inputs and settings before low-level Runs dispatch, preserve settings after restart, and reuse canonical inputs when retrying failed promotion instead of duplicating them.
|
|
227
|
+
- Declare `relationship_scan.depth` as an integer range from 1 to 3 for cross-protocol tool schema compatibility, preserving numeric inputs and stream completion checks.
|
|
228
|
+
- Preserve user image references when restoring canonical accepted inputs into the public Session view. Resolve attachments by the original inputId, retaining item identity, order and text, including repeated identical prompts with different images.
|
|
229
|
+
|
|
230
|
+
---
|
|
231
|
+
|
|
232
|
+
## [0.7.97-alpha.5] - 2026-10-13
|
|
233
|
+
|
|
234
|
+
Fifth alpha of the v0.7.97 line: FEATURE_301's unified Artifact SDK and
|
|
235
|
+
format backends ship — the `ArtifactExecutionPort` seam grows to nine
|
|
236
|
+
public operations with native PDF, exact PNG/JPEG/WebP/SVG, candidate DOCX
|
|
237
|
+
pagination, and local HTML/SMIL evidence over one execution port serving
|
|
238
|
+
independent Node and shared-Host clients — and busy daemon preflights are
|
|
239
|
+
bounded before redundant full state scans (Issue 367). Every v0.7.96
|
|
240
|
+
stable and v0.7.97-alpha.1 through alpha.4 contract is retained. npm
|
|
241
|
+
publication remains a manual maintainer action.
|
|
242
|
+
|
|
243
|
+
### Added
|
|
244
|
+
|
|
245
|
+
- Unified optional Artifact SDK (developed in `27d08788`): public
|
|
246
|
+
`prepare` and `readEvidence`, native PDF, exact PNG and JPEG/WebP/SVG evidence,
|
|
247
|
+
candidate DOCX pagination, local HTML loaded-view capture and SVG SMIL samples.
|
|
248
|
+
The same execution port serves independent Node and existing shared-Host clients.
|
|
249
|
+
|
|
250
|
+
### Changed
|
|
251
|
+
|
|
252
|
+
- Artifact contracts use content formats, structured capabilities, file/surface
|
|
253
|
+
provenance, kind-matched capture locators, PNG dimensions and paginated layout.
|
|
254
|
+
These pre-release changes have no legacy aliases. Shared-Host image bytes use
|
|
255
|
+
existing attachment reads; core startup does not load optional renderers.
|
|
256
|
+
- SDK, Client/Space integration, migration, architecture and feature documents
|
|
257
|
+
distinguish source support from released packages and evidence readiness from
|
|
258
|
+
visual approval. See [support and limits](docs/ARTIFACT_SDK.md).
|
|
259
|
+
|
|
260
|
+
### Fixed
|
|
261
|
+
|
|
262
|
+
- Mixed-size PDF viewport cropping, DOCX rendering without optional settings,
|
|
263
|
+
cross-bundle admitted fixed-argv authority and Host tool image attachment delivery.
|
|
264
|
+
- Daemon preflight rejects known in-flight mutations before redundant full state
|
|
265
|
+
scans, and reports the actual method/count using the existing shutdown fence
|
|
266
|
+
(Issue 367). A mutation beginning during a read also stops further scans;
|
|
267
|
+
busy work is never treated as safe to stop.
|
|
268
|
+
|
|
269
|
+
Validation: 16,589 tests passed, with package/bundle/native/type checks recorded
|
|
270
|
+
in the [regression guide](docs/test-guides/FEATURE_301_v0.7.97_TEST_GUIDE.md).
|
|
271
|
+
Natural-task GLM/DeepSeek smoke observed automatic image review, but full
|
|
272
|
+
repair/re-review/delivery has not passed all checks. Native DOCX fidelity and
|
|
273
|
+
model-facing schema gaps remain open; see [E2E evidence](docs/test-guides/FEATURE_301_v0.7.97_TEST_GUIDE.md#natural-task-observations-2026-10-13).
|
|
274
|
+
|
|
275
|
+
---
|
|
276
|
+
|
|
277
|
+
## [0.7.97-alpha.4] - 2026-10-12
|
|
278
|
+
|
|
279
|
+
Fourth alpha of the v0.7.97 line: FEATURE_301 adds the independent
|
|
280
|
+
`@kodax-ai/artifacts` package — PPTX authoring, bounded editing, and
|
|
281
|
+
current-file visual evidence through lightweight rendering (optional
|
|
282
|
+
LibreOffice/PDF conversion) — with an
|
|
283
|
+
optional managed KodaX adapter, and retires the out-of-band Sidecar
|
|
284
|
+
Verifier in favor of evidence-based in-run result review with the
|
|
285
|
+
`visual-review` builtin skill. Every v0.7.96 stable and
|
|
286
|
+
v0.7.97-alpha.1/alpha.2/alpha.3 contract is retained. npm publication
|
|
287
|
+
remains a manual maintainer action.
|
|
288
|
+
|
|
289
|
+
### Added
|
|
290
|
+
|
|
291
|
+
- `@kodax-ai/artifacts`: independent optional package for PPTX authoring,
|
|
292
|
+
bounded editing, and current-file visual evidence; its optional KodaX
|
|
293
|
+
bridge uses managed permissions, sandbox, and cancellation (FEATURE_301).
|
|
294
|
+
- Managed PPT review loop: native Office and autonomous non-Office PPT
|
|
295
|
+
validation with rendered-page evidence and bounded edit cycles.
|
|
296
|
+
- `visual-review` builtin skill covering static images/charts, paginated
|
|
297
|
+
documents/slides/sheets, interactive web/app/terminal/canvas/3D surfaces,
|
|
298
|
+
and temporal video/animation results; missing capabilities and unchecked
|
|
299
|
+
scope are reported honestly as unverified.
|
|
300
|
+
|
|
301
|
+
### Changed
|
|
302
|
+
|
|
303
|
+
- Main-agent result verification replaces the Sidecar Verifier (ADR
|
|
304
|
+
2026-10-11): the main agent verifies each requested requirement with
|
|
305
|
+
actual tool and rendered evidence before delivery, and an ordinary
|
|
306
|
+
read-only child reviewer may contribute findings within the same Run.
|
|
307
|
+
Retired: verifier execution, config, live callbacks, the synthetic
|
|
308
|
+
revision producer, `/verifier-log`, and `KODAX_VERIFIER_*` diagnostics;
|
|
309
|
+
persisted verifier history readers remain. Stall sidecar, Auto
|
|
310
|
+
permission reviewer, Bash/sandbox policy, Actor waits, and Stop hooks
|
|
311
|
+
are unchanged.
|
|
312
|
+
- Bundled skill discovery resolves the packaged `builtin` layout, and
|
|
313
|
+
provider capability profiles carry the capability snapshot into managed
|
|
314
|
+
task admission; the release audit now walks the runtime tarball
|
|
315
|
+
(`audit-runtime-tarball.mjs`).
|
|
316
|
+
- Unified client startup progress: `connectKodaXClient` /
|
|
317
|
+
`ensureKodaXClient` accept an `onStartupProgress` observer over the
|
|
318
|
+
pure-data `ClientStartupProgress` contract (checking / starting /
|
|
319
|
+
upgrading / connecting / ready, with waiting reasons
|
|
320
|
+
`connected_clients`, `host_starting`, `host_stopping`). Observation is
|
|
321
|
+
local, never awaited, and observer failures never change the startup
|
|
322
|
+
result; the CLI drives its loading animation from the same notifications
|
|
323
|
+
and stays responsive, and the REPL gains an optional `onBeforeRender` to
|
|
324
|
+
clear the loading display before restoring prompts.
|
|
325
|
+
|
|
326
|
+
---
|
|
327
|
+
|
|
328
|
+
## [0.7.97-alpha.3] - 2026-10-10
|
|
329
|
+
|
|
330
|
+
Third alpha of the v0.7.97 line: trusted Main can now bound Product
|
|
331
|
+
Workflows. `authorizeExecution` may return a `workflowHostPolicy`
|
|
332
|
+
(`maxAgents`, `tokenBudget`) without registering credential or hostTools
|
|
333
|
+
leases; the Host capability moves to `productExecutionAuthorization:2`.
|
|
334
|
+
Ceilings bind to Product Runs including their Workflow children, Workflow
|
|
335
|
+
spawn slots are reserved across concurrent admissions, and output usage is
|
|
336
|
+
published only when every executed round reported it. Every v0.7.96
|
|
337
|
+
stable and v0.7.97-alpha.1/alpha.2 contract is retained. npm publication
|
|
338
|
+
remains a manual maintainer action.
|
|
339
|
+
|
|
340
|
+
### Added
|
|
341
|
+
|
|
342
|
+
- Trusted-Main Workflow ceilings: `workflowHostPolicy` (`maxAgents`,
|
|
343
|
+
`tokenBudget`) on `RuntimeExecutionAuthorization`, accepted policy-only
|
|
344
|
+
on `/client` inputs, queued consumes, and Skill/command/review derived
|
|
345
|
+
Runs; rejected on independent Actor admissions; Host capability
|
|
346
|
+
`productExecutionAuthorization:2`.
|
|
347
|
+
- Workflow `maxAgents` race safety: spawn slots are reserved synchronously
|
|
348
|
+
across pending backend admissions, so concurrent requests cannot exceed
|
|
349
|
+
the lifetime cap.
|
|
350
|
+
- Workflow output usage: finalized managed results carry aggregate
|
|
351
|
+
input/output usage; `outputTokens` is published only when every executed
|
|
352
|
+
round (including verification repair) reported its output usage.
|
|
353
|
+
|
|
354
|
+
### Changed
|
|
355
|
+
|
|
356
|
+
- Product Runs capture the Host `workflow.maxConcurrency` at start and use
|
|
357
|
+
the Host-owned workflow-runs directory; the client adapter strips forged
|
|
358
|
+
`workflowHostPolicy` fields from Product payloads.
|
|
359
|
+
|
|
360
|
+
### Fixed
|
|
361
|
+
|
|
362
|
+
- Terminal Memory review drains no longer reclaim an unavailable preferred
|
|
363
|
+
job as backlog and steal startup recovery from the next Run (Issue 362).
|
|
364
|
+
- Clipboard helper input-pipe failures now enter the existing native/tmux/OSC
|
|
365
|
+
52 fallback instead of crashing mouse copy-on-select (Issue 363).
|
|
366
|
+
- MCP stdio sends observe asynchronous write failures and report them through
|
|
367
|
+
the awaited send and transport diagnostics; required initialization
|
|
368
|
+
notifications cannot turn a failed connection into ready (Issue 364).
|
|
369
|
+
- Workflow child budgets retain all reported Provider fallback attempts and
|
|
370
|
+
requests before a thrown attempt, including truncated continuations. Local
|
|
371
|
+
accounting reuses normalized request facts, preserves Host observers, and
|
|
372
|
+
keeps conservative totals when component usage is incomplete (Issue 365).
|
|
373
|
+
- The Host interrupt-fence and statistics fixtures wait for actual Provider entry, observe
|
|
374
|
+
early Run termination, and retain a bounded cleanup window (Issue 366).
|
|
375
|
+
|
|
376
|
+
---
|
|
377
|
+
|
|
378
|
+
## [0.7.97-alpha.2] - 2026-10-10
|
|
379
|
+
|
|
380
|
+
Second alpha of the v0.7.97 line: completes the FEATURE_298 product seams
|
|
381
|
+
embedders need to run the client inside a trusted shell (Space). Execution
|
|
382
|
+
authorization moves to the trusted Main process, every provider wire request
|
|
383
|
+
carries its attribution, and full exits become verifiable. Every
|
|
384
|
+
v0.7.96 stable and v0.7.97-alpha.1 contract is retained. npm publication
|
|
385
|
+
remains a manual maintainer action.
|
|
386
|
+
|
|
387
|
+
### Added
|
|
388
|
+
|
|
389
|
+
- Trusted Main execution authorization: `connectKodaXClient` /
|
|
390
|
+
`ensureKodaXClient` accept an `authorizeExecution(request, services)`
|
|
391
|
+
callback that runs only in the trusted Main process (Host capability
|
|
392
|
+
`productExecutionAuthorization:1`; older Hosts reject it instead of
|
|
393
|
+
silently dropping bindings). It registers scoped credential and hostTools
|
|
394
|
+
leases and attaches non-secret bindings per operation kind — input,
|
|
395
|
+
command, review, agents_lean, tool, workflow, agent_spawn, agent_followup,
|
|
396
|
+
and manual compaction. Queued consumes bind at consumption time, steers
|
|
397
|
+
keep the target Run's authorization, redirects carry their own, and
|
|
398
|
+
different authorizations never merge or widen.
|
|
399
|
+
- Provider request attribution: every provider wire request carries its
|
|
400
|
+
execution identity and route so hosts and embedders can observe which
|
|
401
|
+
authorization issued it.
|
|
402
|
+
- Client lifecycle and exit: `lifecycle.requestExit` settles client work and
|
|
403
|
+
records durable exit receipts that `readKodaXClientExits` verifies after
|
|
404
|
+
reconnect; full exits no longer rely on disconnect side effects.
|
|
405
|
+
- Host surfaces for embedders: an execution facts store and per-session
|
|
406
|
+
statistics exposed through the daemon, and a bundled product-exit smoke
|
|
407
|
+
joined the release gates.
|
|
408
|
+
|
|
409
|
+
---
|
|
410
|
+
|
|
11
411
|
## [0.7.97-alpha.1] - 2026-10-08
|
|
12
412
|
|
|
13
413
|
First alpha of the v0.7.97 line: FEATURE_298's unified product Host and
|