Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
21 changes: 21 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,26 @@
# Changelog

## [0.14.5] — 2026-09-25

From the round-4 trials on 0.14.4 (an ESS retrofit of a stock-reservation service and worktree
onboarding, both isolated). The skills were checked against ess 0.31.0, the newest release, which
changes nothing they describe.

**`ess`**

- `ess:retrofitting`: a command the code silently ignores in some state gets no `wrong_state:`
outcome and no error. `synthesize` then reports `ESS-SYNTH-012` for that state and still writes
a scenario requiring that nothing happened, which is the code's behaviour; report it, and do not
add an error the code never raises. The view that invariants need is structural: mark it as such.

**`worktree`**

- `worktree:init`: the profile download creates its directory (`curl --create-dirs`) instead of a
separate `mkdir`; any local file works as the profile although `--help` says "committed"; a
headless run uses the directory that holds the current repository as the workspace root and
says so.
- `worktree:managing-worktrees`: always pass `--id` to `gc`.

## [0.14.4] — 2026-09-25

From the round-3 trials on 0.14.3, the first product fix they led to (worktree 0.7.1), and eight
Expand Down
4 changes: 2 additions & 2 deletions Cargo.lock

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

2 changes: 1 addition & 1 deletion Cargo.toml
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@ resolver = "2"
members = ["crates/agentplugins-check", "crates/b10x"]

