Skip to content

system.admin_step: a recipe declares a step only an administrator may take (0.0.63) - #48

Merged
Sunrisepeak merged 1 commit into
mainfrom
feat/admin-step
Oct 14, 2026
Merged

Sunrisepeak merged 1 commit into
mainfrom
feat/admin-step

Conversation

@Sunrisepeak

Copy link
Copy Markdown
Member

system.admin_step: a recipe declares a step only an administrator may take (0.0.63)

system.admin_step(argv, why) records a deferred request (op = "admin"; target = why plus each word, joined by 0x1F) and never runs it.

Why: a recipe that ran sudo inside an unattended install (xlings self doctor --fix repairing another SubOS, the Luban OS window) waited on a terminal nobody could read. With this, the host decides who is asked and when: xlings asks once after the install through its single elevation path, or keeps the step for self doctor --fix.

Compatibility: it reuses the existing request channel, so neither the C++ API nor the worker protocol changes. Older libxpkg has no such function; recipes check for it first (documented in docs/architecture.md).

Tests: ExecutorTest.AnAdminStepIsDeclaredNotRun.

… may take, never runs it -- the host asks once, through its one door, or records it when nobody can answer (0.0.63)
@Sunrisepeak
Sunrisepeak merged commit a749de7 into main Oct 14, 2026
1 check 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.

1 participant