@brutalsystems/muster 0.7.2 → 0.7.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/CONTRACT_PROVENANCE.md +29 -0
- package/README.md +3 -3
- package/package.json +1 -1
package/CONTRACT_PROVENANCE.md
CHANGED
|
@@ -79,6 +79,35 @@ the same codename remediation via a history rewrite (`git filter-repo
|
|
|
79
79
|
whose content or ancestry it touched. This is a historical acquisition
|
|
80
80
|
record, not a claim that the commit is still reachable.
|
|
81
81
|
|
|
82
|
+
## Contract baseline moved to 0.6.0 — 2026-09-20
|
|
83
|
+
|
|
84
|
+
Tin Can 0.6.0 changes the endpoint it delivers to on the opencode leg, from the
|
|
85
|
+
v2 `/api/session/{id}/prompt` to the v1 `/session/{id}/prompt_async`, and the
|
|
86
|
+
change resolves the failure described in the 0.5.9 entry below. It is a minor
|
|
87
|
+
rather than a patch because `urgent` was removed as a capability: the v1 route
|
|
88
|
+
has no equivalent of v2's steer/queue distinction, so rather than accept it and
|
|
89
|
+
ignore it, Tin Can now reports urgent as unsupported on every runtime. Muster
|
|
90
|
+
never referenced that capability, so nothing here changes.
|
|
91
|
+
|
|
92
|
+
Muster's contract suite was run against a real installed
|
|
93
|
+
`@brutalsystems/tincan@0.6.0` and passed all four cases. Naming is untouched:
|
|
94
|
+
0.6.0's `canonical-id.json` was compared case by case with Muster's frozen copy
|
|
95
|
+
and every pre-existing case is present with an unchanged expectation, with the
|
|
96
|
+
same four additive opencode-specific cases introduced in 0.5.7.
|
|
97
|
+
|
|
98
|
+
Verified end to end rather than by the suite alone: a Muster-launched OpenCode
|
|
99
|
+
session in a terminal received a Tin Can message, ran the turn, and replied to
|
|
100
|
+
the sending Claude Code session. The OpenCode log for that session shows a
|
|
101
|
+
started loop and a resolved model with no `Failed to drain` line, which is the
|
|
102
|
+
signature the 0.5.9 entry documents as the failure.
|
|
103
|
+
|
|
104
|
+
One operational trap worth recording, because it makes a working setup look
|
|
105
|
+
broken: the OpenCode plugin is a **copy on disk** under
|
|
106
|
+
`~/.config/opencode/plugin/`. Updating the npm package does not update it, and
|
|
107
|
+
a stale plugin keeps posting to the old v2 route. The peer registry records
|
|
108
|
+
`plugin_version`; confirm it matches the installed package before trusting a
|
|
109
|
+
delivery result.
|
|
110
|
+
|
|
82
111
|
## Contract baseline moved to 0.5.9 — 2026-09-20
|
|
83
112
|
|
|
84
113
|
Re-pinned from `0.5.7`, skipping a separate `0.5.8` pass, because the `notice`
|
package/README.md
CHANGED
|
@@ -413,18 +413,18 @@ The ordinary suite requires tmux, node-pty, POSIX `ps`/`lsof`, and Python 3 for
|
|
|
413
413
|
real file locks in the fake Codex executable. It uses isolated runtime homes and
|
|
414
414
|
no model APIs. It skips the four explicitly invoked compatibility cases.
|
|
415
415
|
|
|
416
|
-
The verified contract baseline is **Tin Can 0.
|
|
416
|
+
The verified contract baseline is **Tin Can 0.6.0**. The suite spawns an installed binary as an MCP
|
|
417
417
|
subprocess, compares durable IDs, and verifies delivery to fake runtimes through
|
|
418
418
|
both terminal hosts. A missing binary or missing durable field fails the test.
|
|
419
419
|
For reproducible verification, install that exact release outside Muster:
|
|
420
420
|
|
|
421
421
|
```sh
|
|
422
422
|
contract_dir=$(mktemp -d)
|
|
423
|
-
npm install --prefix "$contract_dir" --no-save @brutalsystems/tincan@0.
|
|
423
|
+
npm install --prefix "$contract_dir" --no-save @brutalsystems/tincan@0.6.0
|
|
424
424
|
MUSTER_TINCAN_BIN="$contract_dir/node_modules/.bin/tincan" npm run test:contract
|
|
425
425
|
```
|
|
426
426
|
|
|
427
|
-
Verification uses the published 0.
|
|
427
|
+
Verification uses the published 0.6.0 release installed in an isolated
|
|
428
428
|
temporary directory. No Tin Can source edits are made.
|
|
429
429
|
Fixture version metadata alone does not indicate address-format drift: compare
|
|
430
430
|
the case arrays. Those arrays cover naming only, not peer-list membership or
|