v0.3.0 8f98fd3

2026-10-14

0a7462cfix(host): bound action resolution and send archive tokens only to the origin the host names GPG Verifiedbrice
dd71becfix(executor): stop the image setup of a local composite action with the step GPG Verifiedbrice
1955003refactor(executor): additive mask API, scope and timeout hook points; save-state keeps spelling GPG Verifiedbrice
8a89149fix(host): bound result frames of the guest and copy what is cut GPG Verifiedbrice
9f6323cfix(executor): check archive links against the stripped root and cap the decompressed stream GPG Verifiedbrice
3d4e205fix(executor): stop problem matchers when the step is cancelled GPG Verifiedbrice
9911debfix(executor): read the step summary from the checked descriptor, bounded GPG Verifiedbrice
f0e28f8fix(executor): track original masks apart from their encodings GPG Verifiedbrice

2026-10-13

8111cdbtest(executor): pre and post of repository and docker actions, token not in the environment GPG Verifiedbrice
0ee31e3test(guest): resolver round trip with the host handler GPG Verifiedbrice
92205fffeat(executor): warn about actions upgraded to Node.js 24 in Complete job GPG Verifiedbrice
76038adstyle(executor): error strings and unused code for the linter GPG Verifiedbrice
622eabbtest(executor): cover local, repository, composite, node and docker actions GPG Verifiedbrice
aea5d73feat(executor): run node, docker, composite and local actions with pre and post stages GPG Verifiedbrice
a6671fafeat(host): resolve actions for the executor and give the job token to github.token GPG Verifiedbrice
1396410feat(executor): extract action archives with traversal and link checks GPG Verifiedbrice
e59b2f0test(guest): results frames over the stream; docs: attribution for the ported code GPG Verifiedbrice
9116f1efeat(host): forward annotations, summaries and step outcomes to ermite GPG Verifiedbrice
77f2262feat(executor): annotations, problem matchers, summaries, step outcome and timeout-minutes GPG Verifiedbrice
b90459efeat(executor): mask like the official runner and add masks at run time GPG Verifiedbrice
d727ef4feat(execstream): carry annotations, summaries and step outcomes GPG Verifiedbrice
c4ec791chore(deps): bump ermite-api to 49ac5fd and ermite-actions to 3425eb2 GPG Verifiedbrice
de0182dchore(deps): bump ermite-api to 49ac5fd GPG Verifiedbrice
6da746aMerge pull request 'feat(externals): provide Node.js to jobs outside the image' (#10) from feat/node-externals into main merge SSH Unverifiedbnema
ea3c7aafix(externals): build stubs once via rename, record alpine checksums, retry on a timer GPG Verifiedbrice
ad47140feat(externals): provide pinned Node.js to sandboxes outside the image GPG Verifiedbrice
93b85feMerge pull request 'feat(netpolicy): opt-in guest access to the forge for staging hosts' (#9) from feat/guest-forge-access into main merge SSH Unverifiedbnema
a236b1ddocs(readme): warn that guest forge traffic comes from a private address GPG Verifiedbrice
6699244feat(runner): opt-in guest access to the forge host:port of ERMITE_RUNNER_URL GPG Verifiedbrice
853c006feat(netpolicy): optional TCP accept to the gateway on one port GPG Verifiedbrice
c747a0bfeat(dnsfwd): answer one overridden name with the listener address GPG Verifiedbrice
cbb8ad6Merge pull request 'fix(executor): mask base64 of a secret followed by other bytes' (#8) from fix/mask-base64-tail into main merge SSH Unverifiedtag v0.1.0bnema
e66e40edocs(executor): say the truncated base64 masks go beyond actions/runner GPG Verifiedbrice
cc22a18fix(executor): mask base64 of a secret followed by other bytes GPG Verifiedbrice
fc8849eMerge pull request 'fix(executor): GitHub parity gaps found by conformance compare' (#7) from feat/ci-parity-2 into main merge SSH Unverifiedbnema
cec204fbuild: use the merged ermite-actions (5c0e25d) GPG Verifiedbrice
a0aa417docs(executor): say where secrets.GITHUB_TOKEN comes from GPG Verifiedbrice
e1ff0f2fix(executor): mask the encodings of the token as the official runner does GPG Verifiedbrice
f355cc5fix(executor): mask the token in step names, the job error and job outputs GPG Verifiedbrice
5a16c3drefactor(executor): compile the hashFiles regexps once GPG Verifiedbrice
c9a800afix(executor): hashFiles skips FIFOs instead of hanging on them GPG Verifiedbrice
7d09fafbuild: drop the old ermite-actions entries from go.sum GPG Verifiedbrice
527f9ebfeat(executor): implement hashFiles() GPG Verifiedbrice
e88c60ffeat(executor): report template errors like GitHub, with the Json.NET message GPG Verifiedbrice
305254efeat(executor): expose the job token as secrets.GITHUB_TOKEN, masked in the log GPG Verifiedbrice
79df483fix(executor): trim the evaluated job name GPG Verifiedbrice
37766e4fix(executor): evaluate display names with github.job empty like GitHub GPG Verifiedbrice

2026-10-12

3418cfaMerge pull request 'feat(executor): print the GITHUB_TOKEN permissions GitHub grants' (#6) from feat/token-permissions-display into main merge SSH Unverifiedbnema
bdd5903refactor(executor): review fixes for the token permissions display GPG Verifiedbrice
9a7971cfeat(executor): print the GITHUB_TOKEN permissions GitHub grants GPG Verifiedbrice

Keyboard shortcuts

Single-key shortcuts are on. ctrl k and esc work whatever this says.

ctrl k :
go to a section, branch, tag, file or repository
?
this list
j k
move the row cursor down / up
enter
open the row under the cursor; on Files, a directory opens or closes in place
↑ ↓ ← → home end
in the file tree (focus on a row): previous / next row, close / open a directory or go to its parent / first entry, first / last row. They never open a file
l h
on Files: open a directory or a file / close a directory or go up to its parent, then to the parent page. Elsewhere: into the side panel (on a merge request, its files) / back to the content; there j k move between its controls
g g G
first / last row
/
filter the list; on Files, find a file anywhere in the repository (esc clears, enter opens the best match)
b
switch branch or tag
g s g f g c g b g m g i g r g a
tabs: summary, files, commits, branches & tags, merge requests, issues, releases, actions (when available)
g h
home
w
wide mode: use the whole width of the screen, or not (remembered)
y
copy a permalink pinned to the commit
d u x
diff: split / unified / collapse or expand all
e E
diff: the whole file in view / every file, with the lines the hunks hide
n
merge request: next note in the diff
esc
close a dialog, leave a field

Branches 4

Tags 11

↑↓ moveenter openesc close