Consolidate analyze session execution state

This commit is contained in:
2026-09-04 15:57:54 +00:00
parent 5c520dc0d4
commit 172e2d6a4f
12 changed files with 401 additions and 268 deletions

View File

@@ -375,6 +375,7 @@ func TestMapResultOutputsPrefersExplicitSourceAndCopiesMetadata(t *testing.T) {
Kind: "structured_data",
SourceID: "narratio.example.npcs",
RelativePath: "artifacts/npcs.json",
ProducerRunID: "original-run",
Contract: contract,
ExternalProvenance: provenance,
}}}
@@ -389,6 +390,9 @@ func TestMapResultOutputsPrefersExplicitSourceAndCopiesMetadata(t *testing.T) {
if got[0].Kind != "structured_data" {
t.Fatalf("kind = %q, want explicit output kind preserved", got[0].Kind)
}
if got[0].ProducerRunID != "original-run" {
t.Fatalf("producer run id = %q, want explicit producer", got[0].ProducerRunID)
}
if got[0].Contract == nil || *got[0].Contract != *contract {
t.Fatalf("contract = %#v, want %#v", got[0].Contract, contract)
}
@@ -407,11 +411,17 @@ func TestMapResultOutputsRetainsFallbackInference(t *testing.T) {
if len(transcript) != 1 || transcript[0].SourceID != artifacts.ArtifactTranscriptFinalTrimmed {
t.Fatalf("transcript fallback = %#v, want final-trimmed source", transcript)
}
if transcript[0].ProducerRunID != "run-id" {
t.Fatalf("transcript producer run id = %q, want active run fallback", transcript[0].ProducerRunID)
}
analyze := mapResultOutputs("analyze", &stage.StageResult{Outputs: []artifacts.Ref{{Kind: "session_recap"}}}, "run-id")
if len(analyze) != 1 || analyze[0].SourceID != "narratio.artifact.session_recap" || analyze[0].Kind != "scriptorium_artifact" {
t.Fatalf("analyze fallback = %#v, want configured artifact inference", analyze)
}
if analyze[0].ProducerRunID != "run-id" {
t.Fatalf("analyze producer run id = %q, want active run fallback", analyze[0].ProducerRunID)
}
}
func TestNeedsObjectStoreForRunPrepareWithPreviousRequirements(t *testing.T) {