pub struct PromptEvidence {Show 29 fields
pub user_goal: Option<String>,
pub project_summary: Option<String>,
pub node_goal: Option<String>,
pub output_files: Vec<String>,
pub context_files: Vec<String>,
pub verifier_diagnostics: Option<String>,
pub previous_attempts: Vec<CorrectionAttemptRecord>,
pub previous_attempt_count: usize,
pub plugin_correction_fragment: Option<String>,
pub legal_support_files: Vec<String>,
pub existing_file_contents: Vec<(String, String)>,
pub dependency_expectations: Option<DependencyExpectation>,
pub rejected_bundle_summary: Option<String>,
pub solo_file_path: Option<String>,
pub solo_language: Option<String>,
pub working_dir: Option<String>,
pub active_plugins: Vec<String>,
pub interface_signature: Option<String>,
pub invariants: Option<String>,
pub forbidden_patterns: Option<String>,
pub weighted_tests: Option<String>,
pub workspace_import_hints: Option<String>,
pub evidence_section: Option<String>,
pub error_feedback: Option<String>,
pub restriction_map_context: Option<String>,
pub project_file_tree: Option<String>,
pub build_test_output: Option<String>,
pub owner_plugin: Option<String>,
pub energy_v_syn: Option<f32>,
}Expand description
Evidence inputs for the prompt compiler (PSP-7 §5).
Each prompt family draws from a different subset of these fields. The compiler ignores fields that are irrelevant for the selected intent.
Fields§
§user_goal: Option<String>The user’s high-level goal or request.
project_summary: Option<String>Project structure summary (file tree, detected languages, etc.).
node_goal: Option<String>Node-scoped goal for actuator/verifier prompts.
output_files: Vec<String>Output files this node is expected to produce.
context_files: Vec<String>Context files the node should read.
verifier_diagnostics: Option<String>Verifier diagnostics from the last verification pass.
previous_attempts: Vec<CorrectionAttemptRecord>Previous correction attempt records for retry prompts.
previous_attempt_count: usizeNumber of previous correction attempts (used when full records are unavailable).
plugin_correction_fragment: Option<String>Plugin-contributed correction guidance.
legal_support_files: Vec<String>Legal support files declared by the plugin.
existing_file_contents: Vec<(String, String)>Existing file contents for context injection.
dependency_expectations: Option<DependencyExpectation>Dependency expectations for the current task.
rejected_bundle_summary: Option<String>Bundle that was rejected (for retarget prompts).
solo_file_path: Option<String>Solo mode file path.
solo_language: Option<String>Solo mode language hint.
working_dir: Option<String>Working directory path for context-aware prompts.
active_plugins: Vec<String>Active language plugins (e.g. ["rust", "python"]).
interface_signature: Option<String>Contract interface signature for actuator/verifier prompts.
invariants: Option<String>Contract invariants for actuator/verifier prompts.
forbidden_patterns: Option<String>Contract forbidden patterns for actuator/verifier prompts.
weighted_tests: Option<String>Contract weighted tests for verifier prompts.
workspace_import_hints: Option<String>Workspace import hints for cross-module references.
evidence_section: Option<String>Pre-formatted evidence section for architect prompts.
error_feedback: Option<String>Error feedback from previous planning attempts.
restriction_map_context: Option<String>Restriction map context for correction prompts (pre-formatted).
project_file_tree: Option<String>Project file tree for correction prompts (pre-formatted lines).
build_test_output: Option<String>Raw build/test output for correction prompts (truncated).
owner_plugin: Option<String>Owner plugin name (e.g. “rust”, “python”) for language-specific guidance.
energy_v_syn: Option<f32>Syntactic energy score from the last verification pass.
Trait Implementations§
Source§impl Clone for PromptEvidence
impl Clone for PromptEvidence
Source§fn clone(&self) -> PromptEvidence
fn clone(&self) -> PromptEvidence
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read moreSource§impl Debug for PromptEvidence
impl Debug for PromptEvidence
Source§impl Default for PromptEvidence
impl Default for PromptEvidence
Source§fn default() -> PromptEvidence
fn default() -> PromptEvidence
Source§impl<'de> Deserialize<'de> for PromptEvidence
impl<'de> Deserialize<'de> for PromptEvidence
Source§fn deserialize<__D>(
__deserializer: __D,
) -> Result<PromptEvidence, <__D as Deserializer<'de>>::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(
__deserializer: __D,
) -> Result<PromptEvidence, <__D as Deserializer<'de>>::Error>where
__D: Deserializer<'de>,
Source§impl Serialize for PromptEvidence
impl Serialize for PromptEvidence
Source§fn serialize<__S>(
&self,
__serializer: __S,
) -> Result<<__S as Serializer>::Ok, <__S as Serializer>::Error>where
__S: Serializer,
fn serialize<__S>(
&self,
__serializer: __S,
) -> Result<<__S as Serializer>::Ok, <__S as Serializer>::Error>where
__S: Serializer,
Auto Trait Implementations§
impl Freeze for PromptEvidence
impl RefUnwindSafe for PromptEvidence
impl Send for PromptEvidence
impl Sync for PromptEvidence
impl Unpin for PromptEvidence
impl UnsafeUnpin for PromptEvidence
impl UnwindSafe for PromptEvidence
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
§impl<T> Instrument for T
impl<T> Instrument for T
§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read more