Skip to content

I3148 — An episode records the governance digest and the briefing digest it was handed at start

Write governance_digest and the governance manifest into session.started, and append a session.briefed event carrying briefing_digest once the start briefing has been derived; the preflight and the brief show the recorded values; an episode that edited files with no session.briefed receipt is flagged where the policy and the provider promise a briefing.

BLOCKED wave 3 · p1 · implementation profile · parallel safe

Part of entry-proves-what-it-handed — An episode records the governance and briefing it was handed, and a change is told.

Blocked. This issue cannot start until I3147, I3142, milestone:entry-proves-what-it-handed are done. The status is derived from that, not declared.

Objective

Write governance_digest and the governance manifest into session.started, and append a session.briefed event carrying briefing_digest once the start briefing has been derived; the preflight and the brief show the recorded values; an episode that edited files with no session.briefed receipt is flagged where the policy and the provider promise a briefing.

Why

docs/PREFLIGHT.md on master: 'No compiled context revision exists in a checkout yet, so none is shown.' The 2026-09-10 brief asked for evidence that auto-load happened (a load receipt per episode). Proposed in ADR 0181 (An episode records the governance and the briefing it was handed, each by one digest) (proposed; it carries no authority until the owner accepts it). Sources: chatgpt-majordomus:c097#2.

Current state

session.started carries neither digest; case 127 judges briefing freshness by HEAD and tree only.

Desired state

The governance digest is recorded per episode at open and the briefing digest as a delivery receipt; both are shown; a missing receipt is a finding where one was due.

Scope

  • share/events.yaml
  • apps/majordomus-cli/src/session
  • apps/majordomus-cli/src/environment/preflight.rs
  • apps/majordomus-cli/src/capability/builtin/brief.rs
  • lib/capture.sh
  • docs/PREFLIGHT.md

Out of scope

  • Changing what the briefing contains

Dependencies

What waits on this

Acceptance criteria

  • session.started names the governance digest, and session.briefed the briefing digest
  • The preflight shows the recorded briefing digest instead of 'none'
  • An episode with edits and no receipt is reported where a briefing was due

Validation

  • bash test/run.sh 127_briefing_freshness 190_entry_is_automatic

Evidence required

  • case_episode_pins_what_it_was_handed

Evidence

None recorded. Every token above needs a command or an artifact behind it before this issue can be completed; narrative is refused.

Timeline

started
—
verified
—
completed
—

Those three fields, the evidence above and the state of the dependencies are all the status is made of. There is no status field to disagree with them.

Canonical record: .ai/repo/project/issues/I3148.yaml. Read it back with majordomus plan show I3148.

Searches the titles and descriptions of every page this site publishes.