Skip to content

release: v0.1.0 - #6

Merged
aakashpawar1999 merged 35 commits into
mainfrom
develop
Aug 16, 2026
Merged

aakashpawar1999 merged 35 commits into
mainfrom
develop

Conversation

@aakashpawar1999

Copy link
Copy Markdown
Contributor

Summary

io-cli 0.1.0 — the first release. A terminal interface over io-harness that renders run events, edits a prompt and reads a keyboard, and contains no agent loop, provider client, tool, sandbox, policy engine or session store of its own.

The record is sealed and pinned: io-cli/0.1.0: sha256:e25f9954….

Type

feat

Target branch

  • This is a develop → main release PR (release: v0.1.0)

Changelog

  • CHANGELOG.md carries the ## [0.1.0] section, which is what release.yml reads for the Release notes.

Checklist

  • Code is formatted and lints clean
  • Tests pass — 100 across 19 binaries, 0 failures
  • The change is focused on one concern
  • No signature / attribution trailers in commits

Notes for the reviewer

Gates re-measured on the shipped tree at 9349aa0; develop's tree is identical to the gated one. CI green on macOS, Linux and Windows plus lint and msrv. All four release targets were proved to cross-compile and package on a throwaway branch before the tag depended on them.

The tag v0.1.0 is pushed alone after this merge; that is what cuts the Release and attaches the four artifacts and SHA256SUMS.

F1 is the release's one manual criterion and it needs a clean first run: a
throwaway workspace with something real to fix, a throwaway config home so the
operator's own configuration is untouched, and no provider key in the
environment, because the wizard's masked credential field is part of what the
criterion exercises.
The viewport is a fixed few rows and a streaming answer commits each line to
scrollback as it finishes, so a two-hundred-line answer leaves it the size it
started. ratatui sets an inline viewport's height when the terminal is built and
offers no way to change it, and rebuilding would re-query the cursor and risk
shifting the scrollback this product exists to protect.

These three files were modified while US-IO-CLI-0.1.0-T12 was in flight but were
not in that task's declared files list, so the checkpoint that commits a task's
own files did not stage them. Every CI run since then was green against a tree
that had neither the change nor the tests for it, which is exactly why the
commit protocol says to read the staged list rather than trust it.
Splitting the wizard onto its own taller viewport means attaching the terminal
twice, and the keyboard thread had been moved ahead of the first attach. Placing
an inline viewport asks the terminal where its cursor is and reads the answer
back off stdin, so a thread sitting in crossterm::event::read() consumed it and
the query timed out — the binary refused to start, with the error added for
exactly this case pointing at the terminal rather than at us.

The reader now polls instead of blocking, so it can be told to stand down and
joined; it starts only once a screen is attached and stops before the next
attach. Keyboard::start takes the attached screen as a witness argument, which
makes the ordering a compile error to get wrong rather than a comment asking
politely.

Caught by the owner running the binary; no test in the suite reaches the
driver's own startup ordering.
feat: io-cli 0.1.0 — the inline terminal interface over io-harness
@github-advanced-security

Copy link
Copy Markdown

You are seeing this message because GitHub Code Scanning has recently been set up for this repository, or this pull request contains the workflow file for the Code Scanning tool.

What Enabling Code Scanning Means:

  • The 'Security' tab will display more code scanning analysis results (e.g., for the default branch).
  • Depending on your configuration and choice of analysis tool, future pull requests will be annotated with code scanning analysis results.
  • You will be able to see the analysis results for the pull request's branch on this overview once the scans have completed and the checks have passed.

For more information about GitHub Code Scanning, check out the documentation.

@aakashpawar1999
aakashpawar1999 merged commit a6c711e into main Aug 16, 2026
16 of 17 checks passed
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.

2 participants