// // Copyright (c) StellaOps. Licensed under the BUSL-1.1. // using StellaOps.AdvisoryAI.Attestation.Models; namespace StellaOps.AdvisoryAI.Attestation; /// /// Interface for prompt template registry. /// Sprint: SPRINT_20260109_011_001 Task: AIAT-004 /// public interface IPromptTemplateRegistry { /// /// Registers a prompt template with version. /// /// Template name. /// Template version. /// Template content. void Register(string name, string version, string template); /// /// Gets template info including hash. /// /// Template name. /// Template info or null if not found. PromptTemplateInfo? GetTemplateInfo(string name); /// /// Gets template info for a specific version. /// /// Template name. /// Template version. /// Template info or null if not found. PromptTemplateInfo? GetTemplateInfo(string name, string version); /// /// Verifies a template hash matches registered version. /// /// Template name. /// Expected hash. /// True if hash matches. bool VerifyHash(string name, string expectedHash); /// /// Gets all registered templates. /// /// All template info records. IReadOnlyList GetAllTemplates(); }