triss-coworker 0.37.0 → 0.37.2
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 +85 -20
- package/README.md +217 -61
- package/THIRD_PARTY_NOTICES +26 -0
- package/bin/triss.js +4 -4
- package/docs/cli-reference.md +10 -0
- package/docs/compatibility.md +16 -0
- package/docs/configuration.md +20 -11
- package/docs/data-flows.md +20 -0
- package/docs/deprecations.md +7 -0
- package/docs/engines/crush.md +60 -0
- package/docs/engines/index.md +9 -0
- package/docs/{opencode-go.md → engines/opencode-go.md} +3 -2
- package/docs/{opencode-zen.md → engines/opencode-zen.md} +8 -5
- package/docs/{opencode2.md → engines/opencode2.md} +9 -7
- package/docs/getting-started.md +12 -0
- package/docs/mcp.md +136 -10
- package/docs/{reliable-delegation-release-a.md → reliable-delegation-contract.md} +76 -38
- package/docs/security-model.md +16 -0
- package/docs/troubleshooting.md +15 -0
- package/package.json +29 -9
- package/src/agent-rule-markers.js +9 -0
- package/src/agent-rules.js +6 -2
- package/src/client.js +119 -26
- package/src/coder-credential-proxy.js +3 -3
- package/src/coder-engines/crush.js +17 -23
- package/src/coder-engines/opencode2.js +10 -16
- package/src/coder-git-mediator.js +1 -1
- package/src/coder-lease.js +3 -2
- package/src/coder-models.js +10 -10
- package/src/coder-orchestration.js +4 -4
- package/src/coder-process-supervisor.js +2 -2
- package/src/coder-result-owner-adapter.js +4 -4
- package/src/coder-result-quarantine.js +1 -1
- package/src/coder-result-registry-codec.js +1 -1
- package/src/coder-result-transitions.js +2 -2
- package/src/coder-result.js +5 -5
- package/src/coder-run-state.js +5 -5
- package/src/coder-sandbox.js +5 -5
- package/src/coder-session-inventory-codec.js +1 -1
- package/src/coder-session-owner-adapter.js +3 -3
- package/src/coder-session-store.js +4 -4
- package/src/coder-session-transitions.js +3 -3
- package/src/coder-state-backup.js +5 -5
- package/src/coder-state.js +3 -3
- package/src/coder-write-quota.js +3 -3
- package/src/commands/coder-state-backup.js +1 -1
- package/src/commands/coder.js +166 -147
- package/src/commands/mcp.js +58 -4
- package/src/commands/review.js +160 -20
- package/src/config-defaults.js +20 -0
- package/src/config.js +3 -3
- package/src/fixed-kernel-lock.js +3 -3
- package/src/integrations/_contract.js +1 -1
- package/src/managed-root.js +3 -3
- package/src/marker-transaction.js +2 -2
- package/src/mcp/handlers.js +109 -19
- package/src/mcp/install.js +1313 -51
- package/src/mcp/review-core.js +31 -12
- package/src/mcp/server.js +43 -4
- package/src/mcp/tools.js +48 -3
- package/src/opencode-config.js +11 -11
- package/src/opencode2-preflight.js +36 -33
- package/src/option-validation.js +19 -0
- package/src/owned-process-journal.js +2 -2
- package/src/owned-process-reconcile.js +35 -5
- package/src/provider-errors.js +3 -3
- package/src/review-defaults.js +74 -0
- package/src/review-executor.js +22 -13
- package/src/review-git.js +6 -6
- package/src/review-input.js +2 -2
- package/src/review-live.js +2 -2
- package/src/review-payload.js +13 -13
- package/src/review-pr-fetch.js +4 -4
- package/src/review-pr-identity.js +3 -3
- package/src/review-pr-metadata.js +5 -5
- package/src/review-pr-registry.js +3 -3
- package/src/review-pr.js +7 -7
- package/src/review-scoped.js +2 -2
- package/src/usage.js +5 -6
- package/src/web.js +2 -1
- package/src/worktree-fingerprint.js +2 -2
- package/templates/claude-full.md +167 -6
- package/templates/claude.md +12 -4
- package/templates/codex-full.md +165 -4
- package/templates/codex.md +12 -4
- package/docs/coder-agent-plan.md +0 -929
- package/docs/coder-model-management-plan.md +0 -1328
- package/docs/coder-one-shot-provider-plan.md +0 -140
- package/docs/coder-process-lifecycle-plan.md +0 -62
- package/docs/codex-workflow-improvements-plan.md +0 -350
- package/docs/crush-glm-integration.md +0 -294
- package/docs/crush-issues.md +0 -270
- package/docs/crush-restrict-issues.md +0 -170
- package/docs/deepseek-harness-provider-bundle-plan.md +0 -529
- package/docs/extending.md +0 -260
- package/docs/glm-clients.md +0 -542
- package/docs/openai-compatible-coder-plan.md +0 -259
- package/docs/opencode-go-support-plan.md +0 -145
- package/docs/opencode2-engine-plan.md +0 -1280
- package/docs/reliable-delegation-contract-plan.md +0 -5477
- package/docs/review-stdin-plan.md +0 -465
- package/docs/update-system-plan.md +0 -1302
- package/docs/usage-accounting-plan.md +0 -993
- package/src/release-a-acceptance.js +0 -605
package/CHANGELOG.md
CHANGED
|
@@ -7,12 +7,78 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
|
|
|
7
7
|
|
|
8
8
|
## [Unreleased]
|
|
9
9
|
|
|
10
|
+
## [0.37.2] — 2026-08-20
|
|
11
|
+
|
|
12
|
+
### Added
|
|
13
|
+
|
|
14
|
+
- **Host-agent delegation workflow guidance** — a single documented
|
|
15
|
+
one-host/one-coder workflow: the host plans and decides, sends one complete
|
|
16
|
+
task packet to one `triss coder run`, the coder investigates, implements,
|
|
17
|
+
tests, debugs, and self-verifies, and the host inspects the actual diff and
|
|
18
|
+
makes the final decision. Taught consistently in `README.md`, the full
|
|
19
|
+
cookbooks (`templates/codex-full.md`, `templates/claude-full.md`), the nano
|
|
20
|
+
templates (`templates/codex.md`, `templates/claude.md`), and the
|
|
21
|
+
authoritative `docs/reliable-delegation-contract.md`.
|
|
22
|
+
|
|
23
|
+
### Changed
|
|
24
|
+
|
|
25
|
+
- Coder and researcher agent templates now state the approval boundary
|
|
26
|
+
explicitly: the coder never commits, pushes, deploys, or touches anything
|
|
27
|
+
outside its checkout and reports truthfully; the researcher is a
|
|
28
|
+
research-only specialist and not a mandatory precursor to coder work.
|
|
29
|
+
|
|
30
|
+
### Documentation
|
|
31
|
+
|
|
32
|
+
- Scope the constant `expectation: "either"` output field and the
|
|
33
|
+
`run_files_changed` change-evidence field to the `opencode`/`crush`
|
|
34
|
+
engines in `docs/reliable-delegation-contract.md` and `docs/mcp.md`; the
|
|
35
|
+
`opencode2` beta envelope reports neither and uses `files_changed`
|
|
36
|
+
instead.
|
|
37
|
+
|
|
38
|
+
### Artifact integrity (0.37.2)
|
|
39
|
+
|
|
40
|
+
- `triss-dsh-provider-bundle-0.37.2.tgz` — sha256
|
|
41
|
+
`0327051792f0fe0d5431619aee7e2dee120fbbdb744b3e7f9afdd0eb958740b9`,
|
|
42
|
+
integrity
|
|
43
|
+
`sha512-BBZlA9OiA8pIp+n+GJ9RBX4+yPQpRoKjQLx8KY/5ZIlqRCMUJ5SResBEuVpPiMI9UDTnWq2rQp5JI/6TVh0Y7w==`
|
|
44
|
+
(computed with the pinned release npm 11.6.2 via `npm pack`; `npm pack`
|
|
45
|
+
output is byte-deterministic).
|
|
46
|
+
- Root `triss-coworker-0.37.2.tgz` sha256 is reproducible via `npm pack` at
|
|
47
|
+
tag `v0.37.2` (the root tarball ships `CHANGELOG.md`, so its hash cannot be
|
|
48
|
+
recorded inside this file); registry verification compares the packed
|
|
49
|
+
artifact against the published tarball byte-for-byte.
|
|
50
|
+
|
|
51
|
+
## [0.37.1] — 2026-08-19
|
|
52
|
+
|
|
53
|
+
|
|
54
|
+
### Fixed
|
|
55
|
+
|
|
56
|
+
- Propagate cancellation through the main MCP review path and fail closed
|
|
57
|
+
before invoking the provider when the request is already aborted.
|
|
58
|
+
|
|
59
|
+
### Documentation
|
|
60
|
+
|
|
61
|
+
- Align GLM review documentation and templates with model-sized automatic
|
|
62
|
+
token budgets and the explicit `max_tokens >= 16384` guidance.
|
|
63
|
+
|
|
64
|
+
### Artifact integrity (0.37.1)
|
|
65
|
+
|
|
66
|
+
- `triss-dsh-provider-bundle-0.37.1.tgz` — sha256
|
|
67
|
+
`2fc3ff982bf94982552a820da395c98c2b37638bd84ed298eafe2638e74f3683`,
|
|
68
|
+
integrity `sha512-f0CDbccY9yjxZ0b3qq2XFxaSzcrMb8vLHxRGavIIk0jp+t2m9tN3R6V9v9QVZtxfExHCW5zUeFU24mzQsA4Cig==`
|
|
69
|
+
(computed with the pinned release npm 11.6.2 via
|
|
70
|
+
`npm pack`; `npm pack` output is byte-deterministic).
|
|
71
|
+
- Root `triss-coworker-0.37.1.tgz` sha256 is reproducible via
|
|
72
|
+
`npm pack` at tag `v0.37.1` (the root tarball ships `CHANGELOG.md`, so its
|
|
73
|
+
hash cannot be recorded inside this file); registry verification compares
|
|
74
|
+
the packed artifact against the published tarball byte-for-byte.
|
|
75
|
+
|
|
10
76
|
## [0.37.0] — 2026-08-18
|
|
11
77
|
|
|
12
78
|
### Added
|
|
13
79
|
|
|
14
|
-
- **Reliable delegation (
|
|
15
|
-
`docs/reliable-delegation-contract
|
|
80
|
+
- **Reliable delegation (sharding acceptance)** — sequential sharding per the
|
|
81
|
+
public `docs/reliable-delegation-contract.md`:
|
|
16
82
|
- `--payload-mode shard` CLI + MCP shard parity: source-ordered
|
|
17
83
|
whole-file shards (a file is never split across shards);
|
|
18
84
|
- sequential executor with first-failure stop, cancellation
|
|
@@ -25,13 +91,13 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
|
|
|
25
91
|
never completed prose or raw diff content;
|
|
26
92
|
- `evidence + shard` and `shard + --stream` rejected before any model
|
|
27
93
|
call;
|
|
28
|
-
-
|
|
29
|
-
acceptance (`--live --
|
|
94
|
+
- sharding synthetic acceptance (`--synthetic --suite sharding`) and live
|
|
95
|
+
acceptance (`--live --suite sharding`; PASS / SKIPPED_NO_CREDENTIALS /
|
|
30
96
|
BLOCKED_ENVIRONMENT recorded separately, never upgraded to success).
|
|
31
97
|
|
|
32
|
-
- **Reliable delegation (
|
|
33
|
-
diff acquisition, and the issue trust boundary per
|
|
34
|
-
`docs/reliable-delegation-contract
|
|
98
|
+
- **Reliable delegation (review acceptance)** — bounded single review, exact PR
|
|
99
|
+
diff acquisition, and the issue trust boundary per the public
|
|
100
|
+
`docs/reliable-delegation-contract.md`:
|
|
35
101
|
- reloadable review limits (`TRISS_REVIEW_SINGLE_MAX_BYTES`,
|
|
36
102
|
`TRISS_REVIEW_SHARD_MAX_BYTES`, `TRISS_REVIEW_TOTAL_MAX_BYTES`,
|
|
37
103
|
`TRISS_REVIEW_MAX_SHARDS`) with atomic validation and full-default
|
|
@@ -98,7 +164,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
|
|
|
98
164
|
(`usage_source: "opencode2"`, terminal-error precedence, no fabricated
|
|
99
165
|
zeros), namespaces sessions per engine, and rides the shared opencode-v1
|
|
100
166
|
configuration backend for `coder model set` / rollback. See
|
|
101
|
-
docs/opencode2.md and docs/opencode2-engine-plan.md.
|
|
167
|
+
docs/engines/opencode2.md and docs/opencode2-engine-plan.md.
|
|
102
168
|
|
|
103
169
|
### Security (opencode2 engine beta)
|
|
104
170
|
|
|
@@ -126,7 +192,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
|
|
|
126
192
|
canonical parser (comments and trailing commas no longer abort the run),
|
|
127
193
|
and `parseOpenCodeDocument` drops trailing commas followed by comments.
|
|
128
194
|
|
|
129
|
-
### Fixed
|
|
195
|
+
### Fixed
|
|
130
196
|
|
|
131
197
|
- Dual legacy/native config forms (`provider`+`providers`,
|
|
132
198
|
`plugin`+`plugins`, `permission`+`permissions`) reject — the pinned build
|
|
@@ -152,7 +218,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
|
|
|
152
218
|
rejects BEFORE any credential/config write with actionable guidance; a
|
|
153
219
|
fresh V2 init warns that the shared deny-everything policy removes the
|
|
154
220
|
allowlisted commands from plain V1 runs (documented in
|
|
155
|
-
docs/opencode2.md, including two new troubleshooting rows).
|
|
221
|
+
docs/engines/opencode2.md, including two new troubleshooting rows).
|
|
156
222
|
- Model inspection tolerates unrelated hostile config shapes (a non-string
|
|
157
223
|
plugin reference, unreadable directories) — the post-commit audit of a
|
|
158
224
|
successful `coder model set` no longer rolls back over them; `coder
|
|
@@ -185,12 +251,12 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
|
|
|
185
251
|
|
|
186
252
|
### Added
|
|
187
253
|
|
|
188
|
-
- **Reliable delegation (
|
|
189
|
-
`docs/reliable-delegation-contract
|
|
254
|
+
- **Reliable delegation (session acceptance)** — coder envelope v2 orchestration
|
|
255
|
+
per the public `docs/reliable-delegation-contract.md`:
|
|
190
256
|
- envelope fields `session_slug`, `result_retention`, `result_id`, and
|
|
191
257
|
`execution_capabilities` (eight honest `enforced|best_effort|unavailable`
|
|
192
258
|
values + `effective_isolation`) on every safe envelope
|
|
193
|
-
(`docs/reliable-delegation-
|
|
259
|
+
(`docs/reliable-delegation-contract.md`);
|
|
194
260
|
- v2 session CLI: `triss coder session list`, `triss coder session clean
|
|
195
261
|
<slug> --engine <opencode|crush>` (per-engine store only, legacy
|
|
196
262
|
`.triss/sessions.json` never touched);
|
|
@@ -205,7 +271,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
|
|
|
205
271
|
phase-aware manifest machine, completion-marker hashing);
|
|
206
272
|
- credential proxy (loopback one-run token) on both engines — the real
|
|
207
273
|
provider key never reaches the engine environment; every run requires
|
|
208
|
-
the proxy (
|
|
274
|
+
the proxy (session acceptance rejects runs when it is unavailable);
|
|
209
275
|
- pure provider error classifier with stable public codes
|
|
210
276
|
(`TRISS_PROVIDER_AUTH/POLICY/RATE/TIMEOUT/NOT_FOUND/CONNECTION/UNKNOWN/
|
|
211
277
|
CONFLICT/EMPTY`);
|
|
@@ -738,7 +804,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
|
|
|
738
804
|
tools (which now light up on `ZHIPU_API_KEY` **or** `OPENCODE_API_KEY`). (#12)
|
|
739
805
|
- `--allow-unsafe-bash` on `triss coder init` — explicit opt-in to proceed when
|
|
740
806
|
an existing `opencode.json` has no deny-first bash policy. (#12)
|
|
741
|
-
- New `docs/opencode-zen.md` deep-dive (auth, live catalogue, precedence, setup
|
|
807
|
+
- New `docs/engines/opencode-zen.md` deep-dive (auth, live catalogue, precedence, setup
|
|
742
808
|
gates, privacy, MCP, verification). (#12)
|
|
743
809
|
|
|
744
810
|
### Changed
|
|
@@ -781,9 +847,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
|
|
|
781
847
|
npm version. (#10)
|
|
782
848
|
- New `docs/glm-clients.md` — a single reference for how Triss talks to
|
|
783
849
|
GLM (both engines, key/endpoint routing, model selection, usage modes,
|
|
784
|
-
and the safety model),
|
|
785
|
-
`docs/crush-restrict-issues.md` capturing the crush maintainer bug
|
|
786
|
-
reports. (#10)
|
|
850
|
+
and the safety model), plus two Crush maintainer bug reports. (#10)
|
|
787
851
|
|
|
788
852
|
### Changed
|
|
789
853
|
|
|
@@ -1202,7 +1266,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
|
|
|
1202
1266
|
|
|
1203
1267
|
### Fixed
|
|
1204
1268
|
|
|
1205
|
-
- Documentation-audit
|
|
1269
|
+
- Documentation-audit security and correctness fixes from a `triss` self-audit.
|
|
1206
1270
|
|
|
1207
1271
|
## [0.12.0] — 2026-05-07
|
|
1208
1272
|
|
|
@@ -1353,7 +1417,8 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
|
|
|
1353
1417
|
|
|
1354
1418
|
- Initial release of `triss-coworker`.
|
|
1355
1419
|
|
|
1356
|
-
[Unreleased]: https://github.com/ayleen/triss-coworker/compare/v0.
|
|
1420
|
+
[Unreleased]: https://github.com/ayleen/triss-coworker/compare/v0.37.1...HEAD
|
|
1421
|
+
[0.37.1]: https://github.com/ayleen/triss-coworker/compare/v0.37.0...v0.37.1
|
|
1357
1422
|
[0.34.0]: https://github.com/ayleen/triss-coworker/compare/v0.33.0...v0.34.0
|
|
1358
1423
|
[0.33.0]: https://github.com/ayleen/triss-coworker/compare/v0.32.0...v0.33.0
|
|
1359
1424
|
[0.32.0]: https://github.com/ayleen/triss-coworker/compare/v0.31.1...v0.32.0
|