@lssm/lib.app-submission-readiness-runtime
v2.0.1
Published
Pure, deterministic runtime audit engine for mobile app submission readiness (ReviewReady). No network calls; integrations feed it snapshots to audit.
Maintainers
Readme
@lssm/lib.app-submission-readiness-runtime
Pure, deterministic runtime audit engine for mobile app submission readiness
(ReviewReady). It composes on top of the
@lssm/lib.contracts-spec/app-submission-readiness contract domain and
provides the fuller audit engine described in the ReviewReady PRD (Phase 2).
No network calls
This package performs no network I/O. Integrations (App Store Connect,
Google Play Developer) are responsible for fetching and handing in submission
snapshots; this runtime only audits the materials it is given. Timestamps and
ids must be supplied by the caller (no Date.now() / Math.random()).
Public API
normalizeSubmissionInput(materials)— normalize raw/partial submission materials (assets, legal links, privacy disclosures, manifests, SDK inventory, reviewer access refs) into a canonicalAppSubmissionReadinessAuditInput.buildDisclosureMatrix(materials)— cross-reference SDK collection, manifest permissions, privacy-policy declarations, Apple App Privacy answers, and Google Data Safety answers; returns a typed matrix with per-cell consistency state and evidence refs.runReadinessAudit(materials, policy?)— orchestrate normalize -> disclosure matrix -> findings -> score -> decision into a full report plus matrix and per-store checklists. Composes the contracts-spec audit primitive.scoreReadiness(report)— readiness score wrapper over contracts-spec scoring.buildStoreChecklists(report)— per-store (Apple / Google Play) ordered blocker/warning/improvement checklists.draftRejectionResponse(rejectionMessage, report)— structured, evidence-cited resubmission draft. Avoids legal-advice and approval-guarantee phrasing.redactSubmissionReport(report, policy?)— canonical redaction entrypoint; never serializes raw secret values.
Fixtures
@lssm/lib.app-submission-readiness-runtime/fixtures exports
SampleSubmissionMaterials (with a known disclosure inconsistency) and
ReadySubmissionMaterials (a passing baseline).
