@model StoryIntelligenceProgressViewModel @{ ViewData["Title"] = "Review Plot Lines & Threads"; }

Phase 3

Review Story Intelligence

Stage 7 of 7

Review Plot Lines & Threads

Approve recurring narrative arcs and useful thread candidates before PlotDirector adds them to the canonical story database.

@if (TempData["OnboardingStoryIntelligenceError"] is string error) {
@error
} @if (TempData["OnboardingStoryIntelligenceMessage"] is string message) {
@message
} @if (Model.NarrativeReview.Candidates.Count == 0) {
No Plot Line or Thread candidates are waiting.

PlotDirector did not find recurring narrative candidates that require approval, or this review has already been completed.

Back to knowledge
} else {
@for (var i = 0; i < Model.NarrativeReview.Candidates.Count; i++) { var candidate = Model.NarrativeReview.Candidates[i];
@candidate.ProposedTitle @candidate.CandidateType @(!string.IsNullOrWhiteSpace(candidate.Category) ? $"- {candidate.Category}" : string.Empty) @candidate.Confidence
@if (string.Equals(candidate.CandidateType, StoryIntelligenceNarrativeCandidateTypes.Thread, StringComparison.OrdinalIgnoreCase)) { @if (!string.IsNullOrWhiteSpace(candidate.ParentCandidateTitle)) {

Proposed parent: @candidate.ParentCandidateTitle

}
}
Decision
@if (candidate.ChildThreads.Count > 0) {
Suggested child Threads
    @foreach (var child in candidate.ChildThreads) {
  • @child.ProposedTitle
  • }
}
Supporting scenes
    @foreach (var evidence in candidate.Evidence) {
  • @evidence.SceneLabel: @(string.IsNullOrWhiteSpace(evidence.Evidence) ? evidence.ContributionType : evidence.Evidence)
  • }
}
Back to knowledge
}