docs: name the unattended render in CONTRIBUTING and explain IF_SESSION guards

Co-authored-by: capy-ai[bot] <230910855+capy-ai[bot]@users.noreply.github.com>
This commit is contained in:
garrytanandcapy-ai[bot] committed 2026-11-01 18:24:17 +00:00
1 parent ec05c33df5
commit 7e140a99d0
2 files changed
+5 -2

No files matched your search

+1 -1
View File
@@ -205,7 +205,7 @@ the new defaults.
| Validate periodic cases on a branch in CI | `gh workflow run evals-periodic.yml --ref <branch>` (periodic lane only) | CI runners + API spend | Pushed branch, `gh` with workflow rights |
| Validate periodic cases plus the weekly gate census on a branch | `gh workflow run evals-periodic.yml --ref <branch> -f include_gate_census=true` | CI runners + API spend | Pushed branch, `gh` with workflow rights |
| Run the opt-in ML, gitleaks and Swift checks | `gh workflow run platform-qualification.yml --ref <branch>` | Free CI runners | Pushed branch, `gh` with workflow rights |
| Render one module loadout as an eval arm ([loadouts](docs/loadouts.md)) | `bin/gstack-modules render --host claude --modules full,-section:<skill>/<id> --out-dir <dir>` (`--loadout full` for the control) | Free, about a second per host | Bun 1.4.2 |
| Render one module loadout as an eval arm ([loadouts](docs/loadouts.md)) | `bin/gstack-modules render --host claude --modules full,-section:<skill>/<id> --out-dir <dir>` (`--loadout full` for the control; add `--session-kind unattended` for an [unattended render](docs/loadouts.md#unattended-renders)) | Free, about a second per host | Bun 1.4.2 |
| Look at past local eval runs | `bun run eval:list` / `eval:compare` / `eval:summary` | Free | Local eval history |
| See a case's pass rate across recent weekly runs | `bun run eval:pass-rates --case <case-id>` | Free | `gh` with repo read access |
| Measure one red case alone against the ship bar (MEETS 9/10) | `bun run scripts/ship-measure.ts measure --case <case-id> --round baseline` ([bar](docs/TESTING_INTERNALS.md#ship-measure)) | API spend for 10 trials (12 for behavior); asks above $2/trial, stops at $25/case | Same as paid coverage |
+4 -1
View File
@@ -81,7 +81,10 @@ Terminal-Bench 2 exposure counts):
later reviews reuse it), and every /ship step its receipt reads: review-log
writes, Step 11.5, Step 20 and `gstack-ship-receipt write` and `result`.
The render's rules also name the interactive sections it leaves out, so a step
In a template, text only an interactive session uses sits inside
`{{IF_SESSION:interactive}}…{{/IF_SESSION}}` (`{{IF_SESSION:unattended}}` for
text only the unattended render keeps); an unpaired or nested guard fails
generation. The render's rules also name the interactive sections it leaves out, so a step
that still mentions one ("run Telemetry") skips that part. With `--render
unattended`, `gstack-skill-start` prints `RENDER_KIND: unattended`. The session
kind still comes from the environment alone, because every later helper