MoonBit-native release readiness auditor for Mooncakes packages
moon add EJJ-ai-nb/harborchecktest {
let snapshot = @harborcheck.example_snapshot()
let report = @harborcheck.audit(snapshot)
inspect(report.verdict, content="ready")
}moon run examples/basicmoon run cmd/mainmoon check
moon build
moon test
moon run examples/basic
moon run cmd/main
moon publish --dry-runmoon check
moon build
moon test
moon run examples/basic
moon run cmd/main
moon publish --dry-runmoon login
moon publish --dry-run
moon publishhttps://mooncakes.io/docs/EJJ-ai-nb/harborcheck
https://mooncakes.io/api/v0/manifest/EJJ-ai-nb/harborcheckpub(all) struct AuditReport {
project_name : String
score : Int
max_score : Int
verdict : String
package_name : String
repository : String
findings : Array[Finding]
metrics : AuditMetrics
} derive(Eq, Debug)pub(all) struct ProjectSnapshot {
name : String
moon_mod : String
readme : String
ci_workflow : String
license_text : String
examples : Array[String]
tests : Array[String]
commands : Array[String]
changelog : String
design_notes : String
issue_notes : String
commit_count : Int
repository_public : Bool
mooncakes_published : Bool
mooncakes_owner : String
mooncakes_package : String
} derive(Eq, Debug)fn ProjectSnapshot::ProjectSnapshot(name? : String, moon_mod? : String, readme? : String, ci_workflow? : String, license_text? : String, examples? : Array[String], tests? : Array[String], commands? : Array[String], changelog? : String, design_notes? : String, issue_notes? : String, commit_count? : Int, repository_public? : Bool, mooncakes_published? : Bool, mooncakes_owner? : String, mooncakes_package? : String) -> ProjectSnapshotfn rules_markdown() -> Stringfn snapshot_from_bundle(bundle : String, project_name? : String, commit_count? : Int, repository_public? : Bool, mooncakes_published? : Bool, mooncakes_owner? : String, mooncakes_package? : String) -> ProjectSnapshotfn snapshot_from_files(files : Array[NamedFile], project_name? : String, commit_count? : Int, repository_public? : Bool, mooncakes_published? : Bool, mooncakes_owner? : String, mooncakes_package? : String) -> ProjectSnapshotMoonBit-native release readiness auditor for Mooncakes packages