chore(release): 0.24.0
Version bump across the six files the release gate checks (plugin.json, package.json, README badge, three SKILL.md frontmatter fields) plus the CHANGELOG entry, covering the three commits unreleased since v0.23.0: -09fd4b7feat(board): --inbox-plan, a fourth rendering -44fb34afix(hooks): state-line-guard MAX_LINES 60 -> 120 -19c0c10feat(coord,board): dead-letter detection (WP1d detection half) All four selftest suites green at this commit: coord 197/197, board 178/178, route 69/69, state-line-guard 21/21. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01Neu6DivA9k5op2rSEvcewn
This commit is contained in:
parent
19c0c1010b
commit
03e36c9499
7 changed files with 57 additions and 6 deletions
|
|
@ -1,6 +1,6 @@
|
|||
{
|
||||
"name": "repo-mailbox",
|
||||
"version": "0.23.0",
|
||||
"version": "0.24.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"
|
||||
|
|
|
|||
51
CHANGELOG.md
51
CHANGELOG.md
|
|
@ -5,6 +5,57 @@ 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.24.0] - 2026-08-14
|
||||
|
||||
### Added
|
||||
|
||||
- **`board.sh --inbox-plan`: a fourth rendering, independent of `--plan`'s
|
||||
admission gate.** 0.22.0 narrowed `--plan` to admit only repos that actually
|
||||
owe a reply, and morning-driver derives its `--innboks` population from
|
||||
`--plan` — so 21 mailboxes with unhandled post produced only 3 openable tabs.
|
||||
The two questions are genuinely different: `--plan` answers "which repos
|
||||
deserve a tab today" (admission, ranking, a cap), `--inbox-plan` answers
|
||||
"which repos have unhandled post" (population, no judgement, no cap). It is a
|
||||
superset of `--plan`'s candidates, not a complement, which is why it is a
|
||||
separate rendering rather than a flag on the existing one. Emits one block per
|
||||
mailbox name with `pending>0`, classified against `board.sh`'s own `RECORDS`
|
||||
scan with no new discovery logic: `class=repo` (STATE.md present), `no-state`
|
||||
(scanned repo, no STATE.md), `orphan-mailbox` (no matching directory at all).
|
||||
`pending=`/`owed=` surface `coord-count.sh`'s two counts directly. Accepted
|
||||
work order: morning-driver 20260814T175317Z, corrected 20260814T180854Z.
|
||||
`board-selftest.sh` section 15 (6 fixtures, isolated root + mailbox).
|
||||
|
||||
- **Dead-letter detection: mailboxes no session has ever read.** `coord-count.sh`
|
||||
gains a fourth TSV column — `-` when a mailbox has `.origin` (a real session
|
||||
has read it via SessionStart), otherwise the age in whole days of the oldest
|
||||
pending message. `.origin` is written only by `coord-inbox.sh`'s non-`--repo`
|
||||
path, so its absence means the mailbox is never reached by normal injection: a
|
||||
genuine dead letter, not merely a slow one. `board.sh --brief` surfaces
|
||||
mailboxes past a 3-day threshold as a new "ALDRI LEST" section, mirroring the
|
||||
existing orphan-mailbox listing. This is the DETECTION half of `.claude`'s
|
||||
WP1d order (2026-08-14) only — the action half (report-to-sender / retract)
|
||||
is a policy change in retract semantics, remains unapproved design, and was
|
||||
deliberately not built here.
|
||||
|
||||
### Fixed
|
||||
|
||||
- **`pre-state-line-guard.mjs`: `MAX_LINES` raised 60 -> 120.** Operator
|
||||
decision 2026-08-14; the global CLAUDE.md's STATE.md convention moved from
|
||||
`~60` to `~120` and the hook enforced the old number. The ratchet mechanics
|
||||
are unchanged — only the constant moved, plus every selftest fixture and
|
||||
boundary value that encoded 60 as a literal. Section 8's ratchet fixtures were
|
||||
re-based rather than rescaled, so they still exercise the ratchet instead of
|
||||
degenerating into a flat gate at the new threshold. Re-verified the real-tree
|
||||
justification at the new limit: 13 STATE.md files over 120, one at 1496 (the
|
||||
historical 23-over-60 / one-at-1405 figures are left in place as a record of
|
||||
the tree when the ratchet bug was found). `session-start.mjs`'s 160-line
|
||||
injection window still covers 120 with room to spare.
|
||||
|
||||
### Notes
|
||||
|
||||
- Selftest counts this release: coord 197 (was 191), board 178 (was 175),
|
||||
route 69, state-line-guard 21.
|
||||
|
||||
## [0.23.0] - 2026-08-14
|
||||
|
||||
### Added
|
||||
|
|
|
|||
|
|
@ -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.23.0",
|
||||
"version": "0.24.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.23.0"
|
||||
version: "0.24.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.23.0"
|
||||
version: "0.24.0"
|
||||
---
|
||||
|
||||
# coord-send — natural-language front door for inter-repo messages
|
||||
|
|
|
|||
|
|
@ -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.23.0"
|
||||
version: "0.24.0"
|
||||
---
|
||||
|
||||
# route — what the next session should run with
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue