@scotthuang/agent-knock-knock 0.10.2 → 0.10.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 CHANGED
@@ -1,5 +1,17 @@
1
1
  # Changelog
2
2
 
3
+ ## 0.10.3 - 2026-08-07
4
+
5
+ ### Added
6
+
7
+ - Supervise active terminal bridge monitors from the OpenClaw plugin every five seconds and automatically recreate an unexpectedly exited owner without requiring `list` or `status`.
8
+ - Retain redacted durable-completion detector limitation and recovery diagnostics in each Turn's event history.
9
+
10
+ ### Fixed
11
+
12
+ - Treat Store writer-lock timeouts as transient monitor deferrals with bounded backoff while preserving the hard fence for a genuinely superseded Session binding generation.
13
+ - Complete accepted Codex turns from their exact bound rollout and native turn UUID beyond the legacy recent-turn window, while preserving the existing exactly-once completion claim across recovery.
14
+
3
15
  ## 0.10.2 - 2026-08-07
4
16
 
5
17
  ### Fixed
package/README.md CHANGED
@@ -1,7 +1,6 @@
1
1
  # Agent Knock Knock (AKK)
2
2
 
3
3
  [![npm](https://img.shields.io/npm/v/%40scotthuang%2Fagent-knock-knock)](https://www.npmjs.com/package/@scotthuang/agent-knock-knock)
4
- [![CI](https://github.com/scotthuang/agent-knock-knock/actions/workflows/ci.yml/badge.svg)](https://github.com/scotthuang/agent-knock-knock/actions/workflows/ci.yml)
5
4
  [![Node.js](https://img.shields.io/badge/Node.js-%3E%3D22.19-339933)](https://nodejs.org/)
6
5
  [![License: MIT](https://img.shields.io/badge/License-MIT-blue.svg)](https://github.com/scotthuang/agent-knock-knock/blob/main/LICENSE)
7
6
 
@@ -221,7 +220,7 @@ The core command surface is intentionally small:
221
220
  /akk cancel <turn-selector>
222
221
  ```
223
222
 
224
- `/akk list` performs a controlled reconciliation across managed turns, and `/akk status` limits reconciliation to the selected turn. This can close records whose idle retention has elapsed and restore eligible missing monitors, but it does not send terminal input or retry callback delivery. Standalone shell queries are read-only unless `--reconcile` is explicitly passed, and resolving a selector never changes turn state.
223
+ `/akk list` performs a controlled reconciliation across managed turns, and `/akk status` limits reconciliation to the selected turn. This can close records whose idle retention has elapsed and restore eligible missing monitors, but it does not send terminal input or retry callback delivery. Independently, the running OpenClaw plugin supervises eligible `waiting_for_agent` monitors every five seconds; this liveness pass only restores missing monitors and likewise never retries callback transport. Standalone shell queries are read-only unless `--reconcile` is explicitly passed, and resolving a selector never changes turn state.
225
224
 
226
225
  Selectors fail closed: `only` works only with one actionable target, `latest` requires a unique newest target, and `codex` or `claude` must identify exactly one eligible pane. These names and `@short-ref` are human-facing resolution inputs; a natural-language tool call may preserve one explicitly named by the user, but must not infer one. Managed JSON actions contain the authoritative full `session_id` or `turn_id`. For first attach, an unmanaged raw-terminal row's send action may instead contain its own prefilled `selector`; its advertised raw controls may contain that row's prefilled `conversation_id`. Neither compatibility selector may be guessed, copied from another row, or passed in an authoritative ID field. Before every terminal operation, AKK revalidates the expected agent PID and tmux pane identity, then confirms that the process and pane working directories still match; every send also revalidates the idle prompt immediately before typing.
227
226
 
@@ -290,7 +289,7 @@ Place `autoApprove` inside the plugin `config` object. It is disabled by default
290
289
 
291
290
  AKK has no hosted control plane or telemetry and does not modify coding-agent settings. Its terminal state and logs stay on your machine; Claude approval callbacks omit raw commands, while Codex may include the visible command details OpenClaw needs to present for review.
292
291
 
293
- At startup, AKK only registers its tools and reconciles monitors for existing managed turns. It never launches a coding agent; new work reuses exactly one eligible agent pane that you already started in tmux.
292
+ At startup, AKK registers its tools and reconciles monitors for existing managed turns. While the OpenClaw Gateway remains healthy, its single-flight supervisor schedules the next reconciliation five seconds after the previous sweep finishes, so an unexpectedly exited monitor is recreated without a `list` or `status` call. With the Store writable, reconciliation returning normally, and the same Turn binding still current, AKK prepares one immutable `done` message/outbox entry within 30 seconds after reliable native completion evidence becomes stable. External callback transport and wake acknowledgement are outside this bound. It never launches a coding agent; new work reuses exactly one eligible agent pane that you already started in tmux.
294
293
 
295
294
  Your task content is still processed by OpenClaw and the coding-agent or model providers you configure. Review agent permissions and keep secrets out of task prompts.
296
295
 
@@ -347,20 +346,16 @@ See [CONTRIBUTING.md](https://github.com/scotthuang/agent-knock-knock/blob/main/
347
346
 
348
347
  ### Maintainer Release
349
348
 
350
- Create the matching `vX.Y.Z` tag from the intended clean `main` commit and push
351
- it to trigger npm publishing and the GitHub Release. During rapid iteration,
352
- the native lifecycle smoke remains an optional manual diagnostic rather than a
353
- publishing prerequisite.
354
-
355
- The package is configured for ClawHub trusted publishing. After pushing the
356
- matching release tag (replace `vX.Y.Z` below), dispatch the `ClawHub
357
- Publish` workflow from that tag. It derives `beta` versus `latest` and defaults
358
- to a dry run:
359
-
360
- ```bash
361
- gh workflow run clawhub-publish.yml --ref vX.Y.Z -f dry_run=true
362
- gh workflow run clawhub-publish.yml --ref vX.Y.Z -f dry_run=false
363
- ```
349
+ GitHub Actions runners are intentionally disabled during the current
350
+ rapid-iteration phase. From the intended clean merged `main` commit, complete
351
+ the local typecheck, full test, OpenClaw compatibility, package dry-run, and
352
+ ClawHub validation/dry-run gates; then create and push the matching `vX.Y.Z`
353
+ tag and publish npm, the GitHub Release, and ClawHub manually. Publish each
354
+ version to ClawHub once: its public index may lag the successful upload, so
355
+ verify the version-specific record instead of submitting a duplicate. The
356
+ checked-in workflows remain templates for restoring hosted release automation
357
+ later. The native lifecycle smoke remains an optional manual diagnostic rather
358
+ than a publishing prerequisite.
364
359
 
365
360
  ## Storage and Logs
366
361