From f0df28ece1a948d2a6ad24199c764266becb1296 Mon Sep 17 00:00:00 2001 From: Meta Vens Date: Fri, 9 Oct 2026 15:55:31 +0200 Subject: [PATCH 1/6] Aliases: severity, confidence, origin and claim-outcome lists derive from the enums' NAMES The four hand-spelled lists in rows.rs could drift from the leaf enums they restate; each alias now reads its domain from the enum, as the authority alias already does. No behaviour change. Follow-up: eureka-substrate:follow_up:alias-lists-from-names Co-Authored-By: Claude Opus 5.5 --- crates/huginn-mind/src/rows.rs | 17 ++++++++--------- 1 file changed, 8 insertions(+), 9 deletions(-) diff --git a/crates/huginn-mind/src/rows.rs b/crates/huginn-mind/src/rows.rs index 6e3a19d..30f6cd1 100644 --- a/crates/huginn-mind/src/rows.rs +++ b/crates/huginn-mind/src/rows.rs @@ -12,7 +12,10 @@ use std::collections::BTreeMap; use cultnet_rs::{Row, RowSet, Selection}; -use eureka_pipeline::{OrgRepo, Label, PipelineDocument, PipelineKind, PipelineRef, ResolutionOutcome, RulingAuthority, Slug}; +use eureka_pipeline::{ + FindingConfidence, FindingOrigin, FindingSeverity, Label, OrgRepo, PipelineDocument, PipelineKind, PipelineRef, ResolutionOutcome, + RulingAuthority, Slug, +}; use crate::docs::{CitationRole, Held, kind_of_id, kind_of_type}; use crate::query::PipelineDocumentView; @@ -40,10 +43,6 @@ pub(crate) enum Alias { } const FACULTIES: [&str; 7] = ["SelfFaculty", "Imagination", "Hands", "Soul", "Life", "Eyes", "Operator"]; -const SEVERITIES: [&str; 4] = ["Blocker", "High", "Medium", "Low"]; -const CONFIDENCES: [&str; 2] = ["Confirmed", "Plausible"]; -const ORIGINS: [&str; 2] = ["Introduced", "PreExisting"]; -const CLAIM_OUTCOMES: [&str; 3] = ["Holds", "Falsified", "Unproven"]; const OUTCOMES: [&str; 6] = ["Superseded", "Answered", "Fixed", "Deferred", "Recorded", "Withdrawn"]; const BOOLEANS: [&str; 2] = ["true", "false"]; @@ -102,11 +101,11 @@ impl Alias { match self { Self::InForce => Some(&BOOLEANS), Self::Faculty => Some(&FACULTIES), - Self::Severity => Some(&SEVERITIES), - Self::Confidence => Some(&CONFIDENCES), - Self::Origin => Some(&ORIGINS), + Self::Severity => Some(FindingSeverity::NAMES), + Self::Confidence => Some(FindingConfidence::NAMES), + Self::Origin => Some(FindingOrigin::NAMES), Self::Authority => Some(RulingAuthority::NAMES), - Self::ClaimOutcome => Some(&CLAIM_OUTCOMES), + Self::ClaimOutcome => Some(eureka_pipeline::ClaimOutcome::NAMES), Self::Outcome => Some(&OUTCOMES), Self::Root | Self::Repo | Self::Cut => None, } From 6c705f5f2a89633ed20279c35a3864d67afcce4c Mon Sep 17 00:00:00 2001 From: Meta Vens Date: Fri, 9 Oct 2026 15:57:59 +0200 Subject: [PATCH 2/6] Leaf: a run kind, PipelineRun with RunOperator and RunTurn, instance-rooted A run is the one record of what a Self or a Persona turn took on: key :run: