Skip to content

Commit 9c684a6

Browse files
docs: update unreleased changelog
1 parent 1da0a0e commit 9c684a6

1 file changed

Lines changed: 13 additions & 12 deletions

File tree

CHANGELOG.md

Lines changed: 13 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -4,30 +4,31 @@
44

55
### Added
66

7-
- New non-rendered `run_complete` event in the canonical event log carrying `{ marker, inputRunSeq }`, so automation consumers can correlate `input_run` with completion without scanning rendered output ([#55](https://github.com/coder/agent-tty/pull/55), tracking [#21](https://github.com/coder/agent-tty/issues/21)).
8-
- `release:prep` and `release:finalize` npm scripts plus pinned `release-it` config for an opinionated release-prep workflow that updates package version files, creates a single `release/<version>` commit, and tags `v${version}` from a clean, synced `main` without ever publishing or creating GitHub Releases ([#72](https://github.com/coder/agent-tty/pull/72)).
7+
- New non-rendered `run_complete` event in the canonical event log carrying `{ marker, inputRunSeq }`, so automation consumers can correlate `input_run` with completion without scanning rendered output ([#55](https://github.com/coder/agent-tty/pull/55), tracks [#21](https://github.com/coder/agent-tty/issues/21)).
8+
- `release:prep` and `release:finalize` npm scripts plus pinned `release-it` config for an opinionated release-prep workflow that updates package version files, creates a single `release/<version>` commit, and tags `v${version}` from clean, synced `main` without ever publishing or creating GitHub Releases ([#72](https://github.com/coder/agent-tty/pull/72)).
99
- "Agent Demo" section in the README and an evergreen `dogfood/agent-uses-agent-tty/` bundle that records Codex and Claude TUIs driving `nvim --clean` through `agent-tty`, with outer/inner WebMs, asciicasts, transcripts, thumbnails, and a `reproduce.sh` script ([#54](https://github.com/coder/agent-tty/pull/54)).
1010
- `dogfood/issue-21-run-completion-clean/` verification bundle proving snapshots, screenshots, asciicasts, WebM, and the `output` event stream contain no completion-marker bytes while the public `run` envelope still exposes `marker`, `completed`, and `durationMs` ([#55](https://github.com/coder/agent-tty/pull/55)).
1111
- AFK Triage maintainer flow under `.sandcastle/` that fans out Claude Code triage agents across `needs-triage` / active `needs-info` GitHub issues, each in its own per-issue Coder workspace on `dev.coder.com` with a real `coder/agent-tty` checkout, governed by `docs/adr/0004-afk-triage-apply-policy.md` and the AFK comment marker policy ([#86](https://github.com/coder/agent-tty/pull/86), [#89](https://github.com/coder/agent-tty/pull/89)).
1212

1313
### Changed
1414

15-
- `run --wait` no longer leaks its internal completion marker into rendered artifacts. Completion is signaled via an APC sentinel consumed by the host PTY ingestion path before `output` events are appended, with a defensive scrub for any echoed `printf` postamble. Waits resolve on the new `run_complete` event instead of polling rendered snapshots for marker text. The public `run` JSON envelope is unchanged ([#55](https://github.com/coder/agent-tty/pull/55), tracking [#21](https://github.com/coder/agent-tty/issues/21)).
16-
- Asciicast export now explicitly skips non-rendered events (`input_text`, `input_paste`, `input_keys`, `input_run`, `run_complete`, `signal`, `exit`) so recordings only contain `o`, `r`, and `m` frames ([#55](https://github.com/coder/agent-tty/pull/55)).
17-
- `wait --text` / `--regex` / `--screen-stable-ms` / `--cursor-row` / `--cursor-col` validation is centralized in a shared render-wait matcher used by both live host polling and CLI offline replay fallback. Invalid, unsafe (nested-quantifier), or out-of-range patterns are rejected locally with `INVALID_INPUT` before any RPC or offline replay snapshot work. Public `wait` JSON shapes and human output are unchanged ([#76](https://github.com/coder/agent-tty/pull/76)).
18-
- Renderer dispose now uses a per-lifecycle `ResourceScope` for deterministic LIFO release of page, browser context, browser, and local server. Public `dispose()` remains best-effort and resolves successfully; individual cleanup failures are now surfaced through the logger as `warn` entries with `{ name, error }` instead of being silently swallowed. Concurrent artifact-manifest appends route through a generic `KeyedSerializer<string>` while preserving existing serialization semantics ([#83](https://github.com/coder/agent-tty/pull/83)).
19-
- Local and CI dependency bootstrap now uses [`aube`](https://github.com/endevco/aube): `mise run bootstrap` runs `aube exec playwright install chromium` and `mise run bootstrap-ci` runs `aube ci`. The `mise`-pinned `aube` was bumped to `1.10.4` (migrating from `pnpm` / `npm` lockfiles to `aube-lock.yaml`), and `pnpm.allowBuilds` permits native builds for `@coder/libghostty-vt-node`, `esbuild`, `fsevents`, `node-pty`, `@parcel/watcher`, and `msgpackr-extract` ([#51](https://github.com/coder/agent-tty/pull/51), [#57](https://github.com/coder/agent-tty/pull/57), [#73](https://github.com/coder/agent-tty/pull/73), [#91](https://github.com/coder/agent-tty/pull/91)).
20-
- Internal session-status policy, event-log codec, snapshot capture, screenshot capture, command-target resolution, and waited-run completion bookkeeping are centralized into shared modules. No CLI, protocol, JSON envelope, manifest entry, or `rendererBackend` reporting changes ([#67](https://github.com/coder/agent-tty/pull/67), [#68](https://github.com/coder/agent-tty/pull/68), [#69](https://github.com/coder/agent-tty/pull/69), [#70](https://github.com/coder/agent-tty/pull/70), [#75](https://github.com/coder/agent-tty/pull/75), [#78](https://github.com/coder/agent-tty/pull/78)).
21-
- Repository tooling switched from ESLint / Prettier to Oxc: `npm run format` / `format:check` now invoke `oxfmt`, and `npm run lint` / `lint:fix` invoke `oxlint` plus `oxlint-tsgolint` for type-aware checks. CI and `mise` task names are unchanged ([#71](https://github.com/coder/agent-tty/pull/71)).
15+
- `run --wait` no longer leaks its internal completion marker into rendered artifacts ([#55](https://github.com/coder/agent-tty/pull/55), tracks [#21](https://github.com/coder/agent-tty/issues/21)).
16+
- Asciicast export now explicitly skips non-rendered events so recordings only contain `o`, `r`, and `m` frames ([#55](https://github.com/coder/agent-tty/pull/55)).
17+
- Centralized render-wait validation rejects invalid, unsafe (nested-quantifier), or out-of-range patterns locally before RPC or offline replay snapshot work ([#76](https://github.com/coder/agent-tty/pull/76)).
18+
- Renderer dispose now uses a per-lifecycle `ResourceScope`; cleanup failures are surfaced through the logger as `warn` entries instead of being silently swallowed. Concurrent artifact-manifest appends route through a generic `KeyedSerializer<string>` ([#83](https://github.com/coder/agent-tty/pull/83)).
19+
- Local and CI dependency bootstrap now uses [`aube`](https://github.com/endevco/aube) 1.10.4 with `aube-lock.yaml` replacing pnpm/npm lockfiles ([#51](https://github.com/coder/agent-tty/pull/51), [#57](https://github.com/coder/agent-tty/pull/57), [#73](https://github.com/coder/agent-tty/pull/73), [#91](https://github.com/coder/agent-tty/pull/91)).
20+
- Internal session-status policy, event-log codec, snapshot/screenshot capture, command-target resolution, and run-completion bookkeeping centralized into shared modules with no public surface changes ([#67](https://github.com/coder/agent-tty/pull/67), [#68](https://github.com/coder/agent-tty/pull/68), [#69](https://github.com/coder/agent-tty/pull/69), [#70](https://github.com/coder/agent-tty/pull/70), [#75](https://github.com/coder/agent-tty/pull/75), [#78](https://github.com/coder/agent-tty/pull/78)).
21+
- Repository tooling switched from ESLint / Prettier to Oxc (`oxfmt`, `oxlint`, `oxlint-tsgolint`) ([#71](https://github.com/coder/agent-tty/pull/71)).
2222

2323
### Fixed
2424

25-
- Default-location screenshot PNGs, snapshot JSON files, and `record export` artifacts are now rolled back when the subsequent artifact-manifest append fails, so a manifest-validation failure no longer leaves an orphaned, unmanifested file under the session's `artifacts/` directory. Explicit `--out` paths supplied by the caller are preserved on failure because they belong to the user, not the session manifest ([#95](https://github.com/coder/agent-tty/pull/95), fixes [#79](https://github.com/coder/agent-tty/issues/79)).
26-
- `EventLog.open` now closes the underlying file handle when validation (size-limit check or existing-content parsing) fails, preventing a file-descriptor leak on rejected session host startup ([#51](https://github.com/coder/agent-tty/pull/51)).
25+
- Default-location screenshot, snapshot, and `record export` artifacts are rolled back when manifest append fails ([#95](https://github.com/coder/agent-tty/pull/95), fixes [#79](https://github.com/coder/agent-tty/issues/79)).
26+
- Host waits, render polling, run-completion observation, lifecycle polling, and RPC request paths now thread `AbortSignal` end-to-end. Stale RPC socket liveness probe is now bounded to 1s ([#94](https://github.com/coder/agent-tty/pull/94), fixes [#84](https://github.com/coder/agent-tty/issues/84)).
27+
- `EventLog.open` now closes the underlying file handle when validation fails, preventing a file-descriptor leak on rejected session host startup ([#51](https://github.com/coder/agent-tty/pull/51)).
2728

2829
### Notes
2930

30-
- The `engines.node` range remains `>=24.0.0 <26`. An attempted bump to Node 26 was reverted in [#91](https://github.com/coder/agent-tty/pull/91) because `playwright install chromium` hangs on Node 26 during zip extraction ([microsoft/playwright#40724](https://github.com/microsoft/playwright/issues/40724)); the upstream fix is merged but not yet released.
31+
- The `engines.node` range remains `>=24.0.0 <26`. An attempted bump to Node 26 was reverted in [#91](https://github.com/coder/agent-tty/pull/91) because `playwright install chromium` hangs on Node 26 during zip extraction ([microsoft/playwright#40724](https://github.com/microsoft/playwright/issues/40724)).
3132

3233
## [v0.1.1-beta.4](https://github.com/coder/agent-tty/releases/tag/v0.1.1-beta.4) - 2026-04-25
3334

0 commit comments

Comments
 (0)