Skip to content

refactor(statusline): give elements the client's payload and ports to the machine - #535

Merged
Mearman merged 1 commit into
mainfrom
feat/statusline-ports
Oct 19, 2026
Merged

Mearman merged 1 commit into
mainfrom
feat/statusline-ports

Conversation

@Mearman

@Mearman Mearman commented Oct 19, 2026

Copy link
Copy Markdown
Member

Groundwork for the statusline element groups that read from the machine (git, transcripts, cost ledgers, memory). No behaviour changes.

The client's statusline payload is now parsed once, with a schema, into the fields the line uses; a field of the wrong type reads as absent rather than discarding its neighbours. This replaces the hand-narrowed payloadViewOf in the command. Elements get that payload and a small set of ports (environment, home directory, reading a file, running a program with a bound on its time and output) in their render context, so what an element reads from the machine is injected and tested with fakes. The renderer takes one input object instead of a growing list of positional arguments, and docs/architecture.md gains a section on how the statusline is put together.

… the machine

The client's payload is parsed once into the fields the statusline uses, a
field of the wrong type reading as absent instead of discarding its
neighbours, and replaces the hand-narrowed reading of the payload in the
command. Elements receive that payload and a set of ports (environment,
home directory, reading a file, running a program) in their context, so
what an element reads from the machine is injected and tested with fakes.
The renderer takes one input object.
@Mearman
Mearman merged commit 6380b51 into main Oct 19, 2026
32 checks passed
@Mearman
Mearman deleted the feat/statusline-ports branch October 19, 2026 20:56
@ExaDev ExaDev deleted a comment from chatgpt-codex-connector Bot Oct 19, 2026
@ExaDev ExaDev deleted a comment from chatgpt-codex-connector Bot Oct 19, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant