Interfaces

RunbookEnvelope

Interface: RunbookEnvelope

Defined in: src/core/runbook/types.ts:298

The mandatory-spine + optional-projection envelope every runbook returns (unless an inner absence passed through — then the answer IS that absence, verbatim). Recognized by the framework's coverage funnel at the dispatch boundary like any coverage() ledger.

Properties

af_coverage

readonly af_coverage: object

Defined in: src/core/runbook/types.ts:299

cannot_cover?

readonly optional cannot_cover?: readonly CoverageItem[]

checked?

readonly optional checked?: readonly CoverageItem[]

not_checked?

readonly optional not_checked?: readonly CoverageItem[]

note

readonly note: string

The static coverage law sentence (the coverage() note).

sentence

readonly sentence: string

The run's own sentence — names the rule set and version.


result

readonly result: object

Defined in: src/core/runbook/types.ts:308

Index Signature

[appField: string]: unknown

Everything the chart put in its report state key — the app's own result fields, spread here verbatim BESIDE the spine. Spine keys win: a report field spelling af_coverage, af_provenance, rule_version, walk, report_note, or a projection key this run assembled is discarded and named in report_note.

af_provenance

readonly af_provenance: Readonly<Record<string, unknown>>

Re-emitted FIRST: the carried inner provenance stamp (if any inner tool declared one — a LOCAL SEED confession survives composition) plus this call's own {tool, toolCallId}.

render_note?

readonly optional render_note?: string

The render law, stated to the model — present with the projection in BOTH modes, because a rowset always ships with a rule about its surface. VERDICT_RENDER_NOTE under 'prose' (output the table verbatim); PANEL_RENDER_NOTE under 'panel' (the rows are already on screen — quote the evidence, never reproduce them).

report_note?

readonly optional report_note?: string

Present ONLY when the chart's report spelled one of the envelope's own names: it names every discarded field and says the values under those names are the bridge's. Absent on the clean path.

rows_complete?

readonly optional rows_complete?: boolean

rows_shown?

readonly optional rows_shown?: number

rows_total?

readonly optional rows_total?: number

rule_version

readonly rule_version: string

rules.version, or the honest 'undeclared' when no rules were declared — the field never silently vanishes.

table?

readonly optional table?: string

Pre-rendered markdown table over the SAME rows as verdicts. Present under presentation: 'prose' (the default), where the model's prose is the rowset's only surface. ABSENT — the key itself, not an empty string — under 'panel', where the host draws the rowset and a second copy in prose would be a retype of what the reader can already see. The name stays RESERVED in both modes, so a chart's report cannot put a table back into a panel answer.

verdict_meanings?

readonly optional verdict_meanings?: Readonly<Record<string, string>>

branch → meaning, GENERATED from the decider's declared branches and the rule labels this run's evidence carried — never hand-restated.

verdicts?

readonly optional verdicts?: readonly VerdictRow[]

walk

readonly walk: WalkDescriptor

The recorded walk — always present.

On this page