Describe the game, the .venv set-up with pip upgrade, running the game
and tests, the code checks, the Doxygen build and the layout. Verified
by following it in a clean copy of the tree.
Task: MIL-004#1
Task: MIL-004#4
Closes#17Closes#20
Add show_round, ask_choice and play_game with injectable input and
output, and make python -m higher_lower play a game. Each account is
shown once per game; a wrong guess or running out of accounts ends it.
Invalid input is re-asked. Ctrl+C and Ctrl+D leave with a goodbye.
Cover the loop with scripted tests (36 passing).
Task: MIL-003#1
Task: MIL-003#2
Task: MIL-003#3
Task: MIL-003#4
Task: MIL-003#5
Closes#12Closes#13Closes#14Closes#15Closes#16
Create the use case chain for the game loop task: Use Case Diagram
UCD-001, User Stories US-001 (two stories), Use Case UC-001 and System
Sequence Diagram SSD-001, all Proposed. Link them from MIL-003.
Review MIL-003 (RC-006, Go) and accept it. Add the new artifacts to the
Traceability Matrix and register UCD, US, UC and SSD in the artifact
registry.
Refs #13
Add the assignment data set (50 accounts), the logo and vs art, the
constants module, and the pure functions get_random_account,
pick_pair, format_data and check_answer, all with Doxygen comments.
pick_pair never returns the same account twice; check_answer accepts
either choice on a tie. Cover them with pytest tests (22 passing).
The art is built from concatenated raw lines so the backslashes survive
and Doxygen does not read the backticks as markup.
Accept MIL-002 after review RC-005 and add it to the Traceability
Matrix.
Task: MIL-002#1
Task: MIL-002#2
Task: MIL-002#3
Task: MIL-002#4
Task: MIL-002#5
Task: MIL-002#6
Closes#6Closes#7Closes#8Closes#9Closes#10Closes#11
Add pyproject.toml (Python >=3.13, no runtime dependencies, pytest as a
dev extra), the src/higher_lower package with an empty constants module
and an entry-point stub, a smoke test, and the Doxyfile for the Doxygen
comments in the source. Ignore the Doxygen output in .gitignore.
Verified in a fresh .venv: pip install -e ".[dev]", pytest (2 passed),
python -m higher_lower and doxygen Doxyfile without warnings.
Task: MIL-001#1
Task: MIL-001#2
Task: MIL-001#3
Task: MIL-001#4
Closes#1Closes#2Closes#3Closes#4
Review BC-001, SA-001, PP-001 and MIL-001 and record the results as
RC-001 to RC-004. All four verdicts are Go, so their Version History
rows become Accepted and the previous rows Deprecated. MIL-002 to
MIL-004 stay Proposed.
BC-001 failed criterion 1 (cost-benefit not justified as qualitative).
Add the justification and a target-completion constraint (2026-10-14)
that PP-001 and MIL-001 are checked against.
Add the Traceability Matrix (TM-001) and register RC and TM in the
artifact registry. PP has no QC checklist, so RC-003 checks the plan
against BC-001 and the milestones instead. Author and reviewer are
both S01, a deviation noted in each record.
Refs #5
Add the Business Case, Stakeholder Analysis and Project Plan, and four
milestones (MIL-001 Project setup, MIL-002 Game logic, MIL-003 Console
game, MIL-004 Documentation and release) with Go/No-Go criteria and
task tables.
Set the PO language to en in the artifact registry. Link the synced
Gitea Milestones (36-39) in the Project Plan. The 20 task rows were
synced as issues #1-#20.
Refs #5