You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
feat(api): phase(name, { title }, body) overload for static titles
When the title is known at phase-creation time (which is most of the
time — harness code almost always knows what a phase does upfront), the
runtime setTitle path from 0.1.12 is overkill. New overload:
await phase('pipeline', { title: 'Ingest & transform' }, async () => { … });
Engine's stage() signature accepts either (id, body) or (id, opts, body),
opts = { title?: string }. The stage-enter event carries the static
title, so the TUI renders it on the node's very first frame without
waiting for a follow-up stage-title event. Runtime ctx.setTitle() still
works — if both are used, the dynamic override wins.
Backward compat: every existing `phase(name, body)` keeps working.
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
Copy file name to clipboardExpand all lines: CHANGELOG.md
+5Lines changed: 5 additions & 0 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -5,6 +5,11 @@ All notable changes to this project will be documented in this file.
5
5
The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.1.0/),
6
6
and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
7
7
8
+
## [0.1.13] - 2026-04-19
9
+
10
+
### Added
11
+
-`phase(name, { title }, body)` overload — static title at phase-creation time. Use when you know the title upfront; cleaner than the runtime `setTitle` path. Runtime `ctx.setTitle(...)` still works and overrides the static title. `stage-enter` event now carries an optional `title` field so the TUI sees the title on its first render.
0 commit comments