Sign in

    impart563/lesion-followup/io does not have a README file

    BatchCase

    pub(all) struct BatchCase {
    id : String
    study : String
    input : String
    } derive(Eq,
    Debug
    )

    BatchCase::equal

    fn BatchCase::equal(BatchCase, BatchCase) -> Bool

    BatchCase::not_equal

    fn BatchCase::not_equal(x : BatchCase, y : BatchCase) -> Bool

    BatchResult

    pub(all) struct BatchResult {
    id : String
    status : String
    message : String
    report_path : String?
    visit_count : Int
    review_hint_count : Int
    } derive(Eq,
    Debug
    )

    BatchResult::equal

    fn BatchResult::equal(BatchResult, BatchResult) -> Bool

    BatchResult::not_equal

    fn BatchResult::not_equal(x : BatchResult, y : BatchResult) -> Bool

    Diagnostic

    pub(all) struct Diagnostic {
    code : String
    message : String
    line : Int?
    column : Int?
    field : String?
    } derive(Eq,
    Debug
    )

    CSV locations are one-based physical line/column (Unicode code points). JSON schema diagnostics use field paths and have no line/column location.

    Diagnostic::equal

    fn Diagnostic::equal(Diagnostic, Diagnostic) -> Bool

    Diagnostic::not_equal

    fn Diagnostic::not_equal(x : Diagnostic, y : Diagnostic) -> Bool

    PreflightReport

    pub(all) struct PreflightReport {
    visit_count : Int
    diagnostics : Array[ReviewNotice]
    input_issues : Array[ReviewNotice]
    review_hints : Array[ReviewNotice]
    } derive(Eq,
    Debug
    )

    Parse errors and structural errors block replay; review hints do not.

    PreflightReport::equal

    PreflightReport::is_valid

    fn PreflightReport::is_valid(self : PreflightReport) -> Bool

    PreflightReport::not_equal

    fn PreflightReport::not_equal(x : PreflightReport, y : PreflightReport) -> Bool

    ReportLanguage

    pub(all) enum ReportLanguage {
    English
    SimplifiedChinese
    } derive(Eq,
    Debug
    )

    Presentation language only. Machine-readable codes and reader notes stay intact.

    ReportLanguage::equal

    ReportLanguage::not_equal

    fn ReportLanguage::not_equal(x : ReportLanguage, y : ReportLanguage) -> Bool

    ReviewNotice

    pub(all) struct ReviewNotice {
    code : String
    message : String
    source : String
    field : String?
    line : Int?
    column : Int?
    visit_id : String?
    lesion_id : String?
    } derive(Eq,
    Debug
    )

    A source location or visit anchor. Missing rows have no fabricated field location.

    ReviewNotice::equal

    ReviewNotice::not_equal

    fn ReviewNotice::not_equal(x : ReviewNotice, y : ReviewNotice) -> Bool

    compare_tracks

    Compare replayed tracks of the same exact baseline profile. Visit and lesion identity, rather than array position, aligns changes. Inputs remain untouched.

    format_diameter_mm

    fn format_diameter_mm(tenths : Int) -> String

    input_template_files

    fn input_template_files(name : String, language? : ReportLanguage) -> Result[Array[(String, String)], String]

    Matched synthetic inputs and instructions. Writing files belongs to the CLI.

    parse_batch_json

    fn parse_batch_json(text : String) -> Result[Array[BatchCase], Array[Diagnostic]]

    Paths are resolved by the CLI relative to the batch manifest, never the CWD.

    parse_diameter_mm

    fn parse_diameter_mm(text : String) -> Result[Int, String]

    Parse an unsigned plain decimal exactly at 0.1 mm precision, without rounding. The accepted software range is 0.0 through 1000.0 mm.

    parse_followup_cells

    fn parse_followup_cells(text : String) -> Result[Array[Array[String]], Array[Diagnostic]]

    Decode editable text cells using the clinical parser's quoting and locations. Only CSV shape is checked here; clinical state/precision validation remains in parse_followup_csv and preflight_inputs. The header is not returned.

    parse_followup_csv

    fn parse_followup_csv(text : String) -> Result[Array[
    Visit
    ], Array[Diagnostic]]

    Long-form CSV: one target observation per row. Visit rows must be contiguous; the parser preserves order and rejects partial results on any parse error.

    parse_study_json

    fn parse_study_json(text : String) -> Result[
    Study
    , Array[Diagnostic]]

    Decode a versioned study profile. Call validate_study for clinical-contract validation after schema parsing. Numeric diameters must be decimal strings.

    preflight_inputs

    fn preflight_inputs(study_text : String, csv_text : String) -> PreflightReport

    Combined JSON/CSV preflight with physical CSV locations and JSON field paths. Review hints are only derived after both inputs parse and validate in full.

    preflight_track

    Inspect the validated track using the same replay findings as the report. This preflight supplies no response categories and never changes input values.

    render_audit_csv

    fn render_audit_csv(trajectory :
    Trajectory
    ) -> String

    Typed detail rows. Blank numeric fields represent unavailable values.

    render_audit_html

    fn render_audit_html(trajectory :
    Trajectory
    ) -> String

    Offline review document: no scripts, fonts, images or network dependencies. All input-derived text is escaped; navigation IDs are generated by position.

    render_audit_html_in

    fn render_audit_html_in(trajectory :
    Trajectory
    , language : ReportLanguage) -> String

    Localized presentation; input-derived text and machine codes are preserved.

    render_audit_json

    fn render_audit_json(trajectory :
    Trajectory
    ) -> String

    Deterministic, versioned evidence envelope. It retains original observations, resolved measurement values and the exact prior nadir for every visit.

    render_audit_manifest

    fn render_audit_manifest(trajectory :
    Trajectory
    ) -> String

    render_audit_markdown

    fn render_audit_markdown(trajectory :
    Trajectory
    ) -> String

    Text report of target-only categories, references and individual findings.

    render_audit_markdown_in

    fn render_audit_markdown_in(trajectory :
    Trajectory
    , language : ReportLanguage) -> String

    Localized presentation; input-derived text and machine codes are preserved.

    render_batch_index_html

    fn render_batch_index_html(results : Array[BatchResult], language? : ReportLanguage) -> String

    render_batch_index_json

    fn render_batch_index_json(results : Array[BatchResult]) -> String

    render_bundle_manifest

    fn render_bundle_manifest(trajectory :
    Trajectory
    , artifacts : Array[(String, String)], language? : ReportLanguage, raw_inputs? : Array[(String, Bytes)]) -> String

    V2 adds exact raw-file input digests when available and always includes semantic input digests. No timestamps or local source paths affect determinism.
    fn render_lesion_trends_svg(trajectory :
    Trajectory
    , language? : ReportLanguage) -> String

    Individual observations remain visible even in an NE visit. NE visits and missing observations break connecting lines; only measured/default values plot.

    render_preflight_json

    fn render_preflight_json(report : PreflightReport) -> String

    Additive validation schema: machine-readable messages and codes are language independent.

    render_preflight_markdown

    fn render_preflight_markdown(report : PreflightReport, language? : ReportLanguage) -> String

    render_revision_html

    fn render_revision_html(revision :
    TrackRevision
    , language? : ReportLanguage) -> String

    render_revision_json

    fn render_revision_json(revision :
    TrackRevision
    ) -> String

    render_revision_markdown

    fn render_revision_markdown(revision :
    TrackRevision
    , language? : ReportLanguage) -> String

    render_trajectory_svg

    fn render_trajectory_svg(trajectory :
    Trajectory
    ) -> String

    Self-contained SVG: target sum, baseline and baseline-minus-30% guides. NE visits break the line and are never plotted as a zero-diameter result.

    render_trajectory_svg_in

    fn render_trajectory_svg_in(trajectory :
    Trajectory
    , language : ReportLanguage) -> String

    Localized presentation; input-derived text and machine codes are preserved.

    render_validation_json

    fn render_validation_json(diagnostics : Array[Diagnostic], issues : Array[
    InputIssue
    ], visit_count : Int) -> String

    review_artifacts

    fn review_artifacts(trajectory :
    Trajectory
    , language? : ReportLanguage) -> Array[(String, String)]

    Four deterministic artifacts. Manifest construction hashes their UTF-8 bytes.

    sha256_hex

    fn sha256_hex(bytes : Bytes) -> String

    SHA-256 of exact input bytes for bundle integrity, not authentication.

    verify_bundle

    fn verify_bundle(manifest : String, artifacts : Array[(String, Bytes)]) -> Array[Diagnostic]

    Validate metadata and exact supplied artifact bytes. Fixed artifact names are the only allowed names; callers must not resolve arbitrary manifest paths.

    Powered by MoonBit

    Site sourceReport issuePackagesBuild queueSkillsStatistics

    © 2026 mooncakes.io