2.4 KiB
2.4 KiB
Stage: analyze
Purpose
Generate the session recap artifact using configured Scriptorium artifact settings.
Inputs and Outputs
Inputs:
- transcript inputs as requested by selected artifact config (processed/normalized/trimmed/current recap, depending on
pipeline.scriptorium.artifacts.session_recap.inputs)
Outputs:
artifacts/session_recap.md
Boundaries
Owns:
- Selecting supported analyze artifact (
session_recaponly) - Resolving transcript/reference inputs and vars
- Optional render-debug execution before run
- Main Scriptorium run and output promotion
Does not own:
- Transcript processing pipeline stages
- Archive publish/pointer behavior
Config Fields Used
session.session_idsession.campaignpipeline.workspace.rootpipeline.scriptorium.binarypipeline.scriptorium.config_pathpipeline.scriptorium.timeoutpipeline.scriptorium.render_debugpipeline.scriptorium.artifacts.session_recap.*enabledprompt_idprofile_idtimeoutoutput_pathrender_debuginputsvars
External Adapters Used
- Scriptorium adapter:
- optional
RenderArtifact(debug diagnostics) RunArtifact(actual recap generation)
- optional
State and Manifest Behavior
- If
pipeline.scriptoriumis nil, stage returns success metadata withskipped=true. - If no enabled artifacts exist, stage returns success metadata with
skipped=true. - If enabled artifacts exist but any artifact other than
session_recapis enabled, stage fails. - Uses run-local output/log/config/reports paths when run layout is enabled.
- Promotes canonical recap output and records adapter metadata.
Skip and Resume Behavior
- Runner-level skip applies when already succeeded and not forced.
- Forced reruns can stale downstream succeeded stages.
- Stage-local "skipped" metadata is distinct from runner-level stage status skip.
Failure Behavior
- Fails on missing required resolved inputs, invalid transcript inputs, render/run adapter failures, or validation-failed run results.
Tests to Inspect Before Changing
internal/stage/analyze_test.gointernal/adapters/scriptorium/subprocess_test.go
Architectural Invariants
- Analyze implementation supports only
artifacts.session_recapas executable artifact. - Optional inputs may be omitted; required inputs must resolve.
- Successful output must exist and be non-empty before promotion.