vectie/moonfish/job does not have a README file

    AnalysisJobInput

    pub(all) struct AnalysisJobInput {
    plan :
    AnalysisPlan

    bundle :
    AnalysisRunBundle
    ?
    cancel_reason : String?
    failure_message : String?
    retry_policy : RetryPolicy
    } derive(Eq, ToJson,
    Debug
    ,
    FromJson
    )

    AnalysisJobOutcome

    pub(all) enum AnalysisJobOutcome {
    ReadyToStart
    AwaitingMarketData
    Completed
    Cancelled
    Failed
    } derive(Eq, ToJson,
    Debug
    ,
    FromJson
    )

    an agent, invoke a model, or schedule retries itself.

    AnalysisJobOutcome::label

    fn AnalysisJobOutcome::label(self : AnalysisJobOutcome) -> String

    AnalysisJobState

    pub(all) struct AnalysisJobState {
    run_id : String
    outcome : AnalysisJobOutcome
    failure_kind : JobFailureKind?
    bundle_status :
    AnalysisRunStatus
    ?
    can_start : Bool
    can_retry : Bool
    partial_record_available : Bool
    retry_policy : RetryPolicy
    event_count : Int
    review_count : Int
    blocking_review_count : Int
    artifact_paths : Array[String]
    events : Array[
    RoutineEvent
    ]
    message : String
    } derive(Eq, ToJson,
    Debug
    ,
    FromJson
    )

    JobFailureKind

    pub(all) enum JobFailureKind {
    PlanningFailed
    MarketDataUnavailable
    ModelGatewayUnavailable
    ValidationFailed
    RuntimeFailed
    OperatorCancelled
    } derive(Eq, ToJson,
    Debug
    ,
    FromJson
    )

    RetryPolicy

    pub(all) struct RetryPolicy {
    max_attempts : Int
    semantic_max_attempts : Int
    retry_stage2 : Bool
    } derive(Eq, ToJson,
    Debug
    ,
    FromJson
    )

    analysis_job_input

    fn analysis_job_input(plan :
    AnalysisPlan
    , bundle? :
    AnalysisRunBundle
    , cancel_reason? : String, failure_message? : String, retry_policy? : RetryPolicy) -> AnalysisJobInput

    default_retry_policy

    fn default_retry_policy(max_attempts? : Int, semantic_max_attempts? : Int, retry_stage2? : Bool) -> RetryPolicy

    prepare_analysis_job

    fn prepare_analysis_job(input : AnalysisJobInput) -> AnalysisJobState

    Source Files