• Home
  • Features
  • Pricing
  • Docs
  • Announcements
  • Sign In

umputun / agterm / 29881628986
98%

Build:
DEFAULT BRANCH: master
Ran 22 Jul 2026 12:58AM UTC
Jobs 1
Files 72
Run time 1min
Badge
Embed ▾
README BADGES
x

If you need to use a raster PNG badge, change the '.svg' to '.png' in the link

Markdown

Textile

RDoc

HTML

Rst

22 Jul 2026 12:55AM UTC coverage: 97.916% (+0.06%) from 97.857%
29881628986

push

github

web-flow
feat: per-session restore-command override (#271)

* docs: add per-session restore-command override implementation plan

The plan for a per-session, per-pane override that pins what a pane restores
on the next launch, from GitHub discussion #264. It covers the model state,
the CommandRestore precedence, the surface factories, the control surface,
the tree read-back, the agtermctl subcommand, and the five keep-in-sync
documentation surfaces.

* refactor: split app-global control arms into ControlServer+AppCommands

ControlServer+SessionActions.swift held both the per-session arms and the
app-global ones, pushing past the file-size budget with the session.restore
arm still to come.

Move the app-global arms — the tree projection, sidebar visibility/mode and
expand/collapse, keymap and config reload, themes, and the quick terminal —
into a sibling ControlServer+AppCommands.swift, matching the existing
+SurfaceIO/+WindowCommands split. Pure code motion apart from dropping the
thin wrappers the sidebar arms had accumulated: the implementations now carry
the ControlActions names directly.

* feat: pin a per-pane restore command in the session model

The restore-running-command feature re-runs whatever a pane had in the
foreground at the last clean quit. That is wrong for a non-idempotent command
such as `claude --resume <id> --fork-session`, which mints a new session on
every restart, and there is no way to say "restore THIS instead".

Add the persisted per-pane override the control surface will drive. Session
gains a sticky `restoreCommand`/`splitRestoreCommand` pair plus transient
pending slots, Snapshot and WindowLibrary carry them across a quit, and only
an app-bootstrap restore (`restore(from:launchRestore:)`) arms the pending
slot, so a mid-process window reload or Reopen Closed Item never executes
anything. A split hidden at the last quit drops its pin, the same rule
closeSplit applies when the pane goes away.

CommandRestore.restorePlan takes a Rest... (continued)

180 of 180 new or added lines in 13 files covered. (100.0%)

5544 of 5662 relevant lines covered (97.92%)

5310078.51 hits per line

Jobs
ID Job ID Ran Files Coverage
1 29881628986.1 22 Jul 2026 12:58AM UTC 72
97.92
GitHub Action Run
Source Files on build 29881628986
  • Tree
  • List 72
  • Changed 13
  • Source Changed 13
  • Coverage Changed 12
Coverage ∆ File Lines Relevant Covered Missed Hits/Line
  • Back to Repo
  • Github Actions Build #29881628986
  • cb8cf1c9 on github
  • Prev Build on master (#29759270154)
  • Next Build on master (#29886308531)
STATUS · Troubleshooting · Open an Issue · Sales · Support · CAREERS · ENTERPRISE · START FREE TRIAL · SCHEDULE DEMO
ANNOUNCEMENTS · TWITTER · TOS & SLA · Supported CI Services · What's a CI service? · Automated Testing

© 2026 Coveralls, Inc