chore(release): bump to 0.31.0
Two commits landed after v0.30.0 and neither reaches anyone: every entry point on this machine runs the version-pinned plugin cache, not the tree. Measured 2026-08-29 by .claude before this order was written - cache board.sh 1626 lines against the repo's 1739, md5 differing - so the board skill was still running pre-4369499 code. A commit is not a delivery. Minor rather than patch:ee5a86aadds a reading the table did not have (ORDRE and FLY carry the age of the oldest order), while4369499repairs a consumer that discarded a signal the engine already sent. No new key=value key, no new exit code, no new env var, no sort-axis change. Version bumped in all seven files that carry it: .claude-plugin/plugin.json, package.json, the README badge and the four SKILL.md frontmatters. The 0.30.0 strings remaining in CLAUDE.md, board.sh and board-selftest.sh are historical prose about what was measured on that release and are correct as they stand - a blanket sed would have falsified them. CHANGELOG 0.31.0 written for a reader of the board rather than a reader of the diff: what the columns now say, and what --brief no longer claims. Suites under real /bin/bash 3.2 after the bump: coord 242/242, board 325/325, route 69/69, orders 110/110, guard 54/54. npm test 11/11. No tag and no catalog change, as ordered - release-plugin.mjs lives in catalog and mints the tag and the ref atomically; a hand-made tag here is exactly the drift that script exists to prevent. Order: 20260829T071929Z-786087280-from-.claude Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
This commit is contained in:
parent
ee5a86a40b
commit
0711b4209c
8 changed files with 68 additions and 7 deletions
|
|
@ -1,6 +1,6 @@
|
|||
{
|
||||
"name": "repo-mailbox",
|
||||
"version": "0.30.0",
|
||||
"version": "0.31.0",
|
||||
"description": "Local mailbox for coordination between Claude Code sessions in different repositories. Directed messages and broadcasts as plain Markdown files on your own disk, injected as context at session start. Local, private, no network.",
|
||||
"author": {
|
||||
"name": "Kjell Tore Guttormsen"
|
||||
|
|
|
|||
61
CHANGELOG.md
61
CHANGELOG.md
|
|
@ -5,6 +5,67 @@ All notable changes to this project will be documented in this file.
|
|||
The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.1.0/),
|
||||
and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
|
||||
|
||||
## [0.31.0] - 2026-08-29
|
||||
|
||||
Two commits landed after `v0.30.0` and, as with that release, neither reaches
|
||||
anyone until the tag exists: every entry point on this machine runs the
|
||||
version-pinned plugin cache, not the tree. Minor rather than patch because the
|
||||
board's table gained a reading it did not have - the age of the oldest queued
|
||||
order - while the other change repairs a consumer that was ignoring a signal
|
||||
the engine already sent.
|
||||
|
||||
Both are the same class the previous release closed and this one continues: a
|
||||
failed or missing measurement rendering as a reassuring value.
|
||||
|
||||
### Added
|
||||
|
||||
- **`ORDRE` and `FLY` now carry the AGE of the oldest order, rendered `N:Md`.**
|
||||
Reading the board, `ORDRE 2` used to look identical whether both orders
|
||||
arrived yesterday or both had sat for ten days. The problem was never that
|
||||
orders wait - that is a prioritisation call owned by humans - it was that no
|
||||
cross-repo surface showed the wait at all: `coord-order-inbox.sh` reports an
|
||||
age, but only inside the one repo at SessionStart, so a repo nobody opens
|
||||
shows nobody anything. Measured across the live mailbox 2026-08-29: 30
|
||||
pending orders over 22 repos, 5 of them ten days old. The age is the OLDEST
|
||||
order, never the newest and never a mean - a repo holding one fresh order and
|
||||
one ten-day-old order has a ten-day-old problem, and the newest reading is
|
||||
exactly what would hide it. `FLY` carries the same reading, where it matters
|
||||
at least as much: nothing un-claims an order when the session that took it
|
||||
dies. An empty queue still prints a bare `0` ("no orders" and "an order that
|
||||
arrived today" are different facts), and an unreadable mtime prints `?` for
|
||||
the whole reading rather than silently skipping a file that could have been
|
||||
the oldest one.
|
||||
|
||||
The age is DISPLAY only. It is deliberately not in the sort, and `--plan`'s
|
||||
`fly=` and every other emitted `key=value` block are untouched, so nothing
|
||||
that parses this board changes shape.
|
||||
|
||||
### Fixed
|
||||
|
||||
- **`board.sh` listened to `coord-count.sh`'s output and ignored its exit
|
||||
status, so the failure signal 0.30.0 had just built stopped at the
|
||||
producer.** Every call site piped the counter into `awk`, and a pipeline
|
||||
reports the last stage's status, so exit 3 - "the mailbox root you named is
|
||||
not there; this is not a count of zero" - was discarded each time. Measured
|
||||
on the shipped 0.30.0 against a mailbox root that does not exist:
|
||||
`coord-count.sh` said "not counted, not zero" and exited 3, while
|
||||
`board.sh --brief` answered "Ingen repo skylder noen et svar i dag." and
|
||||
`--plan` emitted no warning key at all. For a reader that meant a briefing
|
||||
confidently reporting that nobody owes anyone a reply, on the basis of a
|
||||
measurement that never happened.
|
||||
|
||||
The board now reports the failure at all five places it speaks, and keeps the
|
||||
two causes apart - a missing sibling script and a mailbox root that is not
|
||||
there are different repairs. A partial count captured before a failure is
|
||||
discarded rather than shown, because a half-count also looks measured. The
|
||||
table and `--plain` views are unchanged: they never invoked the counter, and
|
||||
now say so instead of implying a measurement nobody attempted.
|
||||
|
||||
Bounded gap, stated rather than closed: the table's own `INN`/`ORDRE`/`FLY`
|
||||
columns count with `ls` and read 0 for every repo when the mailbox root is
|
||||
absent. Same shape, one source over, and not a `coord-count.sh` consumer -
|
||||
named here rather than silently widened into.
|
||||
|
||||
## [0.30.0] - 2026-08-26
|
||||
|
||||
Two commits landed after `v0.29.0` and neither is reachable: every entry point
|
||||
|
|
|
|||
|
|
@ -10,7 +10,7 @@ Session A in repo X leaves a message for repo Y; the next session in repo Y gets
|
|||
|
||||
*AI-generated: all code produced by Claude Code through dialog-driven development.*
|
||||
|
||||

|
||||

|
||||

|
||||

|
||||

|
||||
|
|
|
|||
|
|
@ -1,6 +1,6 @@
|
|||
{
|
||||
"name": "repo-mailbox",
|
||||
"version": "0.30.0",
|
||||
"version": "0.31.0",
|
||||
"private": true,
|
||||
"type": "module",
|
||||
"engines": {
|
||||
|
|
|
|||
|
|
@ -20,7 +20,7 @@ description: >-
|
|||
user names no repo and no tool — choosing *between* repos is this skill. Not for
|
||||
"where were we" inside the current repo: that is this repo's own STATE.md,
|
||||
already injected at session start.
|
||||
version: "0.30.0"
|
||||
version: "0.31.0"
|
||||
---
|
||||
|
||||
# board — which repo deserves the next session
|
||||
|
|
|
|||
|
|
@ -15,7 +15,7 @@ description: >-
|
|||
covers retiring a broadcast that has become wrong or obsolete: "retract that
|
||||
broadcast", "that announcement is outdated, pull it", "trekk tilbake kringkastingen",
|
||||
"den broadcasten er utdatert".
|
||||
version: "0.30.0"
|
||||
version: "0.31.0"
|
||||
---
|
||||
|
||||
# coord-send — natural-language front door for inter-repo messages
|
||||
|
|
|
|||
|
|
@ -17,7 +17,7 @@ description: >-
|
|||
skill. Not for choosing WHICH repo deserves the next session (that is `board`),
|
||||
not for scoring model and effort alone (that is `route`), and not for sending a
|
||||
message to another repo (that is `coord-send`).
|
||||
version: "0.30.0"
|
||||
version: "0.31.0"
|
||||
---
|
||||
|
||||
# dispatch — hand a session a task it can actually start on
|
||||
|
|
|
|||
|
|
@ -14,7 +14,7 @@ description: >-
|
|||
the operator names no model and no tool — choosing the model for the next
|
||||
session IS this skill. Not for choosing which REPO gets the next session:
|
||||
that is the `board` skill.
|
||||
version: "0.30.0"
|
||||
version: "0.31.0"
|
||||
---
|
||||
|
||||
# route — what the next session should run with
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue