4.8 KiB
4.8 KiB
MIL-010: Release v0.1.0
Metadata
| Key | Value |
|---|---|
| ID | MIL-010 |
| CrossReference | BC-001, US-001, UC-001, ADR-0004 |
| Language | en |
| Domain | it |
Version History
| Date | Status | Author | Reviewer | Change | Commit |
|---|---|---|---|---|---|
| 2026-10-15 | Accepted | Jens Tirsvad Nielsen | AI as stand-in for S01 | Initial version | 9c8e294 |
Purpose
Decide whether the project can be handed out as a release: the version 0.1.0 is tagged, and the executable built from exactly that commit is attached to a release page with its checksum and release notes.
Deliverable
A tag v0.1.0 on the head of main, and a release on the git host with the assets flash-card.exe and flash-card.exe.sha256, and release notes. CHANGELOG.md holds the same notes. The README and the wiki (English, Danish, Bahasa Malaysia) link to the release page.
Go / No-Go Criteria
| # | Criterion (objectively checkable) | Go | No-Go |
|---|---|---|---|
| 1 | The executable is rebuilt from the head of main that gets the tag, in a clean build folder, and passes the smoke test of MIL-009 (window, embedded list, progress file beside it, list override) |
Smoke test output recorded in the review record | A failing case |
| 2 | The tag v0.1.0 is an annotated tag on that commit and pyproject.toml and flash_card.__version__ say 0.1.0 |
git show v0.1.0 and the two files agree |
A different version or commit |
| 3 | The release has the assets flash-card.exe and flash-card.exe.sha256 |
Listed by the host API | An asset is missing |
| 4 | The SHA-256 of the file downloaded from the release equals the value in flash-card.exe.sha256 and in the release notes |
Hash compared after a download | A difference |
| 5 | The release notes say that the file is an unsigned Windows build, what the data folder next to it holds, the SHA-256, and how to build it |
Notes read back from the API | A statement is missing |
| 6 | CHANGELOG.md, README and the Install page of the wiki in three languages link the release; check-readme.sh exit 0 |
Exit code 0 | A link is missing |
| 7 | BC-001, US-001 and PP-001 are updated (the release upload leaves Out of Scope) and reviewed Go |
Review records Go |
A document is not updated |
Dependencies
| Depends on | Reason |
|---|---|
| MIL-009 | The executable and its build script |
Traceability
| Business Case objective / KPI / user story | Reference |
|---|---|
| Objective 4 (a repository others can use), extended by the new request of S01 | BC-001 |
| US-001.08 Download the executable | US-001 |
Ownership
| Role | Stakeholder ID (SA) |
|---|---|
| Owner | S01 |
| Approving reviewer | S01 (AI as stand-in in autonomous mode) |
Target Date
2026-10-16 — within the delivery window that ends 2026-10-21 (BC-001 constraint).
Tasks
| # | Task | Summary | Needs its own Use Case/User Story? | Reference |
|---|---|---|---|---|
| 1 | Update the documents for the release | Amend BC-001 (the upload of the executable to a release leaves Out of Scope and the release becomes In Scope; signing and an installer stay out), add US-001.08 and the gateway to PP-001; each changed document gets a Version History row and a review. | No | BC-001, US-001 |
| 2 | Write the release notes and CHANGELOG.md | CHANGELOG.md (Keep a Changelog layout) with the version 0.1.0: what the program does, the four assignment steps, the level choice, the executable, known limits (unsigned, Windows only, Python 3.13 or later to build); the notes are reused for the release body. |
No | |
| 3 | Rebuild and smoke-test the executable from the tagged commit | Build dist/flash-card.exe from a clean tree of the head of main, run the smoke test of MIL-009, compute the SHA-256 and write flash-card.exe.sha256 (not committed). |
Yes | US-001.08 |
| 4 | Tag v0.1.0 | Create an annotated tag v0.1.0 on the head of main and push it; a tag cannot be undone without deleting it on the host, so it is made only after the documents are merged. |
No | |
| 5 | Create the release and attach the files | Create the release v0.1.0 through the host API with the notes, attach flash-card.exe and flash-card.exe.sha256, download the asset again and compare the hash. The token is read from .env and is never printed or put on a command line. |
Yes | US-001.08 |
| 6 | Link the release | README, the Install page of the wiki in English, Danish and Bahasa Malaysia and CHANGELOG.md link the release page; the wiki is republished. |
No |