2.3 KiB
2.3 KiB
Stage: polish
Purpose
Polish the base transcript with Audita and produce a polished transcript for downstream normalization/analyze.
Inputs and Outputs
Inputs:
transcripts/base.jsoninputs/glossary.yml
Outputs:
transcripts/polished.json- optional
artifacts/audita.report.json(when report enabled)
Boundaries
Owns:
- Base transcript discovery/validation
- Audita invocation request construction
- Run-local logs/config/work-dir/report wiring
- Promotion of polished transcript and optional report
Does not own:
- Upstream merge normalization
- Downstream normalize/trim/analyze logic
Config Fields Used
session.session_idsession.campaignpipeline.workspace.rootpipeline.audita.binarypipeline.audita.timeoutpipeline.audita.llm_api_key_envpipeline.audita.modulespipeline.audita.base_urlpipeline.audita.modelpipeline.audita.transcript_descriptionpipeline.audita.config_pathpipeline.audita.output_schemapipeline.audita.work_dir_retentionpipeline.audita.total_llm_concurrencypipeline.audita.proposal_llm_concurrencypipeline.audita.validation_modelpipeline.audita.validation_llm_concurrencypipeline.audita.report
External Adapters Used
- Audita adapter (
env.Audita.Run).
State and Manifest Behavior
- Reads base transcript from merge manifest outputs when available; falls back to canonical base path.
- Uses run-local output/report/log/config/scratch paths when run layout is enabled.
- Promotes canonical
transcripts/polished.jsonand optional report. - Records adapter invocation metadata, credential presence signal, and output provenance in stage metadata.
Skip and Resume Behavior
- Runner-level skip applies when already succeeded and not forced.
- Forced rerun can stale downstream succeeded stages via runner invalidation.
Failure Behavior
- Fails on missing/invalid base transcript, missing glossary, adapter error, invalid polished output shape (
segmentsarray required), or invalid report JSON when enabled.
Tests to Inspect Before Changing
internal/stage/polish_test.gointernal/adapters/audita/subprocess_test.go
Architectural Invariants
- Polished transcript must contain a top-level
segmentsarray. - Report behavior is strictly config-gated.
- Stage output canonicalization always ends at
transcripts/polished.json.