[workspace.package]
version = "0.14.4"
version = "0.14.5"
edition = "2021"
rust-version = "1.85"
license = "Apache-2.0"
Expand Down
2 changes: 1 addition & 1 deletion plugins/aep/.claude-plugin/plugin.json
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@
"name": "aep",
"displayName": "AEP",
"description": "Plan governed work in the AEP artifact store and deliver it in reviewed waves: decomposition, plan critique, reverse engineering, story scoping, implementation and adversarial review.",
"version": "0.14.4",
"version": "0.14.5",
"author": {
"name": "Beyond10x"
},
Expand Down
2 changes: 1 addition & 1 deletion plugins/aep/.codex-plugin/plugin.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{
"name": "aep",
"version": "0.14.4",
"version": "0.14.5",
"description": "Plan governed work in the AEP artifact store and deliver it in reviewed waves.",
"author": {
"name": "Beyond10x"
Expand Down
2 changes: 1 addition & 1 deletion plugins/b10x/.claude-plugin/plugin.json
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@
"name": "b10x",
"displayName": "Beyond10x",
"description": "Set up, upgrade and check the Beyond10x plugins and binaries, route work to them, and create portable plugins.",
"version": "0.14.4",
"version": "0.14.5",
"author": {
"name": "Beyond10x"
},
Expand Down
2 changes: 1 addition & 1 deletion plugins/b10x/.codex-plugin/plugin.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{
"name": "b10x",
"version": "0.14.4",
"version": "0.14.5",
"description": "Set up, upgrade and check the Beyond10x plugins and binaries, route work to them, and create portable plugins.",
"author": {
"name": "Beyond10x"
Expand Down
2 changes: 1 addition & 1 deletion plugins/connectors/.claude-plugin/plugin.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{
"name": "connectors",
"version": "0.14.4",
"version": "0.14.5",
"description": "Set up, inspect, and invoke governed integrations through the connectors CLI.",
"author": { "name": "Beyond10x" },
"license": "Apache-2.0",
Expand Down
2 changes: 1 addition & 1 deletion plugins/connectors/.codex-plugin/plugin.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{
"name": "connectors",
"version": "0.14.4",
"version": "0.14.5",
"description": "Set up, inspect, and invoke governed integrations through the connectors CLI.",
"author": { "name": "Beyond10x" },
"license": "Apache-2.0",
Expand Down
2 changes: 1 addition & 1 deletion plugins/ess/.claude-plugin/plugin.json
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@
"name": "ess",
"displayName": "ESS",
"description": "Write, retrofit, validate and project Executable System Specifications, and hold implementations to them with conformance suites.",
"version": "0.14.4",
"version": "0.14.5",
"author": {
"name": "Beyond10x"
},
Expand Down
2 changes: 1 addition & 1 deletion plugins/ess/.codex-plugin/plugin.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{
"name": "ess",
"version": "0.14.4",
"version": "0.14.5",
"description": "Write, retrofit, validate and project Executable System Specifications, and hold implementations to them with conformance suites.",
"author": {
"name": "Beyond10x"
Expand Down
8 changes: 7 additions & 1 deletion plugins/ess/skills/retrofitting/SKILL.md
Original file line number Diff line number Diff line change
Expand Up @@ -56,7 +56,13 @@ Retrofit-specific rules:
does in the code today. No delete path found: `UNMAPPED:`.
- **Views follow reads.** One view per read operation clients use; its fields are the fields the
response carries. An entity with `invariants` also needs a view holding every state, or the suite
refuses the invariant checks (`ess:specifying`, conformance section).
refuses the invariant checks (`ess:specifying`, conformance section). That view is structural,
not a read the code has: say so in a comment. It is the one view a retrofit may add.
- **A command the code ignores in some state is a synthesis refusal, and that is correct.** When
the code does nothing (no error) for a command in a state its transition does not start from,
declare no `wrong_state:` outcome and no error. `synthesize` then reports `ESS-SYNTH-012` for
that state and still writes the scenario, which requires that nothing happened: the code's
behaviour. Report the refusals; do not add an error the code never raises.
- **A service that publishes no events still needs one per success outcome.** `validate` refuses an
outcome that neither emits nor names an error (`empty_change`); a view does not count. Declare an
event for the fact the outcome produces (`OrderPaid`), leave it out of the component's
Expand Down
2 changes: 1 addition & 1 deletion plugins/worktree/.claude-plugin/plugin.json
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@
"name": "worktree",
"displayName": "Worktree",
"description": "Create, lease, finish, audit and safely clean isolated Git worktrees through the worktree CLI.",
"version": "0.14.4",
"version": "0.14.5",
"author": {
"name": "Beyond10x"
},
Expand Down
2 changes: 1 addition & 1 deletion plugins/worktree/.codex-plugin/plugin.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{
"name": "worktree",
"version": "0.14.4",
"version": "0.14.5",
"description": "Create, lease, finish, audit and safely clean isolated Git worktrees through the worktree CLI.",
"author": {
"name": "Beyond10x"
Expand Down
10 changes: 5 additions & 5 deletions plugins/worktree/skills/init/SKILL.md
Original file line number Diff line number Diff line change
Expand Up @@ -26,17 +26,17 @@ Activate a workspace profile once, then check the setup. The profile is a small
worktree repository publishes a default one:

```bash
mkdir -p ~/.config/worktree
curl -fsSL -o ~/.config/worktree/default.toml \
curl -fsSL --create-dirs -o ~/.config/worktree/default.toml \
https://raw.githubusercontent.com/beyond10x/worktree/main/profiles/default.toml
worktree activate --profile ~/.config/worktree/default.toml --workspace <workspace-root>
worktree doctor --check
```

`activate` copies the profile into `~/.config/worktree/config.toml`, so the template file may stay
where it is or be committed into a repository the user shares with others. Ask the user for the
workspace root (an absolute path to the directory that holds their repositories) rather than
guessing it.
where it is or be committed into a repository the user shares with others; `--help` calls it a
"committed" template, but any local file works. Ask the user for the workspace root (an absolute
path to the directory that holds their repositories) rather than guessing it. With nobody to ask
(a headless run), use the directory that holds the current repository and say so in the report.

`worktree doctor --check` fails with `no active profile` until `activate` has run.

Expand Down
2 changes: 1 addition & 1 deletion plugins/worktree/skills/managing-worktrees/SKILL.md
Original file line number Diff line number Diff line change
Expand Up @@ -32,7 +32,7 @@ After verification, preserve the small logs, reports, or deliverables needed for

1. Commit and publish every wanted change. A local-only commit is deliberately not cleanup-safe. Work merged as rebased or cherry-picked copies also qualifies when an advertised ref carries every unique commit's exact patch; GC reports that proof as `patch-equivalent`.
2. Preserve required evidence and remove this task's disposable output as described above. Release your own lease, then run `worktree finish <tree>`. It refuses dirty, locked, unmanaged, live, or mid-operation Git worktrees.
3. Run `worktree gc --repo <primary> --dry-run --id <id>` and inspect every result. Without exact ids, `--repo` selects the activated workspace profile, not just the repository: the assessment covers records under that profile's `workspace_root`, including other repositories.
3. Run `worktree gc --repo <primary> --dry-run --id <id>` and inspect every result. Always pass `--id`. Without exact ids, `--repo` selects the activated workspace profile, not just the repository: the assessment covers records under that profile's `workspace_root`, including other repositories.
4. Run `worktree gc --repo <primary> --apply --id <reviewed-id>` with repeated `--id` values only for the exact results intended for removal. The command refreshes remote advertisements, fetches required objects, and revalidates immediately before non-forced removal. Check the result before reporting storage reclaimed.
5. End with either verified cleanup or an explicit handoff: tree id and path, published branch/commit, related work-item references, retained evidence, remaining blockers, next owner and next action. Never leave a tree silently active or label work complete merely from its age or Git state.

Expand Down
Loading