Enforce durable enemy event validation

This commit is contained in:
2026-08-09 02:03:27 +00:00
parent b3644abc0e
commit 82ffe85f2d
12 changed files with 313 additions and 28 deletions

View File

@@ -2,6 +2,7 @@ package registry
import (
"fmt"
"strings"
"sync"
"testing"
@@ -60,6 +61,17 @@ func TestResolveRejectsInvalidSceneReferences(t *testing.T) {
}
}
func TestResolveRejectsReversedEvidenceInDirectSceneReference(t *testing.T) {
value := sceneList(scene("chunk-1", "session-alpha", 2, 1, dnd.SceneKindNarrative, "Arrival", "The party arrives."))
content, err := scenecodec.New().EncodeCandidate(value)
if err != nil {
t.Fatalf("EncodeCandidate() error = %v", err)
}
if _, err := Resolve(referenceSet(referenceItem(content))); err == nil || !strings.Contains(err.Error(), "invalid approved") {
t.Fatalf("Resolve() error = %v, want direct-reference rejection", err)
}
}
func TestEligibilityDigestTracksOnlyGatingFields(t *testing.T) {
base := sceneList(
scene("chunk-a", "session-alpha", 1, 2, dnd.SceneKindNarrative, "Arrival", "The party arrives."),