jonah-fleet 1.16.0 → 1.17.0
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
CHANGED
|
@@ -5,23 +5,31 @@ All notable changes to `jonah-fleet` will be documented in this file.
|
|
|
5
5
|
The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
|
|
6
6
|
and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
|
|
7
7
|
|
|
8
|
-
## [1.
|
|
8
|
+
## [1.17.0](https://github.com/juliendurandeu/jonah-fleet/compare/v1.16.0...v1.17.0) (2026-09-19)
|
|
9
9
|
|
|
10
10
|
|
|
11
11
|
### Features
|
|
12
12
|
|
|
13
|
-
* **orchestration:**
|
|
13
|
+
* **orchestration:** adopt 4-part human escalation card in peer-review routine ([#235](https://github.com/juliendurandeu/jonah-fleet/issues/235)) ([#256](https://github.com/juliendurandeu/jonah-fleet/issues/256)) ([053ef9b](https://github.com/juliendurandeu/jonah-fleet/commit/053ef9b48b7d19b1a503f59c9755b74b99624cc8))
|
|
14
14
|
|
|
15
|
-
## [Unreleased]
|
|
15
|
+
## [Unreleased]
|
|
16
16
|
|
|
17
17
|
### Features
|
|
18
18
|
|
|
19
|
+
* **orchestration:** adopt 4-part human escalation card in peer-review routine on round-5 escalation ([#235](https://github.com/juliendurandeu/jonah-fleet/issues/235))
|
|
19
20
|
* **orchestration:** add Routine Run Failure Ingestion & Auto-Closure Protocol to `ORCHESTRATION.md`, unifying prior failure memory and resolution lifecycle across `autowork` and `peer-review`.
|
|
20
21
|
* **prompts:** add Dynamic Target Binding in Scan mode to `autowork.md` and `peer-review.md`, dynamically updating `$ROUTINE_ISSUE_NUMBER` titles with `(Issue #N)` or `(PR #M)` upon claiming so crashed runs are never anonymous.
|
|
21
22
|
* **prompts:** add Prior Failure Ingestion Protocol to `autowork.md` and `peer-review.md`, inspecting past open failed routine issues to extract error logs and crash milestones before implementation or review.
|
|
22
23
|
* **prompts:** add resolution-triggered auto-closure to `autowork.md` and `peer-review.md`, automatically commenting on and closing past failed routine issues for a target once work is marked ready or merged.
|
|
23
24
|
* **housekeeping:** expand `issues-housekeeping.md` to sweep and close stale untargeted `status:failure` routine issues older than 48 hours or whose targets are resolved, eliminating backlog clutter.
|
|
24
25
|
|
|
26
|
+
## [1.16.0](https://github.com/juliendurandeu/jonah-fleet/compare/v1.15.1...v1.16.0) (2026-09-19)
|
|
27
|
+
|
|
28
|
+
|
|
29
|
+
### Features
|
|
30
|
+
|
|
31
|
+
* **orchestration:** routine run failure ingestion, dynamic target binding, and auto-closure ([#232](https://github.com/juliendurandeu/jonah-fleet/issues/232)) ([b76b3fc](https://github.com/juliendurandeu/jonah-fleet/commit/b76b3fccd767e5cc9517d977fd08c8979baf64b6))
|
|
32
|
+
|
|
25
33
|
## [1.15.1](https://github.com/juliendurandeu/jonah-fleet/compare/v1.15.0...v1.15.1) (2026-09-19)
|
|
26
34
|
|
|
27
35
|
|
package/package.json
CHANGED
|
@@ -313,6 +313,7 @@ How autonomous routines escalate decisions, ambiguities, and blockers to human m
|
|
|
313
313
|
- **Recommended Path**: The agent's recommended decision and reasoning, allowing maintainers to unblock execution with a simple confirmation.
|
|
314
314
|
3. **Cross-Routine Enforcement**:
|
|
315
315
|
- `autowork.md`: Required when tripping the Ambiguity Gate (Step 12), encountering a 2nd-strike permanent blocker (`needs-human`), or hitting the review Ping-Pong Cap (Step 3b).
|
|
316
|
+
- `peer-review.md`: Required when round cap `N >= 5` is reached with unresolved blocking findings, applying `needs-human` and escalating to repo maintainer.
|
|
316
317
|
- `triage/SKILL.md`: Required when transitioning issues or PRs to `needs-info` or `ready-for-human`.
|
|
317
318
|
- `issues-housekeeping.md`: Required when auditing and escalating ambiguous, stale, or infeasible issues with `needs-human` or `needs-info`.
|
|
318
319
|
|
|
@@ -27,7 +27,7 @@ The run is SUCCESS only if ALL of these are true:
|
|
|
27
27
|
|
|
28
28
|
- [ ] Identified the target PR: if one was named in the invocation, reviewed exactly that PR; otherwise listed open PRs and selected one by priority
|
|
29
29
|
- [ ] Ran the code-review pass (`/code-review` and security pass), and posted findings as inline review comments
|
|
30
|
-
- [ ] Took exactly one final action: squash-merged (if PR is good, CI green and present; executed Autonomous Issue Synthesis if unlinked; closed tracking issue explicitly if referenced) OR posted findings and **converted the PR back to draft** (`gh pr ready <N> --undo`) for author/autowork in-session fixes OR, if round cap reached at round 5 with blocking findings, converted to draft and escalated to human
|
|
30
|
+
- [ ] Took exactly one final action: squash-merged (if PR is good, CI green and present; executed Autonomous Issue Synthesis if unlinked; closed tracking issue explicitly if referenced) OR posted findings and **converted the PR back to draft** (`gh pr ready <N> --undo`) for author/autowork in-session fixes OR, if round cap reached at round 5 with blocking findings, converted to draft and escalated to human via the 4-part escalation card with `needs-human`
|
|
31
31
|
- [ ] If merging: captured deferred non-blocking findings per materiality bar (filed follow-up issues for material ones, batched or dropped immaterial ones)
|
|
32
32
|
- [ ] If in Scan mode and no eligible PRs exist, logged SUCCESS with "No PRs to review"
|
|
33
33
|
|
|
@@ -35,7 +35,7 @@ If any criterion cannot be met, stop immediately and log FAILURE with the reason
|
|
|
35
35
|
|
|
36
36
|
## Constraints
|
|
37
37
|
|
|
38
|
-
- **Max rounds per PR**: 5 — at round 5 the run must terminate in a merge (if no blocking findings remain) or human escalation, never another ordinary bounce.
|
|
38
|
+
- **Max rounds per PR**: 5 — at round 5 the run must terminate in a merge (if no blocking findings remain) or human escalation (via the mandatory 4-part escalation card with `needs-human`), never another ordinary bounce.
|
|
39
39
|
- **Max iterations**: 65 — after 65 tool call rounds without completing Definition of Done, STOP. Log FAILURE with category `token_limit`.
|
|
40
40
|
- **Max scope**: one PR per run. Do not review a second PR after finishing the first.
|
|
41
41
|
- **No speculative work**: review only the diff in the PR.
|
|
@@ -159,7 +159,16 @@ If the PR is clean and approved for merge, but lacks a `Closes #N` tracking link
|
|
|
159
159
|
|
|
160
160
|
- **If Blocking findings exist**:
|
|
161
161
|
- If `N < 5`: Post inline comments, submit review as `COMMENT`, and convert PR to draft (`gh pr ready <N> --undo`).
|
|
162
|
-
- If `N >= 5`: Convert PR to draft, post summary comment
|
|
162
|
+
- If `N >= 5`: Convert PR to draft, apply `needs-human` label, and post summary escalation comment to the PR formatted with the mandatory 4-part escalation card:
|
|
163
|
+
```markdown
|
|
164
|
+
## 🛑 Escalation: Human Decision Required
|
|
165
|
+
- **Decision Needed**: [1 focused question or choice]
|
|
166
|
+
- **Evidence ("Why I believe this")**: [Specific files, lines, test outputs, or conflicting docs]
|
|
167
|
+
- **Evaluated Options & Trade-offs**:
|
|
168
|
+
- *Option A*: [Pros / Cons]
|
|
169
|
+
- *Option B*: [Pros / Cons]
|
|
170
|
+
- **Recommended Path**: [Agent recommendation]
|
|
171
|
+
```
|
|
163
172
|
- **If Clean (or only Non-blocking findings)**:
|
|
164
173
|
- If the PR branch has minor mechanical merge conflicts against `origin/main` (e.g. adjacent `CHANGELOG.md` entries from concurrent merges) while code and tests are sound, resolve the conflict mechanically via `/resolving-merge-conflicts` before squash-merging rather than bouncing the PR back to draft.
|
|
165
174
|
- If PR lacks `Closes #N`, execute Autonomous Issue Synthesis (Step 5.5).
|