Submission package as a defense boundary
A submission package is not an archive of the entire repository, but a compact set from which a reviewer can understand the problem, run the bounded core flow, see the evidence, and distinguish fact from Unknown. The package should be sufficient for reproduction, but must not hide missing checks behind a polished presentation.
A repro audit checks the path from a clean checkout to the expected signal: prerequisites, startup command, safe fixtures, expected output, observed output, and known environment gaps. In an educational example, the audit result is always separated from the checklist itself: describing the procedure does not prove that it was performed.
What must pass the audit
| Layer | Reviewer question | How to mark a gap |
|---|---|---|
| Entry point | Is it clear where to start and from which state? | Needs verification or a specific missing prerequisite |
| Inputs | Are there safe fixtures without secrets or PII? | Unknown input dependency; do not invent data |
| Observable output | What signal means that the core flow passed? | Acceptance signal is undefined |
| Evidence | Where are the diff, checks, notes, and limitations? | Link is missing or result is Unknown |
| Boundary | What does the package not prove? | Explicitly exclude deployment, adoption, and production readiness |
Submission package
# SUBMISSION_PACKAGE.md
Problem: <bounded problem>
Core flow: <one observable scenario>
Start: <safe command or manual entry point>
Inputs: <fixtures without secrets>
Expected signal: <observable output>
Evidence: <diff, checks and notes>
Repro audit: <REPRO_AUDIT.md anchor>
Known limits: <unsupported cases and Unknowns>
Status: documented example; submission and reproducibility result: Unknown.Canonical lesson source · JavaRush
Open JavaRush material