When the host leaves these unset, the booter now sets

BARE_OS_SHELL_STREAMING=1, BARE_OS_SHELL_STREAMING_MULT=2,
BARE_OS_PIPELINE_MAX_BYTES (512 MiB), and BARE_OS_PIPELINE_MAX_LINES
(2M) so the high-throughput ~512 MiB burst profile does not require
pre-launch exports.

Align getconf Tier-1 statics with those bases; note legacy rc.profile
exports; refresh handbook, environment appendix, cookbook, and
bare-os-booter CHANGELOG.
This commit is contained in:
Raven Scott
2026-04-22 22:09:58 -04:00
parent 9487e24ef3
commit 4fa8c14079
17 changed files with 91 additions and 29 deletions
@@ -5,7 +5,7 @@
"synopsis": [
"kernel-doctor [OPTION]... [OPERAND]..."
],
"description": "Bare OS implementation of kernel-doctor. Full behavior is defined in packages/bare-os-coreutils/src/kernel-doctor.js.",
"description": "Prints a non-secret guest snapshot. With --json, includes /proc JSON (e.g. resources.pipeline: effective maxBytes/maxLines plus absCapBytes/absCapLines ceilings, baseMax*, streamingEnabled) and envHints for select BARE_OS_* keys (including pipeline tunables). See packages/bare-os-coreutils/src/kernel-doctor.js.",
"options": [],
"keywords": [
"kernel-doctor",
+5 -5
View File
@@ -29,10 +29,10 @@ const CONF = {
_POSIX_ASYNCHRONOUS_IO: '0',
/** Bare shell line length (reasonable REPL limit, not a hard kernel cap). */
BARE_OS_INPUT_LINE_MAX: '8192',
/** Defaults for simulated pipelines (override with BARE_OS_PIPELINE_* env); see handbook §3. */
/** Defaults for simulated pipelines (stock booter seeds larger session env when host is silent; Tier-2 live caps differ); see handbook §3. */
BARE_OS_PIPELINE_MAX_STAGES: '32',
BARE_OS_PIPELINE_MAX_BYTES: '2097152',
BARE_OS_PIPELINE_MAX_LINES: '50000',
BARE_OS_PIPELINE_MAX_BYTES: '536870912',
BARE_OS_PIPELINE_MAX_LINES: '2000000',
/** Default cap for find -exec/-ok invocations per run (override with env). */
BARE_OS_FIND_EXEC_MAX: '64',
/** Max lines `yes` prints before stopping (override with BARE_OS_YES_MAX_LINES). */
@@ -79,8 +79,8 @@ const CONF = {
_SC_TTY_NAME_MAX: '32',
_SC_LOGIN_NAME_MAX: '256',
/** Defaults; live session: **`ctx.bareOsGetconfSysconf`** (pipeline limits, swarm caps, …). */
_SC_BARE_OS_PIPELINE_MAX_BYTES: '2097152',
_SC_BARE_OS_PIPELINE_MAX_LINES: '50000',
_SC_BARE_OS_PIPELINE_MAX_BYTES: '536870912',
_SC_BARE_OS_PIPELINE_MAX_LINES: '2000000',
_SC_BARE_OS_PIPELINE_MAX_STAGES: '32',
_SC_BARE_OS_GLOB_MAX_MATCHES: '4096',
_SC_BARE_OS_SHELL_LOOP_MAX: '10000',
@@ -47,7 +47,16 @@ async function run(ctx, argv) {
bootDryRun: ctx.env?.BARE_OS_BOOT_DRY_RUN,
bootPolicyPath: ctx.env?.BARE_OS_BOOT_POLICY_PATH,
dnsProfile: ctx.env?.BARE_OS_DNS_PROFILE,
delegateTrace: ctx.env?.BARE_OS_DELEGATE_TRACE
delegateTrace: ctx.env?.BARE_OS_DELEGATE_TRACE,
pipelineMaxStages: ctx.env?.BARE_OS_PIPELINE_MAX_STAGES,
pipelineMaxBytes: ctx.env?.BARE_OS_PIPELINE_MAX_BYTES,
pipelineMaxLines: ctx.env?.BARE_OS_PIPELINE_MAX_LINES,
pipelineAbsMaxBytes: ctx.env?.BARE_OS_PIPELINE_ABS_MAX_BYTES,
pipelineAbsMaxLines: ctx.env?.BARE_OS_PIPELINE_ABS_MAX_LINES,
shellStreaming: ctx.env?.BARE_OS_SHELL_STREAMING,
shellStreamingMult:
ctx.env?.BARE_OS_SHELL_STREAMING_MULT ??
ctx.env?.BARE_OS_STREAMING_MULTIPLIER
}
}
if (json) {