wowbagger 0.1.0-alpha.1 → 0.1.0-alpha.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +45 -0
- package/README.md +40 -26
- package/docs/mutation-contract.md +1036 -0
- package/docs/work-claim-contract.md +599 -0
- package/package.json +5 -2
- package/scripts/migrate-schema-2.js +7 -0
- package/skills/wowbagger/SKILL.md +35 -15
- package/src/claim-journal.js +2 -2
- package/src/claim-publication.js +29 -3
- package/src/cli.js +46 -5
- package/src/git-reconciliation.js +10 -6
- package/src/ledger.js +1 -0
- package/src/mutation.js +1 -1
- package/src/schema-migration.js +1 -1
package/CHANGELOG.md
CHANGED
|
@@ -7,6 +7,51 @@ consolidation. The first tagged release inherits this file.
|
|
|
7
7
|
|
|
8
8
|
## Unreleased
|
|
9
9
|
|
|
10
|
+
## 0.1.0-alpha.3 - 2026-08-12
|
|
11
|
+
|
|
12
|
+
### Fixed
|
|
13
|
+
|
|
14
|
+
- Published install and upgrade guidance now names this release's immutable Git
|
|
15
|
+
tag and uses the prerelease `next` npm channel instead of the older `latest`
|
|
16
|
+
artifact. Item 62.
|
|
17
|
+
- The installed plugin skill now requires the exact core distribution version
|
|
18
|
+
that shipped with it, in addition to core contract version 2. This detects an
|
|
19
|
+
older core that shares the contract number but lacks behavior required by the
|
|
20
|
+
newer skill. Item 64; item 63 records the rejected capability-schema change.
|
|
21
|
+
|
|
22
|
+
## 0.1.0-alpha.2 - 2026-08-12
|
|
23
|
+
|
|
24
|
+
### Fixed
|
|
25
|
+
|
|
26
|
+
- `claim-verify` now reports `git_finalized` and `git_commit` for each successful
|
|
27
|
+
claimed publication. Reconciliation logs stay inside the configured ledger,
|
|
28
|
+
including repository-root ledgers. Items 55-57.
|
|
29
|
+
- A new empty ledger now starts on schema version 2. Existing non-empty
|
|
30
|
+
schema-version-1 ledgers remain compatible until migration. Item 54.
|
|
31
|
+
- The installed skill now identifies the active claim as the work-in-flight
|
|
32
|
+
signal while the item remains in `backlog`. Item 58.
|
|
33
|
+
- The npm package now ships the mutation and work-claim contract documents that
|
|
34
|
+
the installed skill references. Item 59.
|
|
35
|
+
- The npm package now ships the documented schema-version-2 migration
|
|
36
|
+
entrypoint for package-only consumers. Item 60.
|
|
37
|
+
- The installed work-claim contract now distinguishes durable reconciliation
|
|
38
|
+
state from per-publication Git finalization. Item 61.
|
|
39
|
+
|
|
40
|
+
- The Claude Code plugin manifest and marketplace metadata now use the same
|
|
41
|
+
distribution version as `package.json`. The packaging gate rejects release
|
|
42
|
+
identity drift before npm, Git, or marketplace publication. Item 48.
|
|
43
|
+
- Capability help now distinguishes the core's unbound default claim profile
|
|
44
|
+
from one provisioned ledger's work-claim profile. It names
|
|
45
|
+
`contract_version` as the core version and
|
|
46
|
+
`operations.work_claim.api_version` as the work-claim API version. Items 47
|
|
47
|
+
and 51.
|
|
48
|
+
- `provision --help`, README, and the shipped skill now expose the accessible
|
|
49
|
+
Git-checkout prerequisite and the pre-provision
|
|
50
|
+
`claim capabilities --ledger <dir> --json` gate. Item 50.
|
|
51
|
+
- The isolated consumer dogfood runbook now creates or selects the disposable
|
|
52
|
+
worktree before agent launch and requires a session-root Git preflight before
|
|
53
|
+
installation or ledger mutation. Item 52.
|
|
54
|
+
|
|
10
55
|
## 0.1.0-alpha.1 - 2026-08-11
|
|
11
56
|
|
|
12
57
|
### Behaviour changes
|
package/README.md
CHANGED
|
@@ -34,7 +34,7 @@ Install the core CLI, then verify it:
|
|
|
34
34
|
```sh
|
|
35
35
|
npm install -g wowbagger@next # public npm prerelease
|
|
36
36
|
# or, from this release's Git tag:
|
|
37
|
-
# npm install -g github:lstutzman/wowbagger#v0.1.0-alpha.
|
|
37
|
+
# npm install -g github:lstutzman/wowbagger#v0.1.0-alpha.3
|
|
38
38
|
wowbagger capabilities --json
|
|
39
39
|
```
|
|
40
40
|
|
|
@@ -45,11 +45,17 @@ In Claude Code, add the plugin:
|
|
|
45
45
|
/plugin install wowbagger@wowbagger
|
|
46
46
|
```
|
|
47
47
|
|
|
48
|
-
The plugin drives the installed core rather than bundling one, so a
|
|
49
|
-
|
|
50
|
-
`capabilities
|
|
51
|
-
|
|
52
|
-
would bypass validation
|
|
48
|
+
The plugin drives the installed core rather than bundling one, so a mismatch is
|
|
49
|
+
detectable instead of silent. Its skill reads `wowbagger --version` and
|
|
50
|
+
`capabilities`; it requires the same distribution version as the plugin and
|
|
51
|
+
core contract version 2. It refuses an absent or incompatible core. It will not
|
|
52
|
+
fall back to editing ledger files by hand, because that would bypass validation
|
|
53
|
+
and atomic publication.
|
|
54
|
+
|
|
55
|
+
For an isolated consumer pilot, create or select the disposable worktree before
|
|
56
|
+
the agent starts. Then launch a new session with that worktree as its project
|
|
57
|
+
root. Follow the [isolated dogfood pilot runbook](docs/isolated-dogfood-pilot.md);
|
|
58
|
+
do not try to drive a sibling worktree from an already-running agent session.
|
|
53
59
|
|
|
54
60
|
To use the core directly from a clone instead, see
|
|
55
61
|
[Core commands](#core-commands).
|
|
@@ -64,22 +70,23 @@ two supported install routes:
|
|
|
64
70
|
- **npm registry** — `npm install -g wowbagger@next` installs the current
|
|
65
71
|
prerelease.
|
|
66
72
|
- **git tag** —
|
|
67
|
-
`npm install -g github:lstutzman/wowbagger#v0.1.0-alpha.
|
|
73
|
+
`npm install -g github:lstutzman/wowbagger#v0.1.0-alpha.3` installs this
|
|
68
74
|
release. Installing at a ref installs the core and every adapter that ref
|
|
69
75
|
carries.
|
|
70
76
|
|
|
71
77
|
Either route installs the core and the `wowbagger` command. The Claude Code
|
|
72
78
|
plugin is a separate artifact (see [Start here](#start-here)); the core and the
|
|
73
|
-
plugin are installed
|
|
74
|
-
|
|
79
|
+
plugin are installed independently. Install their matching distribution
|
|
80
|
+
versions.
|
|
75
81
|
|
|
76
82
|
### Compatibility
|
|
77
83
|
|
|
78
|
-
The
|
|
84
|
+
The contract version is top-level `contract_version`, reported by
|
|
79
85
|
`wowbagger capabilities --json`. Contracts change it; refactors do not. The
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
86
|
+
npm/Git distribution version names release bytes. General API consumers
|
|
87
|
+
negotiate the contract version. The shipped plugin skill additionally requires
|
|
88
|
+
the exact core distribution version that shipped with it, because its
|
|
89
|
+
instructions can depend on additive behavior from that release.
|
|
83
90
|
|
|
84
91
|
- **Node.js:** 20 and later. The adapter conformance vectors run against Node
|
|
85
92
|
20 and the current runtime before each release.
|
|
@@ -88,7 +95,10 @@ whether a core supports your request.
|
|
|
88
95
|
with release evidence). Do not assume a platform is officially supported just
|
|
89
96
|
because the CLI starts.
|
|
90
97
|
- **Other tooling:** `wowbagger` manages a Git-tracked Markdown ledger. It
|
|
91
|
-
needs
|
|
98
|
+
needs an accessible Git checkout for work-claim and namespace operations.
|
|
99
|
+
Before `provision`, run
|
|
100
|
+
`wowbagger claim capabilities --ledger <dir> --json` and require
|
|
101
|
+
`result.operations.work_claim.supported: true`.
|
|
92
102
|
|
|
93
103
|
### Security
|
|
94
104
|
|
|
@@ -123,8 +133,8 @@ wowbagger core, this is how you move forward safely.
|
|
|
123
133
|
Upgrade the pieces you installed:
|
|
124
134
|
|
|
125
135
|
```sh
|
|
126
|
-
npm install -g wowbagger@
|
|
127
|
-
npm install -g github:lstutzman/wowbagger
|
|
136
|
+
npm install -g wowbagger@next # public npm registry
|
|
137
|
+
npm install -g github:lstutzman/wowbagger#v0.1.0-alpha.3 # immutable Git release
|
|
128
138
|
git pull && npm ci # or: a direct checkout
|
|
129
139
|
```
|
|
130
140
|
|
|
@@ -135,15 +145,15 @@ In Claude Code, update the plugin the same way it was installed:
|
|
|
135
145
|
/plugin update wowbagger@wowbagger
|
|
136
146
|
```
|
|
137
147
|
|
|
138
|
-
Then verify, exactly as on first install:
|
|
139
|
-
|
|
140
148
|
```sh
|
|
149
|
+
wowbagger --version
|
|
141
150
|
wowbagger capabilities --json
|
|
142
151
|
```
|
|
143
152
|
|
|
144
|
-
|
|
145
|
-
|
|
146
|
-
|
|
153
|
+
The plugin requires its exact core distribution version and top-level core
|
|
154
|
+
`contract_version: 2`. Direct API consumers must check the contract version
|
|
155
|
+
they support; installed plugin users must also keep the plugin and core
|
|
156
|
+
distribution versions equal.
|
|
147
157
|
|
|
148
158
|
The shipped adapter selects only adapter contract version 2 and requires core
|
|
149
159
|
contract version 2. A v1-only consumer receives
|
|
@@ -327,11 +337,15 @@ operation. See [the work-claim contract](docs/work-claim-contract.md) for the
|
|
|
327
337
|
request envelopes, refusal precedence, recovery rules, and the difference
|
|
328
338
|
between strict fenced and merge-coordinated backends.
|
|
329
339
|
|
|
330
|
-
|
|
331
|
-
|
|
332
|
-
|
|
333
|
-
|
|
334
|
-
|
|
340
|
+
Core and work-claim versions use distinct negotiation fields. Read the
|
|
341
|
+
top-level `contract_version` from core `capabilities`. Read
|
|
342
|
+
`result.operations.work_claim.api_version` from
|
|
343
|
+
`claim capabilities --ledger <dir> --json`. A claim response's top-level
|
|
344
|
+
`contract_version` is the legacy claim-envelope marker; do not compare it with
|
|
345
|
+
the core version. A contract consumer that receives an unsupported version
|
|
346
|
+
refuses rather than guessing. The shipped plugin skill also requires its exact
|
|
347
|
+
core distribution version. Direct checkout use—`./bin/wowbagger.js` from a
|
|
348
|
+
clone—remains supported and is what this repository's own ledger uses.
|
|
335
349
|
|
|
336
350
|
## Verify a checkout
|
|
337
351
|
|