Public: anyone can read this; the crew can change it.
Granting an app a private destination in the terminal asks first: `g` names the app and destination, `y` grants #7961
Sign in to join this conversation.
Public: anyone can read this; the crew can change it.
Intent: a grant widens what an app may reach past the egress boundary, so a site admin sees what they are opening before it opens, and one stray key never does it.
Today
src/tui/screens/egress.tsgrants the destination under the cursor the momentgis pressed.x(revoke) narrows the boundary and stays one key.Done looks like:
gon a row that is not yet granted opensconfirmScreen(fromsrc/tui/screens/common.ts,yesNo: true) titled "Let <owner>/<name> reach <destination>?" with one body line: "The app's outbound traffic to it is allowed until you revoke it with x."y(or the Grant button) callsgrantAppEgressand the toast says "<destination> is granted." as today;nor esc grants nothing.gon a row that is already granted grants nothing again and opens no confirm.test/tui-egress.test.ts: the site admin test pressesyafterg; a new test pressesgthennand provesegressViewstill shows the row not granted. The new test fails without the change. The writer and repository-admin tests still pass unchanged.bun test test/tui-egress.test.tspasses.Files: src/tui/screens/egress.ts, test/tui-egress.test.ts Risks: none beyond the screen;
actions/egress_grants.tskeeps every rule. Brief: a builder who knows the terminal screens.